Merge 2017.3 Gold B changes

svn path=/Website/trunk/; revision=37525
This commit is contained in:
Jos Groot Lipman
2018-03-29 14:44:26 +00:00
73 changed files with 2736 additions and 929 deletions

View File

@@ -68,6 +68,7 @@ if (bld_key > 0)
var verantw_key = oRs("prs_perslid_key_verantw").Value;
var verantw_key2 = oRs("prs_perslid_key_verantw2").Value;
var vervaldatum = oRs("alg_gebouw_vervaldatum").Value != null ? new Date(oRs("alg_gebouw_vervaldatum").Value) : null;
var geb_score1 = oRs("alg_gebouw_mjb_score1").value;
oRs.Close();
}
else
@@ -228,6 +229,7 @@ else
);
if (this_alg.writeman)
CHECKBOXTR(L("lcl_estate_gebouw_werkdagen"), "fldalgwerk", "bld_werkdagen", werkdagen==1)
ROFIELDTR("fld", "Conditie score", geb_score1, {suppressEmpty: true}); // L("lcl_alg_locatie_mjb_score1")
BLOCK_END();
generateFlexKenmerkBlock ({ onrgoed_key : bld_key,

View File

@@ -53,7 +53,8 @@ if (loc_key > 0)
var pst_adres = oRs("alg_locatie_post_adres").value;
var pst_plaats = oRs("alg_locatie_post_plaats").value;
var pst_land = oRs("alg_locatie_post_land").value;
var dienstniveau = oRs("mld_dienstniveau_key").value;
var dienstniveau = oRs("mld_dienstniveau_key").value;
var loc_score1 = oRs("alg_locatie_mjb_score1").value;
oRs.Close();
}
@@ -138,6 +139,7 @@ manRWFIELD("pst_land", "fld", L("lcl_prs_address_post_land"), p
manRWFIELD("loc_vw", "fld", L("lcl_estate_locatie_man_verantw"), loc_vw, {maxlength: 30});
manRWFIELD("loc_vwtel", "fld", L("lcl_estate_locatie_man_verantw_tel"), loc_vwtel, {maxlength: 15});
manRWFIELD("loc_mail", "fld", L("lcl_noti_email"), loc_mail, {maxlength: 200});
ROFIELDTR("fld", "Conditie score", loc_score1, {suppressEmpty: true}); // L("lcl_alg_locatie_mjb_score1")
BLOCK_END();

View File

@@ -126,6 +126,8 @@ function gebouw_list(pautfunction, params)
var srtgebouw_key = params.srtgebouw_key;
var verantw_key = params.verantw_key;
var expalgincl = params.expalgincl;
var fitness_score1_from = params.fitness_score1_from;
var fitness_score1_through = params.fitness_score1_through;
var autparamsINSUSE = user.checkAutorisation("WEB_INSUSE", true);
var autparamsINSMAN = user.checkAutorisation("WEB_INSMAN", true);
@@ -174,6 +176,7 @@ function gebouw_list(pautfunction, params)
+ " , g.alg_gebouw_x"
+ " , g.alg_gebouw_y"
+ " , g.alg_gebouw_vervaldatum"
+ " , g.alg_gebouw_mjb_score1"
+ " , (SELECT MAX(t.fac_tracking_datum)"
+ " FROM fac_tracking t"
+ " , fac_srtnotificatie sn"
@@ -220,6 +223,13 @@ function gebouw_list(pautfunction, params)
if (!expalgincl)
sqln += " AND (g.alg_gebouw_vervaldatum IS NULL OR g.alg_gebouw_vervaldatum > TRUNC(SYSDATE)) ";
// Conditie score.
// Niet gemeten objecten doen wel mee in dit filter. Deze objecten worden dus niet getoond als er een waarde is ingevuld.
if (fitness_score1_from > 0)
sqln += " AND alg_locatie_mjb_score1 >= " + fitness_score1_from;
if (fitness_score1_through > 0)
sqln += " AND alg_locatie_mjb_score1 <= " + fitness_score1_through;
sqln += " ORDER BY l.alg_locatie_upper ASC, "
+ " g.alg_gebouw_upper ASC ";
@@ -263,6 +273,7 @@ function gebouw_list(pautfunction, params)
rst.addColumn(new Column({caption: L("lcl_geoxcoord"), content: "alg_gebouw_x"}));
rst.addColumn(new Column({caption: L("lcl_geoycoord"), content: "alg_gebouw_y"}));
}
rst.addColumn(new Column({caption: "Conditiescore", content: "alg_gebouw_mjb_score1"})); // L("lcl_alg_gebouw_mjb_score1")
rst.addAction({ action: "gebouwEdit", caption: L("lcl_edit"), isDefault: true});
rst.addAction({ action: "doDelete", caption: L("lcl_delete"), enabler: "eDelete", single:!noref, multi: true, multiOnce: true});

View File

@@ -91,26 +91,60 @@ var this_alg = alg.func_enabled(gebouw_key);
+ " FROM alg_srtgebouw"
+ " WHERE alg_srtgebouw_verwijder IS NULL"
+ " ORDER BY UPPER("+lcl.xsql('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')+")";
FCLTselector("srt",
sql,
{ initKey: srtgebouw_key,
label: L("lcl_estate_gebouw_srtgebouw"),
trclass: "primsearch",
emptyOption: ""
});
FCLTselector("srt",
sql,
{ initKey: srtgebouw_key,
label: L("lcl_estate_gebouw_srtgebouw"),
trclass: "primsearch",
emptyOption: ""
});
%>
<!-- Gebouw verantwoordelijke -->
<% // Dit veld is alleen zichtbaar indien er minimaal <20><>n gebouwverantwoordelijke geconfigureerd is (suppressNoValues).
FCLTpersoonselector("verantw",
"sgVerantw",
{ perslidKey: verantw_key,
label: L("lcl_alg_bld_verantw"),
filtercode: "GV", // Gebouw Verantwoordelijke
trclass: "primsearch",
suppressNoValues: true,
whenEmpty: L("lcl_search_generic") // want filter
});
<!-- Gebouw verantwoordelijke -->
<% // Dit veld is alleen zichtbaar indien er minimaal <20><>n gebouwverantwoordelijke geconfigureerd is (suppressNoValues).
FCLTpersoonselector("verantw",
"sgVerantw",
{ perslidKey: verantw_key,
label: L("lcl_alg_bld_verantw"),
filtercode: "GV", // Gebouw Verantwoordelijke
trclass: "primsearch",
suppressNoValues: true,
whenEmpty: L("lcl_search_generic") // want filter
});
%>
<% // Conditie score %>
<tr class="primsearch fldfitness_score" id="fitness_score">
<td>
<table width="100%">
<tr>
<td class="label">
<label for="show_fitness_score_from"><%="Conditie score"%>:</label> <% // L("lcl_mjb_fitness_score") %>
</td>
<td style="text-align: right">
<%="van"%> <% // L("lcl_mjb_from") %>
</td>
</tr>
</table>
</td>
<td class="score">
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 6)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 6)"
id="fitness_score1_from"
name="fitness_score1_from"
class="fldflexN number "
value=""
maxlength="1">
&nbsp;<%="t/m"%>&nbsp; <% // L("lcl_mjb_through") %>
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 6)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 6)"
id="fitness_score1_through"
name="fitness_score1_through"
class="fldflexN number "
value=""
maxlength="1">
</td>
</tr>
</table>
</td><!-- end column 1 -->
</tr>

View File

@@ -32,6 +32,8 @@ var srtgebouw_key = getQParamInt("srt", -1); // Gebouwfunctie
var verantw_key = getQParamInt("verantw", -1); // Gebouw verantwoordelijke
var verantw_key2 = getQParamInt("verantw2", -1); // Gebouw verantwoordelijke 2
var expalgincl = getQParamInt("expAlgIncl", 0) == 1; // Ook vervallen gebouwen
var fitness_score1_from = getQParamInt("fitness_score1_from", -1); // Conditie score van.
var fitness_score1_through = getQParamInt("fitness_score1_through", -1); // Conditie score t/m.
gebouw_list ( "*",
{ outputmode: outputmode,
@@ -45,6 +47,8 @@ gebouw_list ( "*",
bld_key: (bld_key != -1? bld_key : null),
bld_code: bld_code,
bld_name: bld_name,
fitness_score1_from : fitness_score1_from,
fitness_score1_through : fitness_score1_through,
noref: (noref != -1? noref : null),
expalgincl: expalgincl
}

View File

@@ -120,6 +120,8 @@ function locatie_list(pautfunction, params)
var reg_key = params.reg_key;
var dis_key = params.dis_key;
var loc_key = params.loc_key;
var fitness_score1_from = params.fitness_score1_from;
var fitness_score1_through = params.fitness_score1_through;
function fnrowActionEnabler(oRs)
{
@@ -161,6 +163,7 @@ function locatie_list(pautfunction, params)
+ " , l.alg_locatie_verantw_tel"
+ " , l.alg_locatie_x"
+ " , l.alg_locatie_y"
+ " , l.alg_locatie_mjb_score1"
+ " , (SELECT MAX(t.fac_tracking_datum)"
+ " FROM fac_tracking t"
+ " , fac_srtnotificatie sn"
@@ -168,7 +171,7 @@ function locatie_list(pautfunction, params)
+ " AND t.fac_tracking_refkey = l.alg_locatie_key"
+ " AND sn.fac_srtnotificatie_xmlnode = 'locatie'"
+ " ) recentdatum"
+ " FROM alg_v_aanweziglocatie l"
+ " FROM alg_locatie l" // TODO: alg_v_aanweziglocatie gebruiken
+ " , alg_district d "
+ " WHERE d.alg_district_key(+) = l.alg_district_key"
+ " AND l.alg_locatie_verwijder IS NULL";
@@ -201,6 +204,13 @@ function locatie_list(pautfunction, params)
if (params.loc_descr)
sqln += " AND UPPER(l.alg_locatie_omschrijving) LIKE " + safe.quoted_sql_wild(params.loc_descr + "%");
// Conditie score.
// Niet gemeten objecten doen wel mee in dit filter. Deze objecten worden dus niet getoond als er een waarde is ingevuld.
if (fitness_score1_from > 0)
sqln += " AND alg_locatie_mjb_score1 >= " + fitness_score1_from;
if (fitness_score1_through > 0)
sqln += " AND alg_locatie_mjb_score1 <= " + fitness_score1_through;
sqln += " ORDER BY UPPER(alg_district_omschrijving), UPPER(alg_locatie_code)";
var addurl = "appl/alg/alg_locatie.asp";
@@ -233,6 +243,7 @@ function locatie_list(pautfunction, params)
rst.addColumn(new Column({caption: L("lcl_prs_address_bezoek_adres"), content: "alg_locatie_adres"}));
rst.addColumn(new Column({caption: L("lcl_prs_address_bezoek_postcode"), content: "alg_locatie_postcode"}));
rst.addColumn(new Column({caption: L("lcl_prs_address_bezoek_plaats"), content: "alg_locatie_plaats"}));
rst.addColumn(new Column({caption: "Conditiescore", content: "alg_locatie_mjb_score1"})); // L("lcl_alg_locatie_mjb_score1")
if (outputmode != 0)
{

View File

@@ -68,8 +68,45 @@ var authparams = alg.checkAutorisation();
</table>
</td><!-- end column 1 -->
<!-- Second column -->
<td class="searchkolom2">
</td><!-- end column 1 -->
<table><!-- x rijen, 2 kolommen: label + veld -->
<% // Conditie score %>
<tr class="primsearch fldfitness_score" id="fitness_score">
<td>
<table width="100%">
<tr>
<td class="label">
<label for="show_fitness_score_from"><%="Conditie score"%>:</label> <% // L("lcl_mjb_fitness_score") %>
</td>
<td style="text-align: right">
<%="van"%> <% // L("lcl_mjb_from") %>
</td>
</tr>
</table>
</td>
<td class="score">
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 6)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 6)"
id="fitness_score1_from"
name="fitness_score1_from"
class="fldflexN number "
value=""
maxlength="1">
&nbsp;<%="t/m"%>&nbsp; <% // L("lcl_mjb_through") %>
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 6)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 6)"
id="fitness_score1_through"
name="fitness_score1_through"
class="fldflexN number "
value=""
maxlength="1">
</td>
</tr>
</table>
</td><!-- end column 2 -->
</tr>
<% BLOCK_END();

View File

@@ -27,6 +27,8 @@ var dis_key = getQParamInt("districtkey", -1); // District
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var loc_code = getQParam("loc_code", ""); // Locatiecode
var loc_descr = getQParam("loc_descr", ""); // Locatienaam
var fitness_score1_from = getQParamInt("fitness_score1_from", -1); // Conditie score van.
var fitness_score1_through = getQParamInt("fitness_score1_through", -1); // Conditie score t/m.
locatie_list ( "*",
{ outputmode: outputmode,
@@ -36,6 +38,8 @@ locatie_list ( "*",
loc_key: (loc_key != -1? loc_key : null),
loc_code: loc_code,
loc_descr: loc_descr,
fitness_score1_from : fitness_score1_from,
fitness_score1_through : fitness_score1_through,
noref: (noref != -1? noref : null)
}
);

View File

@@ -60,6 +60,7 @@ var werkdagen = oRs("alg_gebouw_werkdagen").Value;
var verantw = oRs("prs_perslid_key_verantw").Value;
var verantw2 = oRs("prs_perslid_key_verantw2").Value;
var vervaldatum = oRs("alg_gebouw_vervaldatum").Value;
var geb_score1 = oRs("alg_gebouw_mjb_score1").value;
oRs.Close();
%>
@@ -222,6 +223,7 @@ oRs.Close();
ROFIELDTR("fld", L("lcl_estate_gebouw_beginuur"), toTimeString(beginuur), {suppressEmpty:true} );
ROFIELDTR("fld", L("lcl_estate_gebouw_einduur"), toTimeString(einduur), {suppressEmpty:true} );
ROCHECKBOXTR("fldalgwerk", L("lcl_estate_gebouw_werkdagen"), werkdagen==1);
ROFIELDTR("fld", "Conditie score", geb_score1, {suppressEmpty: true}); // L("lcl_alg_locatie_mjb_score1")
BLOCK_END();
generateFlexKenmerkBlock ({ onrgoed_key : bld_key,

View File

@@ -40,6 +40,7 @@ var loc_vwtel = oRs("alg_locatie_verantw_tel").value;
var loc_x = oRs("alg_locatie_x").value;
var loc_y = oRs("alg_locatie_y").value;
var loc_mail = oRs("alg_locatie_email").value;
var loc_score1 = oRs("alg_locatie_mjb_score1").value;
var pst_adres = oRs("alg_locatie_post_adres").value;
var pst_postc = oRs("alg_locatie_post_postcode").value;
var pst_adres = oRs("alg_locatie_post_adres").value;
@@ -156,6 +157,7 @@ oRs.Close();
ROFIELDTR("fld", L("lcl_estate_locatie_man_verantw"), loc_vw, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_locatie_man_verantw_tel"), loc_vwtel, {suppressEmpty: true});
AFIELDTR('fldmailto details', L("lcl_noti_email"), "mailto:" + loc_mail, loc_mail, { suppressEmpty: true });
ROFIELDTR("fld", "Conditie score", loc_score1, {suppressEmpty: true}); // L("lcl_alg_locatie_mjb_score1")
BLOCK_END();

View File

@@ -316,6 +316,7 @@ function model_mld_opdr()
if (isclone) // Bij kopie van opdracht geen nieuw nummer genereren.
{
var v_project_key = (typeof obj.budgetproject == "object" ? obj.budgetproject.id : obj.budgetproject);
// Vul het contractnummer van het oorspronkelijke contract in.
var parent_key = getQParamInt("id", -1);
var sql = "SELECT o.mld_opdr_ordernr"
@@ -325,7 +326,7 @@ function model_mld_opdr()
obj.ordernr = oRs("mld_opdr_ordernr").Value;
oRs.Close();
// Kopie contract. Volgnummer moet uniek zijn binnen dit contractnummer.
checkUniekContractnummer(-1, obj.budgetproject.id, obj.ordernr, obj.sequence);
checkUniekContractnummer(-1, v_project_key, obj.ordernr, obj.sequence);
}
else
{

View File

@@ -98,40 +98,21 @@ function model_mld_stdmelding()
},
"canrefer": {
"dbs": "mld_stdmelding_kanverwijzen",
"typ": "number",
"typ": "key",
"label": L("lcl_mld_kanverwijzen"),
"foreign": {
"tbl": "(SELECT 128 key, " + safe.quoted_sql(mld.getrefmoduletext(128)) + " oms" + " FROM DUAL" /* Alle meldingen */
+ " UNION SELECT 1, " + safe.quoted_sql(mld.getrefmoduletext(1)) + " FROM DUAL" /* Eigen meldingen */
+ " UNION SELECT 2, " + safe.quoted_sql(mld.getrefmoduletext(2)) + " FROM DUAL" /* Opdracht */
+ " UNION SELECT 4, " + safe.quoted_sql(mld.getrefmoduletext(4)) + " FROM DUAL" /* Reservering */
+ " UNION SELECT 8, " + safe.quoted_sql(mld.getrefmoduletext(8)) + " FROM DUAL" /* Bestelling */
//+ " UNION SELECT 16, " + safe.quoted_sql(mld.getrefmoduletext(16)) + " FROM DUAL" /* reserved for future use */
//+ " UNION SELECT 32, " + safe.quoted_sql(mld.getrefmoduletext(32)) + " FROM DUAL" /* reserved for future use */
//+ " UNION SELECT 64, " + safe.quoted_sql(mld.getrefmoduletext(64)) + " FROM DUAL" /* reserved for future use */
+ ")",
"key": "key",
"desc": "oms",
"order": "1",
"multiselect": true
},
"multi": true,
"LOV": canrefer_LOV(),
"multiselect": true,
"multiadd": true,
"emptyoption": L("lcl_none")
},
"mandatorylevel": {
"dbs": "alg_onrgoed_niveau",
"typ": "varchar",
"label": L("lcl_mld_onrgoed_niveau"),
"foreign": {
"tbl": "(SELECT 'L' key, " + safe.quoted_sql(L("lcl_location")) + " oms" + ", 1 FROM DUAL"
+ " UNION SELECT 'G', " + safe.quoted_sql(L("lcl_building")) + ", 2 FROM DUAL"
+ " UNION SELECT 'V', " + safe.quoted_sql(L("lcl_floor")) + ", 3 FROM DUAL"
+ " UNION SELECT 'R', " + safe.quoted_sql(L("lcl_room")) + ", 4 FROM DUAL"
+ ")",
"key": "key",
"desc": "oms",
"order": "1"
},
"LOV": "L;" + L("lcl_location") + ";"
+ "G;" + L("lcl_building") + ";"
+ "V;" + L("lcl_floor") + ";"
+ "R;" + L("lcl_room"),
"emptyoption": null,
"multiedit": true
},
@@ -153,15 +134,9 @@ function model_mld_stdmelding()
"dbs": "mld_stdmelding_subject",
"typ": "key",
"label": L("lcl_mld_subject"),
"foreign": {
"tbl": "(SELECT 0 key, " + safe.quoted_sql(L("lcl_mld_onzichtbaar")) + " oms" + " FROM DUAL"
+ " UNION SELECT 1, " + safe.quoted_sql(L("lcl_mld_optioneel")) + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(L("lcl_mld_verplicht")) + " FROM DUAL"
+ ")",
"key": "key",
"desc": "oms",
"order": "1"
},
"LOV": "0;" + L("lcl_mld_onzichtbaar") + ";"
+ "1;" + L("lcl_mld_optioneel") + ";"
+ "2;" + L("lcl_mld_verplicht"),
"emptyoption": null,
"multiedit": true
},
@@ -169,15 +144,9 @@ function model_mld_stdmelding()
"dbs": "mld_stdmelding_freetext",
"typ": "key",
"label": L("lcl_mld_freetext"),
"foreign": {
"tbl": "(SELECT 0 key, " + safe.quoted_sql(L("lcl_mld_onzichtbaar")) + " oms" + " FROM DUAL"
+ " UNION SELECT 1, " + safe.quoted_sql(L("lcl_mld_optioneel")) + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(L("lcl_mld_verplicht")) + " FROM DUAL"
+ ")",
"key": "key",
"desc": "oms",
"order": "1"
},
"LOV": "0;" + L("lcl_mld_onzichtbaar") + ";"
+ "1;" + L("lcl_mld_optioneel") + ";"
+ "2;" + L("lcl_mld_verplicht"),
"emptyoption": null,
"multiedit": true
},
@@ -243,15 +212,9 @@ function model_mld_stdmelding()
"dbs": "mld_stdmelding_regime",
"typ": "key",
"label": L("lcl_mld_regime"),
"foreign": {
"tbl": "(SELECT 1 key, " + safe.quoted_sql(L("lcl_mld_office_hours")) + " oms" + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(L("lcl_mld_opening_hours")) + " FROM DUAL"
+ " UNION SELECT 3, " + safe.quoted_sql(L("lcl_mld_24_7")) + " FROM DUAL"
+ ")",
"key": "key",
"desc": "oms",
"order": "1"
},
"LOV": "1;" + L("lcl_mld_office_hours") + ";"
+ "2;" + L("lcl_mld_opening_hours") + ";"
+ "3;" + L("lcl_mld_24_7"),
"emptyoption": null,
"multiedit": true
},
@@ -282,14 +245,8 @@ function model_mld_stdmelding()
"dbs": "mld_stdmelding_afmeldtext",
"typ": "key",
"label": L("lcl_mld_afmeldtext"),
"foreign": {
"tbl": "(SELECT 1 key, " + safe.quoted_sql(L("lcl_mld_optioneel")) + " oms" + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(L("lcl_mld_verplicht")) + " FROM DUAL"
+ ")",
"key": "key",
"desc": "oms",
"order": "1"
},
"LOV": "1;" + L("lcl_mld_optioneel") + ";"
+ "2;" + L("lcl_mld_verplicht"),
"emptyoption": null,
"multiedit": true
},
@@ -308,16 +265,10 @@ function model_mld_stdmelding()
"dbs": "mld_stdmelding_doublecheck",
"typ": "key",
"label": L("lcl_mld_doublecheck"),
"foreign": {
"tbl": "(SELECT 0 key, " + safe.quoted_sql(L("lcl_mld_not")) + " oms" + " FROM DUAL"
+ " UNION SELECT 1, " + safe.quoted_sql(L("lcl_mld_when_enter")) + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(L("lcl_mld_when_accept")) + " FROM DUAL"
+ " UNION SELECT 3, " + safe.quoted_sql(L("lcl_mld_when_enter_accept")) + " FROM DUAL"
+ ")",
"key": "key",
"desc": "oms",
"order": "1"
},
"LOV": "0;" + L("lcl_mld_not") + ";"
+ "1;" + L("lcl_mld_when_enter") + ";"
+ "2;" + L("lcl_mld_when_accept") + ";"
+ "3;" + L("lcl_mld_when_enter_accept"),
"emptyoption": null,
"multiedit": true
},
@@ -331,16 +282,10 @@ function model_mld_stdmelding()
"dbs": "mld_stdmelding_kto",
"typ": "key",
"label": L("lcl_mld_in_KTO"),
"foreign": {
"tbl": "(SELECT 0 key, " + safe.quoted_sql(L("lcl_mld_never")) + " oms" + " FROM DUAL"
+ " UNION SELECT 1, " + safe.quoted_sql(L("lcl_mld_always")) + " FROM DUAL"
+ " UNION SELECT 2, " + safe.quoted_sql(L("lcl_mld_opt_in")) + " FROM DUAL"
+ " UNION SELECT 3, " + safe.quoted_sql(L("lcl_mld_opt_out")) + " FROM DUAL"
+ ")",
"key": "key",
"desc": "oms",
"order": "1"
}
"LOV": "0;" + L("lcl_mld_never") + ";"
+ "1;" + L("lcl_mld_always") + ";"
+ "2;" + L("lcl_mld_opt_in") + ";"
+ "3;" + L("lcl_mld_opt_out")
},
"limitcatalogue": {
"dbs": "bes_ins_discipline_key",
@@ -386,16 +331,10 @@ function model_mld_stdmelding()
"dbs": "mld_stdmelding_directklaar",
"typ": "key",
"label": L("lcl_mld_directklaar"),
"foreign": {
"tbl": "(SELECT NULL key, " + safe.quoted_sql(L("lcl_mld_afhankelijk_vakgroep")) + " oms" + " FROM DUAL"
+ " UNION SELECT '0', " + safe.quoted_sql(L("lcl_No")) + " FROM DUAL"
+ " UNION SELECT '1', " + safe.quoted_sql(L("lcl_Yes")) + " FROM DUAL"
+ " UNION SELECT '2', " + safe.quoted_sql(L("lcl_mld_initieel_fo")) + " FROM DUAL"
+ ")",
"key": "key",
"desc": "oms",
"order": "1 NULLS FIRST"
},
"LOV": ";" + L("lcl_mld_afhankelijk_vakgroep") + ";"
+ "0;" + L("lcl_No") + ";"
+ "1;" + L("lcl_Yes") + ";"
+ "2;" + L("lcl_mld_initieel_fo"),
"emptyoption": null,
"multiedit": true
},
@@ -409,32 +348,19 @@ function model_mld_stdmelding()
"dbs": "alg_onrgoed_obj_niveau",
"typ": "varchar",
"label": L("lcl_mld_obj_show_niveau"),
"foreign": {
"tbl": "(SELECT '' key, " + safe.quoted_sql(L("lcl_mld_no_objects")) + " oms" + ", 0 ev1 FROM DUAL"
+ " UNION SELECT 'L', " + safe.quoted_sql(L("lcl_location")) + ", 1 FROM DUAL"
+ " UNION SELECT 'G', " + safe.quoted_sql(L("lcl_building")) + ", 2 FROM DUAL"
+ " UNION SELECT 'V', " + safe.quoted_sql(L("lcl_floor")) + ", 3 FROM DUAL"
+ " UNION SELECT 'R', " + safe.quoted_sql(L("lcl_room")) + ", 4 FROM DUAL"
+ ")",
"key": "key",
"desc": "oms",
"extravalue": "ev1",
"order": "3",
"emptyisrealvalue": true
},
"LOV": ";" + L("lcl_mld_no_objects") + ";"
+ "L;" + L("lcl_location") + ";"
+ "G;" + L("lcl_building") + ";"
+ "V;" + L("lcl_floor") + ";"
+ "R;" + L("lcl_room"),
"emptyisrealvalue": true,
"emptyoption": null
},
"departmentobjects": {
"dbs": "alg_org_obj_niveau",
"typ": "number",
"typ": "key",
"label": L("lcl_mld_dep_obj"),
"foreign": {
"tbl": "(" + departmentobjects_foreign() + ")",
"key": "key",
"desc": "oms",
"extravalue": "ev1",
"order": "3"
},
"LOV": departmentobjects_foreign(),
"emptyoption": null
},
"personalobjects": {
@@ -517,7 +443,8 @@ function model_mld_stdmelding()
tables: [ "ins_tab_discipline, mld_disc_params, ins_srtdiscipline"],
wheres: [ "ins_tab_discipline.ins_discipline_key = mld_stdmelding.mld_ins_discipline_key",
"mld_disc_params.mld_ins_discipline_key = mld_stdmelding.mld_ins_discipline_key",
"ins_tab_discipline.ins_srtdiscipline_key = ins_srtdiscipline.ins_srtdiscipline_key"
"ins_tab_discipline.ins_srtdiscipline_key = ins_srtdiscipline.ins_srtdiscipline_key",
"ins_tab_discipline.ins_discipline_verwijder IS NULL"
]
}
};
@@ -528,19 +455,22 @@ function model_mld_stdmelding()
if (obj.id == -1)
obj.canrefer = {id:-1, name:null};
obj.canrefer = translate_canrefer(obj.canrefer, null);
var srtdisc_key = -1;;
var srtdisc_key = -1;
var disc_key = -1;
if (obj.id > 0)
obj._is_clone = getQParamInt("scf_clone", 0);
var stdm_id = (obj._is_clone == 1 ? getQParamInt("id", -1) : obj.id);
if (stdm_id > 0)
{
stdm_info = mld.mld_stdmeldinginfo(obj.id);
stdm_info = mld.mld_stdmeldinginfo(stdm_id);
srtdisc_key = stdm_info.ins_srtdiscipline_key;
disc_key = stdm_info.ins_discipline_key;
// Hier hebben we echt de waarde van mld_stdmelding_directklaar nodig,
// en niet de defaultwaarde uit mld_disc_params_directklaar.
var sql = "SELECT mld_stdmelding_directklaar"
+ " FROM mld_stdmelding"
+ " WHERE mld_stdmelding_key = " + obj.id;
+ " WHERE mld_stdmelding_key = " + stdm_id;
var oRs = Oracle.Execute(sql);
stdm_info.directklaar = oRs("mld_stdmelding_directklaar").Value;
oRs.Close();
@@ -643,11 +573,11 @@ function model_mld_stdmelding()
function departmentobjects_foreign()
{
var tbl = "SELECT 9 key, " + safe.quoted_sql(L("lcl_mld_no_objects")) + " oms" + ", -2 ev1 FROM DUAL"
+ " UNION SELECT -1, " + safe.quoted_sql(L("lcl_mld_all_objects")) + ", -1 FROM DUAL"
+ " UNION SELECT 0, " + safe.quoted_sql(L("lcl_company")) + ", 0 FROM DUAL";
var tbl = "9;" + L("lcl_mld_no_objects") + ";"
+ "-1;" + L("lcl_mld_all_objects") + ";"
+ "0;" + L("lcl_company");
for (var i = 1; i <= S("prs_max_dep_level"); i++)
tbl += " UNION SELECT " + i + ", " + safe.quoted_sql(L("lcl_dep_name_level" + i)) + ", " + i + " ev1 FROM DUAL";
tbl += ";" + i + ";" + L("lcl_dep_name_level" + i);
return tbl;
}
@@ -667,5 +597,20 @@ function model_mld_stdmelding()
+ " ORDER BY UPPER(d.ins_discipline_omschrijving))";
return tbl;
}
function canrefer_LOV()
{
var tbl = "128;" + mld.getrefmoduletext(128) + ";" /* Alle meldingen */
+ "1;" + mld.getrefmoduletext(1) + ";" /* [M] Eigen meldingen */
+ "2;" + mld.getrefmoduletext(2) + ";" /* [O] Opdracht */
+ "4;" + mld.getrefmoduletext(4) + ";" /* [R] Reservering */
+ "8;" + mld.getrefmoduletext(8) /* [B] Bestelling */
//+ "16;" + mld.getrefmoduletext(16 + ";" /* [X] Bestelopdracht :reserved for future use */
//+ "32;" + mld.getrefmoduletext(32 + ";" /* [C] Contract :reserved for future use */
//+ "64;" + mld.getrefmoduletext(64) + ";" /* [F] Factuur :reserved for future use */
/* 0: Geen verwijzingen */
return tbl;
}
}
%>

View File

@@ -200,6 +200,7 @@ function doLoginStateless(prs_key, params)
/* global */ user_key = prs_key;
Session("user_key") = user_key; // Nu ben je pas *echt* ingelogd
/* global */ user = new Perslid(user_key); // wordt mogelijk nog overruled door impersonate
// Ik wil voor API2 Stateless calls geen SELECT op PRS_PERSLID triggeren met de volgende statements
// Session("userident") = "{0} ({1})".format(user.naam(), user.oslogin() || user.oslogin2() || user.prs_perslid_email() || "??"); // Handig voor in logging
Session("stateless") = 1;
Session.Abandon(); // Altijd, voor de zekerheid

View File

@@ -66,6 +66,7 @@ if (user_key < 0)
{
Session("isWriteonlyApi2User") = true;
}
Session("userident") = "{0} (APIKEY: {1})".format(oRs("prs_perslid_naam").Value, APIKEY.substr(0,3) + "..."); // Handig voor in logging
doLoginStateless(oRs("prs_perslid_key").Value);
var loglevel = oRs("prs_perslid_loglevel").Value;
if (loglevel > 0) // We doen geen __Logging=3, dan zou voor een gebruiker zo maar de logging in beeld komen

View File

@@ -13,6 +13,7 @@
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!-- #include file="bes.inc" -->
<%
@@ -189,6 +190,17 @@ user.auth_required_or_abort(this_bestelopdr.canReadAny || this_bestelling.isVera
}
ROFIELDTR("fld", L("lcl_bes_Bes_status"), bes_bestelopdr.statustxt, params);
ROFIELDTR("fld", L("lcl_bes_Bes_Owner"), bes_bestelopdr.prs_perslid_naam);
if (bes_bestelling.perslid_key_voor > 0 && bes_bestelling.perslid_key_voor != bes_bestelopdr.perslid_key)
{
FCLTpersoonselector(
"personFor",
"sgPersonFor",
{ perslidKey: bes_bestelling.perslid_key_voor,
label: L("lcl_bes_order_for"),
readonly: true,
moreinfo: true
});
}
sql = "SELECT mld_adres_naam "
+ " FROM mld_adres"

View File

