122 lines
4.0 KiB
XML
122 lines
4.0 KiB
XML
<?xml version="1.0"?>
|
|
<component>
|
|
<?component error="true" debug="true"?>
|
|
<registration
|
|
description="custfunctions"
|
|
progid="custfunction.wsc"
|
|
version="1.00"
|
|
classid="{4F51571C-1DFC-4769-B8DD-37B356378F12}"
|
|
>
|
|
</registration>
|
|
|
|
<public>
|
|
|
|
<!-- properties -->
|
|
<property name="Oracle">
|
|
<put/>
|
|
</property>
|
|
<property name="__Log">
|
|
<put/>
|
|
</property>
|
|
<property name="__DoLog">
|
|
<put/>
|
|
</property>
|
|
<property name="safe">
|
|
<put/>
|
|
</property>
|
|
|
|
<!-- methods -->
|
|
<method name="res_postsave">
|
|
<PARAMETER name="rsv_ruimte_key"/>
|
|
</method>
|
|
</public>
|
|
|
|
<script language="javascript">
|
|
<![CDATA[
|
|
|
|
/* properties */
|
|
function put_Oracle(newValue) {Oracle = newValue};
|
|
function put___Log(newValue) {__Log = newValue};
|
|
function put___DoLog(newValue) {__DoLog = newValue};
|
|
function put_safe(newValue) {safe = newValue};
|
|
|
|
/* methods */
|
|
/*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: UWVAcustfunction.wsc
|
|
|
|
*/
|
|
|
|
/* Dit zijn de enige drie functies die je mag gebruiken */
|
|
var Oracle;
|
|
var __Log;
|
|
var __DoLog;
|
|
var safe;
|
|
|
|
var HSLE_LetOp_srtkenmerk_key = 101; // CHARACTER res srtflex to display tekst "Let op!!!: Heeft afgelopen 3 maanden 2x te laat ingeleverd." if in the past 3 months items have been returned too late.
|
|
var HSLE_TeLaat_srtkenmerk_key = 102; // INTEGER/vinkveldje res srtflex to register if item is "Te laat teruggebracht"
|
|
|
|
|
|
res_postsave = function (rsv_ruimte_key, pResult)
|
|
{
|
|
if (HSLE_LetOp_srtkenmerk_key < 0)
|
|
return true;
|
|
var sql = "SELECT rk.res_kenmerk_key, rrr.res_rsv_ruimte_contact_key, rrr.res_activiteit_key "
|
|
+ " FROM res_kenmerk rk, res_rsv_ruimte rrr"
|
|
+ " WHERE rk.res_srtkenmerk_key = " + HSLE_LetOp_srtkenmerk_key // Waarschuwing - let op flex kenmerk
|
|
+ " AND rrr.res_rsv_ruimte_key = " + rsv_ruimte_key
|
|
+ " AND rrr.res_activiteit_key = rk.res_activiteit_key";
|
|
var oRs = Oracle.Execute(sql);
|
|
if (oRs.Eof) // deze activiteit heeft geen let-op / waarschuwing-kenmerk
|
|
{
|
|
oRs.Close();
|
|
return true;
|
|
}
|
|
var HSLE_Letop_kenmerk_key = oRs("res_kenmerk_key").Value;
|
|
var HSLE_contact_key = oRs("res_rsv_ruimte_contact_key").Value;
|
|
var HSLE_Act_key = oRs("res_activiteit_key").Value;
|
|
|
|
oRs.Close();
|
|
|
|
var sql = "DELETE FROM res_kenmerkwaarde rkw"
|
|
+ " WHERE rkw.res_rsv_ruimte_key = " + rsv_ruimte_key
|
|
+ " AND rkw.res_kenmerk_key = " + HSLE_Letop_kenmerk_key;
|
|
Oracle.Execute(sql);
|
|
|
|
|
|
// Hier komt het criterium waarop we het Let op kenmerk veld gaan vullen, dus in geval van te laat de tekst "Let op!!!: Heeft afgelopen 3 maanden 2x te laat ingeleverd."
|
|
// Criterium/telling is als volgt:
|
|
// 1. Tel het aantal keren dat het kenmerk-soort vinkje met key 102 is aangevinkt (HSLE_TeLaat_srtkenmerk_key)
|
|
// 2. Van dezelfde activiteit-key "Uitleen" (HSLE_Act_key)
|
|
// 3. Van dezelfde contactpersoon/aanvrager
|
|
// 4. Van maximaal 90 dagen (+- 3 maanden) geleden.
|
|
|
|
|
|
var sql = " SELECT COUNT(*) AS aantal FROM res_rsv_ruimte rrr, res_kenmerk rk, res_kenmerkwaarde rkw"
|
|
+ " WHERE rk.res_srtkenmerk_key = " + HSLE_TeLaat_srtkenmerk_key
|
|
+ " AND rk.res_activiteit_key = " + HSLE_Act_key
|
|
+ " AND rkw.res_kenmerk_key = rk.res_kenmerk_key"
|
|
+ " AND rkw.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key"
|
|
+ " AND rrr.res_rsv_ruimte_contact_key = " + HSLE_contact_key
|
|
+ " AND rkw.res_kenmerkreservering_waarde = '1'"
|
|
+ " AND rrr.res_rsv_ruimte_tot >= (SYSDATE - 90)";
|
|
var oRs = Oracle.Execute(sql);
|
|
var HSLE_Aantal_x_Telaat = oRs("aantal").Value;
|
|
oRs.Close();
|
|
|
|
if (HSLE_Aantal_x_Telaat > 0)
|
|
{
|
|
var sql = "INSERT INTO res_kenmerkwaarde(res_rsv_ruimte_key, res_kenmerk_key, res_kenmerkreservering_waarde) "
|
|
+ " VALUES (" + rsv_ruimte_key + ", " + HSLE_Letop_kenmerk_key + ", 'Heeft afgelopen 3 maanden " + HSLE_Aantal_x_Telaat + " keer te laat ingeleverd')";
|
|
Oracle.Execute(sql);
|
|
}
|
|
return true;
|
|
}
|
|
|
|
|
|
]]>
|
|
</script>
|
|
</component>
|