Compare commits
20 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0f58213d04 | ||
|
|
f443f9aaf3 | ||
|
|
9e2417ca06 | ||
|
|
abe93a4b0c | ||
|
|
40fb563e1e | ||
|
|
203fbca1c6 | ||
|
|
f5b359f62d | ||
|
|
eb27a53e1e | ||
|
|
eee9ac119b | ||
|
|
831a4c72fe | ||
|
|
0c0172ab13 | ||
|
|
1ebc2f906f | ||
|
|
a4748c37aa | ||
|
|
1be2214be9 | ||
|
|
ccb6df73cc | ||
|
|
1a5bc1e4da | ||
|
|
9da2136862 | ||
|
|
248e9a125b | ||
|
|
8b5e0ff7e3 | ||
|
|
6f8cf3f535 |
@@ -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);
|
||||
|
||||
@@ -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(); %>
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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>
|
||||
<%
|
||||
|
||||
@@ -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():'' %>");
|
||||
<% } %>
|
||||
}
|
||||
|
||||
|
||||
@@ -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(); %>
|
||||
|
||||
@@ -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">
|
||||
|
||||
@@ -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");
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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(); %>
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user