@@ -39,17 +39,20 @@ user.auth_required_or_abort(this_bestelopdr.canDeliver);
$('textarea').autogrow();
});
function hasInStock()
{
var max_o_i = $("#max_o_i").val();
var art_text = "";
var count_insuf = 0;
for (var i = 0; i < max_o_i; i++)
{
var instock = parseInt($("#instock" + i).val(), 10);
var delivered = parseInt($("#cnt" + i).val(), 10) || 0;
var retour = instock < 0 || delivered < 0;
if ((retour && instock > delivered) || (!retour && instock < delivered))
function opdr_submit()
{
var max_o_i = $("#max_o_i").val();
var valid = true;
for (var i = 0; i < max_o_i; i++)
{
$("#cnt" + i).blur();
valid = valid && !$("#cnt" + i).hasClass("bad");
}
if (!valid) return false;
if (hasBadFields() || !hasInStock())
{
FcltMgr.alert(L("lcl_shared_validator_invalid"));
return false;
}
return true;

View File

@@ -52,8 +52,12 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
var alleen_afhandelingskenmerken = (!user.has("WEB_BEZBOF") || ( (S("bez_show_progress_prop") & 4) > 0) );
var flexfilter = [];
var flexfilter_afhandel_default = [];
if (alleen_afhandelingskenmerken)
{
flexfilter = ["k.bez_kenmerk_volgnr < 900"];
flexfilter_afhandel_default = ["(k.bez_kenmerk_volgnr < 900 OR (k.bez_kenmerk_volgnr >= 900 AND k.bez_kenmerk_default IS NOT NULL))"];
}
// else: kenmerken voor nieuwe bezoekers worden aangemaakt door load_kenmerk.asp
@@ -69,7 +73,7 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
<% } %>
<th><%=L("lcl_vis_name")%></th>
<th><%=L("lcl_vis_company")%><%=S("bez_sel_internpersoon") == 1? "/" + L("lcl_department") : ""%></th>
<% if (!alleen_afhandelingskenmerken && S("vis_remark") == 1 || S("vis_remark") == 2)
<% if (S("vis_remark") == 1 || S("vis_remark") == 2)
{ %>
<th><%=L("lcl_vis_remark")%></th>
<% } %>
@@ -88,11 +92,11 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
&nbsp;<span id="bezPrkFree"></span>
<input type="hidden" name="prktype" id="prktype" value="<%=aantal_gebter == 0? "N" : (aantal_gebter == 1? "C" : "S")%>">
</th>
<% if (S("bez_set_remote_flags") > 0) // Authorisatie?
{ %>
<th><%=L("lcl_bez_remote")%></th>
<% } %>
<% if (!alleen_afhandelingskenmerken && (S("vis_bo_uses_badgenrs") == 1))
<% if (S("bez_set_remote_flags") > 0) // Authorisatie?
{ %>
<th><%=L("lcl_bez_remote")%></th>
<% } %>
<% if (S("vis_bo_uses_badgenrs") == 1)
{ %>
<th><%=backo? L("lcl_vis_badgenr") : ""%></th>
<% } %>
@@ -151,61 +155,61 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
var next_vis = 1;
var anydone = false;
while (!oRs.eof)
{ /* +1 uit eigen locatie,
+2 uit andere locatie,
+4 komt niet fysiek,
+8 komt niet aan balie,
+16 geen parkeerplaats */
var bez_flags = oRs("bez_bezoekers_flags").Value;
{ /* +1 uit eigen locatie,
+2 uit andere locatie,
+4 komt niet fysiek,
+8 komt niet aan balie,
+16 geen parkeerplaats */
var bez_flags = oRs("bez_bezoekers_flags").Value;
%>
<tr id="trbez<%=next_vis%>">
<td align="center">
<% if (!res_ruimte_extern && oRs("bez_bezoekers_done").Value == null)
{ %>
<i class="fa fa-trash-o fa-lg fa-fw" title="<%=L("lcl_delete")%>" OnClick="deleteVisit(<%=next_vis%>)"></i>
<tr id="trbez<%=next_vis%>">
<td align="center">
<% if (!res_ruimte_extern && oRs("bez_bezoekers_done").Value == null)
{ %>
<i class="fa fa-trash-o fa-lg fa-fw" title="<%=L("lcl_delete")%>" OnClick="deleteVisit(<%=next_vis%>)"></i>
<%
} else {
anydone = true;
}
} else {
anydone = true;
}
%>
<input type="hidden" name="contkey<%=next_vis%>" id="contkey<%=next_vis%>"
value="<%=oRs("prs_contactpersoon_key").Value||-1%>" >
<input type="hidden" name="prskey<%=next_vis%>" id="prskey<%=next_vis%>"
value="<%=oRs("prs_perslid_key").Value||-1%>" >
</td>
<% if (!params.contactonly && (S("bez_sel_contactpersoon") > 0 || S("bez_sel_internpersoon") == 1))
{ %>
<td>
<i class="fa fa-user-o" title="<%=titel%>" onclick=selectPerson(<%=next_vis%>)> </i>
</td>
<% } else if (params.contactonly && S("bez_sel_contactpersoon") > 0) { %>
<td>
<i class="fa fa-lg fa-info-circle details" onclick=showPerson(<%=next_vis%>)> </i>
</td>
<% } %>
<td>
<% // ContactpersoonBedrijfSelected laadt nieuwe flexkenmerken en bijbehorende verplichte flexkenmerk bij personen zorgen er
// ook voor dat personen eventueel verplicht wordt [checkRequiredGroup("10S" + params.suggestid.substr(3))];
// Bij suggestbox met contactpersonen (params.contactonly) geen maximale lengte eis.
var bezreado = res_ruimte_extern || oRs("prs_contactpersoon_key").Value != null || oRs("prs_perslid_key").Value != null
RWFIELD("bez" + next_vis, "fld", "", oRs("bez_afspraak_naam").Value,
{ maxlength: (params.contactonly? null : "30"), readonly: bezreado, html: (params.contactonly? "sgonChange='ContactpersoonBedrijfSelected'" : 'onChange="checkRequiredGroup(\'10S' + next_vis + '\')"') })
<input type="hidden" name="contkey<%=next_vis%>" id="contkey<%=next_vis%>"
value="<%=oRs("prs_contactpersoon_key").Value||-1%>" >
<input type="hidden" name="prskey<%=next_vis%>" id="prskey<%=next_vis%>"
value="<%=oRs("prs_perslid_key").Value||-1%>" >
</td>
<% if (!params.contactonly && (S("bez_sel_contactpersoon") > 0 || S("bez_sel_internpersoon") == 1))
{ %>
<td>
<i class="fa fa-user-o" title="<%=titel%>" onclick=selectPerson(<%=next_vis%>)> </i>
</td>
<% } else if (params.contactonly && S("bez_sel_contactpersoon") > 0) { %>
<td>
<i class="fa fa-lg fa-info-circle details" onclick=showPerson(<%=next_vis%>)> </i>
</td>
<% } %>
<td>
<% // ContactpersoonBedrijfSelected laadt nieuwe flexkenmerken en bijbehorende verplichte flexkenmerk bij personen zorgen er
// ook voor dat personen eventueel verplicht wordt [checkRequiredGroup("10S" + params.suggestid.substr(3))];
// Bij suggestbox met contactpersonen (params.contactonly) geen maximale lengte eis.
var bezreado = res_ruimte_extern || oRs("prs_contactpersoon_key").Value != null || oRs("prs_perslid_key").Value != null
RWFIELD("bez" + next_vis, "fld", "", oRs("bez_afspraak_naam").Value,
{ maxlength: (params.contactonly? null : "30"), readonly: bezreado, html: (params.contactonly? "sgonChange='ContactpersoonBedrijfSelected'" : 'onChange="checkRequiredGroup(\'10S' + next_vis + '\')"') })
%>
</td>
<td>
<% // Bij suggestbox met bedrijven (params.contactonly) geen maximale lengte eis.
RWFIELD("bed" + next_vis, "fld", "", oRs("bez_afspraak_bedrijf").Value,
{ maxlength: (params.contactonly? null : "60"), readonly: bezreado, html: (params.contactonly? "sgonChange='ContactpersoonBedrijfSelected'" : '') } )
</td>
<td>
<% // Bij suggestbox met bedrijven (params.contactonly) geen maximale lengte eis.
RWFIELD("bed" + next_vis, "fld", "", oRs("bez_afspraak_bedrijf").Value,
{ maxlength: (params.contactonly? null : "60"), readonly: bezreado, html: (params.contactonly? "sgonChange='ContactpersoonBedrijfSelected'" : '') } )
%>
</td>
<% if (!alleen_afhandelingskenmerken && S("vis_remark") == 1 || S("vis_remark") == 2)
{
%> <td> <%
RWFIELD("opm" + next_vis, "fld", "", oRs("bez_bezoekers_opmerking").Value, { maxlength: 50 } );
%> </td> <%
}
</td>
<% if (S("vis_remark") == 1 || S("vis_remark") == 2)
{
%> <td> <%
RWFIELD("opm" + next_vis, "fld", "", oRs("bez_bezoekers_opmerking").Value, { maxlength: 50 } );
%> </td> <%
}
%>
<td>
<td>
<!--Gebouw/Terrein-->
<div id="selectprkdiv<%=next_vis%>" name="selectprkdiv<%=next_vis%>" style="display: <%=S("vis_parking_key") != -1 && this_bez.canWritePrk && aantal_gebter == 1? "block" : "none"%>">
<input type="checkbox" id="prk<%=next_vis%>" <%=((bez_flags&16)==16?"disabled=1":"")%> name="prk<%=next_vis%>" <%=oRs("res_rsv_deel_key").Value != null? "CHECKED " : ""%>>
@@ -232,77 +236,82 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
<div style="display: none">
<input type="text" id="prkselect<%=next_vis%>" name="prkselect<%=next_vis%>" value="<%=aantal_gebter > 1? "S" : "C"%>"> <% /* "S"=suggestboxen, "C"=checkboxen */ %>
</div>
<% /* if (S("vis_parking_key") != -1 && this_bez.canWritePrk) CHECKBOX("", "prk" + next_vis, oRs("res_rsv_deel_key").value != null) */ %>
</td>
<% if (S("bez_set_remote_flags") > 0) // Authorisatie?
{ %>
<td align="center">
<input type="checkbox" id="remote<%=next_vis%>" name="remote<%=next_vis%>" <%=(bez_flags&S("bez_set_remote_flags")) == S("bez_set_remote_flags")? "CHECKED " : ""%>>
</td>
<% } %>
<% if (!alleen_afhandelingskenmerken && (S("vis_bo_uses_badgenrs") == 1))
{ %>
<td align="left"><input type="<%=backo?"text":"hidden"%>" class="fldbadge" name="bdg<%=next_vis%>" maxlength="30" value="<%=safe.htmlattr(oRs("bez_bezoekers_pasnr").Value)%>"></td>
<% } %>
<% var ptmpfolder;
if (S("bez_max_flex_on_line") > 0)
{
ptmpfolder = generateFlexKenmerkCode ({ urole: urole,
bez_key : oRs("bez_bezoekers_key").Value,
afspraak_key: afspraak_key,
reado: false,
flexcolumns: S("bez_flexcolumns"),
beznum: next_vis,
requiredbyfield: "bez" + next_vis,
notr: true,
flexend: parseInt(S("bez_max_flex_on_line"), 10),
nolabel: true,
getTmpfolder: true, // Geef de tijdelijke folder terug waar bestanden zijn opgeslagen.
filter: flexfilter
});
}
<% /* if (S("vis_parking_key") != -1 && this_bez.canWritePrk) CHECKBOX("", "prk" + next_vis, oRs("res_rsv_deel_key").value != null) */ %>
</td>
<% if (S("bez_set_remote_flags") > 0) // Authorisatie?
{ %>
<td align="center">
<input type="checkbox" id="remote<%=next_vis%>" name="remote<%=next_vis%>" <%=(bez_flags&S("bez_set_remote_flags")) == S("bez_set_remote_flags")? "CHECKED " : ""%>>
</td>
<% } %>
<% if (S("vis_bo_uses_badgenrs") == 1)
{ %>
<td align="left"><input type="<%=backo?"text":"hidden"%>" class="fldbadge" name="bdg<%=next_vis%>" maxlength="30" value="<%=safe.htmlattr(oRs("bez_bezoekers_pasnr").Value)%>"></td>
<% } %>
<% var ptmpfolder;
if (S("bez_max_flex_on_line") > 0)
{
ptmpfolder = generateFlexKenmerkCode ({ urole: urole,
bez_key : oRs("bez_bezoekers_key").Value,
afspraak_key: afspraak_key,
reado: false,
flexcolumns: S("bez_flexcolumns"),
beznum: next_vis,
requiredbyfield: "bez" + next_vis,
notr: true,
flexend: parseInt(S("bez_max_flex_on_line"), 10),
nolabel: true,
getTmpfolder: true, // Geef de tijdelijke folder terug waar bestanden zijn opgeslagen.
filter: flexfilter_afhandel_default,
hidedefault: true
});
}
%>
</tr>
<tr id="trbez<%=next_vis%>flex"><td></td>
<% if (S("bez_sel_contactpersoon") > 0 || (!params.contactonly && S("bez_sel_internpersoon") == 1))
{ %>
<td></td>
<% } %>
<td colspan="2">
<div class="bezflex">
<table id="bezFlexListB<%=next_vis%>"><tbody>
</tr>
<tr id="trbez<%=next_vis%>flex"><td></td>
<% if (S("bez_sel_contactpersoon") > 0 || (!params.contactonly && S("bez_sel_internpersoon") == 1))
{ %>
<td></td>
<% } %>
<td colspan="2">
<div class="bezflex">
<table id="bezFlexListB<%=next_vis%>">
<tbody>
<%
generateFlexKenmerkCode ({ urole: urole,
bez_key : oRs("bez_bezoekers_key").Value,
afspraak_key: afspraak_key,
reado: false,
flexcolumns: S("bez_flexcolumns"),
beznum: next_vis,
requiredbyfield: "bez" + next_vis,
flexstart: parseInt(S("bez_max_flex_on_line"), 10) + 1,
tmpfolder: ptmpfolder, // Als er een tijdelijke folder bekend is dan deze meegeven.
filter: flexfilter
});
generateFlexKenmerkCode ({ urole: urole,
bez_key : oRs("bez_bezoekers_key").Value,
afspraak_key: afspraak_key,
reado: false,
flexcolumns: S("bez_flexcolumns"),
beznum: next_vis,
requiredbyfield: "bez" + next_vis,
flexstart: parseInt(S("bez_max_flex_on_line"), 10) + 1,
tmpfolder: ptmpfolder, // Als er een tijdelijke folder bekend is dan deze meegeven.
filter: flexfilter_afhandel_default,
hidedefault: true
});
%>
</tbody></table>
<input type=hidden id="bez_key<%=next_vis%>" name="bez_key<%=next_vis%>" value="<%=oRs("bez_bezoekers_key").Value%>">
<div id="bezFlexListA<%=next_vis%>" style="display:none"></div>
</div>
</td>
</tr>
<% next_vis++;
oRs.MoveNext();
}
} %>
</tbody>
</table>
<input type=hidden id="bez_key<%=next_vis%>" name="bez_key<%=next_vis%>" value="<%=oRs("bez_bezoekers_key").Value%>">
<div id="bezFlexListA<%=next_vis%>" style="display:none"></div>
</div>
</td>
</tr>
<% next_vis++;
oRs.MoveNext();
}
} %>
<tr><td>
<tr>
<td>
<input type='hidden' id='next_vis' name='next_vis' value=<%=next_vis%>>
<% if (anydone) { /* dan niet meer import-vervang */ %>
<input type="hidden" id="anydone" value="1">
<% } %>
</td></tr>
<% if (anydone) { /* dan niet meer import-vervang */ %>
<input type="hidden" id="anydone" value="1">
<% } %>
</td>
</tr>
</table>
</div>
<style>
@@ -314,12 +323,12 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
buttons = [{ title: L("lcl_more_vis"), icon: "plus.png", action: "more_visit(" + S("vis_increment_number") + ")", id:"btn_bez_morevis" }];
if (!params.contactonly)
buttons.push({ title: L("lcl_bez_import_lijst"), icon: "bezimport.png", action: "import_visit()", id:"btn_bez_import" })
%><div id="morebuttons"><%
if (!res_ruimte_extern)
CreateButtons(buttons, { showIcons: true });
%> <div id="morebuttons"><%
if (!res_ruimte_extern)
CreateButtons(buttons, { showIcons: true });
%> </div><%
}
%>
</div>
<script type="text/javascript">
more_visit(<%=params.autoadd || 0%>);
var vis_parking_key = <%=S("vis_parking_key")%>;
@@ -328,12 +337,12 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
var bez_sel_contactpersoon = <%=S("bez_sel_contactpersoon")%>;
// Aantal kolommen zonder de flexkenmerken.
var aantal_std_td = 4 + <%=((S("bez_sel_contactpersoon") > 0 || (!params.contactonly && S("bez_sel_internpersoon") == 1)) ? 1 : 0)%>
+ <%=((S("vis_bo_uses_badgenrs") == 1) && !alleen_afhandelingskenmerken ? 1 : 0)%>
+ <%=((S("vis_remark") == 1 || S("vis_remark") == 2) && !alleen_afhandelingskenmerken ? 1 : 0)%>
+ <%=((S("vis_bo_uses_badgenrs") == 1) ? 1 : 0)%>
+ <%=((S("vis_remark") == 1 || S("vis_remark") == 2) ? 1 : 0)%>
+ <%=((S("bez_set_remote_flags") > 0)? 1 : 0)%>;
<% if (params.contactonly) { /* automatisch contactpersonificeren */ %>
makeContactSuggest();
<% } %>
<% if (params.contactonly) { /* automatisch contactpersonificeren */ %>
makeContactSuggest();
<% } %>
<% if (params.contactonly)
{ %>
@@ -376,7 +385,7 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
Bij suggestbox met contactpersonen/bedrijven (params.contactonly) geen maximale lengte eis. */ %>
ih.insertCell(-1).innerHTML = '<input type="text" class="fld" name="bez' + next_vis + '" id="bez' + next_vis + '" <% if (!params.contactonly) {%> onChange="checkRequiredGroup(\'10S' + next_vis + '\')" <% } %> <%=params.contactonly? 'sgonChange="ContactpersoonBedrijfSelected"' : 'maxlength="30" onChange="checkRequiredGroup(\\\'10S' + next_vis + '\\\')"'%>>';
ih.insertCell(-1).innerHTML = '<input type="text" class="fld" name="bed' + next_vis + '" id="bed' + next_vis + '" <%=params.contactonly? 'sgonChange="ContactpersoonBedrijfSelected"' : 'maxlength="60"'%>>';
<% if (!alleen_afhandelingskenmerken && S("vis_remark") == 1 || S("vis_remark") == 2)
<% if (S("vis_remark") == 1 || S("vis_remark") == 2)
{ %>
ih.insertCell(-1).innerHTML = '<input type="text" class="fld" name="opm' + next_vis + '" id="opm' + next_vis + '" maxlength="50">';
<% } %>
@@ -394,7 +403,7 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
cell.innerHTML = '<input type="checkbox" class="fldcheck" name="remote'+next_vis+'">';
cell.align = 'center';
<% } %>
<% if (!alleen_afhandelingskenmerken && (S("vis_bo_uses_badgenrs") == 1))
<% if (S("vis_bo_uses_badgenrs") == 1)
{ %>
ih.insertCell(-1).innerHTML = '<input type="<%=backo?"text":"hidden"%>" class="fldbadge" name="bdg'+next_vis+'" maxlength="30">';
<% } %>

View File

