Merge 2017.3 Gold D patches
svn path=/Website/trunk/; revision=38053
This commit is contained in:
@@ -1264,7 +1264,10 @@ api2 = {
|
||||
lastkey = key;
|
||||
if (!model.primary)
|
||||
{
|
||||
data.push(record);
|
||||
if (to_skip > 0)
|
||||
to_skip --;
|
||||
else
|
||||
data.push(record);
|
||||
record = {};
|
||||
total_count ++;
|
||||
}
|
||||
@@ -1274,7 +1277,10 @@ api2 = {
|
||||
if (lastkey && data.length < limit)
|
||||
{
|
||||
total_count ++;
|
||||
data.push(record);
|
||||
if (to_skip > 0)
|
||||
to_skip --;
|
||||
else
|
||||
data.push(record);
|
||||
}
|
||||
if ("merged_model" in model) // de disc_params truc
|
||||
{
|
||||
|
||||
@@ -92,11 +92,44 @@ function model_bez_kenmerk(params)
|
||||
"dbs": "bez_kenmerk_systeem",
|
||||
"label": L("mgt_srtkenmerk_systeem_adv"),
|
||||
"typ": "number",
|
||||
"LOV": L("mgt_kenmerk_systeemLOV"),
|
||||
"bits": [
|
||||
{
|
||||
"name": "",
|
||||
"label": "",
|
||||
"typ": "check",
|
||||
"mask": 15,
|
||||
"radios": [
|
||||
{
|
||||
"name": "ksystem",
|
||||
"label": L("mgt_kenmerk_systeem"),
|
||||
"mask": 1,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "overview",
|
||||
"label": L("mgt_kenmerk_systeem_overview"),
|
||||
"mask": 2,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "conf",
|
||||
"label": L("mgt_kenmerk_systeem_conf"),
|
||||
"mask": 4,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "ano",
|
||||
"label": L("mgt_kenmerk_systeem_ano"),
|
||||
"mask": 8,
|
||||
"defaultvalue": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"defaultvalue": 0,
|
||||
"required": true
|
||||
},
|
||||
"length": {
|
||||
"length": {
|
||||
"dbs": "bez_kenmerk_lengte",
|
||||
"label": L("mgt_srtkenmerk_lengte"),
|
||||
"typ": "number"
|
||||
|
||||
@@ -91,6 +91,14 @@ function model_bgt_budget()
|
||||
"iscurrency": true,
|
||||
"total": true
|
||||
},
|
||||
"vatoriginal": {
|
||||
"dbs": "bgt_budget_btwbedrag_origineel",
|
||||
"sql": "(BGT.getBudgetOpDatum(bgt_budget.bgt_budget_key, 1, NULL))",
|
||||
"label": L("bgt_budget_origineel")+" "+L("lcl_fin_btwtabelwaarde_oms"),
|
||||
"typ": "float",
|
||||
"iscurrency": true,
|
||||
"total": true
|
||||
},
|
||||
"amountmutation": {
|
||||
"dbs": "bgt_budget_bedrag_mutatie",
|
||||
"sql": "(BGT.getBudgetSoortMutatie(NULL, NULL, bgt_budget.prs_kostensoort_key, 0, 'EM', NULL))",
|
||||
@@ -237,6 +245,42 @@ function model_bgt_budget()
|
||||
{ // Zoek bij wijzigen van kostenplaats de kostenplaatsgrp_key op
|
||||
}
|
||||
|
||||
this.hook_pre_delete = function(params, key)
|
||||
{
|
||||
var key_arr = getFParamIntArray("id");
|
||||
|
||||
var sql_c = "SELECT COUNT(*) aantal"
|
||||
+ " FROM mld_opdr"
|
||||
+ " WHERE prs_kostensoort_key IN"
|
||||
+ " (SELECT prs_kostensoort_key"
|
||||
+ " FROM bgt_budget"
|
||||
+ " WHERE bgt_budget_key IN (" + key_arr.join(",") + ")"
|
||||
+ " )";
|
||||
var oRs_c = Oracle.Execute(sql_c);
|
||||
var nr_mld_opdr = oRs_c("aantal").Value;
|
||||
oRs_c.Close();
|
||||
if (nr_mld_opdr > 0)
|
||||
{
|
||||
// abort_with_warning(L("bgt_budget_delete_val1").format(L("lcl_fin_contracten"))); // De geselecteerde budgetten hebben contracten. Verwijder deze eerst.
|
||||
abort_with_warning("De geselecteerde budgetten hebben contracten. Verwijder deze eerst.");
|
||||
}
|
||||
|
||||
var sql_m = "SELECT COUNT(*) aantal"
|
||||
+ " FROM bgt_budgetmutatie"
|
||||
+ " WHERE bgt_budget_key_naar IN (" + key_arr.join(",") + ")"
|
||||
+ " OR bgt_budget_key_van IN (" + key_arr.join(",") + ")";
|
||||
var oRs_m = Oracle.Execute(sql_m);
|
||||
var nr_mutatie = oRs_m("aantal").Value;
|
||||
oRs_m.Close();
|
||||
if (nr_mutatie > 0)
|
||||
{
|
||||
// abort_with_warning(L("bgt_budget_delete_val1").format(L("bgt_budget_mutaties"))); // De geselecteerde budgetten hebben mutaties. Verwijder deze eerst.
|
||||
abort_with_warning("De geselecteerde budgetten hebben mutaties. Verwijder deze eerst.");
|
||||
}
|
||||
// Er zijn geen contracten of budgetmutaties bij de geselecteerde budget(ten) bekend.
|
||||
// Verwijderen is geen probleem meer.
|
||||
}
|
||||
|
||||
var v_budgetdiscipline = getQParamInt("budgetdiscipline", -1);
|
||||
if (v_budgetdiscipline == -1)
|
||||
{
|
||||
|
||||
@@ -260,6 +260,12 @@ function model_fin_factuur()
|
||||
// Bij klonen van een factuur met een vast factuurnr blijft deze ongewijzigd.
|
||||
obj.invoice = invoice;
|
||||
}
|
||||
var v_company = obj.company.id;
|
||||
%>
|
||||
<script type="text/javascript">
|
||||
<% if (v_company) { %> var company = "<%=v_company%>"; <% } %>
|
||||
</script>
|
||||
<%
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -291,6 +291,25 @@ function model_mld_opdr()
|
||||
btw_data.btw_val = oRs("fin_btwtabelwaarde_perc").Value || "0";
|
||||
}
|
||||
oRs.Close();
|
||||
|
||||
/*
|
||||
#TWYN#53173
|
||||
De bestaande knop "Kopi<70>ren" is komen te vervallen. Daarvoor in de plaats zijn twee nieuwe knoppen toegevoegd: "Nieuwe opdracht" en "nieuwe subopdracht".
|
||||
Bij een nieuwe subopdracht is het opdrachtnummer gelijk aan die van de opdracht van waaruit gekopieerd wordt en is niet te wijzigen. Het volgnummer staat standaard op volgnr(max+1).
|
||||
if (obj._is_clone == 2)) // nieuw subcontract: bepaal hoogste volgnummer bij dit contract, en vul deze alvast in.
|
||||
{
|
||||
var sql = "SELECT COALESCE(MAX(s.mld_opdr_bedrijfopdr_volgnr), 0) + 1 volgnr"
|
||||
+ " FROM mld_opdr s"
|
||||
+ " WHERE s.mld_opdr_ordernr ="
|
||||
+ " (SELECT m.mld_opdr_ordernr"
|
||||
+ " FROM mld_opdr m"
|
||||
+ " WHERE m. mld_opdr_key = " + mld_opdr_id
|
||||
+ " )";
|
||||
var oRs = Oracle.Execute(sql);
|
||||
obj.sequence = oRs("volgnr").Value;
|
||||
oRs.Close();
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
%>
|
||||
@@ -314,6 +333,11 @@ function model_mld_opdr()
|
||||
var v_costtype = (typeof obj.costtype == "object" ? obj.costtype.id : obj.costtype);
|
||||
checkAanwezigBudget(v_costtype);
|
||||
|
||||
/*
|
||||
TWYN#53173 : waarschijnlijk pas met 2018.1
|
||||
obj._is_clone=1 --> nieuwe (hoofd) opdracht
|
||||
obj._is_clone=2 --> nieuwe sub-opdracht
|
||||
*/
|
||||
if (isclone) // Bij kopie van opdracht geen nieuw nummer genereren.
|
||||
{
|
||||
var v_project_key = (typeof obj.budgetproject == "object" ? obj.budgetproject.id : obj.budgetproject);
|
||||
|
||||
@@ -61,8 +61,41 @@ function model_mld_srtkenmerk(params)
|
||||
"dbs": "mld_srtkenmerk_systeem",
|
||||
"label": L("mgt_srtkenmerk_systeem_adv"),
|
||||
"typ": "number",
|
||||
"LOV": L("mgt_srtkenmerk_systeemLOV"),
|
||||
"defaultvalue": 0,
|
||||
"bits": [
|
||||
{
|
||||
"name": "",
|
||||
"label": "",
|
||||
"typ": "check",
|
||||
"mask": 15,
|
||||
"radios": [
|
||||
{
|
||||
"name": "ksystem",
|
||||
"label": L("mgt_kenmerk_systeem"),
|
||||
"mask": 1,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "overview",
|
||||
"label": L("mgt_kenmerk_systeem_overview"),
|
||||
"mask": 2,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "conf",
|
||||
"label": L("mgt_kenmerk_systeem_conf"),
|
||||
"mask": 4,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "ano",
|
||||
"label": L("mgt_kenmerk_systeem_ano"),
|
||||
"mask": 8,
|
||||
"defaultvalue": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"defaultvalue": 0,
|
||||
"required": true
|
||||
},
|
||||
"length": {
|
||||
|
||||
@@ -97,7 +97,41 @@ function model_prs_kenmerk(niveau, params)
|
||||
"system": {
|
||||
"dbs": "prs_kenmerk_systeem",
|
||||
"label": L("mgt_srtkenmerk_systeem"),
|
||||
"typ": "check"
|
||||
"typ": "number",
|
||||
"bits": [
|
||||
{
|
||||
"name": "",
|
||||
"label": "",
|
||||
"typ": "check",
|
||||
"mask": 15,
|
||||
"radios": [
|
||||
{
|
||||
"name": "ksystem",
|
||||
"label": L("mgt_kenmerk_systeem"),
|
||||
"mask": 1,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "overview",
|
||||
"label": L("mgt_kenmerk_systeem_overview"),
|
||||
"mask": 2,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "conf",
|
||||
"label": L("mgt_kenmerk_systeem_conf"),
|
||||
"mask": 4,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "ano",
|
||||
"label": L("mgt_kenmerk_systeem_ano"),
|
||||
"mask": 8,
|
||||
"defaultvalue": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"length": {
|
||||
"dbs": "prs_kenmerk_lengte",
|
||||
|
||||
@@ -540,7 +540,12 @@ function report_GET(params)
|
||||
order.push(i+1)
|
||||
sql += " ORDER BY " + order.join(", ");
|
||||
|
||||
var maxcnt = params.filter.showall==1?S("qp_maxrows2"): (params.filter.ismobile?S("qp_maxrows_mobile"):S("qp_maxrows"));
|
||||
if (params.filter.limit > 0)
|
||||
maxcnt = parseInt(params.filter.limit, 10);
|
||||
else
|
||||
var maxcnt = params.filter.showall==1?S("qp_maxrows2"): (params.filter.ismobile?S("qp_maxrows_mobile"):S("qp_maxrows"));
|
||||
if (params.filter.offset > 0)
|
||||
maxcnt += parseInt(params.filter.offset, 10);
|
||||
if (params.filter.scf_pivot == 1)
|
||||
{
|
||||
if (params.columns.length < 2)
|
||||
|
||||
@@ -60,7 +60,41 @@ function model_res_srtkenmerk(params)
|
||||
"dbs": "res_srtkenmerk_lengte",
|
||||
"label": L("mgt_srtkenmerk_lengte"),
|
||||
"typ": "number",
|
||||
"multiedit": true
|
||||
"bits": [
|
||||
{
|
||||
"name": "",
|
||||
"label": "",
|
||||
"typ": "check",
|
||||
"mask": 15,
|
||||
"radios": [
|
||||
{
|
||||
"name": "ksystem",
|
||||
"label": L("mgt_kenmerk_systeem"),
|
||||
"mask": 1,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "overview",
|
||||
"label": L("mgt_kenmerk_systeem_overview"),
|
||||
"mask": 2,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "conf",
|
||||
"label": L("mgt_kenmerk_systeem_conf"),
|
||||
"mask": 4,
|
||||
"defaultvalue": 1
|
||||
},
|
||||
{
|
||||
"name": "ano",
|
||||
"label": L("mgt_kenmerk_systeem_ano"),
|
||||
"mask": 8,
|
||||
"defaultvalue": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"multiedit": true
|
||||
},
|
||||
"decimals": {
|
||||
"dbs": "res_srtkenmerk_dec",
|
||||
|
||||
@@ -188,7 +188,17 @@ user.auth_required_or_abort(this_bestelopdr.canReadAny || this_bestelling.isVera
|
||||
Title: L("lcl_status_details") + " " + S("bes_bestelopdr_prefix") + bes_bestelopdr.bestelopdr_id
|
||||
}
|
||||
}
|
||||
ROFIELDTR("fld", L("lcl_bes_Bes_status"), bes_bestelopdr.statustxt, params);
|
||||
var statustxt = bes_bestelopdr.statustxt;
|
||||
var aantal = 0;
|
||||
var aantalontv = 0;
|
||||
for (var i = 0; i < bes_bestelopdr.artikel_arr.length; i++)
|
||||
{
|
||||
aantal = aantal + bes_bestelopdr.artikel_arr[i].aantal;
|
||||
aantalontv = aantalontv + bes_bestelopdr.artikel_arr[i].aantalontv;
|
||||
}
|
||||
if (bes_bestelopdr.status == 4 && aantalontv > 0 && aantalontv < aantal)
|
||||
statustxt += "\n" + "Deels geleverd"; // TODO in 2018.1 harde tekst vervangen door lcl_bes_ord_deelsgeleverd.
|
||||
ROFIELDTR("fld", L("lcl_bes_Bes_status"), 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)
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@ $(function ()
|
||||
});
|
||||
|
||||
var kostensoort_btw = 0;
|
||||
var last_account_key = -1;
|
||||
|
||||
function init_budget()
|
||||
{
|
||||
@@ -19,6 +20,7 @@ function init_budget()
|
||||
$("#amount").change( change_amount );
|
||||
$("#vat").change( change_vat );
|
||||
$("#account").change( change_account );
|
||||
$("input#contingency").change( change_contingency );
|
||||
|
||||
|
||||
// budgetdiscipline en budgetproject kunnen ook als gekozen filter worden meegegeven
|
||||
@@ -128,8 +130,9 @@ function change_rubriek()
|
||||
function change_groep()
|
||||
{
|
||||
var groep_key = $("#costtypegroup").val();
|
||||
var is_reserve = !(groep_key > 0); // Als het budget een kostensoortgroep heeft dan is het geen reserve.
|
||||
fill_rubriekselector("S", groep_key);
|
||||
use_contingency(false);
|
||||
use_contingency(is_reserve); // als groep weer leeg is gemaakt mag het budget wel weer reserve zijn/
|
||||
|
||||
fill_opdrachtselector("OP", groep_key);
|
||||
}
|
||||
@@ -213,6 +216,17 @@ function change_account()
|
||||
// Vul de prs_kostenplaatsgrp_key
|
||||
var costgrp_key = $("#account option:selected").attr("par_key");
|
||||
$("#costgroup").val(costgrp_key);
|
||||
|
||||
var account_key = $("#account").val();
|
||||
if (account_key > 0)
|
||||
last_account_key = account_key;
|
||||
}
|
||||
|
||||
function change_contingency()
|
||||
{
|
||||
var is_reserve = $("input#contingency").prop('checked');
|
||||
$("#account").val( is_reserve ? -1 : last_account_key);
|
||||
$("#account").prop("disabled", is_reserve);
|
||||
}
|
||||
|
||||
function fill_opdrachtselector(niveau, parent_key, init_key)
|
||||
@@ -252,6 +266,7 @@ function fill_plaatsselector(niveau, parent_key, init_key)
|
||||
|
||||
function use_contingency(contingency_mode)
|
||||
{
|
||||
// is reservebudget, kan aangezet worden als alleen kostenrubriek is gekozen.
|
||||
if (contingency_mode)
|
||||
{
|
||||
$("input#contingency").prop("disabled", false );
|
||||
@@ -261,6 +276,7 @@ function use_contingency(contingency_mode)
|
||||
$("input#contingency").prop('checked', false);
|
||||
$("input#contingency").prop("disabled", true );
|
||||
}
|
||||
change_contingency();
|
||||
}
|
||||
|
||||
function process_info(data)
|
||||
@@ -313,7 +329,10 @@ function process_info(data)
|
||||
}
|
||||
|
||||
if (sel_key > -1)
|
||||
{
|
||||
select.val(sel_key);
|
||||
|
||||
if (data.niveau == "KP")
|
||||
last_account_key = sel_key;
|
||||
}
|
||||
//$("input#contingency").prop("disabled", true );
|
||||
}
|
||||
|
||||
@@ -174,6 +174,8 @@ var transitParam = buildTransitParam([]);
|
||||
+ " f.fin_factuur_key,"
|
||||
+ " f.fin_factuur_datum factuurdatum,"
|
||||
+ " f.fin_factuur_totaal gefactureerd,"
|
||||
+ " f.fin_factuur_totaal_btw gefactureerd_btw,"
|
||||
+ " f.fin_factuur_advies adviesdatum,"
|
||||
+ " bgt_project_omschrijving deelproject,"
|
||||
+ " ins_discipline_omschrijving project"
|
||||
+ " FROM mld_opdr o,"
|
||||
@@ -304,8 +306,8 @@ var transitParam = buildTransitParam([]);
|
||||
+ " , p.scode sortcode"
|
||||
+ " , MAX(BGT.getBudgetOpDatum(b.bgt_budget_key, "+ (bgt_inclbtw ? 2 : 0) + ", NULL)) budget_origineel"
|
||||
+ " , MAX(BGT.getBudgetOpDatum(b.bgt_budget_key, "+ (bgt_inclbtw ? 2 : 0) + ", SYSDATE)) budget_actueel"
|
||||
+ " , MAX(BGT.getBudgetSoortMutatie(NULL, NULL, p.prs_kostensoort_key, "+ (bgt_inclbtw ? 2 : 0) + ", 'AR', NULL)) budget_reserve"
|
||||
+ " , MAX(BGT.getBudgetSoortMutatie(NULL, NULL, p.prs_kostensoort_key, "+ (bgt_inclbtw ? 2 : 0) + ", 'EM', NULL)) budget_mutatie"
|
||||
+ " , MAX(BGT.getBudgetSoortMutatie(p.bgt_kostenrubriek_key, p.prs_kostensoortgrp_key, p.prs_kostensoort_key, "+ (bgt_inclbtw ? 2 : 0) + ", 'AR', NULL)) budget_reserve"
|
||||
+ " , MAX(BGT.getBudgetSoortMutatie(p.bgt_kostenrubriek_key, p.prs_kostensoortgrp_key, p.prs_kostensoort_key, "+ (bgt_inclbtw ? 2 : 0) + ", 'EM', NULL)) budget_mutatie"
|
||||
+ " FROM bgt_v_project_full p"
|
||||
+ " , bgt_budget b"
|
||||
+ " WHERE ( (p.prs_kostensoort_key = b.prs_kostensoort_key)"
|
||||
@@ -858,6 +860,25 @@ var transitParam = buildTransitParam([]);
|
||||
}
|
||||
|
||||
// KOLOM GEFACTUREERD
|
||||
function invoiceLink(p_outputmode, p_groupby, p_oRs, p_val)
|
||||
{
|
||||
var v = p_val;
|
||||
if (p_outputmode != 3)
|
||||
{
|
||||
if (p_groupby < 4 && p_oRs("prs_kostensoort_key").Value)
|
||||
{
|
||||
v = "<span class='details' onclick='FcltMgr.stopPropagation(event); naarfacturen({0}, {1}, {2}, this)'>" + v +"</span>";
|
||||
if (p_groupby==3)
|
||||
v = (v).format(p_oRs("prs_kostensoort_key").Value, null, null);
|
||||
if (p_groupby==2)
|
||||
v = (v).format(null, p_oRs("mld_opdr_key").Value, null);
|
||||
if (p_groupby==1)
|
||||
v = (v).format(null, null, p_oRs("fin_factuur_key").Value);
|
||||
}
|
||||
}
|
||||
return v;
|
||||
}
|
||||
|
||||
function invoicesShow(oRs)
|
||||
{
|
||||
var v = safe.curr(Math.round(oRs("gefactureerd").Value), true);
|
||||
@@ -865,28 +886,47 @@ var transitParam = buildTransitParam([]);
|
||||
var show_empty = false;
|
||||
if (show_empty || v != 0)
|
||||
{
|
||||
if (outputmode != 3)
|
||||
{
|
||||
if (groupby < 4 && oRs("prs_kostensoort_key").Value)
|
||||
{
|
||||
v = "<span class='details' onclick='FcltMgr.stopPropagation(event); naarfacturen({0}, {1}, {2}, this)'>" + v +"</span>";
|
||||
if (groupby==3)
|
||||
v = (v).format(oRs("prs_kostensoort_key").Value, null, null);
|
||||
if (groupby==2)
|
||||
v = (v).format(null, oRs("mld_opdr_key").Value, null);
|
||||
if (groupby==1)
|
||||
v = (v).format(null, null, oRs("fin_factuur_key").Value);
|
||||
}
|
||||
}
|
||||
return v;
|
||||
v = invoiceLink(outputmode, groupby, oRs, v);
|
||||
return v;
|
||||
}
|
||||
}
|
||||
function invoicesAmount(oRs)
|
||||
{
|
||||
var v = Math.round(oRs("gefactureerd").Value);
|
||||
return v;
|
||||
var v = Math.round(oRs("gefactureerd").Value);
|
||||
return v;
|
||||
}
|
||||
|
||||
// KOLOM GEFACTUREERD BTW
|
||||
function invoicesVatShow(oRs)
|
||||
{
|
||||
var v = safe.curr(Math.round(oRs("gefactureerd_btw").Value), true);
|
||||
var show_empty = false;
|
||||
if (show_empty || v != 0)
|
||||
{
|
||||
v = invoiceLink(outputmode, groupby, oRs, v);
|
||||
return v;
|
||||
}
|
||||
}
|
||||
function invoicesVatAmount(oRs)
|
||||
{
|
||||
var v = Math.round(oRs("gefactureerd_btw").Value);
|
||||
return v;
|
||||
}
|
||||
function invoicesIncShow(oRs)
|
||||
{
|
||||
var v = safe.curr(Math.round(oRs("gefactureerd").Value + oRs("gefactureerd_btw").Value), true);
|
||||
var show_empty = false;
|
||||
if (show_empty || v != 0)
|
||||
{
|
||||
v = invoiceLink(outputmode, groupby, oRs, v);
|
||||
return v;
|
||||
}
|
||||
}
|
||||
function invoicesIncAmount(oRs)
|
||||
{
|
||||
var v = Math.round(oRs("gefactureerd").Value + oRs("gefactureerd_btw").Value);
|
||||
return v;
|
||||
}
|
||||
// KOLOM TE FACTUREREN
|
||||
function invoicestogoShow(oRs)
|
||||
{
|
||||
@@ -1010,9 +1050,18 @@ var transitParam = buildTransitParam([]);
|
||||
if (groupby != 1)
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachten"), content: ordersShow, fnAmount: ordersAmount, datatype: "currency", total: true }));
|
||||
}
|
||||
if (groupby > 2)
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachtentogo"), content: orderstogoShow, fnAmount: orderstogoAmount, datatype: "currency", total: true }));
|
||||
}
|
||||
rst.addColumn(new Column({caption: L("bgt_facturen"), content: invoicesShow, fnAmount: invoicesAmount, datatype: "currency", total: true }));
|
||||
if (groupby == 1)
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("lcl_fin_btwsum"), content: invoicesVatShow, fnAmount: invoicesVatAmount, datatype: "currency", total: true }));
|
||||
rst.addColumn(new Column({caption: L("lcl_fin_total_sum"), content: invoicesIncShow, fnAmount: invoicesIncAmount, datatype: "currency", total: true }));
|
||||
rst.addColumn(new Column({caption: L("lcl_fin_adviesdatum"), content: "adviesdatum"}));
|
||||
}
|
||||
if (groupby != 1)
|
||||
rst.addColumn(new Column({caption: L("bgt_facturentogo"), content: invoicestogoShow, fnAmount: invoicestogoAmount, datatype: "currency", total: true }));
|
||||
|
||||
@@ -1048,20 +1097,11 @@ var transitParam = buildTransitParam([]);
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachtentogo"), content: rs_contracteren}));
|
||||
rst.addColumn(new Column({caption: L("bgt_facturentogo"), content: rs_factureren}));
|
||||
}
|
||||
rst.addColumn(new Column({caption: L("bgt_facturen"), content: "gefactureerd"}));
|
||||
if (groupby != 1) // denk ik
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachten"), content: "gecontracteerd"}));
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachtentogo"), content: "tecontracteren"}));
|
||||
rst.addColumn(new Column({caption: L("bgt_facturentogo"), content: "tefactureren"}));
|
||||
}
|
||||
//
|
||||
rst.addColumn(new Column({caption: L("bgt_facturen"), content: rs_facturen}));
|
||||
if (groupby != 1) // denk ik
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachten"), content: rs_contracten}));
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachtentogo"), content: rs_contracteren}));
|
||||
rst.addColumn(new Column({caption: L("bgt_facturentogo"), content: rs_factureren}));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -22,12 +22,12 @@ function object_merge(){
|
||||
function bgt_budgetdiscipline_foreign(p_checkauth)
|
||||
{
|
||||
var tbl = "(SELECT d.ins_discipline_key"
|
||||
+ ", p.bgt_disc_params_code ||' - '|| d.ins_discipline_omschrijving oms"
|
||||
+ " FROM ins_tab_discipline d"
|
||||
+ " , bgt_disc_params p"
|
||||
+ " WHERE d.ins_discipline_key = p.bgt_ins_discipline_key"
|
||||
+ " AND d.ins_discipline_module = 'BGT'"
|
||||
+ " AND d.ins_discipline_verwijder IS NULL";
|
||||
+ " , d.ins_discipline_omschrijving oms"
|
||||
+ " FROM ins_tab_discipline d"
|
||||
+ " , bgt_disc_params p"
|
||||
+ " WHERE d.ins_discipline_key = p.bgt_ins_discipline_key"
|
||||
+ " AND d.ins_discipline_module = 'BGT'"
|
||||
+ " AND d.ins_discipline_verwijder IS NULL";
|
||||
if (p_checkauth)
|
||||
{
|
||||
tbl += ""
|
||||
@@ -41,7 +41,8 @@ function bgt_budgetdiscipline_foreign(p_checkauth)
|
||||
var foreign = {
|
||||
"tbl": tbl,
|
||||
"key": "ins_discipline_key",
|
||||
"desc": "oms"
|
||||
"desc": "oms",
|
||||
"order": "oms"
|
||||
};
|
||||
|
||||
return foreign;
|
||||
|
||||
@@ -21,7 +21,7 @@ function init_factuur()
|
||||
{ // rechtstreeks vanuit fin_factuur
|
||||
var v_budgetdiscipline = (typeof $("#budgetdiscipline").val() == "undefined" ? -1 : $("#budgetdiscipline").val() );
|
||||
var v_budgetproject = (typeof $("#budgetproject").val() == "undefined" ? -1 : $("#budgetproject").val() );
|
||||
var v_company = (typeof $("#company").val() == "undefined" ? -1 : $("#company").val() );
|
||||
var v_company = (typeof $("#company").val() == "undefined" ? (typeof company == "undefined" ? -1 : company) : $("#company").val() );
|
||||
var v_order = (typeof $("#order").val() == "undefined" ? -1 : $("#order").val() );
|
||||
}
|
||||
else
|
||||
|
||||
@@ -241,7 +241,7 @@ switch (req_info)
|
||||
case "D":
|
||||
{
|
||||
sql = "SELECT d.ins_discipline_key sel_key"
|
||||
+ " , p.bgt_disc_params_code ||' '||d.ins_discipline_omschrijving sel_oms"
|
||||
+ " , d.ins_discipline_omschrijving sel_oms"
|
||||
+ " , d.ins_discipline_btw btw_inc"
|
||||
+ " , NULL btw_val"
|
||||
+ " , NULL grp_key"
|
||||
@@ -257,9 +257,9 @@ switch (req_info)
|
||||
+ " (SELECT ins_discipline_key FROM fac_v_webgebruiker"
|
||||
+ " WHERE prs_perslid_key = " + user_key
|
||||
+ " AND (fac_gebruiker_prs_level_read<9 OR fac_gebruiker_alg_level_read<9))";
|
||||
order = " ORDER BY ins_discipline_volgnr"
|
||||
+ " , p.bgt_disc_params_code"
|
||||
+ " , p.bgt_disc_params_code ||' - '||d.ins_discipline_omschrijving";
|
||||
|
||||
order = " ORDER BY NVL(ins_discipline_volgnr, 0)"
|
||||
+ " , d.ins_discipline_omschrijving";
|
||||
break;
|
||||
}
|
||||
case "P":
|
||||
@@ -277,7 +277,7 @@ switch (req_info)
|
||||
+ " FROM bgt_project p"
|
||||
+ " WHERE p.bgt_project_verwijder IS NULL"
|
||||
+ " AND p.ins_discipline_key = " + parent_key;
|
||||
order = " ORDER BY p.bgt_project_volgnr"
|
||||
order = " ORDER BY NVL(p.bgt_project_volgnr, 0)"
|
||||
+ " , p.bgt_project_code"
|
||||
+ " , p.bgt_project_code ||' - '|| p.bgt_project_omschrijving";
|
||||
break;
|
||||
|
||||
@@ -82,6 +82,24 @@ scaffolding(this_model,
|
||||
"reference"
|
||||
]
|
||||
},
|
||||
/*
|
||||
// TWYN#53173 Ook kunnen kopieren van een opdracht (nieuw opdrachtnummer genereren, en volgnr=0)
|
||||
"show": {
|
||||
"no_clone": true,
|
||||
"buttons": [
|
||||
{
|
||||
"title": "Nieuwe opdracht", //L("lcl_opdr_new_opdr"),
|
||||
"action": "scf_clone()",
|
||||
"icon": "clone.png"
|
||||
},
|
||||
{
|
||||
"title": "Nieuwe subopdracht", //L("lcl_opdr_new_subopdr"),
|
||||
"action": "scf_clone(2)", // Let op: de betekenis van hoofd- en subopdracht zijn nu omgedraaid!
|
||||
"icon": "copy.png"
|
||||
}
|
||||
]
|
||||
},
|
||||
*/
|
||||
"edit": {
|
||||
"requires": {
|
||||
"js": ["../bgt/bgt_budget.js"]
|
||||
|
||||
118
APPL/FAC/fac_anonymize.asp
Normal file
118
APPL/FAC/fac_anonymize.asp
Normal file
@@ -0,0 +1,118 @@
|
||||
<%@language = "javascript" %>
|
||||
<% /*
|
||||
$Revision$
|
||||
$Id$
|
||||
|
||||
File: fac_anonymize.asp
|
||||
Description: Het anonimiseren van modules.
|
||||
Parameters: moduleArray
|
||||
Note:
|
||||
*/ %>
|
||||
|
||||
<%
|
||||
var JSON_Result = true;
|
||||
%>
|
||||
|
||||
<!-- #include file="../Shared/common.inc" -->
|
||||
<!-- #include file="../Shared/json2.js" -->
|
||||
|
||||
<%
|
||||
protectRequest.validateToken();
|
||||
|
||||
var moduleArray = getFParamArray("moduleString");
|
||||
var autfunction = "WEB_PRSSYS";
|
||||
var authparams = user.checkAutorisation(autfunction);
|
||||
var anonymize_period = S("anonymize_period");
|
||||
|
||||
var startdatum = getFParamDate("startdatum"); // Periode van
|
||||
var einddatum = getFParamDate("einddatum"); // Perdiode tot
|
||||
|
||||
var result = { key: moduleArray.join(","), success: true };
|
||||
|
||||
var last_einddatum = new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate() - anonymize_period);
|
||||
if (einddatum > last_einddatum)
|
||||
einddatum = last_einddatum;
|
||||
|
||||
var anodatetime = new Date();
|
||||
// Eerst PRS anonimiseren. De andere modules hebben allemaal referenties naar PRS.
|
||||
// Bijvoorbeeld het veld bez_afspraak_gastheer die door trigger automatisch weer wordt gevuld met tekstnaam van host.
|
||||
var sql;
|
||||
var anosql = "BEGIN"
|
||||
// Persoon als eerste i.v.m. tekstovername van gastheer bij afspraken.
|
||||
if (inArray("PRS", moduleArray))
|
||||
{ // Anonimiseer procedure voor PRS aanroepen.
|
||||
anosql += " ano.anonymizeprs(" + startdatum.beginToSQL() + ", " + einddatum.endToSQL() + ");";
|
||||
}
|
||||
if (inArray("BES", moduleArray))
|
||||
{ // Anonimiseer procedure voor PRS aanroepen.
|
||||
anosql += " ano.anonymizebes(" + startdatum.beginToSQL() + ", " + einddatum.endToSQL() + ");";
|
||||
}
|
||||
if (inArray("BEZ", moduleArray))
|
||||
{ // Anonimiseer procedure voor BEZ aanroepen.
|
||||
anosql += " ano.anonymizebez(" + startdatum.beginToSQL() + ", " + einddatum.endToSQL() + ");";
|
||||
}
|
||||
if (inArray("MLD", moduleArray))
|
||||
{ // Anonimiseer procedure voor PRS aanroepen.
|
||||
anosql += " ano.anonymizemld(" + startdatum.beginToSQL() + ", " + einddatum.endToSQL() + ");";
|
||||
}
|
||||
anosql += " END;";
|
||||
|
||||
Oracle.Execute(anosql);
|
||||
|
||||
var messageArray = [];
|
||||
if (inArray("BES", moduleArray))
|
||||
{ // Bepalen hoeveel bestellingen zijn geanonimiseerd.
|
||||
sql = "SELECT COUNT(ft.fac_tracking_key) aantalbes"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_tracking_datum >= " + anodatetime.toSQL(true, true)
|
||||
+ " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = ('BESANO'))";
|
||||
oRs = Oracle.Execute(sql);
|
||||
messageArray.push(oRs("aantalbes").Value + " " + L("lcl_bes_bestellingen"));
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
if (inArray("BEZ", moduleArray))
|
||||
{ // Bepalen hoeveel afspraken zijn geanonimiseerd.
|
||||
sql = "SELECT COUNT(ft.fac_tracking_key) aantalbez"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_tracking_datum >= " + anodatetime.toSQL(true, true)
|
||||
+ " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = ('BEZANO'))";
|
||||
oRs = Oracle.Execute(sql);
|
||||
messageArray.push(oRs("aantalbez").Value + " " + L("lcl_bez_appointments"));
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
if (inArray("MLD", moduleArray))
|
||||
{ // Bepalen hoeveel bestellingen zijn geanonimiseerd.
|
||||
sql = "SELECT COUNT(ft.fac_tracking_key) aantalmld"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_tracking_datum >= " + anodatetime.toSQL(true, true)
|
||||
+ " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = ('MLDANO'))";
|
||||
oRs = Oracle.Execute(sql);
|
||||
messageArray.push(oRs("aantalmld").Value + " " + L("lcl_mld_meldingen"));
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
if (inArray("PRS", moduleArray))
|
||||
{ // Bepalen hoeveel afspraken zijn geanonimiseerd.
|
||||
sql = "SELECT COUNT(ft.fac_tracking_key) aantalprs"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_tracking_datum >= " + anodatetime.toSQL(true, true)
|
||||
+ " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = ('PRSANO'))";
|
||||
oRs = Oracle.Execute(sql);
|
||||
messageArray.push(oRs("aantalprs").Value + " " + L("lcl_prs_persons"));
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
result.message = L("lcl_fac_following_anonymized") + ":\n" + messageArray.join("\n");
|
||||
|
||||
Response.Write(JSON.stringify(result));
|
||||
%>
|
||||
179
APPL/FAC/fac_anonymize_list.asp
Normal file
179
APPL/FAC/fac_anonymize_list.asp
Normal file
@@ -0,0 +1,179 @@
|
||||
<%@ language = "JavaScript" %>
|
||||
<% /*
|
||||
$Revision$
|
||||
$Id$
|
||||
|
||||
File: fac_anonimize_list.asp
|
||||
Description: Toont van elke module het aantal te anonimeren records.
|
||||
Parameters: module: filtert het resultaat (BEZ, PRS etc)
|
||||
Context:
|
||||
Requires: WEB_PRSSYS autorisatie
|
||||
Note:
|
||||
|
||||
*/ %>
|
||||
|
||||
<!-- #include file="../Shared/common.inc" -->
|
||||
<!-- #include file="../Shared/resultset_table_v2.inc" -->
|
||||
<!-- #include file="../Shared/json2.js" -->
|
||||
<!-- #include file="fac.inc" -->
|
||||
|
||||
<%
|
||||
var showall = getQParamInt("showall", 0) == 1;
|
||||
var outputmode = getQParamInt("outputmode", 0);
|
||||
|
||||
var startdatum = new Date(1); // Periode van (Startdatum is dan 1970. Bij doorgeven verwacht getFParamDate "startdatum > 0", daarom 1)
|
||||
var einddatum = getQParamDate("einddatum"); // Perdiode tot
|
||||
|
||||
var autfunction = "WEB_PRSSYS";
|
||||
var authparams = user.checkAutorisation(autfunction);
|
||||
|
||||
FCLTHeader.Requires({ plugins: ["jQuery"] })
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<% FCLTHeader.Generate({outputmode: outputmode}) %>
|
||||
</head>
|
||||
|
||||
<body id="listbody">
|
||||
|
||||
<script type="text/javascript">
|
||||
function mld_anonymize(rowArray, isMulti)
|
||||
{
|
||||
var pmoduleString = getKeyString(rowArray);
|
||||
|
||||
FcltMgr.confirm(L("lcl_shared_doaction1").format(L("mgt_kenmerk_systeem_ano")),
|
||||
{ autoconfirm: isMulti },
|
||||
function() {
|
||||
var data = { moduleString: pmoduleString,
|
||||
startdatum: <%= startdatum.getTime() %>,
|
||||
einddatum: <%= einddatum.getTime() %> };
|
||||
protectRequest.dataToken(data);
|
||||
$.post("../fac/fac_anonymize.asp",
|
||||
data,
|
||||
FcltCallbackRefresh,
|
||||
"json");
|
||||
}
|
||||
);
|
||||
}
|
||||
</script>
|
||||
<%
|
||||
var sql;
|
||||
var sqln = [];
|
||||
|
||||
// Tijdelijk uitschakelen van het anonimiseren van BES i.v.m. trage onderstaande query die ook in de ANO package wordt gebruikt.
|
||||
//sql = "SELECT 'BES' module"
|
||||
// + " , " + safe.quoted_sql(L("lcl_bes_bestellingen")) + " onderdeel"
|
||||
// + " , COUNT(b.bes_bestelling_key) aantal"
|
||||
// + " FROM bes_bestelling b"
|
||||
// + " WHERE (SELECT MAX(ft.fac_tracking_datum)"
|
||||
// + " FROM fac_tracking ft"
|
||||
// + " WHERE ft.fac_tracking_refkey = b.bes_bestelling_key"
|
||||
// + " AND ft.fac_srtnotificatie_key IN (SELECT fac_srtnotificatie_key"
|
||||
// + " FROM fac_srtnotificatie"
|
||||
// + " WHERE fac_srtnotificatie_xmlnode = 'bestelling'"
|
||||
// + " AND fac_srtnotificatie_code != 'BESANO')) BETWEEN " + startdatum.beginToSQL() + " AND " + einddatum.endToSQL()
|
||||
// + " AND b.bes_bestelling_status IN (1, 6, 7, 8)"
|
||||
// + " AND NOT EXISTS (SELECT ft.fac_tracking_key"
|
||||
// + " FROM fac_tracking ft"
|
||||
// + " WHERE ft.fac_tracking_refkey = b.bes_bestelling_key"
|
||||
// + " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
// + " FROM fac_srtnotificatie"
|
||||
// + " WHERE fac_srtnotificatie_code = 'BESANO'))";
|
||||
//sqln.push(sql);
|
||||
|
||||
sql = "SELECT 'BEZ' module"
|
||||
+ " , " + safe.quoted_sql(L("lcl_bez_appointments")) + " onderdeel"
|
||||
+ " , COUNT(bez_afspraak_key) aantal"
|
||||
+ " FROM bez_afspraak"
|
||||
+ " WHERE bez_afspraak_datum BETWEEN " + startdatum.beginToSQL() + " AND " + einddatum.endToSQL()
|
||||
+ " AND NOT EXISTS"
|
||||
+ " (SELECT ft.fac_tracking_key"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_tracking_refkey = bez_afspraak_key"
|
||||
+ " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = 'BEZANO'))";
|
||||
sqln.push(sql);
|
||||
|
||||
// Tijdelijk uitschakelen van het anonimiseren van MLD i.v.m. trage onderstaande query die ook in de ANO package wordt gebruikt.
|
||||
//sql = "SELECT 'MLD' module"
|
||||
// + " , " + safe.quoted_sql(L("lcl_mld_meldingen")) + " onderdeel"
|
||||
// + " , COUNT(m.mld_melding_key) aantal"
|
||||
// + " FROM mld_melding m"
|
||||
// + " WHERE (SELECT MAX(ft.fac_tracking_datum)"
|
||||
// + " FROM fac_tracking ft"
|
||||
// + " WHERE ft.fac_tracking_refkey = m.mld_melding_key"
|
||||
// + " AND ft.fac_srtnotificatie_key IN (SELECT fac_srtnotificatie_key"
|
||||
// + " FROM fac_srtnotificatie"
|
||||
// + " WHERE fac_srtnotificatie_xmlnode = 'melding'"
|
||||
// + " AND fac_srtnotificatie_code != 'MLDANO')) BETWEEN " + startdatum.beginToSQL() + " AND " + einddatum.endToSQL()
|
||||
// + " AND m.mld_melding_status IN (1, 6)"
|
||||
// + " AND NOT EXISTS (SELECT ft.fac_tracking_key"
|
||||
// + " FROM fac_tracking ft"
|
||||
// + " WHERE ft.fac_tracking_refkey = m.mld_melding_key"
|
||||
// + " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
// + " FROM fac_srtnotificatie"
|
||||
// + " WHERE fac_srtnotificatie_code = 'MLDANO'))";
|
||||
//sqln.push(sql);
|
||||
|
||||
sql = "SELECT 'PRS' module"
|
||||
+ " , " + safe.quoted_sql(L("lcl_prs_persons")) + " onderdeel"
|
||||
+ " , COUNT(p.prs_perslid_key) aantal"
|
||||
+ " FROM prs_perslid p"
|
||||
+ " WHERE p.prs_perslid_verwijder IS NOT NULL"
|
||||
+ " AND p.prs_perslid_verwijder BETWEEN " + startdatum.beginToSQL() + " AND " + einddatum.endToSQL()
|
||||
+ " AND NOT EXISTS (SELECT ft.fac_tracking_key"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_tracking_refkey = p.prs_perslid_key"
|
||||
+ " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = 'PRSANO'))";
|
||||
sqln.push(sql);
|
||||
|
||||
var currentWeekDay = new Date().getDay();
|
||||
var lessDays = currentWeekDay == 0 ? 6 : currentWeekDay - 1;
|
||||
var startdatumweek = new Date(new Date().getTime() - (1000 * 60 * 60 * 24 * lessDays));
|
||||
|
||||
|
||||
sql = "SELECT module"
|
||||
+ " , onderdeel"
|
||||
+ " , aantal"
|
||||
+ " , (SELECT COUNT(ft.fac_tracking_key)"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_tracking_datum BETWEEN " + startdatumweek.beginToSQL() + " AND " + new Date().endToSQL()
|
||||
+ " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = (module || 'ANO'))) anonimized_thisweek"
|
||||
+ " , (SELECT COUNT(ft.fac_tracking_key)"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = (module || 'ANO'))) anonimized_total"
|
||||
+ " FROM (" + sqln.join(" UNION ") + ")";
|
||||
|
||||
function fncolaantal(oRs)
|
||||
{
|
||||
return oRs("aantal").Value != null? oRs("aantal").Value : 0;
|
||||
}
|
||||
|
||||
var rst = new ResultsetTable({ sql: sql,
|
||||
keyColumn: "module",
|
||||
ID: "memorizetable",
|
||||
title : "Anonimiseren",
|
||||
showAll: showall,
|
||||
outputmode: outputmode
|
||||
});
|
||||
|
||||
rst.addColumn(new Column({caption: L("lcl_fac_module"), content: "module"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_fac_component"), content: "onderdeel"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_fac_toanonymize"), content: fncolaantal, datatype: "number"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_fac_anonymized"), content: "anonimized_total", datatype: "number"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_fac_thisweek"), content: "anonimized_thisweek", datatype: "number"}));
|
||||
|
||||
rst.addAction({action: "mld_anonymize", caption: L("mgt_kenmerk_systeem_ano"), multi: true, multiOnce: true});
|
||||
|
||||
var cnt = rst.processResultset();
|
||||
%>
|
||||
</body>
|
||||
</html>
|
||||
123
APPL/FAC/fac_anonymize_search.asp
Normal file
123
APPL/FAC/fac_anonymize_search.asp
Normal file
@@ -0,0 +1,123 @@
|
||||
<%@language = "javascript" %>
|
||||
<% /*
|
||||
$Revision$
|
||||
$Id$
|
||||
|
||||
File: fac_anonimize.asp
|
||||
Description: Anonimiseringscherm
|
||||
Parameters:
|
||||
Context: Via URL (alleen prssys)
|
||||
Note:
|
||||
|
||||
*/ %>
|
||||
<!-- #include file="../Shared/common.inc" -->
|
||||
<!-- #include file="../Shared/iface.inc" -->
|
||||
<!-- #include file="../Shared/calendar.inc" -->
|
||||
<!-- #include file="../Shared/selector.inc" -->
|
||||
<%
|
||||
FCLTHeader.Requires({plugins:["jQuery"], js: []});
|
||||
|
||||
var autfunction = "WEB_PRSSYS";
|
||||
var authparams = user.checkAutorisation(autfunction);
|
||||
var module = getQParam("module", "");
|
||||
var anonymize_period = S("anonymize_period");
|
||||
%>
|
||||
<html>
|
||||
<head>
|
||||
<%
|
||||
FCLTHeader.Generate() %>
|
||||
|
||||
<script type="text/javascript">
|
||||
var anysearch = false;
|
||||
function doSubmit()
|
||||
{
|
||||
if (!validateForm("u2"))
|
||||
return false;
|
||||
|
||||
document.forms.u2.submit();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body id="searchbody">
|
||||
|
||||
<div id="search">
|
||||
<form name="u2" method="get" action="fac_anonymize_list.asp" target="workFrame">
|
||||
<%
|
||||
BLOCK_START("searchtable", L("lcl_filterblok"));
|
||||
%>
|
||||
<tr>
|
||||
<td class="searchkolom1">
|
||||
<table><!-- x rijen, 2 kolommen: label + veld -->
|
||||
<!-- module -->
|
||||
<%
|
||||
// Startdatum bepalen door van de nog niet geanonimiseerde personen, de persoon te nemen met de laagste verwijder datum.
|
||||
sql = "SELECT MIN(sd.startdatum) minstartdatum"
|
||||
+ " FROM (SELECT CASE"
|
||||
+ " WHEN MIN(bez_afspraak_datum) > TO_DATE('01-01-2000 00:00', 'DD-MM-YYYY HH24:MI')"
|
||||
+ " THEN MIN(bez_afspraak_datum)"
|
||||
+ " ELSE TO_DATE('01-01-2000 00:00', 'DD-MM-YYYY HH24:MI')"
|
||||
+ " END startdatum"
|
||||
+ " FROM bez_afspraak"
|
||||
+ " WHERE bez_afspraak_datum < TRUNC(SYSDATE - " + anonymize_period + ")"
|
||||
+ " AND NOT EXISTS"
|
||||
+ " (SELECT ft.fac_tracking_key"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_tracking_refkey = bez_afspraak_key"
|
||||
+ " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = 'BEZANO'))"
|
||||
+ " UNION"
|
||||
+ " SELECT CASE"
|
||||
+ " WHEN MIN(p.prs_perslid_verwijder) > TO_DATE('01-01-2000 00:00', 'DD-MM-YYYY HH24:MI')"
|
||||
+ " THEN MIN(p.prs_perslid_verwijder)"
|
||||
+ " ELSE TO_DATE('01-01-2000 00:00', 'DD-MM-YYYY HH24:MI')"
|
||||
+ " END startdatum"
|
||||
+ " FROM prs_perslid p"
|
||||
+ " WHERE p.prs_perslid_verwijder IS NOT NULL"
|
||||
+ " AND p.prs_perslid_verwijder < SYSDATE - " + anonymize_period
|
||||
+ " AND NOT EXISTS"
|
||||
+ " (SELECT ft.fac_tracking_key"
|
||||
+ " FROM fac_tracking ft"
|
||||
+ " WHERE ft.fac_tracking_refkey = p.prs_perslid_key"
|
||||
+ " AND ft.fac_srtnotificatie_key = (SELECT fac_srtnotificatie_key"
|
||||
+ " FROM fac_srtnotificatie"
|
||||
+ " WHERE fac_srtnotificatie_code = 'PRSANO'))"
|
||||
+ " ) sd"
|
||||
oRs = Oracle.Execute(sql);
|
||||
var startdatum = new Date(oRs("minstartdatum").Value);
|
||||
var einddatum = new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate() - anonymize_period);
|
||||
|
||||
// <!-- Datum tot -->
|
||||
FCLTcalendar("einddatum",
|
||||
{ label: L("lcl_period_to"),
|
||||
datum: einddatum,
|
||||
maxDate: einddatum,
|
||||
trclass: "primsearch",
|
||||
required: true,
|
||||
volgnr: 2,
|
||||
opmerk: L("lcl_fac_atleast_anoperiod").format(anonymize_period)
|
||||
});
|
||||
%>
|
||||
</table>
|
||||
</td>
|
||||
<!-- Second column -->
|
||||
<td>
|
||||
<div id="anointotext1"><%=L("lcl_fac_ano_intotext1")%></div>
|
||||
<div id="anointotext2"><%=L("lcl_fac_ano_intotext2")%></div>
|
||||
</td>
|
||||
</tr>
|
||||
<% BLOCK_END();
|
||||
var buttons = [ {title: L("lcl_search"), action: "doSubmit()" } ];
|
||||
CreateButtons(buttons, { entersubmit: true});
|
||||
%>
|
||||
</form>
|
||||
</div> <!-- search -->
|
||||
|
||||
<div id="result">
|
||||
<iframe width="100%" height="100%" src="../Shared/empty.asp"
|
||||
name="workFrame" id="workFrame" onload='FcltMgr.iframeLoaded(this)'
|
||||
frameborder="0" scrolling="no"></iframe>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -106,6 +106,18 @@ if (tobeapproved > 0)
|
||||
}
|
||||
}
|
||||
oRs = Oracle.Execute(sql);
|
||||
|
||||
var pResult = new HookResult();
|
||||
|
||||
for (f = 0 ; f < ingesloten.length; f++)
|
||||
{
|
||||
// Klantspecifieke check functie (hookfunction) voor de invoer
|
||||
if (!custfunc.fin_postsave(ingesloten[f].factuur_key, pResult))
|
||||
{
|
||||
abort_with_warning(pResult.errmsg);
|
||||
}
|
||||
}
|
||||
|
||||
result.success = true;
|
||||
}
|
||||
|
||||
|
||||
@@ -305,6 +305,13 @@ if (!isNew) // update nog tracken
|
||||
// Autofiatteer de factuur als dat zo ingesteld is
|
||||
sql = "BEGIN fin.autoapprovefactuur(" + fin_key + "); END;";
|
||||
Oracle.Execute(sql);
|
||||
|
||||
// Klantspecifieke check functie (hookfunction) voor de invoer
|
||||
var pResult = new HookResult();
|
||||
if (!custfunc.fin_postsave(fin_key, pResult))
|
||||
{
|
||||
abort_with_warning(pResult.errmsg);
|
||||
}
|
||||
%>
|
||||
|
||||
<html>
|
||||
|
||||
@@ -89,6 +89,17 @@ if (tobevalidated > 0)
|
||||
}
|
||||
}
|
||||
oRs = Oracle.Execute(sql);
|
||||
|
||||
var pResult = new HookResult();
|
||||
for (f = 0 ; f < ingesloten.length; f++)
|
||||
{
|
||||
// Klantspecifieke check functie (hookfunction) voor de invoer
|
||||
if (!custfunc.fin_postsave(ingesloten[f], pResult))
|
||||
{
|
||||
abort_with_warning(pResult.errmsg);
|
||||
}
|
||||
}
|
||||
|
||||
result.success = true;
|
||||
}
|
||||
|
||||
|
||||
@@ -98,7 +98,7 @@ for (var cid in xd.SecundaryDomains) {
|
||||
if (sumbelow) url += "&end_total="+safe.url(sumbelow);
|
||||
if (fin_bron_key!=-1) url += "&invoicesource="+safe.url(fin_bron_key);
|
||||
if (fin_type!=-1) url += "&referencetype="+safe.url(fin_type);
|
||||
if (goedkeurdertekst) url += "&goedkeur=~" + safe.url(goedkeurdertekst);
|
||||
if (goedkeurdertekst) url += "&validater=~" + safe.url(goedkeurdertekst);
|
||||
// if (fin_actual) url += ??
|
||||
// if (fin_deleted) url += ??
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@ var ICONS = {
|
||||
"camera.png" : "fa-camera",
|
||||
"cancel.png" : "fa-times",
|
||||
"cartx2.png" : "fa-cart-plus",
|
||||
"clone.png" : "fa-clone",
|
||||
"close.png" : "fa-flag-checkered",
|
||||
"cnt_inactive.png" : "fa-lock",
|
||||
"contract.png" : "fa-book",
|
||||
|
||||
@@ -1265,13 +1265,14 @@ ins = {checkAutLevel:
|
||||
: (inspSoon || (!inspSoon && !inspBusy && !inspClosed)
|
||||
? " SELECT 1 rn" // inspecties die nog nooit zijn uitgevoerd/ingepland. Er is nog geen ins_deelsrtcontrole regel aanwezig en dus ook geen plandatum/respijtdatum.
|
||||
+ " , di.ins_deel_key"
|
||||
+ " , fac.nextcyclusdate(di.ins_deel_aanmaak"
|
||||
+ " , di.ins_srtcontrole_mode"
|
||||
+ " , di.ins_srtcontrole_eenheid"
|
||||
+ " , di.ins_srtcontrole_periode"
|
||||
+ " , di.ins_srtcontrole_bits"
|
||||
+ " , 1"
|
||||
+ " , di.ctr_ismjob) inspectie_next"
|
||||
+ " , COALESCE(di.ins_srtcontroledl_xcp_startdat"
|
||||
+ " , fac.nextcyclusdate(di.ins_deel_aanmaak"
|
||||
+ " , di.ins_srtcontrole_mode"
|
||||
+ " , di.ins_srtcontrole_eenheid"
|
||||
+ " , di.ins_srtcontrole_periode"
|
||||
+ " , di.ins_srtcontrole_bits"
|
||||
+ " , 1"
|
||||
+ " , di.ctr_ismjob)) inspectie_next"
|
||||
+ " , di.ins_srtcontroledl_xcp_startdat"
|
||||
+ " , CASE WHEN " + lastinspect + " IS NULL THEN 1 ELSE 0 END nonext"
|
||||
+ " , di.ins_srtcontrole_eenheid inspectie_eenheid"
|
||||
@@ -1318,13 +1319,14 @@ ins = {checkAutLevel:
|
||||
+ " , di.ins_deel_key"
|
||||
+ " , CASE"
|
||||
+ " WHEN " + lastinspect + " IS NULL" // Inspectie die voor het eerst is ingepland(0) of gestart(2) maar nog geen uitgevoerde/afgemelde(6) inspectie heeft.
|
||||
+ " THEN fac.nextcyclusdate(di.ins_deel_aanmaak" // Dan registratiedatum + planning
|
||||
+ " , di.ins_srtcontrole_mode"
|
||||
+ " , di.ins_srtcontrole_eenheid"
|
||||
+ " , di.ins_srtcontrole_periode"
|
||||
+ " , di.ins_srtcontrole_bits"
|
||||
+ " , 1"
|
||||
+ " , di.ctr_ismjob) "
|
||||
+ " THEN COALESCE(di.ins_srtcontroledl_xcp_startdat"
|
||||
+ " , fac.nextcyclusdate(di.ins_deel_aanmaak" // Dan registratiedatum + planning
|
||||
+ " , di.ins_srtcontrole_mode"
|
||||
+ " , di.ins_srtcontrole_eenheid"
|
||||
+ " , di.ins_srtcontrole_periode"
|
||||
+ " , di.ins_srtcontrole_bits"
|
||||
+ " , 1"
|
||||
+ " , di.ctr_ismjob))"
|
||||
+ " WHEN idsc.ins_deelsrtcontrole_status IN (0, 2)"
|
||||
+ " THEN ins_deelsrtcontrole_datum_org" // In status 0 en 2 wordt de volgende inspectie in ins_deelsrtcontrole_datum_org direct opgeslagen.
|
||||
+ " ELSE"
|
||||
@@ -3350,7 +3352,7 @@ ins = {checkAutLevel:
|
||||
|
||||
// Bulkactie accorderen (freeze) of voltooien/afronden (finish).
|
||||
// Ik moet nog de juiste insert waarden ophalen voor alle objecten die de sql oplevert.
|
||||
if (niveau >= 1 && niveau <= 6 && (freeze || finish))
|
||||
if (niveau >= 1 && niveau <= 7 && (freeze || finish))
|
||||
{ // Accorderen (Freeze) of Voltooien/Afronden (Finish).
|
||||
if (freeze)
|
||||
{
|
||||
|
||||
@@ -61,7 +61,7 @@ if (freeze && groupby < 8)
|
||||
var mjbXcped = getFParamInt("mjbXcped", 0) == 1; // Aangepast.
|
||||
|
||||
// Start building the query to fetch all objects satisfying
|
||||
var mjbparams = { niveau: groupby, // Het niveau (betekenis) van de keys (district(1), gebouw(2), discipline(3), groep(4), objectsoort(5), object(6))
|
||||
var mjbparams = { niveau: groupby, // Het niveau (betekenis) van de keys (district(1), locatie(2), gebouw(3), discipline(4), groep(5), objectsoort(6), object(7))
|
||||
keys: ins_key_arr,
|
||||
scenario: 1,
|
||||
fulldetails: true,
|
||||
|
||||
@@ -51,7 +51,8 @@ if (S("bgt_enabled"))
|
||||
"columns": [
|
||||
"costtypegroup",
|
||||
"name",
|
||||
"altcode"
|
||||
"altcode",
|
||||
"vat"
|
||||
]
|
||||
};
|
||||
model_params.edit = {
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
Description: Kies een stdmelding voor een nieuwe melding
|
||||
Parameters: // impliciet mld_key=-1 voor nieuwe melding
|
||||
// stdm_key bepalen we hier. Als je die hebt spring je maar rechtstreeks naar melding.asp
|
||||
stdm_keys lijst met komma gescheiden stdmelding keys
|
||||
ins_key
|
||||
ruimte_key
|
||||
-
|
||||
@@ -31,6 +32,7 @@ var mld_key = getQParamInt("mld_key", -1); // -1 betekent nieuwe
|
||||
var qrc = getQParamInt("qrc", 0) != 0;
|
||||
var action = getQParam("action", "");
|
||||
var urole = getQParamSafe("urole", "");
|
||||
var stdm_keys = getQParamIntArray("stdm_keys", []);
|
||||
|
||||
if (urole == "")
|
||||
{
|
||||
@@ -149,6 +151,7 @@ if (srtdisc_key > 0)
|
||||
|
||||
var filt_params = { disc_key: disc_key
|
||||
, srtdisc_key: srtdisc_key
|
||||
, stdmelding_keys: stdm_keys
|
||||
, ins_key: ins_key
|
||||
, loc_key: user.alg_locatie_key({withcurrent:true})
|
||||
, bld_key: user.alg_gebouw_key({withcurrent:true})
|
||||
|
||||
@@ -51,6 +51,14 @@ if (typeof DOCTYPE_Disable == "undefined")
|
||||
<!-- #include file="locale.inc" -->
|
||||
<!-- #include file="hookfunctions.inc" -->
|
||||
<!-- #include file="shared.inc" -->
|
||||
<%
|
||||
// Nu hebben we customerId. Wel doen voor m_connections.inc
|
||||
// zodat we tijdens database migratie ook offline kunnen zetten
|
||||
if (Request.QueryString("forceonline").Count > 0)
|
||||
Session("forceonline") = true;
|
||||
tryOffline(rooturl + "/cust/");
|
||||
tryOffline(custpath + "/"); // deze is sterker
|
||||
%>
|
||||
<!-- #include file="logger.inc" -->
|
||||
<!-- #include file="m_connections.inc" -->
|
||||
<!-- #include file="putorders.inc" -->
|
||||
@@ -185,11 +193,6 @@ function tryOffline(path)
|
||||
}
|
||||
}
|
||||
|
||||
if (Request.QueryString("forceonline").Count > 0)
|
||||
Session("forceonline") = true;
|
||||
tryOffline(rooturl + "/cust/");
|
||||
tryOffline(custpath + "/"); // deze is sterker
|
||||
|
||||
// ip-restrictie controle
|
||||
var ips = S("sys_ip_restrict");
|
||||
if (ips)
|
||||
|
||||
@@ -118,7 +118,8 @@ var shared = {
|
||||
{
|
||||
Response.Clear();
|
||||
Response.Write("<html class='simpel_page'><head>");
|
||||
FCLTHeader.Generate();
|
||||
if (typeof FCLTHeader != "undefined")
|
||||
FCLTHeader.Generate();
|
||||
Response.Write("</head>");
|
||||
shared.simpel_body(bodyhtml);
|
||||
}
|
||||
@@ -1881,6 +1882,8 @@ IP =
|
||||
bits = parseInt(subnet.split("/")[1], 10);
|
||||
subnet = subnet.split("/")[0];
|
||||
}
|
||||
if (bits == 0) // extra omdat IPmask(0) een overflow geeft
|
||||
return true;
|
||||
var mask = IP.IPmask(bits);
|
||||
var long_subnet = IP.IPnumber(subnet);
|
||||
|
||||
|
||||
@@ -38,6 +38,8 @@ function getFiltClauseDiscipline(pfiltcode, params)
|
||||
if (params.module == "MLD") lfiltClause.from = ", mld_stdmelding sm";
|
||||
lfiltClause.where = " AND td.ins_discipline_module = 'MLD'"
|
||||
// Standaard alleen vakgroepen tonen met stdmeldingen.
|
||||
+ (params.stdmelding_keys && params.stdmelding_keys.length
|
||||
? " AND sm.mld_stdmelding_key IN (" + params.stdmelding_keys.join(",") + ")":"")
|
||||
+ (params.module == "MLD"
|
||||
? " AND td.ins_discipline_key = sm.mld_ins_discipline_key"
|
||||
+ " AND sm.mld_stdmelding_verwijder IS NULL"
|
||||
|
||||
@@ -46,8 +46,11 @@ function getFiltClauseStdmelding(pfiltcode, params, init)
|
||||
{
|
||||
lfiltClause.where += " AND sm.mld_stdmelding_key = " + params.stdmelding_key
|
||||
}
|
||||
else
|
||||
if (params.disc_key && params.disc_key != -1) // parent gegeven
|
||||
else if (params.stdmelding_keys && params.stdmelding_keys.length)
|
||||
{
|
||||
lfiltClause.where += " AND sm.mld_stdmelding_key IN (" + params.stdmelding_keys.join(",") + ")"
|
||||
}
|
||||
else if (params.disc_key && params.disc_key != -1) // parent gegeven
|
||||
{
|
||||
lfiltClause.where += " AND di.ins_discipline_key = " + params.disc_key;
|
||||
}
|
||||
|
||||
@@ -126,6 +126,10 @@ function FCLTcalendar (fieldID, params)
|
||||
|
||||
if (params.label)
|
||||
{
|
||||
if (params.opmerk)
|
||||
{ %>
|
||||
<%=safe.html(params.opmerk)%>
|
||||
<% }
|
||||
if (params.mobile)
|
||||
{ %>
|
||||
</div>
|
||||
|
||||
@@ -3084,6 +3084,22 @@ div#lcldialect .label
|
||||
width: auto;
|
||||
}
|
||||
|
||||
div#anointotext1 {
|
||||
font-size: 2em;
|
||||
color: #ff5050;
|
||||
margin: 4px;
|
||||
padding: 5px 1px 5px 1px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
div#anointotext2 {
|
||||
font-size: 1.5em;
|
||||
color: #000000;
|
||||
margin: 4px;
|
||||
padding: 5px 1px 5px 1px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#itemfilter
|
||||
{
|
||||
width: 218px;
|
||||
|
||||
@@ -283,6 +283,24 @@ custfunc.mld_postsave =
|
||||
return result;
|
||||
};
|
||||
|
||||
custfunc.fin_postsave =
|
||||
function (fin_factuur, presult)
|
||||
{
|
||||
var result = true;
|
||||
var hook = custfunc.gethook();
|
||||
|
||||
if (hook)
|
||||
{
|
||||
__DoLog('before in hook');
|
||||
if ('fin_postsave' in hook) {
|
||||
__DoLog('in hook');
|
||||
result = hook.fin_postsave(fin_factuur, presult);
|
||||
}
|
||||
hook = null; // zorg dat de GC het object kan opruimen.
|
||||
}
|
||||
return result;
|
||||
};
|
||||
|
||||
// Called for API_PHONEBOOK
|
||||
custfunc.API_PHONEBOOK =
|
||||
function (prs_key, data)
|
||||
|
||||
@@ -133,6 +133,7 @@ var status = {
|
||||
case "MLDAFR" : tekst = L("lcl_mld_is_mldafr") ; break;
|
||||
case "MLDVER" : tekst = L("lcl_mld_is_mldver") ; break;
|
||||
case "MLDNOT" : tekst = L("lcl_mld_is_mldnot") ; break;
|
||||
case "MLDANO" : tekst = L("lcl_fac_is_ano") ; break;
|
||||
|
||||
case "RESNEW" : tekst = L("lcl_res_is_resnew") ; break;
|
||||
case "RESOPT" : tekst = L("lcl_res_is_resopt") ; break;
|
||||
@@ -168,6 +169,7 @@ var status = {
|
||||
case "ORDAFR" : tekst = L("lcl_ord_is_ordafr") ; break;
|
||||
case "ORDGOE" : tekst = L("lcl_ord_is_ordgoe") ; break;
|
||||
case "ORDGNO" : tekst = L("lcl_ord_is_ordgno") ; break;
|
||||
case "ORDANO" : tekst = L("lcl_fac_is_ano") ; break;
|
||||
case "ORDOOK" : tekst = L("lcl_ord_is_ordook") ; break;
|
||||
case "ORDONO" : tekst = L("lcl_ord_is_ordono") ; break;
|
||||
|
||||
@@ -177,6 +179,7 @@ var status = {
|
||||
case "BEZDON" : tekst = L("lcl_bez_is_bezdon") ; break;
|
||||
case "BEZOUT" : tekst = L("lcl_bez_is_bezout") ; break;
|
||||
case "BEZBAD" : tekst = L("lcl_bez_is_bezbad") ; break;
|
||||
case "BEZANO" : tekst = L("lcl_fac_is_ano") ; break;
|
||||
|
||||
case "BESNEW" : tekst = L("lcl_bes_is_besnew") ; break;
|
||||
case "BESACP" : tekst = L("lcl_bes_is_besacp") ; break;
|
||||
@@ -190,6 +193,7 @@ var status = {
|
||||
case "BESUPD" : tekst = L("lcl_bes_is_besupd") ; break;
|
||||
case "BESVER" : tekst = L("lcl_bes_is_besver") ; break;
|
||||
case "BESCAN" : tekst = L("lcl_bes_is_bescan") ; break;
|
||||
case "BESANO" : tekst = L("lcl_fac_is_ano") ; break;
|
||||
|
||||
case "BES2NE" : tekst = L("lcl_bes_is_bes2ne") ; break;
|
||||
case "BES2AF" : tekst = L("lcl_bes_is_bes2af") ; break;
|
||||
@@ -201,6 +205,7 @@ var status = {
|
||||
case "BES2CA" : tekst = L("lcl_bes_is_bes2ca") ; break;
|
||||
case "BES2CO" : tekst = L("lcl_bes_is_bes2co") ; break;
|
||||
case "BES2UP" : tekst = L("lcl_bes_is_bes2up") ; break;
|
||||
case "BES2AN" : tekst = L("lcl_fac_is_ano") ; break;
|
||||
|
||||
case "INSNEW" : tekst = L("lcl_ins_is_insnew") ; break;
|
||||
case "INSUPD" : tekst = L("lcl_ins_is_insupd") ; break;
|
||||
@@ -239,6 +244,7 @@ var status = {
|
||||
case "PRSDEL" : tekst = L("lcl_prs_is_prsdel") ; break;
|
||||
case "PRSKPU" : tekst = L("lcl_prs_is_prskpu") ; break;
|
||||
case "PRSLOG" : tekst = L("lcl_prs_is_prslog") ; break;
|
||||
case "PRSANO" : tekst = L("lcl_fac_is_ano") ; break;
|
||||
|
||||
case "ALGCAD" : tekst = L("lcl_alg_is_algcad") ; break;
|
||||
case "ALGRNE" : tekst = L("lcl_alg_is_algrne") ; break;
|
||||
|
||||
0
CUST/ARAI/export/PDF/Backup/.gitignore
vendored
Normal file
0
CUST/ARAI/export/PDF/Backup/.gitignore
vendored
Normal file
3
CUST/ARAI/export/PDF/genereer1_dagrap.bat
Normal file
3
CUST/ARAI/export/PDF/genereer1_dagrap.bat
Normal file
@@ -0,0 +1,3 @@
|
||||
::Met api user voor printen to pdf van de dagrapportage'
|
||||
For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
|
||||
phantomjs --ssl-protocol=tlsv1 rasterize.js "https://arai.facilitor.nl/?u=Zz3GJIal25-amS_1&APIKEY=J54aY3UadfeI203K30BXV4632J" Dagrapportage%mydate%.pdf A4
|
||||
BIN
CUST/ARAI/export/PDF/phantomjs.exe
Normal file
BIN
CUST/ARAI/export/PDF/phantomjs.exe
Normal file
Binary file not shown.
32
CUST/ARAI/export/PDF/rasterize.js
Normal file
32
CUST/ARAI/export/PDF/rasterize.js
Normal file
@@ -0,0 +1,32 @@
|
||||
var page = require('webpage').create(),
|
||||
system = require('system'),
|
||||
address, output, size;
|
||||
|
||||
if (system.args.length < 3 || system.args.length > 5) {
|
||||
console.log('Usage: rasterize.js URL filename [paperwidth*paperheight|paperformat] [zoom]');
|
||||
console.log(' paper (pdf output) examples: "5in*7.5in", "10cm*20cm", "A4", "Letter"');
|
||||
phantom.exit(1);
|
||||
} else {
|
||||
address = system.args[1];
|
||||
output = system.args[2];
|
||||
page.viewportSize = { width: 600, height: 600 };
|
||||
if (system.args.length > 3 && system.args[2].substr(-4) === ".pdf") {
|
||||
size = system.args[3].split('*');
|
||||
page.paperSize = size.length === 2 ? { width: size[0], height: size[1], margin: '0px' }
|
||||
: { format: system.args[3], orientation: 'landscape', margin: '1cm' };
|
||||
}
|
||||
if (system.args.length > 4) {
|
||||
page.zoomFactor = system.args[4];
|
||||
}
|
||||
page.open(address, function (status) {
|
||||
if (status !== 'success') {
|
||||
console.log('Unable to load the address!');
|
||||
phantom.exit();
|
||||
} else {
|
||||
window.setTimeout(function () {
|
||||
page.render(output);
|
||||
phantom.exit();
|
||||
}, 2000);
|
||||
}
|
||||
});
|
||||
}
|
||||
31
CUST/ARAI/export/genereer_dagrapportage.bat
Normal file
31
CUST/ARAI/export/genereer_dagrapportage.bat
Normal file
@@ -0,0 +1,31 @@
|
||||
REM GEN_EXPORT_DAGRAPPORTAGE
|
||||
REM
|
||||
REM ARAI
|
||||
REM
|
||||
REM Exporteert de dagrapportage als PDF.
|
||||
REM Het aangemaakte PDF-bestand wordt gemaild naar de afgesproken persoon.
|
||||
REM
|
||||
REM Context : roep deze file aan indien nodig, of schedule deze
|
||||
REM Vereist : de randvoorwaarde voor het gebruik van gen_export
|
||||
REM
|
||||
REM $Revision$
|
||||
REM $Id$
|
||||
REM
|
||||
REM (c) 2015 Facilitor B.V.
|
||||
REM
|
||||
|
||||
REM ================================================== cleanup
|
||||
copy .\PDF\*.pdf .\PDF\Backup
|
||||
del .\PDF\*.pdf
|
||||
|
||||
REM ================================================== create pdf
|
||||
cd PDF
|
||||
|
||||
CALL genereer1_dagrap.bat
|
||||
|
||||
cd ..
|
||||
|
||||
REM ================================================== mail
|
||||
if not exist ".\PDF\*.pdf" goto einde
|
||||
cscript sendmail.vbs
|
||||
:einde
|
||||
18
CUST/ARAI/export/sendmail.vbs
Normal file
18
CUST/ARAI/export/sendmail.vbs
Normal file
@@ -0,0 +1,18 @@
|
||||
Dim fso, folder, files
|
||||
Set fso = CreateObject("Scripting.FileSystemObject")
|
||||
|
||||
Set folder = fso.GetFolder("d:\Apps\Facilitor\Fplace5i\CUST\ARAI\export\PDF")
|
||||
Set files = folder.Files
|
||||
For each folderIdx In files
|
||||
If InStrRev(folderIdx.Name, ".pdf") > 0 Then
|
||||
Set objEmail = CreateObject("CDO.Message")
|
||||
objEmail.From = "no_reply@rai.facilitor.nl"
|
||||
objEmail.To = "r.stoker@facilitor.nl;c.overmars@rai.nl"
|
||||
objEmail.Subject = "Facilitor: Dagrapportage"
|
||||
objEmail.Textbody = "Deze email is automatisch verzonden en bevat een PDF van de laatste dagrapportage."
|
||||
objEmail.AddAttachment "d:\Apps\Facilitor\Fplace5i\CUST\ARAI\export\PDF\" + folderIdx.Name
|
||||
objEmail.Send
|
||||
End If
|
||||
Next
|
||||
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<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:template match="melding" mode="full">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$srtnotificatiecode = 'CUST02'"><xsl:apply-templates select="." mode="mld_sms"/></xsl:when>
|
||||
@@ -1107,7 +1105,6 @@ Amsterdam RAI
|
||||
<xsl:comment>---- Overige RAPPORTEN ---- </xsl:comment>
|
||||
<xsl:comment>---- Overige RAPPORTEN ---- </xsl:comment>
|
||||
|
||||
|
||||
<xsl:if test="@view = 'arai_v_rap_temp_per_ruimte'">
|
||||
<table border="0" width="100%" cellpadding="2">
|
||||
<tr>
|
||||
|
||||
@@ -139,6 +139,380 @@
|
||||
</style>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="prijsEx">
|
||||
<xsl:param name="prijsInc" select="0"/>
|
||||
<xsl:param name="btw" select="0"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$prijsInc='NaN'">0</xsl:when>
|
||||
<xsl:when test="$btw!='NaN' and //res_artikel/btw!=''"><xsl:value-of select="$prijsInc * ((100 + $btw) div 100 )"/></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$prijsInc"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="sumProducts">
|
||||
<xsl:param name="pList"/>
|
||||
<xsl:param name="pResult" select="0"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$pList">
|
||||
<xsl:variable name="vHead" select="$pList[1]"/>
|
||||
<xsl:variable name="vPrice">
|
||||
<xsl:call-template name="prijsEx">
|
||||
<xsl:with-param name="prijsInc" select="$vHead/prijs"/>
|
||||
<xsl:with-param name="btw" select="$vHead/res_artikel/btw"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
<xsl:call-template name="sumProducts">
|
||||
<xsl:with-param name="pList" select="$pList[position()>1]"/>
|
||||
<xsl:with-param name="pResult" select="$pResult + $vPrice"/>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$pResult"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="reservering" mode="include">
|
||||
<!--style>.pagebreak {page-break-after:always;}</style-->
|
||||
<table border="0" width="100%" style="border-collapse:collapse;" cellpadding="2" cellspacing="0">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$srtnotificatiecode='RESDEL' and verwijder">
|
||||
<tr><td height="20px"/></tr>
|
||||
<tr><td style="font-size:14pt;color:red;padding-top:20px;padding-bottom:20px;"><xsl:value-of select="//lcl/RES/annulering"/></td></tr>
|
||||
</xsl:when>
|
||||
<xsl:otherwise/>
|
||||
</xsl:choose>
|
||||
<!-- Bevestiging reservering -->
|
||||
<!-- Ook tonen voor verwijderde reserveringen -->
|
||||
<!-- De algemene gegevens van de deelreservering met het laagste volgnummer worden gebruikt als referentie gegevens! -->
|
||||
<xsl:variable name="min_volgnr">
|
||||
<xsl:value-of select="//facilitor/reservering/rsv_ruimte/volgnr[not(.>//facilitor/reservering/rsv_ruimte/volgnr)]"/>
|
||||
</xsl:variable>
|
||||
<tr>
|
||||
<td colspan="4" style="font-size:14pt;padding-top:20px;padding-bottom:20px;">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@content='complete'"><xsl:value-of select="//lcl/RES/reservering"/> <xsl:value-of select="key"/></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="//lcl/RES/deelreservering"/> <xsl:value-of select="key"/>/<xsl:value-of select="$min_volgnr"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:if test="string(rsv_ruimte[volgnr=$min_volgnr]/omschrijving)!=''"> - <xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/omschrijving"/></xsl:if>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td colspan="4"><u><b>Contactgegevens:</b></u></td></tr>
|
||||
<tr>
|
||||
<td width="18%"><xsl:value-of select="//lcl/FAC/aanvrager"/>:</td>
|
||||
<td width="32%"><xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/naam_full"/></td>
|
||||
<td width="18%"><xsl:value-of select="//lcl/FAC/afdeling"/>:</td>
|
||||
<td><xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/afdeling/omschrijving"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><xsl:value-of select="//lcl/FAC/telefoon"/>:</td>
|
||||
<td><xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/telefoonnr"/></td>
|
||||
<xsl:if test="string(rsv_ruimte[volgnr=$min_volgnr]/contact_user/werkplek/plaats/regio/district/locatie/omschrijving)!=''">
|
||||
<td><xsl:value-of select="//lcl/FAC/locatie"/>:</td>
|
||||
<td><xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/werkplek/plaats/regio/district/locatie/omschrijving"/></td>
|
||||
</xsl:if>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><xsl:value-of select="//lcl/FAC/e-mail"/>:</td>
|
||||
<td><xsl:value-of select="rsv_ruimte[volgnr=$min_volgnr]/contact_user/email"/></td>
|
||||
</tr>
|
||||
<!--xsl:if test="rsv_ruimte[volgnr=$min_volgnr]/contact_user/key!=ingevoerd_user/key">
|
||||
<tr>
|
||||
<td><xsl:value-of select="//lcl/RES/behandeld_door"/>:</td>
|
||||
<td><xsl:value-of select="ingevoerd_user/naam_friendly"/></td>
|
||||
</tr>
|
||||
</xsl:if-->
|
||||
<xsl:if test="$srtnotificatiecode='RESDEL'">
|
||||
<tr>
|
||||
<td><xsl:value-of select="//lcl/RES/begintijd"/>:</td>
|
||||
<td><xsl:value-of select="rsv_ruimte/van/datum"/> <xsl:value-of select="rsv_ruimte/van/tijd"/></td>
|
||||
</tr>
|
||||
<tr><td colspan="4"><br/><xsl:value-of select="//lcl/RES/reservering_vervallen"/></td></tr>
|
||||
</xsl:if>
|
||||
<xsl:if test="$srtnotificatiecode!='RESDEL'">
|
||||
<tr><td height="10px"/></tr>
|
||||
<xsl:if test="substring(//locatie/omschrijving, 1, 3)='BBS'">
|
||||
<tr><td colspan="4"><br/>LET OP: Bewaar dit formulier ter controle. Het reserveringsnummer vindt u terug op de nota.</td></tr>
|
||||
<tr><td height="10px"/></tr>
|
||||
</xsl:if>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<table border="0" width="100%" style="border-collapse:collapse;" cellpadding="2" cellspacing="0">
|
||||
<!-- rsv_ruimte -->
|
||||
<xsl:for-each select="rsv_ruimte">
|
||||
<xsl:sort select="van/timestamp"/>
|
||||
<xsl:sort select="volgnr"/>
|
||||
<xsl:call-template name="rsv_ruimte"><xsl:with-param name="min_volgnr" select="$min_volgnr"/></xsl:call-template>
|
||||
</xsl:for-each>
|
||||
<!-- totaal reservering -->
|
||||
<xsl:if test="@content='complete'">
|
||||
<tr>
|
||||
<td colspan="5"><br/><xsl:value-of select="//lcl/RES/totaalprijs_reservering"/>:</td>
|
||||
<td colspan="2" style="text-align:right;"><br/>
|
||||
<xsl:call-template name="europrijs">
|
||||
<xsl:with-param name="prijs" select="sum(rsv_ruimte/prijs[string(number(.))!='NaN'])+sum(rsv_ruimte/rsv_deel/prijs[string(number(.))!='NaN'])+sum(rsv_ruimte/rsv_artikel/prijs[string(number(.))!='NaN'])"/>
|
||||
</xsl:call-template>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
</table>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="reservering" mode="full">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='summary'"></xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$srtnotificatiecode='OUTLOOK' or $mode='ics'">
|
||||
<xsl:apply-templates select="." mode="outlook"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<html>
|
||||
<xsl:comment>================================ RESERVERINGEN ==============================</xsl:comment>
|
||||
<xsl:comment>FACILITOR default XSL template for reservering</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>
|
||||
<xsl:call-template name="pageheader"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$srtnotificatiecode = 'RESKTO'">
|
||||
<xsl:apply-templates select="." mode="kto"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:apply-templates select="." mode="include"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<!--xsl:call-template name="pagefooter"/-->
|
||||
</xsl:element>
|
||||
</html>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="rsv_ruimte">
|
||||
<xsl:param name="min_volgnr"/>
|
||||
<tr>
|
||||
<xsl:choose>
|
||||
<xsl:when test="res_ruimte!=''">
|
||||
<td colspan="7"><br/><u><b>
|
||||
<xsl:if test="dirtlevel!='0'"><span class="fatal"><xsl:value-of select="//lcl/RES/ongeldig"/></span> </xsl:if>
|
||||
<xsl:value-of select="van/datum"/> 
|
||||
<xsl:value-of select="//lcl/RES/deelreservering"/> <xsl:value-of select="../key"/>/<xsl:value-of select="volgnr"/> 
|
||||
(<xsl:value-of select="res_activiteit/omschrijving"/>) 
|
||||
<xsl:value-of select="res_ruimte/plaats/regio/district/locatie/omschrijving"/></b></u>
|
||||
</td>
|
||||
</xsl:when>
|
||||
<!-- "roomservice" -->
|
||||
<xsl:otherwise>
|
||||
<td colspan="7"><br/><u><b>
|
||||
<xsl:if test="dirtlevel!='0'"><span class="fatal"><xsl:value-of select="//lcl/RES/ongeldig"/></span> </xsl:if>
|
||||
<xsl:value-of select="van/datum"/><xsl:if test="string(van/datum)!=string(tot/datum)"> - <xsl:value-of select="tot/datum"/></xsl:if> 
|
||||
<xsl:value-of select="//lcl/RES/deelreservering"/> <xsl:value-of select="../key"/>/<xsl:value-of select="volgnr"/> 
|
||||
<xsl:value-of select="plaats/plaatsaanduiding"/></b></u>
|
||||
</td>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</tr>
|
||||
<xsl:if test="string(omschrijving)!=string(//reservering/rsv_ruimte[volgnr=$min_volgnr]/omschrijving)">
|
||||
<tr>
|
||||
<td class="label"><xsl:value-of select="//lcl/FAC/omschrijving"/>:</td>
|
||||
<td class="value" colspan="6"><xsl:value-of select="omschrijving"/></td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
<xsl:if test="string(contact_user/naam_full)!=string(//reservering/rsv_ruimte[volgnr=$min_volgnr]/contact_user/naam_full)">
|
||||
<tr>
|
||||
<td class="label"><xsl:value-of select="//lcl/FAC/aanvrager"/>:</td>
|
||||
<td class="value" colspan="6"><xsl:value-of select="contact_user/naam_full"/>/ <xsl:value-of select="contact_user/werkplek/plaats/regio/district/locatie/omschrijving"/></td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
<tr>
|
||||
<td class="label"><xsl:value-of select="//lcl/RES/status"/>:</td>
|
||||
<td class="value" colspan="6"><xsl:value-of select="status_fo"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label"><xsl:value-of select="//lcl/RES/gastheer_vrouw"/>:</td>
|
||||
<td class="value" colspan="6"><xsl:value-of select="host_user/naam_full"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label"><xsl:value-of select="//lcl/FAC/kostenplaats"/>:</td>
|
||||
<td class="value" colspan="6"><xsl:value-of select="kostenplaats/nr"/> <xsl:value-of select="kostenplaats/omschrijving"/></td>
|
||||
</tr>
|
||||
<xsl:if test="opmerking!=''">
|
||||
<tr>
|
||||
<td class="label"> <xsl:value-of select="//lcl/FAC/opmerking"/>:</td>
|
||||
<td class="value" colspan="6"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="opmerking"/></xsl:call-template></td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
<tr><td colspan="7"><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></td></tr>
|
||||
<tr><td colspan="7" style="border-top:1px solid #000;"/></tr>
|
||||
<tr>
|
||||
<th class="resth" width="18%" style="text-align:left"><xsl:value-of select="//lcl/FAC/omschrijving"/></th>
|
||||
<th class="resth" width="10%" style="text-align:left"><xsl:value-of select="//lcl/RES/aantal"/></th>
|
||||
<th class="resth" width="11%" style="text-align:right"><xsl:value-of select="//lcl/RES/begintijd"/></th>
|
||||
<th class="resth" width="12%" style="text-align:right"><xsl:value-of select="//lcl/RES/eindtijd"/></th>
|
||||
<th class="resth" width="12%" style="text-align:center"><xsl:value-of select="//lcl/RES/opstelling"/></th>
|
||||
<th class="resth" width="10%" style="text-align:center">BTW</th>
|
||||
<th class="resth" width="12%" style="text-align:right"><xsl:value-of select="//lcl/RES/prijs"/></th>
|
||||
</tr>
|
||||
<xsl:if test="res_ruimte!=''">
|
||||
<tr>
|
||||
<td width="20%" class="resresult" style="text-align:left;"><xsl:if test="dirtlevel!='0'"><span class="fatal"><xsl:value-of select="//lcl/RES/ongeldig"/></span> </xsl:if>
|
||||
<xsl:value-of select="res_ruimte/nr"/>
|
||||
<br/>(max. <xsl:value-of select="res_ruimte/bezoekers"/> <xsl:value-of select="//lcl/FAC/personen"/>)
|
||||
</td>
|
||||
<td width="12%" class="resresult" style="text-align:left">
|
||||
<xsl:value-of select="bezoekers"/> <xsl:value-of select="//lcl/FAC/personen"/>
|
||||
</td>
|
||||
<td width="12%" class="resresult" style="text-align:right">
|
||||
<xsl:value-of select="van/tijd"/>
|
||||
</td>
|
||||
<td width="12%" class="resresult" style="text-align:right">
|
||||
<xsl:value-of select="tot/tijd"/>
|
||||
</td>
|
||||
<td width="14%" class="resresult" style="text-align:center">
|
||||
<xsl:value-of select="res_ruimte/opstelling"/>
|
||||
</td>
|
||||
<td width="14%" style="text-align:center"><xsl:choose><xsl:when test="res_ruimte/groep!=''"><xsl:value-of select="res_ruimte/groep"/>%</xsl:when><xsl:otherwise></xsl:otherwise></xsl:choose></td>
|
||||
<td width="15%" class="resresult" style="text-align:right">
|
||||
<xsl:choose>
|
||||
<xsl:when test="kenmerk[@key='181']='Sociaal'">
|
||||
<!--xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="prijs"/></xsl:call-template-->
|
||||
<xsl:choose>
|
||||
<xsl:when test="res_ruimte/groep='6'"><xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="prijs * 1.06"/></xsl:call-template></xsl:when>
|
||||
<xsl:otherwise><xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="prijs * 1.21"/></xsl:call-template></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<!--xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="(tot/timestamp - van/timestamp) div 3600 * number (res_ruimte/prijs_dag)"/></xsl:call-template-->
|
||||
<xsl:choose>
|
||||
<xsl:when test="res_ruimte/groep='6'"><xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="(tot/timestamp - van/timestamp) div 3600 * number (res_ruimte/prijs_dag) * 1.06"/></xsl:call-template></xsl:when>
|
||||
<xsl:otherwise><xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="(tot/timestamp - van/timestamp) div 3600 * number (res_ruimte/prijs_dag) * 1.21"/></xsl:call-template></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
<!-- rsv_deel-lijst gesorteerd op van-tijd -->
|
||||
<xsl:for-each select="rsv_deel">
|
||||
<xsl:sort select="van/tijd"/>
|
||||
<tr>
|
||||
<td class="resresult"><xsl:if test="dirtlevel!='0'"><span class="fatal"><xsl:value-of select="//lcl/RES/ongeldig"/></span> </xsl:if><xsl:value-of select="res_deel/omschrijving"/></td>
|
||||
<td class="resresult"><xsl:value-of select="aantal"/></td>
|
||||
<td class="resresult" style="text-align:right"><xsl:value-of select="van/tijd"/></td>
|
||||
<td class="resresult" style="text-align:right"><xsl:value-of select="tot/tijd"/></td>
|
||||
<td></td>
|
||||
<td width="14%" style="text-align:center">21%</td>
|
||||
<td class="resresult" style="text-align:right">
|
||||
<xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="prijs * 1.21"/></xsl:call-template>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
<!-- rsv_artikel-lijst gesorteerd op van-tijd -->
|
||||
<xsl:for-each select="rsv_artikel">
|
||||
<xsl:sort select="levering/tijd"/>
|
||||
<tr>
|
||||
<td class="resresult" ><xsl:value-of select="res_artikel/omschrijving"/></td>
|
||||
<td class="resresult"><xsl:value-of select="aantal"/></td>
|
||||
<td class="resresult" style="text-align:right"><xsl:value-of select="levering/tijd"/></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td class="resresult" style="text-align:center"><xsl:choose><xsl:when test="res_artikel/btw!=''"><xsl:value-of select="res_artikel/btw"/>%</xsl:when><xsl:otherwise></xsl:otherwise></xsl:choose></td>
|
||||
<td class="resresult" style="text-align:right">
|
||||
<!--xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="prijs"/></xsl:call-template-->
|
||||
<xsl:choose>
|
||||
<xsl:when test="res_artikel/btw='21'"><xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="prijs * 1.21"/></xsl:call-template></xsl:when>
|
||||
<xsl:otherwise><xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="prijs * 1.06"/></xsl:call-template></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
<!-- Totaalprijs berekenen op basis van tijdelijke lijst! -->
|
||||
<xsl:variable name="tmpprijslist">
|
||||
<xsl:for-each select="//rsv_ruimte">
|
||||
<item>
|
||||
<prijs>
|
||||
<xsl:choose>
|
||||
<xsl:when test="kenmerk[@key='181']='Sociaal'"><xsl:value-of select="prijs"/></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="(tot/timestamp - van/timestamp) div 3600 * number (res_ruimte/prijs_dag)"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</prijs>
|
||||
<btw>
|
||||
<xsl:choose>
|
||||
<xsl:when test="res_ruimte/groep!=''"><xsl:value-of select="res_ruimte/groep"/>
|
||||
</xsl:when><xsl:otherwise>21</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</btw>
|
||||
</item>
|
||||
</xsl:for-each>
|
||||
<xsl:for-each select="//rsv_deel">
|
||||
<item>
|
||||
<prijs><xsl:value-of select="prijs"/></prijs>
|
||||
<btw>21</btw>
|
||||
</item>
|
||||
</xsl:for-each>
|
||||
<xsl:for-each select="//rsv_artikel">
|
||||
<item>
|
||||
<prijs><xsl:value-of select="prijs"/></prijs>
|
||||
<btw>
|
||||
<xsl:choose>
|
||||
<xsl:when test="res_artikel/btw!=''"><xsl:value-of select="res_artikel/btw"/></xsl:when>
|
||||
<xsl:otherwise>6</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</btw>
|
||||
</item>
|
||||
</xsl:for-each>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="totaal_excl_btw" select="sum(msxml:node-set($tmpprijslist)/item/prijs)"/>
|
||||
<xsl:variable name="totaal_btw_laag" select="sum(msxml:node-set($tmpprijslist)/item[btw='6']/prijs)*0.06"/>
|
||||
<xsl:variable name="totaal_btw_hoog" select="sum(msxml:node-set($tmpprijslist)/item[btw='21']/prijs)*0.21"/>
|
||||
<!-- totaal per deelreservering -->
|
||||
<!--tr><td colspan="7" style="border-top:1px solid #000;"><xsl:value-of select="msxml:node-set($tmpprijslist)"/></td></tr-->
|
||||
<tr><td colspan="7" style="border-top:1px solid #000;"/></tr>
|
||||
<tr>
|
||||
<td class="tekst" colspan="4"></td>
|
||||
<td class="tekst" colspan="3" style="text-align:right;"><b>
|
||||
<xsl:call-template name="europrijs"><xsl:with-param name="prijs" select="$totaal_excl_btw+$totaal_btw_laag+$totaal_btw_hoog"/></xsl:call-template></b>
|
||||
</td>
|
||||
</tr>
|
||||
<!-- afspraak-lijst gesorteerd op naam -->
|
||||
<xsl:for-each select="afspraak/bezoeker">
|
||||
<xsl:sort select="naam"/>
|
||||
<xsl:if test="position()=1">
|
||||
<tr><td colspan="7" class="tekst"><br/><u><xsl:value-of select="//lcl/BEZ/bezoekers"/></u></td></tr>
|
||||
<tr>
|
||||
<th colspan="2" style="text-align:left;"><xsl:value-of select="//lcl/FAC/naam"/></th>
|
||||
<th colspan="2" style="text-align:left;"><xsl:value-of select="//lcl/FAC/bedrijf"/></th>
|
||||
<th colspan="3" style="text-align:left;">Parkeerplaats</th>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
<tr>
|
||||
<td colspan="2" class="result"><xsl:value-of select="naam"/></td>
|
||||
<td colspan="2" class="result"><xsl:value-of select="bedrijf"/></td>
|
||||
<td colspan="3" class="result"><xsl:value-of select="deel/omschrijving"/></td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
<!-- kenmerk-lijst gesorteerd op volgnummer (en gevuld) -->
|
||||
<xsl:for-each select="kenmerk[@type!='L' and @type!='l' and @type!='Q' and count(@xmlnode)=0]">
|
||||
<xsl:sort select="@volgnummer" data-type="number"/>
|
||||
<xsl:if test="position()=1">
|
||||
<tr><td colspan="7"><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></td></tr>
|
||||
</xsl:if>
|
||||
<xsl:if test=".!=''">
|
||||
<tr>
|
||||
<td class="label"><xsl:value-of select="@naam"/>:</td>
|
||||
<td colspan="6" class="value"><xsl:value-of select="."/></td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="fac_liketab">
|
||||
<table width="99%" style="border-collapse:collapse;border:0px solid #000;">
|
||||
<!--tr height="20px"><td colspan="4"><hr/></td></tr-->
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
<xsl:element name="a"><xsl:attribute name="href">https://<xsl:value-of select="$FacilitorRoot"/>?<xsl:value-of select="../bookmarks/melding"/><xsl:value-of select="key"/>&urole=fe</xsl:attribute>deze link</xsl:element>
|
||||
om de melding te openen.
|
||||
<br/><br/>
|
||||
U kunt hierop reageren door een nieuwe notitie toe te voegen door op het groene <b>"+"</b> symbool te klikken aan de rechterkant op de notitiebalk.
|
||||
U kunt hierop reageren door in de melding een nieuwe notitie toe te voegen
|
||||
</td>
|
||||
</tr>
|
||||
<tr height="20px">
|
||||
|
||||
@@ -6,48 +6,22 @@
|
||||
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:template match="melding" mode="full">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='summary'"></xsl:when>
|
||||
<xsl:otherwise>
|
||||
<html>
|
||||
<xsl:comment>================================ MELDINGEN ==============================</xsl:comment>
|
||||
<xsl:comment>FACILITOR default XSL template for melding</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>
|
||||
<xsl:call-template name="pageheader"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$srtnotificatiecode = 'MLDKTO'">
|
||||
<xsl:apply-templates select="." mode="kto"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:apply-templates select="." mode="include"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:call-template name="pagefooter"/>
|
||||
</xsl:element>
|
||||
</html>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
<xsl:variable name="Xsrtnotificatiecode">MLDAFM</xsl:variable>
|
||||
|
||||
<xsl:template match="melding" mode="include">
|
||||
<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="discipline/srtdiscipline/prefix"/><xsl:value-of select="key"/>&height=50&narrow=1&wide=3</xsl:attribute>
|
||||
</xsl:element>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4" 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="discipline/srtdiscipline/prefix"/><xsl:value-of select="key"/>&height=50&narrow=1&wide=3</xsl:attribute>
|
||||
</xsl:element>
|
||||
</td>
|
||||
</tr>
|
||||
<xsl:if test="not(//opdracht/extra_key) and extra_key">
|
||||
<xsl:variable name="mx_key"><xsl:value-of select="extra_key"/></xsl:variable>
|
||||
<tr>
|
||||
<td align="right" valign="top" style="padding-top:10px;">
|
||||
<td style="padding-top:10px;">
|
||||
<b><xsl:value-of select="//lcl/FAC/bericht"/>:</b>
|
||||
</td>
|
||||
<td colspan="3" style="padding-top:10px;">
|
||||
@@ -57,9 +31,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4" style="padding-bottom:20px;">
|
||||
<hr/>
|
||||
</td>
|
||||
<td colspan="4" style="padding-bottom:20px;"><hr/></td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
<xsl:choose>
|
||||
@@ -69,283 +41,205 @@
|
||||
<!--==============================================-->
|
||||
<!-- DEFAULT BON -->
|
||||
<!--==============================================-->
|
||||
|
||||
<!--121=FM Facilities Management = oud?-->
|
||||
<xsl:when test="discipline/srtdiscipline/key=121">
|
||||
<tr height="30px">
|
||||
<td colspan="3"/>
|
||||
<tr height="30px"><td colspan="4"/></tr>
|
||||
<tr><td colspan="4">Statusmelding Facilities <xsl:value-of select="discipline/omschrijving"/></td></tr>
|
||||
<tr height="20px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td width="16%"><b>Status:</b></td>
|
||||
<td colspan="3"><b><xsl:value-of select="status"/></b></td>
|
||||
</tr>
|
||||
<tr height="20px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td><b>Nummer:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="discipline/srtdiscipline/prefix"/><xsl:value-of select="key"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="3">Statusmelding Facilities <xsl:value-of select="discipline/omschrijving"/></td>
|
||||
</tr>
|
||||
<tr height="20px">
|
||||
<td colspan="3"/>
|
||||
<td><b>Startdatum:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="gemeld/datum"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Status:</b></td>
|
||||
<td align="left"><b><xsl:value-of select="status"/></b></td>
|
||||
</tr>
|
||||
<tr height="20px">
|
||||
<td colspan="3"/>
|
||||
<td><b>Behandelaar:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="behandelaar/naam_full"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Nummer:</b></td>
|
||||
<td align="left"><xsl:value-of select="discipline/srtdiscipline/prefix"/><xsl:value-of select="key"/></td>
|
||||
<td><b>Betreft:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="stdmelding/omschrijving"/></td>
|
||||
</tr>
|
||||
<tr height="20px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Startdatum:</b></td>
|
||||
<td align="left"><xsl:value-of select="gemeld/datum"/></td>
|
||||
<td><b>Aanvrager:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="voor/naam_full"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Behandelaar:</b></td>
|
||||
<td align="left"><xsl:value-of select="behandelaar/naam_full"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Betreft:</b></td>
|
||||
<td align="left"><xsl:value-of select="stdmelding/omschrijving"/></td>
|
||||
</tr>
|
||||
<tr height="20px">
|
||||
<td colspan="3"/>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Aanvrager:</b></td>
|
||||
<td align="left"><xsl:value-of select="voor/naam_full"/></td>
|
||||
</tr>
|
||||
<xsl:if test="onderwerp != ''">
|
||||
<xsl:if test="onderwerp!=''">
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Onderwerp:</b></td>
|
||||
<td align="left"><xsl:value-of select="onderwerp"/></td>
|
||||
<td><b>Onderwerp:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="onderwerp"/></td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Omschrijving:</b></td>
|
||||
<td align="left">
|
||||
<xsl:call-template name="linebreaks">
|
||||
<xsl:with-param name="string" select="omschrijving"/>
|
||||
</xsl:call-template>
|
||||
</td>
|
||||
</tr>
|
||||
<tr height="20px">
|
||||
<td colspan="3"/>
|
||||
<td><b>Omschrijving:</b></td>
|
||||
<td colspan="3"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="omschrijving"/></xsl:call-template></td>
|
||||
</tr>
|
||||
<tr height="20px"><td colspan="4"/></tr>
|
||||
<xsl:if test="opmerking!=''">
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Afhandeling:</b></td>
|
||||
<td align="left">
|
||||
<xsl:call-template name="linebreaks">
|
||||
<xsl:with-param name="string" select="opmerking"/>
|
||||
</xsl:call-template>
|
||||
</td>
|
||||
<td><b>Afhandeling:</b></td>
|
||||
<td colspan="3"><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="opmerking"/></xsl:call-template></td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
<tr height="20px">
|
||||
<td colspan="3"/>
|
||||
</tr>
|
||||
<xsl:if test="$srtnotificatiecode='MLDMAI'">
|
||||
<tr>
|
||||
<td colspan="3">
|
||||
**********************************************************************<br/>
|
||||
This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-mail and its contents
|
||||
are for the use of the addressee only and may be confidential or privileged. Unauthorised use, disclosure or
|
||||
copying is strictly prohibited. If you are not the addressee, please notify us immediately. Houthoff Buruma
|
||||
is the trade name of Houthoff Buruma Coöperatief U.A., a Dutch law firm based in Amsterdam and registered
|
||||
in the Amsterdam Chamber of Commerce as no. 34216182. Houthoff Buruma’s General Terms and
|
||||
Conditions are available on request and at <a href="http://www.houthoff.com.">www.houthoff.com</a> Applying to all work performed, our General
|
||||
Terms and Conditions state that our liability is limited, that Dutch law applies and that the Hague Court
|
||||
has exclusive jurisdiction. Whenever we use the word "partner" in our communications, it means “partner”
|
||||
as defined in our General Terms and Conditions.<br/>
|
||||
<tr height="20px"><td colspan="4"/></tr>
|
||||
<xsl:if test="$srtnotificatiecode='MLDMAI'">
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
**********************************************************************
|
||||
<br/>This communication is sent to you from Houthoff Buruma Coöperatief U.A.
|
||||
This e-mail and its contents are for the use of the addressee only and may be confidential or privileged.
|
||||
Unauthorised use, disclosure or copying is strictly prohibited.
|
||||
If you are not the addressee, please notify us immediately.
|
||||
Houthoff Buruma is the trade name of Houthoff Buruma Coöperatief U.A., a Dutch law firm based in Amsterdam and registered in the Amsterdam Chamber of Commerce as no. 34216182.
|
||||
Houthoff Buruma’s General Terms and Conditions are available on request and at <a href="http://www.houthoff.com.">www.houthoff.com</a>
|
||||
Applying to all work performed, our General Terms and Conditions state that our liability is limited, that Dutch law applies and that the Hague Court has exclusive jurisdiction.
|
||||
Whenever we use the word "partner" in our communications, it means “partner” as defined in our General Terms and Conditions.<br/>
|
||||
**********************************************************************
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<tr height="30px">
|
||||
<td colspan="3"/>
|
||||
</tr>
|
||||
<xsl:otherwise>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$srtnotificatiecode='MLDACP'">
|
||||
<tr height="30px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<xsl:value-of select="discipline/srtdiscipline/prefix"/><xsl:value-of select="key"/> <xsl:value-of select="onderwerp"/>
|
||||
<br/><br/>Beste <xsl:value-of select="voor/naam_friendly"/>,
|
||||
<br/><br/>Uw melding is geregistreerd in het ticket-systeem en zal zo spoedig mogelijk worden afgehandeld.
|
||||
<br/><br/>Met vriendelijke groet,
|
||||
<br/><br/><xsl:value-of select="behandelaar/naam_friendly"/>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:when>
|
||||
<xsl:when test="$srtnotificatiecode='MLDAFM'">
|
||||
<tr height="30px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<xsl:value-of select="discipline/srtdiscipline/prefix"/><xsl:value-of select="key"/> <xsl:value-of select="onderwerp"/>
|
||||
<br/><br/>Beste <xsl:value-of select="voor/naam_friendly"/>,
|
||||
<br/><br/>Je melding is afgehandeld. <xsl:call-template name="linebreaks"><xsl:with-param name="string" select="opmerking"/></xsl:call-template>
|
||||
<br/><br/>Mocht je nog vragen of opmerkingen hebben, neem dan contact op met de IT-helpdesk (6400)
|
||||
<br/><br/>Met vriendelijke groet,
|
||||
<br/><br/><xsl:for-each select="tracking/track[@code='MLDAFM']">
|
||||
<xsl:sort select="datum/timestamp" order="ascending"/>
|
||||
<xsl:if test="position() = 1">
|
||||
<xsl:value-of select="user/naam_friendly"/>
|
||||
</xsl:if>
|
||||
</xsl:for-each>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<tr height="30px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td align="left">
|
||||
<td colspan="4">
|
||||
<b>Facilities 
|
||||
<xsl:value-of select="voor/werkplek/plaats/regio/district/locatie/code"/> 
|
||||
<xsl:if test="voor/werkplek/plaats/regio/district/locatie/omschrijving!=''">(<xsl:value-of select="voor/werkplek/plaats/regio/district/locatie/omschrijving"/>)</xsl:if>
|
||||
</b>
|
||||
<xsl:if test="voor/werkplek/plaats/regio/district/locatie/omschrijving!=''">(<xsl:value-of select="voor/werkplek/plaats/regio/district/locatie/omschrijving"/>)</xsl:if></b>
|
||||
</td>
|
||||
</tr>
|
||||
<tr height="10px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td/>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="16%">
|
||||
<b>Bonnummer:</b>
|
||||
</td>
|
||||
<td align="left">
|
||||
<td width="16%"><b>Bonnummer:</b></td>
|
||||
<td colspan="3">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="href">https://<xsl:value-of select="$FacilitorRoot"/>?<xsl:value-of select="../bookmarks/melding"/><xsl:value-of select="key"/>
|
||||
</xsl:attribute><b><xsl:value-of select="discipline/srtdiscipline/prefix"/><xsl:value-of select="key"/></b>
|
||||
<xsl:attribute name="href">https://<xsl:value-of select="$FacilitorRoot"/>?<xsl:value-of select="../bookmarks/melding"/><xsl:value-of select="key"/></xsl:attribute><b><xsl:value-of select="discipline/srtdiscipline/prefix"/><xsl:value-of select="key"/></b>
|
||||
</xsl:element>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="16%">
|
||||
<b>Datum:</b>
|
||||
</td>
|
||||
<td align="left">
|
||||
<b><xsl:value-of select="gemeld/datum"/> 
|
||||
<xsl:value-of select="gemeld/tijd"/></b>
|
||||
</td>
|
||||
<td><b>Datum:</b></td>
|
||||
<td colspan="3"><b><xsl:value-of select="gemeld/datum"/> <xsl:value-of select="gemeld/tijd"/></b></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td/>
|
||||
<td><b>Behandelaar:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="behandelaar/naam_full"/></td>
|
||||
</tr>
|
||||
<tr height="10px"><td colspan="4"/></tr>
|
||||
<tr><td colspan="4"><hr/></td></tr>
|
||||
<tr height="10px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td><b>Melding van:</b></td>
|
||||
<td colspan="3"><b><xsl:value-of select="voor/naam_full"/></b></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="16%">
|
||||
<b>Behandelaar:</b>
|
||||
</td>
|
||||
<td align="left">
|
||||
<xsl:value-of select="behandelaar/naam_full"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<hr/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr height="20px">
|
||||
<td colspan="3"/>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="left">
|
||||
<b>Melding van:</b>
|
||||
</td>
|
||||
<td align="left">
|
||||
<b><xsl:value-of select="voor/naam_full"/></b>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="left">
|
||||
<b>Ruimte:</b>
|
||||
</td>
|
||||
<td align="left">
|
||||
<td><b>Ruimte:</b></td>
|
||||
<td colspan="3">
|
||||
<xsl:value-of select="plaats/regio/district/locatie/gebouw/verdieping/ruimte/nr"/> 
|
||||
<xsl:if test="plaats/regio/district/locatie/gebouw/verdieping/ruimte/omschrijving!=''">(<xsl:value-of select="plaats/regio/district/locatie/gebouw/verdieping/ruimte/omschrijving"/>)</xsl:if>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="16%">
|
||||
<b>Telefoon:</b>
|
||||
</td>
|
||||
<td align="left" width="34%">
|
||||
<xsl:if test="voor/telefoonnr=''">-</xsl:if>
|
||||
<xsl:value-of select="voor/telefoonnr"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td/>
|
||||
<td><b>Telefoon:</b></td>
|
||||
<td colspan="3"><xsl:if test="voor/telefoonnr=''">-</xsl:if><xsl:value-of select="voor/telefoonnr"/></td>
|
||||
</tr>
|
||||
<tr height="20px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td><b>Vakgroep:</b></td>
|
||||
<td colspan="3"><xsl:if test="discipline/omschrijving=''">-</xsl:if><xsl:value-of select="discipline/omschrijving"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td/>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="left">
|
||||
<b>Vakgroep:</b>
|
||||
</td>
|
||||
<td align="left">
|
||||
<xsl:if test="discipline/omschrijving=''">-</xsl:if>
|
||||
<xsl:value-of select="discipline/omschrijving"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right">
|
||||
<b>Melding:</b>
|
||||
</td>
|
||||
<td align="left">
|
||||
<xsl:if test="stdmelding/omschrijving=''">-</xsl:if>
|
||||
<xsl:value-of select="stdmelding/omschrijving"/>
|
||||
</td>
|
||||
<td><b>Melding:</b></td>
|
||||
<td colspan="3"><xsl:if test="stdmelding/omschrijving=''">-</xsl:if><xsl:value-of select="stdmelding/omschrijving"/></td>
|
||||
</tr>
|
||||
<xsl:if test="count(deel)>0">
|
||||
<xsl:for-each select="deel">
|
||||
<xsl:sort select="omschrijving"/>
|
||||
<tr>
|
||||
<xsl:choose>
|
||||
<xsl:when test="position()=1">
|
||||
<td align="right" valign="top">
|
||||
<b>Betreft:</b>
|
||||
</td>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<td/>
|
||||
</xsl:otherwise>
|
||||
<xsl:when test="position()=1"><td><b>Betreft:</b></td></xsl:when>
|
||||
<xsl:otherwise><td/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<td align="left" valign="top">
|
||||
<xsl:value-of select="omschrijving"/>
|
||||
</td>
|
||||
<td colspan="2" valign="top">
|
||||
<xsl:comment>NADER TE DEFINIEREN</xsl:comment>
|
||||
</td>
|
||||
<td colspan="3"><xsl:value-of select="omschrijving"/></td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</xsl:if>
|
||||
<tr height="30px">
|
||||
<td colspan="3"/>
|
||||
</tr>
|
||||
<tr height="20px"><td colspan="4"/></tr>
|
||||
<tr>
|
||||
<td align="right">
|
||||
<b>Uiterlijk gereed/geleverd:</b>
|
||||
</td>
|
||||
<td align="left">
|
||||
<xsl:value-of select="uitvoertijd"/><xsl:choose><xsl:when test="uitvoertijd[@eenheid='U']"> <xsl:value-of select="//lcl/MLD/uren"/></xsl:when><xsl:otherwise> <xsl:value-of select="//lcl/FAC/dagen"/></xsl:otherwise></xsl:choose> (<xsl:value-of select="datum_gepland/datum"/>)</td>
|
||||
<td><b>Uiterlijk gereed/geleverd:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="uitvoertijd"/><xsl:choose><xsl:when test="uitvoertijd[@eenheid='U']"> <xsl:value-of select="//lcl/MLD/uren"/></xsl:when><xsl:otherwise> <xsl:value-of select="//lcl/FAC/dagen"/></xsl:otherwise></xsl:choose> (<xsl:value-of select="datum_gepland/datum"/>)</td>
|
||||
</tr>
|
||||
<tr height="20px">
|
||||
<td colspan="3"/>
|
||||
</tr>
|
||||
<xsl:if test="onderwerp != ''">
|
||||
<tr height="20px"><td colspan="4"/></tr>
|
||||
<xsl:if test="onderwerp!=''">
|
||||
<tr>
|
||||
<td align="right" width="16%"><b>Onderwerp:</b></td>
|
||||
<td align="left"><xsl:value-of select="onderwerp"/></td>
|
||||
<td><b>Onderwerp:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="onderwerp"/></td>
|
||||
</tr>
|
||||
<tr height="10px">
|
||||
<td colspan="3"/>
|
||||
</tr>
|
||||
<tr height="10px"><td colspan="4"/></tr>
|
||||
</xsl:if>
|
||||
<tr>
|
||||
<td align="left" colspan="3">
|
||||
<xsl:call-template name="linebreaks">
|
||||
<xsl:with-param name="string" select="omschrijving"/>
|
||||
</xsl:call-template>
|
||||
<td colspan="4">
|
||||
<xsl:call-template name="linebreaks"><xsl:with-param name="string" select="omschrijving"/></xsl:call-template>
|
||||
</td>
|
||||
</tr>
|
||||
<tr height="20px">
|
||||
<td colspan="3"/>
|
||||
</tr>
|
||||
<xsl:for-each select="kenmerk[@type!='L' and @type!='Q']">
|
||||
<tr height="10px"><td colspan="4"/></tr>
|
||||
<xsl:for-each select="kenmerk[@type!='L' and @type!='l' and @type!='Q' and count(@xmlnode)=0]">
|
||||
<xsl:sort select="@volgnummer" data-type="number"/>
|
||||
<xsl:if test=".!=''">
|
||||
<tr>
|
||||
<td align="right">
|
||||
<b>
|
||||
<xsl:value-of select="@naam"/>:</b>
|
||||
</td>
|
||||
<td colspan="3">
|
||||
<xsl:value-of select="."/>
|
||||
</td>
|
||||
<td><b><xsl:value-of select="@naam"/>:</b></td>
|
||||
<td colspan="3"><xsl:value-of select="."/></td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
</xsl:for-each>
|
||||
<td>
|
||||
<xsl:if test="behandelwijze=2 and not(/facilitor/opdracht)">
|
||||
<xsl:if test="behandelwijze=2 and not(/facilitor/opdracht)">
|
||||
<tr height="10px"><td colspan="4"/></tr>
|
||||
<xsl:for-each select="notes/note[flag=1]">
|
||||
<xsl:sort select="aanmaak/timestamp" order="ascending"/>
|
||||
<xsl:sort select="aanmaak/timestamp" order="ascending"/>
|
||||
<tr>
|
||||
<xsl:choose>
|
||||
<xsl:when test="position() = 1">
|
||||
<td align="right" valign="top">
|
||||
<b><xsl:value-of select="//lcl/MLD/behandeling"/>:</b>
|
||||
</td>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<td/>
|
||||
</xsl:otherwise>
|
||||
<xsl:when test="position()=1"><td><b><xsl:value-of select="//lcl/MLD/behandeling"/>:</b></td></xsl:when>
|
||||
<xsl:otherwise><td/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<td colspan="3">
|
||||
<span class="mldbeh"><xsl:value-of select="aanmaak/datum"/> <xsl:value-of select="aanmaak/tijd"/> - <xsl:value-of select="noteur/naam_friendly"/></span> 
|
||||
@@ -355,16 +249,43 @@ as defined in our General Terms and Conditions.<br/>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</xsl:if>
|
||||
</td>
|
||||
<td colspan="4">
|
||||
<hr/>
|
||||
</td>
|
||||
</xsl:if>
|
||||
<tr><td colspan="4"><hr/></td></tr>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</table>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="melding" mode="full">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='summary'"></xsl:when>
|
||||
<xsl:otherwise>
|
||||
<html>
|
||||
<xsl:comment>================================ MELDINGEN ==============================</xsl:comment>
|
||||
<xsl:comment>FACILITOR default XSL template for melding</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>
|
||||
<xsl:call-template name="pageheader"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$srtnotificatiecode = 'MLDKTO'">
|
||||
<xsl:apply-templates select="." mode="kto"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:apply-templates select="." mode="include"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<!--xsl:call-template name="pagefooter"/-->
|
||||
</xsl:element>
|
||||
</html>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="opdracht" mode="include">
|
||||
<style>
|
||||
td.subcaption {
|
||||
@@ -1403,8 +1324,9 @@ This communication is sent to you from Houthoff Buruma Coöperatief U.A. This e-
|
||||
|
||||
<xsl:template match="rapport">
|
||||
<style>th {
|
||||
border: 1px solid #808080;
|
||||
}</style>
|
||||
border: 1px solid #808080;
|
||||
}
|
||||
</style>
|
||||
|
||||
<xsl:if test="@view='HOUT_V_RAP_PRJ_OVZ'">
|
||||
<table width="100%" class="rstable" cellpadding="0" cellspacing="0">
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 14 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
@@ -326,10 +326,12 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
<td colspan="4">
|
||||
<xsl:element name="img">
|
||||
<xsl:attribute name="src">
|
||||
../../appl/CAD/mySlnk2IMG.asp?mode=0
|
||||
<xsl:attribute name="frc">M=CAD
|
||||
&labelPos=2
|
||||
|
||||
&vKey=<xsl:value-of select="regio/district/locatie/gebouw/verdieping/key"/>
|
||||
&scenario_key=0&paperWidth=170&paperHeight=170&forPrint=1
|
||||
&discs=101
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
<DeliveryParty>
|
||||
<Name><xsl:value-of select='bestelling/kenmerk[@key=1]'/></Name>
|
||||
<StreetAndNumber><xsl:value-of select='bestelling/kenmerk[@key=3]'/></StreetAndNumber>
|
||||
<PostalCode><xsl:value-of select='bestelling/kenmerk[@key=4]'/></PostalCode>
|
||||
<City><xsl:value-of select='bestelling/kenmerk[@key=5]'/></City>
|
||||
<PostalCode><xsl:value-of select='bestelling/kenmerk[@key=4]'/></PostalCode>
|
||||
<LocationDescription><xsl:value-of select='bestelling/kenmerk[@key=1]'/></LocationDescription>
|
||||
</DeliveryParty>
|
||||
<xsl:for-each select="bestelopdrachtitem">
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:output method="xml" indent="yes" encoding="UTF-8"/>
|
||||
|
||||
<xsl:decimal-format name="european" decimal-separator="." grouping-separator=","/>
|
||||
|
||||
<xsl:param name="mode"/>
|
||||
|
||||
<xsl:template match="bestelopdracht">
|
||||
<!--Facilitor custom XSL template for cXML bestelopdracht-->
|
||||
<Order xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.gs1.nl/order/insbou/004 Order_insbou004.xsd">
|
||||
<OrderType>220</OrderType>
|
||||
<OrderNumber><xsl:value-of select='bestelling/kenmerk[@key=6]'/></OrderNumber>
|
||||
<OrderDate><xsl:value-of select="datum/jaar"/>-<xsl:value-of select="datum/maand"/>-<xsl:value-of select="datum/dag"/></OrderDate>
|
||||
<OrderTime><xsl:value-of select="datum/tijd"/>:00</OrderTime>
|
||||
<ScenarioTypeCode>X1</ScenarioTypeCode>
|
||||
<EndCustomerOrderNumber><xsl:value-of select="id"/></EndCustomerOrderNumber>
|
||||
<Buyer>
|
||||
<GLN><xsl:value-of select='bestelling/voor/afdeling/bedrijf/leverancier_nr'/></GLN>
|
||||
</Buyer>
|
||||
<Supplier>
|
||||
<GLN><xsl:value-of select='bedrijf/leverancier_nr'/></GLN>
|
||||
</Supplier>
|
||||
<DeliveryParty>
|
||||
<Name><xsl:value-of select='bestelling/kenmerk[@key=1]'/></Name>
|
||||
<StreetAndNumber><xsl:value-of select='bestelling/kenmerk[@key=3]'/></StreetAndNumber>
|
||||
<City><xsl:value-of select='bestelling/kenmerk[@key=5]'/></City>
|
||||
<PostalCode><xsl:value-of select='bestelling/kenmerk[@key=4]'/></PostalCode>
|
||||
<LocationDescription><xsl:value-of select='bestelling/kenmerk[@key=1]'/></LocationDescription>
|
||||
</DeliveryParty>
|
||||
<xsl:for-each select="bestelopdrachtitem">
|
||||
<xsl:sort select="bestelitem/kenmerk[@key='8']"/>
|
||||
<OrderLine>
|
||||
<LineNumber><xsl:value-of select="bestelitem/kenmerk[@key='8']"/></LineNumber>
|
||||
<OrderedQuantity><xsl:value-of select="aantal"/></OrderedQuantity>
|
||||
<OrderedQuantityUoM><xsl:value-of select="bestelitem/srtdeel/eenheid"/></OrderedQuantityUoM>
|
||||
<LineIdentification><xsl:value-of select="bestelitem/kenmerk[@key='8']"/></LineIdentification>
|
||||
<TradeItemIdentification>
|
||||
<GTIN><xsl:value-of select="bestelitem/srtdeel/artikel_nummer"/></GTIN>
|
||||
<SuppliersTradeItemId><xsl:value-of select="bestelitem/kenmerk[@key='9']"/></SuppliersTradeItemId>
|
||||
</TradeItemIdentification>
|
||||
<DeliveryDateTimeInformation>
|
||||
<RequiredDeliveryDate><xsl:value-of select="../bestelling/leverdatum/jaar"/>-<xsl:value-of select="../bestelling/leverdatum/maand"/>-<xsl:value-of select="../bestelling/leverdatum/dag"/></RequiredDeliveryDate>
|
||||
</DeliveryDateTimeInformation>
|
||||
</OrderLine>
|
||||
</xsl:for-each>
|
||||
</Order>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="facilitor">
|
||||
<xsl:apply-templates select="bestelopdracht"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="/">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='getExtension'">
|
||||
<xsl:element name="format">
|
||||
<xsl:element name="extension">xml</xsl:element>
|
||||
</xsl:element>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:apply-templates select="facilitor"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
0
CUST/PLAT/export/NEN2767/.gitignore
vendored
Normal file
0
CUST/PLAT/export/NEN2767/.gitignore
vendored
Normal file
17
CUST/PLAT/export/gen_export_nen2767.bat
Normal file
17
CUST/PLAT/export/gen_export_nen2767.bat
Normal file
@@ -0,0 +1,17 @@
|
||||
REM PLAT
|
||||
REM
|
||||
REM
|
||||
REM Context : roep deze file aan indien nodig, of schedule deze
|
||||
REM Verseist: de randvoorwaarde voor het gebruik van gen_export
|
||||
REM
|
||||
REM $Revision$
|
||||
REM $Id$
|
||||
REM
|
||||
|
||||
|
||||
|
||||
REM ==== Export NEN2767 conditiescore + prioriteitsscore ======
|
||||
CALL ..\..\..\utils\gen_export\gen_export.bat NEN2767_COND_SCORE
|
||||
REM ========================== END ============================
|
||||
|
||||
|
||||
17
CUST/PLAT/export/gen_export_nen2767_aggr.bat
Normal file
17
CUST/PLAT/export/gen_export_nen2767_aggr.bat
Normal file
@@ -0,0 +1,17 @@
|
||||
REM PLAT
|
||||
REM
|
||||
REM
|
||||
REM Context : roep deze file aan indien nodig, of schedule deze
|
||||
REM Verseist: de randvoorwaarde voor het gebruik van gen_export
|
||||
REM
|
||||
REM $Revision$
|
||||
REM $Id$
|
||||
REM
|
||||
|
||||
|
||||
|
||||
REM == Export NEN2767 geaggregeerde conditiescore per locatie / gebouw ==
|
||||
CALL ..\..\..\utils\gen_export\gen_export.bat NEN2767_AGGR_SCORE
|
||||
REM ========================== END ======================================
|
||||
|
||||
|
||||
@@ -119,7 +119,7 @@
|
||||
margin: 1px 0 6px 0;
|
||||
}
|
||||
|
||||
h4, p {
|
||||
h4 {
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
}
|
||||
@@ -145,6 +145,13 @@
|
||||
text-align: right !important;
|
||||
}
|
||||
|
||||
.tdnw {
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.tdtd { /* date */
|
||||
white-space: nowrap;
|
||||
}
|
||||
@@ -318,11 +325,11 @@
|
||||
<th>
|
||||
<xsl:attribute name="colspan"><xsl:value-of select="$aantal_kolommen"/></xsl:attribute>
|
||||
<table width="100%" border="0px" cellpadding="5" cellspacing="2" style="table-layout:fixed;">
|
||||
<col width="60px"/>
|
||||
<col width="200px"/>
|
||||
<col width="100%"/>
|
||||
<col width="60px"/>
|
||||
<col width="99px"/>
|
||||
<col style="width: 16mm"/>
|
||||
<col style="width: 70mm"/>
|
||||
<col style="max-width: 100%"/>
|
||||
<col style="width: 16mm"/>
|
||||
<col style="width: 30mm"/>
|
||||
<tr>
|
||||
<td class="tdhs" style="text-align:left;align:left;width:200px"></td>
|
||||
<td class="tdhs" style="text-align:left;align:left"></td>
|
||||
@@ -335,11 +342,11 @@
|
||||
<td rowspan="3" colspan="2" style="text-align:left;padding-bottom:1px;padding-top:1px">
|
||||
<xsl:element name="img">
|
||||
<xsl:attribute name="src">../../cust/<xsl:value-of select="//header/custId"/>/tmpl_logo3.gif</xsl:attribute>
|
||||
<xsl:attribute name="height">30px</xsl:attribute>
|
||||
<xsl:attribute name="height">32px</xsl:attribute>
|
||||
</xsl:element>
|
||||
<xsl:element name="img">
|
||||
<xsl:attribute name="src">../../cust/<xsl:value-of select="//header/custId"/>/tmpl_logo.gif</xsl:attribute>
|
||||
<xsl:attribute name="height">30px</xsl:attribute>
|
||||
<xsl:attribute name="height">32px</xsl:attribute>
|
||||
</xsl:element>
|
||||
</td>
|
||||
<xsl:if test="$periode!=''">
|
||||
@@ -1178,8 +1185,8 @@
|
||||
</xsl:call-template>
|
||||
|
||||
<!-- Totaal contractwaarde per accountcode -->
|
||||
<xsl:variable name="v_gecontracteerd_exc" select="sum(//data_row[ACCOUNTCODE=$v_accountcode]/MLD_OPDR_KOSTEN)"/>
|
||||
<xsl:variable name="v_gecontracteerd_btw" select="sum(//data_row[ACCOUNTCODE=$v_accountcode]/MLD_OPDR_KOSTEN_BTW)"/>
|
||||
<xsl:variable name="v_gecontracteerd_exc" select="sum(//data_row[ACCOUNTCODE=$v_accountcode and CONTRACTWAARDE=1]/MLD_OPDR_KOSTEN)"/>
|
||||
<xsl:variable name="v_gecontracteerd_btw" select="sum(//data_row[ACCOUNTCODE=$v_accountcode and CONTRACTWAARDE=1]/MLD_OPDR_KOSTEN_BTW)"/>
|
||||
<xsl:variable name="v_gecontracteerd_inc" select="$v_gecontracteerd_exc + $v_gecontracteerd_btw"/>
|
||||
<tr class="subt2">
|
||||
<td colspan="5"></td>
|
||||
@@ -1207,8 +1214,8 @@
|
||||
<xsl:with-param name="p_hight" select="2"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:variable name="v_contract_exc" select="sum(//data_row/MLD_OPDR_KOSTEN)"/>
|
||||
<xsl:variable name="v_contract_btw" select="sum(//data_row/MLD_OPDR_KOSTEN_BTW)"/>
|
||||
<xsl:variable name="v_contract_exc" select="sum(//data_row[CONTRACTWAARDE=1]/MLD_OPDR_KOSTEN)"/>
|
||||
<xsl:variable name="v_contract_btw" select="sum(//data_row[CONTRACTWAARDE=1]/MLD_OPDR_KOSTEN_BTW)"/>
|
||||
<xsl:variable name="v_contract_inc" select="$v_contract_exc + $v_contract_btw"/>
|
||||
|
||||
<xsl:variable name="v_factuur_exc" select="sum(//data_row/FIN_FACTUUR_TOTAAL)"/>
|
||||
@@ -1785,25 +1792,25 @@
|
||||
<xsl:variable name="v_ordernr" select="MLD_OPDR_ORDERNR"/>
|
||||
|
||||
<tr class="header">
|
||||
<td class="tdtl tdb"><xsl:value-of select="SCODE"/></td>
|
||||
<td class="tdtl 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>
|
||||
<td class="tdtl tdb" ><xsl:value-of select="SCODE"/></td>
|
||||
<td class="tdtl 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 and PRS_BEDRIJF_KEY=$v_bedrijf_key and MLD_OPDR_ORDERNR=$v_ordernr]">
|
||||
<xsl:sort select="MLD_OPDR_BEDRIJFOPDR_VOLGNR" data-type="number"/>
|
||||
<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>
|
||||
<td class="tdtl"><xsl:value-of select="MLD_OPDR_ID"/></td>
|
||||
<td class="tdtd"><xsl:value-of select="MLD_OPDR_DATUMBEGIN_P"/></td>
|
||||
<td class="tdtr"><xsl:value-of select="format-number(RAMING, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtr"><xsl:value-of select="format-number(GECONTRACTEERD, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtr tdpr"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtl"><xsl:value-of select="MLD_STATUSOPDR_OMS"/></td>
|
||||
<td class="tdtl"> <p style="width: 10mm;"> </p></td>
|
||||
<td class="tdtr tdpr"><p style="width: 10mm;"><xsl:value-of select="MLD_OPDR_BEDRIJFOPDR_VOLGNR"/></p></td>
|
||||
<td class="tdtl"> <p class="tdnw" style="width: 75mm;"><xsl:value-of select="MLD_OPDR_OMSCHRIJVING"/></p></td>
|
||||
<td class="tdtl"> <p class="tdnw" style="width: 25mm;"><xsl:value-of select="MLD_OPDR_ID"/></p></td>
|
||||
<td class="tdtd"> <p style="width: 18mm;"><xsl:value-of select="MLD_OPDR_DATUMBEGIN_P"/></p></td>
|
||||
<td class="tdtr"> <p style="width: 18mm;"><xsl:value-of select="format-number(RAMING, '#.##0,00', 'euro')"/></p></td>
|
||||
<td class="tdtr"> <p style="width: 18mm;"><xsl:value-of select="format-number(GECONTRACTEERD, '#.##0,00', 'euro')"/></p></td>
|
||||
<td class="tdtr tdpr"><p style="width: 18mm;"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL, '#.##0,00', 'euro')"/></p></td>
|
||||
<td class="tdtl"> <p style="width: 18mm;"><xsl:value-of select="MLD_STATUSOPDR_OMS"/></p></td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
|
||||
@@ -1921,7 +1928,7 @@
|
||||
|
||||
<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 tdtd"><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>
|
||||
@@ -2533,8 +2540,8 @@
|
||||
<tr class="thr">
|
||||
<th class="th3">Code</th>
|
||||
<th class="th3">Datum</th>
|
||||
<th class="th3">Factuur<br/>nummer</th>
|
||||
<th class="th3">Contractant</th>
|
||||
<th class="th3">Factuur<br/>nummer</th>
|
||||
<th class="th3">Omschrijving</th>
|
||||
<th class="th3 tdtr">Bedrag<br/>excl. btw</th>
|
||||
<th class="th3 tdtr">BTW</th>
|
||||
@@ -2545,7 +2552,7 @@
|
||||
<xsl:text disable-output-escaping="yes"><tbody></xsl:text>
|
||||
|
||||
<tr><td class="tdtl" colspan="8"> </td></tr>
|
||||
<xsl:for-each select="//data_row">
|
||||
<xsl:for-each select="//data_row[FACTUURSTATUS = 6]">
|
||||
<xsl:sort select="FACTUURDATUM"/>
|
||||
<xsl:variable name="v_bedrag_exc" select="BEDRAGEXCL"/>
|
||||
<xsl:variable name="v_bedrag_btw" select="BEDRAGBTW"/>
|
||||
@@ -2554,8 +2561,8 @@
|
||||
<tr>
|
||||
<td><xsl:value-of select="SCODE"/></td>
|
||||
<td class="nowrap"><xsl:value-of select="FACTUURDATUM_P"/></td>
|
||||
<td class="nowrap"><xsl:value-of select="FACTUURNR"/></td>
|
||||
<td class="nowrap"><xsl:value-of select="CONTRACTANT"/></td>
|
||||
<td class="nowrap"><xsl:value-of select="FACTUURNR"/></td>
|
||||
<td class="nowrap"><xsl:value-of select="OPMERKING"/></td>
|
||||
<td class="tdtr"><xsl:value-of select="format-number($v_bedrag_exc, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtr"><xsl:value-of select="format-number($v_bedrag_btw, '#.##0,00', 'euro')"/></td>
|
||||
@@ -2564,8 +2571,8 @@
|
||||
</xsl:for-each>
|
||||
<tr><td class="tdtl" colspan="8"> </td></tr>
|
||||
|
||||
<xsl:variable name="v_bedrag_totaal_exc" select="sum(//data_row/BEDRAGEXCL)"/>
|
||||
<xsl:variable name="v_bedrag_totaal_btw" select="sum(//data_row/BEDRAGBTW)"/>
|
||||
<xsl:variable name="v_bedrag_totaal_exc" select="sum(//data_row[FACTUURSTATUS = 6]/BEDRAGEXCL)"/>
|
||||
<xsl:variable name="v_bedrag_totaal_btw" select="sum(//data_row[FACTUURSTATUS = 6]/BEDRAGBTW)"/>
|
||||
<xsl:variable name="v_bedrag_totaal_inc" select="$v_bedrag_totaal_exc + $v_bedrag_totaal_btw"/>
|
||||
<tr class="subt2 trblk">
|
||||
<td colspan="4"></td>
|
||||
@@ -2818,6 +2825,7 @@
|
||||
<xsl:with-param name="p_prs_leverancier_nr" select="$p_prs_leverancier_nr"/>
|
||||
<xsl:with-param name="p_soortcode" select="$p_soortcode"/>
|
||||
<xsl:with-param name="p_mld_ordernr" select="$p_mld_ordernr"/>
|
||||
<xsl:with-param name="p_opdr_meerwerk" select="MLD_OPDR_MEERWERK"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:variable name="v_facturen_exc" select="sum(//data_row[PRS_LEVERANCIER_NR=$p_prs_leverancier_nr and SCODE=$p_soortcode and MLD_OPDR_ORDERNR=$v_mld_ordernr]/FIN_FACTUUR_TOTAAL)"/>
|
||||
@@ -2850,34 +2858,43 @@
|
||||
<xsl:param name="p_prs_leverancier_nr"/>
|
||||
<xsl:param name="p_soortcode"/>
|
||||
<xsl:param name="p_mld_ordernr"/>
|
||||
<xsl:param name="p_opdr_meerwerk"/>
|
||||
|
||||
<xsl:for-each select="//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and SCODE = $p_soortcode and MLD_OPDR_ORDERNR = $p_mld_ordernr and FIN_FACTUUR_NR != '']">
|
||||
<xsl:sort select="FACTUURDATUM"/>
|
||||
<xsl:sort select="FIN_FACTUUR_NR"/>
|
||||
<xsl:if test="$p_opdr_meerwerk=1">
|
||||
<xsl:variable name="v_fin_factuur_totaal" select="sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and SCODE = $p_soortcode and MLD_OPDR_ORDERNR = $p_mld_ordernr and FIN_FACTUUR_NR != '']/FIN_FACTUUR_TOTAAL)"/>
|
||||
<xsl:variable name="v_fin_factuur_totaal_btw" select="sum(//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and SCODE = $p_soortcode and MLD_OPDR_ORDERNR = $p_mld_ordernr and FIN_FACTUUR_NR != '']/FIN_FACTUUR_TOTAAL_BTW)"/>
|
||||
<xsl:variable name="v_fin_factuur_totaal_tot" select="$v_fin_factuur_totaal + $v_fin_factuur_totaal_btw"/>
|
||||
|
||||
<!--MVH:tr>
|
||||
<td class="tdt1"></td>
|
||||
<td class="tdt"><p><xsl:value-of select="FACTUURDATUM_P"/></p></td>
|
||||
<td class="tdt"><p><xsl:value-of select="FIN_FACTUUR_NR"/></p></td>
|
||||
<td class="tdt tdte"><p><xsl:value-of select="FIN_FACTUUR_OPMERKING"/></p></td>
|
||||
<td class="tdt"></td>
|
||||
<td class="tdtr"><p><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL, '#.##0,00', 'euro')"/></p></td>
|
||||
<td class="tdtr"><p><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL_BTW, '#.##0,00', 'euro')"/></p></td>
|
||||
<td class="tdtr"><p><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL+FIN_FACTUUR_TOTAAL_BTW, '#.##0,00', 'euro')"/></p></td>
|
||||
<td class="tdtr"><p><xsl:value-of select="ADVIESDATUM_P"/></p></td>
|
||||
</tr-->
|
||||
<tr>
|
||||
<td class="h3"></td>
|
||||
<td class="nowrap h3"><xsl:value-of select="FACTUURDATUM_P"/></td>
|
||||
<td class="h3"><xsl:value-of select="FIN_FACTUUR_NR"/></td>
|
||||
<td class="tdte h3"><xsl:value-of select="FIN_FACTUUR_OPMERKING"/></td>
|
||||
<td class="h3"></td>
|
||||
<td class="tdtr h3"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtr h3"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL_BTW, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtr h3"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL+FIN_FACTUUR_TOTAAL_BTW, '#.##0,00', 'euro')"/></td>
|
||||
<td class="nowrap h3" style="text-align:center;"><xsl:value-of select="ADVIESDATUM_P"/></td>
|
||||
<td class="nowrap h3"> </td>
|
||||
<td class="h3"> </td>
|
||||
<td class="tdte h3">* totaal gefactureerd</td>
|
||||
<td class="h3"> </td>
|
||||
<td class="tdtr h3"><xsl:value-of select="format-number($v_fin_factuur_totaal, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtr h3"><xsl:value-of select="format-number($v_fin_factuur_totaal_btw, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtr h3"><xsl:value-of select="format-number($v_fin_factuur_totaal_tot, '#.##0,00', 'euro')"/></td>
|
||||
<td class="nowrap h3" style="text-align:center;"> </td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</xsl:if>
|
||||
<xsl:if test="$p_opdr_meerwerk=0">
|
||||
<xsl:for-each select="//data_row[PRS_LEVERANCIER_NR = $p_prs_leverancier_nr and SCODE = $p_soortcode and MLD_OPDR_ORDERNR = $p_mld_ordernr and FIN_FACTUUR_NR != '']">
|
||||
<xsl:sort select="FACTUURDATUM"/>
|
||||
<xsl:sort select="FIN_FACTUUR_NR"/>
|
||||
|
||||
<tr>
|
||||
<td class="h3"></td>
|
||||
<td class="nowrap h3"><xsl:value-of select="FACTUURDATUM_P"/></td>
|
||||
<td class="h3"><xsl:value-of select="FIN_FACTUUR_NR"/></td>
|
||||
<td class="tdte h3"><xsl:value-of select="FIN_FACTUUR_OPMERKING"/></td>
|
||||
<td class="h3"></td>
|
||||
<td class="tdtr h3"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtr h3"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL_BTW, '#.##0,00', 'euro')"/></td>
|
||||
<td class="tdtr h3"><xsl:value-of select="format-number(FIN_FACTUUR_TOTAAL+FIN_FACTUUR_TOTAAL_BTW, '#.##0,00', 'euro')"/></td>
|
||||
<td class="nowrap h3" style="text-align:center;"><xsl:value-of select="ADVIESDATUM_P"/></td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="DISPLAY_CONTRACTEN_ACC">
|
||||
@@ -3007,8 +3024,8 @@
|
||||
<xsl:template name="DISPLAY_FACTUREN_ACC_TOTAAL">
|
||||
<xsl:param name="p_accountcode"/>
|
||||
|
||||
<xsl:variable name="v_gecontracteerd_exc" select="sum(//data_row[ACCOUNTCODE=$p_accountcode]/MLD_OPDR_KOSTEN)"/>
|
||||
<xsl:variable name="v_gecontracteerd_btw" select="sum(//data_row[ACCOUNTCODE=$p_accountcode]/MLD_OPDR_KOSTEN_BTW)"/>
|
||||
<xsl:variable name="v_gecontracteerd_exc" select="sum(//data_row[ACCOUNTCODE=$p_accountcode and CONTRACTWAARDE=1]/MLD_OPDR_KOSTEN)"/>
|
||||
<xsl:variable name="v_gecontracteerd_btw" select="sum(//data_row[ACCOUNTCODE=$p_accountcode and CONTRACTWAARDE=1]/MLD_OPDR_KOSTEN_BTW)"/>
|
||||
<xsl:variable name="v_gecontracteerd_inc" select="$v_gecontracteerd_exc + $v_gecontracteerd_btw"/>
|
||||
|
||||
<xsl:variable name="v_factuur_exc"><xsl:value-of select="sum(//data_row[ACCOUNTCODE = $p_accountcode]/FIN_FACTUUR_TOTAAL)"/></xsl:variable>
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
@@ -29,6 +29,9 @@
|
||||
<method name="bez_postsave">
|
||||
<PARAMETER name="bezkeyArr"/>
|
||||
</method>
|
||||
<method name="fin_postsave">
|
||||
<PARAMETER name="fin_key"/>
|
||||
</method>
|
||||
</public>
|
||||
|
||||
<script language="javascript">
|
||||
@@ -64,6 +67,14 @@ bez_postsave = function (bezkeyArr, pResult)
|
||||
return true;
|
||||
}
|
||||
|
||||
fin_postsave = function (fin_key, pResult)
|
||||
{
|
||||
// Goedkeurder instellen
|
||||
var sql_fin = "BEGIN ykpn.fin_set_approver(" + fin_key + "); END;";
|
||||
Oracle.Execute(sql_fin);
|
||||
return true;
|
||||
}
|
||||
|
||||
]]>
|
||||
</script>
|
||||
</component>
|
||||
|
||||
Reference in New Issue
Block a user