FSN#36336 PZHO account opruimen

svn path=/Website/branches/v2016.3/; revision=32284
This commit is contained in:
Jos Groot Lipman
2017-01-09 16:32:17 +00:00
parent b876159359
commit cefd79f65c
44 changed files with 0 additions and 4695 deletions

View File

@@ -1,6 +0,0 @@
REM PZHO#27710 Adapter FACILITOR-Sleutelkast/Traka
REM Component dat erin voorziet dat fietsreserveringen in FACILITOR resulteren
REM in de vrijgave van sleutels in de Sleutelkast en andersom dat de actuele
REM aan/afwezigheid van sleutels in de Sleutelkast zichtbaar zijn in FACILITOR.
cscript /E:javascript TrakaFacilitor.js "http://facilitor.pzh.nl/?fac_id=PZHO"

View File

@@ -1,392 +0,0 @@
//
// Copyright 2013 SG|facilitor. 053-4800 700, support@sgfacilitor.nl
//
// TrakaFacilitor.js
// Staat elke nn minuten gescheduled en wisselt informatie uit tussen Trake en FACILITOR
//
var fclturl = "http://facilitor.pzh.local/?fac_id=PZHO";
var trakaudl = "traka.udl";
var APIKEY = "OFFlefZFRKpIRVnHmYOOEwgDdOGJoAVL"; // Pseudo-user tbv. TRAKA-API
// graceperiod: elke wijziging in een reservering in FACILITOR wordt gedurende de graceperiod
// iedere run van de adapter doorgeven.
// Reserveringen die vandaag (of eerder) beginnen en nog niet zijn afgelopen
// worden *altijd* doorgegeven
var graceperiod = 1 * 60;
//var proxy = "127.0.0.1:8888"; // Voor debugging met Fiddler
CabFieldID = 1; // Fietsenstalling
if (WScript.Arguments.length > 0)
var fclturl = WScript.Arguments(0);
if (WScript.Arguments.length > 1)
var trakaudl = WScript.Arguments(1);
var fso = new ActiveXObject("Scripting.FileSystemObject")
var TRAKA = new ActiveXObject("ADODB.Connection");
TRAKA.Open('File Name=' + trakaudl);
var adParamInput = 1;
var adOutput = 2;
var adDate = 7
var adDBDate = 133
var adDBTime = 134
var adDBTimeStamp = 135
var adVarChar = 200;
var adVarWChar = 202;
var adInteger = 3;
var adStateOpen = 1;
var adUseClient = 3;
var adOpenStatic = 3;
var adCmdStoredProc = 4;
var adCmdText = 1;
function apiFACILITOR(API, req)
{
var xmlhttp = new ActiveXObject("WinHTTP.WinHTTPRequest.5.1");
SXH_PROXY_SET_PROXY = 2;
if (typeof proxy != "undefined" && proxy)
xmlhttp.setProxy(SXH_PROXY_SET_PROXY, proxy);
var xmlUrl = fclturl + "&API=" + API + "&APIKEY=" + APIKEY + "&json=1&pretty=1&tm=" + (new Date).getTime();
xmlhttp.open("POST", xmlUrl, false);
xmlhttp.setRequestHeader("Content-Type", "text/xml; charset=utf-8")
var msg = "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
+ "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'"
+ " xmlns:xsd='http://www.w3.org/2001/XMLSchema'"
+ " xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>"
+ " <soap:Body>"
+ req
+ " </soap:Body>"
+ "</soap:Envelope>";
xmlhttp.send(msg);
if (xmlhttp.status == 200)
{
try
{
var txt = xmlhttp.responseText || "{}";
var result_data = eval("(" + txt + ")");
return result_data;
}
catch (e)
{
// Waarschijnlijk http-error terug gekregen
__Log("eval failed: " + e.description);
__Log(txt);
return {};
}
}
else
{
__Log("Status: "+xmlhttp.status);
__Log(xmlhttp.responseText);
}
}
function param(cmd, naam, type, len, val)
{
var param = cmd.CreateParameter(naam, type, adParamInput, len);
cmd.Parameters.Append(param);
param.Value = val;
}
// Taak 1: Update Traka met alle komende fiets/sleutel-reserveringen+mutaties uit FACILITOR
// FACILITOR-gegevens in res-parameter bevat:
// RES_KEY,
// RES_ID,
// FIETS_OMS,
// SLEUTEL_ID,
// VAN,
// TOT,
// USER_KEY,
// VNAAM,
// ANAAM,
// PASNR,
// FO_STATUS_KEY,
// LAST_CHANGE,
// RES_VERWIJDER
function SendReservering2TRAKA(res)
{
var dvan = xmltojsdate(res.VAN);
var dtot = xmltojsdate(res.TOT);
__Log(res.FIETS_OMS + " => " + (res.ANAAM||"") + " (" + (res.VNAAM||"") + ")");
__Log(" van: " + dvan);
__Log(" tot: " + dtot);
if (!res.RES_VERWIJDER)
{
var dupd = xmltojsdate(res.LAST_CHANGE);
__Log(" upd: " + dupd);
}
else
{
var ddel = xmltojsdate(res.RES_VERWIJDER);
__Log(" del: " + ddel);
}
// 1. Bijwerken FACILITOR-id van evt. reeds bestaande user met PASNR in
// TRAKA (om nog een keer toevoegen in 2. te voorkomen).
var cmd = new ActiveXObject("ADODB.Command");
cmd.ActiveConnection = TRAKA;
cmd.CommandType = adCmdText;
var sql = "UPDATE TUsers"
+ " SET ExternalFieldID = ?"
+ " WHERE PrimaryID = ?";
cmd.CommandText = sql;
param(cmd, "", adVarChar, 255, String(res.USER_KEY));
param(cmd, "", adVarChar, 255, String(res.PASNR));
cmd.Execute();
// 2. Toevoegen/bijwerken user in TRAKA.
var cmd = new ActiveXObject("ADODB.Command")
cmd.ActiveConnection = TRAKA;
cmd.CommandType = adCmdStoredProc;
cmd.CommandText = "SP_TPL_ADDEDITUSER5";
cmd.Parameters.Refresh(); // ipv diverse param(cmd, "@ExternalFieldID", adVarChar, 255, String(res.USER_KEY));
cmd.Parameters("@ExternalFieldID").Value = String(res.USER_KEY);
cmd.Parameters("@Forename").Value = res.VNAAM || "";
cmd.Parameters("@Surname").Value = res.ANAAM || "";
cmd.Parameters("@Primary").Value = res.PASNR || "";
cmd.Parameters("@Secondary").Value = "";
cmd.Parameters("@UDetail_01").Value = "";
cmd.Parameters("@UDetail_02").Value = "";
cmd.Parameters("@UDetail_03").Value = "";
cmd.Parameters("@UDetail_04").Value = "";
cmd.Parameters("@UDetail_05").Value = "";
cmd.Parameters("@UDetail_06").Value = "";
cmd.Parameters("@UDetail_07").Value = "";
cmd.Parameters("@UDetail_08").Value = "";
cmd.Parameters("@UDetail_09").Value = "";
cmd.Parameters("@UDetail_10").Value = "";
cmd.Parameters("@UDetail_11").Value = "";
cmd.Parameters("@RegionName").Value = "";
cmd.Parameters("@ActiveFlag").Value = 1;
cmd.Parameters("@ActiveDate").Value = toTrakaDateString (new Date);
cmd.Parameters("@ExpiryDate").Value = ""; // If zero length string, then set to '01/06/2020' (mmddyyyy)!
cmd.Parameters("@AccessLevels").Value = ""; // If ADD/NEW=No levels granted and if EDIT=No changes made!
cmd.Parameters("@iFobAllowance").Value = 200;
cmd.Parameters("@UserID").Value = 999999; // Optional NIP code
cmd.Parameters("@Reserved1").Value = "";
cmd.Parameters("@Reserved2").Value = "";
cmd.Parameters("@Reserved3").Value = "";
cmd.Parameters("@Reserved4").Value = "";
cmd.Execute();
// 3. Bepalen User-id volgens TRAKA.
var cmd = new ActiveXObject("ADODB.Command");
cmd.ActiveConnection = TRAKA;
cmd.CommandType = adCmdText;
var sql = "SELECT [FieldID], [ExternalFieldID]"
+ " FROM [TUsers]"
+ " WHERE ExternalFieldID = ? AND deleted=0";
cmd.CommandText = sql;
param(cmd, "", adVarChar, 255, String(res.USER_KEY));
var rst = cmd.Execute();
var UserFieldID = rst("FieldID").Value;
__Log(" UserFieldID: " + UserFieldID);
rst.Close();
// 4. Bepalen Fob-id volgens TRAKA.
var cmd = new ActiveXObject("ADODB.Command");
cmd.ActiveConnection = TRAKA;
cmd.CommandType = adCmdText;
var sql = "SELECT [FieldID]"
+ " FROM [VFobs]"
+ " WHERE CabFieldID = ?"
+ " AND PosID = ?";
cmd.CommandText = sql;
param(cmd, "", adVarChar, 255, CabFieldID);
param(cmd, "", adVarChar, 255, String(res.SLEUTEL_ID));
var rst = cmd.Execute();
var FobFieldID = rst("FieldID").Value;
__Log(" FobFieldID: " + FobFieldID);
rst.Close();
var cmd = new ActiveXObject("ADODB.Command");
cmd.ActiveConnection = TRAKA;
cmd.CommandType = adCmdStoredProc;
if (!res.RES_VERWIJDER)
{
// 5a. Toevoegen/bijwerken boeking in TRAKA.
cmd.CommandText = "SP_TPL_ADDEDITFOBBOOKING";
cmd.Parameters.Refresh();
cmd.parameters("@ExternalFieldID").Value = String(res.RES_ID);
cmd.parameters("@UserFieldID").Value = UserFieldID;
cmd.parameters("@CabFieldID").Value = CabFieldID; // Fixed
cmd.parameters("@FobFieldID").Value = FobFieldID;
cmd.parameters("@BookingStart").Value = xmltojsdate(res.VAN).getVarDate();
cmd.parameters("@BookingEnd").Value = xmltojsdate(res.TOT).getVarDate();
cmd.parameters("@Notes").Value = "Booking by FACILITOR";
cmd.parameters("@ByRef_forename").Value = "";
cmd.parameters("@ByRef_surname").Value = "";
cmd.parameters("@ByRef_reference").Value = "";
}
else
{
// 5b. Verwijderen boeking in TRAKA.
cmd.CommandText = "SP_TPL_DELETEFOBBOOKING";
cmd.Parameters.Refresh();
cmd.parameters("@ExternalFieldID").Value = String(res.RES_ID);
}
cmd.Execute();
}
function fromFACILITORtoTRAKA()
{
__Log("*** fromFACILITORtoTRAKA ***");
// Alles wat na 'van'-graceperiod gewijzigd(!) is in FACILITOR sturen we
// naar TRAKA.
// Let op: De view pzho_v_api_dienstfietsen is ietwat getruct: voor alle
// reserveringen die *vandaag* vallen wordt last_change op SYSDATE gezet.
// Die komen dus altijd mee.
var van = new Date();
van.setMinutes(van.getMinutes() - graceperiod);
var req = "<GetDienstfietsen>"
+ " <last_change>" + jsdatextoxml(van) + "</last_change>"
+ "</GetDienstfietsen>";
var res_data = apiFACILITOR("TRAKA", req);
if (res_data && res_data.reservering)
{
if (!(res_data.reservering instanceof Array)) // Als er maar eentje is
res_data.reservering = [res_data.reservering];
__Log("Aantal reserveringen naar TRAKA: " + res_data.reservering.length);
for (i in res_data.reservering)
{
SendReservering2TRAKA(res_data.reservering[i]);
}
}
else
__Log("Geen reserveringen te verzenden");
}
// Taak 2: Update aan/afwezigheid van fietsen/sleutels in FACILITOR tov. situatie uit Traka
function SendReservering2FACILITOR(deel_key, status, naam)
{
var req = "<deel type=\"update\" key=\"" + deel_key + "\">"
+ " <omschrijving>" + naam + "</omschrijving>"
//+ " <tijd>2014-01-01T12:00:00</tijd>"
+ " <status>" + status + "</status>"
+ "</deel>"
var res_data = apiFACILITOR("INSSET", req);
__Log(naam + " is nu " + status);
}
// Traka is leidend in het bijhouden welke fietsen/sleutels al dan niet daadwerkelijk
// aanwezig zijn. Geef dat door aan FACILITOR.
// NB. Merk op dat dit geheel los staat van het feit of er al dan niet een reservering
// voor die fiets is!
function fromTRAKAtoFACILITOR()
{
__Log("*** fromTRAKAtoFACILITOR ***");
// Eerst (status van) alle fietsen/sleutels uit FACILITOR ophalen.
var req = "<GetDelen>"
+ " <soortdeel>Fiets-Fiets</soortdeel>"
+ " <soortgroep>Dienstfietsen</soortgroep>"
+ " <discipline>Vervoersmiddelen</discipline>"
//+ " <key>163</key>"
+ "</GetDelen>";
var ins_data = apiFACILITOR("INS", req);
__Log("Aantal leenfietsen in FACILITOR: " + ins_data.deel.length);
if (ins_data && ins_data.deel)
{
if (!(ins_data.deel instanceof Array)) // Als er maar eentje is
ins_data.deel = [ins_data.deel];
// Situatie uit Traka ophalen en matchen tegen situatie uit FACILITOR.
//var sql = "SELECT PosID PositionID, Status FROM VFobs"; // Alleen tbv. test tegen VFobs!
var sql = "SELECT PositionID, Status FROM V_TPL_CURRENTFOBHOLDERS WHERE CabTitle='Fietsenstalling'";
var oRs = TRAKA.Execute(sql);
while (!oRs.Eof)
{
var status = oRs("Status").Value;
for (i in ins_data.deel)
{
var fiets = ins_data.deel[i];
// Bepaal fietsnr door het gedeelte achter de 1e spatie te nemen (met PZH
// afgestemde randvoorwaarde)!
var fiets_arr = fiets.DEEL.split(" ");
var fietsnr = fiets_arr.length == 1? fiets.DEEL: fiets_arr[1];
if (fietsnr == oRs("PositionID").Value)
{
fiets.islentout = (status != 1); // Fob aanwezig als status=1; anders weg!
//__Log(fiets.DEEL + " is uitgeleend volgens Traka");
}
}
oRs.MoveNext();
}
for (i in ins_data.deel)
{
var fiets = ins_data.deel[i];
if (fiets.islentout && !fiets.UITGELEEND)
{ // Update FACILITOR dat fiets/sleutel is opgehaald
SendReservering2FACILITOR(fiets.KEY, "INSOUT", fiets.DEEL);
}
if (!fiets.islentout && fiets.UITGELEEND)
{ // Update FACILITOR dat fiets/sleutel terug is
SendReservering2FACILITOR(fiets.KEY, "INSINN", fiets.DEEL);
}
}
}
}
// Helper functies
// 2013-11-13T07:00:00
function xmltojsdate(datestamp)
{
var pattern = /^(\d\d\d\d)-(\d\d)-(\d\d)T(\d\d):(\d\d):(\d\d)$/;
var pieces = datestamp.match(pattern);
if(!pieces || pieces.length < 6)
return null;
return new Date(pieces[1], pieces[2]-1, pieces[3], pieces[4], pieces[5], pieces[6]);
}
function jsdatextoxml(dt)
{
return toDateString(dt) + "T" + toTimeString(dt);
}
function jsdatetosqls(jsDate)
{
return jsDate.getVarDate();
}
function padout(number) { return (number < 10) ? "0" + number : String(number); }
function toTrakaDateString(jsDate)
{
return padout(jsDate.getMonth() + 1) + "/" + padout(jsDate.getDate()) + "/" + padout(jsDate.getFullYear());
}
// Noot: altijd jaar vooraan, goed voor logfiles, niet bedoeld voor presentatie
function toDateString(jsDate)
{
return padout(jsDate.getFullYear()) + "-" + padout(jsDate.getMonth() + 1) + "-" + padout(jsDate.getDate());
}
function toTimeString(jsDate)
{
return padout(jsDate.getHours()) + ":" + padout(jsDate.getMinutes()) + ":" + padout(jsDate.getSeconds());
}
function __Log(s, level)
{
WScript.Echo(s);
var dt = new Date;
var logname = "TrakaFacilitor_" + padout(dt.getFullYear()) + "_" + padout(dt.getMonth() + 1) + ".log";
var flog = fso.OpenTextFile(logname, 8 /* ForAppending */, true /* create */);
var tms = toDateString(new Date) + " " + toTimeString(new Date);
flog.WriteLine(tms + " " + s);
flog.Close();
}
__Log("Starting TrakaFacilitor.js");
fromFACILITORtoTRAKA();
fromTRAKAtoFACILITOR();
__Log("Done TrakaFacilitor.js\n");