@@ -326,9 +326,12 @@ function saveOneBezoeker(afspraak_key, rsv_ruimte_key, bznum, params)
{ dbs: "prs_perslid_key", typ: "key", frm: "prskey" + bznum, track: L("lcl_intern_pers"), foreign: "prs_perslid" },
{ dbs: "bez_afspraak_naam", typ: "varchar", val: beznaam, track: L("lcl_vis_name"), len: 30 },
{ dbs: "bez_afspraak_bedrijf", typ: "varchar", val: bed, track: L("lcl_vis_company") + (S("bez_sel_internpersoon") == 1? "/" + L("lcl_department") : ""), len: 60 },
{ dbs: "bez_bezoekers_pasnr", typ: "varchar", val: bdg, track: L("lcl_vis_badgenr") },
{ dbs: "bez_bezoekers_opmerking", typ: "varchar", val: opm, track: L("lcl_vis_remark") }
{ dbs: "bez_bezoekers_pasnr", typ: "varchar", val: bdg, track: L("lcl_vis_badgenr") }
];
if (S("vis_remark") == 1 || S("vis_remark") == 2) // voorkom dat hij wordt gewist bij vis_remark==3 (readonly)
{
bezfields.push({ dbs: "bez_bezoekers_opmerking", typ: "varchar", val: opm, track: L("lcl_vis_remark") });
}
if (bez_key == -1)
{

View File

@@ -48,7 +48,7 @@ function getSqlBezFlex(bez_key, filter)
+ " FROM bez_kenmerk k "
+ " WHERE k.bez_kenmerk_verwijder IS NULL "
+ (filter.length > 0 ? " AND " + filter.join(" AND ") : "")
+ "ORDER BY k.bez_kenmerk_volgnr, "
+ " ORDER BY k.bez_kenmerk_volgnr, "
+ lcl.xsql('k.bez_kenmerk_omschrijving', 'k.bez_kenmerk_key');
}
@@ -70,17 +70,23 @@ function generateFlexKenmerkCode(params)
var nolabel = params.nolabel;
var tmpfolder = params.tmpfolder;
var filter = params.filter;
var hidedefault = params.hidedefault; // Afhandelingskenmerken >= 900 met een default waarde hidden maken.
function isReadonly (volgnummer) //??
{ // Backo mag kenmerken < 900 wel zien maar niet wijzigen. Kenmerken > 900 mag hij wel wijzigen.
// Zie ook load_kenmerk.asp en bez_edit_bezoekers.inc
if (reado)
return true
else
{
var backo = !user.has("WEB_BEZFOF");
return (ispopup && backo && volgnummer < 900)
}
function isReadonly (volgnummer)
{ // Backo mag kenmerken < 900 wel zien maar niet wijzigen. Kenmerken > 900 mag hij wel wijzigen.
// Zie ook load_kenmerk.asp en bez_edit_bezoekers.inc
if (reado)
return true
else
{
var backo = !user.has("WEB_BEZFOF");
return (ispopup && backo && volgnummer < 900)
}
}
function isHidden (volgnummer, defaultval)
{ // Afhandelingskenmerken met een default waarde hidden weergeven zodat ze wel opgeslagen worden (kenmerken >= 900 en default is niet null).
return (volgnummer >= 900 && defaultval != null);
}
var sql = getSqlBezFlex(bez_key, filter);
@@ -94,6 +100,7 @@ function generateFlexKenmerkCode(params)
label_colspan: ((notr || ispopup) ? null : (params.mobile? 1 : (S("bez_sel_contactpersoon") > 0 || S("bez_sel_internpersoon")? 3 : 2)) ),
kenmerk_search: advanced,
fnIsReadonly: isReadonly,
fnIsHidden: (hidedefault? isHidden : null),
prs_key: prs_key, // Wordt alleen gebruikt als geldt (!kenmerk_search && !multiMode)
cont_key: cont_key, // Wordt alleen gebruikt als geldt (!kenmerk_search && !multiMode)
parentKey: bez_key,

View File

@@ -200,8 +200,7 @@ function bez_list(pautfunction, params)
var todayString = "<%=toDateString(new Date())%>";
var hasKenmerk = (<%=hasKenmerk%> != 0);
var s_vis_remark = <%=S("vis_remark")%>;
var s_bez_show_progress_prop = <%=S("bez_show_progress_prop")%>; // Setting: Tonen afhandelings kenmerken (>900) voor bezoekers {0=nooit | 1=popup tijdens inchecken bezoekers(default) | 2=Inline actie}
var s_bez_show_progress_prop = <%=S("bez_show_progress_prop")%>; // Setting: Tonen afhandelings kenmerken (>900) voor bezoekers {0=nooit | 1=popup tijdens inchecken bezoekers(default) | 2=Inline actie | 4=Uitsluitend tonen in popup}
</script>
</head>
<body id="listbody">

View File

@@ -41,8 +41,12 @@ var alleen_afhandelingskenmerken = (!user.has("WEB_BEZBOF") || ( (S("bez_show_pr
var backo = user.has("WEB_BEZBOF");
var flexfilter = [];
var hidedefault = false; // Verberg default afhandelingskenmerken.
if (!backo || alleen_afhandelingskenmerken)
flexfilter = ["k.bez_kenmerk_volgnr < 900 "];
{
flexfilter = ["(k.bez_kenmerk_volgnr < 900 OR (k.bez_kenmerk_volgnr >= 900 AND k.bez_kenmerk_default IS NOT NULL))"];
hidedefault = true;
}
generateFlexKenmerkCode ({ urole: getQParamSafe("urole"),
bez_key: getQParamInt("bez_key", -1), // Bezoekers key
@@ -58,7 +62,8 @@ generateFlexKenmerkCode ({ urole: getQParamSafe("urole"),
notr: notr,
nolabel: getQParamInt("notr", 0) == 1,
tmpfolder: getQParam("tmpfolder", null),
filter: flexfilter
filter: flexfilter,
hidedefault: hidedefault // Afhandelingskenmerken >= 900 met een default waarde hidden maken.
});
if (!notr)

View File

@@ -530,6 +530,7 @@ ins = {checkAutLevel:
var beheerder_key = ioRs("prs_perslid_key_beh").value;
var objectbeheerder = S("ins_can_edit_own_objects") && (beheerder_key == user_key);
var fronto = params && params.urole? params.urole == "fo" : false;
var isSleCil = (srtgroep_key == S("sle_ins_srt_groep_key") || srtgroep_key == S("cil_ins_srt_groep_key"));
if (isSleCil)
{
@@ -552,7 +553,7 @@ ins = {checkAutLevel:
iresult.canDelete = writeslebof; // Verwijderen
iresult.canChange = writeslebof; // Wijzigen
iresult.canChangeOwn = objectbeheerder;
iresult.canChangeAlg = iresult.canChange; // Wijzigen algemene gegevens
iresult.canChangeAlg = iresult.canChange && !fronto; // Wijzigen algemene gegevens
iresult.canCopy = writeslebof; // Kopi<70>ren
iresult.isSleCil = true;
}
@@ -560,14 +561,15 @@ ins = {checkAutLevel:
{
var iresult = ins.func_enabled_scope(ioRs("ins_discipline_key").Value,
ioRs("ins_alg_ruimte_type").Value,
ioRs("ins_alg_ruimte_key").Value);
ioRs("ins_alg_ruimte_key").Value,
params);
if (!iresult)
return { canReadAny: false }; // Aanroeper moet hier (of andere canFunctie) op controleren
// Vanuit PDA wordt dan eventueel met melding (of reservering) op dit object
// Daarom niet al te hard er uit klappen hier.
iresult.canReadAny = true;
iresult.canChange = iresult.canChange;
iresult.canChangeOwn = (iresult.readuse || iresult.readman) && objectbeheerder;
iresult.canChange = iresult.canChange || iresult.canChangeOwn;
iresult.writeslebof = false;
iresult.writeslefof = false;
@@ -892,9 +894,10 @@ ins = {checkAutLevel:
func_enabled_scope: // Wat mag ik zoal op deze specifieke scope?
// levert null als zelfs nog geen leesrechten
function (ins_discipline_key, ins_alg_ruimte_type, ins_alg_ruimte_key)
function (ins_discipline_key, ins_alg_ruimte_type, ins_alg_ruimte_key, params)
{
var iresult = {canDelete: false, canChange: false}; // Verwijderen en Wijzigen
var fronto = params && params.urole? params.urole == "fo" : false;
if (ins_alg_ruimte_type == "A")
{
var afd_key = ins_alg_ruimte_key;
@@ -915,10 +918,10 @@ ins = {checkAutLevel:
iresult.writefof = canWriteINSFOF;
iresult.canDelete = canWriteINSMAN; // Verwijderen
iresult.canChange = canWriteINSMAN || canWriteINSUSE; // Wijzigen
iresult.canChangeAlg = canWriteINSMAN; // Wijzigen algemene gegevens
iresult.canChangeAlg = canWriteINSMAN && !fronto; // Wijzigen algemene gegevens
iresult.canCopy = canWriteINSMAN; // Kopi<70>ren
}
else if (ins_alg_ruimte_type == "P")
else if (ins_alg_ruimte_type == "P" || ins_alg_ruimte_type == "C")
{
iresult = user.func_enabled("INS",
ins_discipline_key,
@@ -933,7 +936,7 @@ ins = {checkAutLevel:
iresult.writefof = iresult.canWrite("WEB_INSFOF");
iresult.canDelete = iresult.canWrite("WEB_INSMAN"); // Verwijderen
iresult.canChange = iresult.canWrite("WEB_INSMAN") || iresult.canWrite("WEB_INSUSE"); // Wijzigen
iresult.canChangeAlg = iresult.canWrite("WEB_INSMAN"); // Wijzigen algemene gegevens
iresult.canChangeAlg = iresult.canWrite("WEB_INSMAN") && !fronto; // Wijzigen algemene gegevens
iresult.canCopy = iresult.canWrite("WEB_INSMAN"); // Kopi<70>ren
}
else
@@ -976,7 +979,7 @@ ins = {checkAutLevel:
iresult.writefof = iresult.canWrite("WEB_INSFOF");
iresult.canDelete = iresult.canWrite("WEB_INSMAN"); // Verwijderen.
iresult.canChange = iresult.canWrite("WEB_INSMAN") || iresult.canWrite("WEB_INSUSE"); // Wijzigen.
iresult.canChangeAlg = iresult.canWrite("WEB_INSMAN"); // Wijzigen algemene gegevens.
iresult.canChangeAlg = iresult.canWrite("WEB_INSMAN") && !fronto; // Wijzigen algemene gegevens.
iresult.canCopy = iresult.canWrite("WEB_INSMAN"); // Kopi<70>ren.
}
// Let op: WEB_INSMSU is niet discipline gebonden en zit dus niet in iresult
@@ -2091,11 +2094,11 @@ ins = {checkAutLevel:
else if (inspSoon) // Binnenkort is aangevinkt.
{
if (dtsoonfrom != null && dtsoonto != null) // Binnenkort.
sql = "SELECT * FROM (" + sql + ") x WHERE COALESCE(ins_deelsrtcontrole_plandatum, inspectie_next) BETWEEN " + dtsoonfrom.toSQL(true) + " AND " + dtsoonto.toSQL(true) + (sqlBC != ''? " OR " + sqlBC : "");
sql = "SELECT * FROM (" + sql + ") x WHERE (COALESCE(ins_deelsrtcontrole_plandatum, inspectie_next) BETWEEN " + dtsoonfrom.toSQL(true) + " AND " + dtsoonto.toSQL(true) + (sqlBC != ''? " OR " + sqlBC : "") + ")";
else if (dtsoonfrom == null && dtsoonto != null) // Te laat + binnenkort.
sql = "SELECT * FROM (" + sql + ") x WHERE COALESCE(ins_deelsrtcontrole_plandatum, inspectie_next) < " + dtsoonto.toSQL(true) + (sqlBC != ''? " OR " + sqlBC : "");
sql = "SELECT * FROM (" + sql + ") x WHERE (COALESCE(ins_deelsrtcontrole_plandatum, inspectie_next) < " + dtsoonto.toSQL(true) + (sqlBC != ''? " OR " + sqlBC : "") + ")";
else if (dtsoonfrom != null && dtsoonto == null) // Binnenkort + toekomst.
sql = "SELECT * FROM (" + sql + ") x WHERE COALESCE(ins_deelsrtcontrole_plandatum, inspectie_next) >= " + dtsoonfrom.toSQL(true) + (sqlBC != ''? " OR " + sqlBC : "");
sql = "SELECT * FROM (" + sql + ") x WHERE (COALESCE(ins_deelsrtcontrole_plandatum, inspectie_next) >= " + dtsoonfrom.toSQL(true) + (sqlBC != ''? " OR " + sqlBC : "") + ")";
else if (dtsoonfrom == null && dtsoonto == null)
sql = "SELECT * FROM (" + sql + ") x WHERE 1 = 1"; // Alles tonen onafhankelijk van sqlBC.
}
@@ -2333,6 +2336,14 @@ ins = {checkAutLevel:
var toyear = params.toyear;
var groupby = params.groupby;
var deel = params.deel;
var fitness_score1_from = params.fitness_score1_from;
var fitness_score1_through = params.fitness_score1_through;
var fitness_score1_from_neg = params.fitness_score1_from_neg;
var fitness_score1_through_neg = params.fitness_score1_through_neg;
var fitness_score1_from_pos = params.fitness_score1_from_pos;
var fitness_score1_through_pos = params.fitness_score1_through_pos;
var priority_score2_from = params.priority_score2_from;
var priority_score2_through = params.priority_score2_through;
var mjbMoved = params.mjbMoved;
var mjbFreezed = params.mjbFreezed;
var mjbXcped = params.mjbXcped;
@@ -2810,7 +2821,10 @@ ins = {checkAutLevel:
+ " , g.alg_gebouw_key"
+ " , dl.ins_deel_omschrijving"
+ " , dl.ins_deel_mjb_score1"
+ " , isd.ins_srtdeel_mjb_grensscore1"
+ " , dl.ins_deel_mjb_score2"
+ " , l.alg_locatie_mjb_score1"
+ " , g.alg_gebouw_mjb_score1"
+ " , cy.ins_deel_aantal"
+ " , cy.ins_srtdeel_eenheid"
+ " , dl.ins_deel_opmerking"
@@ -2911,6 +2925,9 @@ ins = {checkAutLevel:
+ " , cv.ins_deel_omschrijving"
+ " , cv.ins_deel_mjb_score1"
+ " , cv.ins_deel_mjb_score2"
+ " , cv.ins_srtdeel_mjb_grensscore1"
+ " , cv.alg_locatie_mjb_score1"
+ " , cv.alg_gebouw_mjb_score1"
+ " , cv.ins_deel_aantal"
+ " , cv.ins_srtdeel_eenheid"
+ " , cv.ins_deel_opmerking"
@@ -3008,12 +3025,15 @@ ins = {checkAutLevel:
fields.push("alg_district_omschrijving");
if (groupby == 2 || groupby == 3)
{
if (groupby == 2)
fields.push("alg_locatie_mjb_score1");
fields.push("alg_locatie_key");
fields.push("alg_locatie_omschrijving");
if (groupby == 3)
{
fields.push("alg_gebouw_key");
fields.push("alg_gebouw_omschrijving");
fields.push("alg_gebouw_mjb_score1");
}
}
}
@@ -3030,6 +3050,7 @@ ins = {checkAutLevel:
fields.push("ins_deel_aantal");
fields.push("ins_srtdeel_eenheid");
fields.push("ins_deel_mjb_score1");
fields.push("ins_srtdeel_mjb_grensscore1");
fields.push("ins_deel_mjb_score2");
}
@@ -3074,6 +3095,54 @@ ins = {checkAutLevel:
sql += " WHERE ins_scenario_key = 1";
}
// Conditie score.
// Niet gemeten objecten doen wel mee in dit filter. Deze objecten worden dus niet getoond als er een waarde is ingevuld.
if (fitness_score1_from > 0)
sql += " AND ins_deel_mjb_score1 >= " + fitness_score1_from;
if (fitness_score1_through > 0)
sql += " AND ins_deel_mjb_score1 <= " + fitness_score1_through;
// Negatieve afwijking (=dus slechter) van de conditiescore (ins_deel_mjb_score1) in hele getallen t.o.v. de norm (ins_srtdeel_mjb_grensscore1) .
// Wanneer een element NIET is gemeten (conditiemeting is niet geweest) dan is ins_deel_score1 LEEG,
// Dan doet het elelement niet mee in het filter "afwijking". Want er is dan per defintie geen afwijking, omdat dit niet bekend is.
var fitness_score1_neg = [];
if (fitness_score1_from_neg > 0 || fitness_score1_through_neg > 0)
{
if (fitness_score1_from_neg > 0)
fitness_score1_neg.push("ins_deel_mjb_score1 >= (ins_srtdeel_mjb_grensscore1 + " + fitness_score1_from_neg + ")");
if (fitness_score1_through_neg > 0)
{
fitness_score1_neg.push("ins_deel_mjb_score1 <= (ins_srtdeel_mjb_grensscore1 + " + fitness_score1_through_neg + ")");
if (fitness_score1_from_neg == -1)
fitness_score1_neg.push("ins_deel_mjb_score1 > ins_srtdeel_mjb_grensscore1");
}
sql += "AND ((" + fitness_score1_neg.join(" AND ") + ") OR ins_srtdeel_mjb_grensscore1 IS NULL)"
}
// Positieve afwijking (=dus beter) van de conditiescore (ins_deel_mjb_score1) in hele getallen t.o.v. de norm (ins_srtdeel_mjb_grensscore1) .
// Wanneer een element NIET is gemeten (conditiemeting is niet geweest) dan is ins_deel_score1 LEEG,
// Dan doet het elelement niet mee in het filter "afwijking". Want er is dan per defintie geen afwijking, omdat dit niet bekend is.
var fitness_score1_pos = [];
if (fitness_score1_from_pos > 0 || fitness_score1_through_pos > 0)
{
if (fitness_score1_from_pos > 0)
fitness_score1_pos.push("ins_deel_mjb_score1 <= (ins_srtdeel_mjb_grensscore1 - " + fitness_score1_from_pos + ")");
if (fitness_score1_through_pos > 0)
{
fitness_score1_pos.push("ins_deel_mjb_score1 >= (ins_srtdeel_mjb_grensscore1 - " + fitness_score1_through_pos + ")");
if (fitness_score1_from_pos == -1)
fitness_score1_pos.push("ins_deel_mjb_score1 < ins_srtdeel_mjb_grensscore1");
}
sql += "AND ((" + fitness_score1_pos.join(" AND ") + ") OR ins_srtdeel_mjb_grensscore1 IS NULL)"
}
// Prioriteitsscore.
// Niet gemeten objecten doen wel mee in dit filter. Deze objecten worden dus niet getoond als er een waarde is ingevuld.
if (priority_score2_from > 0)
sql += " AND ins_deel_mjb_score2 >= " + priority_score2_from;
if (priority_score2_through > 0)
sql += " AND ins_deel_mjb_score2 <= " + priority_score2_through;
if (fulldetails && sqlArray.length)
sql += " AND ((" + sqlArray.join(") OR (") + "))";

View File

@@ -26,7 +26,7 @@ var copy = (getQParamInt("ins_copy", 0) == 1);
var disc = getQParamInt("disc", -1);
// OVERIGE PARAMETERS
var transitParam = buildTransitParam(["parent_key", "disc", "Group", "sort", "dept", "prs_key", "ins_copy",
var transitParam = buildTransitParam(["parent_key", "disc", "Group", "sort", "dept", "prs_key", "cntprs_key", "ins_copy",
"locatiekey", "gebouwkey", "verdiepingkey", "ruimtekey", "werkplekkey"]);
var ins_name = "";
@@ -177,17 +177,17 @@ if (ins_key > 0)
var authparamsMLDBOF = user.checkAutorisation("WEB_MLDBOF", true);
var authparamsMLDFOF = user.checkAutorisation("WEB_MLDFOF", true);
var authparamsMLDBAC = user.checkAutorisation("WEB_MLDBAC", true);
if (!ins_deleted && ins_key > 0 && gevuldLogboek && !copy && (authparamsMLDBOF ||authparamsMLDFOF || authparamsMLDBAC))
{
var murole = "bo";
if (authparamsMLDBOF)
murole = "bo";
else if (authparamsMLDFOF)
murole = "fo";
murole = "fo";
else if (authparamsMLDBAC)
murole = "mi";
murole = "mi";
page = "../mld/mld_search_list.asp?ins_key=" + ins_key + "&tiny=1&urole=" + murole;
IFRAMER("insMldframe", page, { initHide: true } );
}

View File

@@ -26,6 +26,7 @@
<%
FCLTHeader.Requires({plugins:["jQuery"], js: []})
var has_rsvdeel = false;
var rsv_deel_key = getQParamInt("rsv_deel_key", -1); // We komen uit een bestaande reservering
if (rsv_deel_key > 0)
{
@@ -102,6 +103,7 @@ if (obj_key > 0)
var default_prs_key = null;
var restxt = "";
var hasreservering = false;
var has_rsvdeel = (rsv_deel_key > 0) && !isLendOut;
var res_rsv_deel_key = null;
// Is het object ook reserveerbaar?
var sql = "SELECT res_deel_key,"
@@ -148,11 +150,6 @@ if (obj_key > 0)
}
oRs2.Close();
}
if (rsv_deel_key > 0)
{
restxt = ""; // Dat weet je dan wel: aangeroepen vanuit reservering.
hasreservering = false;
}
}
oRs.Close();
@@ -428,6 +425,7 @@ else
readonly: isLendOut
});
else
if (!has_rsvdeel)
FCLTpersoonselector("lent_out_person", // requestor
"sglent_out_person",
{ perslidKey: (isLendOut? algprs_key : default_prs_key),

View File

@@ -23,6 +23,7 @@
<!-- #include file="../Shared/afdelingselector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<!-- #include file="../Shared/contactpersoonselector.inc" -->
<!-- #include file="../Shared/disciplineselector.inc" -->
<!-- #include file="../Shared/srtgroepselector.inc" -->
<!-- #include file="../Shared/srtdeelselector.inc" -->
@@ -58,7 +59,7 @@ if (copy)
if (ins_key > 0)
{
var this_ins = ins.func_enabled_deel(ins_key);
var this_ins = ins.func_enabled_deel(ins_key, {urole: urole});
user.auth_required_or_abort(this_ins.canChange || this_ins.canChangeOwn); // dat is toch wel het minste
authparams = this_ins.authparams(autfunction);
@@ -77,6 +78,7 @@ else // nieuw object
var o_workpl_key = getQParamInt("werkplekkey", -1);
var o_dep_key = getQParamInt("dept", -1);
var o_perslid_key = getQParamInt("prs_key", -1);
var o_cntpers_key = getQParamInt("cntprs_key", -1);
var actief = true;
if ((srtdeel_key > 0 && ins.isSleCil(srtdeel_key, "S")) ||
@@ -137,6 +139,12 @@ var ins_deel_aantal = 1;
bind = "P";
}
if (o_cntpers_key > 0)
{
bind_key = o_cntpers_key;
bind = "C";
}
if (o_workpl_key > 0)
{
bind_key = o_workpl_key;
@@ -198,6 +206,7 @@ var ins_deel_aantal = 1;
+ " , d.ins_deel_actief"
+ " , d.ins_deel_mjb_score1"
+ " , d.ins_deel_mjb_score2"
+ " , s.ins_srtdeel_mjb_grensscore1"
+ " FROM ins_deel d"
+ " , ins_srtdeel s"
+ " , ins_srtgroep g"
@@ -240,6 +249,7 @@ var ins_deel_aantal = 1;
+ " , " + lcl.xsqla('s.ins_srtdeel_eenheid', 's.ins_srtdeel_key')
+ " , d.ins_deel_mjb_score1"
+ " , d.ins_deel_mjb_score2"
+ " , s.ins_srtdeel_mjb_grensscore1"
+ " FROM ins_deel d"
+ " , ins_srtdeel s"
+ " , ins_srtgroep g"
@@ -279,6 +289,7 @@ var ins_deel_aantal = 1;
+ " , " + lcl.xsqla('s.ins_srtdeel_eenheid', 's.ins_srtdeel_key')
+ " , NULL ins_deel_mjb_score1"
+ " , NULL ins_deel_mjb_score2"
+ " , NULL ins_srtdeel_mjb_grensscore1"
+ " FROM ins_srtdeel s"
+ " , ins_srtgroep g"
+ " , ins_tab_discipline dis"
@@ -334,6 +345,7 @@ var ins_deel_aantal = 1;
autonum = oRs("ins_disc_params_autonum").Value;
mjb_score1 = oRs("ins_deel_mjb_score1").Value;
mjb_score2 = oRs("ins_deel_mjb_score2").Value;
ins_srtdeel_mjb_grensscore1 = oRs("ins_srtdeel_mjb_grensscore1").Value;
oRs.close();
@@ -403,13 +415,14 @@ var ins_deel_aantal = 1;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
o_loc_key = oRs("alg_locatie_key").Value;
o_bld_key = oRs("alg_gebouw_key").Value;
o_floor_key = oRs("alg_verdieping_key").Value;
o_room_key = oRs("alg_ruimte_key").Value;
o_workpl_key = oRs("prs_werkplek_key").Value;
o_dep_key = -1;
o_perslid_key= -1;
o_loc_key = oRs("alg_locatie_key").Value;
o_bld_key = oRs("alg_gebouw_key").Value;
o_floor_key = oRs("alg_verdieping_key").Value;
o_room_key = oRs("alg_ruimte_key").Value;
o_workpl_key = oRs("prs_werkplek_key").Value;
o_dep_key = -1;
o_perslid_key = -1;
o_cntpers_key = -1;
// gracefull terugvallen nav. DHLN#18851
// In theorie kan dit ook een probleem zijn voor andere bindings
@@ -426,7 +439,7 @@ var ins_deel_aantal = 1;
if (bind == 'A')
{
o_perslid_key = -1;
o_dep_key = bind_key;
o_dep_key = bind_key;
}
if (bind == 'P')
{
@@ -439,6 +452,12 @@ var ins_deel_aantal = 1;
oRs = Oracle.Execute(sql);
o_dep_key = oRs("prs_afdeling_key").Value;
}
if (bind == 'C')
{
o_cntpers_key = bind_key;
o_perslid_key = -1;
o_dep_key = -1;
}
o_loc_key = o_bld_key = o_floor_key = o_room_key = o_workpl_key = -1;
}
}
@@ -500,7 +519,9 @@ var ins_deel_aantal = 1;
<body id="editbody">
<%
var buttons = [];
if (urole == "bo")
// In de frontoffice (uitgeleende objecten) mode kunnen alleen de flexkenmerken aangepast worden.
// Zijn er wel uitleen kenmerken anders hoeft de wijzig knop niet getoond te worden.
if (urole == "bo" || (urole == "fo" && uitleen_flex_present))
buttons.push( {title: L("lcl_submit"), action:"checkInput()", icon: "opslaan.png" })
buttons.push( {title: L("lcl_cancel"), action:"ins_cancel()", icon: "undo.png" } );
@@ -517,11 +538,16 @@ var ins_deel_aantal = 1;
// Als o_perslid_key een waarde heeft dan krijgt o_dep_key ook een waarde. De afdeling van een persoon wordt altijd erbij gezocht.
// Daarom alleen invalid binding via o_dep_key als o_perslid_key geen waarde heeft.
var invalid_binding = ((!(srtdeel_binding & (BIND_AFDELI)) && o_dep_key > 0 && o_perslid_key < 0) ||
(!(srtdeel_binding & (BIND_PERSOO)) && o_perslid_key > 0) ||
(!(srtdeel_binding & (BIND_TERREI)) && o_bld_key > 0 && !(srtdeel_binding & (BIND_RUIMTE)) && !(srtdeel_binding & (BIND_WERKPL))) ||
(!(srtdeel_binding & (BIND_RUIMTE)) && o_room_key > 0 && !(srtdeel_binding & (BIND_WERKPL))) ||
(!(srtdeel_binding & (BIND_WERKPL)) && o_workpl_key > 0))
var invalid_binding = (((!(srtdeel_binding & (BIND_AFDELI)) && o_dep_key > 0 && o_perslid_key < 0) ||
(!(srtdeel_binding & (BIND_PERSOO)) && o_perslid_key > 0) ||
(!(srtdeel_binding & (BIND_TERREI)) && o_bld_key > 0 && !(srtdeel_binding & (BIND_RUIMTE)) && !(srtdeel_binding & (BIND_WERKPL))) ||
(!(srtdeel_binding & (BIND_RUIMTE)) && o_room_key > 0 && !(srtdeel_binding & (BIND_WERKPL))) ||
(!(srtdeel_binding & (BIND_WERKPL)) && o_workpl_key > 0)) && !isLendOut) ||
(((!(srtdeel_binding & (BIND_AFDELI)) && org_bind_key > 0 && org_bind == "A") ||
(!(srtdeel_binding & (BIND_PERSOO)) && org_bind_key > 0 && org_bind == "P") ||
(!(srtdeel_binding & (BIND_TERREI)) && org_bind_key > 0 && org_bind == "T" > 0 && !(srtdeel_binding & (BIND_RUIMTE)) && !(srtdeel_binding & (BIND_WERKPL))) ||
(!(srtdeel_binding & (BIND_RUIMTE)) && org_bind_key > 0 && org_bind == "R" && !(srtdeel_binding & (BIND_WERKPL))) ||
(!(srtdeel_binding & (BIND_WERKPL)) && org_bind_key > 0 && org_bind == "W")) && isLendOut);
IFRAMER_HEADER(headertitle, buttons);
%>
@@ -585,7 +611,7 @@ var ins_deel_aantal = 1;
if (status)
{
f.next.value = isNext ? '1' : '0';
if (f.next) f.next.value = isNext ? '1' : '0'; // Is alleen bij de "bo" aanwezig.
f.submit();
return true;
}
@@ -651,7 +677,7 @@ var ins_deel_aantal = 1;
extraParamField: "autonum",
extracode: "A",
onChange: "onChangeDiscipline", // disgroepChanged
readonly: (disc_key > 0 || ins_key > 0 || copy) || (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn)),
readonly: (disc_key > 0 || ins_key > 0 || copy) || !this_ins.canChangeAlg,
required: true
});
@@ -662,7 +688,7 @@ var ins_deel_aantal = 1;
autfunction: autfunction,
onChange: "onChangeSrtgroep",
urlAdd: [{urlParam: "disc_key", field: "disc"}],
readonly: (ins_key > 0 || copy || module == "SLE") || (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn)),
readonly: (ins_key > 0 || copy || module == "SLE") || !this_ins.canChangeAlg,
required: true
});
@@ -678,7 +704,7 @@ var ins_deel_aantal = 1;
extraParamField: "binding",
extracode: "B",
module: module,
readonly: (ins_key > 0 || copy || module == "SLE") || (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn)),
readonly: (ins_key > 0 || copy || module == "SLE") || !this_ins.canChangeAlg,
required: true
});
@@ -706,15 +732,15 @@ var ins_deel_aantal = 1;
(ins_key > 0 || copy) && isNext < 0? desc : new_desc,
{ maxlength: 60,
required: true,
readonly: (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn)) || !(autonum & 2)
readonly: !this_ins.canChangeAlg || !(autonum & 2)
});
if (S("ins_explode_objects") == 0)
RWFIELDTR("count", "fldshort", L("lcl_amount") + (srtdeel_eenheid ? "&nbsp;(" + srtdeel_eenheid+")" : ""), ins_deel_aantal, {datatype: "float", readonly: (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn)), required: true});
RWFIELDTR("count", "fldshort", L("lcl_amount") + (srtdeel_eenheid ? "&nbsp;(" + srtdeel_eenheid+")" : ""), ins_deel_aantal, {datatype: "float", readonly: !this_ins.canChangeAlg, required: true});
else if(ins_key < 0 || isNext > 0 )
{
RWFIELDTR("count", "fldshort", L("lcl_count"), 1, {datatype: "number", readonly: (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn))});
RWFIELDTR("count", "fldshort", L("lcl_count"), 1, {datatype: "number", readonly: !this_ins.canChangeAlg});
}
RWFIELDTR("opmerk", "fld", L("lcl_ins_opmerking"), opmerk, {maxlength: 320, readonly: (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn))}); %>
RWFIELDTR("opmerk", "fld", L("lcl_ins_opmerking"), opmerk, {maxlength: 320, readonly: !this_ins.canChangeAlg, suppressEmpty: !this_ins.canChangeAlg}); %>
</table>
</td>
<td align="center">
@@ -747,145 +773,173 @@ var ins_deel_aantal = 1;
</tr>
<% BLOCK_END();
if (urole != "fo" && parent_key < 0)
if (parent_key < 0)
{
BLOCK_START("insGeo", L("lcl_ins_meta_data"));
FCLTcalendar("aanmaakdatum",
{ datum: aanmaak,
label: L("lcl_last_action"),
required: true,
readonly: (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn)),
readonly: !this_ins.canChangeAlg,
suppressEmpty: true,
volgnr: 1
});
FCLTcalendar("vervaldatum",
{ datum: vervaldatum,
initEmpty: vervaldatum==null,
label: L("lcl_ins_vervaldatum"),
readonly: (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn)),
readonly: !this_ins.canChangeAlg,
suppressEmpty: true,
volgnr: 2
});
RWCHECKBOXTR("ins_actief", "fldcheck", L("lcl_ins_active"), actief, {readonly: (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn))});
FCLTpersoonselector("ins_manager", // beheerder
"sgins_manager",
{ perslidKey: perslid_key_beh,
autlevel: authparams && authparams.PRSwritelevel,
label: L("lcl_ins_manager"),
filtercode: "INSB", // TODO: een filter toevoegen?
required: false,
readonly: !this_ins.writeman,
moreinfo: false /* PF: omdat de showmode die heeft, en het label erg lang is*/
});
RWCHECKBOXTR("ins_actief", "fldcheck", L("lcl_ins_active"), actief, {readonly: !this_ins.canChangeAlg});
FCLTpersoonselector("ins_manager", // beheerder
"sgins_manager",
{ perslidKey: perslid_key_beh,
autlevel: authparams && authparams.PRSwritelevel,
label: L("lcl_ins_manager"),
filtercode: "INSB", // TODO: een filter toevoegen?
required: false,
readonly: !this_ins.writeman || urole == "fo",
suppressEmpty: true,
moreinfo: false /* PF: omdat de showmode die heeft, en het label erg lang is*/
});
if (S("mjb_enabled") == 1) {
RWFIELDTR("deel_mjb_score1", "fldshort", L("lcl_ins_deel_mjb_score1"), mjb_score1, {datatype: "float"});
RWFIELDTR("deel_mjb_score2", "fldshort", L("lcl_ins_deel_mjb_score2"), mjb_score2, {datatype: "float"});
}
if (isLendOut)
ROFIELDTR("fld", "", L("lcl_obj_is_lent_out"));
if (S("mjb_enabled") == 1) {
ROFIELDTR("fldshort", L("lcl_ins_deel_mjb_score1"), mjb_score1, {suppressEmpty: true});
ROFIELDTR("fld", L("ins_srtdeel_mjb_grensscore1"), ins_srtdeel_mjb_grensscore1, {suppressEmpty: true});
ROFIELDTR("fldshort", L("lcl_ins_deel_mjb_score2"), mjb_score2, {suppressEmpty: true});
}
if (!(bind == 'A' || bind == 'P'))
{
RWFIELDTR("xcoord", "fldshort", L("lcl_obj_geoxcoord"), xcoord, {maxlength: 12, datatype: "float"});
RWFIELDTR("ycoord", "fldshort", L("lcl_obj_geoycoord"), ycoord, {maxlength: 12, datatype: "float"});
RWFIELDTR("xcoord", "fldshort", L("lcl_obj_geoxcoord"), xcoord, {maxlength: 12, datatype: "float", suppressEmpty: true, readonly: !this_ins.canChangeAlg});
RWFIELDTR("ycoord", "fldshort", L("lcl_obj_geoycoord"), ycoord, {maxlength: 12, datatype: "float", suppressEmpty: true, readonly: !this_ins.canChangeAlg});
}
if (tekenbaar)
{
// als het object technisch getekend zou kunnen zijn, geven we hier de status aan.
// Een vriendelijke optie zou zijn om in geval van niet-geplaatst-zijn hier de optie toe te voegen
// omdat direct alsnog te doen; wellicht zelfs ook voor VERplaatsen.
%> <tr><td></td><td><%=getekend?L("lcl_obj_isgetekend"):L("lcl_obj_nietgetekend")%></td></tr>
<% }
BLOCK_END();
}
if (urole != "fo")
{
BLOCK_START("insIns", L("lcl_owner_info"));
// Voor onderdelen ook het hoofdobject weergeven
ROFIELDTR("fldd", L("lcl_ins_parentobject"), parentdesc, {suppressEmpty: true});
if ((srtdeel_binding & (BIND_AFDELI)) && (!isLendOut || (isLendOut && o_dep_key > 0)) && !invalid_binding)
{
FCLTafdelingselector("sDept",
"sDept",
{ departmentKey: o_dep_key,
label: L("lcl_prs_organisatie"),
autlevel: authparams.PRSwritelevel,
onChange: "onChangeDept",
readonly: (parent_key > 0 || isLendOut) || (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn))
});
}
if ((srtdeel_binding & (BIND_PERSOO)) && (!isLendOut || (isLendOut && o_perslid_key > 0)) && !invalid_binding)
{
FCLTpersoonselector("sPerson", // requestor
"sgPerson",
{ perslidKey: o_perslid_key,
label: L("lcl_name"),
autlevel: authparams.PRSwritelevel,
onChange: "onChangePerson",
readonly: (parent_key > 0 || isLendOut) || (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn))
});
}
if ((!isLendOut || (isLendOut && (bind == "R" || bind == "T"))) && !invalid_binding)
{
var maxlevel = -1;
var change = "";
%>
<script>
function change1()
{
setBind('T');
}
function change2(p_key)
{
setBind('R');
}
function change3(p_key)
{
setBind('W');
}
</script>
<%
if (srtdeel_binding & (BIND_TERREI | BIND_RUIMTE | BIND_WERKPL))
{
change = "change1()";
maxlevel = 3;
}
if (srtdeel_binding & (BIND_RUIMTE | BIND_WERKPL))
{
change = "change2()";
maxlevel = 5;
}
if (srtdeel_binding & (BIND_WERKPL))
{
change = "change3()";
maxlevel = 6;
}
if (maxlevel >= 2)
FCLTplaatsselector(authparams.ALGwritelevel, { locatiekey: o_loc_key,
verdiepingkey: o_floor_key,
gebouwkey: o_bld_key,
ruimtekey: o_room_key,
werkplekkey: o_workpl_key,
startlevel: 2, // locatie
eindlevel: maxlevel,
terrein: true,
filtercode: "INCVR",
onLocChange: change,
cadSelect: true,
cadShowdiscfn: "cadShowdiscfn",
escalateOnChUp: true, // ook onLocChange als je gebouw wijzigt
readonly: (parent_key > 0 || isLendOut) || (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn))
});
}
<% }
BLOCK_END();
}
BLOCK_START("insIns", L("lcl_owner_info"));
// Voor onderdelen ook het hoofdobject weergeven
ROFIELDTR("fldd", L("lcl_ins_parentobject"), parentdesc, {suppressEmpty: true});
if ((srtdeel_binding & (BIND_AFDELI)) && (!isLendOut || (isLendOut && o_dep_key > 0)) && !invalid_binding)
{
FCLTafdelingselector("sDept",
"sDept",
{ departmentKey: o_dep_key,
label: L("lcl_prs_organisatie"),
autlevel: authparams.PRSwritelevel,
onChange: "onChangeDept",
readonly: (parent_key > 0 || isLendOut) || !this_ins.canChangeAlg
});
}
if (((srtdeel_binding & (BIND_PERSOO)) && !isLendOut) ||
((((srtdeel_binding & (BIND_PERSOO)) && (org_bind == "R")) ||
((srtdeel_binding & (BIND_AFDELI)) && (org_bind == "A")) ||
((srtdeel_binding & (BIND_TERREI)) && (org_bind == "T")) ||
((srtdeel_binding & (BIND_RUIMTE)) && (org_bind == "R")) ||
((srtdeel_binding & (BIND_WERKPL)) && (org_bind == "W"))) && (isLendOut && o_perslid_key > 0)) &&
!invalid_binding)
{
FCLTpersoonselector("sPerson", // requestor
"sgPerson",
{ perslidKey: o_perslid_key,
label: L("lcl_name"),
autlevel: authparams.PRSwritelevel,
onChange: "onChangePerson",
readonly: (parent_key > 0 || isLendOut) || !this_ins.canChangeAlg
});
}
// Object is uitgeleend aan een contactpersoon. Voor het uitlenen behoorde het object tot een persoon, afdeling of plek.
if ((((srtdeel_binding & (BIND_PERSOO)) && (org_bind == "R")) ||
((srtdeel_binding & (BIND_AFDELI)) && (org_bind == "A")) ||
((srtdeel_binding & (BIND_TERREI)) && (org_bind == "T")) ||
((srtdeel_binding & (BIND_RUIMTE)) && (org_bind == "R")) ||
((srtdeel_binding & (BIND_WERKPL)) && (org_bind == "W"))) &&
(isLendOut && o_cntpers_key > 0) &&
!invalid_binding)
{
FCLTcontactpersoonselector("sCntPers",
"sgCntPers",
{ contactpersoonKey: o_cntpers_key,
label: L("lcl_contact_pers"),
readonly: true
});
}
if ((!isLendOut || (isLendOut && (bind == "R" || bind == "T"))) && !invalid_binding)
{
var maxlevel = -1;
var change = "";
%>
<script>
function change1()
{
setBind('T');
}
function change2(p_key)
{
setBind('R');
}
function change3(p_key)
{
setBind('W');
}
</script>
<%
if (srtdeel_binding & (BIND_TERREI | BIND_RUIMTE | BIND_WERKPL))
{
change = "change1()";
maxlevel = 3;
}
if (srtdeel_binding & (BIND_RUIMTE | BIND_WERKPL))
{
change = "change2()";
maxlevel = 5;
}
if (srtdeel_binding & (BIND_WERKPL))
{
change = "change3()";
maxlevel = 6;
}
if (maxlevel >= 2)
FCLTplaatsselector(authparams.ALGwritelevel, { locatiekey: o_loc_key,
verdiepingkey: o_floor_key,
gebouwkey: o_bld_key,
ruimtekey: o_room_key,
werkplekkey: o_workpl_key,
startlevel: 2, // locatie
eindlevel: maxlevel,
terrein: true,
filtercode: "INCVR",
onLocChange: change,
cadSelect: true,
cadShowdiscfn: "cadShowdiscfn",
escalateOnChUp: true, // ook onLocChange als je gebouw wijzigt
readonly: (parent_key > 0 || isLendOut) || !this_ins.canChangeAlg
});
}
BLOCK_END();
BLOCK_START("insRunTime", L("lcl_ins_additional_details"));
sql = "SELECT 'U', " + safe.quoted_sql(L("lcl_mld_hours")) + " FROM DUAL"
+ " UNION SELECT 'D', " + safe.quoted_sql(L("lcl_mld_days")) + " FROM DUAL"
@@ -894,13 +948,13 @@ var ins_deel_aantal = 1;
sql: sql,
params: { id: "dayshours",
initKey: uitvoertijd_eenheid,
readonly: (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn)) && uitvoertijd < 0,
readonly: (!this_ins.canChangeAlg),
disable: !uitvoertijd
}
}
RWFIELDTR("uitvoertijd", "fldins_uitvtijd", L("lcl_ins_uitvoertijd"), uitvoertijd? Math.round(uitvoertijd * 100000) / 100000 : ""
, {maxlength: 8, datatype: "float", html: "onChange='onChangeUitvoertijd();'", selector: selectparams
, readonly: (!this_ins.canChangeAlg && !(this_ins.canChange || this_ins.canChangeOwn))});
, readonly: !this_ins.canChangeAlg, suppressEmpty: true});
BLOCK_END();
if (urole != "fo" || uitleen_flex_present) // FO ziet ze alleen als er uitleen flex zijn?

View File

@@ -35,7 +35,7 @@ var ingesloten = [];
// ook echt geinspecteerd kunnen of mogen worden.
for (var i = 0; i < ins_key_arr.length; i++)
{
var this_ins = ins.func_enabled_deel(ins_key_arr[i]);
var this_ins = ins.func_enabled_deel(ins_key_arr[i], {urole: urole});
if (this_ins.canChange)
{
ingesloten.push(ins_key_arr[i]);

View File

@@ -30,6 +30,7 @@ var free = getFParamInt("free", 0);
var loc = getFParamInt("locatiekey", -1);
var dept_key = getFParamInt ("sDept", -1 );
var prs_key = getFParamInt ("sPerson", -1 );
var cntprs_key = getFParamInt ("sCntPers", -1 );
var bld_key = getFParamInt ("gebouwkey", -1 );
var floor_key = getFParamInt ("verdiepingkey", -1);
var room_key = getFParamInt ("ruimtekey", -1 );
@@ -58,6 +59,12 @@ if(prs_key > 0)
bind = "P";
}
if(cntprs_key > 0)
{
bind_key = cntprs_key;
bind = "C";
}
if(bld_key > 0)
{
bind_key = bld_key;
@@ -87,8 +94,6 @@ if (obj_key > 0)
{ dbs: "ins_deel_aanmaak", typ: "date", frm: "aanmaakdatum", track: L("lcl_last_action") },
{ dbs: "prs_perslid_key_beh", typ: "key", frm: "ins_manager", track: L("lcl_ins_manager"), foreign: "prs_perslid" },
{ dbs: "ins_deel_opmerking", typ: "varchar", frm: "opmerk", track: L("lcl_ins_opmerking")},
{ dbs: "ins_deel_mjb_score1", typ: "float", frm: "deel_mjb_score1", track: L("lcl_ins_deel_mjb_score1")},
{ dbs: "ins_deel_mjb_score2", typ: "float", frm: "deel_mjb_score2", track: L("lcl_ins_deel_mjb_score2")},
{ dbs: "ins_deel_actief", typ: "check0", frm: "ins_actief", track: L("lcl_ins_active") } ];
if (ins_explode_objects == 0)
@@ -142,14 +147,21 @@ if (obj_key > 0)
var oldtxt = ins.getBindingItemString(insUpd.oldjsvals["ins_alg_ruimte_type"], insUpd.oldjsvals["ins_alg_ruimte_key"], parent_key); // parent_key kan niet gewijzigd worden.
if (oldtxt != newtxt)
insUpd.trackarray.push(L("lcl_owner_info") + ": " + buildTrackText("varchar", oldtxt, newtxt, { nodiff: true }));
}
if (!warning)
{
// Kenmerken updaten.
flextrackarray = ins.updateKenmerkdeel(obj_key);
}
if (!warning)
{
// Kenmerken updaten.
flextrackarray = ins.updateKenmerkdeel(obj_key);
}
var update_string = L("lcl_ins_is_insupd") + "\n" + insUpd.trackarray.concat(flextrackarray).join("\n")
var updatetrackarray = [];
if (insUpd && insUpd.trackarray)
updatetrackarray = insUpd.trackarray;
if (updatetrackarray.length || flextrackarray.length)
{
var update_string = L("lcl_ins_is_insupd") + "\n" + updatetrackarray.concat(flextrackarray).join("\n")
shared.trackaction("INSUPD", obj_key, update_string);
}
}
@@ -199,8 +211,6 @@ else
{ dbs: "prs_perslid_key_beh", typ: "key", frm: "ins_manager", foreign: "prs_perslid" },
{ dbs: "ins_deel_opmerking", typ: "varchar", frm: "opmerk"},
// bewust niet: { dbs: "ins_deel_actief", typ: "check0", frm: "ins_actief"}
{ dbs: "ins_deel_mjb_score1", typ: "varchar", frm: "deel_mjb_score1"},
{ dbs: "ins_deel_mjb_score2", typ: "varchar", frm: "deel_mjb_score2"},
{ dbs: "ins_alg_ruimte_key", typ: "key", val: bind_key },
{ dbs: "ins_alg_ruimte_type", typ: "varchar", val: bind } ];

View File

