20 Commits

Author SHA1 Message Date
Jos Groot Lipman
0f58213d04 Logtekst aanpassing bij weigeren inactieve persoon
svn path=/Website/branches/v2020.2/; revision=52204
2021-07-05 12:27:59 +00:00
Jos Groot Lipman
f443f9aaf3 KFST#67529 fac_activiteit_volgende bewerkbaar via 'elke tabel'
svn path=/Website/branches/v2020.2/; revision=52150
2021-06-30 11:48:57 +00:00
Jos Groot Lipman
9e2417ca06 FMHN#67600 Legenda bij infobord altijd compleet tonen ongeacht data in themaview
svn path=/Website/branches/v2020.2/; revision=52149
2021-06-30 09:06:22 +00:00
Alex Tiehuis
abe93a4b0c Merged revision(s) 52136 from Website/branches/v2020.2/APPL/PDA/res_plattegrond.asp:
YFTH#67584: Werkplek plattegrond op mobile toont verkeerde legenda

........

svn path=/Website/branches/v2020.2/; revision=52139
2021-06-29 14:27:56 +00:00
Alex Tiehuis
40fb563e1e YFTH#67584: Werkplek plattegrond op mobile toont verkeerde legenda
svn path=/Website/branches/v2020.2/; revision=52136
2021-06-29 14:12:34 +00:00
Alex Tiehuis
203fbca1c6 PCHD#67460: Melding maken lukt niet
svn path=/Website/branches/v2020.2/; revision=52061
2021-06-23 14:06:25 +00:00
Jos Groot Lipman
f5b359f62d FCLT#67514 Check_online.asp moet werken onafhankelijk van session("customerId")
svn path=/Website/branches/v2020.2/; revision=52055
2021-06-23 09:36:35 +00:00
Jos Groot Lipman
eb27a53e1e FCLT#67514 Check_online.asp moet werken onafhankelijk van session("customerId")
svn path=/Website/branches/v2020.2/; revision=52053
2021-06-23 09:34:05 +00:00
Alex Tiehuis
eee9ac119b FLEX#67422: Facilitor Flex beschikbaarheid niet juist
svn path=/Website/branches/v2020.2/; revision=52033
2021-06-22 09:18:08 +00:00
Marcel Bourseau
831a4c72fe MARX#66199: Opzetje/mock-up Mareon-API "Planproposals"/"Confimation"
svn path=/Website/branches/v2020.2/; revision=51838
2021-06-09 16:50:04 +00:00
Alex Tiehuis
0c0172ab13 IVET#67272: Beschikbare flex/hybride plekken PE083
svn path=/Website/branches/v2020.2/; revision=51815
2021-06-09 09:21:05 +00:00
Alex Tiehuis
1ebc2f906f YKPN#67254: Fout Teamarea's % met vervallen ruimtes
IVET#67272: Beschikbare flex/hybride plekken PE083

svn path=/Website/branches/v2020.2/; revision=51793
2021-06-07 13:33:15 +00:00
Alex Tiehuis
a4748c37aa YKPN#67254: Fout Teamarea's % met vervallen ruimtes
IVET#67272: Beschikbare flex/hybride plekken PE083

svn path=/Website/branches/v2020.2/; revision=51783
2021-06-07 10:24:58 +00:00
Jos Groot Lipman
1be2214be9 Release 2020.2 Gold I
svn path=/Website/branches/v2020.2/; revision=51751
2021-06-03 15:13:24 +00:00
Jos Groot Lipman
ccb6df73cc YASK#67210 Dubbele bijlagen naar topdesk: nu bijlagekey als attribute ondersteunen
svn path=/Website/branches/v2020.2/; revision=51735
2021-06-02 14:31:38 +00:00
Suzan Wiegerinck
1a5bc1e4da BONS#66800: PGB facturen naar maandfacturen
svn path=/Website/branches/v2020.2/; revision=51645
2021-05-27 14:27:30 +00:00
Suzan Wiegerinck
9da2136862 BONS#66800: PGB facturen naar maandfacturen
svn path=/Website/branches/v2020.2/; revision=51644
2021-05-27 13:54:42 +00:00
Alex Tiehuis
248e9a125b YASK#67068: Extra velden voor Email en kenteken komen niet automatisch in beeld
svn path=/Website/branches/v2020.2/; revision=51588
2021-05-25 10:20:31 +00:00
Alex Tiehuis
8b5e0ff7e3 FLEX#67051: Facilitor Flex beschikbaarheid niet juist
svn path=/Website/branches/v2020.2/; revision=51562
2021-05-20 11:24:06 +00:00
Jos Groot Lipman
6f8cf3f535 YKPN#66576 Interne persoon als bezoeker gaf soms AiAi
svn path=/Website/branches/v2020.2/; revision=51527
2021-05-19 07:19:40 +00:00
16 changed files with 542 additions and 80 deletions

View File

@@ -27,7 +27,7 @@ function doLogin(prs_key, params)
var oRs = Oracle.Execute(sql);
if (oRs.Eof)
{
__DoLog("Niet bestaande of verwijderde persoon " + prs_key + " geweigerd in doLogin.")
__DoLog("Niet bestaande, verwijderde of inactieve persoon " + prs_key + " geweigerd in doLogin.")
_AiAi("INTERNAL_ERROR_INVALID_LOGIN_" + prs_key);
}
var first_login = (oRs("prs_perslid_login").Value == null);

View File

@@ -148,6 +148,7 @@ else
{
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
$("#prktype").on("changed", showRequireAll); // trigger showRequireAll when parking info has changed
onChangeGebouw();
get_freeprk_info();
});
@@ -360,4 +361,4 @@ else
</div>
</body>
</html>
<% ASPPAGE_END(); %>
<% ASPPAGE_END(); %>

View File