View File

@@ -1,63 +0,0 @@
/*
* $Revision$
* $Id$
*/
#headerblok
{
background: url(header.jpg) no-repeat;
background-color: #FFFFFF;
background-position: 0px 0px;
color: #000002;
}
div.fcltframeheader {
background-color: #314D89;
background-image: none;
color: white;
}
#iframerextratitle {
color: #EEEEEE;
}
.E td { background-color: #EEEEEE;
border:1px solid #FFFFFF;
}
.O td { background-color: #EEEEEE;
border:1px solid #FFFFFF;
}
.updated td {
background-color: #F9EE6F;
font-weight: bold;
color: #101010;
}
.updated.dirty td {
color: #808080
}
.updated td .afwijkopstel {
background-color:#888;
}
#editbody .fcltblock {
background-color:#FAFAFA;
border:2px solid #D0D0D0;
}
#editbody .fcltblockhead {
background-color:#D0D0D0;
}
input[readOnly], select[readOnly], textarea[readOnly] {
background-color: #F0F0F0;
color: #000002;
}
input[readOnly]:hover, select[readOnly]:hover, textarea[readOnly]:hover {
background-color: #F8F8F8;
color: #000002;
}
input[type=checkbox], input[type=radio]{
background-color: #F0F0F0;
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

View File

View File

@@ -1,32 +0,0 @@
[ADO]
ConnectionString = "File Name=..\Oracle.udl"
Database_Name = "ORACLE"
[SYSTEM]
Loglevel = "1"
User = 'PZHO'
[BULKVERHUIZING]
LocalPath =./BULKVERHUIZING
ExportFilePrefix = 'FAC_BULKVERHUIZING'
ExportFilePostfix = '.csv'
BackupFileTimeStamp = '-yymmdd_hhmm'
LogFilePostfix = '.log'
[CODA]
LocalPath =./CODA
ExportFilePrefix = 'CODA'
ExportFilePostfix = '.csv'
BackupFileTimeStamp = '-yymmdd_hhmm'
LogFilePostfix = '.log'
Manual = '1'
[VERGADER]
LocalPath =.
ExportFilePrefix = 'vergaderschema'
ExportFilePostfix = '.csv'
BackupFileTimeStamp = '-'
LogFilePostfix = '.log'
Manual = '0'

View File

@@ -1,24 +0,0 @@
REM GEN_EXPORT_PSF.BAT
REM
REM UWVA
REM
REM Exporteert de kosten van opdrachten en reserveringen naar een export-bestand
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 (c) 2005, Dijkoraad IT bv, +31 (53) 4800700, facilitorsupport@it.dijkoraad.nl
REM
REM ================================================== create exportfile
call ..\..\..\utils\gen_export\gen_export.bat TELEFOON
REM ================================================== copy to final destination
REM COPY EXPORT*.csv q:\temp\
REM ================================================== cleanup

View File

@@ -1,19 +0,0 @@
REM GEN_EXPORT_PSF.BAT
REM
REM PZHO
REM
REM Exporteert Reserveringen van vandaag naar een csv bestand
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 ================================================== create exportfile
call ..\..\..\utils\gen_export\gen_export.bat VERGADER

View File

@@ -1,24 +0,0 @@
REM GEN_EXPORT_BULKVERHUIZING.BAT
REM
REM UWVA
REM
REM Exporteert de werkplekgegevens van gebruikers na een bulkverhuizing
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 (c) 2005, Dijkoraad IT bv, +31 (53) 4800700, facilitorsupport@it.dijkoraad.nl
REM
REM ================================================== create exportfile
CALL ..\..\..\utils\gen_export\gen_export.bat BULKVERHUIZING
REM ================================================== copy to final destination
REM COPY EXPORT*.csv q:\temp\
REM ================================================== cleanup

View File

@@ -1,26 +0,0 @@
REM GEN_EXPORT_CODA.BAT
REM
REM PZHO
REM
REM Zet alle in de voorgaande maand (volledig) afgemelde reserveringen,
REM opdrachten en bestellingen op Administratief Verwerkt (AV).
REM De facilitaire kosten die op deze wijze zijn bevroren worden daarna
REM - ingedikt - vanuit Facilitor als Excel-exportbestand weggeschreven
REM (tbv. de journaallader van CODA).
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 Copyright (c) 1996-2008 SG|facilitor bv. All rights reserved.
REM
REM ================================================== create exportfile
CALL ..\..\..\utils\gen_export\gen_export.bat CODA
REM ================================================== copy to final destination
REM COPY EXPORT*.csv q:\temp\
REM ================================================== cleanup

View File

@@ -1,24 +0,0 @@
REM GEN_EXPORT_PSF.BAT
REM
REM UWVA
REM
REM Exporteert de kosten van opdrachten en reserveringen naar een export-bestand
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 (c) 2005, Dijkoraad IT bv, +31 (53) 4800700, facilitorsupport@it.dijkoraad.nl
REM
REM ================================================== create exportfile
CALL ..\..\..\utils\gen_export\gen_export.bat KOSTEN
REM ================================================== copy to final destination
REM COPY EXPORT*.csv q:\temp\
REM ================================================== cleanup

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

View File

View File

View File

View File

@@ -1,34 +0,0 @@
[ADO]
ConnectionString = "File Name=..\Oracle.udl"
Database_Name = "ORACLE"
[SYSTEM]
Loglevel = "1"
User = 'PZHO'
[AFDELING]
OraclePath =
LocalPath = .
ImportFilePrefix = 'org_eenh'
ImportFilePostfix = '.csv'
BackupFileTimeStamp = '-yymmdd_hhmm'
LogFilePostfix = '.log'
[ORG]
OraclePath =
LocalPath = .
ImportFilePrefix = 'std_org'
ImportFilePostfix = '.csv'
BackupFileTimeStamp = '-yymmdd_hhmm'
LogFilePostfix = '.log'
[MW_INZ]
OraclePath =
LocalPath = .
ImportFilePrefix = 'std_mw_inz'
ImportFilePostfix = '.csv'
BackupFileTimeStamp = '-yymmdd_hhmm'
LogFilePostfix = '.log'

View File

@@ -1,3 +0,0 @@
REM PZHO#27709 Invise-import om pasnummer per medewerker te registreren.
cscript ..\..\..\utils\gen_import\gen_import.wsf PZHO INVISE >>genimport.log 2>>&1

View File

@@ -1,7 +0,0 @@
REM nieuw org koppeling wordt nog niet gebruikt.
REM cscript ..\..\..\utils\gen_import\gen_import.wsf PZHO ORG
cscript ..\..\..\utils\gen_import\gen_import.wsf PZHO AFDELING >>genimport.log 2>>&1
cscript ..\..\..\utils\gen_import\gen_import.wsf PZHO MW_INZ >>genimport.log 2>>&1
REM PZHO#27709 Invise-import om pasnummer per medewerker te registreren.
cscript ..\..\..\utils\gen_import\gen_import.wsf PZHO INVISE >>genimport.log 2>>&1

View File

View File

@@ -1,55 +0,0 @@
<%@ language = "JavaScript" %>
<%
DOCTYPE_Disable = 1;
Session("customerId") = 'PZHO';
Response.expires = -1
%>
<!-- #include file="../../../appl/Shared/common.inc" -->
<%
sql =
" CREATE OR REPLACE VIEW pzho_v_noti_noshowbudgeth (code, "
+ " sender, "
+ " receiver, "
+ " text, "
+ " KEY, "
+ " xkey "
+ " ) "
+ " AS "
+ " SELECT 'CUST04' code, "
+ " NULL sender, "
+ " kp.prs_perslid_key receiver, "
+ " 'Facilitaire Zaken: NoShow reservering' text, "
+ " rrr.res_reservering_key key, "
+ " rrr.res_rsv_ruimte_key xkey "
+ " FROM fac_tracking t, "
+ " fac_srtnotificatie s, "
+ " res_rsv_ruimte rrr, "
+ " prs_kostenplaats kp, "
+ " (SELECT p2.prs_perslid_key, "
+ " COALESCE ( "
+ " (SELECT fac.safe_to_number (prs_kenmerklink_waarde) "
+ " FROM prs_kenmerklink kl "
+ " WHERE kl.prs_link_key(+) = p2.prs_perslid_key "
+ " AND prs_kenmerk_key = 1160), "
+ " 6) "
+ " waarde "
+ " FROM prs_perslid p2) mail "
+ " WHERE t.fac_srtnotificatie_key = s.fac_srtnotificatie_key "
+ " AND s.fac_srtnotificatie_code = 'RESNOS' "
+ " AND fac_tracking_refkey = res_rsv_ruimte_key "
+ " AND rrr.prs_kostenplaats_key = kp.prs_kostenplaats_key "
+ " AND kp.prs_perslid_key = mail.prs_perslid_key "
+ " AND mail.waarde = 6 "
+ " AND fac_tracking_datum BETWEEN TRUNC (SYSDATE) - 1 "
+ " AND TRUNC (SYSDATE) "
+ " GROUP BY kp.prs_perslid_key, rrr.res_reservering_key, rrr.res_rsv_ruimte_key ";
Oracle.Execute(sql);
Response.end;
%>

View File

@@ -1,4 +0,0 @@
@echo off
REM Moet gescheduled worden (normaliter 1 keer per uur) om door de applicatiebeheerder
REM ingeregelde notificaties te genereren.
wscript ..\..\..\utils\gen_notify\gen_notify.js ../oracle.udl PZHO

View File

@@ -1,4 +0,0 @@
@echo off
REM Moet gescheduled worden (normaliter 1 keer per dag) om door de applicatiebeheerder
REM ingeregelde jobs (aanmaak van periodieke opdrachten) uit te voeren.
wscript ..\..\..\utils\gen_scheduler\gen_scheduler.js ../oracle.udl

View File

@@ -1 +0,0 @@
call ..\..\..\utils\putOrders\putOrders.bat

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -1,89 +0,0 @@
<%@ language = "JavaScript" %>
<%
DOCTYPE_Disable = 1;
ANONYMOUS_Allowed = 1;
// Lees de vraagstelling in die via XML binnenkomt
Response.Expires=0;
Session("customerId") = 'PZHO';
%>
<!-- #include file="../../../Appl/Shared/common.inc" -->
<%
var objReq = new ActiveXObject("MSXML2.DOMDocument.6.0");
objReq.load(Request);
if (objReq.parseError.errorCode != 0)
{
var myErr = objReq.parseError;
Response.Write("Error parsing request XML: " + myErr.reason);
Response.End;
}
// Zoek het partnummer
var strQuery = "stock_request/part/number";
objPart = objReq.selectSingleNode(strQuery);
strQuery = "stock_request/part/group";
objGroup = objReq.selectSingleNode(strQuery);
if (!objPart)
{
Response.Write(strQuery + " not found in XML");
Response.End;
}
// Prepare result XML
// Response.Write("Part nummer : " + objPart.text);
// Response.End;
var l_voorraad = bepaal_voorraad_van_artikel(objPart.text, objGroup.text);
//__DoLog (l_voorraad);
var xmlDoc = new ActiveXObject("MSXML2.DOMDocument.6.0");
xmlDoc.appendChild(xmlDoc.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"UTF-8\""))
rootElement = xmlDoc.createElement("stock_response");
elementPart = xmlDoc.createElement("part");
elementNumber = xmlDoc.createElement("number");
elementNumberText = xmlDoc.createTextNode(objPart.text);
elementNumber.appendChild(elementNumberText);
elementPart.appendChild(elementNumber);
elementAmount = xmlDoc.createElement("amount");
elementAmountText = xmlDoc.createTextNode(l_voorraad);
elementAmount.appendChild(elementAmountText);
elementPart.appendChild(elementAmount);
elementInfo = xmlDoc.createElement("infotext"); // infohtml bestaat ook
elementInfoText = xmlDoc.createTextNode("Voorraad opgevraagd op "+(new Date()) +
"\ndoor " + Request.ServerVariables("REMOTE_HOST") +
"\nvia: " + Request.ServerVariables("HTTP_HOST") + Request.ServerVariables("URL"));
elementInfo.appendChild(elementInfoText);
elementPart.appendChild(elementInfo);
elementStockTime = xmlDoc.createElement("time");
elementStockTimeText = xmlDoc.createTextNode(new Date());
elementStockTime.appendChild(elementStockTimeText);
elementPart.appendChild(elementStockTime);
rootElement.appendChild(elementPart);
xmlDoc.appendChild(rootElement);
//__DoLog ("Resultaat van default.asp:" + xmlDoc.xml);
Response.ContentType = "text/xml";
Response.Write(xmlDoc.xml);
// MB: Hieronder staat DE functie van de dummy-leverancier die in zijn database de voorraad ophaalt.
// Deze dummy-functie werkt als volgt: zoek van de eerste 5 karakters van het artikelnummer alleen de cijfers en stuur dat terug
// Wanneer de 1e 5 karakters allen geen cijfer zijn, dan wordt de waarde 0 teruggestuurd, dus geen voorraad in dat geval.
function bepaal_voorraad_van_artikel(p_artnr, p_group){
var l_result = "";
sql = "SELECT COALESCE(to_char(voorraad), '-') voorraad "
+ " FROM pzho_v_rap_voorraad "
+ " WHERE hide_f_srtgroep_omschrijving = " + safe.quoted_sql(p_group)
+ " AND artikel_nr = " + safe.quoted_sql(p_artnr);
var oRs = Oracle.Execute(sql);
l_result = oRs("voorraad").Value;
return l_result;
}
%>

