Merge 2017.1 Gold E patches

svn path=/Website/trunk/; revision=34851
This commit is contained in:
Jos Groot Lipman
2017-08-07 15:49:58 +00:00
51 changed files with 1420 additions and 350 deletions

View File

@@ -337,8 +337,13 @@ api2 = {
// toe dat je zelf *, % en _ gebruikt
var safe_val = safe.quoted_sql_wild(filterval);
}
else
{
if (field.caseinsensitive)
var safe_val = safe.quoted_sql_upper(filterval);
else
var safe_val = safe.quoted_sql(filterval);
}
break;
case "like":
var safe_val = safe.quoted_sql_wild("%"+filterval+"%");
@@ -423,10 +428,14 @@ api2 = {
{
if (field.islcl)
dbs = 'lcl.l({0}, 1)'.format(dbs);
dbs = "UPPER("+dbs+")";
safe_val = safe_val.toUpperCase();
field.caseinsensitive = true;
}
}
if (field.caseinsensitive)
{
dbs = "UPPER(" + dbs + ")";
safe_val = safe_val.toUpperCase();
}
if (filter == "range" && fld.match(/^fclt_d_/))
{
dbs = "TO_DATE(" + dbs + ",'dd-mm-yyyy')";

View File

@@ -122,13 +122,14 @@ function model_prs_perslid(params)
"dbs": "prs_perslid_email",
"label": L("lcl_prs_person_email"),
"typ": "varchar",
"filter": "exact"
"filter": "exact",
"caseinsensitive": true
},
"login": {
"dbs": "prs_perslid_oslogin",
"label": L("lcl_prs_person_login"),
"typ": "varchar",
"filter": "like"
"filter": "exact"
},
"employment": {
"dbs": "prs_perslid_dienstverband",
@@ -172,8 +173,7 @@ function model_prs_perslid(params)
"dbs": "wg.alg_locatie_key",
"label": L("lcl_location"),
"typ": "key",
"foreign": "alg_locatie",
"filter": "exact"
"foreign": "alg_locatie"
},
"building": {
"dbs": "wg.alg_gebouw_key",

View File

@@ -23,7 +23,7 @@ function model_res_discipline(disc_key, params)
this.REST_GET = generic_REST_GET(_model_res_discipline, // Let op: de originele _model_res_discipline
{ "GET": {
wheres: [ "res_discipline.ins_discipline_module = 'RES'"
wheres: [ "ins_tab_discipline.ins_discipline_module = 'RES'"
]
}
}
@@ -38,7 +38,8 @@ _model_res_discipline = // Internal only
{
"records_name": "bookingdisciplines",
"record_name": "bookingdiscipline",
"table": "res_discipline",
"table": "ins_tab_discipline",
"audit": { "childtable": "res_disc_params" }, // Parameters voor fac_audit.
"primary": "ins_discipline_key",
"soft_delete": "ins_discipline_verwijder",
"autfunction": "WEB_RESMGT",

View File

@@ -1194,6 +1194,9 @@ function jwt_decode(token)
// FSN#39763 SLNKDWF.DLL v4.16 heeft nog een bug in het decoderen van
// url-safe encoded teksten. Daarom hier voor-corrigeren
// De jwt_verify moet straks wel op de originelen
result.orgheaderSeg = result.headerSeg;
result.orgpayloadSeg = result.payloadSeg;
result.headerSeg = result.headerSeg.replace(/\-/g, "+").replace(/\_/g, "/");
result.payloadSeg = result.payloadSeg.replace(/\-/g, "+").replace(/\_/g, "/");
@@ -1216,7 +1219,7 @@ function jwt_verify(decoded_jwt, secret, skew, duration)
return { err: "Only HS256 is supported" };
var oCrypto = new ActiveXObject("SLNKDWF.Crypto");
var sig = oCrypto.hex_hmac_sha256(secret, decoded_jwt.headerSeg + "." + decoded_jwt.payloadSeg);
var sig = oCrypto.hex_hmac_sha256(secret, decoded_jwt.orgheaderSeg + "." + decoded_jwt.orgpayloadSeg);
var sig64 = oCrypto.hex2base64(sig, false, true); // no padding, urlsafe
var now = new Date().getTime() / 1000;

View File

@@ -129,7 +129,7 @@ var authparams = user.checkAutorisation(autfunction, true) || {};
{
var doxd = document.getElementById("xd").checked;
$(".noxd").toggle(!doxd);
$(".onlyxd").toggle(doxd);
$(".onlyxd").toggleClass('hidden', !doxd);
iface_toggleSecondarySearchblock(false); // altijd uitschakelen
}
<% } %>

View File

@@ -548,6 +548,8 @@ function getSqlGoedkeurMld(fiatstatus, prsKeys, params)
+ " AND sd.ins_srtdiscipline_key = td.ins_srtdiscipline_key"
+ " AND mdp.mld_ins_discipline_key = sm.mld_ins_discipline_key"
+ " AND EXISTS("
// JGL: 31-7-2017 Deze prs-scoping werkt volgens mij niet voor bedrijf-niveau
// Bovendien heeft geen van de WEB_ORDGO? uberhaupt PRS-scoping?
+ " SELECT g.prs_perslid_key"
+ " FROM fac_v_webgebruiker g"
+ " , fac_functie f"
@@ -639,7 +641,7 @@ function getSqlGoedkeurMld(fiatstatus, prsKeys, params)
}
// Offertes die geaccepteerd of afgewezen dienen te worden van meldingen waarvoor nog geen uitvoeringsopdracht is aangemaakt.
function getSqlAccAfwOff(params)
function getSqlAccAfwOff(prsKeys, params)
{ // opdrachten: accepten/afwijzen
// Zonder WEB_ORDOAP rechten kom ik hier al niet.
var sql = " SELECT o.mld_melding_key || '/' || o.mld_opdr_bedrijfopdr_volgnr aanvraagnummer"
@@ -701,6 +703,24 @@ function getSqlAccAfwOff(params)
+ " AND m.mld_alg_onroerendgoed_keys = onrg.alg_onroerendgoed_keys(+)"
+ " AND onrg.alg_gebouw_key = g.alg_gebouw_key(+)"
+ " AND onrg.alg_terreinsector_key = t.alg_terreinsector_key(+)"
+ " AND EXISTS("
+ " SELECT g.prs_perslid_key"
+ " FROM fac_v_webgebruiker g"
+ " , fac_functie f"
+ " , prs_perslid pzelf"
+ " WHERE g.fac_functie_key = f.fac_functie_key"
+ " AND f.fac_functie_code = 'WEB_ORDBOF'"
+ " AND g.ins_discipline_key = sm.mld_ins_discipline_key"
+ " AND pzelf.prs_perslid_key IN (" + prsKeys + ")"
+ " AND g.prs_perslid_key = pzelf.prs_perslid_key"
+ " AND (g.fac_gebruiker_alg_level_write = -1"
+ " OR (g.fac_gebruiker_alg_level_write < 9"
+ " AND m.mld_alg_locatie_key IN" // alleen locatie en lager ondersteund
+ " (SELECT alg_locatie_key"
+ " FROM fac_v_my_locations"
+ " WHERE prs_perslid_key = pzelf.prs_perslid_key"
+ " AND niveau = fac_gebruiker_alg_level_write)))"
+ " )"
+ (params.bld_key // sortering op gebouw, locatie of district
? " AND g.alg_gebouw_key = " + params.bld_key
: (params.loc_key_arr
@@ -1113,7 +1133,7 @@ function fiattering_sql(params)
// Heb ik WEB_ORDOAP rechten? Zonder deze rechten kan ik offertes toch niet accepteren/afwijzen.
if (haveOffertes && haveORDOAPrights && params.getopen)
sqls.push(getSqlAccAfwOff(params)); // Te accepteren/Af te wijzen offertes (offerte opdrachten) van meldingen waarvoor nog geen uitvoeringsopdracht is aangemaakt.
sqls.push(getSqlAccAfwOff(prsKeys, params)); // Te accepteren/Af te wijzen offertes (offerte opdrachten) van meldingen waarvoor nog geen uitvoeringsopdracht is aangemaakt.
}
if (inArray("FIN", params.betreft) || alleModules)

View File

@@ -75,6 +75,7 @@
var outputmode = getQParamInt("outputmode", 0);
var nobuttons = getQParamInt("nobuttons", 0) == 1;
var noheader = getQParamInt("noheader", 0) == 1;
var rmode = '';
if (outputmode==2) rmode = 'excel';
@@ -119,6 +120,7 @@
{ icon: "excel.png", title: L("lcl_export_to_excel"), action: 'rap_excel() ' }
];
}
if (!noheader)
IFRAMER_HEADER(model.records_title, buttons);
}
FCLT2XMLResponse ({xmlnode: 'rapport', key: usrrap_key, mode: rmode, where: sql_where});
@@ -459,8 +461,13 @@ function fac_usrrap_list_graph (model, scf_params)
<body id="listbody">
<%
var widget_height = getQParam("widget_height", null);
var nobuttons = getQParamInt("nobuttons", 0) == 1;
var noheader = getQParamInt("noheader", 0) == 1;
var mygraph_height = ((widget_height != null) ? parseInt(widget_height) : 500);
var buttons = [];
if(!nobuttons)
var buttons = [ { icon: "palette.png", title: L("lcl_openimage"), action: "toImg()" } ];
if (!noheader)
IFRAMER_HEADER(model.records_title, buttons);
%>
<div id="myGraph" style="height:<%=mygraph_height%>px;" ></div>

View File

@@ -16,6 +16,9 @@
<%
var reportsx = new model_reportsx();
if (S("qp_maxrows") < 250)
settings.overrule_setting("qp_maxrows", 250); // Toon alle kolommen direct
var show_buttons = [{ title: L("lcl_usrrap_show"), action: "show_report", icon: "fa-file-text" }];
if (S("fac_usrrap_mode") != 1)
reportsx.includes = []; // Geen kolom details laten zien

View File

@@ -111,6 +111,9 @@ for (; !fc1.atEnd(); fc1.moveNext())
result.error = e.description + "\n" + data.join("\n");
}
var offlinefile = fldr.Path + "\\offline.html";
if (fso.FileExists(offlinefile))
result.FCLToffline = true;
aFCLT.push(result);
}

View File

@@ -18,6 +18,8 @@ var JSON_Result = true;
result = { cust: customerId.toUpperCase(),
power : [],
recent: [] };
if (FCLToffline)
result.FCLToffline = true;
tmStart2 = new Date();
result.datasource = Oracle.RealConnection.Properties("Data source").Value;

View File

@@ -105,7 +105,7 @@ var isContactpersoon = user.isContactpersoon();
{
var doxd = document.getElementById("xd").checked;
$(".noxd").toggle(!doxd);
$(".onlyxd").toggle(doxd);
$(".onlyxd").toggleClass('hidden', !doxd);
}
<% } %>

View File

@@ -64,6 +64,7 @@ ins = {checkAutLevel:
getBindingItemString:
function(bind, bind_key, parent_key)
{
var sql;
var binding_item = L("lcl_unknown");
switch (bind)
{
@@ -126,6 +127,8 @@ ins = {checkAutLevel:
+ " WHERE d.ins_deel_key = " + parent_key;
break;
}
default: INTERNAL_ERROR_UNKNOWN_BIND;
}
oRs = Oracle.Execute(sql);
if (!oRs.eof)

View File

@@ -183,7 +183,7 @@ var authparams = user.checkAutorisation(autfunction);
{
var doxd = document.getElementById("xd").checked;
$(".noxd").toggle(!doxd);
$(".onlyxd").toggle(doxd);
$(".onlyxd").toggleClass('hidden', !doxd);
iface_toggleSecondarySearchblock(false); // altijd uitschakelen
}
<% } %>

View File

@@ -270,7 +270,7 @@ oRs.close();
{
var doxd = document.getElementById("xd").checked;
$(".noxd").toggle(!doxd);
$(".onlyxd").toggle(doxd);
$(".onlyxd").toggleClass('hidden', !doxd);
iface_toggleSecondarySearchblock(false); // altijd uitschakelen
}
<% } %>
@@ -1046,6 +1046,7 @@ if (!frontend && srtdisc > -1)
"kp",
user_key,
{ kostenplaatsKey: kp_key,
trclass: "noxd",
label: L("lcl_mld_inf_Kostenplaats"),
filtercode: "AA" // Alleen actieve kostenplaatsen kunnen selecteren "All Active". Huidige waarde als initi<74>le waarde kan bij kostenplaatsen altijd.
});

View File

@@ -165,7 +165,7 @@ oRs.close();
{
var doxd = document.getElementById("xd").checked;
$(".noxd").toggle(!doxd);
$(".onlyxd").toggle(doxd);
$(".onlyxd").toggleClass('hidden', !doxd);
iface_toggleSecondarySearchblock(false); // altijd uitschakelen
}
<% } %>