@@ -56,6 +56,7 @@ function process_gebouw_info(data, textStatus)
{
// save show/require info for the selected building
$("#prktype").attr({toon_telefoon: data.alg_gebouw_toon_telefoon, toon_email: data.alg_gebouw_toon_email, toon_kenteken: data.alg_gebouw_toon_kenteken});
$("#prktype").trigger("changed");
get_freeprk_info();
// Kijk of de bezoekers begin en eindtijd aangepast dient te worden.
var fromempty = timeBeginInitEmpty && $("#time_from_date_from").val() == ""? 1 : 0;
@@ -316,7 +317,7 @@ function BezoekerSelected(data, orgData)
if (data.contkey)
$("#contkey" + rowNr).val(data.contkey);
if (data.prskey)
if (data.prskey > 0)
{
$("#prskey" + rowNr).val(data.prskey);
if (data.get_email)

View File

@@ -496,20 +496,7 @@ function bez_edit_bezoekers(afspraak_key, afspraak_begin, afspraak_eind, loc_key
<% if (params.contactonly) { /* automatisch contactpersonificeren */ %>
makeContactSuggest();
<% } %>
showRequireAllDelay(10);
}
function showRequireAllDelay(count)
{
getToonInfo();
if (toon_telefoon == undefined && count > 0)
{
setTimeout(function() {showRequireAllDelay(--count);}, 150);
return;
}
else
{
showRequireAll(); // bez.js, shows/hides and requires/not requires fields
}
showRequireAll();
}
</script>
<%

View File

@@ -356,7 +356,7 @@ var /*global*/ resizeTimerID=null;
window.resizeTimerID = setTimeout(resizeIframes, 100);// use a delay for IE because the resize event fires repeatly
}
<% if (thema_key > 0 || themai_key > 0) { %>
$("#fslegenda").load("legenda.asp?thema=<%=thema_key%>&themai=<%=themai_key%>&scenario_key=0&parentKey="+floor_key+"&mode=0&LegendaFilter=L<%= datumfilter?'&datumfilter='+datumfilter.getTime():'' %>");
$("#fslegenda").load("legenda.asp?thema=<%=thema_key%>&themai=<%=themai_key%>&scenario_key=0&parentKey="+floor_key+"&mode=0&fulldiscreet=1&LegendaFilter=L<%= datumfilter?'&datumfilter='+datumfilter.getTime():'' %>");
<% } %>
}

View File