View File

@@ -1,105 +0,0 @@
<%@ language = "JavaScript" %>
<% /*
$Revision$
$Id$
File: estate.asp
Description: A webservice call to fill real estate listsboxes in a remote system
Parameters:
action Action: getLocations, getBuildings, getFloors, getRooms
districtCode Optional, Limits the locations to the locations connected to the district.
locatieCode Required for the getGebouw, getVerdieping en getRuimte actions, limits the buildings, floors and rooms
gebouwCode Required for the getVerdieping and getRuimte actions. Limits the floors and rooms.
verdiepingCode Required for the getRuimte actions. Limits the rooms.
Context: Client specific file to display room information from Facilitor
Note: Authorization is not checked (yet).
*/ %>
<%
ANONYMOUS_Allowed = 1;
DOCTYPE_Disable = 1;
Session("customerId") = 'PZHO';
Response.expires = -1
Response.contenttype = "text/xml"
var action = getQParam("action", "");
var districtCode = getQParam("districtCode", "");
var locatieCode = getQParam("locatieCode", "-1");
var gebouwCode = getQParam("gebouwCode", "-1");
var verdiepingCode = getQParam("verdiepingCode", "-1");
%>
<!-- #include file="../../../appl/Shared/common.inc" -->
<%
tagName = "";
if (action == "getLocatie")
{
tagName = "locatie";
codeTag = "code";
descTag = "omschrijving";
sql = "SELECT alg_locatie_code code, alg_locatie_omschrijving description FROM alg_v_locatie_gegevens"
if (districtCode != "")
{
sql += " WHERE alg_district_upper = UPPER (" + safe.quoted_sql(districtCode) + ")";
}
sql += " ORDER BY alg_locatie_omschrijving";
}
else if (action == "getGebouw")
{
tagName = "gebouw";
codeTag = "code";
descTag = "naam";
sql = "SELECT alg_gebouw_code code, alg_gebouw_naam description FROM alg_v_gebouw_gegevens"
+ " WHERE UPPER(alg_locatie_code) = UPPER (" + safe.quoted_sql(locatieCode) + ")"
+ " ORDER BY alg_gebouw_code";
}
else if (action == "getVerdieping")
{
tagName = "verdieping";
codeTag = "code";
descTag = "omschrijving";
sql = "SELECT alg_verdieping_code code, alg_verdieping_omschrijving description FROM alg_v_verdieping_gegevens vg, alg_gebouw g"
+ " WHERE g.alg_gebouw_key = vg.alg_gebouw_key "
+ " AND UPPER(alg_locatie_code) = UPPER (" + safe.quoted_sql(locatieCode) + ")"
+ " AND UPPER(alg_gebouw_code) = UPPER (" + safe.quoted_sql(gebouwCode) + ")"
+ " ORDER BY alg_verdieping_volgnr";
}
else if (action == "getRuimte")
{
tagName = "ruimte";
codeTag = "nr";
descTag = "omschrijving";
sql = "SELECT alg_ruimte_nr code, nvl(alg_ruimte_omschrijving,' ') description FROM alg_v_ruimte_gegevens rg, alg_gebouw g"
+ " WHERE g.alg_gebouw_key = rg.alg_gebouw_key "
+ " AND UPPER(alg_locatie_code) = UPPER (" + safe.quoted_sql(locatieCode) + ")"
+ " AND UPPER(alg_gebouw_code) = UPPER (" + safe.quoted_sql(gebouwCode) + ")"
+ " AND UPPER(alg_verdieping_code) = UPPER (" + safe.quoted_sql(verdiepingCode) + ")"
+ " ORDER BY alg_ruimte_nr";
}
else
{
Response.Status="500 Server error";
Response.Write(Response.Status);
Response.End;
}
Response.write("<?xml version='1.0' encoding='ISO-8859-1'?>");
Response.write("<facilitor>");
oRs = Oracle.Execute(sql);
while (!oRs.eof)
{
Response.write("<" + tagName
+ "><" + codeTag + ">"
+ oRs('code').value
+ "</" + codeTag + "><" + descTag + ">"
+ oRs('description').value
+ "</" + descTag + "></" + tagName + ">");
oRs.MoveNext();
}
oRs.close();
Response.write("</facilitor>")
Response.end;
%>