View File

@@ -62,7 +62,7 @@ toRs.close();
{
var doxd = document.getElementById("xd").checked;
$(".noxd").toggle(!doxd); // Kan want geen secsearch
$(".onlyxd").toggle(doxd);
$(".onlyxd").toggleClass('hidden', !doxd);
}
<% } %>
function doSubmit()

View File

@@ -138,22 +138,41 @@ function tryOverrule(path)
tryOverrule(rooturl + "/cust/custenv.wsc");
tryOverrule(custpath + "/custenv.wsc"); // deze is sterker
// Plaats een offline.html bestandje in /temp, /cust/ of /cust/XXXX en de site gaat offline
// TODO: via virtual /test wel naar binnen laten? of ?force=1 of ?offline=0 en Session var
// Plaats een offline.html bestandje in /cust/ of /cust/XXXX en de site gaat offline
// Door url uit te breiden met ?forceonline=1 kun je toch naar binnen
// Wat met API's?
var FCLToffline = false;
function tryOffline(path)
{
var fso = Server.CreateObject("Scripting.FileSystemObject");
var offlinefile = Server.MapPath(path + "offline.html");
if (fso.FileExists(offlinefile))
{ // Geen Response.Redirect. Dan kan de gebruiker geen F5 drukken om weer verbinding te krijgen na een tijdje
{
Response.AddHeader("FCLT-Offline","offline");
FCLToffline = true;
if (typeof Session("forceonline") != "undefined")
return;
// Geen Response.Redirect. Dan kan de gebruiker geen F5 drukken om weer verbinding te krijgen na een tijdje
var ftekst = fso.OpenTextFile(offlinefile);
var tekst = ftekst.ReadAll();
ftekst.Close();
Response.Status = "503 Service Unavailable";
if (JSON_Result)
{
// JSON.stringfy hebben we (nog!) niet gegarandeerd dus simpel houden
Response.Write(tekst);
Response.End;
}
else
{
shared.simpel_page(tekst);
}
}
}
tryOffline(rooturl + "/temp/");
if (Request.QueryString("forceonline").Count > 0)
Session("forceonline") = true;
tryOffline(rooturl + "/cust/");
tryOffline(custpath + "/"); // deze is sterker
@@ -282,6 +301,15 @@ if ((user_key < 0 || getQParamInt("jwtforce", 0) == 1) && typeof LOGIN_try == "u
if (user_key < 0 && typeof ANONYMOUS_Allowed == "undefined")
{
var method = String(Request.ServerVariables("REQUEST_METHOD"));
if (method == "HEAD" || method == "OPTIONS" || method == "PROPFIND")
{ // Een HEAD zonder cookies is waarschijnlijk afkomstig van Excel
// met agent 'Microsoft+Office+Existence+Discovery'
// Door de '405' heeft hij hopelijk door dat we echt geen WEBDAV doen
Response.Status = "405 Method not allowed";
Response.End;
}
if (JSON_Result) // Login scherm werkt toch niet
{
Response.Clear();

View File

@@ -21,6 +21,13 @@
*/ %>
<%
// Deze slaan we bij RESA en RESB over.
var not_reserveerbare_ruimte = " AND NOT EXISTS "
+ " (SELECT '' "
+ " FROM res_alg_ruimte rar"
+ " WHERE res_alg_ruimte_verwijder IS NULL "
+ " AND rar.alg_ruimte_key = r.alg_ruimte_key)";
function getFiltClauseRegio(pfiltcode, params)
{
var lfiltClause = "";
@@ -140,12 +147,17 @@ function getFiltClauseLocatie(pfiltcode, params)
case "RESB": // Bezorgplaats voor voorzieningen, d.i. locatie met ruimtes zonder louter reserveerbare ruimten
var loc_scope_act_filter = get_loc_scope_act_filter(params, 2)
lfiltClause.from = loc_scope_act_filter.from;
lfiltClause.where = get_res_bezorgfilter(params, 2)
+ get_not_reserveerbare_ruimte("l")
lfiltClause.where += loc_scope_act_filter.where;
lfiltClause.where = " AND EXISTS"
+ " (SELECT '' "
+ " FROM alg_ruimte r, alg_verdieping vv, alg_gebouw gg "
+ " WHERE r.alg_ruimte_verwijder IS NULL "
+ " AND r.alg_verdieping_key = vv.alg_verdieping_key "
+ " AND vv.alg_gebouw_key = gg.alg_gebouw_key "
+ " AND gg.alg_locatie_key = l.alg_locatie_key"
+ not_reserveerbare_ruimte
+ ")"
+ loc_scope_act_filter.where;
lfiltClause.where += get_res_bezorgfilter(params, 2);
lfiltClause.where += lfiltClauseFAC; // Ook dat nog
break;
@@ -180,7 +192,7 @@ function getFiltClauseLocatie(pfiltcode, params)
+ " AND rso.res_srtartikel_og_verwijder IS NULL"
+ " AND v.alg_gebouw_key = g.alg_gebouw_key"
+ get_res_afhaalfilter(params)
+ get_not_reserveerbare_ruimte()
+ not_reserveerbare_ruimte
+ " UNION"
+ " SELECT g.alg_locatie_key "
+ " FROM res_v_aanwezigdeel, ins_deel, alg_ruimte r, alg_verdieping v, alg_gebouw g"
@@ -190,7 +202,7 @@ function getFiltClauseLocatie(pfiltcode, params)
+ " AND r.alg_verdieping_key = v.alg_verdieping_key"
+ " AND v.alg_gebouw_key = g.alg_gebouw_key"
+ get_res_afhaalfilter(params, true)
+ get_not_reserveerbare_ruimte()
+ not_reserveerbare_ruimte
+ ")";
break;
@@ -248,10 +260,16 @@ function getFiltClauseGebouw(pfiltcode, params)
case "RESB": // Bezorgplaats voor voorzieningen, d.i. gebouwen met ruimten excl. reserveerbare ruimten
var loc_scope_act_filter = get_loc_scope_act_filter(params, 3)
lfiltClause.from = loc_scope_act_filter.from;
lfiltClause.where = get_res_bezorgfilter(params, 3)
+ get_not_reserveerbare_ruimte("g")
lfiltClause.where = " AND EXISTS"
+ " (SELECT '' "
+ " FROM alg_ruimte r, alg_verdieping vv"
+ " WHERE r.alg_ruimte_verwijder IS NULL "
+ " AND r.alg_verdieping_key = vv.alg_verdieping_key "
+ " AND vv.alg_gebouw_key = g.alg_gebouw_key "
+ not_reserveerbare_ruimte
+ ")"
+ loc_scope_act_filter.where;
lfiltClause.where += get_res_bezorgfilter(params, 3);
lfiltClause.where += lfiltClauseFAC; // Ook dat nog
break;
case "RESA": // RES Afhaal: 'thuishaven' objecten en catering die een ruimte-scope heeft
@@ -263,7 +281,7 @@ function getFiltClauseGebouw(pfiltcode, params)
+ " AND r.alg_verdieping_key = v.alg_verdieping_key"
+ " AND rso.res_srtartikel_og_verwijder IS NULL"
+ get_res_afhaalfilter(params)
+ get_not_reserveerbare_ruimte()
+ not_reserveerbare_ruimte
+ " UNION"
+ " SELECT v.alg_gebouw_key "
+ " FROM res_v_aanwezigdeel, ins_deel, alg_ruimte r, alg_verdieping v"
@@ -272,7 +290,7 @@ function getFiltClauseGebouw(pfiltcode, params)
+ " AND COALESCE(ins_alg_ruimte_key_org, ins_alg_ruimte_key) = r.alg_ruimte_key"
+ " AND r.alg_verdieping_key = v.alg_verdieping_key"
+ get_res_afhaalfilter(params, true)
+ get_not_reserveerbare_ruimte()
+ not_reserveerbare_ruimte
+ ")";
break;
@@ -347,10 +365,15 @@ function getFiltClauseVerdieping(pfiltcode, params)
case "RESB": // Bezorgplaats voor voorzieningen, d.i. verdieping met ruimte excl. reserveerbare ruimten
var loc_scope_act_filter = get_loc_scope_act_filter(params, 4)
lfiltClause.from = loc_scope_act_filter.from;
lfiltClause.where = get_res_bezorgfilter(params, 4)
+ get_not_reserveerbare_ruimte("v")
lfiltClause.where = " AND EXISTS"
+ " (SELECT '' "
+ " FROM alg_ruimte r"
+ " WHERE r.alg_ruimte_verwijder IS NULL "
+ " AND r.alg_verdieping_key = v.alg_verdieping_key "
+ not_reserveerbare_ruimte
+ ")"
+ loc_scope_act_filter.where;
lfiltClause.where += get_res_bezorgfilter(params, 4);
lfiltClause.where += lfiltClauseFAC; // Ook dat nog
break;
@@ -362,7 +385,7 @@ function getFiltClauseVerdieping(pfiltcode, params)
+ " AND rso.alg_onrgoed_key = r.alg_ruimte_key"
+ " AND rso.res_srtartikel_og_verwijder IS NULL"
+ get_res_afhaalfilter(params)
+ get_not_reserveerbare_ruimte()
+ not_reserveerbare_ruimte
+ " UNION"
+ " SELECT r.alg_verdieping_key "
+ " FROM res_v_aanwezigdeel, ins_deel, alg_ruimte r"
@@ -370,7 +393,7 @@ function getFiltClauseVerdieping(pfiltcode, params)
+ " AND COALESCE(ins_alg_ruimte_type_org, ins_alg_ruimte_type) = 'R'"
+ " AND COALESCE(ins_alg_ruimte_key_org, ins_alg_ruimte_key) = r.alg_ruimte_key"
+ get_res_afhaalfilter(params, true)
+ get_not_reserveerbare_ruimte()
+ not_reserveerbare_ruimte
+ ")";
break;
@@ -436,10 +459,10 @@ function getFiltClauseRuimte(pfiltcode, params)
case "RESB": // Bezorgplaats voor voorzieningen, d.i. zonder de reserveerbare ruimten
var loc_scope_act_filter = get_loc_scope_act_filter(params, 5)
lfiltClause.from = loc_scope_act_filter.from;
lfiltClause.where = get_res_bezorgfilter(params, 5)
+ get_not_reserveerbare_ruimte("r")
+ loc_scope_act_filter.where;
lfiltClause.where += lfiltClauseFAC; // Ook dat nog
lfiltClause.where = not_reserveerbare_ruimte
+ get_res_bezorgfilter(params, 5)
+ loc_scope_act_filter.where
+ lfiltClauseFAC; // Ook dat nog
break;
case "RESA": // RES Afhaal: 'thuishaven' objecten en catering die een ruimte-scope heeft
@@ -456,7 +479,7 @@ function getFiltClauseRuimte(pfiltcode, params)
+ " AND COALESCE(ins_alg_ruimte_type_org, ins_alg_ruimte_type) = 'R'"
+ get_res_afhaalfilter(params, true)
+ ")"
+ get_not_reserveerbare_ruimte();
+ not_reserveerbare_ruimte;
break;
case "EXP": lfiltClause.where = lfiltClauseEXP;
@@ -563,39 +586,6 @@ function get_rel_obj_filter(stdm_key, level)
return rel_obj_filter;
}
function get_not_reserveerbare_ruimte(alias)
{
// Deze slaan we bij RESA en RESB over.
var alias = alias || "r";
var col = "";
var exc = "";
switch (alias)
{
case "l": col = " AND arb.alg_locatie_key = l.alg_locatie_key";
break;
case "g": col = " AND arb.alg_gebouw_key = g.alg_gebouw_key";
break;
case "v": nrr = " AND arb.alg_verdieping_key = v.alg_verdieping_key";
break;
case "r": col = " AND arb.alg_ruimte_key = r.alg_ruimte_key";
exc = "NOT";
break;
}
var nrr = " AND " + exc + " EXISTS"
+ " (SELECT ''"
+ " FROM res_alg_ruimte rar"
+ " , alg_v_onrgoed_boom arb"
+ " WHERE res_alg_ruimte_verwijder IS NULL"
+ " AND rar.alg_ruimte_key = arb.alg_ruimte_key"
+ col + ")";
return nrr;
}
function get_res_bezorgfilter(params, level)
{
params = params || {};
@@ -677,7 +667,7 @@ function get_res_bezorgfilter(params, level)
case 5: niveau = {alias: "r", field: "alg_ruimte_key"}; break;
}
bezorgfilter = niveau.alias + "." + niveau.field + " IN "
bezorgfilter = "AND " + niveau.alias + "." + niveau.field + " IN "
+ "(SELECT aob." + niveau.field
+ " FROM ( SELECT alg_onrgoed_key"
+ " , alg_onrgoed_niveau"
@@ -698,7 +688,8 @@ function get_res_bezorgfilter(params, level)
+ " OR (obj.alg_onrgoed_niveau = 'D' and obj.alg_onrgoed_key = aob.alg_district_key)"
+ " )"
+ " AND obj.alg_onrgoed_verwijder IS NULL"
+ " AND rad.res_activiteit_key = " + params.act_key;
+ " AND rad.res_activiteit_key = " + params.act_key
+ ")";
}
return " /* get_res_bezorgfilter */ " + bezorgfilter;

View File

@@ -89,6 +89,7 @@ settings =
{
pool_id = "<unknown>";
}
if (!pool_id.match(/API/)) // API application pools kunnen regulier herstarten
__DoLog("Unexpected Application pool '{0}' restart at {1} during office hours".format(pool_id, toISODateTimeString(tm_start, true)), "#f00");
__LogfileName = keeplog;
}

View File

@@ -0,0 +1,8 @@
cls
if not exist ".\Maas\*.xml" goto einde
cscript ..\..\aaxx\import\Maas\MaasStatusResponse.js MAAS2OPDR .\Maas\ "https://aahb.facilitor.nl/default.asp?fac_id=AAHB&API=MAAS2OPDR&APIKEY=vv1hhkTRi6oDkrHt3Piony8lfhZvktLM" >>genimport.log 2>>&1
:einde

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:import href="./cust.xsl"/>
<xsl:import href="../../aaxx/xsl/contract.xsl"/>
<xsl:import href="./cust_settings.xsl"/>
<xsl:variable name="Rev">
<!-- Revision van deze cust.xsl -->
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
</xsl:variable>
</xsl:stylesheet>

14
CUST/AAHB/xsl/cust.xsl Normal file
View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxml="urn:schemas-microsoft-com:xslt" version="1.0">
<xsl:import href="../../../appl/shared/default.xsl"/>
<xsl:import href="../../aaxx/xsl/default.xsl"/>
<xsl:variable name="xsrtnotificatiecode">BEZMAI</xsl:variable>
<xsl:variable name="Rev">
<!-- Revision van deze cust.xsl -->
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
</xsl:variable>
</xsl:stylesheet><!-- Stylesheet edited using Stylus Studio - (c) 2004-2007. Progress Software Corporation. All rights reserved. -->

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:variable name="logo_file">../../cust/aaxx/aafm_banner.gif</xsl:variable>
<xsl:template name="customer">HBC</xsl:template>
<xsl:template name="customer_code">HBC</xsl:template>
<xsl:template name="customer_email">facilitydeskhbc@aa-fm.com</xsl:template>
<xsl:template name="invoice_email">invoices.hbc@aa-fm.com</xsl:template>
<xsl:template name="servicedesk_telefoon">+31 (0) 40 2332870</xsl:template>
<xsl:template name="opdracht_qr_bookmark"></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. -->

126
CUST/AAHB/xsl/maas.xsl Normal file
View File

@@ -0,0 +1,126 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="yes" encoding="UTF-8"/>
<xsl:param name="mode"/>
<xsl:variable name="Rev">
<!-- Revision van deze maas.xsl -->
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
</xsl:variable>
<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:text> - </xsl:text>
<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="opdracht">
<xsl:element name="MAAS_XML">
<xsl:element name="List_Service_Calls">
<xsl:element name="Service_Call">
<xsl:element name="Customer_Call_Number">
<xsl:value-of select="melding/discipline/srtdiscipline/prefix"/>
<xsl:value-of select="melding/key"/>/<xsl:value-of select="bedrijfopdr_volgnr"/></xsl:element>
<xsl:element name="Customer_Call_Start_Date">
<xsl:value-of select="melding/gemeld/jaar"/>
<xsl:value-of select="melding/gemeld/maand"/>
<xsl:value-of select="melding/gemeld/dag"/>
</xsl:element>
<xsl:element name="Customer_Call_Start_Time">
<xsl:value-of select="concat(concat(substring-before(melding/gemeld/tijd,':'),substring-after(melding/gemeld/tijd,':')),'00')"/>
</xsl:element>
<xsl:element name="Customer_Requestor_Name">
<xsl:value-of select="substring(melding/voor/naam_full,1,40)"/>
</xsl:element>
<xsl:element name="Customer_Requestor_Telephone_Number">
<xsl:value-of select="melding/voor/telefoonnr"/>
</xsl:element>
<xsl:element name="Customer_Coordinator_Name">
<xsl:value-of select="substring(backoffice_contact/naam_full,1,40)"/>
</xsl:element>
<xsl:element name="Customer_Coordinator_Telephone_Number">
<xsl:value-of select="backoffice_contact/telefoonnr"/>
</xsl:element>
<xsl:element name="Customer_Coordinator_Email_Address">
<xsl:value-of select="substring(backoffice_contact/email,1,60)"/>
</xsl:element>
<xsl:element name="Customer_Site_Name">
<xsl:value-of select="melding/plaats/regio/district/locatie/omschrijving"/>
</xsl:element>
<xsl:element name="Customer_Site_Street">
<xsl:value-of select="melding/plaats/regio/district/locatie/adres"/>
</xsl:element>
<xsl:element name="Customer_Site_Postal_Code">
<xsl:value-of select="melding/plaats/regio/district/locatie/postcode"/>
</xsl:element>
<xsl:element name="Customer_Site_City">
<xsl:value-of select="melding/plaats/regio/district/locatie/plaats"/>
</xsl:element>
<xsl:if test="count(melding/deel)&gt;0">
<xsl:element name="Customer_Installation_Code">
<xsl:for-each select="melding/deel">
<xsl:sort select="omschrijving"/>
<xsl:if test="position()=1">
<xsl:value-of select="omschrijving"/>
</xsl:if>
</xsl:for-each>
</xsl:element>
</xsl:if>
<xsl:element name="Customer_Installation_Description">
<xsl:value-of select="melding/plaats/plaatsaanduiding"/>
</xsl:element>
<xsl:element name="Customer_Call_Description">
<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="omschrijving"/>
</xsl:call-template>
</xsl:element>
<xsl:element name="Maas_Installation_Code">
<xsl:for-each select="melding/deel">
<xsl:sort select="omschrijving"/>
<xsl:if test="position()=1">
<xsl:value-of select="substring(omschrijving, 3, 30)"/>
</xsl:if>
</xsl:for-each>
</xsl:element>
</xsl:element>
</xsl:element>
</xsl:element>
</xsl:template>
<xsl:template match="facilitor">
<xsl:apply-templates select="opdracht"/>
</xsl:template>
<xsl:template match="/">
<xsl:choose>
<xsl:when test="$mode='getExtension'">
<xsl:element name='format'>
<xsl:element name='extension'>xml</xsl:element>
</xsl:element>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="facilitor"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet><!-- Stylus Studio meta-information - (c) 2004-2006. Progress Software Corporation. All rights reserved.
<metaInformation>
<scenarios ><scenario default="yes" name="Scenario1" userelativepaths="yes" externalpreview="no" url="file:///a:/Facilitor/AAFM_A/TEMP/AAESopdracht247.xml" htmlbaseurl="" outputurl="" processortype="internal" useresolver="yes" profilemode="0" profiledepth="" profilelength="" urlprofilexml="" commandline="" additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" validateoutput="no" validator="internal" customvalidator=""/></scenarios><MapperMetaTag><MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="" destSchemaRoot="" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no"/><MapperBlockPosition></MapperBlockPosition><TemplateContext></TemplateContext><MapperFilter side="source"></MapperFilter></MapperMetaTag>
</metaInformation>
-->

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:import href="./cust.xsl"/>
<xsl:import href="../../aaxx/xsl/opdracht.xsl"/>
<xsl:import href="./cust_settings.xsl"/>
<xsl:variable name="Rev">
<!-- Revision van deze cust.xsl -->
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
</xsl:variable>
<xsl:template match="opdracht" mode="full">
<xsl:apply-templates select="." mode="default_opdracht"/>
</xsl:template>
</xsl:stylesheet>

View File

@@ -621,6 +621,7 @@
<xsl:variable name="l_visitekaartje_key">10501</xsl:variable>
<xsl:variable name="l_visitekaartje_vve_key">10502</xsl:variable>
<xsl:variable name="l_visitekaartje_ssc_key">10503</xsl:variable>
<xsl:variable name="l_visitekaartje_ont">16881</xsl:variable>
<html xmlns:msxml="urn:schemas-microsoft-com:xslt">
<xsl:comment>================================ VISITEKAARTJES ==============================</xsl:comment>
<head>
@@ -675,6 +676,9 @@
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ssc_key">
<xsl:attribute name="src">../../cust/<xsl:value-of select="//header/custId"/>/images/alli_visitekaart_ssc.jpg</xsl:attribute>
</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ont">
<xsl:attribute name="src">../../cust/<xsl:value-of select="//header/custId"/>/images/alli_visitekaart_ont.jpg</xsl:attribute>
</xsl:when>
</xsl:choose>
</xsl:element>
</td>
@@ -726,6 +730,7 @@
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_key"><td width="45%" style="text-align:left;color:#009AC3"><i><xsl:value-of select="kenmerk[@naam='Bedrijfsonderdeel']"/></i></td></xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_vve_key"><td width="45%" style="text-align:left;color:#009AC3"><i><xsl:value-of select="kenmerk[@naam='VvE vestiging']"/></i></td></xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ssc_key"><td width="45%" style="text-align:left;color:#009AC3"><i><xsl:value-of select="kenmerk[@naam='Bedrijfsonderdeel']"/></i></td></xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ont"><td width="45%" style="text-align:left;color:#009AC3"><i><xsl:value-of select="kenmerk[@naam='Ontwikkeling']"/></i></td></xsl:when>
</xsl:choose>
</tr>
@@ -761,6 +766,7 @@
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_key">Postbus 105</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_vve_key">Postbus 1178</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ssc_key">Postbus 105</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ont">Postbus 2119</xsl:when>
</xsl:choose>
</td>
</tr>
@@ -772,6 +778,7 @@
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_key">1200&#xA0;AC&#xA0;&#xA0;Hilversum</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_vve_key">1200&#xA0;BD&#xA0;&#xA0;Hilversum</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ssc_key">1200&#xA0;AC&#xA0;&#xA0;Hilversum</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ont">1200&#xA0;CC&#xA0;&#xA0;Hilversum</xsl:when>
</xsl:choose>
</td>
</tr>
@@ -783,6 +790,7 @@
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_key">de-alliantie.nl</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_vve_key">dealliantievvediensten.nl</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ssc_key">de-alliantie.nl</xsl:when>
<xsl:when test="./ItemOut/ItemID/SupplierPartID=$l_visitekaartje_ont">de-alliantieontwikkeling.nl</xsl:when>
</xsl:choose>
</td>
</tr>

BIN
CUST/CWTD/banner.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -4,26 +4,9 @@
*/
#headerblok
{
background: url(fac_head.gif) no-repeat;
background: url(banner.png) no-repeat;
background-color: #FFFFFF;
background-position: 0px 0px;
color: #000002;
}
/* Portal */
#portalmenu h2
{
color: #00adad;
}
#portalmenu span.menukop {
color: #00adad;
}
#portalmenu li.mi {
color: #000;
}
#portalmenu li.more {
color: #ef1821;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -979,6 +979,14 @@
</xsl:if>
<xsl:choose>
<xsl:when test="$srtnotificatiecode = 'MLDMAI' or $mode!='email'">
<tr>
<td colspan="4" class="tekst" style="padding-top:15px">
<xsl:element name="a">
<xsl:attribute name="href">
https://<xsl:value-of select="$FacilitorRoot"/>/cust/hsle/saml/?<xsl:value-of select="../bookmarks/melding"/><xsl:value-of select="key"/>
</xsl:attribute>Klik hier om te reageren</xsl:element>
</td>
</tr>
<tr>
<td colspan="4" class="caption" style="padding-top:20px;padding-bottom:10px">
<b>Bevestiging Evenement</b>
@@ -1083,14 +1091,6 @@
</td>
</tr>
<tr>
<td colspan="4" class="tekst" style="padding-top:15px">
Klik <xsl:element name="a">
<xsl:attribute name="href">
https://<xsl:value-of select="$FacilitorRoot"/>/cust/hsle/saml/?<xsl:value-of select="../bookmarks/melding"/><xsl:value-of select="key"/>
</xsl:attribute>klik hier om te reageren</xsl:element>
</td>
</tr>
<!-- START Bestellingen op hoofdnivo: dus op de paraplu-melding "aanvraag evenement" waar alles onder valt -->
<xsl:if test="bestelling">
@@ -1654,8 +1654,26 @@
</td>
</tr>
<tr>
<td colspan="5" style="height:20"/>
<td colspan="5" style="height:10px"/>
</tr>
<xsl:if test="bestelling/bestel_opm">
<tr>
<td style="vertical-align:top" colspan="5">
<b>Opmerking bestelaanvraag:</b>
</td>
</tr>
<tr>
<td colspan="3
5">
<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="bestelling/bestel_opm"/>
</xsl:call-template>
</td>
</tr>
<tr>
<td colspan="5" style="height:10px"/>
</tr>
</xsl:if>
<tr>
<td colspan="2">
<b><xsl:value-of select="//lcl/BES/afleveradres"/>:</b>
@@ -2391,6 +2409,13 @@
<td class="label">:</td>
<td class="value" colspan="2"><xsl:value-of select="persoon/afdeling/omschrijving"/></td>
</tr>
<xsl:if test="kenmerk[@key=382] != ''">
<tr>
<td class="label">Bijzonderheden</td>
<td class="label">:</td>
<td class="value" colspan="2"><xsl:value-of select="kenmerk[@key=382]"/></td>
</tr>
</xsl:if>
<tr height="30px">
<td colspan="4">
@@ -2411,6 +2436,7 @@
</tr>
<xsl:choose>
<xsl:when test="$v_type_overeenkomst = 'Parkeerpas'">
<tr>
@@ -2503,7 +2529,7 @@
</tr>
<tr>
<td class="label" colspan="4">Ondergetekende heeft kennisgenomen van de bruikleenregeling, die is terug te vinden op de intranetpagina van Hogeschool Leiden.</td>
<td class="label" colspan="4">Ondergetekende heeft kennisgenomen van de bruikleenregeling, die is terug te vinden op mijn.hsleiden.nl.</td>
</tr>
<tr height="20px">
@@ -2553,7 +2579,7 @@
</tr>
<tr>
<td class="label" colspan="4">De laatste versie van deze Bruikleenregeling is te vinden op intranetpagina van Hogeschool Leiden of wordt desgevraagd door de Servicedesk uitgereikt.</td>
<td class="label" colspan="4">De laatste versie van deze Bruikleenregeling is te vinden op mijn.hsleiden.nl of wordt desgevraagd door de Servicedesk uitgereikt.</td>
</tr>
<!--