@@ -30,6 +30,7 @@
var scenario_key = getQParamInt("scenario_key"); // current scenario, 0 voor geen
var LegendaFilter = getQParam("LegendaFilter", "V"); // "V"/"L"/"*"
var datumfilter = getQParamDate("datumfilter", null);
var fulldiscreet = getQParamInt("fulldiscreet", 0) == 1;
var forPrint = getQParamInt("forPrint", 0);
var outputmode = (forPrint == 0 ? 0 : 1);
%>
@@ -174,7 +175,14 @@
+ " where th.alg_terreinsector_key = ar.alg_terreinsector_key"
+ " and alg_locatie_key = " + pvKey;
}
if (discreet)
if (fulldiscreet) // discreet-->alle waarden ongeacht voorkomen
sql = "SELECT DISTINCT "+ lcl.xsqla('ti.CAD_LEGENDAWAARDE_OMSCHR','ti.cad_legendawaarde_key')
+ " , ti.CAD_LEGENDAWAARDE_RGB"
+ " FROM CAD_LEGENDAWAARDE ti"
+ " WHERE ti.CAD_LEGENDA_KEY = " + legenda_key
+ " ORDER BY CAD_LEGENDAWAARDE_OMSCHR";
else if (discreet) // alleen voorkomende waarden
sql = "SELECT "+ lcl.xsqla('ti.CAD_LEGENDAWAARDE_OMSCHR','ti.cad_legendawaarde_key')
+ ", ti.CAD_LEGENDAWAARDE_RGB, TH2.WAARDE_KEY, COUNT(*) aantal"
+ " FROM CAD_LEGENDAWAARDE ti, (" + waardenSQL + ") TH2 "
@@ -184,8 +192,8 @@
+ " ORDER BY CAD_LEGENDAWAARDE_OMSCHR";
else // Niet discreet-->alle waarden ongeacht voorkomen
sql = "SELECT DISTINCT "+ lcl.xsqla('ti.CAD_LEGENDAWAARDE_OMSCHR','ti.cad_legendawaarde_key')
+ ", ti.CAD_LEGENDAWAARDE_RGB, "
+ " fac.safe_to_number(CAD_LEGENDAWAARDE_VALUE)"
+ " , ti.CAD_LEGENDAWAARDE_RGB "
+ " , fac.safe_to_number(CAD_LEGENDAWAARDE_VALUE)"
+ " FROM CAD_LEGENDAWAARDE ti"
+ " WHERE ti.CAD_LEGENDA_KEY = " + legenda_key
+ " ORDER BY fac.safe_to_number(CAD_LEGENDAWAARDE_VALUE)" // Numeriek sorteren!
@@ -225,7 +233,8 @@
v_waarde_key = null;
v_waarde = oRs.Fields("CAD_LEGENDAWAARDE_OMSCHR").value;
v_kleur = oRs.Fields("CAD_LEGENDAWAARDE_RGB").value.replace(/ /g,'');
if (discreet) {
if (discreet && !fulldiscreet)
{
v_count = " (" + oRs.Fields("aantal").value + "x)";
v_waarde_key = oRs.Fields("waarde_key").value;
}
@@ -253,4 +262,4 @@
<% if (forPrint) { %>
</body>
<% } %>
<% ASPPAGE_END(); %>
<% ASPPAGE_END(); %>

View File

@@ -1108,7 +1108,7 @@
<xsl:apply-templates select="." mode="zorgaanbieder"/>
</xsl:for-each>
</xsl:if>
<xsl:if test="@view = 'care_v_rap_factuur_pgb_a' or @view = 'care_v_rap2_factuur_pgb_a'">
<xsl:if test="@view = 'care_v_rap_factuur_pgb_a' or @view = 'care_v_rap2_factuur_pgb_a' or @view = 'care_v_rap2_factuur_pgb_a_mnd'">
<xsl:for-each select="//facilitor/rapport/rapport_data/data_row[generate-id(.)=generate-id(key('bsn',BSN_CLIENT)[1])]">
@@ -1736,9 +1736,17 @@
</tr>
<tr>
<td/>
<td>Periode:</td>
<td><xsl:value-of select="PERIODE_NR"/>-<xsl:value-of select="JAAR"/></td>
<td/>
<td>Periode:</td>
<xsl:choose>
<xsl:when test="string(PERIODE_NR) != ''">
<td>
<xsl:value-of select="PERIODE_NR"/>-<xsl:value-of select="JAAR"/>
</td>
</xsl:when>
<xsl:otherwise>
<td><xsl:value-of select="MAAND_OMSCHR_NR"/></td>
</xsl:otherwise>
</xsl:choose>
<td/>
</tr>
<tr height="20px">

View File

@@ -67,7 +67,7 @@ xsi:schemaLocation="http://www.ketenstandaard.nl/planningsverzoek/SALES/005 Plan
<Timeblock>
<EarliestExecutionTime>13:00:00</EarliestExecutionTime>
<LatestExecutionTime>16:00:00</LatestExecutionTime>
</Timeblock>
</Timeblock>
</TimeblocksPerWeekday>
<TimeblocksPerWeekday>
<Weekday>TUE</Weekday>
@@ -95,7 +95,7 @@ xsi:schemaLocation="http://www.ketenstandaard.nl/planningsverzoek/SALES/005 Plan
Van belang zijn de volgende gegevens:
PlanningRequestNumber --> v_PlanningRequestNumber (gaat als antwoord retour, zie XML hieronder)
Contractor/GLN --> v_bedrijf_key van leverancier, deze zal dezelfde (moeten) zijn als waar de 'userkey' contactpersoon is van dit bedrijf.
Contractor/GLN --> v_bedrijf_key van leverancier, deze zal dezelfde (moeten) zijn als waar de 'user_key' contactpersoon is van dit bedrijf.
CompetenceCode --> v_prs_srtperslid_upper (ELE/SCH/LOO/...)
MaintenanceMoment/EarliestExecutionDate --> v_date_start (zoek vanaf deze datum)
MaintenanceMoment/LatestExecutionDate --> v_date_end (zoek t/m deze datum)
@@ -160,6 +160,240 @@ function xmlNodeVal(xml, strQuery)
return null;
}
function marx_plan_get_request_nr (p_xml)
{ var l_req_nr;
var l_xml_query = "//pln_nspace:PlanningRequestNumber";
var l_req_nr = xmlNodeVal(p_xml, l_xml_query);
return (l_req_nr);
}
function marx_plan_get_response_nr (p_xml)
{ var l_rsp_nr;
var l_xml_query = "//pln_nspace:PlanningResponseNumber";
var l_rsp_nr = xmlNodeVal(p_xml, l_xml_query);
return (l_rsp_nr);
}
function marx_plan_get_sysdate ()
{ var l_sysdate
var sql = "SELECT to_char(SYSDATE,'yyyy-mm-dd HH24:mi:ss') l_sysdate FROM DUAL";
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
l_sysdate = oRs("l_sysdate").Value;
}
oRs.close();
return (l_sysdate);
}
function marx_plan_get_buyer_gln (p_xml)
{ var l_gln;
var l_xml_query = "//pln_nspace:Buyer/pln_nspace:GLN";
var l_gln = xmlNodeVal(p_xml, l_xml_query);
return (l_gln);
}
function marx_plan_get_prs_woco_key (p_xml)
{ var l_prs_bedrijf_key;
var l_gln = marx_plan_get_buyer_gln(p_xml);
if (l_gln){
var sql = "SELECT prs_bedrijf_key"
+ " FROM prs_bedrijf"
+ " WHERE prs_bedrijf_verwijder IS NULL"
+ " AND prs_leverancier_nr = " + safe.quoted_sql(l_gln);
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
l_prs_bedrijf_key = oRs("prs_bedrijf_key").Value;
}
oRs.close();
}
return (l_prs_bedrijf_key);
}
function marx_plan_get_contractor_gln (p_xml)
{ var l_gln;
var l_xml_query = "//pln_nspace:Contractor/pln_nspace:GLN";
var l_gln = xmlNodeVal(p_xml, l_xml_query);
return (l_gln);
}
function marx_plan_get_prs_bedrijf_key (p_xml)
{ var l_prs_bedrijf_key;
var l_gln = marx_plan_get_contractor_gln(p_xml);
if (l_gln){
var sql = "SELECT prs_bedrijf_key"
+ " FROM prs_bedrijf"
+ " WHERE prs_bedrijf_verwijder IS NULL"
+ " AND prs_leverancier_nr = " + safe.quoted_sql(l_gln);
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
l_prs_bedrijf_key = oRs("prs_bedrijf_key").Value;
}
oRs.close();
}
return (l_prs_bedrijf_key);
}
function marx_plan_bedrijf_key_is_oke (p_prs_bedrijf_key, p_userkey)
{ var l_result = 0; // false
if (p_userkey && p_prs_bedrijf_key){
var sql = "SELECT b.prs_bedrijf_key"
+ " FROM prs_bedrijf b"
+ " WHERE prs_bedrijf_key = " + p_prs_bedrijf_key
+ " AND EXISTS (SELECT 'x' FROM prs_contactpersoon p"
+ " WHERE p.prs_bedrijf_key = b.prs_bedrijf_key"
+ " AND p.prs_perslid_key = " + p_userkey + ")";
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
l_result = 1;
}
oRs.close();
}
return (l_result);
}
function marx_get_dummy_res_rsv_ruimte_contact_key (p_res_rsv_ruimte_key_str)
{ var l_contact_key;
if (p_res_rsv_ruimte_key_str){
var sql = "SELECT res_rsv_ruimte_contact_key FROM res_rsv_ruimte WHERE res_rsv_ruimte_key=fac.safe_to_number(" + safe.quoted_sql(l_res_rsv_ruimte_key_str) + ")";
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
l_contact_key = oRs("res_rsv_ruimte_contact_key").Value;
}
oRs.close();
}
return (l_contact_key);
}
function marx_plan_get_api_user_key (p_bedrijf_key)
{ var l_api_user_key;
if (p_bedrijf_key){
var sql = "SELECT marx_get_api_user(" + p_bedrijf_key + ") prs_perslid_key FROM DUAL";
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
l_api_user_key = oRs("prs_perslid_key").Value;
}
oRs.close();
}
return (l_api_user_key);
}
function marx_plan_get_competentie_code (p_xml)
{ var l_competentie_code;
var l_xml_query = "//pln_nspace:Competence/pln_nspace:CompetenceCode";
var l_competentie_code = xmlNodeVal(p_xml, l_xml_query);
return (l_competentie_code);
}
function marx_plan_get_srtperslid_omschr (p_competentie_code)
{ var l_srtperslid_omschr;
if (p_competentie_code){
var sql = "SELECT marx_get_prs_srtperslid_sales005(" + safe.quoted_sql(p_competentie_code) + ") prs_srtperslid_omschrijving FROM DUAL";
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
l_srtperslid_omschr = oRs("prs_srtperslid_omschrijving").Value;
}
oRs.close();
}
return (l_srtperslid_omschr);
}
function marx_plan_get_startdatum (p_xml)
{ var l_startdatum;
var l_xml_query = "//pln_nspace:MaintenanceMoment/pln_nspace:EarliestExecutionDate";
var l_startdatum = xmlNodeVal(p_xml, l_xml_query); // yyyy-m-dd
return (l_startdatum);
}
function marx_plan_get_einddatum (p_xml)
{ var l_einddatum;
var l_xml_query = "//pln_nspace:MaintenanceMoment/pln_nspace:LatestExecutionDate";
var l_einddatum = xmlNodeVal(p_xml, l_xml_query); // yyyy-m-dd
return (l_einddatum);
}
function marx_plan_get_duration_minutes (p_xml)
{ var l_duration_minutes;
var l_xml_query = "//pln_nspace:Duration";
var l_duration = xmlNodeVal(p_xml, l_xml_query); // formaat PnYnMnDTnHnM, bv P0Y0M0DT1H0M
__Log("l_duration:" + l_duration);
var l_dur_M = l_duration.substring(l_duration.indexOf("H")+1, l_duration.lastIndexOf("M"));
var l_dur_H = l_duration.substring(l_duration.indexOf("T")+1, l_duration.lastIndexOf("H"));
var l_dur_D = l_duration.substring(l_duration.indexOf("M")+1, l_duration.lastIndexOf("D"));
//De Y(ear) en M(onth) ondersteuen we (nog) niet...
__Log("l_dur_M:" + l_dur_M);
__Log("l_dur_H:" + l_dur_H);
__Log("l_dur_D:" + l_dur_D);
l_duration_minutes = (parseInt(l_dur_D,10) * 24 * 60) + (parseInt(l_dur_H,10) * 60) + parseInt(l_dur_M,10);
return (l_duration_minutes);
}
function marx_plan_get_interval_minutes (p_xml)
{ var l_interval_minutes;
l_interval_minutes = 0;
return (l_interval_minutes);
}
function marx_plan_get_alltime_intervals (p_xml, p_dag)
{
var l_result = "";
var l_xml_query = "//pln_nspace:MaintenanceMoment/pln_nspace:TimeblocksPerWeekday[pln_nspace:Weekday='" + p_dag + "']";
var l_node = xmlNodeVal(p_xml, l_xml_query);
if (l_node)
{ // De "dag" node bestaat, en gaat voor op de algemene node
var timeblock_nodes = p_xml.selectNodes(l_xml_query + "/pln_nspace:Timeblock");
for (var i = 0; i < timeblock_nodes.length; i++)
{
var timeblock_node = timeblock_nodes.item(i);
var l_time1 = xmlNodeVal(timeblock_node, "pln_nspace:EarliestExecutionTime");
var l_time2 = xmlNodeVal(timeblock_node, "pln_nspace:LatestExecutionTime");
l_result = l_result + l_time1 + "-" + l_time2 + ";"
}
}
else
{ // De "dag" node bestaat NIET, als de algemene node er is, dan telt deze tijd
var l_xml_query = "//pln_nspace:MaintenanceMoment";
var timeblock_nodes = p_xml.selectNodes(l_xml_query + "/pln_nspace:Timeblock");
for (var i = 0; i < timeblock_nodes.length; i++)
{
var timeblock_node = timeblock_nodes.item(i);
var l_time1 = xmlNodeVal(timeblock_node, "pln_nspace:EarliestExecutionTime");
var l_time2 = xmlNodeVal(timeblock_node, "pln_nspace:LatestExecutionTime");
l_result = l_result + l_time1 + "-" + l_time2 + ";"
}
}
return (l_result);
}
function marx_plan_get_aant_opties (p_xml)
{ var l_aant_opties;
var l_xml_query = "//pln_nspace:NumberOfPlanningOptions";
var l_aant_opties = xmlNodeVal(p_xml, l_xml_query);
return (l_aant_opties);
}
function marx_plan_get_starttime (p_xml)
{ var l_starttime;
var l_xml_query = "//pln_nspace:MaintenanceMoment/pln_nspace:Timeblock/pln_nspace:EarliestExecutionTime";
var l_starttime = xmlNodeVal(p_xml, l_xml_query);
return (l_starttime);
}
function marx_plan_get_endtime (p_xml)
{ var l_endtime;
var l_xml_query = "//pln_nspace:MaintenanceMoment/pln_nspace:Timeblock/pln_nspace:LatestExecutionTime";
var l_endtime = xmlNodeVal(p_xml, l_xml_query);
return (l_endtime);
}
// --------- START --------- START --------- START --------- START --------- START --------- START --------- START --------- START --------- START --------- START
@@ -170,38 +404,155 @@ function xmlNodeVal(xml, strQuery)
var xmlReq = styledRequestXML(API); // Deze eventuele stylesheet is hier onafhankelijk van het
// aanvragende systeem (user_key) en niet direct zinvol (gebruik identity)
xmlReq.setProperty ("SelectionNamespaces", "xmlns:sales_verzoek='http://www.ketenstandaard.nl/planningsverzoek/SALES/005'");
xmlReq.setProperty ("SelectionNamespaces", "xmlns:pln_nspace='http://www.ketenstandaard.nl/planningsverzoek/SALES/005'");
if (xmlNodeVal(xmlReq, "//sales_verzoek:PlanningRequest")){
var v_msgtype = 'PLNRSP';
var sql = "select marx_get_planproposals(NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL) planproposals from dual";
if (xmlNodeVal(xmlReq, "//pln_nspace:PlanningRequest")){
var v_msgtype = "PLNRSP";
var l_prs_woco_key = marx_plan_get_prs_woco_key(xmlReq);
var l_prs_bedrijf_key = marx_plan_get_prs_bedrijf_key(xmlReq);
__Log("l_prs_bedrijf_key:" + l_prs_bedrijf_key);
__Log("user_key:" + user_key);
var l_bedrijf_is_oke = marx_plan_bedrijf_key_is_oke(l_prs_bedrijf_key, user_key);
__Log("l_bedrijf_is_oke:" + l_bedrijf_is_oke);
var l_req_nr = marx_plan_get_request_nr(xmlReq);
var l_rsp_nr = l_req_nr;
__Log("l_req_nr:" + l_req_nr);
var l_gln_buyer = marx_plan_get_buyer_gln(xmlReq);
__Log("l_gln_buyer:" + l_gln_buyer);
var l_gln_contractor = marx_plan_get_contractor_gln(xmlReq);
__Log("l_gln_contractor:" + l_gln_contractor);
if (l_bedrijf_is_oke){
var l_competentie_code = marx_plan_get_competentie_code(xmlReq);
__Log("l_competentie_code:" + l_competentie_code);
var l_srtperslid_omschr = marx_plan_get_srtperslid_omschr(l_competentie_code);
__Log("l_srtperslid_omschr:" + l_srtperslid_omschr);
var l_startdatum = marx_plan_get_startdatum(xmlReq);
__Log("l_startdatum:" + l_startdatum);
var l_einddatum = marx_plan_get_einddatum(xmlReq);
__Log("l_einddatum:" + l_einddatum);
var l_duration_minutes = marx_plan_get_duration_minutes(xmlReq);
__Log("l_duration_minutes:" + l_duration_minutes);
var l_interval_minutes = marx_plan_get_interval_minutes(xmlReq);
__Log("l_interval_minutes:" + l_interval_minutes);
var l_aant_opties = marx_plan_get_aant_opties(xmlReq);
__Log("l_aant_opties:" + l_aant_opties);
var l_mon_times = marx_plan_get_alltime_intervals(xmlReq, "MON");
__Log("l_mon_times:" + l_mon_times);
var l_tue_times = marx_plan_get_alltime_intervals(xmlReq, "TUE");
__Log("l_tue_times:" + l_tue_times);
var l_wed_times = marx_plan_get_alltime_intervals(xmlReq, "WED");
__Log("l_wed_times:" + l_wed_times);
var l_thu_times = marx_plan_get_alltime_intervals(xmlReq, "THU");
__Log("l_thu_times:" + l_thu_times);
var l_fri_times = marx_plan_get_alltime_intervals(xmlReq, "FRI");
__Log("l_fri_times:" + l_fri_times);
var l_sat_times = marx_plan_get_alltime_intervals(xmlReq, "SAT");
__Log("l_sat_times:" + l_sat_times);
var l_sun_times = marx_plan_get_alltime_intervals(xmlReq, "SUN");
__Log("l_sun_times:" + l_sun_times);
var sql = "select marx_get_planproposals(" + l_prs_bedrijf_key + "," + safe.quoted_sql(l_srtperslid_omschr) + ", fac.safe_to_date(" + safe.quoted_sql(l_startdatum) + ",'yyyy-mm-dd'), fac.safe_to_date(" + safe.quoted_sql(l_einddatum) + ",'yyyy-mm-dd')," + safe.quoted_sql(l_mon_times) + "," + safe.quoted_sql(l_tue_times) + "," + safe.quoted_sql(l_wed_times) + "," + safe.quoted_sql(l_thu_times) + "," + safe.quoted_sql(l_fri_times) + "," + safe.quoted_sql(l_sat_times) + "," + safe.quoted_sql(l_sun_times) + "," + l_duration_minutes + ", " + l_interval_minutes + ", " + l_aant_opties + ") planproposals from dual";
}
}
else{
xmlReq.setProperty ("SelectionNamespaces", "xmlns:sales_reactie='http://www.ketenstandaard.nl/planningsreactie/SALES/005'");
if (xmlNodeVal(xmlReq, "//sales_reactie:PlanningResponse")){
var v_msgtype = 'PLNCFM';
var sql = "select marx_set_planconfirmation (NULL,NULL,NULL,NULL,NULL) planproposals from dual";
xmlReq.setProperty ("SelectionNamespaces", "xmlns:pln_nspace='http://www.ketenstandaard.nl/planningsreactie/SALES/005'");
if (xmlNodeVal(xmlReq, "//pln_nspace:PlanningResponse")){
var v_msgtype = "PLNCFM";
var l_prs_woco_key = marx_plan_get_prs_woco_key(xmlReq);
var l_prs_bedrijf_key = marx_plan_get_prs_bedrijf_key(xmlReq);
__Log("l_prs_bedrijf_key:" + l_prs_bedrijf_key);
__Log("user_key:" + user_key);
var l_bedrijf_is_oke = marx_plan_bedrijf_key_is_oke(l_prs_bedrijf_key, user_key);
__Log("l_bedrijf_is_oke:" + l_bedrijf_is_oke);
var l_gln_buyer = marx_plan_get_buyer_gln(xmlReq);
__Log("l_gln_buyer:" + l_gln_buyer);
var l_gln_contractor = marx_plan_get_contractor_gln(xmlReq);
__Log("l_gln_contractor:" + l_gln_contractor);
//In het request-nummer staat het response-nummer die leverancier in vorig bericht terug heeft gegegeven, en nu in de confirmation weer retour gaat, zodat leverancier de plan-id terug heeft.
//Betreft unieke res_rsv_ruimte_key die leverancier in 1e call (planproposals) heeft teruggegeven aan caller, die deze in 2e call (nu dus) weer mee moet geven, waarmee de andere (STATIC) parameters (prs_bedrijf_key, v_duration_minutes, v_prs_srtperslid_omschr) bepaald kunnen worden
var l_req_nr = marx_plan_get_request_nr(xmlReq);
var l_res_rsv_ruimte_key_str= l_req_nr;
__Log("l_res_rsv_ruimte_key_str:" + l_res_rsv_ruimte_key_str);
// In het response-nummer staat de toekomstige ION (inkoopopdrachtnummer) van opdrachtgever...
var l_rsp_nr = marx_plan_get_response_nr(xmlReq);
var l_ion_nr = l_rsp_nr;
__Log("l_rsp_nr:" + l_rsp_nr);
if (l_bedrijf_is_oke){
// Autorisatie check: is de user_key wel perslid binnen het bedrijf? --> op dit punt dus: JA
var l_contact_key = marx_get_dummy_res_rsv_ruimte_contact_key(l_res_rsv_ruimte_key_str);
var l_api_user_key = marx_plan_get_api_user_key (l_prs_bedrijf_key);
if (l_contact_key == l_api_user_key){
// Extra Autorisatie check: is l_res_rsv_ruimte_key_str wel van l_prs_bedrijf_key? --> op dit punt dus: JA
// De contact-key van de dummy reservering zou de (one-and-only) api-user van het bedrijf moeten zijn, en als we hier zijn gekomen, is dat het geval --> autorisatiecheck geslaagd, deze dummy reservering mag aangepast worden
var l_confirm_datum = marx_plan_get_startdatum(xmlReq);
__Log("l_confirm_datum:" + l_confirm_datum);
var l_confirm_time1 = marx_plan_get_starttime(xmlReq);
__Log("l_confirm_time1:" + l_confirm_time1);
var l_confirm_time2 = marx_plan_get_endtime(xmlReq);
__Log("l_confirm_time2:" + l_confirm_time2);
var sql = "select marx_set_planconfirmation(" + l_prs_bedrijf_key + ", fac.safe_to_number(" + safe.quoted_sql(l_res_rsv_ruimte_key_str) + ")," + safe.quoted_sql(l_ion_nr) + ",fac.safe_to_date(" + safe.quoted_sql(l_confirm_datum) + ",'yyyy-mm-dd')," + safe.quoted_sql(l_confirm_time1) + "," + safe.quoted_sql(l_confirm_time2) + ") planproposals from dual";
}
}
}
}
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
/* Voorbeeld v_planproposals =
[{ "planproposal": {"startdate": "2021-04-01", "starttime": "09:00", "endtime": "12:00" } },
{ "planproposal": {"startdate": "2021-04-01", "starttime": "13:00", "endtime": "16:00" } },
{ "planproposal": {"startdate": "2021-04-02", "starttime": "09:00", "endtime": "12:00" } },
{ "planproposal": {"startdate": "2021-04-05", "starttime": "13:00", "endtime": "16:00" } },
]
*/
v_planproposals_txt = oRs("planproposals").Value;
__Log("v_planproposals: " + v_planproposals_txt);
__Log("v_planproposals.length: " + v_planproposals_txt.length);
v_planproposals = [];
if (l_bedrijf_is_oke){
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
/* Voorbeeld v_planproposals =
[{ "planproposal": {"res_deel_key": "1234", "startdate": "2021-04-01", "starttime": "09:00", "enddate": "2021-04-01", "endtime": "12:00" } },
{ "planproposal": {"res_deel_key": "1234", "startdate": "2021-04-01", "starttime": "13:00", "enddate": "2021-04-01", "endtime": "16:00" } },
{ "planproposal": {"res_deel_key": "9876", "startdate": "2021-04-02", "starttime": "09:00", "enddate": "2021-04-02", "endtime": "12:00" } },
{ "planproposal": {"res_deel_key": "9876", "startdate": "2021-04-05", "starttime": "13:00", "enddate": "2021-04-05", "endtime": "16:00" } },
]
Let op: de startdate/time en enddate/time is in geval van:
- PLNRSP: de bloktijden
- PLNCFM: de echte plandatum begin/eind momenten
*/
v_planproposals_txt = oRs("planproposals").Value;
__Log("v_planproposals_txt: " + v_planproposals_txt);
__Log("v_planproposals_txt.length: " + v_planproposals_txt.length);
v_planproposals = eval("(" + v_planproposals_txt + ")");
__Log("v_planproposals.length: " + v_planproposals.length);
}
oRs.close();
if (v_msgtype == "PLNRSP" && v_planproposals.length > 0){
// Wanneer er planningsverzoeken zijn, dan gaan we een DUMMY "ProForma" res_reservering vastleggen/registreren...
v_planproposals = eval("(" + v_planproposals_txt + ")");
__Log("v_planproposals.length: " + v_planproposals.length);
var sql = "SELECT res_s_res_rsv_ruimte_key.nextval from dual";
var oRs = Oracle.Execute(sql);
if (!oRs.eof){
var l_res_rsv_ruimte_key = oRs(0).Value;
oRs.close();
var sql = "BEGIN marx_put_dummy_res_reservering (" + l_prs_woco_key + "," + l_prs_bedrijf_key + "," + safe.quoted_sql(l_srtperslid_omschr) + "," + l_duration_minutes + "," + l_res_rsv_ruimte_key + "); END;";
var oRs = Oracle.Execute(sql);
var l_rsp_nr = l_res_rsv_ruimte_key;
}
}
}
oRs.close();
var l_sysdate = marx_plan_get_sysdate();
var result = "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
+ "<soap:Envelope xmlns:msxml=\"urn:schemas-microsoft-com:xslt\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ns=\"https://www.ketenstandaard.nl/WS/MessageService/3.1\" xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\">"
@@ -217,29 +568,31 @@ var result = "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
+ "<ns:MsgContent>"
+ " <PlanningResponse xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" xmlns=\"http://www.ketenstandaard.nl/planningsreactie/SALES/005\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\""
+ " xsi:schemaLocation=\"http://www.ketenstandaard.nl/planningsreactie/SALES/005 Planningsreactie_SALES005.xsd\">"
+ "<PlanningResponseNumber>XXXXXXXXXXXXXXXXX</PlanningResponseNumber>"
+ "<MessageDate>2020-08-13</MessageDate>"
+ "<MessageTime>12:34:58</MessageTime>"
+ "<PlanningResponseNumber>" + l_rsp_nr + "</PlanningResponseNumber>"
+ "<MessageDate>" + l_sysdate.substring(0,10) + "</MessageDate>"
+ "<MessageTime>" + l_sysdate.substring(11) + "</MessageTime>"
+ "<PlanningRequestReference>"
+ " <PlanningRequestNumber>ABC123XYZ</PlanningRequestNumber>"
+ " <PlanningRequestNumber>" + l_req_nr + "</PlanningRequestNumber>"
+ "</PlanningRequestReference>"
+ "<Buyer>"
+ "<GLN>8713783669303</GLN>"
+ " <GLN>" + l_gln_buyer + "</GLN>"
+ "</Buyer>"
+ "<Contractor>"
+ " <GLN>8713783642016</GLN>"
+ " <GLN>" + l_gln_contractor + "</GLN>"
+ "</Contractor>";
for(var i = 0; i < v_planproposals.length; i++)
{
var v_datum = v_planproposals[i].planproposal.startdate;
var v_res_deel_key = v_planproposals[i].planproposal.res_deel_key;
var v_startdatum = v_planproposals[i].planproposal.startdate;
var v_starttime = v_planproposals[i].planproposal.starttime;
var v_enddatum = v_planproposals[i].planproposal.enddate;
var v_endtime = v_planproposals[i].planproposal.endtime;
result = result
+ "<MaintenanceMoment>"
+ " <EarliestExecutionDate>" + v_datum + "</EarliestExecutionDate>"
+ " <EarliestExecutionDate>" + v_startdatum + "</EarliestExecutionDate>"
+ " <Timeblock>"
+ " <EarliestExecutionTime>" + v_starttime + "</EarliestExecutionTime>"
+ " <LatestExecutionTime>" + v_endtime + "</LatestExecutionTime>"
@@ -252,9 +605,63 @@ result = result + "</PlanningResponse>"
+ "</soap:Body>"
+ "</soap:Envelope>";
__Log("result:" + result);
if (v_msgtype == "PLNCFM"){
if (v_planproposals.length == 1){
// De confirmation is succesvol, d.w.z. er is inderdaad een plekje vrij, we gaan hem boeken door de DUMMY "ProForma" res_reservering OM TE ZETTEN naar de juiste datum/tijdstip en persoon, dus van DUMMY naar REAL reservering
// En we retourneren dan een MS31-XML met succes = true
var sql = "BEGIN marx_put_res_dummy_2_real(" + l_prs_woco_key
+ "," + "fac.safe_to_number(" + safe.quoted_sql(l_res_rsv_ruimte_key_str) + ")"
+ "," + v_res_deel_key
+ "," + "fac.safe_to_date(" + safe.quoted_sql(v_startdatum + " " + v_starttime) + ",'yyyy-mm-dd hh24:mi:ss')"
+ "," + "fac.safe_to_date(" + safe.quoted_sql(v_enddatum + " " + v_endtime) + ",'yyyy-mm-dd hh24:mi:ss')"
+ "," + safe.quoted_sql(l_confirm_time1)
+ "," + safe.quoted_sql(l_confirm_time2)
+ "," + safe.quoted_sql(l_ion_nr)
+ "); END;";
var oRs = Oracle.Execute(sql);
var result =
"<?xml version=\"1.0\" encoding=\"utf-8\"?>"
+ "<soap:Envelope xmlns:msxml=\"urn:schemas-microsoft-com:xslt\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ns=\"https://www.ketenstandaard.nl/WS/MessageService/3.1\">"
+ "<soap:Header>"
+ "</soap:Header>"
+ "<soap:Body>"
+ "<ns:MessageResponse>"
+ "<ns:MessageResult>true</ns:MessageResult>"
+ "</ns:MessageResponse>"
+ "</soap:Body>"
+ "</soap:Envelope>";
}
else{
// De confirmation is NIET succesvol, d.w.z. het plekje is inmiddels (ondertussen) vergeven/ingepikt door iemand anders, de retour-XML (MS31) moet daarom een fault teruggeven aan de aanroepende partij
var result =
"<?xml version=\"1.0\" encoding=\"utf-8\"?>"
+ "<soap:Envelope xmlns:msxml=\"urn:schemas-microsoft-com:xslt\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ns=\"https://www.ketenstandaard.nl/WS/MessageService/3.1\">"
+ "<soap:Header>"
+ "</soap:Header>"
+ "<soap:Body>"
+ "<soap:Fault>"
+ "<faultcode>soap:Server</faultcode>"
+ "<faultstring>Server error</faultstring>"
+ "<detail>"
+ "<FaultDetails>"
+ "<ErrorCode>900</ErrorCode>"
+ "<Message xml:lang=\"nl\">Planconfirmation is niet succesvol</Message>"
+ "</FaultDetails>"
+ "</detail>"
+ "</soap:Fault>"
+ "</soap:Body>"
+ "</soap:Envelope>";
}
}
if (result)
{
var xmldoc = new ActiveXObject("Msxml2.DOMDocument.6.0");

View File

@@ -33,6 +33,13 @@
"fac_tracking_oms",
"prs_perslid_key"]
},
"fac_activiteit": { "track": null,
"fields": ["fac_activiteit_volgende",
"fac_activiteit_laatste",
"name",
"fac_tracking_oms",
"prs_perslid_key"]
},
"ins_deelsrtcontrole": { "track": "#INSCUP",
"fields": ["ins_deelsrtcontrole_status",
"ins_deelsrtcontrole_datum",

View File

@@ -73,6 +73,48 @@ var sametab = getQParamInt("sametab", 1); // alles in 1 tab of t
var resdate = getQParamDate("date", null); // de (in stap 2 gekozen) datum
var dagcapaciteit = getQParamFloat("dagcapaciteit", 9); // aantal uren beschikbaar per dag tbv berekening van globale vulling
function dagcapaciteitCalc(date)
{
var begintijd = new Date(0, 0, 0, 23, 59, 0);
var eindtijd = new Date(0, 0, 0, 0, 0, 0);
var btBegintijd;
var btEindtijd;
var btArr;
var index;
var bt = res.getBloktijdenDisc(res_disc_key, date);
if (bt.length > 0)
{
for (index = 0; index < bt.length; index++)
{
btArr = bt[index].begin.split(":");
btBegintijd = new Date(0, 0, 0, btArr[0], btArr[1], 0);
if (btBegintijd.getTime() < begintijd.getTime())
{
begintijd = btBegintijd;
}
btArr = bt[index].end.split(":");
btEindtijd = new Date(0, 0, 0, btArr[0], btArr[1], 0);
if (btEindtijd.getTime() > eindtijd.getTime())
{
eindtijd = btEindtijd;
}
}
var diff = eindtijd.getTime() - begintijd.getTime();
var uren = Math.floor(diff / 1000 / 60 / 60);
diff -= uren * 1000 * 60 * 60;
var minuten = Math.floor(diff / 1000 / 60) / 60; // make minutes decimal
return uren + minuten;
}
else
{
return dagcapaciteit;
}
}
if (resdate)
{
dagcapaciteit = dagcapaciteitCalc(resdate);
}
var minimumbeschikbaarheid = getQParamFloat("minbes", 1.5); // minder dan zoveel uur beschikbaar beschouwen we onbeschikbaar
var onlyfree = getQParamInt("onlyfree", 0); // moeten bezette werkplekken wel (0) of niet (1) (onklikbaar) getoond worden in de lijst
@@ -347,8 +389,9 @@ if (datelimit == -1)
{
var reserveerbaredag = true;
var aantalitems = oRs("delen").Value;
var beschikbaarheid = ((1 - (oRs("gevuld").Value/(dagcapaciteit*aantalitems)))*100).toFixed(0); // 0..100
var bcls = rdpt.bezettings_class(oRs("gevuld").value, dagcapaciteit*aantalitems, minimumbeschikbaarheid*aantalitems);
var calc_dagcapaciteit = dagcapaciteitCalc(new Date(oRs("datum").Value));
var beschikbaarheid = ((1 - (oRs("gevuld").Value/(calc_dagcapaciteit*aantalitems)))*100).toFixed(0); // 0..100
var bcls = rdpt.bezettings_class(oRs("gevuld").value, calc_dagcapaciteit*aantalitems, minimumbeschikbaarheid*aantalitems);
if (oRs("vrijedag").value > 0)
{
bcls += " vrijedag";

View File

@@ -168,6 +168,9 @@ rdpt = {
+ (p_resdate ? " AND TRUNC(rrd.res_rsv_deel_van) = " + p_resdate.toSQL()
: " AND TRUNC(rrd.res_rsv_deel_van) BETWEEN TRUNC(SYSDATE +"+(p_dateoffset||0)+") AND TRUNC(SYSDATE-1+"+(p_dateoffset||0)+"+"+p_datelimit+")"
)
+ " AND ( rd.res_deel_vervaldatum IS NULL"
+ " OR rd.res_deel_vervaldatum > TRUNC(rrd.res_rsv_deel_van)"
+ " )"
+ " GROUP BY vrij.mld_vrije_dagen_key"
+ " , TRUNC(rrd.res_rsv_deel_van)"
+ " , res_rsv_deel_van"

View File

@@ -381,6 +381,8 @@ var transitParam2 = buildTransitParam(['activiteit_key', 'daylimit', 'offset', '
+ " res_discipline rd "
+ " WHERE rrr.res_ruimte_opstel_key = rro.res_ruimte_opstel_key "
+ " AND rro.res_ruimte_key = rr.res_ruimte_key "
+ " AND ( rr.res_ruimte_vervaldatum IS NULL "
+ " OR rr.res_ruimte_vervaldatum > TRUNC(rrr.res_rsv_ruimte_van)) "
+ " AND plts.alg_onroerendgoed_keys = "
+ " (SELECT MIN (alg_ruimte_key)"
+ " FROM res_alg_ruimte rar2"

View File

@@ -8,24 +8,16 @@
Description: return a JSON string for Internet availablity checks
Parameters: none
Context:
Note:
Sample: appl/mld/check_online.asp
Context: Vanuit de App om te kijken of hij Internet verbinding heeft
Note: Geen common.inc omdat die customerId verwacht en omdat
we niet langs default.asp komen is de customerId niet gegarandeerd gezet
*/ %>
<%
var JSON_Result = true;
ANONYMOUS_Allowed = 1;
%>
<!-- #include file="../Shared/common.inc"-->
<!-- #include file="json2.js" -->
<%
var result = {};
if (user_key > 0)
{
result.user = { id: user_key, name: user.naam() };
}
result.date = new Date();
Response.ContentType = "application/json";
Response.Write(JSON.stringify(result));
%>
<% ASPPAGE_END(); %>

View File

@@ -8,7 +8,7 @@
Context: Vanuit ELK asp bestand
*/
var FCLTVersion="2020.2h";
var FCLTVersion="2020.2i";
var FCLTMinDatabaseSchema="39";
var custpath = rooturl + "/cust/" + customerId; // path to customer files

View File

@@ -376,7 +376,7 @@ function callback_flex_expr_info(json)
}
else
{
var $fld = $("#" + json[kenmerk].kfieldid + "val:not(textarea)").closest("div");
var $fld = $("#" + json[kenmerk].kfieldid + "val:not(textarea)").closest("div").not('[data-role=content]');
if ($fld.length == 0)
{
$fld= $("textarea#" + json[kenmerk].kfieldid + "val"); // textarea has no parent div

View File

@@ -252,6 +252,7 @@ function mergeXMLAttachments2(iXml, p_xslPath, xmltag, keynaam, pNiveau)
var node = NodeList[index];
var meldingopdrachtkey = trimall(node.attributes.getNamedItem(keynaam).text);
var kenmerkkey = trimall(node.attributes.getNamedItem("kenmerkkey").text);
var bijlagekey = node.attributes.getNamedItem("bijlagekey")?trimall(node.attributes.getNamedItem("bijlagekey").text):"";
var nodename = trimall(node.attributes.getNamedItem("nodename").text);
var node_encoding = node.attributes.getNamedItem("encoding"); // als die NIET is gevuld doen we default "hex"
var encoding = "hex";
@@ -275,7 +276,8 @@ function mergeXMLAttachments2(iXml, p_xslPath, xmltag, keynaam, pNiveau)
+ " AND r.fac_bijlagen_verwijder IS NULL"
+ " AND b.fac_bijlagen_module = 'MLD'"
+ " AND b.fac_bijlagen_refkey = " + meldingopdrachtkey
+ (kenmerkkey ? " AND b.fac_bijlagen_kenmerk_key = " + kenmerkkey : "");
+ (kenmerkkey ? " AND b.fac_bijlagen_kenmerk_key = " + kenmerkkey : "")
+ (bijlagekey ? " AND b.fac_bijlagen_key = " + bijlagekey : "");
var oRs = Oracle.Execute(sql);
while (!oRs.eof)
{