View File

@@ -1,239 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:import href="../../../appl/shared/default.xsl"/>
<xsl:import href="./environment.xsl"/>
<xsl:variable name="Rev">
<!-- Revision van deze cust.xsl -->
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
</xsl:variable>
<xsl:template match="bestelopdracht" mode="include">
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR>
<TD WIDTH="40" ROWSPAN="30" ID="LINKERMARGE"></TD>
<TD>
<!-- Bestelopdracht -->
<table border="0" bordercolor="#ffffff" width="100%">
<tr>
<td colspan="5" class="caption" style="text-align:center">
<b>Inkooporder</b>
</td>
</tr>
<tr>
<td colspan="5" style="height:30"/>
</tr>
<tr>
<td colspan="2" style="width:47%">
<b>Factuur aan:</b>
</td>
<td style="width:6%"></td>
<td colspan="2" style="width:47%">
<b>Leverancier:</b>
</td>
</tr>
<tr>
<td colspan="2">
<xsl:value-of select="factuuradres/naam"/>
<br/>
<xsl:value-of select="factuuradres/contactpersoon"/>
<br/>
<xsl:value-of select="factuuradres/post_adres"/>
<br/>
<xsl:value-of select="factuuradres/post_postcode"/>&#xA0;
<xsl:value-of select="factuuradres/post_plaats"/>
<br/>
<xsl:value-of select="factuuradres/post_land"/>
</td>
<td/>
<td colspan="2">
<xsl:value-of select="bedrijf/naam"/>
<br/>
<xsl:value-of select="bedrijf/post_adres"/>
<br/>
<xsl:value-of select="bedrijf/post_postcode"/>&#xA0;
<xsl:value-of select="bedrijf/post_plaats"/>
<br/>
<xsl:value-of select="bedrijf/post_land"/>
<br/>
<b>Fax:</b><xsl:value-of select="bedrijf/fax"/>
</td>
</tr>
<tr>
<td colspan="5" style="height:20"/>
</tr>
<tr>
<td colspan="2">
<b>Contactgevevens:</b>
</td>
<td/>
<td colspan="2">
<b/>
</td>
</tr>
<tr>
<td colspan="2" style="vertical-align:top">
<b>Besteller:</b>
<xsl:value-of select="bestelling/aanvrager/naam_full"/>
<br/>
<b>E-mail:</b>
<xsl:value-of select="bestelling/aanvrager/email"/>
<br/>
<b>Telefoon:</b>
<xsl:value-of select="bestelling/aanvrager/telefoonnr"/>
<br/>
<b>Kostenplaats:</b>
<xsl:value-of select="bestelling/kostenplaats/nr"/>
<br/>
<b>Werkplek:</b>
<xsl:value-of select="bestelling/plaats"/>
</td>
<td/>
<td colspan="2" style="vertical-align:top">
<b>Aanvraagnummer(s):</b>
<xsl:value-of select="bestelling/key"/>
<br/>
<b>Opdrachtnummer:</b>
<xsl:value-of select="id"/>
<br/>
<b>Orderdatum:</b>
<xsl:value-of select="datum/datum"/>
<br/>
<b>Deelproductnr:</b>
<xsl:value-of select="bestelling/ordernr"/>
<br/>
</td>
</tr>
<tr>
<td colspan="5" style="height:20"/>
</tr>
<tr>
<td colspan="2">
<b>Afleveradres:</b>
</td>
<td/>
<td colspan="2">
<b/>
</td>
</tr>
<tr>
<td colspan="2" style="vertical-align:top">
<xsl:value-of select="afleveradres/naam"/>
<br/>
<xsl:value-of select="afleveradres/bezoek_adres"/>
<br/>
<xsl:value-of select="afleveradres/bezoek_postcode"/>&#xA0;
<xsl:value-of select="afleveradres/bezoek_plaats"/>
<br/>
<xsl:value-of select="afleveradres/bezoek_land"/>
</td>
<td/>
<td colspan="2" style="vertical-align:top">
<xsl:for-each select="bestelling/kenmerk">
<b>
<xsl:value-of select="@naam"/>:</b>
<xsl:value-of select="."/>
<br/>
</xsl:for-each>&#xA0;</td>
</tr>
<tr>
<td colspan="5" style="height:20"/>
</tr>
<TR>
<TD colspan="5">
<TABLE cellpadding="0" cellspacing="0" border="1" bordercolor="#303030" width="100%">
<tr>
<th style="width:20">Regel</th>
<th style="width:20">Artikelnr</th>
<th style="width:200">Omschrijving</th>
<th style="width:20">Eenheid</th>
<th style="width:20; text-align:right">Aantal</th>
<xsl:if test="aantal_geleverd &gt; 0">
<th style="width:20; text-align:right">Geleverd</th>
</xsl:if>
<th style="width:20; text-align:right">Prijs</th>
<th style="width:20; text-align:right">Totaal</th>
</tr>
<xsl:for-each select="bestelopdrachtitem">
<xsl:sort select="srtdeel/omschrijving"/>
<xsl:sort select="posnr" data-type="number"/>
<tr>
<td class="result">
<xsl:value-of select="posnr"/>
</td>
<td class="result">
<xsl:value-of select="bestelitem/srtdeel/artikel_nummer"/>
</td>
<td class="result">
<xsl:value-of select="bestelitem/srtdeel/omschrijving"/>&#xA0;
<xsl:for-each select="bestelitem/kenmerk">
<br/>
<xsl:value-of select="@naam"/>: <xsl:value-of select="."/></xsl:for-each>
</td>
<td class="result">
<xsl:value-of select="bestelitem/srtdeel/eenheid"/>
</td>
<td class="result" style="text-align:right">
<xsl:value-of select="aantal"/>
</td>
<xsl:if test="../aantal_geleverd &gt; 0">
<td class="result" style="text-align:right">
<xsl:value-of select="aantalontv"/>
</td>
</xsl:if>
<td class="result" style="text-align:right">
<xsl:value-of select="format-number(prijs, '0,00', 'european')"/>
</td>
<td class="result" style="text-align:right">
<xsl:value-of select="format-number(totaal, '0,00', 'european')"/>
</td>
</tr>
</xsl:for-each>
<tr>
<td colspan="6"/>
<xsl:if test="aantal_geleverd &gt; 0">
<td/>
</xsl:if>
<td style="text-align:right">
<b>
<xsl:value-of select="format-number(sum(bestelopdrachtitem/totaal), '0,00', 'european')"/>
</b>
</td>
</tr>
</TABLE>
</TD>
</TR>
<tr>
<td colspan="5" style="text-align:right">Alle bedragen zijn inclusief BTW</td>
</tr>
<tr>
<td colspan="5" style="height:40"/>
</tr>
<xsl:if test="aantal_geleverd &gt; 0">
<tr>
<td colspan="5">De order is geleverd op <xsl:value-of select="leverdatum"/></td>
</tr>
<tr>
<td colspan="5">De status van de order is <xsl:value-of select="status"/></td>
</tr>
<tr>
<td colspan="5" style="height:40"/>
</tr>
</xsl:if>
<tr>
<td colspan="5" style="text-align:center; font-size:9px">Op leveringen die gedaan zijn op basis van dit formulier zijn onze algemene leveringsvoorwaarden van toepassing.
Indien sprake is van een mantelovereenkomst geschiedt deze order onder de bepalingen uit de mantelovereenkomst.
Facturen zonder vermelding van het opdrachtnummer (<xsl:value-of select="id"/>) worden niet in behandeling genomen.</td>
</tr>
</table>
</TD>
<TD WIDTH="30" ROWSPAN="30" ID="RECHTERMARGE"/>
</TR>
</TABLE>
</xsl:template>
</xsl:stylesheet><!-- Stylus Studio meta-information - (c) 2004-2006. Progress Software Corporation. All rights reserved.
<metaInformation>
<scenarios ><scenario default="yes" name="Scenario1" userelativepaths="yes" externalpreview="no" url="..\..\..\..\Facilitor480\reportsCache\PZHObestelopdr995.xml" htmlbaseurl="" outputurl="" processortype="internal" useresolver="yes" profilemode="0" profiledepth="" profilelength="" urlprofilexml="" commandline="" additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" validateoutput="no" validator="internal" customvalidator=""/></scenarios><MapperMetaTag><MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="" destSchemaRoot="" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no"/><MapperBlockPosition></MapperBlockPosition><TemplateContext></TemplateContext><MapperFilter side="source"></MapperFilter></MapperMetaTag>
</metaInformation>
-->