View File

@@ -796,6 +796,12 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<td/>
<td><b>Handtekening installatie/ruimte<br/>beheerder*:<br/>&#160;</b></td>
<td/>
</tr>
<tr>
<td><b>Handtekening<br/>Uitvoerende<br/>Na afronding<br/>werkzaamheden:<br/>&#160;</b></td>
<td/>
<td><b>Handtekening installatie/ruimte<br/>beheerder*<br/>Na afronding<br/>werkzaamheden:<br/>&#160;</b></td>
<td/>
</tr>
<tr><td colspan="4" style="font-style:italic;">*vrijgave installatie vóór aanvang van werkzaamheden</td></tr>
</table>

View File

@@ -19,6 +19,210 @@
</xsl:choose>
</xsl:template>
<xsl:template match="reservering" mode="include">
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR>
<TD WIDTH="40" ROWSPAN="30" ID="LINKERMARGE"/>
<TD>
<xsl:choose>
<xsl:when test="$srtnotificatiecode='RESDEL' and verwijder">
<table>
<tr>
<td height="20"/>
</tr>
<tr>
<td class="caption" style="color: red"><xsl:value-of select="//lcl/RES/annulering"/></td>
</tr>
</table>
</xsl:when>
</xsl:choose>
<!-- Bevestiging reservering -->
<!-- Ook tonen voor verwijderde reserveringen -->
<!-- De algemene gegevens van de deelreservering met het laagste volgnummer worden gebruikt als referentie gegevens! -->
<xsl:variable name="min_volgnr">
<xsl:value-of select="//reservering/rsv_ruimte/volgnr[not(. &gt; //reservering/rsv_ruimte/volgnr)]"/>
</xsl:variable>
<table border="0" bordercolor="#000000" width="100%">
<tr>
<td class="caption" valign="top" colspan="4">
<xsl:choose>
<xsl:when test="@content='complete'"><xsl:value-of select="//lcl/RES/reservering"/>&#xA0;<xsl:value-of select="key"/></xsl:when>
<xsl:otherwise><xsl:value-of select="//lcl/RES/deelreservering"/>&#xA0;<xsl:value-of select="key"/> /<xsl:value-of select="$min_volgnr"/></xsl:otherwise>
</xsl:choose>
<xsl:if test="string(rsv_ruimte[volgnr=$min_volgnr]/omschrijving)!=''">&#xA0;-&#xA0;<xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/omschrijving"/></xsl:if>&#xA0;</td>
</tr>
<tr>
<td class="tekstkop" colspan="4" style="text-decoration:underline">Contactgegevens:</td>
</tr>
<tr>
<td width="13%" class="label"><xsl:value-of select="//lcl/FAC/aanvrager"/></td>
<td width="37%" class="value">: <xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/naam_full"/></td>
<td width="13%" class="label"><xsl:value-of select="//lcl/FAC/afdeling"/></td>
<td width="37%" class="value">: <xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/afdeling/omschrijving"/></td>
</tr>
<tr>
<td width="13%" class="label"><xsl:value-of select="//lcl/FAC/telefoon"/></td>
<td width="37%" class="value">: <xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/telefoonnr"/></td>
<xsl:if test="string(rsv_ruimte[volgnr=$min_volgnr]/contact_user/werkplek/plaats/regio/district/locatie/omschrijving)!=''">
<td width="13%" class="label"><xsl:value-of select="//lcl/FAC/locatie"/></td>
<td width="37%" class="value">: <xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/werkplek/plaats/regio/district/locatie/omschrijving"/></td>
</xsl:if>
</tr>
<tr>
<td width="15%" class="label"><xsl:value-of select="//lcl/FAC/e-mail"/></td>
<td colspan="3" class="value">: <xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/email"/></td>
</tr>
<xsl:if test="$srtnotificatiecode='RESDEL'">
<tr>
<td width="20%" class="label"><xsl:value-of select="//lcl/RES/begintijd"/></td>
<td width="80%" colspan="3" class="value">: <xsl:value-of select="rsv_ruimte/van/datum"/>&#xA0;<xsl:value-of select="rsv_ruimte/van/tijd"/></td>
</tr>
</xsl:if>
<tr>
<td height="25px"/>
</tr>
<xsl:if test="rsv_ruimte[volgnr=$min_volgnr]/contact_user/key!=ingevoerd_user/key">
<tr>
<td width="20%" class="label"><xsl:value-of select="//lcl/RES/behandeld_door"/></td>
<td width="80%" class="value">: <xsl:value-of select="ingevoerd_user/naam_full"/></td>
</tr>
<tr>
<td height="30px"/>
</tr>
</xsl:if>
<tr>
<td colspan="2" class="tekst">
<xsl:choose>
<xsl:when test="$srtnotificatiecode='RESNEW'"/>
<xsl:when test="$srtnotificatiecode='RESDEL'"><xsl:value-of select="//lcl/RES/reservering_vervallen"/></xsl:when>
<xsl:otherwise>
<xsl:call-template name="res_begintext"/>
</xsl:otherwise>
</xsl:choose>
</td>
</tr>
<xsl:choose>
<xsl:when test="$srtnotificatiecode!='RESDEL'">
<tr>
<td height="10px"/>
</tr>
<tr>
<td colspan="4">
<table cellpadding="1" border="0" WIDTH="99%" bordercolor="#000000" frame="box">
<!-- rsv_ruimte -->
<xsl:for-each select="rsv_ruimte">
<xsl:sort select="van/timestamp"/>
<xsl:call-template name="rsv_ruimte">
<xsl:with-param name="min_volgnr" select="$min_volgnr"/>
</xsl:call-template>
</xsl:for-each>
<!-- totaal reservering -->
<xsl:if test="@content='complete'">
<tr>
<td colspan="9" height="15px" style="border-bottom:1px solid #000;"/>
</tr>
<tr>
<td class="tekstkop" align="right" colspan="5" style="border-width:0px;"><xsl:value-of select="//lcl/RES/totaalprijs_reservering"/>:</td>
<td class="tekstkop" colspan="2" style="text-align:right;border-width:0px;">
<xsl:call-template name="europrijs">
<xsl:with-param name="prijs" select="sum(rsv_ruimte/prijs[string(number(.))!='NaN'])+sum(rsv_ruimte/rsv_deel/prijs[string(number(.))!='NaN'])+sum(rsv_ruimte/rsv_artikel/prijs[string(number(.))!='NaN'])"/>
</xsl:call-template>
</td>
</tr>
</xsl:if>
</table>
</td>
</tr>
<tr>
<td height="10px"/>
</tr>
<!--key 42 = gebouw Dienstencentrum (DC) key 54 = gebouw Centraal Bureau (CB)-->
<xsl:if test="rsv_ruimte/res_ruimte/plaats/regio/district/locatie/gebouw/key='54' or rsv_ruimte/res_ruimte/plaats/regio/district/locatie/gebouw/key='42' ">
<tr>
<td class="tekst" width="100%">
<table width="100%">
<strong>Gedragsregels gebruik Kantoor/Spreekkamers en Vergaderruimten Centraal Bureau (CB) en Dienstencentrum (DC):</strong>
<p>
<b>Receptiefunctie Dienstencentrum</b>
<ul>
<li>Er is voorlopig geen receptiefunctie aanwezig.</li>
<li>Hiervoor is een <U>belsysteem ingericht dat je kunt gebruiken als je een afspraak hebt met een gebruiker van het pand.</U> Dit betreft de volgende afdelingen: Servicedesk, Frontoffice ICT, F&amp;C, Zorgadvies en Inkoop. Gebruikers zorgen ervoor tijdig beneden bij de ontvangst te staan om gasten te ontvangen. Ook wanneer er sollicitanten komen, zorgt de organisator zelf voor een gastvrije ontvangst.</li>
<li>Wanneer je <U>GEEN afspraak hebt met een interne gebruiker</U>, bijv. omdat je een vergaderruimte hebt gereserveerd, geldt het volgende:</li>
<ul>
<li>Degene die de vergaderruimte reserveert, is verantwoordelijk voor het opvangen van de gasten. Deze persoon zorgt er dan ook voor tijdig aanwezig te zijn. Om binnen te komen kun je de bel van de Servicedesk gebruiken. Zij laten je dan ongezien binnen door middel van een automatische deurknop. <U>Vervolgens zorg jij zelf dat de andere genodigden worden opgevangen.</U></li>
<li>Bij het reserveren van een ruimte ontvang je een bevestigingsmail. In deze bevestiging zijn deze gedragsregels toegevoegd. Jij bent verantwoordelijk <U>om deze gedragsregels door te sturen of mede te delen aan de genodigden.</U></li>
</ul>
<li>Vergaderruimtes kunnen na 18.00 uur niet worden gereserveerd in RegelDirect, tenzij je dit laat doen door Receptie.</li>
<ul>
<li>De eindverantwoordelijke kan dan de sleutel en de tag om het alarm te installeren, afhalen bij de Receptie van het gebouw tegenover het DC (oude MEE gebouw), Baroniehof 169A bij de Receptie. Wanneer Receptie Baroniehof 169A niet bezet is, dan kun je de sleutel afhalen bij Receptie van het Centraal Bureau op Baroniehof 165. De eindverantwoordelijke sluit het pand af, zet het alarm erop, sluit de poort en zorgt ervoor dat de sleutel de volgende dag weer terug is bij Receptie;</li>
</ul>
</ul>
</p>
<p>
<b>Achterlaten vergaderruimte/kantoorruimte</b>
<ul>
<li>Ramen en deuren zijn dicht;</li>
<li>Lampen en aircos uit;</li>
<li>Bij gebruik van een digiboard, alles afsluiten en terugleggen/hangen;</li>
<li>Afwas naar keuken en in de vaatwasser zetten;</li>
<li>Tafels en stoelen terugzetten op de oorspronkelijke plaats;</li>
<li>Er hangen fotos in de ruimtes hoe de opstelling moet worden teruggezet</li>
<li>Degene die de vergadering heeft belegd, is hiervoor eindverantwoordelijk;</li>
<li>Computers zijn vergrendeld bij het verlaten van de kamer;</li>
<li>Tafels zijn leeg en computers zijn uit bij het verlaten van de kamer aan het einde van je werkdag;</li>
</ul>
</p>
<p>
<b>Achterlaten keuken</b>
<ul>
<li>Vaatwasser aanzetten wanneer deze vol is en leegruimen wanneer deze schoon is. Wanneer conciërge Amine komt is dit meegenomen, maar dat is niet vanzelfsprekend;</li>
<li>Koffieautomaat vullen wanneer deze leeg is;</li>
<li>Instructies op het apparaat uitvoeren wanneer dat wordt gevraagd;</li>
<li>Ook nieuwe voorraad klaarleggen in koelkast.</li>
<ul>
<li>de keukenvoorraad wordt door Amine/Christine wekelijks bijgehouden en geïnventariseerd; indien nodig wordt koffie etc. besteld.</li></ul>
</ul>
</p>
<p>
<b>Afsluiten pand DC voor gebruikers</b>
<ul>
<li>De Interieur Verzorg(st)er van Variant sluit het pand en de poort om 20.00 uur, zet het alarm erop en ziet erop toe dat iedereen het pand heeft verlaten, tenzij van te voren een verzoek is gedaan bij Receptie CB om het pand langer open te houden, bijvoorbeeld i.v.m. een vergadering of bijeenkomst;</li>
</ul>
</p>
<p>
<b>Algemene regels</b>
<ul>
<li>In de ondertekening van je mail staat het juiste bezoekadres t.w. DC, CB of Rakthof;</li>
<li>Geef de Receptie inzage in je agenda en gebruik je agenda niet alleen voor je afspraken maar noteer ook als je thuiswerkt, afwezig bent, verlof hebt etc. Zo kunnen zij bellers adequaat en efficiënt te woord staan.</li>
<li>Geef aan de Receptie door wie jou vervangt bij afwezigheid/ziekte.</li>
</ul>
</p>
</table>
</td>
</tr>
</xsl:if>
<xsl:call-template name="res_endtext">
<xsl:with-param name="min_volgnr" select="$min_volgnr"/>
</xsl:call-template>
</xsl:when>
</xsl:choose>
</table>
<!-- Bevestiging reservering -->
</TD>
<TD WIDTH="30" ROWSPAN="30" ID="RECHTERMARGE"/>
</TR>
</TABLE>
</xsl:template>
<xsl:template match="opdracht" mode="include_overig">
<table border="0" width="100%" cellpadding="2">

