svn path=/Website/branches/v2024.3/; revision=67678
This commit is contained in:
Erik Groener
2025-01-22 08:18:53 +00:00
parent b926422969
commit 30634d82b0

View File

@@ -35,7 +35,7 @@ ANONYMOUS_Allowed = 1;
, actie: p_action
};
var doel = params.actions[p_action]; // Gebruik hier de parameter uit de aanroep.
// req_conn.actie wordt gewijzigd bij attachments als params.info.boundary bestaat.
// req_conn.actie wordt gewijzigd bij attachments als params.info.boundary bestaat.
switch (p_method)
{
case "GET": req_conn.ext_url = doel + (params.info.extern_id ? "/"+params.info.extern_id : "");
@@ -138,26 +138,44 @@ __Log("load_headerdata");
function test_loader()
{
__Log("TEST_LOADER");
function loadMSXML(x)
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var file_ext = x.file.slice(-4);
var ForReading = 1;
var f1 = fso.OpenTextFile(x.file, ForReading );
var text = f1.ReadAll();
f1.Close();
if ((text.substr(0,14) != "<?xml version=") && (file_ext == ".xml"))
{ // Bij ontbreken van encoding in de xml-file treedt de fout
// "An invalid character was found in the text content"
// op als er diakritische tekens in het xml-bestand staan.
// Voeg daarom encoding toe.
text = "<?xml version='1.0' encoding='windows-1250'?>" + "\n\r" + text;
}
x.doc = new ActiveXObject("MSXML2.DOMDocument.6.0");
x.doc.async = false;
x.doc.load(x.file);
x.doc.loadXML(text);
x.err_code = x.doc.parseError.errorCode;
x.err_msg = (x.doc.parseError.errorCode != 0 ? x.doc.parseError.reason : "");
return x;
}
var custpath = "../../CUST/WELK";
var loader = { success: false
, status: -1
, xml: { file: Server.MapPath(custpath + "/xsl/" + "puo_20241025-zentest_make_xml.xml") }
, xml: { file: Server.MapPath(custpath + "/xsl/" + "puo_20250121-160652_00_make_xml.xml") }
, xsl: { file: Server.MapPath(custpath + "/xsl/" + "zendesk.xsl") }
};
loader.xml = loadMSXML(loader.xml);
loader.xsl = loadMSXML(loader.xsl);
loader.success = (loader.xml.err_code == 0 && loader.xsl.err_code == 0);
//__Log(loader);
__Log( {"load_err": { "xml": {"path": loader.xml.file, "code":loader.xml.err_code, "msg":loader.xml.err_msg}
, "xsl": {"path": loader.xsl.file, "code":loader.xsl.err_code, "msg":loader.xsl.err_msg}
}
});
var result = { success: false
, status: (loader.xml.err_code != 0 ? loader.xml.err_code : loader.xsl.err_code)
@@ -182,53 +200,43 @@ __Log("load_headerdata");
result.data = obj;
}
}
//__Log(result);
__Log(result.data);
return result;
__Log(result);
return result.data.facilitor;
}
function fieldlist_to_array(p_fieldlist)
{
var v_field_arr = [];
for (var fld_name in p_fieldlist)
{
var v_field_obj = p_fieldlist[fld_name];
v_field_arr.push(v_field_obj);
}
return v_field_arr;
}
// *************************************************************************
// *************************************************************************
var test_xml_only = true;
__Log("*> ZENdesk.api");
var bevinding = {};
var facilitor = load_headerdata();
/*
var facilitor = {
"melding": {
"mld_melding_key": "4564",
"opdracht": {
"mld_opdr_key": "2194"
}
},
"zendesk": {
"api_user": "erik.groener@aareon.nl",
"api_key": "m4oM3jgoZ0w7SbEShvEd8Xp6PanoUOLEHo9YEIBj",
"base_url": "https://aareongroup1726146503.zendesk.com",
"info": {
"method": "POST",
"action": "ticket"
},
"data": {
"ticket": {
"subject": "Ge<47>mporteerde memoriaalboeking kan niet gecorrigeerd worden",
"comment": {
"body": "Ge<47>mporteerde memoriaalboeking kan niet gecorrigeerd worden\nDatum van optreden: 26-07-2024\nTijdstip van optreden: 13:30\nOmgeving: Productie\nBeschrijf de vraag/issue: Memoriaalboeking ingelezen, maar bij valideren een foutmelding. Normaal kun je dan de regel van de boeking aanpassen (was in AX), maar kan nu niet of het is een autorisatie dingetje.\nIk zal dit bij een volgende test in ieder geval meenemen.\nModule: AX Grootboek\nKerngebruiker(s) module Grootboek: Dnzhp Ofxyaw\nStappen voorafgaand aan vraag/issue: Via de Help functie gekeken maar daar staat verder niets. Na aanpassing van het bestand opnieuw ingelezen en dan uiteindelijk wel goed.\nVerwachting: Dat ik een memoriaalboeking die niet helemaal juist is kan corrigeren en daarna boeken. \nUrgentie: Middel\nBetekenis urgentie middel: Een afdeling/team is getroffen en/of kan haar taken niet uitvoeren zoals gepland, of leidt tot financi<63>le schade, of geringe schade aan de reputatie van de klant is waarschijnlijk.\nImpact: Middel\nBetekenis impact middel: Een afdeling/team is getroffen en/of kan haar taken niet uitvoeren zoals gepland, of leidt tot financi<63>le schade, of geringe schade aan de reputatie van de klant is waarschijnlijk."
},
"priority": "Laag",
"status": "new",
"type": "incident",
"via": {
"channel": "web_service"
},
"external_id": "2194"
}
},
"bijlagen": {}
if (test_xml_only)
{
var facilitor = test_loader();
// custom_fields moet een array worden.
facilitor.zendesk.data.ticket.custom_fields = fieldlist_to_array(facilitor.zendesk.data.ticket.custom_fields);
__Log(facilitor);
__Log("*< ZENdesk.api");
Response.Write(JSON.stringify(bevinding));
Response.End;
}
else
{
var facilitor = load_headerdata();
// custom_fields moet een array worden.
facilitor.zendesk.data.ticket.custom_fields = fieldlist_to_array(facilitor.zendesk.data.ticket.custom_fields);
__Log(facilitor);
}
}
*/
__Log(facilitor);
var actions = { "ticket": "/api/v2/tickets"
, "request": "/api/v2/requests"
@@ -265,8 +273,7 @@ __Log(facilitor);
{
__Log(conn_params.req_conn.methode + ": " + conn_params.req_conn.baseurl + conn_params.req_conn.ext_url);
__Log( {"conn_params": conn_params});
// var conn_result = doRequest(conn_params.req_conn, coupler.data);
var conn_result = {success: false};
var conn_result = doRequest(conn_params.req_conn, coupler.data);
if (conn_result.success)
{
delete conn_result.data.ticket.custom_fields; // bevat alleen lege velden
@@ -331,9 +338,9 @@ var conn_result = {success: false};
);
}
__Log(bevinding);
__Log({"Bevinding:": bevinding});
__Log("*< ZENdesk.api");
Response.Write(JSON.stringify(bevinding));
//Response.End;
Response.End;
%>
<% ASPPAGE_END(); %>