View File

@@ -1,177 +0,0 @@
<?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" encoding="UTF-8" indent="yes"/>
<xsl:decimal-format name="european" decimal-separator="." grouping-separator=","/>
<xsl:variable name="Rev">
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
</xsl:variable>
<xsl:param name="mode"/>
<xsl:template match="bestelopdracht">
<xsl:comment>Facilitor custom XSL template for cXML bestelopdracht</xsl:comment>
<xsl:element name="cXML">
<xsl:attribute name="version">1.2.016</xsl:attribute>
<xsl:attribute name="payloadID">O-<xsl:value-of select="id"/></xsl:attribute>
<xsl:attribute name="timestamp"><xsl:value-of select="datum/jaar"/>-<xsl:value-of select="datum/maand"/>-<xsl:value-of select="datum/dag"/>T<xsl:value-of select="datum/tijd"/>:00+01:00</xsl:attribute>
<xsl:attribute name="xml:lang">NL</xsl:attribute>
<Header>
<From>
<Credential domain="Facilitor" type="marketplace">
<Identity>PZHxxxxx</Identity>
</Credential>
</From>
<To>
<xsl:element name="Credential">
<xsl:attribute name="domain"><xsl:value-of select="bedrijf/naam"/></xsl:attribute>
<Identity/>
</xsl:element>
</To>
<Sender>
<Credential domain="Facilitor">
<Identity/>
</Credential>
<UserAgent/>
</Sender>
</Header>
<Request>
<OrderRequest>
<xsl:element name="OrderRequestHeader">
<xsl:attribute name="orderID">O-<xsl:value-of select="id"/></xsl:attribute>
<xsl:attribute name="orderDate"><xsl:value-of select="datum/datum"/></xsl:attribute>
<Total>
<Money currency="EUR">
<xsl:value-of select="format-number(sum(bestelopdrachtitem/totaal), '0.00', 'european')"/>
</Money>
</Total>
<ShipTo>
<xsl:element name="Address">
<Name xml:lang="NL">PZH (<xsl:value-of select="afleveradres/naam"/>)</Name>
<PostalAddress>
<DeliverTo>
<xsl:value-of select="bestelling/aanvrager/naam_full"/>
</DeliverTo>
<xsl:if test="bestelling/plaats != ''">
<DeliverTo>
<xsl:value-of select="bestelling/plaats"/>
</DeliverTo>
</xsl:if>
<Street>
<xsl:value-of select="afleveradres/bezoek_adres"/>
</Street>
<City>
<xsl:value-of select="afleveradres/bezoek_plaats"/>
</City>
<State/>
<PostalCode>
<xsl:value-of select="afleveradres/bezoek_postcode"/>
</PostalCode>
<Country isoCountryCode="NL"/>
</PostalAddress>
</xsl:element>
</ShipTo>
<BillTo>
<xsl:element name="Address">
<xsl:attribute name="addressID">PZH</xsl:attribute>
<Name xml:lang="NL">
<xsl:value-of select="factuuradres/naam"/>
</Name>
<PostalAddress>
<Street>
<xsl:value-of select="factuuradres/post_adres"/>
</Street>
<City>
<xsl:value-of select="factuuradres/post_plaats"/>
</City>
<State/>
<PostalCode>
<xsl:value-of select="factuuradres/post_postcode"/>
</PostalCode>
<Country isoCountryCode="NL"/>
</PostalAddress>
</xsl:element>
</BillTo>
<Contact>
<Name xml:lang="NL">
<xsl:value-of select="bestelling/aanvrager/naam_full"/>
</Name>
<Email>
<xsl:value-of select="bestelling/aanvrager/email"/>
</Email>
<Phone>
<TelephoneNumber>
<CountryCode isoCountryCode="NL"/>
<AreaOrCityCode/>
<Number>
<xsl:value-of select="bestelling/aanvrager/telefoonnr"/>
</Number>
</TelephoneNumber>
</Phone>
</Contact>
<Extrinsic name="CostCenter">
<xsl:value-of select="bestelling/kostenplaats/nr"/>
</Extrinsic>
</xsl:element>
<xsl:for-each select="bestelopdrachtitem">
<xsl:sort select="srtdeel/omschrijving"/>
<xsl:sort select="posnr"/>
<xsl:element name="ItemOut">
<xsl:attribute name="quantity"><xsl:value-of select="aantal"/></xsl:attribute>
<xsl:attribute name="lineNumber"><xsl:value-of select="posnr"/></xsl:attribute>
<xsl:attribute name="requestedDeliveryDate"><xsl:value-of select="/facilitor/bestelopdracht/bestelling/leverdatum/datum"/></xsl:attribute>
<ItemID>
<SupplierPartID>
<xsl:value-of select="bestelitem/srtdeel/artikel_nummer"/>
</SupplierPartID>
</ItemID>
<ItemDetail>
<UnitPrice>
<Money currency="EUR">
<xsl:value-of select="prijs"/>
</Money>
</UnitPrice>
<Description xml:lang="NL">
<xsl:value-of select="bestelitem/srtdeel/omschrijving"/>
</Description>
<UnitOfMeasure><xsl:value-of select='bestelitem/srtdeel/eenheid'/></UnitOfMeasure>
<Classification domain=""/>
<xsl:for-each select="bestelitem/kenmerk">
<xsl:if test="@type!='Q' and @type!='L'">
<xsl:element name="Extrinsic">
<xsl:attribute name="name"><xsl:value-of select="@naam"/></xsl:attribute>
<xsl:value-of select="."/>
</xsl:element>
</xsl:if>
</xsl:for-each>
</ItemDetail>
</xsl:element>
</xsl:for-each>
</OrderRequest>
</Request>
</xsl:element>
</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><!-- Stylus Studio meta-information - (c) 2004-2006. Progress Software Corporation. All rights reserved.
<metaInformation>
<scenarios ><scenario default="yes" name="Scenario1" userelativepaths="yes" externalpreview="no" url="..\..\..\Temp\PZHObestelopdr1942.xml" htmlbaseurl="" outputurl="" processortype="internal" useresolver="yes" profilemode="0" profiledepth="" profilelength="" urlprofilexml="" commandline="" additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" validateoutput="no" validator="internal" customvalidator=""/></scenarios><MapperMetaTag><MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="" destSchemaRoot="" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no"/><MapperBlockPosition></MapperBlockPosition><TemplateContext></TemplateContext><MapperFilter side="source"></MapperFilter></MapperMetaTag>
</metaInformation>
-->

View File

@@ -1,179 +0,0 @@
<?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" 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-->
<xsl:element name="cXML">
<xsl:attribute name="version">1.2.016</xsl:attribute>
<xsl:attribute name="payloadID">
<xsl:value-of select="key"/>
</xsl:attribute>
<xsl:attribute name="timestamp">
<xsl:value-of select="datum/jaar"/>-<xsl:value-of select="datum/maand"/>-<xsl:value-of select="datum/dag"/>T<xsl:value-of select="datum/tijd"/>:00+01:00</xsl:attribute>
<xsl:attribute name="xml:lang">NL</xsl:attribute>
<Header>
<From>
<xsl:element name="Credential">
<xsl:attribute name="domain">
<xsl:value-of select="/facilitor/header/custId"/>
</xsl:attribute>
<!--Klantcode zoals door Office Depot aan PZHO toegekend-->
<Identity>5637725</Identity>
</xsl:element>
</From>
<To>
<xsl:element name="Credential">
<xsl:attribute name="domain">
<xsl:value-of select="bedrijf/naam"/>
</xsl:attribute>
<Identity/>
</xsl:element>
</To>
<Sender>
<Credential domain="Facilitor">
<Identity/>
</Credential>
<UserAgent/>
</Sender>
</Header>
<Request>
<OrderRequest>
<xsl:element name="OrderRequestHeader">
<xsl:attribute name="orderID">
<xsl:value-of select="id"/>
</xsl:attribute>
<xsl:attribute name="orderDate">
<xsl:value-of select="datum/jaar"/>-<xsl:value-of select="datum/maand"/>-<xsl:value-of select="datum/dag"/>
</xsl:attribute>
<Total>
<Money currency="EUR">
<xsl:value-of select="format-number(sum(bestelopdrachtitem/totaal), '0.00', 'european')"/>
</Money>
</Total>
<ShipTo>
<xsl:element name="Address">
<xsl:variable name="varNaam">
<xsl:value-of select="afleveradres/naam"/>
</xsl:variable>
<xsl:attribute name="addressID">
<xsl:value-of select="substring($varNaam,1,5)"/>
</xsl:attribute>
<Name xml:lang="NL"><xsl:value-of select="afleveradres/naam"/></Name>
<PostalAddress>
<DeliverTo>
<xsl:value-of select="bestelling/aanvrager/naam_full"/>
</DeliverTo>
<xsl:if test="bestelling/plaats != ''">
<DeliverTo><xsl:value-of select="bestelling/plaats"/>
</DeliverTo>
</xsl:if>
<Street>
<xsl:value-of select="afleveradres/bezoek_adres"/>
</Street>
<City>
<xsl:value-of select="afleveradres/bezoek_plaats"/>
</City>
<State/>
<PostalCode>
<xsl:value-of select="afleveradres/bezoek_postcode"/>
</PostalCode>
<Country isoCountryCode="NL"/>
</PostalAddress>
</xsl:element>
</ShipTo>
<BillTo>
<xsl:element name="Address">
<xsl:attribute name="addressID">PZHO</xsl:attribute>
<Name xml:lang="NL">
<xsl:value-of select="factuuradres/naam"/>
</Name>
<PostalAddress>
<Street>
<xsl:value-of select="factuuradres/post_adres"/>
</Street>
<City>
<xsl:value-of select="factuuradres/post_plaats"/>
</City>
<State/>
<PostalCode>
<xsl:value-of select="factuuradres/post_postcode"/>
</PostalCode>
<Country isoCountryCode="NL"/>
</PostalAddress>
</xsl:element>
</BillTo>
<Contact>
<Name xml:lang="NL">
<xsl:value-of select="bestelling/aanvrager/naam_full"/>
</Name>
<Email>
<xsl:value-of select="bestelling/aanvrager/email"/>
</Email>
</Contact>
<Extrinsic name="Costcenter">
<xsl:value-of select="bestelling/kostenplaats/nr"/>
</Extrinsic>
</xsl:element>
<xsl:for-each select="bestelopdrachtitem">
<xsl:sort select="srtdeel/omschrijving"/>
<xsl:sort select="posnr"/>
<xsl:element name="ItemOut">
<xsl:attribute name="quantity">
<xsl:value-of select="aantal"/>
</xsl:attribute>
<xsl:attribute name="lineNumber">
<xsl:value-of select="posnr"/>
</xsl:attribute>
<xsl:attribute name="requestedDeliveryDate">
<xsl:value-of select="../bestelling/leverdatum/jaar"/>-<xsl:value-of select="../bestelling/leverdatum/maand"/>-<xsl:value-of select="../bestelling/leverdatum/dag"/>
</xsl:attribute>
<ItemID>
<SupplierPartID>
<xsl:value-of select="bestelitem/srtdeel/artikel_nummer"/>
</SupplierPartID>
</ItemID>
<ItemDetail>
<UnitPrice>
<Money currency="EUR">
<xsl:value-of select="format-number(prijs, '0.00', 'european')"/>
</Money>
</UnitPrice>
<Description xml:lang="NL">
<xsl:value-of select="bestelitem/srtdeel/omschrijving"/>
</Description>
<UnitOfMeasure>
<xsl:value-of select="bestelitem/srtdeel/eenheid"/>
</UnitOfMeasure>
<Classification domain=""/>
</ItemDetail>
</xsl:element>
</xsl:for-each>
</OrderRequest>
</Request>
</xsl:element>
</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>

View File

@@ -1,13 +0,0 @@
<?xml version='1.0'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!-- dit bestand moet de url naar de root van Facilitor bevatten. Deze URL is
afhankelijk van de omgeving Test/Acceptatie/Productie -->
<xsl:variable name="FacilitorRoot">dit03/facilitorwork</xsl:variable>
</xsl:stylesheet><!-- Stylus Studio meta-information - (c) 2004-2006. Progress Software Corporation. All rights reserved.
<metaInformation>
<scenarios/><MapperMetaTag><MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="" destSchemaRoot="" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no"/><MapperBlockPosition></MapperBlockPosition><TemplateContext></TemplateContext><MapperFilter side="source"></MapperFilter></MapperMetaTag>
</metaInformation>
-->

File diff suppressed because it is too large Load Diff

View File

@@ -1,63 +0,0 @@
<?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" encoding="UTF-8"/>
<xsl:decimal-format name="european" decimal-separator="." grouping-separator=","/>
<xsl:param name="mode"/>
<xsl:template match="stock_request">
<!--Facilitor custom XSL template for stock_request info -->
<xsl:element name="stock_request">
<xsl:element name="part">
<xsl:element name="number">
<xsl:value-of select="part/number"/>
</xsl:element>
<xsl:element name="group">
<xsl:value-of select="part/group"/>
</xsl:element>
</xsl:element>
</xsl:element>
</xsl:template>
<xsl:template match="stock_response">
<!--Facilitor custom XSL template for stock_response info -->
<xsl:element name="facilitor">
<xsl:element name="stock_response">
<xsl:element name="part">
<xsl:element name="number">
<xsl:value-of select="part/number"/>
</xsl:element>
<xsl:element name="amount">
<xsl:value-of select="part/amount"/>
</xsl:element>
</xsl:element>
</xsl:element>
</xsl:element>
</xsl:template>
<xsl:template match="facilitor">
<xsl:apply-templates select="folder"/>
<xsl:apply-templates select="stock_request"/>
<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:apply-templates select="stock_response"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet><!-- Stylus Studio meta-information - (c) 2004-2006. Progress Software Corporation. All rights reserved.
<metaInformation>
<scenarios ><scenario default="yes" name="Scenario1" userelativepaths="yes" externalpreview="no" url="file:///c:/temp/voorraadresp.xml" htmlbaseurl="" outputurl="" processortype="internal" useresolver="yes" profilemode="0" profiledepth="" profilelength="" urlprofilexml="" commandline="" additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" validateoutput="no" validator="internal" customvalidator=""/></scenarios><MapperMetaTag><MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="" destSchemaRoot="" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no"/><MapperBlockPosition></MapperBlockPosition><TemplateContext></TemplateContext><MapperFilter side="source"></MapperFilter></MapperMetaTag>
</metaInformation>
-->