0
CUST/TWYN/Export/.gitignore vendored Normal file
View File

0
CUST/TWYN/Import/.gitignore vendored Normal file
View File

View File

@@ -0,0 +1,4 @@
@echo off
REM Moet gescheduled worden (normaliter 1 keer per uur) om door de applicatiebeheerder
REM ingeregelde notificaties te genereren.
cscript ..\..\..\utils\gen_notify\gen_notify.js ../oracle.udl TWGU

View File

@@ -0,0 +1,4 @@
@echo off
REM Moet gescheduled worden (normaliter 1 keer per dag) om door de applicatiebeheerder
REM ingeregelde jobs (aanmaak van periodieke opdrachten) uit te voeren.
cscript ..\..\..\utils\gen_scheduler\gen_scheduler.js ../oracle.udl

View File

@@ -0,0 +1 @@
call ..\..\..\utils\putOrders\putOrders.bat

BIN
CUST/TWYN/banner.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

4
CUST/TWYN/cust.css Normal file
View File

@@ -0,0 +1,4 @@
/*
* $Revision$
* $Id$
*/

BIN
CUST/TWYN/tmpl_logo.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

568
CUST/TWYN/xsl/cust.xsl Normal file
View File

@@ -0,0 +1,568 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxml="urn:schemas-microsoft-com:xslt" version="1.0">
<xsl:import href="../../../appl/shared/default.xsl"/>
<xsl:variable name="Rev">
<!-- Revision van deze cust.xsl -->
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
</xsl:variable>
<xsl:output method="html" encoding="windows-1252" indent="yes"/>
<xsl:decimal-format name="euro" decimal-separator="," NaN='-' grouping-separator="."/>
<xsl:key name="GROUPBY_BGT_KOSTENRUBRIEK_CODE" match="//data_row" use="BGT_KOSTENRUBRIEK_CODE"/>
<xsl:key name="GROUPBY_PRS_KOSTENSOORTGRP_ALTCODE" match="//data_row" use="PRS_KOSTENSOORTGRP_ALTCODE"/>
<xsl:key name="GROUPBY_PRS_LEVERANCIER_NR" match="//data_row" use="PRS_LEVERANCIER_NR"/>
<xsl:key name="GROUPBY_ONDERDEELCODE" match="//data_row" use="ONDERDEELCODE"/>
<xsl:key name="GROUPBY_CONTRACT" match="//data_row" use="MLD_OPDR_ORDERNR"/>
<xsl:template name="stylesheet">
<style>
body {
font-size: 0.75em;
line-height: 1.8em;
text-align: left;
margin: 0;
padding:0;
}
table { /* om border om lege cellen te houden */
border-collapse: collapse;
}
th {
background-color: #fff;
}
.raptitel {
font-size: 24px;
font-weight: bold;
padding: 40px 0 40px 0;
}
.th3 {
padding: 12px;
border-top: 1px solid #333;
border-bottom: 1px solid #333;
}
h1 {font-size: 17px;
}
h3 {font-size: 15px;
color: #500;
}
h3 {font-size: 12px;
color: #500;
}
h4 {font-size: 12px;
font-weight: normal;
color: #500;
}
td {
background-color: #FFFFFF;
}
.footer td {
font-style: italic;
}
.tdtr, .tdtr h3{ /* right */
text-align: right !important;
}
.tdtd { /* date */
white-space: nowrap;
}
.tdte { /* ellipsis */
white-space: nowrap;
width: 140px;
overflow: hidden;
text-overflow: ellipsis; }
.tbhs {
line-height: 0.8em;
border: 0px;
}
.tdhs {
font-family: Calibri,Verdana;
font-style: normal;
font-size: 1em;
font-weight: normal;
color: #000000;
background-color: #FFFFFF;
overflow: hidden;
line-height: 1.1em;
height: 12px;
padding: 1px;
}
.alignleft {
float: left;
}
.alignright {
float: right;
}
.subt {
font-size: .8em;
color: #999;
font-style: italic;
}
.subtot td {
padding-top: 0;
line-height: 8px;
}
.subtoth {
border-top: 1px solid #ddd;
}
.subtotf {
}
@media print {
thead {display: table-header-group;}
}
</style>
</xsl:template>
<!-- =======================================================
page_select_header
=======================================================
-->
<xsl:template name="page_select_header">
<xsl:param name="titel"/>
<xsl:param name="aantal_kolommen"/>
<xsl:variable name="afdrukdatum">
<xsl:value-of select="substring(//header/dateTime, 1, 10)"/>
</xsl:variable>
<tr>
<th>
<xsl:attribute name="colspan"><xsl:value-of select="$aantal_kolommen"/></xsl:attribute>
<table class="tbhs" width="100%" cellspacing="0" cellpadding="0">
<xsl:variable name="opdrachtgever">
<xsl:if test="substring-after(//rapport/where, 'bgt_disc_params_opdrachtgever') != ''">
<xsl:value-of select="rapport_data/data_row//BGT_DISC_PARAMS_OPDRACHTGEVER"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="projectcode">
<xsl:if test="substring-after(//rapport/where, 'bgt_disc_params_opdrachtgever') != ''">
<xsl:value-of select="rapport_data/data_row//BGT_DISC_PARAMS_CODE"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="projectnaam">
<xsl:if test="substring-after(//rapport/where, 'ins_discipline_omschrijving') != ''">
<xsl:value-of select="rapport_data/data_row//INS_DISCIPLINE_OMSCHRIJVING"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="deelproject">
<xsl:if test="substring-after(//rapport/where, 'bgt_project_omschrijving') != ''">
<xsl:value-of select="rapport_data/data_row//BGT_PROJECT_OMSCHRIJVING"/>
</xsl:if>
</xsl:variable>
<tr>
<td class="tdhs" style="width:15%;"><div class="alignleft">Opdrachtgever</div><div class="alignright">:</div></td>
<td class="tdhs" style="width:55%;"><xsl:value-of select="$opdrachtgever"/></td>
<td class="tdhs" style="width:15%;"><div class="alignleft">Projectcode</div><div class="alignright">:</div></td>
<td class="tdhs" style="width:15%;"><xsl:value-of select="$projectcode"/></td>
</tr>
<tr>
<td class="tdhs" style="width:15%;"><div class="alignleft">Project</div><div class="alignright">:</div></td>
<td class="tdhs" style="width:55%;"><xsl:value-of select="$projectnaam"/></td>
<td class="tdhs" style="width:15%;"><div class="alignleft">Afdrukdatum</div><div class="alignright">:</div></td>
<td class="tdhs" style="width:15%;"><xsl:value-of select="$afdrukdatum"/></td>
</tr>
<tr>
<td class="tdhs" style="width:15%;"><div class="alignleft">Deelproject</div><div class="alignright">:</div></td>
<td class="tdhs" style="width:55%;"><xsl:value-of select="$deelproject"/></td>
<td class="tdhs" style="width:15%;">&#xA0;</td>
<td class="tdhs" style="width:15%;">&#xA0;</td>
</tr>
</table>
</th>
</tr>
<tr>
<td class='raptitel'>
<xsl:attribute name="colspan"><xsl:value-of select="$aantal_kolommen"/></xsl:attribute>
<xsl:value-of select="$titel"/>
</td>
</tr>
</xsl:template>
<xsl:param name="mode"/>
<xsl:template match="rapport">
<!-- <xsl:attribute name="onload">window.print();</xsl:attribute> -->
<xsl:call-template name="stylesheet"/>
<xsl:choose>
<xsl:when test="@title = 'CONT_ALF'">
<xsl:call-template name="contractanten_alfabetisch"/>
</xsl:when>
<xsl:when test="@title = 'CONT_RUB'">
<xsl:call-template name="contracten_per_rubriek"/>
</xsl:when>
<xsl:when test="@title = 'CON_FACT'">
<xsl:call-template name="contracten_en_facturen_per_contractant"/>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template name="selectie_param">
<xsl:param name="veld"/>
<xsl:variable name="veld_1">
<xsl:value-of select="substring-before(substring-after(//rapport/where, $veld), ' AND ')"/>
</xsl:variable>
<xsl:value-of select="substring-after($veld_1, 'LIKE')"/>
</xsl:template>
<!-- =======================================================
contractanten alfabetisch
=======================================================
-->
<xsl:template name="contractanten_alfabetisch">
<table width="100%" cellspacing="0" cellpadding="5" class="tab_cat_sched nofloat">
<thead>
<xsl:call-template name="page_select_header">
<xsl:with-param name="titel">Overzicht Contractanten op alfabetische volgorde</xsl:with-param>
<xsl:with-param name="aantal_kolommen">5</xsl:with-param>
</xsl:call-template>
<tr>
<th class="th3">Code</th>
<th class="th3">Naam</th>
<th class="th3">Adres</th>
<th class="th3">Postcode</th>
<th class="th3">Plaats</th>
</tr>
</thead>
<!-- TBODY start -->
<xsl:text disable-output-escaping="yes">&lt;tbody&gt;</xsl:text>
<tr>
<td style="background-color: #ffffff" height="10"></td>
</tr>
<xsl:for-each select="rapport_data/data_row/PRS_LEVERANCIER_NR[not(.=preceding::*)]">
<xsl:sort select="../PRS_LEVERANCIER_NR"/>
<xsl:variable name="bedr_code">
<xsl:value-of select="../PRS_LEVERANCIER_NR"/>
</xsl:variable>
<xsl:variable name="bedr_naam">
<xsl:value-of select="../PRS_BEDRIJF_NAAM"/>
</xsl:variable>
<xsl:variable name="bedr_adrs">
<xsl:value-of select="../PRS_BEDRIJF_POST_ADRES"/>
</xsl:variable>
<xsl:variable name="bedr_post">
<xsl:value-of select="../PRS_BEDRIJF_POST_POSTCODE"/>
</xsl:variable>
<xsl:variable name="bedr_plts">
<xsl:value-of select="../PRS_BEDRIJF_POST_PLAATS"/>
</xsl:variable>
<tr>
<td class="tdt1"><xsl:value-of select="$bedr_code"/>&#xA0;</td>
<td class="tdt"> <xsl:value-of select="$bedr_naam"/>&#xA0;</td>
<td class="tdt"> <xsl:value-of select="$bedr_adrs"/>&#xA0;</td>
<td class="tdt"> <xsl:value-of select="$bedr_post"/>&#xA0;</td>
<td class="tdt"> <xsl:value-of select="$bedr_plts"/>&#xA0;</td>
</tr>
</xsl:for-each>
<tr>
<td class="tdbl">&#xA0;</td>
<td colspan="13" class="tdb">&#xA0;</td>
<td class="tdbr">&#xA0;</td>
</tr>
<xsl:text disable-output-escaping="yes">&lt;/tbody&gt;</xsl:text>
<!-- TBODY einde -->
</table>
</xsl:template>
<!-- =======================================================
contractanten per rubriek
=======================================================
-->
<xsl:template name="contracten_per_rubriek">
<table width="100%" cellspacing="0" cellpadding="5" class="tab_cat_sched nofloat">
<thead>
<xsl:call-template name="page_select_header">
<xsl:with-param name="titel">Overzicht Contracten per rubriek</xsl:with-param>
<xsl:with-param name="aantal_kolommen">9</xsl:with-param>
</xsl:call-template>
<tr><td class="subt" colspan="9">(alle bedragen zijn in Euro en exclusief BTW)</td></tr>
<tr>
<th class="th3">Code</th>
<th class="th3">Bedrijf</th>
<th class="th3">Nr</th>
<th class="th3">Omschrijving</th>
<th class="th3">Kenmerk</th>
<th class="th3">Datum</th>
<th class="th3 tdtr">Gecontracteerd</th>
<th class="th3 tdtr">BTW</th>
<th class="th3 tdtr">Facturen</th>
</tr>
</thead>
<!-- TBODY start -->
<xsl:text disable-output-escaping="yes">&lt;tbody&gt;</xsl:text>
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_BGT_KOSTENRUBRIEK_CODE',BGT_KOSTENRUBRIEK_CODE)[1])]">
<xsl:sort select="BGT_KOSTENRUBRIEK_CODE"/>
<tr>
<td class="tdt" colspan='9'><h3><xsl:value-of select="BGT_KOSTENRUBRIEK_OMS"/></h3></td>
</tr>
<xsl:call-template name="DISPLAY_KOSTENSOORTGROEP">
<xsl:with-param name="p_bgt_kostenrubriek_code" select="BGT_KOSTENRUBRIEK_CODE"/>
</xsl:call-template>
<xsl:variable name="v_bgt_kostenrubriek_code" select="BGT_KOSTENRUBRIEK_CODE"/>
<tr>
<td class="tdt" colspan='3'><h3><xsl:value-of select="BGT_KOSTENRUBRIEK_CODE"/></h3></td>
<td class="tdt" colspan='3'><h3>Totaal</h3></td>
<td class="tdtr"><h3> <xsl:value-of select="format-number(sum(//data_row[BGT_KOSTENRUBRIEK_CODE = $v_bgt_kostenrubriek_code]/KOSTEN), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3> <xsl:value-of select="format-number(sum(//data_row[BGT_KOSTENRUBRIEK_CODE = $v_bgt_kostenrubriek_code]/BTW), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3> <xsl:value-of select="format-number(sum(//data_row[BGT_KOSTENRUBRIEK_CODE = $v_bgt_kostenrubriek_code]/FACTUREN), '#.##0,00', 'euro')"/></h3></td>
</tr>
</xsl:for-each>
<tr>
<td class="th3" colspan='3'><h3><xsl:value-of select="BGT_KOSTENRUBRIEK_CODE"/></h3></td>
<td class="th3" colspan='3'><h3>TOTAAL</h3></td>
<td class="th3 tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/KOSTEN), '#.##0,00', 'euro')"/></h3></td>
<td class="th3 tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/BTW), '#.##0,00', 'euro')"/></h3></td>
<td class="th3 tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/FACTUREN), '#.##0,00', 'euro')"/></h3></td>
</tr>
<xsl:text disable-output-escaping="yes">&lt;/tbody&gt;</xsl:text>
<!-- TBODY einde -->
</table>
</xsl:template>
<xsl:template name="DISPLAY_KOSTENSOORTGROEP">
<xsl:param name="p_bgt_kostenrubriek_code"/>
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_PRS_KOSTENSOORTGRP_ALTCODE',PRS_KOSTENSOORTGRP_ALTCODE)[1]) and BGT_KOSTENRUBRIEK_CODE = $p_bgt_kostenrubriek_code]">
<xsl:sort select="PRS_KOSTENSOORTGRP_ALTCODE"/>
<tr class="header">
<td class="tdt" colspan='9'><h3><xsl:value-of select="PRS_KOSTENSOORTGRP_OMS"/></h3></td>
</tr>
<xsl:call-template name="DISPLAY_KOSTENSOORT">
<xsl:with-param name="p_bgt_kostenrubriek_code" select="$p_bgt_kostenrubriek_code"/>
<xsl:with-param name="p_prs_kostensoortgrp_altcode" select="PRS_KOSTENSOORTGRP_ALTCODE"/>
</xsl:call-template>
<xsl:variable name="v_prs_kostensoortgrp_altcode" select="PRS_KOSTENSOORTGRP_ALTCODE"/>
<tr class="footer">
<td class="tdt" colspan='3'><h3><xsl:value-of select="PRS_KOSTENSOORTGRP_ALTCODE"/></h3></td>
<td class="tdt" colspan='3'><h3>Subtotaal</h3></td>
<td class="tdtr"><h3> <xsl:value-of select="format-number(sum(//data_row[PRS_KOSTENSOORTGRP_ALTCODE = $v_prs_kostensoortgrp_altcode]/KOSTEN), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3> <xsl:value-of select="format-number(sum(//data_row[PRS_KOSTENSOORTGRP_ALTCODE = $v_prs_kostensoortgrp_altcode]/BTW), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3> <xsl:value-of select="format-number(sum(//data_row[PRS_KOSTENSOORTGRP_ALTCODE = $v_prs_kostensoortgrp_altcode]/FACTUREN), '#.##0,00', 'euro')"/></h3></td>
</tr>
</xsl:for-each>
</xsl:template>
<xsl:template name="DISPLAY_KOSTENSOORT">
<xsl:param name="p_bgt_kostenrubriek_code"/>
<xsl:param name="p_prs_kostensoortgrp_altcode"/>
<xsl:for-each select="//data_row[BGT_KOSTENRUBRIEK_CODE = $p_bgt_kostenrubriek_code and PRS_KOSTENSOORTGRP_ALTCODE = $p_prs_kostensoortgrp_altcode]">
<xsl:sort select="PRS_KOSTENSOORT_ALTCODE"/>
<tr>
<td class="tdt1"><xsl:value-of select="PRS_KOSTENSOORT_ALTCODE"/></td>
<td class="tdt"><xsl:value-of select="PRS_LEVERANCIER_NR"/></td>
<td class="tdt"><xsl:value-of select="MLD_OPDR_ORDERNR"/></td>
<td class="tdt tdte"><xsl:value-of select="PRS_KOSTENSOORT_OMS"/></td>
<td class="tdt"><xsl:value-of select="KENMERK"/></td>
<td class="tdtd"><xsl:value-of select="PRINTDATUM"/></td>
<td class="tdtr"><xsl:value-of select="format-number(KOSTEN, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(BTW, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FACTUREN, '#.##0,00', 'euro')"/></td>
</tr>
</xsl:for-each>
</xsl:template>
<!-- =======================================================
contracten en facturen per contractant
=======================================================
Kent 5 afggregatie niveaus (subtotalen)
0. alles (opdrachten en facturen) van alle contractanten
1. alle contractanten
2. alle onderdelen (met opdrachten en facturen) van een contractant
3. alle contracten (=opdrachten) van een onderdeel (van een contractant)
4. alle facturen van een contract van een onderdeel (van een contractant)
TODO:
- de getallen van de ?? bepalen
- beperken tot het gekozen subproject
-->
<xsl:template name="contracten_en_facturen_per_contractant">
<table width="100%" cellspacing="0" cellpadding="5" class="tab_cat_sched nofloat">
<thead>
<xsl:call-template name="page_select_header">
<xsl:with-param name="titel">Overzicht contracten en facturen per contractant</xsl:with-param>
<xsl:with-param name="aantal_kolommen">9</xsl:with-param>
</xsl:call-template>
<tr><td class="subt" colspan="9">(alle bedragen zijn in Euro)</td></tr>
<tr>
<th class="th3">Code</th>
<th class="th3">Datum</th>
<th class="th3">Nr</th>
<th class="th3">Omschrijving</th>
<th class="th3">Kenmerk</th>
<th class="th3 tdtr">Bedrag excl. BTW</th>
<th class="th3 tdtr">BTW</th>
<th class="th3 tdtr">Bedrag incl. BTW</th>
<th class="th3 tdtr">Adviesdatum</th>
</tr>
</thead>
<!-- TBODY start -->
<xsl:text disable-output-escaping="yes">&lt;tbody&gt;</xsl:text>
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_PRS_LEVERANCIER_NR',PRS_LEVERANCIER_NR)[1])]">
<xsl:sort select="PRS_LEVERANCIER_NR"/>
<tr>
<td class="tdt" colspan='3'><h3><xsl:value-of select="PRS_LEVERANCIER_NR"/></h3></td>
<td class="tdt" colspan='6'><h3><xsl:value-of select="PRS_BEDRIJF_NAAM"/></h3></td>
</tr>
<xsl:call-template name="DISPLAY_ONDERDELEN">
<xsl:with-param name="p_prs_leverancier_nr" select="PRS_LEVERANCIER_NR"/>
</xsl:call-template>
<xsl:variable name="v_prs_leverancier_nr" select="PRS_LEVERANCIER_NR"/>
<tr class="subt subtoth">
<td class="tdt" colspan='3'><h3><xsl:value-of select="PRS_LEVERANCIER_NR"/></h3></td>
<td class="tdt" colspan='2'><h3>gecontracteerd<br/>gefactureerd<br/>nog te factureren</h3></td>
<td class="tdtr"><h3>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/MLD_OPDR_KOSTEN), '#.##0,00', 'euro')"/><br/>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/><br/>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/MLD_OPDR_KOSTEN)-sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/>
</h3></td>
<td class="tdtr"><h3>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/MLD_OPDR_KOSTEN_BTW), '#.##0,00', 'euro')"/><br/>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/><br/>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/MLD_OPDR_KOSTEN_BTW)-sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/><br/>
</h3></td>
<td class="tdtr"><h3>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/MLD_OPDR_KOSTEN)+sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/MLD_OPDR_KOSTEN_BTW), '#.##0,00', 'euro')"/><br/>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/FIN_FACTUUR_TOTAAL)+sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/><br/>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/MLD_OPDR_KOSTEN)+sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/MLD_OPDR_KOSTEN_BTW)-sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/FIN_FACTUUR_TOTAAL)-sum(//data_row[PRS_LEVERANCIER_NR = $v_prs_leverancier_nr]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/>
</h3></td>
</tr>
</xsl:for-each>
<tr class="subt">
<td class="th3" colspan='3'><h3>TOTAAL</h3></td>
<td class="th3" colspan='2'><h3>gecontracteerd<br/>gefactureerd<br/>nog te factureren</h3></td>
<td class="th3 tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/MLD_OPDR_KOSTEN), '#.##0,00', 'euro')"/><br/><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/><br/><xsl:value-of select="format-number(sum(//data_row/MLD_OPDR_KOSTEN)-sum(//data_row/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/></h3></td>
<td class="th3 tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/MLD_OPDR_KOSTEN_BTW), '#.##0,00', 'euro')"/><br/><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/><br/><xsl:value-of select="format-number(sum(//data_row/MLD_OPDR_KOSTEN_BTW)-sum(//data_row/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/></h3></td>
<td class="th3 tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/MLD_OPDR_KOSTEN)+sum(//data_row/MLD_OPDR_KOSTEN_BTW), '#.##0,00', 'euro')"/><br/><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_TOTAAL)+sum(//data_row/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/><br/><xsl:value-of select="format-number(sum(//data_row/MLD_OPDR_KOSTEN)+sum(//data_row/MLD_OPDR_KOSTEN_BTW)-sum(//data_row/FIN_FACTUUR_TOTAAL)-sum(//data_row/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/></h3></td>
<td class="th3"></td>
</tr>
<xsl:text disable-output-escaping="yes">&lt;/tbody&gt;</xsl:text>
<!-- TBODY einde -->
</table>
</xsl:template>
<xsl:template name="DISPLAY_ONDERDELEN">
<xsl:param name="p_prs_leverancier_nr"/>
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_ONDERDEELCODE',ONDERDEELCODE)[1]) and PRS_LEVERANCIER_NR = $p_prs_leverancier_nr]">
<xsl:sort select="ONDERDEELCODE"/>
<xsl:variable name="v_onderdeelcode" select="ONDERDEELCODE"/>
<tr class="header">
<td class="tdt" colspan="5"><h3><xsl:value-of select="ONDERDEEL"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/MLD_OPDR_KOSTEN), '#.##0,00', 'euro')"/><br/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/MLD_OPDR_KOSTEN_BTW), '#.##0,00', 'euro')"/><br/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/MLD_OPDR_KOSTEN)+sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/MLD_OPDR_KOSTEN_BTW), '#.##0,00', 'euro')"/><br/></h3></td>
</tr>
<xsl:call-template name="DISPLAY_CONTRACTEN">
<xsl:with-param name="p_prs_leverancier_nr" select="$p_prs_leverancier_nr"/>
<xsl:with-param name="p_onderdeelcode" select="$v_onderdeelcode"/>
</xsl:call-template>
<!-- <tr class="footer">
<td class="tdt" colspan='3'><h3><xsl:value-of select="$v_onderdeelcode"/></h3></td>
<td class="tdt" colspan='2'><h3>gefactureerd<br/>nog te factureren</h3></td>
<td class="tdtr"><h3>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/><br/>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/MLD_OPDR_KOSTEN)-sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/>
</h3></td>
<td class="tdtr"><h3>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/><br/>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/MLD_OPDR_KOSTEN_BTW)-sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/>
</h3></td>
<td class="tdtr"><h3>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/FIN_FACTUUR_TOTAAL)+sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/><br/>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/MLD_OPDR_KOSTEN)+sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/MLD_OPDR_KOSTEN_BTW)-sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/FIN_FACTUUR_TOTAAL)-sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $v_onderdeelcode]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/>
</h3></td>
</tr>
--> </xsl:for-each>
</xsl:template>
<xsl:template name="DISPLAY_CONTRACTEN">
<xsl:param name="p_prs_leverancier_nr"/>
<xsl:param name="p_onderdeelcode"/>
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_CONTRACT',MLD_OPDR_ORDERNR)[1]) and PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode]">
<xsl:sort select="MLD_OPDR_DATUMBEGIN"/>
<xsl:variable name="v_mld_ordernr" select="MLD_OPDR_ORDERNR"/>
<tr class="header">
<td class="tdt"></td>
<td class="tdt"><h3><xsl:value-of select="MLD_OPDR_DATUMBEGIN_P"/></h3></td>
<td class="tdt"><h3><xsl:value-of select="MLD_OPDR_ORDERNR"/></h3></td>
<td class="tdt tdte"><h3><xsl:if test="MLD_OPDR_MEERWERK=1">* </xsl:if><xsl:value-of select="MLD_OPDR_OMSCHRIJVING"/></h3></td>
<td class="tdt"><h3><xsl:value-of select="CONTRACTNR"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(MLD_OPDR_KOSTEN, '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(MLD_OPDR_KOSTEN_BTW, '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(MLD_OPDR_KOSTEN+MLD_OPDR_KOSTEN_BTW, '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"></td>
</tr>
<xsl:call-template name="DISPLAY_FACTUREN">
<xsl:with-param name="p_prs_leverancier_nr" select="$p_prs_leverancier_nr"/>
<xsl:with-param name="p_onderdeelcode" select="$p_onderdeelcode"/>
<xsl:with-param name="p_contractnr" select="$v_mld_ordernr"/>
</xsl:call-template>
<tr class="sfooter">
<td class="tdt" colspan='2'></td>
<td class="tdt"><h3><xsl:value-of select="MLD_OPDR_ORDERNR"/></h3></td>
<td class="tdt" colspan='2'><h3>totaal gefactureerd<br/>nog te factureren</h3></td>
<td class="tdtr"><h3>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode and MLD_OPDR_ORDERNR = $v_mld_ordernr]/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/><br/>
?? <xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode and MLD_OPDR_ORDERNR = $v_mld_ordernr]/MLD_OPDR_KOSTEN)-sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode and MLD_OPDR_ORDERNR = $v_mld_ordernr]/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/>
</h3></td>
<td class="tdtr"><h3>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode and MLD_OPDR_ORDERNR = $v_mld_ordernr]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/><br/>
?? <xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode and MLD_OPDR_ORDERNR = $v_mld_ordernr]/MLD_OPDR_KOSTEN_BTW)-sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode and MLD_OPDR_ORDERNR = $v_mld_ordernr]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/>
</h3></td>
<td class="tdtr"><h3>
<xsl:value-of select="format-number(sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode and MLD_OPDR_ORDERNR = $v_mld_ordernr]/FIN_FACTUUR_TOTAAL)+sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode and MLD_OPDR_ORDERNR = $v_mld_ordernr]/FIN_FACTUUR_TOTAAL_BTW), '#.##0,00', 'euro')"/><br/>
?? tbd</h3></td>
<td></td>
</tr>
</xsl:for-each>
</xsl:template>
<xsl:template name="DISPLAY_FACTUREN">
<xsl:param name="p_prs_leverancier_nr"/>
<xsl:param name="p_onderdeelcode"/>
<xsl:param name="p_contractnr"/>
<xsl:for-each select="//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and ONDERDEELCODE = $p_onderdeelcode and MLD_OPDR_ORDERNR = $p_contractnr]">
<xsl:sort select="FIN_FACTUUR_DATUM"/>
<xsl:if test="FIN_FACTUUR_DATUM!=''">
<tr>
<td class="tdt1"></td>
<td class="tdt"><xsl:value-of select="FIN_FACTUUR_DATUM_P"/></td>
<td class="tdt"><xsl:value-of select="FIN_FACTUUR_NR"/></td>
<td class="tdt tdte"><xsl:value-of select="FIN_FACTUUR_OPMERKING"/></td>
<td class="tdt"></td>
<td class="tdtr"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL_BTW, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL+FIN_FACTUUR_TOTAAL_BTW, '#.##0,00', 'euro')"/></td>
<td class="tdt"><xsl:value-of select="FIN_FACTUUR_ADVIES_P"/></td>
</tr>
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
<!-- Stylus Studio meta-information - (c) 2004-2007. Progress Software Corporation. All rights reserved.
<metaInformation>
<scenarios ><scenario default="no" name="Scenario1" userelativepaths="yes" externalpreview="no" url="..\xsl" htmlbaseurl="" outputurl="" processortype="saxon8" useresolver="yes" profilemode="0" profiledepth="" profilelength="" urlprofilexml="" commandline="" additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" validateoutput="no" validator="internal" customvalidator="" ><advancedProp name="sInitialMode" value=""/><advancedProp name="bXsltOneIsOkay" value="true"/><advancedProp name="bSchemaAware" value="true"/><advancedProp name="bXml11" value="false"/><advancedProp name="iValidation" value="0"/><advancedProp name="bExtensions" value="true"/><advancedProp name="iWhitespace" value="0"/><advancedProp name="sInitialTemplate" value=""/><advancedProp name="bTinyTree" value="true"/><advancedProp name="bWarnings" value="true"/><advancedProp name="bUseDTD" value="false"/><advancedProp name="iErrorHandling" value="fatal"/></scenario><scenario default="yes" name="Scenario2" userelativepaths="yes" externalpreview="no" url="..\..\..\TEMP\TWGU_files\rapport81_20170724113851_372.xml" htmlbaseurl="" outputurl="" processortype="saxon8" useresolver="yes" profilemode="0" profiledepth="" profilelength="" urlprofilexml="" commandline="" additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" validateoutput="no" validator="internal" customvalidator="" ><advancedProp name="sInitialMode" value=""/><advancedProp name="bXsltOneIsOkay" value="true"/><advancedProp name="bSchemaAware" value="true"/><advancedProp name="bXml11" value="false"/><advancedProp name="iValidation" value="0"/><advancedProp name="bExtensions" value="true"/><advancedProp name="iWhitespace" value="0"/><advancedProp name="sInitialTemplate" value=""/><advancedProp name="bTinyTree" value="true"/><advancedProp name="bWarnings" value="true"/><advancedProp name="bUseDTD" value="false"/><advancedProp name="iErrorHandling" value="fatal"/></scenario></scenarios><MapperMetaTag><MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="" destSchemaRoot="" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no"/><MapperBlockPosition></MapperBlockPosition><TemplateContext></TemplateContext><MapperFilter side="source"></MapperFilter></MapperMetaTag>
</metaInformation>
-->