@@ -50,6 +50,7 @@ sql = "SELECT d.ins_deel_omschrijving" // identificatie
+ " , d.ins_srtdeel_key"
+ " , g.ins_srtgroep_key"
+ " , dis.ins_discipline_key"
+ " , s.ins_srtdeel_acadsymbol"
+ " , d.ins_deel_x"
+ " , ins_deel_y"
+ " , ins_deel_dwgx" // future: +", ins_deel_z"
@@ -67,6 +68,7 @@ sql = "SELECT d.ins_deel_omschrijving" // identificatie
+ " , d.prs_perslid_key_beh"
+ " , d.ins_deel_mjb_score1"
+ " , d.ins_deel_mjb_score2"
+ " , s.ins_srtdeel_mjb_grensscore1"
+ " FROM ins_deel d"
+ " , ins_srtdeel s"
+ " , ins_srtgroep g"
@@ -95,6 +97,7 @@ var actief = oRs('ins_deel_actief').Value == 1;
var srtdeel_key = oRs("ins_srtdeel_key").Value;
var srtgroep_key = oRs("ins_srtgroep_key").Value;
var disc_key = oRs("ins_discipline_key").Value;
var tekenbaar = oRs("ins_srtdeel_acadsymbol").Value != null;
var getekend = oRs('ins_deel_dwgx').Value != null;
var xcoord = oRs('ins_deel_x').Value;
var ycoord = oRs('ins_deel_y').Value;
@@ -106,6 +109,7 @@ var srtdeel_eenheid = oRs('ins_srtdeel_eenheid').Value;
var perslid_key_beh = oRs('prs_perslid_key_beh').Value;
var ins_deel_mjb_score1 = oRs('ins_deel_mjb_score1').Value;
var ins_deel_mjb_score2 = oRs('ins_deel_mjb_score2').Value;
var ins_srtdeel_mjb_grensscore1 = oRs('ins_srtdeel_mjb_grensscore1').Value;
var bind_lo = null;
var bind_key_lo = null;
@@ -286,8 +290,32 @@ oRs.Close();
this_ins.verbruiksmeter = oRs("meetwaarde").Value == 1;
}
sql = "SELECT k.ins_kenmerk_key"
+ " FROM ins_srtkenmerk t"
+ ", ins_kenmerk k"
+ ", ins_srtdeel s"
+ ", ins_srtgroep g"
+ " WHERE s.ins_srtdeel_key = " + srtdeel_key
+ " AND ( ( k.ins_srtinstallatie_key = s.ins_srtdeel_key"
+ " AND k.ins_kenmerk_niveau = 'S')"
+ " OR ( k.ins_srtinstallatie_key = s.ins_srtgroep_key"
+ " AND k.ins_kenmerk_niveau = 'G')"
+ " OR ( k.ins_srtinstallatie_key = g.ins_discipline_key"
+ " AND k.ins_kenmerk_niveau = 'D')"
+ " )"
+ " AND k.ins_srtkenmerk_key = t.ins_srtkenmerk_key"
+ " AND g.ins_srtgroep_key = s.ins_srtgroep_key"
+ " AND k.ins_kenmerk_verwijder IS NULL"
+ " AND t.ins_srtkenmerk_verwijder IS NULL"
+ (urole == "fo"?" AND k.ins_kenmerk_volgnummer > 900" : "");
oRs = Oracle.Execute(sql);
var uitleen_flex_present = false;
if (!oRs.eof) uitleen_flex_present = true;
var buttons = [ ];
if (this_ins.canChange || this_ins.canChangeOwn)
// In de frontoffice (uitgeleende objecten) mode kunnen alleen de flexkenmerken aangepast worden.
// Zijn er wel uitleen kenmerken anders hoeft de wijzig knop niet getoond te worden.
if ((this_ins.canChange || this_ins.canChangeOwn) && (urole == "bo" || (urole == "fo" && uitleen_flex_present)))
buttons.push({title: L("lcl_change"), action: "ins_change()", icon: "wijzigen.png" });
if (canMelding)
@@ -394,20 +422,23 @@ oRs.Close();
//if (S("mjb_enabled") == '1') {
ROFIELDTR("fld", L("lcl_ins_deel_mjb_score1"), ins_deel_mjb_score1, {suppressEmpty: true});
ROFIELDTR("fld", L("ins_srtdeel_mjb_grensscore1"), ins_srtdeel_mjb_grensscore1, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_ins_deel_mjb_score2"), ins_deel_mjb_score2, {suppressEmpty: true});
//}
if (getekend)
{
var params = { infoPointer: { Url: "../cad/showroom.asp?rKey=" + bind_key + "&ins_key=" + ins_key,
Title: L("lcl_fg_gotofgheader") + " " + desc,
Modal: true
}
}
ROFIELDTR("fld", "", L("lcl_obj_isgetekend"), params);
}
else
ROFIELDTR("fld", "", L("lcl_obj_nietgetekend"));
if (tekenbaar)
if (getekend)
{
var params = { infoPointer: { Url: "../cad/showroom.asp?rKey=" + bind_key + "&ins_key=" + ins_key,
Title: L("lcl_fg_gotofgheader") + " " + desc,
Modal: true
}
}
ROFIELDTR("fld", "", L("lcl_obj_isgetekend"), params);
}
else
ROFIELDTR("fld", "", L("lcl_obj_nietgetekend"));
if (!(bind == 'A'||bind == 'P') && xcoord && ycoord)
{
// alleen plaatsgebonden objecten met ingevulde x/y krijgen een geo-blokje

View File

@@ -658,6 +658,11 @@ var FcltMgr =
// FcltMgr.alert("Bad resizing");
return; // IE9 soms als dialoog net gesloten is
}
var thisModalCount;
if ($(frm).attr("name") && $(frm).attr("name").length > 9)
thisModalCount = $(frm).attr("name").slice(9); // _modalCount op moment van aanmaken, zodat we de juiste modal resizen.
else
thisModalCount = FcltMgr._modalCount; // backup (oude manier, overbodig ?)
// Hoeveel extra moeten we rekenen voor jQuery dialog
var dialogborderHeight = $(frm).closest(".ui-dialog").outerHeight() - $(frm).height();
// 6 pixels extra marge wegens AAVL#38845
@@ -668,10 +673,10 @@ var FcltMgr =
// FcltMgr.alert("N:" + newHeight);
// Omdat onze <iframe> de dialog *is* hoeven we die schijnbaar niet afzonderlijk te zetten?
// $(frm).height(newHeight + 200);
$('iframe#fcltmodal'+FcltMgr._modalCount).dialog('option', 'height', newHeight + dialogborderHeight + 20);
$('iframe#fcltmodal'+thisModalCount).dialog('option', 'height', newHeight + dialogborderHeight + 20);
var newHeight2 = Math.min(frmcontent.outerHeight(), $(window).height()-100);
if (newHeight2 > newHeight) // Gebeurde in FireFox wel eens
$('iframe#fcltmodal'+FcltMgr._modalCount).dialog('option', 'height', newHeight2 + dialogborderHeight + 20);
$('iframe#fcltmodal'+thisModalCount).dialog('option', 'height', newHeight2 + dialogborderHeight + 20);
var extraWidth = 0;
if (newHeight <= frmcontent.height())
extraWidth = 24; // scrollbar
@@ -679,7 +684,7 @@ var FcltMgr =
var newWidth = Math.min(frmcontent.outerWidth()+extraWidth , $(window).width()-10);
if (dialogborderWidth) // AAVL#38845
newWidth += dialogborderWidth;
$('iframe#fcltmodal'+FcltMgr._modalCount).dialog('option', 'width', newWidth);
$('iframe#fcltmodal'+thisModalCount).dialog('option', 'width', newWidth);
// Ook al is onze <iframe> de dialog moeten we deze wel afzonderlijk te zetten?
$(frm).width(newWidth);
@@ -687,14 +692,14 @@ var FcltMgr =
var newWidth2 = Math.min(frmcontent.outerWidth()+extraWidth , $(window).width()-10);
if (newWidth2 > newWidth) // FSN#39111
{
$('iframe#fcltmodal'+FcltMgr._modalCount).dialog('option', 'width', newWidth2);
$('iframe#fcltmodal'+thisModalCount).dialog('option', 'width', newWidth2);
$(frm).width(newWidth2);
}
if (FcltMgr.isTouchscreen())
$('iframe#fcltmodal'+FcltMgr._modalCount).dialog('option', 'position', { my: "top", at: "top", of: window });
$('iframe#fcltmodal'+thisModalCount).dialog('option', 'position', { my: "top", at: "top", of: window });
else
$('iframe#fcltmodal'+FcltMgr._modalCount).dialog('option', 'position', { my: "center", at: "center", of: window });
$('iframe#fcltmodal'+thisModalCount).dialog('option', 'position', { my: "center", at: "center", of: window });
},
// Opent een modal dialoog in de huidige 'detailManager'

View File

@@ -198,7 +198,7 @@ function cal_checkVolgnr(fieldId, volgnr)
}
else
{ // Datum overnemen, eigen tijd behouden
var dt2 = fromdate.midnight();
var dt2 = fromdate.midnight();
dt2.setSeconds(timetoms / 1000); // setSeconds gaat goed om met zomertijd/wintertijd
$("#" + calArray[i].id).val(dt2.getTime());
}
@@ -206,10 +206,19 @@ function cal_checkVolgnr(fieldId, volgnr)
else
{ // Kalender Kx heeft geen tijdsveld.
// Indien veld Kx+i wel een tijdsveld heeft, dan eigen tijd behouden.
var value = fromdate.midnight().getTime()
+ ($("#time_from_" + calArray[i].id).length > 0 && $("#time_from_" + calArray[i].id).val() != "" // Heeft veld Kx+i een tijdsveld en is die niet leeg?
? timetoms // Tijdsveld is aanwezig en niet leeg. Dan kan ik met getTime() de tijd ophalen.
: 1000*(24*60*60-1)) // Tijdsveld is niet aanwezig. Dan nemen we voor de tijd 23:59:59 (was eerst 0)
var value = fromdate.midnight();
// Heeft veld Kx+i een tijdsveld en is die niet leeg?
if ($("#time_from_" + calArray[i].id).length > 0 && $("#time_from_" + calArray[i].id).val() != "")
{ // Tijdsveld is aanwezig en niet leeg. Dan kan ik met getTime() de tijd ophalen.
value = value.getTime() + timetoms;
}
else // Tijdsveld is niet aanwezig. Dan nemen we voor de tijd 23:59:59 (was eerst 0)
{ // Gaat nu ook goed met zomer & wintertijd STPH#52735
value = new Date(value);
value.setDate(value.getDate() + 1); // day+1
value = new Date(value.valueOf() - 1000).getTime() // seconds-1
}
$("#" + calArray[i].id).val(value);
}
}

View File

@@ -28,10 +28,12 @@ function gettablesql(ptable, pchildtable, pchildsql, precord, pmtable)
var pwhere_veldnaam = "";
if (ptable == "prs_perslid")
{
var pfac_audit_tabelkey = " (SELECT TO_NUMBER (x.fac_audit_waarde_oud)"
var pfac_audit_tabelkey = " (SELECT fac.safe_to_number (x.fac_audit_waarde_oud)"
+ " FROM fac_audit x"
+ " WHERE x.fac_audit_veldnaam = 'prs_perslid_key'"
+ " AND fac_audit_tabelnaam = 'fac_gebruikersgroep'"
+ " AND x.fac_audit_waarde_oud IS NOT NULL"
+ " AND x.fac_audit_actie = 'D'"
+ " AND x.fac_audit_tabelkey = a.fac_audit_tabelkey) fac_audit_tabelkey";
pwhere_veldnaam = " AND (a.fac_audit_veldnaam = 'prs_perslid_key' OR a.fac_audit_veldnaam = 'fac_groep_key')";
}

View File

@@ -134,17 +134,38 @@ var authparamsCTRUSE = user.checkAutorisation("WEB_CTRUSE");
}
}
$(function()
function onChangeGroupBy()
{
if (scen_key == 1) $(".tractsit").hide();
$("#actsit").prop("checked", <%=actsit? "true" : "false"%>);
selectedScen = false;
<% if (autosearch)
{ %>
window.afterfiltersready = function () { doSubmit() };
<% } %>
});
if ($("#groupby").val() == 7 || $("#groupby").val() == 8)
{
$("#fitness_score").show();
$("#fitness_score_neg").show();
$("#fitness_score_pos").show();
$("#priority_score").show();
}
else
{
if ($("#groupby").val() == 2 || $("#groupby").val() == 3)
$("#fitness_score").show();
else
$("#fitness_score").hide();
$("#fitness_score_neg").hide();
$("#fitness_score_pos").hide();
$("#priority_score").hide();
}
}
$(function()
{
if (scen_key == 1) $(".tractsit").hide();
$("#actsit").prop("checked", <%=actsit? "true" : "false"%>);
selectedScen = false;
<% if (autosearch)
{ %>
window.afterfiltersready = function () { doSubmit() };
<% } %>
onChangeGroupBy();
});
</script>
</head>
@@ -220,33 +241,175 @@ var authparamsCTRUSE = user.checkAutorisation("WEB_CTRUSE");
whenEmpty: L("lcl_search_generic") // want dit is een filter
});
%>
<% // Conditie score %>
<tr class="primsearch fldfitness_score" id="fitness_score">
<td>
<table>
<tr>
<td class="label">
<label for="show_fitness_score_from"><%="Conditie score"%>:</label> <% // L("lcl_mjb_fitness_score") %>
</td>
<td style="text-align: right">
<%="van"%> <% // L("lcl_mjb_from") %>
</td>
</tr>
</table>
</td>
<td class="score">
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 6)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 6)"
id="fitness_score1_from"
name="fitness_score1_from"
class="fldflexN number "
value=""
maxlength="1">
&nbsp;<%="t/m"%>&nbsp; <% // L("lcl_mjb_through") %>
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 6)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 6)"
id="fitness_score1_through"
name="fitness_score1_through"
class="fldflexN number "
value=""
maxlength="1">
</td>
</tr>
<% // Negatieve afwijking van de conditie score %>
<tr class="primsearch fldfitness_score_neg" id="fitness_score_neg">
<td class="label">
<table>
<tr>
<td class="label">
&nbsp;&nbsp;<3B> <%="Negatieve afwijking"%> <% // L("lcl_mbj_negative_dev") %>
</td>
<td style="text-align: right">
<%="van"%> <% // L("lcl_mjb_from") %>
</td>
</tr>
</table>
</td>
<td class="score">
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 5)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 5)"
id="fitness_score1_from_neg"
name="fitness_score1_from_neg"
class="fldflexN number "
value=""
maxlength="1">
&nbsp;<%="t/m"%>&nbsp; <% // L("lcl_mjb_through") %>
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 5)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 5)"
id="fitness_score1_through_neg"
name="fitness_score1_through_neg"
class="fldflexN number "
value=""
maxlength="1">
</td>
</tr>
<% // Positieve afwijking van de conditie score %>
<tr class="primsearch fldfitness_score_pos" id="fitness_score_pos">
<td class="label">
<table>
<tr>
<td class="label">
&nbsp;&nbsp;<3B> <%="Positieve afwijking"%> <% // L("lcl_mjb_positive_dev") %>
</td>
<td style="text-align: right">
<%="van"%> <% // L("lcl_mjb_from") %>
</td>
</tr>
</table>
</td>
<td class="score">
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 5)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 5)"
id="fitness_score1_from_pos"
name="fitness_score1_from_pos"
class="fldflexN number "
value=""
maxlength="1">
&nbsp;<%="t/m"%>&nbsp <% // L("lcl_mjb_through") %>
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 5)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 5)"
id="fitness_score1_through_pos"
name="fitness_score1_through_pos"
class="fldflexN number "
value=""
maxlength="1">
</td>
<tr class="primsearch fldpriority_score" id="priority_score">
<td>
<table>
<tr>
<td class="label">
<label for="show_priority_score_from"><%="Prioriteitsscore"%>:</label> <% // L("lcl_mjb_priority_score") %>
</td>
<td style="text-align: right">
<%="van"%> <% // L("lcl_mjb_from") %>
</td>
</tr>
</table>
</td>
<td class="score">
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 6)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 9)"
id="priority_score2_from"
name="priority_score2_from"
class="fldflexN number "
value=""
maxlength="1">
&nbsp;<%="t/m"%>&nbsp <% // L("lcl_mjb_through") %>
<input type="text"
onChange="fvalid=checkKenmerk(this, false, 'N', 1, 0, 1, 6)"
onBlur="checkKenmerk(this, true, 'N', 1, 0, 1, 9)"
id="priority_score2_through"
name="priority_score2_through"
class="fldflexN number "
value=""
maxlength="1">
</td>
</tr>
<%
// Scenarios
if (mode == 1) { // scenario's zijn er alleen voor de toekomst
sql = "SELECT ins_scenario_key"
+ " , ins_scenario_omschrijving"
+ " FROM ins_scenario"
+ " WHERE ins_scenario_verwerkt IS NULL"
+ " AND ins_scenario_key <> 1" // niet de actuele
+ " ORDER BY ins_scenario_omschrijving";
var oRs = Oracle.Execute(sql);
if (!oRs.Eof)
{
FCLTselector("scenario",
sql,
{ label: L("lcl_mjb_scenario"),
initKey: scen_key,
//multi: true, // Voor nu niet multi
trclass:"primsearch",
emptyKey: 1,
emptyOption: "",
onChange: "onChangeScenario()"
});
RWCHECKBOXTR("actsit", "fldactsit", L("lcl_mjb_also_act_situation"), actsit, { html: " value='1' ", trclass: 'primsearch tractsit'});
if (mode == 1)
{ // scenario's zijn er alleen voor de toekomst
sql = "SELECT ins_scenario_key"
+ " , ins_scenario_omschrijving"
+ " FROM ins_scenario"
+ " WHERE ins_scenario_verwerkt IS NULL"
+ " AND ins_scenario_key <> 1" // niet de actuele
+ " ORDER BY ins_scenario_omschrijving";
var oRs = Oracle.Execute(sql);
if (!oRs.Eof)
{
FCLTselector("scenario",
sql,
{ label: L("lcl_mjb_scenario"),
initKey: scen_key,
//multi: true, // Voor nu niet multi
trclass:"primsearch",
emptyKey: 1,
emptyOption: "",
onChange: "onChangeScenario()"
});
RWCHECKBOXTR("actsit", "fldactsit", L("lcl_mjb_also_act_situation"), actsit, { html: " value='1' ", trclass: "primsearch tractsit"});
}
oRs.Close();
RWCHECKBOXTR("mjbshowempty", "fldmjbempty", L("lcl_mjb_empty_lines_too"), mjbempty, { html: " value='1' ", trclass: 'primsearch'});
}
oRs.Close();
RWCHECKBOXTR("mjbshowempty", "fldmjbempty", L("lcl_mjb_empty_lines_too"), mjbempty, { html: " value='1' ", trclass: "primsearch"});
}
%>
@@ -365,29 +528,30 @@ var authparamsCTRUSE = user.checkAutorisation("WEB_CTRUSE");
FCLTselector("groupby",
sql,
{ initKey: groupby,
label: L("lcl_mjb_group")
label: L("lcl_mjb_group"),
onChange: "onChangeGroupBy()"
});
if (mode == 1) { // ook de verschillende bewerkingstatussen alleen tijdens plannen
if (mode == 1)
{ // ook de verschillende bewerkingstatussen alleen tijdens plannen
%>
<!-- Status checkboxen -->
<tr>
<td>
<label><%=L("lcl_mjb_status_mjob")%>:&nbsp;</label>
</td>
<td>
<div id="statusboxes">
<input type="checkbox" class="fldcheck" name="mjbMoved" id="mjbMoved" value="1" <%=mjbMoved? "checked" : ""%>><label for="mjbMoved"><%=L("lcl_mjb_moved")%></label>
<span id="checdfreezed">
<input type="checkbox" class="fldcheck" name="mjbFreezed" id="mjbFreezed" value="1" <%=mjbFreezed? "checked" : ""%>><label for="mjbFreezed"><%=L("lcl_mjb_started")%></label>
</span>
<input type="checkbox" class="fldcheck" name="mjbXcped" id="mjbXcped" value="1" <%=mjbXcped ? "checked" : " "%>><label for="mjbXcped"><%=L("lcl_mjb_overruled_xcp")%></label>
</div>
</td>
</tr>
<!-- Status checkboxen -->
<tr>
<td>
<label><%=L("lcl_mjb_status_mjob")%>:&nbsp;</label>
</td>
<td>
<div id="statusboxes">
<input type="checkbox" class="fldcheck" name="mjbMoved" id="mjbMoved" value="1" <%=mjbMoved? "checked" : ""%>><label for="mjbMoved"><%=L("lcl_mjb_moved")%></label>
<span id="checdfreezed">
<input type="checkbox" class="fldcheck" name="mjbFreezed" id="mjbFreezed" value="1" <%=mjbFreezed? "checked" : ""%>><label for="mjbFreezed"><%=L("lcl_mjb_started")%></label>
</span>
<input type="checkbox" class="fldcheck" name="mjbXcped" id="mjbXcped" value="1" <%=mjbXcped ? "checked" : " "%>><label for="mjbXcped"><%=L("lcl_mjb_overruled_xcp")%></label>
</div>
</td>
</tr>
<%
}
}
%>
</table>
</td><!-- end column 2-->

View File

@@ -81,7 +81,17 @@ var scenario = getQParamInt("scenario", 1); // Scenario
var actsit = getQParamInt("actsit", 0) == 1; // Ook actuele situatie.
var mjbshowempty = getQParamInt("mjbshowempty", 0) == 1; // Ook lege regels.
// FORM status checkboxes
// FORM score velden.
var fitness_score1_from = getQParamInt("fitness_score1_from", -1); // Conditie score van.
var fitness_score1_through = getQParamInt("fitness_score1_through", -1); // Conditie score t/m.
var fitness_score1_from_neg = getQParamInt("fitness_score1_from_neg", -1); // Negatieve afwijking conditie score van.
var fitness_score1_through_neg = getQParamInt("fitness_score1_through_neg", -1); // Negatieve afwijking conditie score t/m.
var fitness_score1_from_pos = getQParamInt("fitness_score1_from_pos", -1); // Positieve afwijking conditie score van.
var fitness_score1_through_pos = getQParamInt("fitness_score1_through_pos", -1); // Positieve afwijking conditie score t/m.
var priority_score2_from = getQParamInt("priority_score2_from", -1); // Prioriteitsscore van.
var priority_score2_through = getQParamInt("priority_score2_through", -1); // Prioriteitsscore t/m.
// FORM status checkboxes.
var mjbMoved = getQParamInt("mjbMoved", 0) == 1; // Verschoven.
var mjbFreezed = getQParamInt("mjbFreezed", 0) == 1; // In behandeling.
var mjbXcped = getQParamInt("mjbXcped", 0) == 1; // Aangepast.
@@ -481,6 +491,14 @@ var transitParam = buildTransitParam(["disc", "srtgroep", "srtdeel", "srtcontrol
toyear: toyear,
groupby: groupby,
deel: deel,
fitness_score1_from : fitness_score1_from,
fitness_score1_through : fitness_score1_through,
fitness_score1_from_neg : fitness_score1_from_neg,
fitness_score1_through_neg : fitness_score1_through_neg,
fitness_score1_from_pos : fitness_score1_from_pos,
fitness_score1_through_pos : fitness_score1_through_pos,
priority_score2_from : priority_score2_from,
priority_score2_through : priority_score2_through,
mjbMoved: mjbMoved,
mjbFreezed: mjbFreezed,
mjbXcped: mjbXcped,
@@ -805,13 +823,18 @@ var transitParam = buildTransitParam(["disc", "srtgroep", "srtdeel", "srtcontrol
if (groupby >= 5) rst.addColumn(new Column({caption: L("lcl_obj_group"), content: "ins_srtgroep_omschrijving"}));
if (groupby >= 6) rst.addColumn(new Column({caption: L("lcl_obj_sort"), content: "ins_srtdeel_omschrijving"}));
}
if (groupby == 2)
rst.addColumn(new Column({caption: "Conditiescore", content: "alg_locatie_mjb_score1", align: "center"})); // L("lcl_alg_locatie_mjb_score1")
if (groupby == 3)
rst.addColumn(new Column({caption: "Conditiescore", content: "alg_gebouw_mjb_score1", align: "center"})); // L("lcl_alg_gebouw_mjb_score1")
if (groupby >= 7)
{
rst.addColumn(new Column({caption: L("lcl_ins_object"), content: fnDeel}));
rst.addColumn(new Column({caption: L("lcl_amount"), content: "ins_deel_aantal", datatype: "float"}));
rst.addColumn(new Column({caption: L("lcl_obj_unit"), content: "ins_srtdeel_eenheid"}));
rst.addColumn(new Column({caption: L("lcl_ins_deel_mjb_score1"), content: "ins_deel_mjb_score1", align: "center"}));
rst.addColumn(new Column({caption: L("lcl_ins_deel_mjb_score2"), content: "ins_deel_mjb_score2", align: "center"}));
rst.addColumn(new Column({caption: L("lcl_ins_object"), content: fnDeel}));
rst.addColumn(new Column({caption: L("lcl_amount"), content: "ins_deel_aantal", datatype: "float"}));
rst.addColumn(new Column({caption: L("lcl_obj_unit"), content: "ins_srtdeel_eenheid"}));
rst.addColumn(new Column({caption: L("lcl_ins_deel_mjb_score1"), content: "ins_deel_mjb_score1", align: "center"}));
rst.addColumn(new Column({caption: L("ins_srtdeel_mjb_grensscore1"), content: "ins_srtdeel_mjb_grensscore1", align: "center"}));
rst.addColumn(new Column({caption: L("lcl_ins_deel_mjb_score2"), content: "ins_deel_mjb_score2", align: "center"}));
}
if (fulldetails)
{

View File

@@ -676,7 +676,7 @@ function process_stdm_info(data, stdmChanged) // stdmChanged is optioneel.
// FO en BO mogen als ze mogen wijzigen ook altijd datums aanpassen
// FE mag datums aanpassen bij 1) nieuwe melding, 2) status 1 en 2.
// Als melding planbaar is mag prioriteit nooit aangepast worden.
var canPrioChange = (stdm_info.planbaar == 0 && (canFOwrite || (canFEwrite && stdm_info.frontendprio && (mld_key < 0 || mld_status == 1 || mld_status == 2)))? 1 : 0);
var canPrioChange = (stdm_info.planbaar != 1 && (canFOwrite || (canFEwrite && stdm_info.frontendprio && (mld_key < 0 || mld_status == 1 || mld_status == 2)))? 1 : 0);
$("#prio,#prio_ro").closest("td").load("loadPrioriteit.asp",
{ stdm_key: stdm_info.mld_stdmelding_key,
mprio: $("#prio :selected").val() || mprio,

View File

@@ -416,7 +416,8 @@ function mld_list (pautfunction, params)
+ " AND km.mld_kenmerkmelding_verwijder IS NULL) flex"
}
// Voeg aan de sql het FROM en WHERE gedeelte toe
sqln += mld.getfromwherelist_sql(pautfunction, params);
sqln += mld.getfromwherelist_sql(pautfunction, params)
+ (showgekoppeld ? "" : " AND m.mld_melding_parentkey IS NULL");
if (minfo)
{
sqln += (params.ingevoerd == "fe" ? " AND m.prs_perslid_key = invoerder.prs_perslid_key" : "");

View File

@@ -68,7 +68,7 @@ for (var i = 0; i < ingesloten.length; i++)
var mld_melding = mld.mld_melding_info(ingesloten[i].mld_key);
ingesloten[i].canInspFinishMjb = false;
if (mld_melding.kto_key > 0)
if (mld_melding.kto_key > 0 && mld_melding.kto_type == 'T')
{
var sql = "SELECT dsc.ins_deel_key"
+ " , dsc.ins_srtcontrole_key"

View File

@@ -388,7 +388,7 @@ var timestamp_notes = new Date();
var dedatum = (lasttime== null || thistime.midnight() > lasttime.midnight() ? toDateString(thistime, false, true) : "");
var sameevent = false;
if (srtnoti && lastuser == thisuser && lasttime && (thistime.getTime() - lasttime.getTime()) < 6000)
if (srtnoti && lastuser == thisuser && lasttime && (thistime.getTime() - lasttime.getTime()) < 60000)
{
sameevent = true;
}

View File

@@ -66,7 +66,8 @@ for (var i = 0; i < opdr_key_arr.length; i++)
melder_key: mld_info.melder_key,
behandel_key: mld_info.behandel_key,
opdr_status_refiat: opdr_info.opdr_status_refiat,
opdr_handfiat: opdr_info.opdr_handfiat
opdr_handfiat: opdr_info.opdr_handfiat,
typeopdr_fvs: opdr_info.typeopdr_fvs
});
tobegoedkeur++;
}
@@ -183,13 +184,18 @@ for (var i = 0; i < ingesloten.length; i++)
var nextstatus = 5; // Uitgegeven(5).
result.message = L("lcl_mld_opdr_goedgekeurd");
// Afhankelijk van de setting "mld_opdr_refiat_preference" fiatteren.
// Bij herfiattering opnieuw fiatteren {0=(default) fiatteur moet opnieuw fiatteren, 1=goedkeurder kan aangeven of dat moet}
// mld_opdr_refiat_preference = 0: - Herfiatteren als bedrag nu boven GVS limiet is en boven profiel limiet van de laatste fiatteur.
// mld_opdr_refiat_preference = 1: - Goedkeuren met vinkje aan: Altijd herfiatteren als nieuwe opdracht.
// - Goedkeuren met vinkje uit: Niet fiatteren en direct naar volgende status.
// - Indien bedrag boven de profiel limiet komt, dan vinkje niet tonen en fiatteren als nieuwe opdracht.
if (S("mld_opdr_refiat_preference") == 1)
// 1) Als de kosten onder de fiatteringsvrijstelling zit dan hoef ik niet te fiatteren.
// 2) Afhankelijk van de setting "mld_opdr_refiat_preference" fiatteren.
// Bij herfiattering opnieuw fiatteren {0=(default) fiatteur moet opnieuw fiatteren, 1=goedkeurder kan aangeven of dat moet}
// a) mld_opdr_refiat_preference = 0: - Herfiatteren als bedrag nu boven GVS limiet is en boven profiel limiet van de laatste fiatteur.
// b) mld_opdr_refiat_preference = 1: - Goedkeuren met vinkje aan: Altijd herfiatteren als nieuwe opdracht.
// - Goedkeuren met vinkje uit: Niet fiatteren en direct naar volgende status.
// - Indien bedrag boven de profiel limiet komt, dan vinkje niet tonen en fiatteren als nieuwe opdracht.
if (ingesloten[i].kosten < ingesloten[i].typeopdr_fvs)
{
// Bedrag zit onder de fiatteringsvrijstelling. De nextstatus blijft Uitgegeven(5).
}
else if (S("mld_opdr_refiat_preference") == 1)
{ // Fiatteren als een nieuwe opdracht (als eerst keer fiatteren) of fiatteren overslaan. Afhankelijk van vinkje (dofiat). Verderop wordt deze keuze verwerkt.
var mld_info = {kostenpl_key: ingesloten[i].mld_kp_key,
melder_key: ingesloten[i].melder_key,
@@ -240,7 +246,9 @@ for (var i = 0; i < ingesloten.length; i++)
}
}
else
{ // Herfiattering wordt (pas) vereist indien het bedrag boven het mandaat van de oorspronkelijke (laatste) fiatteur uitkomt
{ // mld_opdr_refiat_preference = 0
// Herfiattering wordt (pas) vereist indien het bedrag boven het mandaat van de oorspronkelijke (laatste) fiatteur uitkomt
// en boven de GVS-grens uitkomt. Als er hergoedgekeurd is dan was het bedrag al boven de GVS-grens en hoeven wij dit hier niet meer opnieuw te checken/testen.
if (refiatstatus > 0 || ingesloten[i].opdr_handfiat)
{

View File

@@ -266,7 +266,7 @@ if (prs_key > 0) // Fotoblokje alleen bij bestaande records
{
RWFIELDTR("prs_apikey", "fld", L("lcl_prs_apiuser"), prs_apikey, {maxlength: 64});
RWFIELDTR("prs_systeemadres", "fld", L("lcl_prs_systeemadres"),prs_systeem, {maxlength: 200});
RWFIELDTR("prs_flags", "fld", L("lcl_prs_flagscode"), prs_flags);
RWFIELDTR("prs_flags", "fld", L("lcl_prs_flagscode"), prs_flags, {required: true, datatype: "number" });
}
if (user.has("WEB_FACFAC"))
CHECKBOXTR(L("prs_perslid_loglevel"), "fldnotingids", "prs_loglevel", prs_loglevel );

View File

@@ -189,13 +189,13 @@ function forhours(fn)
? (" ," + forhours(function (h) { return " SUM(n" + String(h) + ") b" + String(h); }))
: " , SUM(GREATEST(LEAST(to_number(TO_CHAR(res_rsv_ruimte_tot_tz, 'SSSSS')) / 3600"
+ " , COALESCE(res_ruimte_eindtijd, " + S("res_t2") + ")"
+ " ," + S("res_rap_t2")
+ " ," + (rap_t2_overruled? 24 : S("res_rap_t2")) // Als res_rap_t2 overruled is (geen waarde had) dan LEAST automatisch 1-ste waarde te laten kiezen.
+ " )"
+ " ," + (rap_t1_overruled? 0 : S("res_rap_t1")) // Als res_rap_t1 overruled is (geen waarde had) dan GREATEST automatisch 1-ste waarde te laten kiezen.
+ " )"
+ " - LEAST(GREATEST(to_number(TO_CHAR(res_rsv_ruimte_van_tz, 'SSSSS')) / 3600"
+ " , COALESCE(res_ruimte_begintijd, " + S("res_t1") + ")"
+ " ," + S("res_rap_t1")
+ " ," + (rap_t1_overruled? 0 : S("res_rap_t1")) // Als res_rap_t1 overruled is (geen waarde had) dan GREATEST automatisch 1-ste waarde te laten kiezen.
+ " )"
+ " ," + (rap_t2_overruled? 24 : S("res_rap_t2")) // Als res_rap_t2 overruled is (geen waarde had) dan LEAST automatisch 1-ste waarde te laten kiezen.
+ " )"
@@ -331,8 +331,23 @@ function forhours(fn)
// 2. begin and end times from which to calculate is user bound, not location bound.
//
// Note: reservations outside 'opening' hours now result in 0 hours.
: " , SUM(LEAST(GREATEST(to_number(TO_CHAR(rarg.res_rsv_ruimte_tot_tz, 'SSSSS')) / 3600, COALESCE(rarg.res_ruimte_begintijd," + S("res_t1") +")), COALESCE(rarg.res_ruimte_eindtijd, " + S("res_t2") +"))"
+ " - GREATEST(LEAST(to_number(TO_CHAR(rarg.res_rsv_ruimte_van_tz, 'SSSSS')) / 3600, COALESCE(rarg.res_ruimte_eindtijd, " + S("res_t2") +")), COALESCE(rarg.res_ruimte_begintijd," + S("res_t1") +"))"
: " , SUM ( "
+ " LEAST ( "
+ " GREATEST ( "
+ " TO_NUMBER ( "
+ " TO_CHAR (rarg.res_rsv_ruimte_tot_tz, 'SSSSS')) "
+ " / 3600, "
+ " COALESCE (rarg.res_ruimte_begintijd, " + S("res_t1") +")), "
+ " COALESCE (rarg.res_ruimte_eindtijd, " + S("res_t2") +"), "
+ " " + (rap_t2_overruled ? 24 : S("res_rap_t2")) + ") "
+ " - GREATEST ( "
+ " LEAST ( "
+ " TO_NUMBER ( "
+ " TO_CHAR (rarg.res_rsv_ruimte_van_tz, 'SSSSS')) "
+ " / 3600, "
+ " COALESCE (rarg.res_ruimte_eindtijd, " + S("res_t2") +")), "
+ " COALESCE (rarg.res_ruimte_begintijd, " + S("res_t1") +"), "
+ " " + (rap_t1_overruled? 0 : S("res_rap_t1")) + ")"
+ " ) bezetting")
+ " FROM ("+ sql_reservering + ") rarg"
+ " WHERE rarg.res_rsv_ruimte_van BETWEEN " + ora_date3 + " AND " + ora_date4;

View File

@@ -568,13 +568,15 @@ function scf_RWFIELDTR(model, fld, val, key, params)
emptyOption = null;
}
var canmultiadd = (fld == params.multiadd && !(key > 0)); // || foreign.multiselect;
FCLTselector(fld, sql, { label: field.label,
initKey: params.search?"":(val?val.id:null),
emptyOption: emptyOption,
initKey: params.search?"":(val==0 || val ? val.id : null), // een key=0 moet ook kunnen!
emptyOption: canmultiadd?null:emptyOption,
emptyIsRealValue: (field.emptyisrealvalue?field.emptyisrealvalue:null),
emptyKey: (field.typ=="key"?-1:""),
readonly: (!params.search && field.readonly?field.readonly:false),
required: params.required,
multi: canmultiadd || params.multiselect,
extraclass: params.extraclass
});
}

View File

@@ -442,7 +442,7 @@ function scaffolding_edit(model, scf_params)
if (inArray(fld, fld_arr_all))
{
var field = model.fields[fld];
var multiselect = (field.foreign ? field.foreign.multiselect : false);
var multiselect = (field.foreign ? field.foreign.multiselect : false) || (field.LOV ? field.multiselect : false);
if (field.readonly || fld == "id")
scf_ROFIELDTR(model, fld, xxx_data[fld]);
else if (field.insertonly && key > 0)

View File

@@ -64,12 +64,19 @@ Response.Charset = 'windows-1252';
if (JSON_Result)
Response.ContentType = "application/json";
Response.Expires = this.FCLTEXPIRES||-1; // Do not cache our ASP files
if (Request.QueryString("api2").Count == 1 && Request.QueryString("mode") == "attachment")
{
Response.CacheControl = "max-age=604800"; // 1 week voor api2 bijlagen
}
else
{
Response.Expires = this.FCLTEXPIRES||-1; // Do not cache our ASP files
if (!this.FCLTEXPIRES)
Response.CacheControl = "no-cache, no-store";
if (typeof NO_ADDHEADER == "undefined")
Response.AddHeader ("X-Content-Type-Options", "nosniff");
if (!this.FCLTEXPIRES)
Response.CacheControl = "no-cache, no-store";
if (typeof NO_ADDHEADER == "undefined")
Response.AddHeader ("X-Content-Type-Options", "nosniff");
}
settings.loadSET();
device.init();

View File

@@ -2293,6 +2293,9 @@ td.label.flexsearch {
.opdrfooter {
font-style: italic;
}
.score {
min-width: 275px;
}
#goegel, img.blockrefresh {
margin: 2px 12px 0 12px;

View File

@@ -8,7 +8,7 @@
Context: Vanuit ELK asp bestand
*/
var FCLTVersion="2017.3";
var FCLTVersion="2017.3a";
var FCLTMinDatabaseSchema="33";
var custpath = rooturl + "/cust/" + customerId; // path to customer files
@@ -90,7 +90,7 @@ settings =
}
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");
__DoLog("Unexpected Application pool '{0}' (re)start at {1} during office hours".format(pool_id, toISODateTimeString(tm_start, true)), "#f00");
__DoLog("CustomerId: {0}".format(customerId));
__DoLog("Triggered by {0}://{1}".format(String(Request.ServerVariables("SERVER_PORT")) == '443'?"https":"http",
String(Request.ServerVariables("HTTP_HOST"))));

View File

@@ -238,6 +238,7 @@ function getDatatypeValue(table, column, checkval)
// module, key: alleen gebruikt voor flexkenmerk 'F' (file) 'E' (encrypted file) en 'M' (map)
// props { fnIsInvisible: optioneel function (volgnr, type) - true betekent onzichtbaar
// fnIsReadonly: optioneel function (volgnr) - true betekent readonly
// fnIsHidden: optioneel function (volgnr, default) - true betekent hidden (onzichtbaar maar wel aanwezig i.v.m. opslaan)
// parentKey: optioneel om flexkenmerken onder op te slaan
// kenmerk_module: optioneel bij ALG: "L", "G", "R" etc.
// multiMode
@@ -345,12 +346,12 @@ function listKenmerk(sql, module, key, props)
while (!oRs.eof)
{
var kdefault = oRs("kenmerk_default").Value;
if (kdefault && kdefault.match('##EXPR##') != null)
{
flexExprIncluded = true;
break;
}
oRs.MoveNext();
if (kdefault && kdefault.match('##EXPR##') != null)
{
flexExprIncluded = true;
break;
}
oRs.MoveNext();
}
oRs.Close();
@@ -464,7 +465,7 @@ function listKenmerk(sql, module, key, props)
var readonlyfield = forceReadonly; // startwaarde
if (!readonlyfield && !kenmerk_search && props.fnIsReadonly) // Zoeken is natuurlijk nooit readonly
readonlyfield = props.fnIsReadonly(kvolgnr, oRs)
readonlyfield = props.fnIsReadonly(kvolgnr, oRs);
if (readonlyfield || kenmerk_search)
required = false;
@@ -1605,6 +1606,8 @@ function listKenmerk(sql, module, key, props)
flexkenmerklabel = (maskeren ? c_maskmarker + "&nbsp;" + flexkenmerklabel : flexkenmerklabel);
var kvhtml = ""; // hierin bouwen we de html op
var kdefault = oRs("kenmerk_default").Value;
var ishidden = (props.fnIsHidden && props.fnIsHidden(kvolgnr, kdefault));
if (kv != '')
{
// Schrijf eventueel een tabelregel begin
@@ -1635,7 +1638,7 @@ function listKenmerk(sql, module, key, props)
kvhtml += ('\n <td class="label' + (ktype == 'L' || ktype == 'l'? ' flexlabel' : '')+ (kenmerk_search? ' flexsearch' : '') + '"'
+ (props.label_colspan? ' colspan=' + props.label_colspan : '') + '>');
if (!nolabel)
if (!nolabel && !ishidden)
kvhtml += ((formobile && ktype == 'l'? '<div data-role="collapsible" data-theme="c" data-content-theme="c"><h3 id="collLabel'+clabelCounter+'">' : '')
+ '\n <label for="' + nameprefix + idCounter + 'val" class="' + (ktype == 'L' || ktype == 'l'? ' flexlabellabel' : '')
+ (isExpression ? ' expression' : '') + '">' + '<span title="' + safe.htmlattr(hint) + '">'
@@ -1645,7 +1648,7 @@ function listKenmerk(sql, module, key, props)
+ '</label>'+(formobile && ktype == 'l' ? '</h3>' : ''));
// labelwaardes (vaak invulinstructie) in apart te stylen span
if (formobile && (ktype == 'L' || ktype == 'l') && kv) {
if (!ishidden && formobile && (ktype == 'L' || ktype == 'l') && kv) {
kvhtml += '\n <span class="flexlabelvalue">' + kv + '</span>';
}
@@ -1674,19 +1677,23 @@ function listKenmerk(sql, module, key, props)
kvhtml += (">");
}
if (nolabel)
if (nolabel && !ishidden)
kvhtml += ('\n <label for="' + nameprefix + idCounter + 'val">'
+ '<span title="' + safe.htmlattr(hint) + '">'
+ '</span></label>');
}
// Nu het eerder bepaalde waarde veld, zo nodig onderdrukt bij confidential-situatie
if (maskeren) {
// nu verstop ik alles wat we hierboven bepaald hebben. Dat is wat lomp.
kvhtml += ("<span class='confidential'>"+ /* c_maskmarker + */ L("lcl_confidential")+"</span>");
if (!ishidden && maskeren)
{ // nu verstop ik alles wat we hierboven bepaald hebben. Dat is wat lomp.
kvhtml += ("<span class='confidential'>"+ /* c_maskmarker + */ L("lcl_confidential")+"</span>");
}
else if (ishidden)
{
kvhtml += ("<span style='display: none'>" + kv + "</span>") || "";
}
else
kvhtml += kv||"";
kvhtml += kv||"";
if (typeof kenmerk_extraTD != "undefined" && kenmerk_extraTD && !formobile)
kvhtml += '\n </td><td>'; // Extra leeg celletje voor layout MLD_OPDR
@@ -1720,7 +1727,7 @@ function listKenmerk(sql, module, key, props)
}
oRs.MoveNext();
// Collapse code er achteraan als de *volgende* een ander label is
if ((inMobileBlock || (!formobile && allCollapsable)) && (oRs.Eof || oRs("kenmerk_kenmerktype").value.toUpperCase() == 'L')) // einde huidige label
if (!ishidden && (inMobileBlock || (!formobile && allCollapsable)) && (oRs.Eof || oRs("kenmerk_kenmerktype").value.toUpperCase() == 'L')) // einde huidige label
{
if (formobile)
{
@@ -1739,7 +1746,7 @@ function listKenmerk(sql, module, key, props)
// All fields are done here
if (inMobileBlock || (!formobile && allCollapsable)) // allerlaatste ook nog
if (!ishidden && inMobileBlock || (!formobile && allCollapsable)) // allerlaatste ook nog
{
if (formobile)
{

976
CUST/AAXX/xsl/opdracht.xsl Normal file
View File

@@ -0,0 +1,976 @@
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:import href="./tmp_default.xsl"/>
<!-- # # # Mutaties hier noteren; Datum, aangepast door, summary # # #
31.05.2016 S. Vogels; Kenmerksoort 'Soort monument' toegevoegd op opdrachtbon voor AAGN
28.04.2016 M. Leneman; Projectorders en Project RFQ doorgevoerd.
12.05.2016 M. Leneman; Project Leider telefoonnummer werd niet goed overgenomen op de layout
13.05.2016 M. Leneman; OPDMAI notitie toegevoegd bovenaan de brief
23.05.2016 M. Leneman; Toevoeging in geval WO naar Huntsman gaat
25.05.2016 M. Leneman; Zin voor opdrachttype klacht uitgesloten
25.05.2016 M. Leneman; Factuuradres, voorwaarden en condities voor Klacht uitgesloten
25.05.2016 M. Leneman; (Project) uren layout aangepast voor intern gebruik
18.07.2016 M. Leneman; Aanmeldinstructie uitgebreid met line breaks template
01.08.2016 M. Leneman; Regel aangepast ter acceptatie opdrachten
! -->
<!-- Defaults hier definieren, zodat de boel backwards compatible blijft.
Anders moet je ze in iedere cust.xsl defini&#xEB;ren, wil je geen '... undifined' foutmeldingen krijgen! -->
<xsl:variable name="logo_file">../../cust/aaxx/aafm_banner.gif</xsl:variable>
<xsl:template name="customer">Onbekend</xsl:template>
<xsl:template name="customer_code">Onbekend</xsl:template>
<xsl:template name="customer_email">Onbekend</xsl:template>
<xsl:template name="invoice_email"></xsl:template>
<xsl:template name="servicedesk_telefoon">Onbekend</xsl:template>
<xsl:template name="opdracht_qr_bookmark"></xsl:template>
<xsl:template match="opdracht" mode="default_opdracht">
<xsl:variable name="overeenkomst_nr">
<xsl:value-of select="uitvoerende/bedrijf/overeenkomst_nr"/>
<xsl:if test="uitvoerende/bedrijf/opmerking2 != ''">(<xsl:value-of select="uitvoerende/bedrijf/opmerking2"/>)</xsl:if>
</xsl:variable>
<xsl:variable name="opdracht_qr_bookmark">
<xsl:call-template name="opdracht_qr_bookmark"/>
</xsl:variable>
<xsl:variable name="customer">
<xsl:call-template name="customer"/>
</xsl:variable>
<xsl:variable name="customer_code">
<xsl:call-template name="customer_code"/>
</xsl:variable>
<xsl:variable name ="bedrijfadreskey">
<xsl:for-each select = "uitvoerende/bedrijf/bedrijfadres">
<xsl:if test = "type = 'O'">
<xsl:value-of select = "key"/>
</xsl:if>
</xsl:for-each>
</xsl:variable>
<xsl:variable name="telnr">
<xsl:choose>
<xsl:when test="melding/kenmerk[@naam='Project Leider']/perslid/telefoonnr != ''">
<xsl:value-of select="melding/kenmerk[@naam='Project Leider']/perslid/telefoonnr"/>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke">
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke/telefoonnr"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="backoffice_contact/telefoonnr"/>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- uit de bon gehaald 12.05.2016
<xsl:variable name="telnr">
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke">
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke/telefoonnr != ''">
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke/telefoonnr"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke/mobiel"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="backoffice_contact/telefoonnr != ''">
<xsl:value-of select="backoffice_contact/telefoonnr"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="backoffice_contact/mobiel"/>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
! -->
<xsl:variable name="contact">
<xsl:choose>
<xsl:when test="melding/kenmerk[@naam='Project Leider']/perslid/naam_friendly != ''">
<xsl:value-of select="melding/kenmerk[@naam='Project Leider']/perslid/naam_friendly"/>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke">
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke/naam_friendly"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="backoffice_contact/naam_friendly"/>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="email">
<xsl:choose>
<xsl:when test="melding/kenmerk[@naam='Project Leider']/perslid/email != ''">
<xsl:value-of select="melding/kenmerk[@naam='Project Leider']/perslid/email"/>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke">
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verantwoordelijke/email"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="backoffice_contact/email"/>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="type_overeenkomst">
<xsl:choose>
<xsl:when test="melding/kenmerk[@naam='Project voorwaarden'] != ''">
<xsl:choose>
<xsl:when test="melding/kenmerk[@naam='Project voorwaarden'] = 'Managing agent'">MA</xsl:when>
<xsl:otherwise>CP</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="uitvoerende/bedrijf/relatietype/omschrijving = 'Managing agent'">MA</xsl:when>
<xsl:otherwise>CP</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:choose>
<xsl:when test="$mode='summary'"/>
<xsl:otherwise>
<html>
<xsl:comment>================================ OPDRACHT ==============================</xsl:comment>
<xsl:comment>HEYDAY new style default XSL template for contract</xsl:comment>
<xsl:call-template name="htmlhead"/>
<xsl:element name="body">
<xsl:if test="$mode!='email'">
<xsl:attribute name="onload">window.print();</xsl:attribute>
</xsl:if>
<tbody>
<xsl:comment> # # # Notities tonen via OPDMAI # # #</xsl:comment>
<xsl:if test="extra_key"><xsl:variable name="x_key"><xsl:value-of select="extra_key"/></xsl:variable>
<tr><td width="80%">
<br/>
<br/>
<font size="2"><xsl:call-template name="linebreaks"> <xsl:with-param name="string" select="notes/note[key=$x_key]/omschrijving"/> </xsl:call-template></font>
<br/>
<tr><td width="80%">
<font size="2">Met vriendelijke groet,<br/><br/>
<xsl:value-of select="notes/note[key=$x_key]/noteur/naam_friendly"/><br/>
<xsl:if test="notes/note[key=$x_key]/noteur/telefoonnr != ''">T <xsl:call-template name="servicedesk_telefoon"></xsl:call-template><br/></xsl:if>
E <xsl:value-of select="notes/note[key=$x_key]/noteur/email"/></font>
<br/><br/>
</td></tr>
</td>
</tr>
<tr><td colspan="4"><hr/></td></tr>
</xsl:if>
</tbody>
<xsl:call-template name="pageheader_aaxx">
<xsl:with-param name="opdr_type" select="opdrachttype/omschrijving"/>
<xsl:with-param name="customer_id" select="//facilitor/header/custId"/>
</xsl:call-template>
<xsl:comment> # # # NIET voor Project) uren en Klacht; onderstaand uitsluiten # # #</xsl:comment>
<br/>
<br/>
<br/>
<xsl:apply-templates select="uitvoerende/bedrijf"/>
<br/>
<br/>
<br/>
<table width="100%" border="0">
<tbody>
<tr>
<td class="label" width="12%">Datum</td>
<td class="seperator" width="1%">|</td>
<td class="value" width="18%">
<xsl:value-of select="datumbegin/datum"/>
<xsl:comment>### hier stond de serverdatum; aangepast naar bovenstaand op 22-10-2015## <xsl:value-of select="concat(/facilitor/header/dateDay,'-',/facilitor/header/dateMonth, '-', /facilitor/header/dateYear)"/></xsl:comment>
</td>
<td class="label" width="10%">Contact</td>
<td class="seperator" width="1%">|</td>
<td class="value" width="30%">
<xsl:value-of select="$contact"/>
</td>
<td class="label" width="10%">Telefoon</td>
<td class="seperator" width="1%">|</td>
<td class="value" width="10%">
<xsl:value-of select="$telnr"/>
</td>
</tr>
<tr>
<td class="label">Ons kenmerk</td>
<td class="seperator">|</td>
<td class="value">
<b><xsl:value-of select="concat($customer_code, ' ', melding/discipline/srtdiscipline/prefix, melding/key, '/', bedrijfopdr_volgnr)"/></b>
</td>
<td class="label">E-mail</td>
<td class="seperator">|</td>
<td class="value" colSpan="4">
<xsl:value-of select="$email"/>
</td>
<td/>
</tr>
<tr>
<td colSpan="9" height="10"/>
</tr>
<tr>
<td class="label" width="10%">Onderwerp</td>
<td class="seperator" width="1%">|</td>
<td class="value" colSpan="7">
<xsl:choose>
<xsl:when test="opdrachttype/omschrijving = 'RFQ' or opdrachttype/omschrijving = 'Project RFQ'">Offerteaanvraag (RFQ) voor:</xsl:when>
<xsl:otherwise>Opdracht voor:</xsl:otherwise>
</xsl:choose>&#xA0;
<xsl:choose>
<xsl:when test="opdrachttype/omschrijving = 'Projectorder' or opdrachttype/omschrijving = 'Project RFQ'">
<xsl:value-of select="melding/kenmerk[@naam='Projectnaam']"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="melding/stdmelding/omschrijving"/>
</xsl:otherwise>
</xsl:choose>
</td>
</tr>
</tbody>
</table>
<br/>
<br/>
<br/>
<!-- Start of DSM Emmen specific overrule -->
<xsl:choose>
<xsl:when test="melding/stdmelding/groep='DSM Emmen MA-III'">
<table cellPadding="10" border="0">
<tbody>
<tr>
<td>
Geachte heer, mevrouw,<br/><br/>
Wij hebben zojuist van onderstaande DSM medewerker de volgende opdracht en/of storing in ontvangst genomen:<br/><br/>
<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="omschrijving"/>
</xsl:call-template><br/><br/>
Het FM team van DSM (Nico.Falke@dsm.com / Jaqcueline.Kloppenburg-krans@dsm.com) zal op basis van deze melding indien noodzakelijk z.s.m. een offici&#xEB;le opdracht naar u sturen op basis waarvan u de uitvoering kunt starten en waarop u de eventuele kosten aan DSM kunt factureren.<br/>
Daarna zullen zij deze opdracht gereed melden.<br/><br/>
Zie deze melding als een aankondiging van de storing of wens die bij het HEYDAY CSS (Customer Support Service) loket gemeld is. Als er verder geen kosten aan verbonden zijn dan kunt u de melding uiteraard gewoon oppakken.<br/><br/><br/>
<u>Voorwaarden en condities:</u><br/>
Conform afspraken met DSM.<br/><br/><br/>
</td>
</tr>
</tbody>
</table>
</xsl:when>
<!-- End of DSM Emmen specific overrule -->
<!-- Start of order text for all other customers -->
<xsl:otherwise>
<table width="100%" border="0">
<tbody>
<tr>
<td width="100%">Geachte
<xsl:choose>
<xsl:when test="contactpersoon">
<xsl:value-of select="concat(contactpersoon/voornaam, ' ', contactpersoon/naam)"/>,</xsl:when>
<xsl:otherwise>heer/mevrouw,</xsl:otherwise>
</xsl:choose>
<br/>
<br/>
<xsl:choose>
<xsl:when test="opdrachttype/omschrijving = 'RFQ' or opdrachttype/omschrijving = 'Project RFQ'">Hierbij verzoeken wij u ons een offerte te doen toekomen voor navolgende werkzaamheden:<br/>
<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="omschrijving"/>
</xsl:call-template>
<xsl:if test="melding/discipline/srtdiscipline/prefix != 'PR'">
<br/>
<br/>
<xsl:comment>### Hiertussen komt het blok voor oorspronkelijke melder ###</xsl:comment>Oorspronkelijke aanvraag van: <xsl:value-of select="melding/melder/naam_full"/> Telefoonnummer: <xsl:value-of select="melding/melder/telefoonnr"/><br/> </xsl:if>
<br/>Uw offerte uiterlijk in te dienen op <xsl:value-of select="einddatum/datum"/><xsl:if test="einddatum/tijd != '00:00'">&#xA0;<xsl:value-of select="einddatum/tijd"/></xsl:if><br/>
<br/>Uw offerte dient een bindend en onherroepelijk aanbod te bevatten en dient door u tenminste 60 dagen gestand te worden gedaan. <br/>
Het aanbod dient een vaste prijs te bevatten voor de bovenvermelde werkzaamheden. Indien niet kan worden overgegaan tot het uitbrengen van een opgave van een vaste prijs dient dit gemotiveerd te worden en dient een zo nauwkeurig mogelijke raming te worden afgegeven. <br/>
Voor nadere informatie kunt u zich wenden tot bovenvermelde contactpersoon.<br/><br/>
<xsl:if test="melding/discipline/srtdiscipline/prefix != 'PR'">Uw offerte dient uiterlijk 5 werkdagen na ontvangst ingediend te zijn.<br/><br/></xsl:if>
<u>Voorwaarden en condities:</u>
<br/>
<xsl:choose>
<xsl:when test="uitvoerende/bedrijf/overeenkomst_nr and melding/discipline/srtdiscipline/prefix != 'PR'">Op deze offerteaanvraag en een op basis hiervan te verstrekken opdracht zijn uitsluitend en onverkort de voorwaarden en condities van <xsl:if test="$type_overeenkomst = 'MA'">uw</xsl:if> opdrachtovereenkomst nr. <xsl:value-of select="$overeenkomst_nr"/> d.d.
<xsl:value-of select="uitvoerende/bedrijf/overeenkomst_datum/datum"/>
<xsl:if test="$type_overeenkomst = 'MA'"> met <xsl:value-of select="$customer"/></xsl:if>van toepassing. <xsl:if test="$type_overeenkomst = 'MA'"> Opdrachtverlening door HEYDAY geschiedt namens en voor rekening van
<xsl:value-of select="$customer"/>.</xsl:if></xsl:when>
<xsl:otherwise>
Op deze offerteaanvraag en een op basis hiervan te verstrekken opdracht zijn uitsluitend en onverkort de navolgende en bijgevoegde voorwaarden en condities <xsl:if test="melding/discipline/srtdiscipline/prefix != 'PR'">van HEYDAY Facility Management BV</xsl:if> van toepassing. Andere voorwaarden zijn niet van toepassing en worden hierbij nadrukkelijk van de hand gewezen. <xsl:if test="$type_overeenkomst = 'MA'">Eventuele opdrachtverlening door HEYDAY geschiedt namens en voor rekening van <xsl:value-of select="$customer"/>.</xsl:if> <br/><xsl:value-of select="kenmerk[@naam='Voorwaarden en condities']"/>
<xsl:comment>
Op deze offerteaanvraag en een op basis hiervan te verstrekken opdracht zijn uitsluitend en onverkort navolgende voorwaarden en condities <xsl:if test="melding/discipline/srtdiscipline/prefix != 'PR'">van HEYDAY Facility Management BV</xsl:if>van toepassing, andere voorwaarden zijn niet van toepassing en worden hierbij nadrukkelijk van de hand gewezen. <br/><xsl:value-of select="kenmerk[@naam='Voorwaarden en condities']"/>
</xsl:comment>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:if test="opdrachttype/omschrijving != 'Klacht' and opdrachttype/omschrijving != '(Project) uren'">
Hiermede verzoeken wij u de navolgende werkzaamheden uit te voeren:</xsl:if><br/>
<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="omschrijving"/>
</xsl:call-template>
<xsl:comment>
<xsl:if test="$type_overeenkomst='CP'">t.b.v. <xsl:value-of select="$customer"/><br/></xsl:if>
</xsl:comment>
<br/>
<xsl:comment>### Hiertussen Komen eventuele objecten met hier, specifieke Essent, kenmerken in ###</xsl:comment>
<xsl:if test="melding/deel">Object(en):
<xsl:for-each select="melding/deel">
<xsl:value-of select="omschrijving"/>&#xA0;<xsl:value-of select="kenmerk[@naam='Equipmentnummer']"/>&#xA0;<xsl:value-of select="kenmerk[@naam='Serienummer']"/></xsl:for-each>
</xsl:if>
<br/>
<xsl:if test="melding/discipline/srtdiscipline/prefix != 'PR' and $customer_code != 'RABO'">
<xsl:comment>### Hiertussen komt het blok voor oorspronkelijke melder ###
</xsl:comment>Oorspronkelijk gemeld door: <xsl:value-of select="melding/melder/naam_full"/> Telefoonnummer:
<xsl:choose>
<xsl:when test="melding/melder/telefoonnr != ''">
<xsl:value-of select="melding/melder/telefoonnr"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="melding/melder/mobiel"/>
</xsl:otherwise>
</xsl:choose>
<br/>
<br/>
</xsl:if>
<xsl:if test="opdrachttype/omschrijving = 'Workorder' or opdrachttype/omschrijving = 'Projectorder'">
<xsl:choose>
<xsl:when test="kosten = 0 or string(number(kosten))='NaN'">Op deze order is geen bedrag vermeld. Bij acceptatie van deze order kunt u (evt. na overleg met FM) aanvangen met de uitvoering van de werkzaamheden en dient u de werkelijke kosten met een maximum van &#x80;500,- binnen 8 werkdagen terug te koppelen aan de Servicedesk. Indien u verwacht dat de kosten >&#x80;500,- zullen zijn, dient u de opdracht te annuleren en bij de Servicedesk een RFQ aan te vragen. LET OP: het factuurbedrag mag NIET afwijken van de opgegeven kosten.<br/></xsl:when>
<xsl:otherwise>De werkzaamheden en/of leveranties dienen te worden uitgevoerd voor een vast totaalbedrag van: &#x80; <xsl:choose><xsl:when test="string(number(kosten))='NaN'">0,00</xsl:when><xsl:otherwise><xsl:value-of select="format-number(kosten, '0,00', 'european')"/></xsl:otherwise></xsl:choose> (excl. BTW).</xsl:otherwise>
</xsl:choose>
<br/>
</xsl:if>
<xsl:comment> ### Geplande aanvang en einde werkzaamheden voor projectorders ### </xsl:comment>
<xsl:if test="opdrachttype/omschrijving = 'Projectorder'" >Geplande aanvangsdatum werkzaamheden: <xsl:value-of select="datumbegin/datum"/>. De werkzaamheden dienen uiterlijk gereed te zijn voor datum <xsl:value-of select="einddatum/datum"/>.<br/></xsl:if>
<xsl:comment> ### Acceptatie en gereed ### </xsl:comment>
<xsl:if test="opdrachttype/omschrijving = 'Workorder' or opdrachttype/omschrijving = 'Docket'" >
Wij verzoeken u de opdracht binnen 2 werkdagen na ontvangst te accepteren dan wel af te wijzen. U kunt dit doen door deze te accepteren in Facilitor of met een e-mail aan <xsl:call-template name="customer_email"></xsl:call-template>. Gereed melding na uitvoering (uiterlijk gereed: <xsl:value-of select="einddatum/datum"/><xsl:if test="einddatum/tijd != '00:00'">&#xA0;<xsl:value-of select="einddatum/tijd"/></xsl:if>) s.v.p. eveneens via Facilitor of e-mail aan <xsl:call-template name="customer_email"></xsl:call-template>.</xsl:if>
<xsl:if test="opdrachttype/omschrijving = 'Docket'">
Zoals reeds bij u bekend kan op deze docket niet gefactureerd worden.
</xsl:if>
<xsl:comment>##Afhandeling alleen tonen indien gevuld ###</xsl:comment>
<xsl:if test="opmerking!=''"><br/><br/><u>Afhandeling opdracht<xsl:value-of select="opdracht/key"/>:</u>&#xA0;<xsl:value-of select="opmerking"/><br/></xsl:if>
<br/>
<br/>
<xsl:if test="opdrachttype/omschrijving != 'Klacht' and opdrachttype/omschrijving != '(Project) uren'">
<u>Voorwaarden en condities:</u>
<br/>
<xsl:comment>
<xsl:if test="$type_overeenkomst='MA' and melding/discipline/srtdiscipline/prefix != 'PR'">
Op deze opdracht zijn uitsluitend en onverkort de voorwaarden en condities van uw opdrachtovereenkomst nr.
<xsl:value-of select="$overeenkomst_nr"/> d.d. <xsl:value-of select="uitvoerende/bedrijf/overeenkomst_datum/datum"/>
<xsl:if test="$type_overeenkomst = 'MA'"> met <xsl:value-of select="$customer"/></xsl:if>van toepassing behoudens voor zover in deze opdracht uitdrukkelijk anders bepaald. Opdrachtverlening door HEYDAY geschiedt namens en voor rekening van <xsl:value-of select="$customer"/>.</xsl:if>
</xsl:comment>
<xsl:if test="$type_overeenkomst='MA' and melding/discipline/srtdiscipline/prefix != 'PR'">
<xsl:choose>
<xsl:when test="uitvoerende/bedrijf/overeenkomst_nr">Op deze opdracht zijn uitsluitend en onverkort de voorwaarden en condities van opdrachtovereenkomst nr.
<xsl:value-of select="$overeenkomst_nr"/> d.d.
<xsl:value-of select="uitvoerende/bedrijf/overeenkomst_datum/datum"/> van toepassing behoudens voor zover in deze opdracht uitdrukkelijk anders bepaald.
</xsl:when>
<xsl:otherwise>
Op deze opdracht zijn de bijgevoegde Algemene Inkoopvoorwaarden van <xsl:value-of select="$customer"/> van toepassing. Opdrachtverlening door HEYDAY geschiedt namens en voor rekening van <xsl:value-of select="$customer"/>.
</xsl:otherwise>
</xsl:choose>
</xsl:if>
<xsl:comment> ### Voorwaarden en condities bij PROJECTORDERS komen uit een kenmerkveld icm het type project uit de melding ### </xsl:comment>
<xsl:if test="$type_overeenkomst='MA' and melding/discipline/srtdiscipline/prefix = 'PR'">
Op deze opdracht zijn uitsluitend en onverkort de navolgende en bijgevoegde voorwaarden en condities van toepassing. Andere voorwaarden zijn niet van toepassing en worden hierbij nadrukkelijk van de hand gewezen. Opdrachtverlening door HEYDAY geschiedt namens en voor rekening van <xsl:value-of select="$customer"/>.
<br/><xsl:value-of select="kenmerk[@naam='Voorwaarden en condities']"/>
</xsl:if>
<xsl:if test="$type_overeenkomst='CP' and melding/discipline/srtdiscipline/prefix = 'PR'">
Op deze opdracht zijn uitsluitend en onverkort de navolgende en bijgevoegde voorwaarden en condities van toepassing. Andere voorwaarden zijn niet van toepassing en worden hierbij nadrukkelijk van de hand gewezen.
<br/><xsl:value-of select="kenmerk[@naam='Voorwaarden en condities']"/>
</xsl:if>
<xsl:if test="$type_overeenkomst='CP' and melding/discipline/srtdiscipline/prefix != 'PR'">
<xsl:choose>
<xsl:when test="uitvoerende/bedrijf/overeenkomst_nr">Op deze opdracht zijn uitsluitend en onverkort de voorwaarden en condities van opdrachtovereenkomst nr. <xsl:value-of select="$overeenkomst_nr"/> d.d.
<xsl:value-of select="uitvoerende/bedrijf/overeenkomst_datum/datum"/> van toepassing behoudens voor zover in deze opdracht uitdrukkelijk anders bepaald.</xsl:when>
<xsl:otherwise>Op deze opdracht zijn uitsluitend en onverkort navolgende voorwaarden en condities<xsl:if test="melding/discipline/srtdiscipline/prefix != 'PR'">, bijgevoegde Algemene Inkoopvoorwaarden van HEYDAY Facility Management BV, </xsl:if> van toepassing, andere voorwaarden zijn niet van toepassing en worden hierbij nadrukkelijk van de hand gewezen. <br/><xsl:value-of select="kenmerk[@naam='Voorwaarden en condities']"/>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:if>
<br/>
<br/>
</xsl:otherwise>
</xsl:choose>
</td>
</tr>
</tbody>
</table>
</xsl:otherwise>
</xsl:choose>
<!-- End of DSM Emmen specific choose -->
<table borderColor="#000000" cellPadding="10" border="1">
<tbody>
<tr>
<xsl:if test="opdrachttype/omschrijving != '(Project) uren'">
<td width="300px">
<u>Bezoek/afleveradres:</u>
<br/>
<xsl:value-of select="$customer"/>
<br/>Locatie: <xsl:value-of select="melding/plaats/regio/district/locatie/code"/>&#xA0;<xsl:value-of select="melding/plaats/regio/district/locatie/omschrijving"/>
<br/>Gebouw: <xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/omschrijving"/>
<br/>Verdieping: <xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/verdieping/omschrijving"/>
<br/>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"/>)
<br/>
<br/>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Adres']"/>
<br/>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Postcode']"/>
<br/>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Plaats']"/>
</td></xsl:if>
<xsl:if test="opdrachttype/omschrijving != 'Docket' and opdrachttype/omschrijving != 'Klacht' and opdrachttype/omschrijving != '(Project) uren'">
<td width="300px">
<u>
<xsl:choose>
<xsl:when test="opdrachttype/omschrijving = 'RFQ' or opdrachttype/omschrijving = 'Project RFQ'">Offerte&#xA0;</xsl:when>
<xsl:otherwise>Rekeningen </xsl:otherwise>
</xsl:choose>s.v.p. sturen naar:</u>
<br/>
<xsl:choose>
<xsl:when test="$type_overeenkomst='MA'">
<xsl:choose>
<xsl:when test="opdrachttype/omschrijving != 'RFQ' or opdrachttype/omschrijving != 'Project RFQ'">
<xsl:value-of select="$customer"/>
<br/>P/A HEYDAY Crediteurenadministratie account </xsl:when>
<xsl:otherwise>HEYDAY Facility Management B.V.<br/>T.a.v.</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>HEYDAY Facility Management B.V.<br/>T.a.v. <xsl:if test="opdrachttype/omschrijving != 'RFQ' and opdrachttype/omschrijving != 'Project RFQ'">Crediteurenadministratie account </xsl:if></xsl:otherwise>
</xsl:choose>
<xsl:value-of select="$customer"/>
<br/>Postbus 80009
<br/>5600 JZ Eindhoven
<xsl:if test="opdrachttype/omschrijving != 'RFQ' and opdrachttype/omschrijving != 'Project RFQ'">
<br/>
<xsl:call-template name="invoice_email"/>
</xsl:if>
<xsl:choose>
<xsl:when test="opdrachttype/omschrijving = 'RFQ' or opdrachttype/omschrijving = 'Project RFQ'">
<br/>
<xsl:call-template name="customer_email"></xsl:call-template>
</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</td>
</xsl:if>
<xsl:if test="$opdracht_qr_bookmark != ''">
<td style="padding: 10px;"> <u>Afmelden/bijwerken:</u>
<br/>Scan deze QR code met uw
<br/>smartphone om de opdracht
<br/>te behandelen
<br/>
<xsl:element name="img">
<xsl:attribute name="align">center</xsl:attribute>
<xsl:attribute name="width">176px</xsl:attribute>
<xsl:attribute name="srcx">https://<xsl:value-of select="/facilitor/header/custId"/>.facilitor.nl/?u=<xsl:value-of select="$opdracht_qr_bookmark"/>&amp;text=%3fmobile%3D1%26u%3Dopdracht%26k%3D<xsl:value-of select="key"/></xsl:attribute>
<xsl:attribute name="qrc">https://<xsl:value-of select="/facilitor/header/custId"/>.facilitor.nl/?mobile=1&amp;qrc=1&amp;u=opdracht&amp;k=<xsl:value-of select="key"/></xsl:attribute>
</xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'SABIC' and uitvoerende/bedrijf/kenmerk[@naam='Gebruikt afmeldscherm'] = 'Ja'">
<td style="padding: 2px;"><u>Opdracht behandelen</u>
<br/>
<br/>Klik op onderstaande button
<br/>om de opdracht te behandelen
<br/>
<br/>
<xsl:element name="a">
<xsl:attribute name="align">left</xsl:attribute>
<xsl:attribute name="width">160px</xsl:attribute>
<xsl:attribute name="href">https://aasa.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="uitvoerende//bedrijf/bedrijfadres/key"/>)</xsl:attribute>
<img src="https://thumbs.dreamstime.com/t/wrench-hammer-tools-icon-isolated-white-background-40025197.jpg" height="160px" width="160px" id="rate"/>
<xsl:comment><xsl:element name="img"><xsl:attribute name="style">height: 160px; width: 160px; margin:0cm; padding:0; border:0px</xsl:attribute>
<xsl:attribute name="qrc">https://aasa.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="uitvoerende//bedrijf/bedrijfadres/key"/>)
</xsl:attribute></xsl:element></xsl:comment></xsl:element>
</td>
</xsl:if>
<!--
<xsl:if test="$customer_code= 'AH'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aaah.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aaah.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'AR'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aaar.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aaar.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'DB'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aadb.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aadb.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'DOW'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aado.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aado.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'DSM'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aads.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aads.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'RWE'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aaes.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aaes.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'EY'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aaey.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aaey.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'GN'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aagn.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aagn.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'HBC'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aahb.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aahb.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'RWS'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aarw.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aarw.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'PM'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aapm.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aapm.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'SABIC'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aasa.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aasa.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'VG'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://aavg.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://aavg.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
<xsl:if test="$customer_code= 'RABO'">
<td style="padding:0px;"><font color='#000000' size="2"><b>Opdracht behandelen:</b></font>
<br/>
<xsl:element name="a">
<xsl:attribute name="href">https://rabo.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)</xsl:attribute>
<br/>Scan of klik om de opdracht te behandelen:<br/><br/>
<xsl:element name="img">
<xsl:attribute name="style">height: 3.25cm; width: 3.25cm; margin:0cm; padding:0; border:none</xsl:attribute>
<xsl:attribute name="qrc">https://rabo.facilitor.nl/lockeduser(opdracht,<xsl:value-of select="key"/>,<xsl:value-of select="$bedrijfadreskey"/>)
</xsl:attribute></xsl:element></xsl:element>
</td>
</xsl:if>
-->
</tr>
</tbody>
</table>
<br/>
<xsl:comment>### Ten behoeve van gebouwspecifieke aanmeldinstructie ###</xsl:comment>
<font size="2"><b><xsl:call-template name="linebreaks"> <xsl:with-param name="string" select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Aanmeldinstructie']"/> </xsl:call-template></b></font>
<xsl:if test="$customer_code= 'RABO'">
<br/>
<font size="2"><b>Openingstijden: </b><xsl:call-template name="linebreaks"> <xsl:with-param name="string" select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Openingstijden']"/> </xsl:call-template></font>
</xsl:if>
<xsl:if test="$customer_code= 'HBC'">
<br/>
<font size="2"><b>Openingstijden: </b><xsl:call-template name="linebreaks"> <xsl:with-param name="string" select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Openingstijden publiek']"/> </xsl:call-template></font>
</xsl:if>
<xsl:comment>### Ten behoeve van gebouwspecifieke aanmeldinstructie ###</xsl:comment>
<table borderColor="#000000" cellPadding="10" border="0">
<tbody>
<tr>
<td>
<xsl:comment> ### Gemeente Nijmegen specifieke kenmerken bij gebouw ### </xsl:comment>
<xsl:if test="$customer_code= 'GN'">
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Pandsoort'] != ''"> <b>Pandsoort: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Pandsoort']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Interne eigenaar'] != ''"> <b>Interne eigenaar: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Interne eigenaar']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Categorie onderhoud'] != ''"> <b>Categorie onderhoud: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Categorie onderhoud']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Soort monument'] != ''"> <b>Soort monument: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Soort monument']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Dynamisch/statisch'] != ''"> <b>Dynamisch/statisch: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Dynamisch/statisch']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Accountmanager'] != ''"> <b>Accountmanager: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Accountmanager']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Vastgoedmanager'] != ''"> <b>Vastgoedmanager: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Vastgoedmanager']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Communicatie'] != ''"> <b>Communicatie: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Communicatie']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Openingstijden'] != ''"> <b>Openingstijden: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Openingstijden']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Contactpersoon'] != ''"> <b>Contactpersoon: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Contactpersoon']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Contactpersoon e-mail'] != ''"> <b>Contactpersoon e-mail: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Contactpersoon e-mail']"/><br/></xsl:if>
<xsl:if test="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Contactpersoon Telefoon'] != ''"> <b>Contactpersoon Telefoon: </b>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/kenmerk[@naam='Contactpersoon Telefoon']"/><br/></xsl:if>
</xsl:if>
</td>
</tr>
</tbody>
</table>
<table borderColor="#000000" cellPadding="0" border="0">
<tbody>
<tr>
<td>
<xsl:comment> ### Tekst op opdracht naar leverancier in geval van Asbest ### </xsl:comment>
<xsl:if test="$customer_code= 'SABIC'">
<xsl:if test="melding/stdmelding/key=1080"><b>Aanmeldinstructie: in verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1088"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1089"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1090"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1099"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1100"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1101"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1102"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1104"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1105"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1108"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1180"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1181"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1182"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1183"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1187"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1189"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1193"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1195"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1196"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1218"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1224"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1229"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1230"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1245"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1247"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1256"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1257"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1362"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1363"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1421"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1462"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1601"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1601"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1601"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1781"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1783"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1784"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1790"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1794"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1795"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1796"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1797"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
<xsl:if test="melding/stdmelding/key=1800"><b>Aanmeldinstructie: In verband met mogelijke aanwezigheid van asbest alvorens uitvoering graag melden bij HEYDAY-SABIC, balie G006-020.</b></xsl:if>
</xsl:if>
</td>
</tr>
</tbody>
</table>
<br/>
<table border="0">
<tbody>
<tr>
<td>Met vriendelijke groet,
<br/>HEYDAY Facility Management B.V.</td>
</tr>
<tr>
<td height="20"/>
</tr>
</tbody>
</table>
<table width="100%" border="0">
<tbody>
<tr>
<td class="footer" width="100%">Deze brief is automatisch gegenereerd en daarom niet ondertekend.</td>
</tr>
</tbody>
</table>
<table width="100%" border="0">
<tbody>
<tr>
<td class="footer" width="100%">Gelieve in alle correspondentie betreffende deze opdracht het ordernummer
<xsl:value-of select="concat($customer_code, ' ', melding/discipline/srtdiscipline/prefix, melding/key, '/', bedrijfopdr_volgnr)"/> te vermelden.</td>
</tr>
</tbody>
</table>
<table width="100%" border="0">
<tbody>
<tr>
<td class="footer" width="100%">Servicedesk
<xsl:value-of select="$customer"/>
<span class="seperator">|</span>
<xsl:call-template name="servicedesk_telefoon"></xsl:call-template>
<span class="seperator">|</span>Postbus 80009
<span class="seperator">|</span>5600 JZ Eindhoven
<span class="seperator">|</span>
<xsl:call-template name="customer_email"></xsl:call-template>
</td>
</tr>
</tbody>
</table>
<xsl:comment>##Afhandeling op een volgende pagina voor behoud layout; alleen tonen indien gevuld ###
<xsl:if test="opmerking!=''">
<div style="page-break-before:always">&#xA0;</div>
<table border="0" width="100%" bordercolor="#000000">
<tbody>
<tr>
<td width="100%">Afhandeling opdracht <xsl:value-of select="opdracht/key"/>: <xsl:value-of select="opmerking"/></td>
</tr>
</tbody>
</table>
</xsl:if></xsl:comment>
</xsl:element>
</html>
</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. --><!-- Stylus Studio meta-information - (c) 2004-2009. Progress Software Corporation. All rights reserved.
<metaInformation>
<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

@@ -32,5 +32,9 @@ CALL ..\..\..\utils\gen_export\gen_export.bat PWRBI_MLD
CALL ..\..\..\utils\gen_export\gen_export.bat PWRBI_KOSTEN
CALL ..\..\..\utils\gen_export\gen_export.bat PWRBI_VASTGOED
CALL ..\..\..\utils\gen_export\gen_export.bat PWRBI_CONTRACT
REM ================================================== transfer file to BLCC ftp
ftp.exe -ni -s:ftp_blcc2pwrbi.scr

8
CUST/CEVA/CEVA.css Normal file
View File

@@ -0,0 +1,8 @@
/*
* $Revision$
* $Id$
*/
#headerblok
{
background-position: 60px 1px;
}

BIN
CUST/CEVA/banner.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

BIN
CUST/CEVA/oracle.udl Normal file

Binary file not shown.

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 CEVA

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/CEVA/tmpl_logo.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

10
CUST/CEVA/xsl/CEVA.xsl Normal file
View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxml="urn:schemas-microsoft-com:xslt">
<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:variable name="Xsrtnotificatiecode">MLDNEW</xsl:variable>
</xsl:stylesheet>

View File

@@ -493,7 +493,143 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
</tr>
</table>
</xsl:when>
<xsl:when test="opdrachttype/key='3541' or opdrachttype/key='3621'">
<table border="0" width="100%" cellpadding="2">
<tr>
<td colspan="3"/>
<td style="text-align:right"><xsl:element name="img">
<xsl:attribute name="width">140px</xsl:attribute>
<xsl:attribute name="src">../../appl/shared/barcode.asp?text=<xsl:value-of select="melding/discipline/srtdiscipline/prefix"/><xsl:value-of select="melding_key"/>&amp;height=50&amp;narrow=1&amp;wide=3</xsl:attribute>
</xsl:element>
</td>
</tr>
<tr>
<td/>
</tr>
<tr>
<td>
</td>
</tr>
<tr>
<td/>
</tr>
<tr>
<td/>
</tr>
<tr>
<td rowspan="2" valign="top">
<b style="font-size:12pt"><b>TICKET </b>
<xsl:value-of select="melding/discipline/srtdiscipline/prefix"/>
<xsl:value-of select="melding_key"/>
</b>
</td>
<td width="34%" valign="bottom">&#xA0;</td>
<td width="16%" rowspan="2" valign="top">
<b style="font-size:12pt">
</b>
</td>
</tr>
<tr>
<td colspan="2"/>
</tr>
<tr>
<td colspan="4" style="height:10"/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
<tr>
<td colspan="2" rowspan="2" valign="top">
<b style="font-size:12pt">Omschrijving</b>
</td>
</tr>
<td colspan="2"/>
<tr>
</tr>
<tr>
<td colspan="3">
<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="omschrijving"/>
</xsl:call-template>
</td>
</tr>
<tr>
<td colspan="2"/>
</tr>
<tr>
<td colspan="4" style="height:10"/>
</tr>
<tr>
<td>
<b>Gewenste datum gereed:</b>
</td>
<td>
<xsl:value-of select="datumgereed/datum"/>
</td>
<td colspan="2"/>
</tr>
<tr>
<td>
<b>Status:</b>
</td>
<td>
<xsl:value-of select="//opdracht/status"/>
</td>
</tr>
<tr>
<td>
<b>Melding:</b>
</td>
<td>
<xsl:value-of select="melding/stdmelding/discipline/srtdiscipline/prefix"/>:<xsl:value-of select="melding/stdmelding/discipline/omschrijving"/>/<xsl:value-of select="melding/stdmelding/omschrijving"/>
</td>
<td colspan="2"/>
</tr>
<tr>
<td>
<b>Opdrachtdatum:</b>
</td>
<td>
<xsl:value-of select="datumbegin/datum"/>
</td>
<td colspan="2"/>
</tr>
<tr>
<td colspan="4" style="height:10"/>
</tr>
<tr>
<td colspan="4">
<hr/>
</td>
</tr>
<tr>
<td colspan="4">
<b>*** Attentie ***</b>
</td>
</tr>
<tr/>
<td/>
<tr>
<td>Bij alle correspondentie (ook op facturen) svp bovenstaand ticketnummer vermelden.</td>
</tr>
</table>
</xsl:when>
<xsl:otherwise>
<table border="0" width="100%" cellpadding="2">
<tr>
<td colspan="3"/>
@@ -675,10 +811,13 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
<xsl:when test="position()=1">
<td>
<b>Betreft:</b>
</td>
</xsl:when>
<xsl:otherwise>
<td/>
</xsl:otherwise>
</xsl:choose>
<td>
@@ -722,6 +861,9 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
</tr>
</table>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

View File

@@ -654,13 +654,13 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
</td>
</tr>
<xsl:variable name="gebouwbeheerder">
<xsl:value-of select="//workflowsteps/workflowstep/melding/kenmerk[@naam='Akkoord gebouwbeheerder']"/>
<xsl:value-of select="//melding/kenmerk[@naam='Akkoord gebouwbeheerder']"/>
</xsl:variable>
<xsl:variable name="procesbeheerder">
<xsl:value-of select="//workflowsteps/workflowstep/melding/kenmerk[@naam='Akkoord procesbeheerder']"/>
<xsl:value-of select="//melding/kenmerk[@naam='Akkoord procesbeheerder']"/>
</xsl:variable>
<xsl:variable name="veiligheidskundige">
<xsl:value-of select="//workflowsteps/workflowstep/melding/kenmerk[@naam='Akkoord veiligheidskundige']"/>
<xsl:value-of select="//melding/kenmerk[@naam='Akkoord veiligheidskundige']"/>
</xsl:variable>
<xsl:if test="$gebouwbeheerder='Ja' or $procesbeheerder='Ja' or $veiligheidskundige='Ja'">
<tr>
@@ -670,9 +670,9 @@ De Algemene Inkoopvoorwaarden van HTCE Site Management BV worden tevens op eerst
<!--xsl:if test="$gebouwbeheerder='Ja'"><br/>Gebouwbeheerder</xsl:if>
<xsl:if test="$procesbeheerder='Ja'"><br/>Procesbeheerder</xsl:if>
<xsl:if test="$veiligheidskundige='Ja'"><br/>Veiligheidskundige</xsl:if-->
<xsl:if test="$gebouwbeheerder='Ja'"><br/>Gebouwbeheerder: <xsl:value-of select="//workflowsteps/workflowstep/melding[discipline/key='206']/behandelaar/naam_friendly"/></xsl:if>
<xsl:if test="$procesbeheerder='Ja'"><br/>Procesbeheerder: <xsl:value-of select="//workflowsteps/workflowstep/melding[discipline/key='262']/behandelaar/naam_friendly"/></xsl:if>
<xsl:if test="$veiligheidskundige='Ja'"><br/>Veiligheidskundige: <xsl:value-of select="//workflowsteps/workflowstep/melding[discipline/key='202']/behandelaar/naam_friendly"/></xsl:if>
<xsl:if test="$gebouwbeheerder='Ja'"><br/>Gebouwbeheerder: <xsl:value-of select="//melding[discipline/key='206']/behandelaar/naam_friendly"/></xsl:if>
<xsl:if test="$procesbeheerder='Ja'"><br/>Procesbeheerder: <xsl:value-of select="//melding[discipline/key='262']/behandelaar/naam_friendly"/></xsl:if>
<xsl:if test="$veiligheidskundige='Ja'"><br/>Veiligheidskundige: <xsl:value-of select="//melding[discipline/key='202']/behandelaar/naam_friendly"/></xsl:if>
</b>
</td>
</tr>

View File

@@ -575,8 +575,8 @@
</cbc:ID>
<cac:FinancialInstitutionBranch>
<cac:FinancialInstitution>
<cbc:ID schemeID="BIC">-</cbc:ID>
<cbc:Name>-</cbc:Name>
<cbc:ID schemeID="BIC"><xsl:call-template name="BANK_BIC_NAAM"><xsl:with-param name="p_str" select="PRS_BEDRIJF_BANKBIC"/></xsl:call-template></cbc:ID>
<cbc:Name><xsl:call-template name="BANK_BIC_NAAM"><xsl:with-param name="p_str" select="PRS_BEDRIJF_BANKNAAM"/></xsl:call-template></cbc:Name>
</cac:FinancialInstitution>
</cac:FinancialInstitutionBranch>
</cac:PayeeFinancialAccount>
@@ -678,6 +678,14 @@
</xsl:choose>
</xsl:template>
<xsl:template name="BANK_BIC_NAAM">
<xsl:param name="p_str"/>
<xsl:choose>
<xsl:when test="string-length($p_str) != 0"><xsl:value-of select="$p_str"/></xsl:when>
<xsl:otherwise>-</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="BANKREKENINGNR">
<xsl:param name="p_fin_factuur_bankreknr"/>
<xsl:param name="p_prs_bedrijf_bankreknr"/>

View File

@@ -27,7 +27,7 @@
<xsl:template name="get_filename_attachment">
<xsl:choose>
<xsl:when test="../Attachments/Attachment/@fileName != ''"><xsl:value-of select="../Attachments/Attachment/@fileName"/></xsl:when>
<xsl:when test="//Attachments/Attachment[1]/FileName != ''"><xsl:value-of select="//Attachments/Attachment[1]/FileName"/></xsl:when>
</xsl:choose>
</xsl:template>

View File

@@ -25,8 +25,9 @@
<!-- Er is geen BTW percentage, hier maar op HARD op 'Hoog' zetten -->
<xsl:template match="ServiceOpdracht">exec_code;ax_supplier_id;mld_melding_externnr;mld_melding_omschrijving;prs_afdeling_externnr;mld_opdr_po_companyid;mld_opdr_opzichter;mld_melding_cust_name;mld_melding_cust_straat;mld_melding_cust_huisnr;mld_melding_cust_huisnr2;mld_melding_cust_postcode;mld_melding_cust_plaats;mld_melding_cust_telefoonnr;mld_melding_cust_mobielnr;mld_melding_cust_email;mld_melding_cust_object_omschr;complexnummer;pandnummer;VGEnummer;mld_melding_memo;mld_opdr_externnr;mld_opdr_ordernr;mld_opdr_datumbegin;mld_opdr_datum_plan;mld_opdr_einddatum;mld_opdr_mat_linenr;mld_opdr_mat_code;mld_opdr_mat_naam;mld_opdr_mat_eenheidcode;mld_opdr_mat_eenheid;mld_opdr_mat_prijs;mld_opdr_mat_aantal;mld_opdr_mat_btwperc;mld_opdr_mat_totaal
<xsl:for-each select="_OpdrachtUitvoerder/Opdracht">1;<xsl:value-of select="../Uitvoerder/Code_Uitvoerder"/>;<xsl:call-template name="REMS_TaskId"/>;<xsl:call-template name="REMS_Opdracht_Omschrijving"/>;<xsl:value-of select="../../header/ERP_id"/>;<xsl:value-of select="../../header/ERP_id"/>;;<xsl:call-template name="REMS_Opdracht_Contactpersoon"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdracht_Locatie/Opdracht_straat"/></xsl:call-template>;<xsl:value-of select="Opdracht_Locatie/Opdracht_huisnummer"/>;<xsl:value-of select="Opdracht_Locatie/Opdracht_volgletter"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdracht_Locatie/Opdracht_postcode"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdracht_Locatie/Opdracht_plaats"/></xsl:call-template>;<xsl:call-template name="REMS_Opdracht_Contactpersoon_Tel1"/>;<xsl:call-template name="REMS_Opdracht_Contactpersoon_Tel2"/>;<xsl:call-template name="REMS_Opdracht_Contactpersoon_Email"/>;;<xsl:value-of select="../Gebouwenboom/Codes/Complex/Beheercode_volledig"/>;<xsl:value-of select="../Gebouwenboom/Codes/Subcomplex/Beheercode_volledig"/>;<xsl:value-of select="../Gebouwenboom/Codes/VHE/Beheercode_volledig"/>;<xsl:call-template name="REMS_Opdracht_Memo"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdrachtnummer"/></xsl:call-template>;<xsl:call-template name="REMS_TaskId"/>;<xsl:value-of select="translate(Opdrachtdatum,'zZ','')"/>;<xsl:value-of select="translate(Plandatum,'zZ','')"/>;<xsl:value-of select="translate(Einddatum,'zZ','')"/>;;;;;;;;;
2;<xsl:value-of select="../Uitvoerder/Code_Uitvoerder"/>;<xsl:call-template name="REMS_TaskId"/>;;<xsl:value-of select="../../header/ERP_id"/>;<xsl:value-of select="../../header/ERP_id"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="../Opzichter/OpzichterInfo/Opzichtergegevens/Naam"/></xsl:call-template>;;;;;;;;;;;<xsl:value-of select="../Gebouwenboom/Codes/Complex/Beheercode_volledig"/>;<xsl:value-of select="../Gebouwenboom/Codes/Subcomplex/Beheercode_volledig"/>;<xsl:value-of select="../Gebouwenboom/Codes/VHE/Beheercode_volledig"/>;;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdrachtnummer"/></xsl:call-template>;<xsl:call-template name="REMS_TaskId"/>;;;;;;;;;;;;&#10;</xsl:for-each>
<xsl:for-each select="_OpdrachtUitvoerder/Opdracht">1;<xsl:value-of select="../Uitvoerder/Code_Uitvoerder"/>;<xsl:call-template name="REMS_TaskId_DEFAULT"/>;<xsl:call-template name="REMS_Opdracht_Omschrijving"/>;<xsl:value-of select="../../header/ERP_id"/>;<xsl:value-of select="../../header/ERP_id"/>;;<xsl:call-template name="REMS_Opdracht_Contactpersoon"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdracht_Locatie/Opdracht_straat"/></xsl:call-template>;<xsl:value-of select="Opdracht_Locatie/Opdracht_huisnummer"/>;<xsl:value-of select="Opdracht_Locatie/Opdracht_volgletter"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdracht_Locatie/Opdracht_postcode"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdracht_Locatie/Opdracht_plaats"/></xsl:call-template>;<xsl:call-template name="REMS_Opdracht_Contactpersoon_Tel1"/>;<xsl:call-template name="REMS_Opdracht_Contactpersoon_Tel2"/>;<xsl:call-template name="REMS_Opdracht_Contactpersoon_Email"/>;;<xsl:value-of select="../Gebouwenboom/Codes/Complex/Beheercode_volledig"/>;<xsl:value-of select="../Gebouwenboom/Codes/Subcomplex/Beheercode_volledig"/>;<xsl:value-of select="../Gebouwenboom/Codes/VHE/Beheercode_volledig"/>;<xsl:call-template name="REMS_Opdracht_Memo"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdrachtnummer"/></xsl:call-template>;<xsl:call-template name="REMS_TaskId_DEFAULT"/>;<xsl:value-of select="translate(Opdrachtdatum,'zZ','')"/>;<xsl:value-of select="translate(Plandatum,'zZ','')"/>;<xsl:value-of select="translate(Einddatum,'zZ','')"/>;;;;;;;;;
2;<xsl:value-of select="../Uitvoerder/Code_Uitvoerder"/>;<xsl:call-template name="REMS_TaskId_DEFAULT"/>;;<xsl:value-of select="../../header/ERP_id"/>;<xsl:value-of select="../../header/ERP_id"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="../Opzichter/OpzichterInfo/Opzichtergegevens/Naam"/></xsl:call-template>;;;;;;;;;;;<xsl:value-of select="../Gebouwenboom/Codes/Complex/Beheercode_volledig"/>;<xsl:value-of select="../Gebouwenboom/Codes/Subcomplex/Beheercode_volledig"/>;<xsl:value-of select="../Gebouwenboom/Codes/VHE/Beheercode_volledig"/>;;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Opdrachtnummer"/></xsl:call-template>;<xsl:call-template name="REMS_TaskId_DEFAULT"/>;;;;;;;;;;;;&#10;</xsl:for-each>
<xsl:for-each select="_OpdrachtUitvoerder/Opdracht/Opdracht_Budget">3;<xsl:value-of select="../../Uitvoerder/Code_Uitvoerder"/>;<xsl:call-template name="REMS_TaskId_MATERIAALREGEL"/>;;<xsl:value-of select="../../../header/ERP_id"/>;<xsl:value-of select="../../../header/ERP_id"/>;;;;;;;;;;;;;;;;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="../Opdrachtnummer"/></xsl:call-template>;<xsl:call-template name="REMS_TaskId_MATERIAALREGEL"/>;;;;<xsl:call-template name="Materiaal_regel"><xsl:with-param name="p_linenr" select="Budgetregel"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Budgetcode"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Omschrijving"/></xsl:call-template>;<xsl:call-template name="Materiaal_eenheidSidB"><xsl:with-param name="p_unit" select="st."/></xsl:call-template>;<xsl:value-of select="'ST.'"/>;<xsl:value-of select="Budgetbedrag"/>;<xsl:value-of select="'1'"/>;<xsl:call-template name="Mareon_btwperc"><xsl:with-param name="p_btwperc" select="'Hoog'"/></xsl:call-template>;<xsl:value-of select="Budgetbedrag"/>;&#10;</xsl:for-each>
</xsl:template>
<xsl:template name="vrije_tekst_limiet">
@@ -104,10 +105,14 @@
</xsl:call-template>
</xsl:template>
<xsl:template name="REMS_TaskId">
<xsl:template name="REMS_TaskId_DEFAULT">
<xsl:value-of select="../../header/ERP_id"/>_<xsl:value-of select="../../header/environment"/>_<xsl:value-of select="Opdrachtnummer"/>
</xsl:template>
<xsl:template name="REMS_TaskId_MATERIAALREGEL">
<xsl:value-of select="../../../header/ERP_id"/>_<xsl:value-of select="../../../header/environment"/>_<xsl:value-of select="../Opdrachtnummer"/>
</xsl:template>
<xsl:template name="coalesce">
<xsl:param name="p_str1"/>
<xsl:param name="p_str2"/>
@@ -161,8 +166,4 @@
</xsl:template>
</xsl:stylesheet><!-- Stylus Studio meta-information - (c) 2004-2007. Progress Software Corporation. All rights reserved.
<metaInformation>
<scenarios ><scenario default="yes" name="Scenario1" userelativepaths="yes" externalpreview="no" url="serviceopdracht.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>
-->
</xsl:stylesheet>

View File

@@ -365,7 +365,8 @@
</td>
<td align="left">
<xsl:value-of select="melding/melder/naam_friendly"/>
</td>
</td>
<td align="right">
<b><xsl:value-of select="//lcl/FAC/kostenplaats"/>:</b>
</td>
@@ -422,7 +423,18 @@
<xsl:value-of select="datumgereed/datum"/>
</td>
</tr>
</tr>
<tr>
<td colspan="4" height="10px" valign="center">
</td>
</tr>
<tr>
<td align="right">
<b>Onderwerp:</b>
</td>
<td align="left">
<xsl:value-of select="melding/onderwerp"/>
</td>
</tr>
<tr>
<td colspan="4" height="10px" valign="center">
<hr/>
@@ -453,7 +465,7 @@
<xsl:otherwise>
<td align="left" colspan="3">
<!-- MDUX#51215 Alleen bij een automatisch verstuurde opdrachtbon -->
<!-- MDUX#51215 Alleen bij een automatisch verstuurde opdrachtbon -->
<xsl:if test="uitvoerende/bedrijf/bedrijfadres[type='O' and typeopdr='81']/key or uitvoerende/bedrijf/bedrijfadres[type='O']/typeopdr">
Beste heer/mevrouw,<br/><br/>
Hierbij de opdracht van bovenstaande locatie voor het volgende:<br/><br/>
</xsl:if>
@@ -474,7 +486,7 @@
</xsl:for-each>
</table>
<!-- MDUX#51215 Alleen bij een automatisch verstuurde opdrachtbon -->
<!-- MDUX#51215 Alleen bij een automatisch verstuurde opdrachtbon -->
<xsl:if test="uitvoerende/bedrijf/bedrijfadres[type='O' and typeopdr='81']/key or uitvoerende/bedrijf/bedrijfadres[type='O']/typeopdr">
<br/><br/>
<br>Indien er vragen zijn over deze opdracht, verzoeken wij u contact op te nemen met de vestiging via bovenstaande contactgegevens.</br><br/>
<br>Graag ontvangen wij een bevestiging van deze opdracht, inclusief planning via <a href="mailto:facilitair@medux.nl">facilitair@medux.nl</a>.</br><br/>
@@ -1918,3 +1930,15 @@
</xsl:template>
</xsl:stylesheet>
<!-- Stylus Studio meta-information - (c) 2004-2009. Progress Software Corporation. All rights reserved.
<metaInformation>
<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

@@ -1241,7 +1241,13 @@
<td colspan="4" style="height:40px"/>
</tr>
<tr>
<td colspan="4" style="text-align:center; font-size:9px"><xsl:value-of select="//lcl/BES/order_disclaimer1"/>(<xsl:value-of select="id"/>)<xsl:value-of select="//lcl/BES/order_disclaimer2"/></td>
<td colspan="4" style="text-align:center; font-size:12px"><xsl:value-of select="//lcl/BES/order_disclaimer1"/>(<xsl:value-of select="id"/>)<xsl:value-of select="//lcl/BES/order_disclaimer2"/></td>
</tr>
<tr>
<td colspan="4" style="height:10px"/>
</tr>
<tr>
<td colspan="4" style="text-align:center; font-size:9px">Op leveringen die gedaan zijn op basis van dit formulier zijn onze algemene leveringsvoorwaarden van toepassing. Indien sprake is van een mantelovereenkomst geschiedt deze order onder de bepalingen uit de mantelovereenkomst.</td>
</tr>
</table>
</TD>

BIN
CUST/TWYN/oracle.udl Normal file

Binary file not shown.

BIN
CUST/TWYN/tmpl_logo3.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -16,14 +16,15 @@
<xsl:key name="GROUPBY_SOORTCODE" match="//data_row" use="SCODE"/>
<xsl:key name="GROUPBY_PRS_LEVERANCIER_NR" match="//data_row" use="PRS_LEVERANCIER_NR"/>
<xsl:key name="GROUPBY_CONTRACT" match="//data_row" use="MLD_OPDR_ORDERNR"/>
<xsl:key name="GROUPBY_BEDRIJF_SOORTCODE" match="//data_row" use="concat(PRS_BEDRIJF_KEY, '|', SCODE)"/>
<xsl:key name="GROUPBY_CONTRACTNR" match="//data_row" use="concat(MLD_OPDR_ORDERNR, '|', MLD_OPDR_BEDRIJFOPDR_VOLGNR)"/>
<xsl:key name="GROUPBY_ACCOUNTCODE" match="//data_row" use="ACCOUNTCODE"/>
<xsl:key name="GROUPBY_MLD_OPDR_DATUMBEGIN" match="//data_row" use="MLD_OPDR_DATUMBEGIN"/>
<xsl:key name="GROUPBY_MLD_OPDR_DATUM_NR" match="//data_row" use="concat(MLD_OPDR_DATUM_BEGIN, '|', MLD_OPDR_ORDERNR)"/>
<xsl:key name="GROUPBY_FACTUUR_ADVIES_JAAR" match="//data_row" use="FIN_FACTUUR_ADVIES_JAAR"/>
<xsl:key name="GROUPBY_FACTUUR_ADVIES_MAAND" match="//data_row" use="FIN_FACTUUR_ADVIES_MAAND"/>
<xsl:key name="GROUPBY_FACTUUR_DATUM_JAAR" match="//data_row" use="FIN_FACTUUR_DATUM_JAAR"/>
<xsl:key name="GROUPBY_FACTUUR_DATUM_MAAND" match="//data_row" use="FIN_FACTUUR_DATUM_MAAND"/>
<xsl:key name="GROUPBY_FACTUUR_ADVIES_JAAR" match="//data_row" use="FACTUUR_ADVIES_JAAR"/>
<xsl:key name="GROUPBY_FACTUUR_ADVIES_MAAND" match="//data_row" use="FACTUUR_ADVIES_MAAND"/>
<xsl:key name="GROUPBY_FACTUUR_DATUM_JAAR" match="//data_row" use="FACTUUR_DATUM_JAAR"/>
<xsl:key name="GROUPBY_FACTUUR_DATUM_MAAND" match="//data_row" use="FACTUUR_DATUM_MAAND"/>
<xsl:template name="stylesheet">
<style>
@@ -228,6 +229,12 @@
border-left-width: 2px;
}
.trline {
border: 1px solid tranparant;
border-left-width: 2px;
border-spacing: 0 1px;
}
.trblk_td {
padding-right: 6px;
}
@@ -410,7 +417,7 @@
<xsl:when test="@title = 'MMW_CONT'">
<xsl:call-template name="overzicht_meerminder_opdracht"/>
</xsl:when>
<xsl:when test="@title = 'MMW_INVCO'">
<xsl:when test="@title = 'MMWINVCO'">
<xsl:call-template name="overzicht_meerminder_factuur"/>
</xsl:when>
<xsl:when test="@title = 'FACT_MND'">
@@ -438,6 +445,7 @@
</xsl:template>
<!-- =======================================================
CONT_ALF
contractanten alfabetisch
=======================================================
-->
@@ -504,6 +512,7 @@
</xsl:template>
<!-- =======================================================
BREG_RUB
Overzicht rubrieken, een totaaloverzicht
=======================================================
-->
@@ -635,6 +644,7 @@
</xsl:template>
<!-- =======================================================
CONT_RUB
contracten per rubriek
=======================================================
-->
@@ -688,7 +698,6 @@
<xsl:variable name="v_groepcode" select="GCODE"/>
<tr class="header">
<!--td colspan="9" class="tdt"><h3><xsl:value-of select="KOSTENGROEP"/></h3></td-->
<td colspan="9"><b><br/><xsl:value-of select="KOSTENGROEP"/></b></td>
</tr>
@@ -706,7 +715,7 @@
<td class="tdtr"><xsl:value-of select="format-number(BTW, '#.##0,00', 'euro')"/></td>
<td class="tdtr" style="padding-right:5px;"><xsl:value-of select="format-number(FACTUREN, '#.##0,00', 'euro')"/></td>
</tr>
</xsl:for-each>
</xsl:for-each>
<tr class="footer">
<td colspan="3"><b><xsl:value-of select="GCODE"/></b></td>
@@ -741,6 +750,7 @@
</xsl:template>
<!-- =======================================================
CON_FACT
contracten en facturen per contractant
=======================================================
Kent 5 afggregatie niveaus (subtotalen)
@@ -820,7 +830,7 @@
<xsl:variable name="v_tefactureren_btw" select="$v_contract_btw - $v_facturen_btw"/>
<xsl:variable name="v_tefactureren_inc" select="$v_contract_inc - $v_facturen_inc"/>
<tr class="trblk">
<tr class="subt2 trblk">
<td class="tdtl tdb" colspan="3"><br/><xsl:value-of select="PRS_BEDRIJF_NAAM"/></td>
<td class="tdtl tdi" colspan="2">gecontracteerd<br/><b>gefactureerd</b><br/>nog te factureren</td>
<td class="tdtr tdi">
@@ -888,6 +898,7 @@
</xsl:template>
<!-- =======================================================
CON_ACC1
contracten (en gefactureerd) per account
=======================================================
Kent 2 afggregatie niveaus (subtotalen)
@@ -972,6 +983,7 @@
</xsl:template>
<!-- =======================================================
CON_ACC
(contracten en) facturen per account
=======================================================
Kent 2 afggregatie niveaus (subtotalen)
@@ -1095,6 +1107,7 @@
</xsl:template>
<!-- =======================================================
BMUT_NUM
budgetmutaties op volgnummer
=======================================================
-->
@@ -1164,6 +1177,7 @@
</xsl:template>
<!-- =======================================================
BREG_TOT
budgetrapportage: totaaloverzicht
=======================================================
-->
@@ -1341,6 +1355,7 @@
</xsl:template>
<!-- =======================================================
BREG_BTW
budgetrapportage: overzicht BTW
=======================================================
-->
@@ -1458,6 +1473,7 @@
</xsl:template>
<!-- =======================================================
BREG_RES
budgetrapportage: overzicht reserve
=======================================================
-->
@@ -1568,14 +1584,13 @@
<td class="tdtr tdb"><xsl:value-of select="format-number($v_fin_bedrag_sub, '#.##0', 'euro')"/></td>
</tr>
<!-- TBODY einde -->
<xsl:text disable-output-escaping="yes">&lt;/tbody&gt;</xsl:text>
</table>
</xsl:template>
<!-- =======================================================
MMW_CONT
budgetrapportage: overzicht meerminderwerk per contractant
=======================================================
-->
@@ -1609,6 +1624,7 @@
<th class="th3 tdtl">Status</th>
</tr>
</thead>
<!-- TBODY start -->
<xsl:text disable-output-escaping="yes">&lt;tbody&gt;</xsl:text>
@@ -1616,27 +1632,30 @@
<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"/>
<xsl:variable name="v_bedrijf_key" select="PRS_BEDRIJF_KEY"/>
<tr class="header">
<td class="tdt" colspan="2"><h2><xsl:value-of select="PRS_LEVERANCIER_NR"/></h2></td>
<td class="tdt" colspan="7"><h2><xsl:value-of select="PRS_BEDRIJF_NAAM"/></h2></td>
<td class="tdtl" colspan="2"><h2><xsl:value-of select="PRS_LEVERANCIER_NR"/></h2></td>
<td class="tdtl" colspan="7"><h2><xsl:value-of select="PRS_BEDRIJF_NAAM"/></h2></td>
</tr>
<tr class="trline"><td colspan="9">&#xA0;</td></tr>
<!-- kostensoorten met meerminderwerk voor een contractant -->
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_SOORTCODE',SCODE)[1]) and PRS_BEDRIJF_KEY = $v_bedrijf_key]">
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_BEDRIJF_SOORTCODE', concat(PRS_BEDRIJF_KEY, '|', SCODE))[1]) and PRS_BEDRIJF_KEY = $v_bedrijf_key]">
<xsl:sort select="SCODE"/>
<xsl:sort select="MLD_OPDR_ORDERNR" data-type="number"/>
<xsl:variable name="v_soortcode" select="SCODE"/>
<tr class="header">
<td class="tdt"><h3><xsl:value-of select="SCODE"/></h3></td>
<td class="tdtr tdpr"><h3><xsl:value-of select="MLD_OPDR_ORDERNR"/></h3></td>
<td class="tdt"><h3><xsl:value-of select="substring-after(KOSTENSOORT, SCODE)"/></h3></td>
<td class="tdt" colspan="6"><h3><xsl:value-of select="MLD_OPDR_ID"/></h3></td>
<td class="tdtl tdb"><xsl:value-of select="SCODE"/></td>
<td class="tdtr tdb tdpr"><xsl:value-of select="MLD_OPDR_ORDERNR"/></td>
<td class="tdtl tdb"><xsl:value-of select="substring-after(KOSTENSOORT, SCODE)"/></td>
<td class="tdtl tdb" colspan="6"><xsl:value-of select="MLD_OPDR_ID"/></td>
</tr>
<!-- alle opdrachten per kostensoort -->
<xsl:for-each select="//data_row[SCODE = $v_soortcode]">
<xsl:for-each select="//data_row[SCODE = $v_soortcode and PRS_BEDRIJF_KEY = $v_bedrijf_key]">
<xsl:sort select="MLD_OPDR_BEDRIJFOPDR_VOLGNR" data-type="number"/>
<tr>
<tr class="trline">
<td></td>
<td class="tdtr tdpr"><xsl:value-of select="MLD_OPDR_BEDRIJFOPDR_VOLGNR"/></td>
<td class="tdtl"><xsl:value-of select="MLD_OPDR_OMSCHRIJVING"/></td>
@@ -1650,19 +1669,19 @@
</xsl:for-each>
<!-- subtotaal per kostensoort -->
<tr class="subt">
<td class="tdtl"><h3><xsl:value-of select="SCODE"/></h3></td>
<tr class="trline">
<td class="tdtl tdbi"><xsl:value-of select="SCODE"/></td>
<td></td>
<td class="tdtl" colspan="3"><h3>Subtotaal</h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row[SCODE = $v_soortcode]/RAMING), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row[SCODE = $v_soortcode]/GECONTRACTEERD), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr tdpr"><h3><xsl:value-of select="format-number(sum(//data_row[SCODE = $v_soortcode]/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtl tdbi" colspan="3">Subtotaal</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[SCODE = $v_soortcode]/RAMING), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[SCODE = $v_soortcode]/GECONTRACTEERD), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi tdpr"><xsl:value-of select="format-number(sum(//data_row[SCODE = $v_soortcode]/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr class="trline"><td colspan="9">&#xA0;</td></tr>
</xsl:for-each>
<!-- totaal per contractant -->
<tr style="page-break-after: always"/>
<tr class="subt2 trblk">
<td class="tdtl tdb"><xsl:value-of select="PRS_LEVERANCIER_NR"/></td>
<td></td>
@@ -1672,17 +1691,20 @@
<td class="tdtr tdb tdpr"><xsl:value-of select="format-number(sum(//data_row[PRS_BEDRIJF_KEY = $v_bedrijf_key]/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr style="page-break-after: always"/>
</xsl:for-each>
<!-- totaal meerminderwerk in filter (project/subproject) -->
<tr><td colspan="9"></td></tr>
<tr><td colspan="9"></td></tr>
<tr style="page-break-after: always"/>
<xsl:call-template name="DISPLAY_LEEG_BLOK">
<xsl:with-param name="p_border" select="'rand_uit'"/>
<xsl:with-param name="p_width" select="3"/>
<xsl:with-param name="p_hight" select="2"/>
</xsl:call-template>
<tr class="subt2 trblk">
<td></td>
<td></td>
<td class="tdtl tdb" colspan="3">Totaal</td>
<td class="tdtl tdb" colspan="3">Totaal generaal</td>
<td class="tdtr tdb"><xsl:value-of select="format-number(sum(//data_row/RAMING), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdb"><xsl:value-of select="format-number(sum(//data_row/GECONTRACTEERD), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdb tdpr"><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_TOTAAL), '#.##0,00', 'euro')"/></td>
@@ -1695,6 +1717,7 @@
</xsl:template>
<!-- =======================================================
MMWINVCO
budgetrapportage: overzicht meerminderwerk facturen per contractant
=======================================================
-->
@@ -1711,11 +1734,11 @@
<thead>
<xsl:call-template name="page_select_header">
<xsl:with-param name="titel">Overzicht Meer- en minderwerk facturen per contractant</xsl:with-param>
<xsl:with-param name="aantal_kolommen">6</xsl:with-param>
<xsl:with-param name="aantal_kolommen">9</xsl:with-param>
<xsl:with-param name="periode"><xsl:value-of select="$v_periode"/></xsl:with-param>
<xsl:with-param name="versie">1</xsl:with-param>
</xsl:call-template>
<tr><td class="subt" colspan="6">(alle bedragen zijn in Euro)</td></tr>
<tr><td class="subt" colspan="9">(alle bedragen zijn in Euro)</td></tr>
<tr class="thr">
<th class="th3">Code</th>
<th class="th3">Datum</th>
@@ -1728,6 +1751,7 @@
<th class="th3">Adviesdatum</th>
</tr>
</thead>
<!-- TBODY start -->
<xsl:text disable-output-escaping="yes">&lt;tbody&gt;</xsl:text>
@@ -1736,15 +1760,19 @@
<xsl:sort select="PRS_LEVERANCIER_NR"/>
<xsl:variable name="v_bedrijf_key" select="PRS_BEDRIJF_KEY"/>
<xsl:variable name="v_bedrijf_nr" select="PRS_LEVERANCIER_NR"/>
<tr class="header">
<td class="tdt" colspan="2"><h2><xsl:value-of select="PRS_LEVERANCIER_NR"/></h2></td>
<td class="tdt" colspan="7"><h2><xsl:value-of select="PRS_BEDRIJF_NAAM"/></h2></td>
<td class="tdtl" colspan="2"><h2><xsl:value-of select="PRS_LEVERANCIER_NR"/></h2></td>
<td class="tdtl" colspan="7"><h2><xsl:value-of select="PRS_BEDRIJF_NAAM"/></h2></td>
</tr>
<tr class="trline"><td colspan="9">&#xA0;</td></tr>
<tr class="trline"><td colspan="9">&#xA0;</td></tr>
<!-- kostensoorten per contractdatum en contractnummer -->
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_CONTRACT', MLD_OPDR_ORDERNR)[1]) and PRS_BEDRIJF_KEY = $v_bedrijf_key and MLD_OPDR_MAINORDER = 1]">
<xsl:sort select="MLD_OPDR_DATUMBEGIN"/>
<xsl:sort select="MLD_OPDR_ORDERNR"/>
<xsl:variable name="v_soortcode" select="SCODE"/>
<xsl:variable name="v_opdrachtnr" select="MLD_OPDR_ORDERNR"/>
@@ -1752,17 +1780,18 @@
<xsl:variable name="v_mld_opdr_kosten_btw" select="sum(//data_row[MLD_OPDR_ORDERNR = $v_opdrachtnr]/MLD_OPDR_KOSTEN_BTW)"/>
<xsl:variable name="v_mld_opdr_kosten_inc" select="$v_mld_opdr_kosten + $v_mld_opdr_kosten_btw"/>
<tr class="header">
<td class="tdt"><h3><xsl:value-of select="SCODE"/></h3></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"><h3><xsl:value-of select="MLD_OPDR_OMSCHRIJVING"/></h3></td>
<td class="tdt"><h3><xsl:value-of select="MLD_OPDR_ID"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number($v_mld_opdr_kosten, '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number($v_mld_opdr_kosten_btw, '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number($v_mld_opdr_kosten_inc, '#.##0,00', 'euro')"/></h3></td>
<tr class="trline">
<td class="tdtl tdb"><xsl:value-of select="SCODE"/></td>
<td class="tdtl tdb"><xsl:value-of select="MLD_OPDR_DATUMBEGIN_P"/></td>
<td class="tdtl tdb"><xsl:value-of select="MLD_OPDR_ORDERNR"/></td>
<td class="tdtl tdb"><xsl:value-of select="MLD_OPDR_OMSCHRIJVING"/></td>
<td class="tdtl tdb"><xsl:value-of select="MLD_OPDR_ID"/></td>
<td class="tdtr tdb"><xsl:value-of select="format-number($v_mld_opdr_kosten, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdb"><xsl:value-of select="format-number($v_mld_opdr_kosten_btw, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdb"><xsl:value-of select="format-number($v_mld_opdr_kosten_inc, '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr class="trline"><td colspan="9">&#xA0;</td></tr>
<!-- facturen per contract -->
<xsl:for-each select="//data_row[MLD_OPDR_ORDERNR=$v_opdrachtnr and FIN_FACTUUR_KEY != '']">
@@ -1779,34 +1808,32 @@
<td class="tdt"><xsl:value-of select="FIN_FACTUUR_ADVIES_P"/></td>
</tr>
</xsl:for-each>
<tr class="trblk">
<td></td>
</tr>
<tr class="trline"><td colspan="9">&#xA0;</td></tr>
<!-- totaal facturen -->
<xsl:variable name="v_fin_factuur_totaal" select="sum(//data_row[MLD_OPDR_ORDERNR=$v_opdrachtnr and FIN_FACTUUR_KEY != '']/FIN_FACTUUR_TOTAAL)"/>
<xsl:variable name="v_fin_factuur_totaal_btw" select="sum(//data_row[MLD_OPDR_ORDERNR=$v_opdrachtnr and FIN_FACTUUR_KEY != '']/FIN_FACTUUR_TOTAAL_BTW)"/>
<xsl:variable name="v_fin_factuur_totaal_inc" select="$v_fin_factuur_totaal + $v_fin_factuur_totaal_btw"/>
<tr>
<tr class="trline">
<td colspan="3"></td>
<td class="tdt" colspan="2"><b><i>totaal gefactureerd</i></b></td>
<td class="tdtr"><b><i><xsl:value-of select="format-number($v_fin_factuur_totaal, '#.##0,00', 'euro')"/></i></b></td>
<td class="tdtr"><b><i><xsl:value-of select="format-number($v_fin_factuur_totaal_btw, '#.##0,00', 'euro')"/></i></b></td>
<td class="tdtr"><b><i><xsl:value-of select="format-number($v_fin_factuur_totaal_inc, '#.##0,00', 'euro')"/></i></b></td>
<td class="tdtl tdbi" colspan="2">totaal gefactureerd</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_fin_factuur_totaal, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_fin_factuur_totaal_btw, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_fin_factuur_totaal_inc, '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr class="trblk">
<tr class="trline">
<td colspan="3"></td>
<td class="tdt" colspan="2"><i>nog te factureren</i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_mld_opdr_kosten - $v_fin_factuur_totaal, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_mld_opdr_kosten_btw - $v_fin_factuur_totaal_btw, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_mld_opdr_kosten_inc - $v_fin_factuur_totaal_inc, '#.##0,00', 'euro')"/></i></td>
<td class="tdtl tdbi" colspan="2">nog te factureren</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_mld_opdr_kosten - $v_fin_factuur_totaal, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_mld_opdr_kosten_btw - $v_fin_factuur_totaal_btw, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_mld_opdr_kosten_inc - $v_fin_factuur_totaal_inc, '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr>
<td colspan="9">&#xA0;</td>
</tr>
<tr class="trline"><td colspan="9">&#xA0;</td></tr>
<tr class="trline"><td colspan="9">&#xA0;</td></tr>
</xsl:for-each>
<!-- totaal per contractant -->
<xsl:variable name="v_cont_gecontracteerd_exc" select="sum(//data_row[PRS_LEVERANCIER_NR=$v_bedrijf_nr]/MLD_OPDR_KOSTEN)"/>
<xsl:variable name="v_cont_gecontracteerd_btw" select="sum(//data_row[PRS_LEVERANCIER_NR=$v_bedrijf_nr]/MLD_OPDR_KOSTEN_BTW)"/>
@@ -1814,33 +1841,37 @@
<xsl:variable name="v_cont_gefactureerd_exc" select="sum(//data_row[PRS_LEVERANCIER_NR=$v_bedrijf_nr]/FIN_FACTUUR_TOTAAL)"/>
<xsl:variable name="v_cont_gefactureerd_btw" select="sum(//data_row[PRS_LEVERANCIER_NR=$v_bedrijf_nr]/FIN_FACTUUR_TOTAAL_BTW)"/>
<xsl:variable name="v_cont_gefactureerd_inc" select="$v_cont_gefactureerd_exc + $v_cont_gefactureerd_btw"/>
<tr class="trblk">
<td colspan="9">&#xA0;</td>
</tr>
<tr>
<td class="tdt" colspan="3"></td>
<td class="tdt" colspan="2"><i>gecontracteerd</i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_cont_gecontracteerd_exc, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_cont_gecontracteerd_btw, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_cont_gecontracteerd_inc, '#.##0,00', 'euro')"/></i></td>
<td></td>
</tr>
<tr>
<td class="tdt" colspan="3"><b><xsl:value-of select="PRS_BEDRIJF_NAAM"/></b></td>
<td class="tdt" colspan="2"><b><i>gefactureerd</i></b></td>
<td class="tdtr"><b><i><xsl:value-of select="format-number($v_cont_gefactureerd_exc, '#.##0,00', 'euro')"/></i></b></td>
<td class="tdtr"><b><i><xsl:value-of select="format-number($v_cont_gefactureerd_btw, '#.##0,00', 'euro')"/></i></b></td>
<td class="tdtr"><b><i><xsl:value-of select="format-number($v_cont_gefactureerd_inc, '#.##0,00', 'euro')"/></i></b></td>
<td></td>
</tr>
<tr class="trblk">
<td class="tdt" colspan="3"></td>
<td class="tdt" colspan="2"><i>nog te factureren</i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_cont_gecontracteerd_exc - $v_cont_gefactureerd_exc, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_cont_gecontracteerd_btw - $v_cont_gefactureerd_btw, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_cont_gecontracteerd_inc - $v_cont_gefactureerd_inc, '#.##0,00', 'euro')"/></i></td>
<td></td>
<xsl:variable name="v_cont_tefactureren_exc" select="$v_cont_gecontracteerd_exc - $v_cont_gefactureerd_exc"/>
<xsl:variable name="v_cont_tefactureren_btw" select="$v_cont_gecontracteerd_btw - $v_cont_gefactureerd_btw"/>
<xsl:variable name="v_cont_tefactureren_inc" select="$v_cont_gecontracteerd_exc - $v_cont_gefactureerd_inc"/>
<tr class="trline"><td colspan="9">&#xA0;</td></tr>
<tr class="subt2 trblk">
<td class="tdtl tdb" colspan="3">&#xA0;<br/>
<xsl:value-of select="PRS_BEDRIJF_NAAM"/><br/>
&#xA0;
</td>
<td class="tdtl tdi" colspan="2">gecontracteerd<br/>
<b>gefactureerd</b><br/>
nog te factureren
</td>
<td class="tdtr tdi"><xsl:value-of select="format-number($v_cont_gecontracteerd_exc, '#.##0,00', 'euro')"/><br/>
<b><xsl:value-of select="format-number($v_cont_gefactureerd_exc, '#.##0,00', 'euro')"/></b><br/>
<xsl:value-of select="format-number($v_cont_tefactureren_exc, '#.##0,00', 'euro')"/>
</td>
<td class="tdtr tdi"><xsl:value-of select="format-number($v_cont_gecontracteerd_btw, '#.##0,00', 'euro')"/><br/>
<b><xsl:value-of select="format-number($v_cont_gefactureerd_btw, '#.##0,00', 'euro')"/></b><br/>
<xsl:value-of select="format-number($v_cont_tefactureren_btw, '#.##0,00', 'euro')"/>
</td>
<td class="tdtr tdi"><xsl:value-of select="format-number($v_cont_gecontracteerd_inc, '#.##0,00', 'euro')"/><br/>
<b><xsl:value-of select="format-number($v_cont_gefactureerd_inc, '#.##0,00', 'euro')"/></b><br/>
<xsl:value-of select="format-number($v_cont_tefactureren_inc, '#.##0,00', 'euro')"/>
</td>
<td>&#xA0;</td>
</tr>
<tr style="page-break-after: always"/>
</xsl:for-each>
@@ -1850,6 +1881,7 @@
</xsl:template>
<!-- =======================================================
FACT_MND
overzicht facturen per maand op adviesdatum
=======================================================
-->
@@ -1866,7 +1898,7 @@
<thead>
<xsl:call-template name="page_select_header">
<xsl:with-param name="titel">Overzicht facturen per maand op adviesdatum</xsl:with-param>
<xsl:with-param name="aantal_kolommen">6</xsl:with-param>
<xsl:with-param name="aantal_kolommen">10</xsl:with-param>
<xsl:with-param name="periode"><xsl:value-of select="$v_periode"/></xsl:with-param>
<xsl:with-param name="versie">1</xsl:with-param>
</xsl:call-template>
@@ -1888,99 +1920,92 @@
<xsl:text disable-output-escaping="yes">&lt;tbody&gt;</xsl:text>
<!-- perjaar -->
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_FACTUUR_ADVIES_JAAR', FIN_FACTUUR_ADVIES_JAAR)[1])]">
<xsl:sort select="FIN_FACTUUR_ADVIES_JAAR"/>
<xsl:variable name="v_fin_factuur_advies_jaar" select="FIN_FACTUUR_ADVIES_JAAR"/>
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_FACTUUR_ADVIES_JAAR', FACTUUR_ADVIES_JAAR)[1])]">
<xsl:sort select="FACTUUR_ADVIES_JAAR"/>
<xsl:variable name="v_factuur_advies_jaar" select="FACTUUR_ADVIES_JAAR"/>
<tr class="header">
<td class="tdt"><h3>Jaar</h3></td>
<td class="tdt"><h3><xsl:value-of select="FIN_FACTUUR_ADVIES_JAAR"/></h3></td>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
<tr class="trline">
<td class="tdtl tdbi">Jaar</td>
<td class="tdtl tdbi"><xsl:value-of select="FACTUUR_ADVIES_JAAR"/></td>
<td colspan="8"></td>
</tr>
<!-- per maand -->
<xsl:variable name="factuur_maanden">
<xsl:for-each select="//data_row[FIN_FACTUUR_ADVIES_JAAR=$v_fin_factuur_advies_jaar]">
<xsl:for-each select="//data_row[FACTUUR_ADVIES_JAAR=$v_factuur_advies_jaar]">
<xsl:copy-of select="."/>
</xsl:for-each>
</xsl:variable>
<xsl:for-each select="msxml:node-set($factuur_maanden)/data_row[generate-id(.)=generate-id(key('GROUPBY_FACTUUR_ADVIES_MAAND', FIN_FACTUUR_ADVIES_MAAND)[1])]">
<xsl:sort select="FIN_FACTUUR_ADVIES_MAAND"/>
<xsl:variable name="v_fin_factuur_advies_maand" select="FIN_FACTUUR_ADVIES_MAAND"/>
<xsl:for-each select="msxml:node-set($factuur_maanden)/data_row[generate-id(.)=generate-id(key('GROUPBY_FACTUUR_ADVIES_MAAND', FACTUUR_ADVIES_MAAND)[1])]">
<xsl:sort select="FACTUUR_ADVIES_MAAND"/>
<xsl:variable name="v_factuur_advies_maand" select="FACTUUR_ADVIES_MAAND"/>
<tr>
<tr class="trline">
<td colspan="5"></td>
<td class="tdt tdbi">Maand&#xA0;&#xA0;&#xA0;<xsl:value-of select="FIN_FACTUUR_ADVIES_MAAND"/></td>
<td class="tdtl tdbi">Maand&#xA0;&#xA0;&#xA0;<xsl:value-of select="FACTUUR_ADVIES_MAAND"/></td>
<td colspan="4"></td>
</tr>
<!-- facturen deze maand -->
<xsl:variable name="facturen_per_maand">
<xsl:for-each select="//data_row">
<xsl:if test="FIN_FACTUUR_ADVIES_JAAR=$v_fin_factuur_advies_jaar and FIN_FACTUUR_ADVIES_MAAND=$v_fin_factuur_advies_maand">
<xsl:if test="FACTUUR_ADVIES_JAAR=$v_factuur_advies_jaar and FACTUUR_ADVIES_MAAND=$v_factuur_advies_maand">
<xsl:copy-of select="."/>
</xsl:if>
</xsl:for-each>
</xsl:variable>
<xsl:for-each select="msxml:node-set($facturen_per_maand)/data_row">
<xsl:sort select="FIN_FACTUUR_ADVIES"/>
<tr>
<td class="tdt"> <xsl:value-of select="PRS_LEVERANCIER_NR"/></td>
<td class="tdt"> <xsl:value-of select="RUBRIEKCODE"/></td>
<td class="tdtr"><xsl:value-of select="MLD_OPDR_ORDERNR"/></td>
<td class="tdtr"><xsl:value-of select="FIN_FACTUUR_DATUM_P"/></td>
<td class="tdtr"><xsl:value-of select="FIN_FACTUUR_NR"/></td>
<td class="tdt"> <xsl:value-of select="FIN_FACTUUR_OPMERKING"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FIN_FACTUUR_EXC, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FIN_FACTUUR_BTW, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FIN_FACTUUR_INC, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="FIN_FACTUUR_ADVIES_P"/></td>
<xsl:sort select="FACTUUR_ADVIES"/>
<tr class="trline">
<td class="tdtl"><xsl:value-of select="PRS_LEVERANCIER_NR"/></td>
<td class="tdtl"><xsl:value-of select="KOSTENCODE"/></td>
<td class="tdtr"><xsl:value-of select="CONTRACTNUMMER"/></td>
<td class="tdtr"><xsl:value-of select="FACTUUR_DATUM_P"/></td>
<td class="tdtr"><xsl:value-of select="FACTUUR_NR"/></td>
<td class="tdtl"><xsl:value-of select="FACTUUR_OPMERKING"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FACTUUR_EXC, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FACTUUR_BTW, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FACTUUR_INC, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="FACTUUR_ADVIES_P"/></td>
</tr>
</xsl:for-each>
<!-- subtotaal deze maand -->
<tr>
<tr class="trline">
<td colspan="5"></td>
<td class="tdt tdbi">Subtotaal</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FIN_FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FIN_FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FIN_FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td class="tdtl tdbi">Subtotaal</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr>
<td colspan="10">&#xA0;</td>
</tr>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
</xsl:for-each>
<!-- subtotaal dit jaar -->
<tr class="trblk">
<td colspan="10">&#xA0;</td>
</tr>
<tr>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
<tr class="trline">
<td colspan="5"></td>
<td class="tdt tdbi">Subtotaal&#xA0;&#xA0;&#xA0;<xsl:value-of select="$v_fin_factuur_advies_jaar"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_ADVIES_JAAR=$v_fin_factuur_advies_jaar]/FIN_FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_ADVIES_JAAR=$v_fin_factuur_advies_jaar]/FIN_FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_ADVIES_JAAR=$v_fin_factuur_advies_jaar]/FIN_FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td class="tdtl tdbi">Subtotaal&#xA0;&#xA0;&#xA0;<xsl:value-of select="$v_factuur_advies_jaar"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FACTUUR_ADVIES_JAAR=$v_factuur_advies_jaar]/FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FACTUUR_ADVIES_JAAR=$v_factuur_advies_jaar]/FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FACTUUR_ADVIES_JAAR=$v_factuur_advies_jaar]/FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr style="page-break-after: always"/>
</xsl:for-each>
<!-- totaal alle facturen -->
<tr>
<td colspan="10">&#xA0;</td>
</tr>
<tr class="trblk">
<td colspan="10">&#xA0;</td>
</tr>
<tr>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
<tr class="subt2 trblk">
<td colspan="5"></td>
<td class="tdt"><h3>Totaal</h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_EXC), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_BTW), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_INC), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtl tdb">Totaal</td>
<td class="tdtr tdb"><xsl:value-of select="format-number(sum(//data_row/FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdb"><xsl:value-of select="format-number(sum(//data_row/FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdb"><xsl:value-of select="format-number(sum(//data_row/FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
@@ -1990,6 +2015,7 @@
</xsl:template>
<!-- =======================================================
FDATFACT
overzicht facturen per maand op factuurdatum
=======================================================
-->
@@ -2006,7 +2032,7 @@
<thead>
<xsl:call-template name="page_select_header">
<xsl:with-param name="titel">Overzicht facturen per maand op factuurdatum</xsl:with-param>
<xsl:with-param name="aantal_kolommen">6</xsl:with-param>
<xsl:with-param name="aantal_kolommen">10</xsl:with-param>
<xsl:with-param name="periode"><xsl:value-of select="$v_periode"/></xsl:with-param>
<xsl:with-param name="versie">1</xsl:with-param>
</xsl:call-template>
@@ -2028,99 +2054,92 @@
<xsl:text disable-output-escaping="yes">&lt;tbody&gt;</xsl:text>
<!-- perjaar -->
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_FACTUUR_DATUM_JAAR', FIN_FACTUUR_DATUM_JAAR)[1])]">
<xsl:sort select="FIN_FACTUUR_DATUM_JAAR"/>
<xsl:variable name="v_fin_factuur_jaar" select="FIN_FACTUUR_DATUM_JAAR"/>
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUPBY_FACTUUR_DATUM_JAAR', FACTUUR_DATUM_JAAR)[1])]">
<xsl:sort select="FACTUUR_DATUM_JAAR"/>
<xsl:variable name="v_factuur_jaar" select="FACTUUR_DATUM_JAAR"/>
<tr class="header">
<td class="tdt"><h3>Jaar</h3></td>
<td class="tdt"><h3><xsl:value-of select="$v_fin_factuur_jaar"/></h3></td>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
<tr class="trline">
<td class="tdtl tdbi">Jaar</td>
<td class="tdtl tdbi"><xsl:value-of select="$v_factuur_jaar"/></td>
<td colspan="8"></td>
</tr>
<!-- per maand -->
<xsl:variable name="factuur_maanden">
<xsl:for-each select="//data_row[FIN_FACTUUR_DATUM_JAAR=$v_fin_factuur_jaar]">
<xsl:for-each select="//data_row[FACTUUR_DATUM_JAAR=$v_factuur_jaar]">
<xsl:copy-of select="."/>
</xsl:for-each>
</xsl:variable>
<xsl:for-each select="msxml:node-set($factuur_maanden)/data_row[generate-id(.)=generate-id(key('GROUPBY_FACTUUR_DATUM_MAAND', FIN_FACTUUR_DATUM_MAAND)[1])]">
<xsl:sort select="FIN_FACTUUR_DATUM_MAAND"/>
<xsl:variable name="v_fin_factuur_maand" select="FIN_FACTUUR_DATUM_MAAND"/>
<xsl:for-each select="msxml:node-set($factuur_maanden)/data_row[generate-id(.)=generate-id(key('GROUPBY_FACTUUR_DATUM_MAAND', FACTUUR_DATUM_MAAND)[1])]">
<xsl:sort select="FACTUUR_DATUM_MAAND"/>
<xsl:variable name="v_factuur_maand" select="FACTUUR_DATUM_MAAND"/>
<tr>
<tr class="trline">
<td colspan="5"></td>
<td class="tdt tdbi">Maand&#xA0;&#xA0;&#xA0;<xsl:value-of select="$v_fin_factuur_maand"/></td>
<td class="tdtl tdbi">Maand&#xA0;&#xA0;&#xA0;<xsl:value-of select="$v_factuur_maand"/></td>
<td colspan="4"></td>
</tr>
<!-- facturen deze maand -->
<xsl:variable name="facturen_per_maand">
<xsl:for-each select="//data_row">
<xsl:if test="FIN_FACTUUR_DATUM_JAAR=$v_fin_factuur_jaar and FIN_FACTUUR_DATUM_MAAND=$v_fin_factuur_maand">
<xsl:if test="FACTUUR_DATUM_JAAR=$v_factuur_jaar and FACTUUR_DATUM_MAAND=$v_factuur_maand">
<xsl:copy-of select="."/>
</xsl:if>
</xsl:for-each>
</xsl:variable>
<xsl:for-each select="msxml:node-set($facturen_per_maand)/data_row">
<xsl:sort select="FIN_FACTUUR_DATUM"/>
<tr>
<td class="tdt"> <xsl:value-of select="PRS_LEVERANCIER_NR"/></td>
<td class="tdt"> <xsl:value-of select="RUBRIEKCODE"/></td>
<td class="tdtr"><xsl:value-of select="MLD_OPDR_ORDERNR"/></td>
<td class="tdtr"><xsl:value-of select="FIN_FACTUUR_DATUM_P"/></td>
<td class="tdtr"><xsl:value-of select="FIN_FACTUUR_NR"/></td>
<td class="tdt"> <xsl:value-of select="FIN_FACTUUR_OPMERKING"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FIN_FACTUUR_EXC, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FIN_FACTUUR_BTW, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FIN_FACTUUR_INC, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="FIN_FACTUUR_ADVIES_P"/></td>
<xsl:sort select="FACTUUR_DATUM"/>
<tr class="trline">
<td class="tdtl"><xsl:value-of select="PRS_LEVERANCIER_NR"/></td>
<td class="tdtl"><xsl:value-of select="KOSTENCODE"/></td>
<td class="tdtr"><xsl:value-of select="CONTRACTNUMMER"/></td>
<td class="tdtr"><xsl:value-of select="FACTUUR_DATUM_P"/></td>
<td class="tdtr"><xsl:value-of select="FACTUUR_NR"/></td>
<td class="tdtl"><xsl:value-of select="FACTUUR_OPMERKING"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FACTUUR_EXC, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FACTUUR_BTW, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="format-number(FACTUUR_INC, '#.##0,00', 'euro')"/></td>
<td class="tdtr"><xsl:value-of select="FACTUUR_ADVIES_P"/></td>
</tr>
</xsl:for-each>
<!-- subtotaal deze maand -->
<tr>
<tr class="trline">
<td colspan="5"></td>
<td class="tdt tdbi">Subtotaal</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FIN_FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FIN_FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FIN_FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td class="tdtl tdbi">Subtotaal</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(msxml:node-set($facturen_per_maand)/data_row/FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr>
<td colspan="10">&#xA0;</td>
</tr>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
</xsl:for-each>
<!-- subtotaal dit jaar -->
<tr class="trblk">
<td colspan="10">&#xA0;</td>
</tr>
<tr>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
<tr class="trline">
<td colspan="5"></td>
<td class="tdt tdbi">Subtotaal&#xA0;&#xA0;&#xA0;<xsl:value-of select="$v_fin_factuur_jaar"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_DATUM_JAAR=$v_fin_factuur_jaar]/FIN_FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_DATUM_JAAR=$v_fin_factuur_jaar]/FIN_FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_DATUM_JAAR=$v_fin_factuur_jaar]/FIN_FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td class="tdtl tdbi">Subtotaal&#xA0;&#xA0;&#xA0;<xsl:value-of select="$v_factuur_jaar"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FACTUUR_DATUM_JAAR=$v_factuur_jaar]/FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FACTUUR_DATUM_JAAR=$v_factuur_jaar]/FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number(sum(//data_row[FACTUUR_DATUM_JAAR=$v_factuur_jaar]/FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr style="page-break-after: always"/>
</xsl:for-each>
<!-- totaal alle facturen -->
<tr>
<td colspan="9">&#xA0;</td>
</tr>
<tr class="trblk">
<td colspan="9">&#xA0;</td>
</tr>
<tr>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
<tr class="trline"><td colspan="10">&#xA0;</td></tr>
<tr class="subt2 trblk">
<td colspan="5"></td>
<td class="tdt"><h3>Totaal</h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_EXC), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_BTW), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtr"><h3><xsl:value-of select="format-number(sum(//data_row/FIN_FACTUUR_INC), '#.##0,00', 'euro')"/></h3></td>
<td class="tdtl tdb">Totaal</td>
<td class="tdtr tdb"><xsl:value-of select="format-number(sum(//data_row/FACTUUR_EXC), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdb"><xsl:value-of select="format-number(sum(//data_row/FACTUUR_BTW), '#.##0,00', 'euro')"/></td>
<td class="tdtr tdb"><xsl:value-of select="format-number(sum(//data_row/FACTUUR_INC), '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
@@ -2130,6 +2149,7 @@
</xsl:template>
<!-- =======================================================
FACTCORU
overzicht contracten en facturen per rubriek
=======================================================
-->
@@ -2144,7 +2164,7 @@
<thead>
<xsl:call-template name="page_select_header">
<xsl:with-param name="titel">Overzicht contracten en facturen per rubriek</xsl:with-param>
<xsl:with-param name="aantal_kolommen">6</xsl:with-param>
<xsl:with-param name="aantal_kolommen">9</xsl:with-param>
<xsl:with-param name="periode"><xsl:value-of select="$v_periode"/></xsl:with-param>
<xsl:with-param name="versie">1</xsl:with-param>
</xsl:call-template>
@@ -2179,8 +2199,8 @@
<xsl:variable name="v_rubriekcode" select="RCODE"/>
<tr class="header">
<td class="tdt" colspan="4"><h2><xsl:value-of select="substring-before(KOSTENRUBRIEK, ' ')"/></h2></td>
<td class="tdt" colspan="5"><h2><xsl:value-of select="substring-after(KOSTENRUBRIEK, ' ')"/></h2></td>
<td class="tdtl" colspan="4"><h2><xsl:value-of select="substring-before(KOSTENRUBRIEK, ' ')"/></h2></td>
<td class="tdtl" colspan="5"><h2><xsl:value-of select="substring-after(KOSTENRUBRIEK, ' ')"/></h2></td>
</tr>
<!-- kostensoort -->
@@ -2207,13 +2227,13 @@
<xsl:variable name="v_facturen_btw" select="sum(//data_row[SCODE=$v_onderdeelcode]/FIN_FACTUUR_TOTAAL_BTW)"/>
<xsl:variable name="v_facturen_inc" select="$v_facturen_exc + $v_facturen_btw"/>
<tr>
<td class="tdt tdbi" colspan="4"><xsl:value-of select="SCODE"/></td>
<td class="tdt tdbi"><xsl:value-of select="substring-after(KOSTENSOORT, ' ')"/></td>
<tr class="subt2">
<td class="tdtl tdbi" colspan="4"><xsl:value-of select="SCODE"/></td>
<td class="tdtl tdbi"><xsl:value-of select="substring-after(KOSTENSOORT, ' ')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_contract_exc, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_contract_btw, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_contract_inc, '#.##0,00', 'euro')"/></td>
<td></td>
<td>&#xA0;</td>
</tr>
<!-- facturen per kostensoort -->
@@ -2223,7 +2243,7 @@
<xsl:variable name="v_factuur_btw" select="FIN_FACTUUR_TOTAAL_BTW"/>
<xsl:variable name="v_factuur_inc" select="$v_factuur_exc + $v_factuur_btw"/>
<tr>
<tr class="trline">
<td class="tdt"><xsl:value-of select="PRS_LEVERANCIER_NR"/></td>
<td class="tdtr"><xsl:value-of select="MLD_OPDR_ORDERNR"/></td>
<td class="tdtr tdpr"><xsl:value-of select="FACTUURDATUM_P"/></td>
@@ -2237,24 +2257,24 @@
</xsl:for-each>
<!-- totaal facturen per rubriek -->
<tr>
<tr class="trline">
<td colspan="3"></td>
<td class="tdt tdbi"><xsl:value-of select="SCODE"/></td>
<td class="tdt tdbi">totaal gefactureerd</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_facturen_exc, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_facturen_btw, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_facturen_inc, '#.##0,00', 'euro')"/></td>
<td></td>
<td>&#xA0;</td>
</tr>
<tr>
<tr class="trline">
<td colspan="4"></td>
<td><i>nog te factureren</i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_contract_exc - $v_facturen_exc, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_contract_btw - $v_facturen_btw, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_contract_inc - $v_facturen_inc, '#.##0,00', 'euro')"/></i></td>
<td></td>
<td>&#xA0;</td>
</tr>
<tr>
<tr class="trline">
<td colspan="9">&#xA0;</td>
</tr>
@@ -2267,34 +2287,32 @@
<xsl:variable name="v_rubriek_facturen_exc" select="sum(//data_row[RCODE=$v_rubriekcode]/FIN_FACTUUR_TOTAAL)"/>
<xsl:variable name="v_rubriek_facturen_btw" select="sum(//data_row[RCODE=$v_rubriekcode]/FIN_FACTUUR_TOTAAL_BTW)"/>
<xsl:variable name="v_rubriek_facturen_inc" select="$v_rubriek_facturen_exc + $v_rubriek_facturen_btw"/>
<xsl:variable name="v_rubriek_tefactureren_exc" select="$v_rubriek_contract_exc - $v_rubriek_facturen_exc"/>
<xsl:variable name="v_rubriek_tefactureren_btw" select="$v_rubriek_contract_btw - $v_rubriek_facturen_btw"/>
<xsl:variable name="v_rubriek_tefactureren_inc" select="$v_rubriek_contract_inc - $v_rubriek_facturen_inc"/>
<tr class="subt">
<tr class="subt2 trblk">
<td colspan="3"></td>
<td class="tdt tdbi"><xsl:value-of select="RCODE"/></td>
<td class="tdt" >Totaal gecontracteerd deze rubriek</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_rubriek_contract_exc, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_rubriek_contract_btw, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_rubriek_contract_inc, '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr class="subt">
<td colspan="4"></td>
<td class="tdt">Totaal gefactureerd deze rubriek</td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_rubriek_facturen_exc, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_rubriek_facturen_btw, '#.##0,00', 'euro')"/></td>
<td class="tdtr tdbi"><xsl:value-of select="format-number($v_rubriek_facturen_inc, '#.##0,00', 'euro')"/></td>
<td></td>
</tr>
<tr class="subt trblk">
<td colspan="4"></td>
<td class="tdt">nog te factureren deze rubriek</td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_rubriek_contract_exc - $v_rubriek_facturen_exc, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_rubriek_contract_btw - $v_rubriek_facturen_btw, '#.##0,00', 'euro')"/></i></td>
<td class="tdtr"><i><xsl:value-of select="format-number($v_rubriek_contract_inc - $v_rubriek_facturen_inc, '#.##0,00', 'euro')"/></i></td>
<td></td>
<td class="tdtl tdb">&#xA0;<br/><xsl:value-of select="RCODE"/><br/>&#xA0;</td>
<td class="tdtl tdi">Totaal gecontracteerd deze rubriek<br/>
<b>Totaal gefactureerd deze rubriek</b><br/>
nog te factureren deze rubriek
</td>
<td class="tdtr tdi"><xsl:value-of select="format-number($v_rubriek_contract_exc, '#.##0,00', 'euro')"/><br/>
<b><xsl:value-of select="format-number($v_rubriek_facturen_exc, '#.##0,00', 'euro')"/></b><br/>
<xsl:value-of select="format-number($v_rubriek_tefactureren_exc, '#.##0,00', 'euro')"/>
</td>
<td class="tdtr tdi"><xsl:value-of select="format-number($v_rubriek_contract_btw, '#.##0,00', 'euro')"/><br/>
<b><xsl:value-of select="format-number($v_rubriek_facturen_btw, '#.##0,00', 'euro')"/></b><br/>
<xsl:value-of select="format-number($v_rubriek_tefactureren_btw, '#.##0,00', 'euro')"/>
</td>
<td class="tdtr tdi"><xsl:value-of select="format-number($v_rubriek_contract_inc, '#.##0,00', 'euro')"/><br/>
<b><xsl:value-of select="format-number($v_rubriek_facturen_inc, '#.##0,00', 'euro')"/></b><br/>
<xsl:value-of select="format-number($v_rubriek_tefactureren_inc, '#.##0,00', 'euro')"/>
</td>
<td>&#xA0;</td>
</tr>
<tr style="page-break-after: always"/>
</xsl:for-each>
<!-- Totalen van project -->
@@ -2304,37 +2322,44 @@
<xsl:variable name="v_totaal_facturen_exc" select="sum(//data_row/FIN_FACTUUR_TOTAAL)"/>
<xsl:variable name="v_totaal_facturen_btw" select="sum(//data_row/FIN_FACTUUR_TOTAAL_BTW)"/>
<xsl:variable name="v_totaal_facturen_inc" select="$v_totaal_facturen_exc + $v_totaal_facturen_btw"/>
<xsl:variable name="v_totaal_tefactureren_exc" select="$v_totaal_contract_exc - $v_totaal_facturen_exc"/>
<xsl:variable name="v_totaal_tefactureren_btw" select="$v_totaal_contract_btw - $v_totaal_facturen_btw"/>
<xsl:variable name="v_totaal_tefactureren_inc" select="$v_totaal_contract_inc - $v_totaal_facturen_inc"/>
<tr class="trblk">
<td colspan="9">&#xA0;</td>
</tr>
<tr>
<td colspan="4"></td>
<td class="tdt" ><b>Totaal gecontracteerd</b></td>
<td class="tdtr"><b><xsl:value-of select="format-number($v_totaal_contract_exc, '#.##0,00', 'euro')"/></b></td>
<td class="tdtr"><b><xsl:value-of select="format-number($v_totaal_contract_btw, '#.##0,00', 'euro')"/></b></td>
<td class="tdtr"><b><xsl:value-of select="format-number($v_totaal_contract_inc, '#.##0,00', 'euro')"/></b></td>
<td></td>
</tr>
<tr>
<td colspan="4"></td>
<td class="tdt" ><b>Totaal gefactureerd</b></td>
<td class="tdtr"><b><xsl:value-of select="format-number($v_totaal_facturen_exc, '#.##0,00', 'euro')"/></b></td>
<td class="tdtr"><b><xsl:value-of select="format-number($v_totaal_facturen_btw, '#.##0,00', 'euro')"/></b></td>
<td class="tdtr"><b><xsl:value-of select="format-number($v_totaal_facturen_inc, '#.##0,00', 'euro')"/></b></td>
<td></td>
</tr>
<tr class="trblk">
<td colspan="4"></td>
<td class="tdt"><b>nog te factureren</b></td>
</tr>
<xsl:call-template name="DISPLAY_LEEG_BLOK">
<xsl:with-param name="p_border" select="'rand_uit'"/>
<xsl:with-param name="p_width" select="3"/>
<xsl:with-param name="p_hight" select="2"/>
</xsl:call-template>
<tr class="subt2 trblk">
<td colspan="3"></td>
<td class="tdtl tdbi">&#xA0;<br/>Totaal<br/>&#xA0;</td>
<td class="tdtl tdi">gecontracteerd<br/>
<b>gefactureerd</b><br/>
nog te factureren
</td>
<td class="tdtr tdi"><xsl:value-of select="format-number($v_totaal_contract_exc, '#.##0,00', 'euro')"/><br/>
<b><xsl:value-of select="format-number($v_totaal_facturen_exc, '#.##0,00', 'euro')"/></b><br/>
<xsl:value-of select="format-number($v_totaal_tefactureren_exc, '#.##0,00', 'euro')"/>
</td>
<td class="tdtr tdi"><xsl:value-of select="format-number($v_totaal_contract_btw, '#.##0,00', 'euro')"/><br/>
<b><xsl:value-of select="format-number($v_totaal_facturen_btw, '#.##0,00', 'euro')"/></b><br/>
<xsl:value-of select="format-number($v_totaal_tefactureren_btw, '#.##0,00', 'euro')"/>
</td>
<td class="tdtr tdi"><xsl:value-of select="format-number($v_totaal_contract_inc, '#.##0,00', 'euro')"/><br/>
<b><xsl:value-of select="format-number($v_totaal_facturen_inc, '#.##0,00', 'euro')"/></b><br/>
<xsl:value-of select="format-number($v_totaal_tefactureren_inc, '#.##0,00', 'euro')"/>
</td>
<td>&#xA0;</td>
</tr>
<!-- TBODY einde -->
<xsl:text disable-output-escaping="yes">&lt;/tbody&gt;</xsl:text>
</table>
</xsl:template>
<!-- =======================================================
BET_ADV
overzicht betalingsadvies
=======================================================
-->

View File

@@ -72,6 +72,8 @@ var safe;
// ARO
var ARO_RootUrl = "https://www.agressieregistratieoverheid.nl/services/";
// var ARO_RootUrl = "https://acceptatie.agressieregistratieoverheid.nl/services/";
var ARO_User = "ARO-facilitor@uwv.nl";
var ARO_Pass = "G<9k3k)1";
var ARO_bez_bsn_key = 1; // bez flex to perform ARO-BSN-Check against
@@ -95,8 +97,10 @@ var ARO_mld_warn_key = 115; // mld flex to register ARO-BSN-Check-result (if t
var lReceive = 2 * 1000; // 1 seconde wordt in de praktijk te vaak overschreden
http_request.setTimeouts(lResolve, lConnect, lSend, lReceive);
http_request.open(method, url, false); // Synchroon nog even
//http_request.setRequestHeader("Content-Type", "application/json; charset=utf-8");
__Log("Getting ARO: " + url);
http_request.setRequestHeader("Content-Type", "application/json");
__Log(method + " ARO: " + url);
if (data)
__Log("Data: " + data);
http_request.send(data);
if (http_request.status != 200)
{
@@ -112,7 +116,8 @@ var ARO_mld_warn_key = 115; // mld flex to register ARO-BSN-Check-result (if t
{
try
{
var tokentxt = UWVA_ARO.http("POST", RootUrl + "AuthenticationService.svc/RequestToken", "username=" + User + "\npassword=" + Pass);
var data = '{"username": "' + User + '", "password": "' + Pass + '"}';
var tokentxt = UWVA_ARO.http("POST", RootUrl + "AuthenticationService.svc/RequestToken", data);
if (!tokentxt)
return false;
var token = eval('(' + tokentxt + ')').d;
@@ -125,7 +130,8 @@ var ARO_mld_warn_key = 115; // mld flex to register ARO-BSN-Check-result (if t
if (!lookuptxt)
return false;
var lookup = eval('(' + lookuptxt + ')').d;
UWVA_ARO.http("POST", RootUrl + "AuthenticationService.svc/ExpireToken", "guid=" + token);
var data = '{"guid\": "' + token + '"}';
UWVA_ARO.http("POST", RootUrl + "AuthenticationService.svc/ExpireToken", data);
return lookup;
}
catch (e)

View File

@@ -7811,9 +7811,7 @@ function startAutoRefreshTim() {
<xsl:when test="$srtnotificatiecode = 'CUST31'">
<tr>
<td colspan="3" class="caption">
<strong>
Notificatie wijziging parkeerrechten of toegangsprofiel.
</strong>
<strong>Wijziging parkeerrechten of toegangsprofiel</strong>
</td>
</tr>
<tr>
@@ -7858,9 +7856,7 @@ function startAutoRefreshTim() {
<xsl:when test="$srtnotificatiecode = 'CUST32'">
<tr>
<td colspan="3" class="caption">
<strong>
Notificatie vermiste of defecte toegangspas.
</strong>
<strong>Toegangspas vermist of defect</strong>
</td>
</tr>
<tr>
@@ -7906,15 +7902,62 @@ function startAutoRefreshTim() {
<tr>
<td colspan="3" class="caption">
<strong>
Notificatie nieuwe toegangspas.
Toegangspas gereed
</strong>
</td>
</tr>
<tr>
<td colspan="2" class="tekst">
<br/>Beste collega,
<br/><br/>Voor onderstaande medewerker is een nieuwe toegangspas aangemaakt.
<br/>Wij verzoeken je de betreffende medewerker hierover te informeren.
<br/><br/>De toegangspas voor onderstaande medewerker is aangemaakt.
<br/>De pas kan worden afgehaald bij de beveiliging/receptie van <xsl:value-of select="persoon/werkplek/plaats/regio/district/locatie/omschrijving"/>.
<br/><br/>
</td>
</tr>
<tr>
<td width="20%" class="label">Naam:</td>
<td width="80%" class="value"><xsl:value-of select="persoon/naam_friendly"/></td>
</tr>
<tr>
<td width="20%" class="label">Personeelnr:</td>
<td width="80%" class="value"><xsl:value-of select="persoon/nr"/></td>
</tr>
<tr>
<td width="20%" class="label">Kostenplaats:</td>
<td width="80%" class="value"><xsl:value-of select="persoon/afdeling/kostenplaats/nr"/>-<xsl:value-of select="persoon/afdeling/kostenplaats/omschrijving"/></td>
</tr>
<tr>
<td width="20%" class="label">Standplaats:</td>
<td width="80%" class="value"><xsl:value-of select="persoon/werkplek/plaats/regio/district/locatie/omschrijving"/></td>
</tr>
<tr>
<td colspan="2" class="tekst">
<br/><br/>Vriendelijke groeten,
<br/>Service Center Facilitair Bedrijf
<br/>Pasbeheer
</td>
</tr>
<tr>
<td colspan="2" class="tekst">
<br/><br/>N.B.
<br/>Dit bericht werd automatisch aangemaakt. Wil je hierop reageren, dan kan dat telefonisch of via het versturen van een e-mail aan het Service Center.
</td>
</tr>
</xsl:when>
<xsl:when test="$srtnotificatiecode = 'CUST34'">
<tr>
<td colspan="3" class="caption">
<strong>
Toegangspas gereed
</strong>
</td>
</tr>
<tr>
<td colspan="2" class="tekst">
<br/>Beste collega,
<br/><br/>Je toegangspas is aangemaakt.
<br/>De pas kan worden afgehaald bij de beveiliging/receptie van <xsl:value-of select="persoon/werkplek/plaats/regio/district/locatie/omschrijving"/>.
<br/><br/>
</td>
</tr>

View File

@@ -528,7 +528,7 @@
</td>
</tr>
<xsl:if test="opdrachttype/key !='221'">
<xsl:if test="opdrachttype/key !='241'">
<tr>
<td align="right" valign="top">
<b>Berijder:</b>

View File

@@ -304,11 +304,16 @@
<tr>
<td class="tekst" style="width:20%">Klantnaam:</td>
<td class="tekst" style="width:30%"><xsl:value-of select="melding/plaats/regio/district/locatie/omschrijving"/></td>
<td colspan="2" class="tekst" style="width:50%"><xsl:choose>
<td colspan="2" class="tekst" style="width:50%">
<xsl:choose>
<xsl:when test="melding/plaats/regio/district/locatie/gebouw/afleveradres/bezoek_adres!=''">
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/afleveradres/bezoek_adres"/><br/>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/code"/>-<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/naam"/><br/>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/afleveradres/bezoek_adres"/><br/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/code"/>-<xsl:value-of select="melding/plaats/regio/district/locatie/gebouw/naam"/><br/>
<xsl:value-of select="melding/plaats/regio/district/locatie/adres"/><br/>
</xsl:otherwise>
</xsl:choose></td>

View File

@@ -12,48 +12,65 @@
Note:
*/ %>
<%
DOCTYPE_Disable = 1;
var JSON_Result = true;
%>
<!--#include file="../../appl/Shared/common.inc"-->
<!-- #include file="../../appl/Shared/json2.js" -->
<!-- #include file="../../appl/Shared/funcodes.inc" -->
<%
{
message = "";
var res_rsv_deel_key = -1
var bez_bezoekers_key = getQParamInt("bez_bezoekers_key", -1);
var bez_info = getQParam("bez_info","");
var bez_status = getQParamInt("bez_status", -1);
__Log('voor select');
sql = " SELECT res_rsv_deel_key FROM res_rsv_deel rrd "
+ " WHERE rrd.bez_bezoekers_key = " + bez_bezoekers_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof) {
// parkeerplaats is gevonden
res_rsv_deel_key = oRs(0).value;
}
else {
result = { success : false, message : "Geen geldige parkeerplaats" }
Response.Write(JSON.stringify(result));
}
if (user.has("WEB_USER09")) {
if (bez_status == 1) // Goedkeuren
{
shared.trackaction("CUST04", bez_bezoekers_key);
// set kenmerk goedgekeurd door
// stuur notificatie
}
else // afwijzen
{
// verwijder parkeerplaats
sql = "DELETE res_rsv_deel WHERE res_rsv_deel_key = " + res_rsv_deel_key;
Oracle.Execute(sql);
// sla reden voor afwijzing op
sql = "BEGIN ykpn.set_kenmerk('BEZ', 1161, " + bez_bezoekers_key + ", " + safe.quoted_sql(bez_info) + ", 0); END;" // reden afwijzing
Oracle.Execute(sql);
// en stuur een notificatie uit.
shared.trackaction("CUST05", bez_bezoekers_key);
var res_rsv_deel_key = -1
var bez_bezoekers_key = getQParamInt("bez_bezoekers_key", -1);
var bez_info = getQParam("bez_info","");
var bez_status = getQParamInt("bez_status", -1);
sql = " SELECT res_rsv_deel_key FROM res_rsv_deel rrd "
+ " WHERE rrd.bez_bezoekers_key = " + bez_bezoekers_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof) {
// parkeerplaats is gevonden
res_rsv_deel_key = oRs(0).value;
}
else {
result = { success : false, message : "Geen geldige parkeerplaats" }
Response.Write(JSON.stringify(result));
}
if (bez_status == 1) // Goedkeuren
{
sql = "BEGIN ykpn.set_pincode(" + bez_bezoekers_key + "); END;" // Pas als de parkeerplaats bevestigd wordt zetten we de pincode
Oracle.Execute(sql);
shared.trackaction("CUST04", bez_bezoekers_key, "Parkeerplaatsreservering is goedgekeurd.");
// set kenmerk goedgekeurd door
// stuur notificatie
}
else // afwijzen
{
// bij afwijzen is een reden verplicht
if (bez_info == "")
{
message = 'Bij afwijzen is het invoeren van een reden verplicht.';
}
else
{
message = 'Parkeerplaats aanvraag is afgewezen.';
// verwijder parkeerplaats
sql = "DELETE res_rsv_deel WHERE res_rsv_deel_key = " + res_rsv_deel_key;
Oracle.Execute(sql);
// sla reden voor afwijzing op
sql = "BEGIN ykpn.set_kenmerk('BEZ', 1004, " + bez_bezoekers_key + ", " + safe.quoted_sql(bez_info) + ", 0); END;" // reden afwijzing
Oracle.Execute(sql);
// verwijder pincode
sql = "BEGIN ykpn.set_kenmerk('BEZ', 1020, " + bez_bezoekers_key + ", NULL, 0); END;" // reden afwijzing
Oracle.Execute(sql);
// en stuur een notificatie uit.
shared.trackaction("CUST05", bez_bezoekers_key, 'Parkeerplaatsreservering is afgekeurd');
}
}
}
result = { success : true, message : message };

View File

@@ -58,7 +58,7 @@ bez_postsave = function (bezkeyArr, pResult)
for (var i = 0; i < bezkeyArr.length; i++)
{
// Pincode toevoegen aan de bezoeker
var sql_park = "BEGIN ykpn.set_bez_pincode(" + bezkeyArr[i] + "); END;";
var sql_park = "BEGIN ykpn.update_bezoeker(" + bezkeyArr[i] + "); END;";
Oracle.Execute(sql_park);
}
return true;

View File

@@ -107,7 +107,14 @@ function send1Order(Bedrijf_key, prs_loc_key, XMLnode, OpdrKey, ordernr, Sender,
var result = false;
Log2File(1, "\n");
Log2File(2, "\n\n" + Fill(100, "="));
Log2File(1, "====== " + XMLnode + ": key: " + OpdrKey + " nr: " + ordernr + " (" + toDateTimeString(new Date()) + ")");
var sql = "SELECT prs_bedrijf_naam"
+ " FROM prs_bedrijf"
+ " WHERE prs_bedrijf_key = " + Bedrijf_key;
var oRs = Oracle.Execute(sql);
var bedrijfnaam = oRs("prs_bedrijf_naam").Value; // Handig voor logging
oRs.Close();
Log2File(1, "====== " + XMLnode + ": key: " + OpdrKey + " nr: " + ordernr + " to: " + bedrijfnaam + " (" + toDateTimeString(new Date()) + ")");
if ((S("puo_flags") & 2) != 2) // Voor in testomgevingen
{
@@ -230,7 +237,20 @@ function send1Order(Bedrijf_key, prs_loc_key, XMLnode, OpdrKey, ordernr, Sender,
var oRsB = Oracle.Execute(sqlB);
if (oRsB.Eof)
{
Log2File(0, "Error: Bedrijf is niet goed geconfigureerd: " + Bedrijf_key);
oRsB.Close();
Log2File(1, sql);
var tekst = "Error: No suitable technical address for company '{0}' key {1} found.".format(bedrijfnaam, Bedrijf_key);
Log2File(1, tekst);
var sqlC = "BEGIN "
+ (cust == 0 ? "FAC" : customerId) + ".markorderassent(" + safe.quoted_sql(XMLnode)
+ ", " + OpdrKey
+ ", -1"
+ ", " + safe.quoted_sql(tekst)
+ ");"
+ " END;";
Log2File(2, sqlC);
Oracle.Execute(sqlC);
result = false;
}
else
{
@@ -263,7 +283,7 @@ function send1Order(Bedrijf_key, prs_loc_key, XMLnode, OpdrKey, ordernr, Sender,
connect.connect(bedrijfadres);
if (!connect.Connected)
{
var tekst = "Could not connect, invalid technical address '{0}' for contractor key {1}?".format(bedrijfadres.url, Bedrijf_key)
var tekst = "Could not connect, invalid technical address '{0}' for contractor '{1}' key {2}?".format(bedrijfadres.url, bedrijfnaam, Bedrijf_key)
Log2File(1, tekst);
var sqlC = "BEGIN "
+ (cust == 0 ? "FAC" : customerId) + ".markorderassent(" + safe.quoted_sql(XMLnode)