Merge 2017.2 Gold patches

svn path=/Website/trunk/; revision=35719
This commit is contained in:
Jos Groot Lipman
2017-10-17 14:57:21 +00:00
19 changed files with 628 additions and 168 deletions

View File

@@ -450,8 +450,8 @@ for (i = 0; i < meldingen.length; i++)
} // end insert
} // end geldige ext_id
if (returncode <= 0)
__DoLog("api_mldsoap fail.\nResultcode: {0}\nReturntekst: {1}".format(resultcode, returntekst), "#00FF00");
if (resultcode > 0)
__DoLog("api_mldsoap fail.\nResultcode: {0}\nReturntekst: {1}".format(resultcode, resulttekst), "#00FF00");
var binfo = {returncode: resultcode,
returntekst: resulttekst,

View File

@@ -801,9 +801,9 @@ for (i=0; i < opdrachten.length; i++)
{
resultcode = 0; // Ik heb gedaan wat ik moest en mocht doen voor deze opdracht.
}
else
else if (resultcode > 0)
{
__DoLog("api_opdrsoap fail.\nResultcode: {0}\nReturntekst: {1}".format(resultcode, returntekst), "#00FF00");
__DoLog("api_opdrsoap fail.\nResultcode: {0}\nReturntekst: {1}".format(resultcode, resulttekst), "#00FF00");
}
var binfo = {

View File

@@ -67,7 +67,13 @@ function model_fac_groep(groep_key, params)
"sql": "(SELECT COUNT(*) FROM fac_gebruikersgroep WHERE fac_groep.fac_groep_key = fac_gebruikersgroep.fac_groep_key)",
"label": L("fac_groep_nn_leden"),
"typ": "number"
}
},
"created": {
"dbs": "fac_groep_aanmaak",
"label": "Aanmaakdatum",
"typ": "datetime",
"readonly": true
}
};
this.includes = {

View File

@@ -78,6 +78,12 @@ function model_prs_afdeling()
"desc": "prs_kostenplaats_nr",
"desc_is_unique": "prs_kostenplaats_verwijder IS NULL"
}
},
"created": {
"dbs": "prs_afdeling_aanmaak",
"label": "Aanmaakdatum"),
"typ": "datetime",
"readonly": true
}
};

View File

@@ -42,6 +42,7 @@ function model_prs_perslid(params)
this.records_name = "persons";
this.record_name = "person";
this.table = "prs_perslid";
this.trackcode = "PRSUPD";
this.audit = { // Parameters voor fac_audit.
"childtable": "fac_gebruikersgroep",
"childaudit": {"sql": "SELECT fac_audit_tabelkey"

View File

@@ -62,6 +62,13 @@ function transform_filter(filter)
filter.limit = filter.count;
if ("startIndex" in filter)
filter.offset = filter.startIndex - 1;
if ("filter" in filter)
{
// Ontvangen filter: "filter": "id eq \"KFSG_authorizationgroup_703\""
var v_filter = filter.filter.replace ("id eq \"" + FCLT.DEZE.customerId + "_authorizationgroup_", "");
v_filter = v_filter.replace("\"", "");
filter.id = v_filter;
}
return filter;
}
@@ -102,7 +109,7 @@ function transform_one_group(params, authorizationgroup)
"members":[],
"meta":{
"created":authorizationgroup.created,
"lastModified":authorizationgroup.lastchange,
"lastModified":authorizationgroup.lastchange?authorizationgroup.lastchange:authorizationgroup.created,
"location":FCLT.DEZE.HTTP.urlzelf() + "/appl/SCIM/Groups/" + unique,
"resourceType":"Group"
}

View File

@@ -62,8 +62,17 @@ function transform_filter(filter)
{
if ("count" in filter)
filter.limit = filter.count;
if ("startIndex" in filter)
if ("startIndex" in filter) {
filter.offset = filter.startIndex - 1;
filter.showall = 1;
}
if ("filter" in filter)
{
// Ontvangen filter: "filter": "id eq \"KFSG_department_703\""
var v_filter = filter.filter.replace ("id eq \"" + FCLT.DEZE.customerId + "_department_", "");
v_filter = v_filter.replace("\"", "");
filter.id = v_filter;
}
return filter;
}
@@ -83,25 +92,28 @@ function transform_incoming(params, data)
externalid : data["externalId"],
description: data["code"],
name : data["externalId"],
costcentre : { name: data["costCenter"] }, // id mag achterwege blijven omdat desc_is_unique
company : { name: "Schiphol Group" }
};
var sql = "SELECT prs_kostenplaats_key FROM prs_kostenplaats "
+ "WHERE prs_kostenplaats_verwijder IS NULL "
+ " AND prs_kostenplaats_nr = " + FCLT.DEZE.safe.quoted_sql(department.costcentre.name);
var oRs = FCLT.DEZE.Oracle.Execute(sql);
if (oRs.eof)
if ("costCenter" in data)
{
sql = "INSERT INTO prs_kostenplaats (prs_kostenplaats_nr, prs_kostenplaats_omschrijving, prs_kostenplaats_module) "
+ "VALUES (" + FCLT.DEZE.safe.quoted_sql(department.costcentre.name) + "," + FCLT.DEZE.safe.quoted_sql(department.costcentre.name) + ",'PRS')";
// FCLT.DEZE.__DoLog(sql);
FCLT.DEZE.Oracle.Execute(sql);
department.costcentre = { name: data["costCenter"] }; // id mag achterwege blijven omdat desc_is_unique
var sql = "SELECT prs_kostenplaats_key FROM prs_kostenplaats "
+ "WHERE prs_kostenplaats_verwijder IS NULL "
+ " AND prs_kostenplaats_nr = " + FCLT.DEZE.safe.quoted_sql(department.costcentre.name);
var oRs = FCLT.DEZE.Oracle.Execute(sql);
if (oRs.eof)
{
sql = "INSERT INTO prs_kostenplaats (prs_kostenplaats_nr, prs_kostenplaats_omschrijving, prs_kostenplaats_module) "
+ "VALUES (" + FCLT.DEZE.safe.quoted_sql(department.costcentre.name) + "," + FCLT.DEZE.safe.quoted_sql(department.costcentre.name) + ",'PRS')";
FCLT.DEZE.Oracle.Execute(sql);
}
oRs.Close();
}
oRs.Close();
//FCLT.DEZE.__DoLog(department);
else
department.costcentre = { name: "" };
return { department: department };
}
@@ -127,7 +139,7 @@ function transform_one_department(params, department)
],
"meta":{
"created":department.created,
"lastModified":department.lastchange,
"lastModified":department.lastchange?department.lastchange:department.created,
"location":FCLT.DEZE.HTTP.urlzelf() + "/appl/SCIM/OrgUnits/" + unique,
"resourceType":"OrgUnit"
}

View File

@@ -61,6 +61,13 @@ function transform_filter(filter)
filter.limit = filter.count;
if ("startIndex" in filter)
filter.offset = filter.startIndex - 1;
if ("filter" in filter)
{
// Ontvangen filter: "filter": "id eq \"KFSG_person_703\""
var v_filter = filter.filter.replace ("id eq \"" + FCLT.DEZE.customerId + "_person_", "");
v_filter = v_filter.replace("\"", "");
filter.id = v_filter;
}
return filter;
}
@@ -71,35 +78,35 @@ function get_eTag(params, data)
return null;
}
// We krijgen bijvoorbeeld: {"RMS":[1,-10,-11,-12,-13,-14,-15,-16,-17,2,3,-4,-5,-6,-7,-8,-9]}
// Als het object aan staat wordt de id opgeleverd, anders -id
function get_element(data)
{
if (data == undefined) data = "";
return data;
}
function transform_incoming(params, data)
{
FCLT.DEZE.__Log(data);
var enterprise = data["urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"];
var facilitor = data["urn:ietf:params:scim:schemas:extension:facilitor:2.0:User"];
var person =
{
login : data["userName"],
externallogin: data["userName"],
externalid : data["externalId"],
initials : facilitor["initials"],
lastname : data["name"]["familyName"],
middlename : data["name"]["middleName"],
firstname : data["name"]["givenName"],
login : get_element(data["userName"]),
externallogin: get_element(data["userName"]),
externalid : get_element(data["externalId"]),
initials : get_element(facilitor["initials"]),
lastname : get_element(data["name"]["familyName"]),
middlename : get_element(data["name"]["middleName"]),
firstname : get_element(data["name"]["givenName"]),
deactivated : data["active"]?null:new Date(),
employeenumber : enterprise["employeeNumber"]
employeenumber : get_element(enterprise["employeeNumber"])
};
if (data["userName"] == undefined) person.login = "";
if (facilitor["initials"] == undefined) person.initials = "";
if (data["name"]["middleName"] == undefined) person.middlename = "";
if (data["name"]["givenName"] == undefined) person.firstname = "";
if (enterprise["employeeNumber"] == undefined) person.employeenumber = "";
var dep_id = facilitor["orgUnit"]["value"].replace (FCLT.DEZE.customerId + "_department_", "");
var dep_id = "";
if (facilitor["orgUnit"] && facilitor["orgUnit"]["value"] )
dep_id = facilitor["orgUnit"]["value"].replace (FCLT.DEZE.customerId + "_department_", "");
else
dep_id = 1; // bij het aanmaken van een nieuwe persoon is de afdeling nog leeg. Dan tijdelijke even onder onbekend hangen.
person["department"] = { id: dep_id };
person["function"] = { name: facilitor["title"] } // id mag achterwege blijven omdat desc_is_unique
@@ -108,29 +115,33 @@ function transform_incoming(params, data)
{
person.email = data["emails"][0].value; // type:work/primary:true opzoeken ?
}
person.phone = "";
person.mobile = "";
if (data["phoneNumbers"])
{
for (var j = 0; j < data["phoneNumbers"].length; j++)
{ if (data["phoneNumbers"][j]["type"] == 'mobile')
{
person.mobile = data["phoneNumbers"][j].value;
person.mobile = get_element(data["phoneNumbers"][j].value);
}
if (data["phoneNumbers"][j]["type"] == 'work')
{
person.phone = data["phoneNumbers"][j].value;
person.phone = get_element(data["phoneNumbers"][j].value);
}
}
}
if (person.phone == undefined) person.phone = "";
if (person.mobile == undefined) person.mobile = "";
// TODO groepen negeren we
FCLT.DEZE.__Log(person);
// Als de functie (srt_perslid) nog niet bestaat gaan we deze aanmaken.
var sql = "SELECT prs_srtperslid_key FROM prs_srtperslid "
+ "WHERE prs_srtperslid_verwijder IS NULL "
+ " AND prs_srtperslid_omschrijving = " + FCLT.DEZE.safe.quoted_sql(person["function"]["name"]);
var oRs = FCLT.DEZE.Oracle.Execute(sql);
if (oRs.eof)
{
sql = "INSERT INTO prs_srtperslid (prs_srtperslid_omschrijving) "
+ "VALUES (" + FCLT.DEZE.safe.quoted_sql(person["function"]["name"]) + ")";
FCLT.DEZE.Oracle.Execute(sql);
}
return { person: person };
}
@@ -155,7 +166,7 @@ function transform_one_person(params, person)
"active": !person.deactivated,
"meta":{
"created":person.created,
"lastModified":person.lastchange,
"lastModified":person.lastchange?person.lastchange:person.created,
"location":FCLT.DEZE.HTTP.urlzelf() + "/appl/SCIM/Users/" + unique,
"resourceType":"User"
},

View File

@@ -4312,8 +4312,6 @@ mld = {setmeldingstatus:
+ " SET mld_melding_parentkey = " + parent_key
+ " WHERE mld_melding_key = " + child_key;
Oracle.Execute(sql);
var track_oms = L("lcl_linked_to").format(mld.mld_prefix(child_key)+child_key, mld.mld_prefix(parent_key)+parent_key);
mld.trackmeldingupdate(child_key, track_oms);
// Probeer de status gelijk aan die van de parent te zetten
// Merk op dat de trigger ook nog kan ingrijpen: als je hem op 7 probeert
@@ -4333,6 +4331,13 @@ mld = {setmeldingstatus:
// Via package voor tracking
mld.setmeldingstatus(child_key, mldstatus);
// Tracking na het zetten van de status pas aanroepen.
// Als het een nieuwe melding is, dan is er nu ook een MLDNEW tracking/notificatie gedaan.
// Als er een XML document (bon) wordt aangemaakt moet de status van de melding gezet zijn,
// anders levert de functie xml.make_xml2() NULL op (FSN#46388).
var track_oms = L("lcl_linked_to").format(mld.mld_prefix(child_key)+child_key, mld.mld_prefix(parent_key)+parent_key);
mld.trackmeldingupdate(child_key, track_oms);
return ""; // mld_link.asp -> warning
},

View File

@@ -22,9 +22,9 @@ var LOCKED_USER_OK = { "xmlnode": "opdracht", "key": opdr_key };
<!-- #include file="../Shared/selector.inc" -->
<%
FCLTHeader.Requires({ js: ["./modernizr-3.3.0.custom.min.js"] });
FCLTHeader.Requires({ js: [rooturl+"/appl/pda/modernizr-3.3.0.custom.min.js"] });
FCLTHeader.Requires({ plugins: ["suggest"]
, js: ["../mld/mld_edit_opdr.js", "jquery.timepicker-table.js"],
, js: [rooturl+"/appl/mld/mld_edit_opdr.js", "jquery.timepicker-table.js"],
css: ["timePicker-table.css"]});
var mld_key = getQParamInt("mld_key", -1);
@@ -142,7 +142,7 @@ else
var data = { opdr_key: <%=opdr_key%>
};
<% protectRequest.dataToken("data"); %>
$.post( "../mld/opdr_goedkeur.asp"
$.post( "<%=rooturl%>/appl/mld/opdr_goedkeur.asp"
, data
, McltCallbackAndThenAlways(opdr_action_callback)
, "json"
@@ -157,7 +157,7 @@ else
var data = { opdr_key: <%=opdr_key%>
};
<% protectRequest.dataToken("data"); %>
$.post( "../mld/opdr_approve.asp"
$.post( "<%=rooturl%>/appl/mld/opdr_approve.asp"
, data
, McltCallbackAndThenAlways(opdr_action_callback)
, "json"
@@ -175,7 +175,7 @@ else
var data = { opdr_key: <%=opdr_key%>,
hltactive: activeopdr_key > 0? 1 : 0 }; // Onderbreek de actieve opdracht.
<% protectRequest.dataToken("data"); %>
$.post( "../mld/opdr_accept.asp",
$.post( "<%=rooturl%>/appl/mld/opdr_accept.asp",
data,
McltCallbackRefresh,
"json"
@@ -194,7 +194,7 @@ else
, opmerk: opmerk //L("lcl_mld_opdr_canceledbymobile")
};
<% protectRequest.dataToken("data"); %>
$.post("../mld/opdr_cancel_save.asp"
$.post("<%=rooturl%>/appl/mld/opdr_cancel_save.asp"
, data
, McltCallbackAndThenAlways(opdr_action_callback)
, "json");
@@ -213,7 +213,7 @@ else
, opmerk: opmerk //L("lcl_mld_opdr_rejectedbymobile")
};
<% protectRequest.dataToken("data"); %>
$.post("../mld/opdr_reject_save.asp"
$.post("<%=rooturl%>/appl/mld/opdr_reject_save.asp"
, data
, McltCallbackAndThenAlways(opdr_action_callback)
, "json");
@@ -228,7 +228,7 @@ else
var data = { opdr_key: <%=opdr_key%>
};
<% protectRequest.dataToken("data"); %>
$.post("../mld/opdr_accept_offer_save.asp" + murl
$.post("<%=rooturl%>/appl/mld/opdr_accept_offer_save.asp" + murl
, data
, McltCallbackAndThenAlways(opdr_action_callback)
, "json");
@@ -243,7 +243,7 @@ else
var data = { opdr_key: <%=opdr_key%>
};
<% protectRequest.dataToken("data"); %>
$.post("../mld/opdr_reject_offer_save.asp" + murl
$.post("<%=rooturl%>/appl/mld/opdr_reject_offer_save.asp" + murl
, data
, McltCallbackAndThenAlways(opdr_action_callback)
, "json");
@@ -262,7 +262,7 @@ else
var opdr_nr = "<%=mld_opdr.srtdiscprefix + mld_opdr.mld_key + "/" + mld_opdr.mld_opdr_bedrijfopdr_volgnr%>";
if (confirm(L("lcl_mld_opdr_hlt").format(opdr_nr)))
{
window.location.href = "order.asp?opdr_key=<%=opdr_key%>&hlt=1";
window.location.href = "<%=rooturl%>/appl/pda/order.asp?opdr_key=<%=opdr_key%>&hlt=1";
}
}
@@ -271,7 +271,7 @@ else
var opdr_nr = "<%=mld_opdr.srtdiscprefix + mld_opdr.mld_key + "/" + mld_opdr.mld_opdr_bedrijfopdr_volgnr%>";
if (confirm(L("lcl_mld_opdr_rsm").format(opdr_nr)))
{
window.location.href = "order.asp?opdr_key=<%=opdr_key%>&rsm=1";
window.location.href = "<%=rooturl%>/appl/pda/order.asp?opdr_key=<%=opdr_key%>&rsm=1";
}
}
@@ -298,13 +298,13 @@ else
}
function opdr_close_callback_1()
{
$.post("../mld/opdr_close_save.asp?opdr_key=<%=opdr_key%>", $("[name=u2]").serialize(), opdr_close_callback_2, "json");
$.post("<%=rooturl%>/appl/mld/opdr_close_save.asp?opdr_key=<%=opdr_key%>", $("[name=u2]").serialize(), opdr_close_callback_2, "json");
return false;
}
function opdr_close_callback_2()
{
// Terug naar lijst met open opdrachten.
window.location.href = "orders_list.asp";
window.location.href = "<%=rooturl%>/appl/pda/orders_list.asp";
}
function opdr_submit()
{
@@ -327,8 +327,8 @@ else
{
%>
// Nieuwe melding aangemaakt. Altijd complete reload, we hebben nu een opdr_key namelijk
// window.location.href = "order.asp?opdr_key=" + json.opdr_key + "&mld_key=<%=mld_key%>";
window.location.href = "melding.asp?mld_key=<%=mld_key%>";
// window.location.href = "<%=rooturl%>/appl/pda/order.asp?opdr_key=" + json.opdr_key + "&mld_key=<%=mld_key%>";
window.location.href = "<%=rooturl%>/appl/pda/melding.asp?mld_key=<%=mld_key%>";
<%
}
%>
@@ -343,9 +343,15 @@ else
{
if (json.success)
{
window.location.href = "order.asp?opdr_key=<%=opdr_key%>";
window.location.href = "<%=rooturl%>/appl/pda/order.asp?opdr_key=<%=opdr_key%>";
}
}
function opdr_cancel_action()
{
window.location.href = "<%=rooturl%>/appl/pda/order.asp?opdr_key=<%=opdr_key%>";
}
function opdr_close_submit()
{
// Zelf de form-parameters zetten: PasteFromSelectbox() werkt niet als er meerdere velden met id=opdr_opm zijn
@@ -359,7 +365,7 @@ else
protectRequest.dataToken(data);
$.post($("form[name=closeform]")[0].action,
data,
McltCallbackAndThenAlways(function() { window.location.href = "order.asp?opdr_key=<%=opdr_key%>"; }),
McltCallbackAndThenAlways(function() { window.location.href = "<%=rooturl%>/appl/pda/order.asp?opdr_key=<%=opdr_key%>"; }),
"json");
return false;
}
@@ -384,7 +390,7 @@ else
<script>
</script>
<form action="../mld/mld_edit_opdr_save.asp?mobile=1&opdr_key=<%=opdr_key%>" method="post" name="u2" id="u2">
<form action="<%=rooturl%>/appl/mld/mld_edit_opdr_save.asp?mobile=1&opdr_key=<%=opdr_key%>" method="post" name="u2" id="u2">
<input type="hidden" name="forcesave" id="forcesave" value="0">
<input type="hidden" name="opdr_key" value="<%=opdr_key%>"/>
<input type="hidden" name="mld_key" value="<%=mld_key%>"/>
@@ -403,7 +409,7 @@ else
var oRs = Oracle.Execute(sql);
if (!oRs.EoF)
ROFIELD ("fld", mld_opdr.srtdiscbes ? L("lcl_bes_Supplier") : L("lcl_ord_company_uit"), oRs("uitv_naam").Value,
{moreinfo: "./bedrijf.asp?bedrijf_key=" + mld_opdr.uitvoerende_key, suppressEmpty: true});
{moreinfo: rooturl+"/appl/pda/bedrijf.asp?bedrijf_key=" + mld_opdr.uitvoerende_key, suppressEmpty: true});
oRs.Close();
}
@@ -429,7 +435,7 @@ else
var authparamsCNTMAN = user.checkAutorisation("WEB_CNTMAN", true);
if (mld_opdr.contract_key && mld_opdr.contract_key>0 && (authparamsCNTUSE || authparamsCNTMAN))
params.moreinfo = "./contract.asp?cnt_key="+mld_opdr.contract_key;
params.moreinfo = rooturl+"/appl/pda/contract.asp?cnt_key="+mld_opdr.contract_key;
ROFIELD("fld", L("lcl_contract"), mld_opdr.contract_naam, params);
}
@@ -595,12 +601,12 @@ else
{
var tsql = "SELECT COUNT(*) FROM mld_opdr_note n WHERE n.mld_opdr_key = " + opdr_key;
toRs = Oracle.Execute(tsql);
BUTTON(L("lcl_mld_frame_notes")+" ("+toRs(0).value+")", {linkid: "./notitie.asp?node=opdracht&key="+opdr_key, dataicon: "comment", dataajax: 'false'});
BUTTON(L("lcl_mld_frame_notes")+" ("+toRs(0).value+")", {linkid: rooturl+"/appl/pda/notitie.asp?node=opdracht&key="+opdr_key, dataicon: "comment", dataajax: 'false'});
}
var this_mld = mld.func_enabled_melding(mld_key); // Wat heb ik zoal aan rechten op deze specifieke melding
if (this_mld.canReadAny)
{
BUTTON(L("lcl_complain"), {linkid: "./melding.asp?mld_key="+mld_opdr.mld_key , dataicon: "alert", dataajax: "false"});
BUTTON(L("lcl_complain"), {linkid: rooturl+"/appl/pda/melding.asp?mld_key="+mld_opdr.mld_key , dataicon: "alert", dataajax: "false"});
}
}
else
@@ -619,21 +625,22 @@ else
if (trackinglines > 0)
{
PAGE_START({id: "opdr-2-"+opdr_key, dialog: true})
PAGE_START({id: "opdr-2-"+opdr_key})
mobile.trackingpage('opdracht', opdr_key, subject);
PAGE_END();
}
// scherm: Annuleren opdracht
PAGE_START({id: "opdr-3-"+opdr_key, dialog: true})
PAGE_START({id: "opdr-3-"+opdr_key })
HEADER({title: L("lcl_mld_opdr_cancel_button")+" "+subject, back: false, nohome: true});
CONTENT_START();
%>
<form id="cancelform" name="cancelform" action="../mld/opdr_cancel_save.asp?opdr_key=<%=opdr_key%>" method="post">
<form id="cancelform" name="cancelform" action="<%=rooturl%>/appl/mld/opdr_cancel_save.asp?opdr_key=<%=opdr_key%>" method="post">
<%
RWFIELD("opdr_opm" , L("lcl_mld_inf_Opmerking"), mld_opdr.opdr_opmerking, {multi: true});
CONTROLGROUP_START();
BUTTON(L("lcl_submit"), {click: "opdr_cancel_submit()", dataicon: "refresh"});
BUTTON(L("lcl_cancel"), {click: "opdr_cancel_action()", dataicon: "back"} );
CONTROLGROUP_END();
IFACE.FORM_END();
%>
@@ -648,7 +655,7 @@ else
CONTENT_START();
var nu = new Date;
%>
<form id="closeform" name="closeform" action="../mld/opdr_close_save.asp?opdr_key=<%=opdr_key%>" method="post">
<form id="closeform" name="closeform" action="<%=rooturl%>/appl/mld/opdr_close_save.asp?opdr_key=<%=opdr_key%>" method="post">
<input type="hidden" name="orgdate" id="orgdate" value="<%=nu.getTime()%>">
<%
if (this_opdr.canOpmChange)
@@ -688,6 +695,7 @@ else
CONTROLGROUP_START();
BUTTON(L("lcl_submit"), {click: "opdr_close_submit()", dataicon: "refresh"});
BUTTON(L("lcl_cancel"), {click: "opdr_cancel_action()", dataicon: "back"} );
CONTROLGROUP_END();
// IFACE.FORM_END();
%>

View File

@@ -283,7 +283,7 @@ user.auth_required_or_abort(canDeleteAny);
<input type='hidden' id='deletefull' name='deletefull' value='0'>
<input type='hidden' id='deletefuture' name='deletefuture' value='0'>
<% BLOCK_START("resDelete", isMulti ? L("lcl_res_del_multi_head").format(amount) : L("lcl_res_deel_head1") + " " + (aantalEerder + 1 + aantalLater) + " " + L("lcl_res_deel_head2"));
<% BLOCK_START("resDelete", isMulti ? L("lcl_res_del_multi_head").format(amount) : L("lcl_res_deel_head1") + " " + (aantalEerder + 1 + aantalLater) + " " + L("lcl_res_deel_head2"), { ishtmlsafe: true });
%> <tr><td><label><%=L("lcl_remark")%>:</label></td></tr>
<% RWTEXTAREATR("opmerk", "fldomschr", "", (isMulti ? "" : (rrr[0].rsv_ruimte_opmerking || "")), {tdhtml_ta: "colspan=2", html: "rows='4'"});

View File

@@ -9,7 +9,7 @@
Note: Sinds 5.2.2 zitten de settings in de database
*/
var FCLTVersion="2017.2RC2";
var FCLTVersion="2017.2";
var FCLTMinDatabaseSchema="32";
var custpath = rooturl + "/cust/" + customerId; // path to customer files

View File

@@ -276,7 +276,9 @@ function listKenmerk(sql, module, key, props)
"MLD": { "M": "issues",
"O": "orders"
},
"PRS": { "P": "persons"
"PRS": { "P": "persons",
"A": "departments",
"B": "companies"
},
"INS": { "I": "inspections",
"D": "objects"
@@ -916,8 +918,9 @@ function listKenmerk(sql, module, key, props)
for (var i = 0; i < lijst.length; i++)
{
var href = HTTP.urlzelfnoroot() + protectQS.create(OpenFlexFile(module, niveau, key, kkey, lijst[i]));
var html = '<a class="details fldflexM" data-role="button"'
+ ' href=\"' + safe.htmlattr(href) + '" target="_blank" data-ajax="false">' + safe.html(lijst[i]) + '</a>';
// var html = '<a class="details fldflexM" data-role="button"'
// + ' href=\"' + safe.htmlattr(href) + '" target="_blank" data-ajax="false">' + safe.html(lijst[i]) + '</a>';
var html = safe.html(lijst[i]); // even niet klikbaar, in de app kun je niet terug dan.
filehtmlarr.push(html);
}
var kv = filehtmlarr.join("</br>");

View File

@@ -0,0 +1,139 @@
// GetStruktonStatus.js
// Haalt statuswijzigingen op van Strukton opdrachten binnen een opgegeven tijdsinterval.
// Dit interval wordt opgeslagen in de database. Kan daarna via GEN_IMPORT ingelezen worden
//
// $Revision$
// $Id$
//
// Opzet in kader van AASA#
// Twee parameters: UDL voor database connectie en optioneel proxy-ip
var str = WScript.Arguments(0); // udlpath
var prs_bedrijf_key = WScript.Arguments(1); // prs_bedrijf_key
function GetStruktonStatus()
{
var XMLReq= "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">"
+" <soapenv:Header/>"
+" <soapenv:Body>"
+" <GetServiceRequestStatus>"
+" <Status>"
+" <CustomerID>" + prs_overeenkomst_nr + "</CustomerID>"
+" <ReferenceID></ReferenceID>"
+" <ServiceRequestID></ServiceRequestID>"
+" <BeginDateTime>"+ laatste_sync +"</BeginDateTime>"
+" <EndDateTime>"+ nieuwe_sync +"</EndDateTime>"
+" </Status>"
+" </GetServiceRequestStatus>"
+" </soapenv:Body>"
+"</soapenv:Envelope>";
WScript.Echo("Bericht = " + XMLReq);
WScript.Echo("Login = " + username);
//WScript.Echo("Wachtwoord = " + password);
var objXMLHTTP = new ActiveXObject("MSXML2.ServerXMLHTTP.6.0")
/* objXMLHTTP.open("POST",
"https://b2bdev.ws.strukton.com:443/XISOAPAdapter/MessageServlet?channel=Facilitor:BS_ServiceRequest:S_WS_STATUS",
false,
"Facilitor",
"Facilit0r!");*/
objXMLHTTP.open("POST",
mldorder_adres,
false,
username,
password);
objXMLHTTP.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
if (order_certificate)
{
WScript.Echo("Certificaatnaam = " + order_certificate);
var SXH_OPTION_SELECT_CLIENT_SSL_CERT = 3;
objXMLHTTP.setOption(SXH_OPTION_SELECT_CLIENT_SSL_CERT) = order_certificate;
}
objXMLHTTP.send(XMLReq);
dataReceived = false;
if (objXMLHTTP.status==200)
{ // Geldigheid XML wordt gecontroleerd door GEN_IMPORT
WScript.Echo("Gelukt, status = " + objXMLHTTP.status);
responseText = "" + objXMLHTTP.responseText;
if (responseText.indexOf("<ErrorLog><Note>Resultaatset bevat geen records</Note></ErrorLog>") == -1) {
dataReceived = true;
oStream = new ActiveXObject("ADODB.Stream");
oStream.Open();
oStream.Type = 1; // adTypeBinary
oStream.Write(objXMLHTTP.responseBody); // responseText geeft encoding problemen!
oStream.SaveToFile (fileName, 2); // adSaveCreateOverWrite
oStream.Close();
}
sql = "UPDATE prs_kenmerklink SET prs_kenmerklink_waarde = '" + nieuwe_ts + "' WHERE prs_kenmerklink_key = " + prs_kenmerklink_key;
WScript.Echo (sql);
Oracle.Execute(sql);
}
else
{
WScript.Echo("Mislukt, status = " + objXMLHTTP.status);
WScript.Echo(objXMLHTTP.statusText);
}
return dataReceived;
}
var udlstr = 'File Name='+str;
var Oracle = new ActiveXObject("ADODB.Connection");
Oracle.Open(udlstr);
// normaal halen we intervallen van 15 minuten op. Als de koppeling er een tijdje uit gelegen heeft kan dit problemen opleveren. Daarom
// wordt het interval maximaal 4 uur.
var sql = "ALTER SESSION SET nls_territory='AMERICA'";
Oracle.Execute(sql)
sql = "SELECT b.prs_bedrijf_naam, "
+ " ba.prs_bedrijfadres_certificate, "
+ " ba.prs_bedrijfadres_username, "
+ " ba.prs_bedrijfadres_password, "
+ " ba.prs_bedrijfadres_url, "
+ " b.prs_overeenkomst_nr, "
+ " decode (laatste_sync_ts, null, null, to_char(laatste_sync_ts, 'yyyy-mm-dd')||'T'||to_char(laatste_sync_ts, 'hh24:mi:ss')) laatste_sync,"
+ " to_char(nieuwe_sync_ts, 'yyyy-mm-dd') || 'T' || to_char(nieuwe_sync_ts, 'hh24:mi:ss') nieuwe_sync, "
+ " to_char(nieuwe_sync_ts, 'yyyy-mm-dd hh24:mi:ss') nieuwe_ts,"
+ " prs_kenmerklink_key"
+ " FROM prs_bedrijf b, prs_bedrijfadres ba,"
+ " (SELECT prs_link_key, prs_kenmerklink_key, "
+ " fac.safe_to_date (prs_kenmerklink_waarde, 'yyyy-mm-dd hh24:mi:ss') laatste_sync_ts, "
+ " LEAST ( "
+ " fac.safe_to_date (prs_kenmerklink_waarde, 'yyyy-mm-dd hh24:mi:ss') + (4 / 24), " // vorige tijdstip + 4 uur, als we een tijd stil gestaan hebben.
+ " SYSDATE - (1 / 96)) nieuwe_sync_ts " // nu min een kwartier. Om sync problemen te voorkomen kijken we altijd een kwartier terug.
+ " FROM prs_kenmerklink "
+ " WHERE prs_kenmerk_key = 1000) kl " // timestamp laatste synchronisatie yyyymmdd hh24mi
+ " WHERE b.prs_bedrijf_key = " + prs_bedrijf_key
+ " AND b.prs_bedrijf_key = ba.prs_bedrijf_key"
+ " AND b.prs_bedrijf_key = kl.prs_link_key"
+ " AND ba.prs_bedrijfadres_type = 'O'";
WScript.Echo (sql);
WScript.Echo(new Date());
try
{
var oRs = Oracle.Execute(sql);
var fileName = "strukton.xml";
mldorder_adres = "" + oRs("prs_bedrijfadres_url").Value;
mldorder_adres = mldorder_adres.replace("CREATE", "STATUS");
order_certificate = "" + oRs("prs_bedrijfadres_certificate").Value;
username = oRs("prs_bedrijfadres_username").Value;
password = oRs("prs_bedrijfadres_password").Value;
laatste_sync = oRs("laatste_sync").Value;
nieuwe_sync = oRs("nieuwe_sync").Value;
nieuwe_ts = oRs("nieuwe_ts").Value;
prs_overeenkomst_nr = oRs("prs_overeenkomst_nr").Value;
prs_kenmerklink_key = oRs("prs_kenmerklink_key").Value;
WScript.Echo("Inlezen statusberichten van bedrijf: " + oRs("prs_bedrijf_naam").Value + " via url: " + mldorder_adres)
oRs.close();
if (GetStruktonStatus()) WScript.Quit(0);
else WScript.Quit(1);
}
catch (e)
{
WScript.Echo("Serieuze fout in GetStruktonStatus.js: " + e.description)
WScript.Quit(1);
}

View File

@@ -0,0 +1,11 @@
Echo Starten GetStruktonStatus.js
cscript .\GetStruktonStatus.js ../oracle.udl 10562 >>gen_import.log
if errorlevel 1 goto fout
cscript ..\..\..\utils\gen_import\gen_import.wsf GVBA OPDRSTAT_STRUKTON >>genimport.log 2>>&1
goto einde
:fout
Echo gen_import.exe niet meer uitgevoerd>>gen_import.log
:einde

View File

@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="Windows-1252"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:decimal-format name="european" decimal-separator="," grouping-separator="."/>
<xsl:template name="escape_quote">
<xsl:param name="string"/>
<xsl:choose>
<xsl:when test="contains($string, '&quot;')">
<xsl:value-of select="substring-before($string, '&quot;')"/>&quot;&quot;<xsl:call-template name="escape_quote">
<xsl:with-param name="string" select="substring-after($string, '&quot;')"/></xsl:call-template></xsl:when>
<xsl:otherwise>
<xsl:value-of select="$string"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="linebreaks">
<xsl:param name="string"/>
<xsl:choose>
<xsl:when test="contains($string, '&#xA;')">
<xsl:value-of select="substring-before($string, '&#xA;')"/>@@<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="substring-after($string, '&#xA;')"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$string"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="/">referenceID;ServiceRequestID;TypeID;DateTime;Description;Remarks;Total
<xsl:for-each select="//Status">
<xsl:variable name="costinfo"><xsl:if test="TypeID = '40'">@@Bruto: <20> <xsl:value-of select="format-number(CostCalculation/Total - CostCalculation/MaintenanceClause, '0,00', 'european')"/>@@Clausule: <20> <xsl:value-of select="format-number(CostCalculation/MaintenanceClause, '0,00', 'european')"/>@@Totaal: <20> <xsl:value-of select="format-number(CostCalculation/Total, '0,00', 'european')"/></xsl:if></xsl:variable>
<xsl:variable name="costs"><xsl:if test="TypeID = '40'"><xsl:value-of select="CostCalculation/Total"/></xsl:if></xsl:variable>
<xsl:variable name="remarks_unquote"><xsl:call-template name="escape_quote"><xsl:with-param name="string" select="substring(Remarks,1,800)"/></xsl:call-template></xsl:variable>
<xsl:variable name="remarks_uncr">&quot;<xsl:call-template name="linebreaks"><xsl:with-param name="string" select="$remarks_unquote"/></xsl:call-template><xsl:value-of select="$costinfo"/>&quot;</xsl:variable>
<xsl:variable name="new_line" select="'&#xA;'"/>
<xsl:variable name="referenceID"><xsl:value-of select="ReferenceID"/></xsl:variable>
<xsl:variable name="serviceRequestID"><xsl:value-of select="ServiceRequestID"/></xsl:variable>
<xsl:variable name="typeID"><xsl:value-of select="TypeID"/></xsl:variable>
<xsl:variable name="dateTime"><xsl:value-of select="DateTime"/></xsl:variable>
<xsl:variable name="description"><xsl:value-of select="Description"/></xsl:variable>
<xsl:value-of select="$referenceID"/>;<xsl:value-of select="$serviceRequestID"/>;<xsl:value-of select="$typeID"/>;<xsl:value-of select="$dateTime"/>;<xsl:value-of select="$description"/>;<xsl:value-of select="$remarks_uncr"/>;<xsl:value-of select="$costs"/><xsl:value-of select="$new_line"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
<!-- Stylesheet edited using Stylus Studio - (c) 2004-2007. Progress Software Corporation. All rights reserved. -->

177
CUST/GVBA/xsl/strukton.xsl Normal file
View File

@@ -0,0 +1,177 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<xsl:output method="xml" encoding="utf-8"/>
<xsl:decimal-format name="european" decimal-separator="." grouping-separator=","/>
<xsl:param name="mode"/>
<!-- Maken 'bon' (XML) -->
<xsl:template match="opdracht">
<xsl:variable name="prioriteit">
<xsl:choose>
<xsl:when test="melding/spoed=1">Calamiteit</xsl:when>
<xsl:when test="melding/spoed=2">Hoog</xsl:when>
<xsl:when test="melding/spoed=3">Normaal</xsl:when>
<xsl:when test="melding/spoed=4">Laag</xsl:when>
<xsl:when test="melding/spoed=5">Hold</xsl:when>
<xsl:otherwise>
Onbekend
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:element name="ServiceRequestCreate">
<xsl:element name="ServiceRequest">
<xsl:element name="CustomerID"><xsl:value-of select="uitvoerende/bedrijf/overeenkomst_nr"/></xsl:element>
<xsl:element name="ReferenceID">
<xsl:value-of select="concat(melding/discipline/srtdiscipline/prefix, melding/key)"/>/<xsl:value-of select=" bedrijfopdr_volgnr"/>
</xsl:element>
<xsl:element name="Reference"><xsl:value-of select="melding/stdmelding/omschrijving"/>-<xsl:value-of select="opdrachttype/omschrijving"/></xsl:element>
<xsl:element name="TypeCode">
<xsl:choose>
<xsl:when test="opdrachttype/omschrijving='Offerte'">3</xsl:when>
<xsl:when test="opdrachttype/omschrijving='Opdracht'">2</xsl:when>
<xsl:otherwise>2</xsl:otherwise>
</xsl:choose>
</xsl:element>
<xsl:element name="RequestedProcessingPeriod">
<xsl:element name="EndDateTime">
<xsl:value-of select="einddatum/jaar"/>-<xsl:value-of select="einddatum/maand"/>-<xsl:value-of select="einddatum/maand"/>T<xsl:value-of select="einddatum/tijd"/>:00</xsl:element>
<xsl:element name="EscalationToOperator">false</xsl:element>
</xsl:element>
<xsl:element name="IssueCategoryID">
<xsl:value-of select="melding/discipline/key"/>
</xsl:element>
<xsl:element name="IssueCategory">
<xsl:value-of select="melding/discipline/omschrijving"/>
</xsl:element>
<xsl:element name="IssueSubCategoryID">
<xsl:value-of select="melding/stdmelding/key"/>
</xsl:element>
<xsl:element name="IssueSubCategory">
<xsl:value-of select="melding/stdmelding/omschrijving"/>
</xsl:element>
<xsl:element name="Description">
Gebouw: <xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/omschrijving"/>
Verdieping: <xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verdieping/omschrijving"/>
Ruimte: <xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verdieping/ruimte/nr"/>
Omschrijving:<xsl:value-of select="omschrijving"/>
</xsl:element>
<xsl:element name="Monitoring">
<xsl:element name="StartDateTime">
<xsl:for-each select="tracking/track">
<xsl:sort select="datum/timestamp" order="ascending"/>
<xsl:if test="position() = 1">
<xsl:value-of select="datum/jaar"/>-<xsl:value-of select="datum/maand"/>-<xsl:value-of select="datum/dag"/>T<xsl:value-of select="datum/tijd"/>:00
</xsl:if>
</xsl:for-each>
</xsl:element>
<xsl:element name="EndDateTime">
<xsl:value-of select="einddatum/jaar"/>-<xsl:value-of select="einddatum/maand"/>-<xsl:value-of select="einddatum/dag"/>T<xsl:value-of select="einddatum/tijd"/>:00</xsl:element>
<xsl:element name="Urgency">
<xsl:value-of select="$prioriteit"/><xsl:if test="$prioriteit != 'Calamiteit'">: <xsl:value-of select="dagen"/> dagen</xsl:if>
</xsl:element>
</xsl:element>
<xsl:element name="Requester">
<xsl:element name="Name">
<xsl:element name="FirstLineName">
<xsl:value-of select="melding/voor/naam_full"/>
</xsl:element>
</xsl:element>
<xsl:element name="Communication">
<xsl:element name="Telephone">
<xsl:value-of select="melding/voor/telefoonnr"/>
</xsl:element>
<xsl:element name="Email">
<xsl:value-of select="melding/voor/email"/>
</xsl:element>
</xsl:element>
</xsl:element>
<xsl:element name="CustomerCoordinator">
<xsl:element name="Name">
<xsl:element name="FirstLineName">
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke/naam_friendly"/>
</xsl:element>
</xsl:element>
<xsl:element name="Communication">
<xsl:element name="Telephone">
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke/telefoonnr"/>
</xsl:element>
<xsl:element name="Email">
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke/email"/>
</xsl:element>
</xsl:element>
</xsl:element>
<xsl:element name="ServiceLocation">
<xsl:element name="LocationID">
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='StruktonNummer']"/>
</xsl:element>
<xsl:element name="Location">
<xsl:value-of select="melding/plaats/plaatsaanduiding"/> (<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/omschrijving"/>)
</xsl:element>
<xsl:element name="Address">
<xsl:element name="StreetName">
<xsl:value-of select="melding/plaats/regio/district/locatie/adres"/>
</xsl:element>
<xsl:element name="StreetPostalCode">
<xsl:value-of select="melding/plaats/regio/district/locatie/postcode"/>
</xsl:element>
<xsl:element name="CityName">
<xsl:value-of select="melding/plaats/regio/district/locatie/plaats"/>
</xsl:element>
</xsl:element>
</xsl:element>
</xsl:element>
</xsl:element>
</xsl:template>
<!-- Maken 'bon' (XML) -->
<xsl:template match="facilitor">
<xsl:apply-templates select="opdracht"/>
</xsl:template>
<!-- Inpakken 'bon' in SOAP envelope -->
<xsl:template match="SOAPEnvelope">
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<xsl:copy-of select="./node()"/>
</soap:Body>
</soap:Envelope>
</xsl:template>
<!-- Uitpakken SOAP envelope -->
<xsl:template match="soap:Envelope">
<soapResult>
<xsl:copy-of select="soap:Body/node()"/>
</soapResult>
</xsl:template>
<!-- Decoderen XML response -->
<xsl:template match="ServiceRequestStatus">
<Result>
<xsl:value-of select="ErrorLog/TypeID"/>
</Result>
</xsl:template>
<!-- Root -->
<xsl:template match="/">
<xsl:choose>
<xsl:when test="$mode='getExtension'">
<xsl:element name="format">
<!-- Hotelselect gebruikt geen cXML, maar SendFile.cls verwacht wel deze parameter om een XML response in te lezen -->
<xsl:element name="extension">xml</xsl:element>
</xsl:element>
</xsl:when>
<xsl:otherwise>
<!-- door SendFile.cls gebruikt voor maken 'bon' (XML die via SOAP verstuurd wordt) -->
<xsl:apply-templates select="facilitor"/>
<!-- door SendSOAP.cls gebruikt voor inpakken van 'bon' in SOAP envelope -->
<xsl:apply-templates select="SOAPEnvelope"/>
<!-- door SendSOAP.cls gebruikt voor uitpakken van response uit SOAP envelope -->
<xsl:apply-templates select="soap:Envelope"/>
<!-- door SendFile.cls gebruikt voor lezen van status uit gefaalde response (NB: <soapResult> is al door de decode gestript) -->
<xsl:apply-templates select="ServiceRequestStatus"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet><!-- Stylesheet edited using Stylus Studio - (c) 2004-2007. Progress Software Corporation. All rights reserved. --><!-- Stylesheet edited using Stylus Studio - (c) 2004-2007. Progress Software Corporation. All rights reserved. --><!-- Stylesheet edited using Stylus Studio - (c) 2004-2007. Progress Software Corporation. All rights reserved. -->

View File

@@ -5,7 +5,7 @@
<!-- Revision van deze cust.xsl -->
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
</xsl:variable>
<xsl:template match="melding" mode="full">
<xsl:choose>
<xsl:when test="$mode='summary'"></xsl:when>
@@ -32,7 +32,7 @@
</html>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:template>
<xsl:template match="melding" mode="include">
<table border="0" width="100%" cellpadding="2">
@@ -61,7 +61,7 @@
<hr/>
</td>
</tr>
</xsl:if>
</xsl:if>
<xsl:choose>
<!-- Met HOUT#22944 CUST01/02-noti vervallen!!! -->
<xsl:when test="$srtnotificatiecode='CUSTXX'">
@@ -69,7 +69,7 @@
<!--==============================================-->
<!-- DEFAULT BON -->
<!--==============================================-->
<!--121=FM Facilities Management = oud?-->
<xsl:when test="discipline/srtdiscipline/key=121">
<tr height="30px">
@@ -95,7 +95,7 @@
<tr>
<td align="right" width="16%"><b>Startdatum:</b></td>
<td align="left"><xsl:value-of select="gemeld/datum"/></td>
</tr>
</tr>
<tr>
<td align="right" width="16%"><b>Behandelaar:</b></td>
<td align="left"><xsl:value-of select="behandelaar/naam_full"/></td>
@@ -106,7 +106,7 @@
</tr>
<tr height="20px">
<td colspan="3"/>
</tr>
</tr>
<tr>
<td align="right" width="16%"><b>Aanvrager:</b></td>
<td align="left"><xsl:value-of select="voor/naam_full"/></td>
@@ -119,30 +119,30 @@
</xsl:if>
<tr>
<td align="right" width="16%"><b>Omschrijving:</b></td>
<td align="left">
<td align="left">
<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="omschrijving"/>
</xsl:call-template>
</td>
</tr>
</tr>
<tr height="20px">
<td colspan="3"/>
</tr>
<xsl:if test="opmerking!=''">
<tr>
<td align="right" width="16%"><b>Afhandeling:</b></td>
<td align="left">
<td align="left">
<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="opmerking"/>
</xsl:call-template>
</td>
</tr>
</xsl:if>
</xsl:if>
<tr height="20px">
<td colspan="3"/>
</tr>
</tr>
<xsl:if test="$srtnotificatiecode='MLDMAI'">
<tr>
<tr>
<td colspan="3">
**********************************************************************<br/>
This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-mail and its contents
@@ -157,7 +157,7 @@ as defined in our General Terms and Conditions.<br/>
**********************************************************************
</td>
</tr>
</xsl:if>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<tr height="30px">
@@ -169,12 +169,12 @@ as defined in our General Terms and Conditions.<br/>
<xsl:value-of select="voor/werkplek/plaats/regio/district/locatie/code"/>&#xA0;
<xsl:if test="voor/werkplek/plaats/regio/district/locatie/omschrijving!=''">(<xsl:value-of select="voor/werkplek/plaats/regio/district/locatie/omschrijving"/>)</xsl:if>
</b>
</td>
</td>
</tr>
<tr>
<td/>
</tr>
<tr>
<tr>
<td align="right" width="16%">
<b>Bonnummer:</b>
</td>
@@ -184,8 +184,8 @@ as defined in our General Terms and Conditions.<br/>
</xsl:attribute><b><xsl:value-of select="discipline/srtdiscipline/prefix"/><xsl:value-of select="key"/></b>
</xsl:element>
</td>
</tr>
<tr>
</tr>
<tr>
<td align="right" width="16%">
<b>Datum:</b>
</td>
@@ -196,8 +196,8 @@ as defined in our General Terms and Conditions.<br/>
</tr>
<tr>
<td/>
</tr>
<tr>
</tr>
<tr>
<td align="right" width="16%">
<b>Behandelaar:</b>
</td>
@@ -209,11 +209,11 @@ as defined in our General Terms and Conditions.<br/>
<td colspan="4">
<hr/>
</td>
</tr>
</tr>
<tr height="20px">
<td colspan="3"/>
</tr>
<tr>
</tr>
<tr>
<td align="left">
<b>Melding van:</b>
</td>
@@ -230,7 +230,7 @@ as defined in our General Terms and Conditions.<br/>
<xsl:if test="plaats/regio/district/locatie/gebouw/verdieping/ruimte/omschrijving!=''">(<xsl:value-of select="plaats/regio/district/locatie/gebouw/verdieping/ruimte/omschrijving"/>)</xsl:if>
</td>
</tr>
<tr>
<tr>
<td align="right" width="16%">
<b>Telefoon:</b>
</td>
@@ -245,7 +245,7 @@ as defined in our General Terms and Conditions.<br/>
<tr>
<td/>
</tr>
<tr>
<tr>
<td align="left">
<b>Vakgroep:</b>
</td>
@@ -253,7 +253,7 @@ as defined in our General Terms and Conditions.<br/>
<xsl:if test="discipline/omschrijving=''">-</xsl:if>
<xsl:value-of select="discipline/omschrijving"/>
</td>
</tr>
</tr>
<tr>
<td align="right">
<b>Melding:</b>
@@ -261,8 +261,8 @@ as defined in our General Terms and Conditions.<br/>
<td align="left">
<xsl:if test="stdmelding/omschrijving=''">-</xsl:if>
<xsl:value-of select="stdmelding/omschrijving"/>
</td>
</tr>
</td>
</tr>
<xsl:if test="count(deel)&gt;0">
<xsl:for-each select="deel">
<xsl:sort select="omschrijving"/>
@@ -288,7 +288,7 @@ as defined in our General Terms and Conditions.<br/>
</xsl:if>
<tr height="30px">
<td colspan="3"/>
</tr>
</tr>
<tr>
<td align="right">
<b>Uiterlijk gereed/geleverd:</b>
@@ -306,8 +306,8 @@ as defined in our General Terms and Conditions.<br/>
</tr>
<tr height="10px">
<td colspan="3"/>
</tr>
</xsl:if>
</tr>
</xsl:if>
<tr>
<td align="left" colspan="3">
<xsl:call-template name="linebreaks">
@@ -317,7 +317,7 @@ as defined in our General Terms and Conditions.<br/>
</tr>
<tr height="20px">
<td colspan="3"/>
</tr>
</tr>
<xsl:for-each select="kenmerk[@type!='L' and @type!='Q']">
<xsl:sort select="@volgnummer" data-type="number"/>
<xsl:if test=".!=''">
@@ -372,7 +372,7 @@ as defined in our General Terms and Conditions.<br/>
font-weight: bold;
text-decoration: none;
padding-bottom: 2px;
padding-top: 2px;
padding-top: 2px;
}
</style>
<xsl:choose>
@@ -405,19 +405,19 @@ as defined in our General Terms and Conditions.<br/>
<tr>
<td class="label" colspan="1">Naam:</td>
<td class="value" colspan="3"><xsl:value-of select="uitvoerende/persoon/naam_full"/></td>
</tr>
</tr>
<tr>
<td class="label" colspan="1">Datum:</td>
<td class="value" colspan="3"><xsl:value-of select="datumbegin/datum"/></td>
</tr>
<tr>
<td colspan="4" height="20px"/>
</tr>
</tr>
<tr>
<td class="subcaption" colspan="4">Gemeld door:</td>
</tr>
<tr>
<td class="label" colspan="1">Naam:</td>
<td class="label" colspan="1">Naam:</td>
<td class="value" colspan="3"><xsl:value-of select="melding/voor/naam_full"/></td>
</tr>
<tr>
@@ -440,8 +440,8 @@ as defined in our General Terms and Conditions.<br/>
<xsl:when test="spoed=2">Normaal</xsl:when>
<xsl:otherwise>Laag</xsl:otherwise>
</xsl:choose>
</td>
</tr>
</td>
</tr>
<tr>
<td colspan="4" height="20px"/>
</tr>
@@ -456,7 +456,7 @@ as defined in our General Terms and Conditions.<br/>
</tr>
<tr>
<td colspan="4" height="20px"/>
</tr>
</tr>
<tr>
<td class="subcaption" colspan="4">Uitvoeren:</td>
</tr>
@@ -468,21 +468,21 @@ as defined in our General Terms and Conditions.<br/>
<td class="value" colspan="4">
<xsl:call-template name="linebreaks"><xsl:with-param name="string" select="omschrijving"/></xsl:call-template>
</td>
</tr>
</tr>
<tr>
<td colspan="4" height="20px"/>
</tr>
</tr>
<tr>
<td class="subcaption" colspan="4">Afhandeling:</td>
</tr>
<tr>
<tr>
<td class="value" colspan="4">
<xsl:call-template name="linebreaks"><xsl:with-param name="string" select="opmerking"/></xsl:call-template>
</td>
</tr>
<tr>
<td colspan="4" height="40px"/>
</tr>
</tr>
<tr>
<td colspan="3">
**********************************************************************<br/>
@@ -490,7 +490,7 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
**********************************************************************
</td>
</tr>
</tr>
</table>
</xsl:when>
<xsl:otherwise>
@@ -1026,7 +1026,7 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
<xsl:sort select="van/timestamp"/>
<xsl:call-template name="rsv_ruimte">
<xsl:with-param name="min_volgnr" select="$min_volgnr"/>
<xsl:with-param name="prijs_info" select="0"/>
<xsl:with-param name="prijs_info" select="1"/>
</xsl:call-template>
</xsl:for-each>
<!-- Bevestiging reservering -->
@@ -1069,7 +1069,7 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="bestelopdracht" mode="include">
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR>
@@ -1131,7 +1131,7 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
<td colspan="2">
</td>
</tr>
<tr>
<tr>
<td colspan="2" style="vertical-align:top">
<xsl:value-of select="afleveradres/contactpers_bureau"/>
<br/>
@@ -1179,7 +1179,7 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
<br/>
<xsl:value-of select="afleveradres/bezoek_postcode"/>&#xA0;
<xsl:value-of select="afleveradres/bezoek_plaats"/>
<br/>
<br/>
</td>
<td/>
<td colspan="2" style="vertical-align:top">
@@ -1257,15 +1257,15 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
<TD WIDTH="30" ROWSPAN="30" ID="RECHTERMARGE"/>
</TR>
</TABLE>
</xsl:template>
</xsl:template>
<xsl:template match="rapport">
<style>th {
border: 1px solid #808080;
}</style>
<xsl:if test="@view='HOUT_V_RAP_PRJ_OVZ'">
<table width="100%" class="rstable" cellpadding="0" cellspacing="0">
<table width="100%" class="rstable" cellpadding="0" cellspacing="0">
<xsl:if test="count(rapport_data/data_row)=0">
<tr>
<td>
@@ -1275,7 +1275,7 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
</td>
</tr>
</xsl:if>
<xsl:variable name="sorted">
<xsl:for-each select="rapport_data/data_row">
<xsl:sort select="FCLT_F_PROJECTTYPE"/>
@@ -1283,7 +1283,7 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
<xsl:copy-of select="."/>
</xsl:for-each>
</xsl:variable>
<xsl:for-each select="msxml:node-set($sorted)/data_row">
<xsl:variable name="prev_vakgroep">
<xsl:choose>
@@ -1300,8 +1300,8 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
<xsl:value-of select="preceding-sibling::data_row[1]/FCLT_F_PROJECT"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:if test="FCLT_F_PROJECTTYPE!=$prev_vakgroep">
</xsl:variable>
<xsl:if test="FCLT_F_PROJECTTYPE!=$prev_vakgroep">
<tr>
<td colspan="12" style="text-align:center"><b><xsl:value-of select="FCLT_F_PROJECTTYPE"/></b></td>
</tr>
@@ -1314,7 +1314,7 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
<th width="6%" class="DefResultsetHeading" style="text-align:left">Projectnr</th>
<th width="25%" class="DefResultsetHeading" style="text-align:center">Projectomschrijving</th>
<th width="11%" class="DefResultsetHeading" style="text-align:center">Projectmanager</th>
<th width="11%" class="DefResultsetHeading" style="text-align:center">Adviseur</th>
<th width="11%" class="DefResultsetHeading" style="text-align:center">Adviseur</th>
<th width="11%" class="DefResultsetHeading" style="text-align:center">Opdrachtgever</th>
<th width="6%" class="DefResultsetHeading" style="text-align:center">Startdatum</th>
<th width="6%" class="DefResultsetHeading" style="text-align:center">Einddatum</th>
@@ -1345,11 +1345,11 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
</td>
<td style="text-align:center">
<xsl:if test="DIVERS=1">X</xsl:if>
</td>
</td>
</tr>
</xsl:for-each>
</table>
</xsl:if>
</xsl:if>
<xsl:if test="@view='hout_v_rap_wp_func_rui'">
<table width="100%" class="rstable" cellpadding="0" cellspacing="0">

View File

@@ -162,7 +162,7 @@
</xsl:when>
<xsl:otherwise>
HTCE Site Management B.V. Accounting Department
</xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
<br/>
<xsl:choose>
@@ -178,7 +178,7 @@
</td>
</tr>
</xsl:template>
<xsl:template name="inkooporder">
<tr>
<td class="tekst" style="width:20%;"><br/>Inkooporder:</td>
@@ -194,7 +194,7 @@
</xsl:choose>
</td>
</tr>
</xsl:template>
</xsl:template>
<xsl:template match="opdracht" mode="include">
<xsl:variable name="mandaat_htc">500</xsl:variable>
@@ -291,7 +291,7 @@
<xsl:value-of select="melding/plaats/regio/district/locatie/postcode"/><xsl:text> </xsl:text><xsl:value-of select="melding/plaats/regio/district/locatie/plaats"/><br/>
</xsl:otherwise>
</xsl:choose>
</td>
</td>
</tr>
<tr>
<td class="tekst">Telefoonnummer:</td>
@@ -329,7 +329,7 @@
<td class="tekst">Datum gereed:</td>
<td class="tekst"><xsl:value-of select="einddatum/datum"/></td>
</tr>
<tr><td height="10px"/></tr>
<tr><td height="10px"/></tr>
<tr>
<td class="tekst">Vakgroep:</td>
<td class="tekst"><xsl:value-of select="melding/discipline/srtdiscipline/prefix"/>-<xsl:value-of select="melding/discipline/omschrijving"/></td>
@@ -375,7 +375,7 @@
</tr>
</xsl:if>
<tr><td height="10px"/></tr>
<tr><td class="tekst">Omschrijving:</td></tr>
<tr><td class="tekst">Omschrijving:</td></tr>
<tr><td colspan="4" class="tekst"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="omschrijving"/></xsl:call-template><br/><br/></td></tr>
<!--Mandaatopdracht-->
<xsl:if test="opdrachttype/key='5'">
@@ -389,17 +389,17 @@
<xsl:if test="opdrachttype/key='5'">
<tr><td colspan="4" class="tekst">Indien de kosten voor het uitvoeren van deze opdracht hoger liggen dan het vermelde mandaat, dient u dit kenbaar te maken aan de Facility Desk en voor uitvoering van werkzaamheden eerst een prijsopgave / offerte met open begroting in te dienen.<br/><br/></td></tr>
</xsl:if>
<!--Contractopdracht-->
<!--Contractopdracht-->
<xsl:if test="opdrachttype/key='6'">
<tr><td colspan="4" class="tekst">Contractreferentie: <xsl:value-of select="contract/omschrijving"/>&#xA0;(<xsl:value-of select="contract/nummer"/>)<br/><br/></td></tr>
<tr><td colspan="4" class="tekst">Deze contractopdracht dient onder contractvoorwaarden uitgevoerd te worden. Indien u het hier niet mee eens bent of wanneer deze opdracht niet duidelijk is, dient u contact op te nemen met de Facility Desk.<br/><br/></td></tr>
</xsl:if>
</xsl:if>
<!--Garantieopdracht-->
<xsl:if test="opdrachttype/key='7'">
<tr><td colspan="4" class="tekst">Indien u van mening bent dat deze opdracht niet onder garantie valt, of wanneer er onduidelijkheden zijn over deze opdracht, dient u voor uitvoering van werkzaamheden contact op te nemen met de Facility Desk.<br/><br/></td></tr>
</xsl:if>
</table>
<!--Offerteaanvraag-->
</xsl:if>
</table>
<!--Offerteaanvraag-->
<xsl:if test="opdrachttype/key='8'">
<table border="0" style="width:100%;border-collapse:collapse;" cellpadding="0" cellspacing="0">
<tr>
@@ -433,12 +433,12 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<tr>
<td class="tekst" style="width:2%;"></td>
<td class="tekst">De opdrachtgever houdt zich het recht voor (sommige onderdelen van) de offerte niet te gunnen.</td>
</tr>
</tr>
<tr>
<td colspan="2" class="tekst"><br/>Indien deze offerteaanvraag niet duidelijk is, dient u contact op te nemen met de Facility Desk.<br/><br/></td>
</tr>
</table>
</xsl:if>
</xsl:if>
<table border="0" style="width:100%;">
<!--Offerteopdracht-->
<xsl:if test="opdrachttype/key='9'">
@@ -491,7 +491,7 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<xsl:call-template name="inkooporder"/>
</td>
</tr>
<xsl:call-template name="factuuradres"/>
<xsl:call-template name="factuuradres"/>
</xsl:if>
<!--Mandaatopdracht-->
<!--xsl:if test="opdrachttype/key='5'">
@@ -499,7 +499,7 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<td colspan="2" class="tekst">
<xsl:if test="melding/plaats/regio/district/kenmerk[@key='1040']!=''"><br/>Betalingstermijn: <xsl:value-of select="melding/plaats/regio/district/kenmerk[@key='1040']"/></xsl:if>
</td>
</tr>
</tr>
</xsl:if-->
<!--Mandaatopdracht/Contractopdracht/Offerteopdracht-->
<xsl:if test="opdrachttype/key='5' or opdrachttype/key='6' or opdrachttype/key='9'">
@@ -515,7 +515,7 @@ Toepasselijkheid van de door opdrachtnemer gehanteerde algemene voorwaarden word
De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerste verzoek aan leverancier verstrekt en zijn op locatie voorhanden.
</td>
</tr>
</xsl:if>
</xsl:if>
</table>
</xsl:template>
@@ -570,15 +570,15 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
</xsl:for-each>
<xsl:for-each select="(//node())[$emptystars >= position()]">
<xsl:element name="a"><xsl:attribute name="href">https://<xsl:value-of select="$FacilitorRoot"/>?<xsl:value-of select="//bookmarks/faclikedeeplink"/>&amp;oordeel=<xsl:number value="number($stars)*2"/></xsl:attribute><img src="https://venr.facilitor.nl/appl/Localscripts/raty/img/star-off.png" height="20px" width="20px" border="0" id="rate"/></xsl:element>
</xsl:for-each>&#xA0;<xsl:value-of select="$liketext"/>
</xsl:for-each>&#xA0;<xsl:value-of select="$liketext"/>
</td>
</tr>
<xsl:call-template name="fac_like">
<xsl:with-param name="stars"><xsl:number value="number($stars)-1"/></xsl:with-param>
<xsl:with-param name="emptystars"><xsl:number value="number($emptystars)+1"/></xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:template>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template match="melding" mode="include">
<xsl:choose>
@@ -651,7 +651,7 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<td style="padding-bottom:20px"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="notes/note[key=$mx_key]/omschrijving"/></xsl:call-template></td>
</tr>
</table>
</xsl:if>
</xsl:if>
<table border="1" style="width:100%;border-collapse:collapse;" cellpadding="2" cellspacing="2">
<tr>
<td width="18%"><b><xsl:value-of select="//lcl/FAC/aanvrager"/>:</b></td>
@@ -784,6 +784,27 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<tr>
<td><b>Maatregel 3:</b></td>
<td colspan="3"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="kenmerk[@naam='Maatregel 3']"/></xsl:call-template></td>
</tr>
<tr>
<td><b>Maatregel 4:</b></td>
<td colspan="3"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="kenmerk[@naam='Maatregel 4']"/></xsl:call-template></td>
</tr>
<tr><td colspan="4">&#160;</td></tr>
<tr><td colspan="4" style="font-size:9pt;"><b>Opmerkingen</b></td></tr>
<tr>
<td><b>Opmerking gebouwbeheerder:</b></td>
<td colspan="3"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="kenmerk[@naam='Opmerking gebouwbeheerder']"/></xsl:call-template></td>
</tr>
<tr>
<td><b>Opmerking procesbeheerder:</b></td>
<td colspan="3"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="kenmerk[@naam='Opmerking procesbeheerder']"/></xsl:call-template></td>
</tr>
<tr>
<td><b>Opmerking veiligheidskundige:</b></td>
<td colspan="3"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="kenmerk[@naam='Opmerking veiligheidskundige']"/></xsl:call-template></td>
</tr>
<tr>
<td><b>PBM's:</b></td>
@@ -863,7 +884,7 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<xsl:variable name="mx_key"><xsl:value-of select="extra_key"/></xsl:variable>
<tr>
<td align="right" valign="top" style="padding-top:10px;">
<b><xsl:value-of select="//lcl/FAC/bericht"/>:</b>
<b><xsl:value-of select="//lcl/FAC/bericht"/>:</b>
</td>
<td colspan="3" style="padding-top:10px;">
<xsl:call-template name="linebreaks">
@@ -874,8 +895,8 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<tr>
<td colspan="4" style="padding-bottom:20px;">
<hr/>
</td>
</tr>
</td>
</tr>
</xsl:if>
<tr>
<td align="right" width="16%">
@@ -1116,7 +1137,7 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
</xsl:call-template>
</td>
</tr>
</xsl:for-each>
</xsl:for-each>
</xsl:if>
<xsl:if test="opmerking!=''">
<tr>
@@ -1131,7 +1152,7 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
</tr>
</xsl:if>
<xsl:if test="//bookmarks/faclikedeeplink and $srtnotificatiecode='MLDAFM'">
<tr><td colspan="4"><xsl:call-template name="fac_liketab"/></td></tr>
<tr><td colspan="4"><xsl:call-template name="fac_liketab"/></td></tr>
</xsl:if>
<xsl:if test="$srtnotificatiecode='MLDNOT' or $srtnotificatiecode='MLDNOB'">
<tr><td colspan="4"><b>Notities:</b></td></tr>
@@ -1145,7 +1166,7 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<td colspan="3"><b><xsl:value-of select="omschrijving"/></b></td>
</xsl:when>
<xsl:otherwise>
<td width="20%"><xsl:value-of select="aanmaak/datum"/>&#xA0;<xsl:value-of select="aanmaak/tijd"/><br/><xsl:value-of select="noteur/naam_friendly"/></td>
<td width="20%"><xsl:value-of select="aanmaak/datum"/>&#xA0;<xsl:value-of select="aanmaak/tijd"/><br/><xsl:value-of select="noteur/naam_friendly"/></td>
<td colspan="3"><xsl:value-of select="omschrijving"/></td>
</xsl:otherwise>
</xsl:choose>