View File

@@ -10,7 +10,7 @@
<xsl:variable name="lcletters">abcdefghijklmnopqrstuvwxyz</xsl:variable>
<xsl:variable name="ucletters">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable>
<xsl:variable name="Xsrtnotificatiecode">CUST28</xsl:variable>
<xsl:variable name="Xsrtnotificatiecode">MLDAFM</xsl:variable>
<xsl:template name="adres">
<tr>
@@ -255,6 +255,7 @@
<td class="tekstkop">
</td>
</tr>
<xsl:if test="discipline/key != 303 and discipline/key != 457 and discipline/key != 458">
<tr>
<td class="tekstkop" style="padding-top:20px">Van</td>
</tr>
@@ -282,6 +283,7 @@
</tr>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</table>
</td>
</tr>
@@ -303,6 +305,17 @@
<td class="tekst" style="padding-top:20px;">N.B.<br/>Dit bericht werd automatisch aangemaakt. Wil je hierop reageren, dan graag per mail via isb@uwv.nl.</td>
</tr>
</xsl:when>
<xsl:when test="discipline/key = 303 or discipline/key = 457 or discipline/key = 458">
<tr>
<td class="tekstkop" style="padding-top:30px">Onderwerp</td>
</tr>
<tr>
<td class="tekst">Afhandeling melding<br/><br/>
Onderstaande melding betreffende je boeking bij Worldmeetings is automatisch afgemeld.<br/><br/>
Het boekingsnummer van Worldmeetings staat hieronder in de omschrijving genoemd als referentie. Klik op de URL om de boeking in de webshop van Worldmeetings te openen.
</td>
</tr>
</xsl:when>
<xsl:otherwise>
<tr>
<td class="tekstkop" style="padding-top:30px">Onderwerp</td>
@@ -325,7 +338,7 @@
</tr>
<tr>
<td>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<table border="0" cellpadding="1" cellspacing="0" width="100%">
<tr>
<td width="20%" class="label">Nummer</td>
<td width="80%" class="value">
@@ -338,6 +351,7 @@
<td class="value">
<xsl:value-of select="gemeld/datum"/>&#xA0;<xsl:value-of select="gemeld/tijd"/></td>
</tr>
<xsl:if test="discipline/key != 303 and discipline/key != 457 and discipline/key != 458">
<tr>
<td class="label">Locatie</td>
<td class="value">
@@ -364,6 +378,7 @@
</table>
</td>
</tr>
</xsl:if>
<xsl:if test="count(deel)&gt;0">
<xsl:for-each select="deel">
<xsl:sort select="omschrijving"/>
@@ -386,6 +401,10 @@
<td class="value">
<xsl:value-of select="discipline/omschrijving"/>(<xsl:value-of select="stdmelding/omschrijving"/>)</td>
</tr>
<tr>
<td class="label">Einddatum</td>
<td class="value"><xsl:value-of select="einddatum/datum"/></td>
</tr>
<tr>
<td class="label">Omschrijving</td>
<td class="value">
@@ -394,6 +413,7 @@
</xsl:call-template>
</td>
</tr>
<xsl:if test="opmerking">
<tr>
<td class="label">Status</td>
<td class="value">
@@ -402,7 +422,8 @@
</xsl:call-template>
</td>
</tr>
<xsl:if test="kenmerk[@type!='Q' and @type!='L' and @type!='l'] != ''">
</xsl:if>
<xsl:if test="kenmerk[@type!='Q' and @type!='L' and @type!='l'] != '' or @naam='URL'">
<tr>
<td colspan="2" class="tekstkop" style="padding-top:20px; padding-bottom:5px;">Aanvullende gegevens</td>
</tr>
@@ -414,12 +435,26 @@
<xsl:for-each select="kenmerk[@type!='Q' and @type!='L' and @type!='l']">
<xsl:sort select="@volgnummer" data-type="number"/>
<xsl:if test=".!=''">
<xsl:choose>
<xsl:when test="@type='X'">
<tr>
<td class="label" width="20%">
<xsl:value-of select="@naam"/>
</td>
<td class="value" width="80%">: <xsl:value-of select="."/></td>
<td class="value" width="80%">
<xsl:element name="a"><xsl:attribute name="href"><xsl:value-of select="."/></xsl:attribute><xsl:value-of select="."/></xsl:element>
</td>
</tr>
</xsl:when>
<xsl:otherwise>
<tr>
<td class="label" width="20%">
<xsl:value-of select="@naam"/>
</td>
<td class="value" width="80%"><xsl:value-of select="."/></td>
</tr>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:for-each>
</table>
@@ -1565,7 +1600,6 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
<TR>
<TD WIDTH="40" ROWSPAN="30" ID="LINKERMARGE"></TD>
<TD>
<table border="0" width="100%">
<tr>
<td valign="bottom">
@@ -2219,8 +2253,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</tr>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$srtnotificatiecode='BES2RE'">
<xsl:choose>
<xsl:when test="$srtnotificatiecode='BES2RE'">
<tr>
<td align="left" width="100%" class="tekst" colspan="2">
Beste collega,<br/><br/>
@@ -2231,8 +2265,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
<tr>
<td align="left" width="100%" class="caption" colspan="2">Bestelaanvraag A-<xsl:value-of select="key"/> geweigerd door leverancier</td>
</tr>
</xsl:when>
<xsl:when test="$srtnotificatiecode='BESXXX'">
</xsl:when>
<xsl:when test="$srtnotificatiecode='BESXXX'">
<tr>
<td align="left" width="100%" class="tekst" colspan="2">
Beste collega,<br/><br/>
@@ -2244,8 +2278,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
<!-- Embargo-aanvraag is inmiddels vervallen/opgeruimd (ofwel van 'ismutatie=1' is hier geen sprake meer)?! -->
<td align="left" width="100%" class="caption" colspan="2">Mutatieverzoek van Bestelaanvraag A-<xsl:value-of select="key"/> geweigerd door leverancier</td>
</tr>
</xsl:when>
<xsl:otherwise>
</xsl:when>
<xsl:otherwise>
<tr>
<xsl:choose>
<!-- Betreft het een embargo-aanvraag (ofwel 'ismutatie=1'), dan nu de key van originele aanvraag gebruiken?! -->
@@ -2257,8 +2291,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</xsl:otherwise>
</xsl:choose>
</tr>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
<tr>
<td width="20%" class="label">Aan</td>
<td width="80%" class="value">:
@@ -2411,7 +2445,6 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</xsl:otherwise>
<!--ENDTAG $srtnotificatiecode != 'BESOTV'/'BESAP1'/'CUST22' -->
</xsl:choose>
<xsl:call-template name="pagefooter"/>
</xsl:element>
</html>
@@ -2916,14 +2949,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</xsl:call-template>
</td>
</tr>
<tr height="40px">
<td/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
<tr height="40px"><td/></tr>
<tr><td colspan="4"><hr/></td></tr>
<tr>
<td class="tekstkop" colspan="4">Service Centergegevens</td>
</tr>
@@ -3135,14 +3162,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</xsl:call-template>
</td>
</tr>
<tr height="40px">
<td/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
<tr height="40px"><td/></tr>
<tr><td colspan="4"><hr/></td></tr>
<tr>
<td class="tekstkop" colspan="4">Service Centergegevens</td>
</tr>
@@ -3358,14 +3379,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</xsl:call-template>
</td>
</tr>
<tr height="40px">
<td/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
<tr height="40px"><td/></tr>
<tr><td colspan="4"><hr/></td></tr>
<tr>
<td class="tekstkop" colspan="4">Service Centergegevens</td>
</tr>
@@ -3620,15 +3635,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
<xsl:with-param name="string" select="omschrijving"/>
</xsl:call-template>
</td>
</tr>
<tr height="40px">
<td/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
</tr><tr height="40px"><td/></tr>
<tr><td colspan="4"><hr/></td></tr>
<tr>
<td class="tekstkop" colspan="4">Service Centergegevens</td>
</tr>
@@ -3728,12 +3736,12 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</tr>
<tr>
</tr>
<tr><td height="40px"/></tr>
<tr>
<td height="40px"/>
</tr>
<tr>
<td colspan="5" style="text-align:center; font-size:9px">Op leveringen die gedaan zijn op basis van dit formulier zijn de inkoopvoorwaarden van UWV van toepassing.
Indien sprake is van een mantelovereenkomst tussen de leverancier en UWV geschiedt deze order onder de bepaling uit de mantelovereenkomst.</td>
<td colspan="5" style="text-align:center; font-size:9px">
Op leveringen die gedaan zijn op basis van dit formulier zijn de inkoopvoorwaarden van UWV van toepassing.
Indien sprake is van een mantelovereenkomst tussen de leverancier en UWV geschiedt deze order onder de bepaling uit de mantelovereenkomst.
</td>
</tr>
</table>
</TD>
@@ -3853,14 +3861,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</xsl:call-template>
</td>
</tr>
<tr height="40px">
<td/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
<tr height="40px"><td/></tr>
<tr><td colspan="4"><hr/></td></tr>
<tr>
<td class="tekstkop" colspan="4">Service Centergegevens</td>
</tr>
@@ -4111,7 +4113,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
<xsl:otherwise>
<xsl:value-of select="backoffice_contact/email"/>
</xsl:otherwise>
</xsl:choose></td>
</xsl:choose>
</td>
</tr>
<tr>
<td height="20px" colspan="4"/>
@@ -4134,14 +4137,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
<td class="label" colspan="4"><b>Referentie leverancier: </b><xsl:value-of select="kenmerk[@naam='Referentie leverancier']"/></td>
</tr>
</xsl:if>
<tr height="40px">
<td/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
<tr height="40px"><td/></tr>
<tr><td colspan="4"><hr/></td></tr>
<tr>
<td class="tekstkop" colspan="4">Contactgegevens</td>
</tr>
@@ -4244,9 +4241,7 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</tr>
<tr>
</tr>
<tr>
<td height="40px"/>
</tr>
<tr><td height="40px"/></tr>
</table>
</TD>
<TD WIDTH="30" ROWSPAN="30" ID="RECHTERMARGE"></TD>
@@ -4365,14 +4360,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
</xsl:call-template>
</td>
</tr>
<tr height="40px">
<td/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
<tr height="40px"><td/></tr>
<tr><td colspan="4"><hr/></td></tr>
<tr>
<td class="tekstkop" colspan="4">Service Centergegevens</td>
</tr>
@@ -5925,14 +5914,8 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">b<
<td class="label" colspan="4"><b>Referentie leverancier: </b><xsl:value-of select="kenmerk[@naam='Referentie leverancier']"/></td>
</tr>
</xsl:if>
<tr height="40px">
<td/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
<tr height="40px"><td/></tr>
<tr><td colspan="4"><hr/></td></tr>
<!-- deze sp!@ -->
<tr>
<td class="tekstkop" colspan="4">Contactgegevens</td>
@@ -9088,7 +9071,6 @@ Wij verzoeken je <xsl:call-template name="kto_url"><xsl:with-param name="bmr">r<
<xsl:variable name="regels">
<xsl:for-each select="msxml:node-set($sorted)/data_row">
<xsl:if test="not(preceding-sibling::data_row[1]/REGELS) and REGELS!=''">
<xsl:value-of select="REGELS"/>
@@ -9163,7 +9145,6 @@ function startAutoRefreshTim() {
</table>
<table id="result" width="100%" cellpadding="0" cellspacing="0">
<xsl:for-each select="msxml:node-set($sorted)/data_row">
<xsl:element name="tr">
<xsl:attribute name="id">tr<xsl:value-of select="position()"/></xsl:attribute>
@@ -9200,8 +9181,6 @@ function startAutoRefreshTim() {
</style>
<table border="0" bordercolor="#ffffff" width="100%">
<xsl:for-each select="//facilitor/rapport/rapport_data/data_row">
<xsl:if test="position() = 1">
<tr>
<th>Contractnr</th>

View File

@@ -314,8 +314,22 @@
</xsl:choose></td>
</tr>
<tr>
<td class="tekst">Melder:</td>
<td class="tekst"><xsl:value-of select="melding/voor/naam_full"/></td>
<td class="tekst">
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/key='1161'">Locatie coordinator SVn
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="melding/voor/naam_full"/>
</xsl:otherwise>
</xsl:choose>
</td>
<td class="tekst" colspan="2">
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/gebouw/afleveradres/bezoek_adres!=''">
@@ -328,7 +342,10 @@
</tr>
<tr>
<td class="tekst">Telefoonnummer:</td>
<td class="tekst"><xsl:choose>
<td class="tekst">
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/key='1161'"><b>LET OP CONTACT OPNEMEN MET HUISMEESTER 06-20035463</b>
</xsl:when>
<xsl:when test="melding/voor/mobiel!=''">
<xsl:value-of select="melding/voor/mobiel"/>
</xsl:when>
@@ -345,13 +362,20 @@
<td class="tekst" colspan="2"><xsl:if test="melding/plaats/regio/district/locatie/gebouw/verdieping/ruimte/nr!=''">Ruimte: <xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verdieping/ruimte/nr"/> (<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verdieping/ruimte/omschrijving"/>)</xsl:if></td>
</tr>
<tr><td colspan="4"><hr/></td></tr>
<xsl:if test="opdrachttype/key='169'"><!--Offerte opdracht-->
<tr>
<td colspan="4" class="tekst">Conform uw offerte met referentie <xsl:value-of select="kenmerk[@key='6']"/> verstrekken wij hierbij opdracht tot uitvoering van de werkzaamheden:<br/><br/></td>
</tr>
</xsl:if>
<tr>
<td colspan="4" class="tekst"><b>Melding:</b></td>
<td colspan="4" class="tekst"><b>Melding:</b>
</td>
</tr>
<tr>
<td height="10px"/>
@@ -506,8 +530,8 @@
<tr>
<td class="tekst" style="width:2%;"></td>
<td class="tekst">De offerte dient in Nederlandse taal te worden opgesteld en digitaal aangeleverd te worden bij Kien Facility Management per e-mail aan <xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/key='1141'">
<a href="mailto:LBRfacilitydesk@lyondellbasell.com"><nobr>LBRfacilitydesk@lyondellbasell.com</nobr></a>
<xsl:when test="melding/plaats/regio/district/kenmerk[@key='1281']">
<a href="mailto:{melding/plaats/regio/district/kenmerk[@key='1281']}"><xsl:value-of select="melding/plaats/regio/district/kenmerk[@key='1281']"/></a>
</xsl:when>
<xsl:otherwise>
<a href="mailto:facilitydesk@kien-fm.nl"><nobr>facilitydesk@kien-fm.nl</nobr></a>
@@ -554,7 +578,7 @@
<td class="tekst" style="width:18%;">Email:</td>
<td class="tekst" style="width:82%;">
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/key='1141'"><a href="mailto:LBRfacilitydesk@lyondellbasell.com">LBRfacilitydesk@lyondellbasell.com</a></xsl:when>
<xsl:when test="melding/plaats/regio/district/kenmerk[@key='1281']"><a href="mailto:{melding/plaats/regio/district/kenmerk[@key='1281']}"><xsl:value-of select="melding/plaats/regio/district/kenmerk[@key='1281']"/></a></xsl:when>
<xsl:otherwise><a href="mailto:facilitydesk@kien-fm.nl">facilitydesk@kien-fm.nl</a></xsl:otherwise>
</xsl:choose>
</td>
@@ -563,8 +587,7 @@
<td class="tekst" style="width:18%;">Telefoon:</td>
<td class="tekst" style="width:82%;">
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/key='1141'">010-2755501</xsl:when>
<xsl:when test="melding/plaats/regio/district/key='141'">088-5577613</xsl:when>
<xsl:when test="melding/plaats/regio/district/kenmerk[@key='1300']"><xsl:value-of select="melding/plaats/regio/district/kenmerk[@key='1300']"/></xsl:when>
<xsl:otherwise>088-5577676</xsl:otherwise>
</xsl:choose><br/>
</td>
@@ -580,18 +603,16 @@
<td colspan="4" class="tekst">
<b>Bovenvermelde opdracht is reeds aan u verstrekt en betreft dus <u>géén</u> nieuwe opdracht. Wij sturen u deze herinnering in verband met de overgang naar ons nieuwe facilitair management informatie systeem.
Bij vragen over deze reminder gelieve contact op te nemen met de Service Support desk via <xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/key='1141'">
<a href="mailto:LBRfacilitydesk@lyondellbasell.com"><nobr>LBRfacilitydesk@lyondellbasell.com</nobr></a>
<xsl:when test="melding/plaats/regio/district/kenmerk[@key='1281']">
<a href="mailto:{melding/plaats/regio/district/kenmerk[@key='1281']}"><xsl:value-of select="melding/plaats/regio/district/kenmerk[@key='1281']"/></a>
</xsl:when>
<xsl:otherwise>
<a href="mailto:storing@vbt-fm.nl"><nobr>storing@vbt-fm.nl</nobr></a>
</xsl:otherwise></xsl:choose> of <xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/key='1141'">
<nobr>010-275 5501</nobr>
</xsl:when>
<xsl:when test="melding/plaats/regio/district/key='141'">
<nobr>088-557 7613</nobr>
<xsl:when test="melding/plaats/regio/district/kenmerk[@key='1300']">
<xsl:value-of select="melding/plaats/regio/district/kenmerk[@key='1300']"/>
</xsl:when>
<xsl:otherwise>
<nobr>040-851 6900</nobr>
</xsl:otherwise>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB