svn path=/Website/trunk/; revision=6
This commit is contained in:
Peter Feij
2009-10-05 06:44:06 +00:00
parent 4020757dc8
commit 413498318a
430 changed files with 90052 additions and 0 deletions

0
APPL/ALG/.gitignore vendored
View File

100
APPL/ALG/alg_district.asp Normal file
View File

@@ -0,0 +1,100 @@
<%@language = "javascript" %>
<% // testing: bes_key=1251054
/* $Revision: 1 $
$Modtime: 22-09-09 14:00 $
File: bes_edit.asp
Status: 40% (new style)
Description: Muteerscherm voor bestellingen
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: urole
bes_key
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/funcodes.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/cmenuFn.inc"-->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "FCLTMgr.js", "jquery-ui.js"]})
/* AUTORISATIEPARAMETERS
var urole = getQParam("urole");
// Om nog even compatible te blijven zodat alles nog even blijft werken. Moet er straks uit, natuurlijk.
var fronto = urole == "fo";
var backo = urole == "bo";
var minfo = urole == "mi";
var frontend = (!fronto & !backo & !minfo);
// de melding waar het over gaat, kan leeg zijn voor nieuwe, maar dat mag niet met bo of mi
var autfunction = '';
if (fronto)
autfunction = 'WEB_BESFOF';
else if (backo)
autfunction = 'WEB_BESBOF';
else
autfunction = 'WEB_BESUSE'; */
var autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction); //Wat weet ik dan nou van disciplines???
var dis_key = getQParamInt("key", -1);
// OVERIGE PARAMETERS
// dit lijkt mij de enige gehele readonlyverklaring, de rest is localer
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<%
//======================================
%>
</head>
<body id="editbody">
<%
if (dis_key == -1)
var page="alg_edit_district.asp"; // Maak een nieuw
else
var page="alg_show_district.asp";
page += "?urole=bo&bld_key="+dis_key;
IFRAMER("algFrame", page, { title: lcl_alg_district_frame,
initHeight: "450px"
} );
// AKZA#88 don not allow printing if call isn't saved yet.
// UWVA#427 also print for FE
if (dis_key>-1 ) {
add_str ='huh?';
menuArray = new Array();
menuArray[0] = lcl_print_report;
menuArray[1] = lcl_noti_vis_email;
onClickArray = new Array();
onClickArray[0] = 'print_test(0)';
onClickArray[1] = 'print_test(1)';
// TODO: ik denk niet hier: generateCmenu("c_menu")
} %>
</body>
</html>

View File

@@ -0,0 +1,184 @@
<% /*
$Revision: 1 $
$Modtime: 28-09-09 23:39 $
File: alg_district.inc
Description: Show an overview of district items in list-form,
which meets with the given requirements
Parameters:
Context: Search action from alg_district_search_list.asp form
Note:
*/ %>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
})
function fnrowData(oRs)
{
var parent_key = oRs("alg_regio_key").value;
var detail_key = oRs("alg_district_key").value;
var key = oRs("alg_district_key").value;
var oms = oRs("alg_district_omschrijving").value;
var data = {parent_key:parent_key, detail_key:detail_key, key:key, oms:oms};
return JSON.stringify(data);
}
%>
<script>
dtable = "ALG_DISTRICT";
</script>
<script type="text/javascript">
var lcl_row_delete_failed1 = "<%=lcl_row_delete_failed1%>";
var lcl_row_delete_failed2 = "<%=lcl_row_delete_failed2%>";
var autosearch = 1; // automatisch laden van resultaat op search pagina.
function gotoDetails(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_locatie_search.asp?district_key="+algData.detail_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_location%>");
}
function gotoParent(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_regio_search.asp?regio_key="+algData.parent_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_region%>");
}
function gebouwEdit(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_district.asp?mode=viewUpdate&key="+algData.key;
FcltMgr.openDetail(url, "<%=lcl_district%>" + ' ' + algData.oms);
}
function doDelete(row)
{
if (confirm('<%=lcl_row_delete_confirm%>')) {
var algData = eval('(' + row.ROWDATA + ')');
parent.document.body.style.cursor = "wait";
document.body.style.cursor = "wait";
hiddenFrame.navigate("setAlgVerwijder.asp?key=" + algData.key + "&table=" + dtable);
}
}
function DeleteFailed(result)
{
if (result == 1 ) {
alert(lcl_row_delete_failed1);
} else if ( result == 2 ) {
alert(lcl_row_delete_failed2);
}
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
function Deleted()
{
algtable.deleteSelectedRows();
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
</script>
<%
function gebouw_list(pautfunction, params)
{
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(pautfunction);
var canWrite = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var reg_key = params.reg_key;
var dis_key = params.dis_key;
%>
<html>
<head>
<% FCLTHeader.Generate({outputmode:outputmode}) %>
</head>
<body id="listbody">
<%
var lcl_titel = "Titel"
var lcl_geldig_van = "Geldig van"
var lcl_geldig_tot = "Geldig tot"
var lcl_locatie = "Locatie"
var lcl_gebouw_omschr = "Omschrijving"
var lcl_gebruiker = "Gebruiker"
var lcl_nieuws_aanmaak = "datum aangemaakt" // later algemeen maken?
var sqln = "SELECT d.alg_district_key, "
+ " d.alg_regio_key, "
+ " d.alg_district_omschrijving, "
+ " r.alg_regio_omschrijving "
+ " FROM alg_district d, "
+ " alg_regio r "
+ " WHERE r.alg_regio_key = d.alg_regio_key "
+ " AND d.alg_district_verwijder IS NULL ";
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
sqln += " AND d.alg_district_key IN "
+ "(SELECT alg_district_key FROM fac_v_my_districts "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
sqln += getKenmerkSql("ALG", "d.alg_district_key");
if (dis_key)
{
sqln += " AND d.alg_district_key = " + dis_key;
}
else if (reg_key)
{
sqln += " AND d.alg_regio_key = " + reg_key;
}
sqln += " ORDER BY d.alg_district_upper ASC "
var addurl = "appl/alg/alg_district.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
var rst = new ResultsetTable({sql:sqln,
keyColumn: "alg_district_key",
ID: "algtable",
rowData: fnrowData,
flexModule: "ALG",
flexId: "alg_district_key",
filterParams: params,
outputmode: outputmode,
buttons: [{ icon: "plus.png", title: lcl_add, action: "FcltMgr.openDetail('" + addurl + "', '" + lcl_add + "')" }]
});
rst.addColumn(new Column({caption: lcl_estate_regio_descr, content: "alg_regio_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_district_man_descr, content: "alg_district_omschrijving", hasActions: true}));
rst.addAction({ action: "gebouwEdit", caption: lcl_edit, isDefault: true});
if (canWrite )
rst.addAction({ action: "doDelete", caption: lcl_delete, multi: true});
rst.addAction({ action: "gotoDetails", caption: lcl_goto_locatie_list});
rst.addAction({ action: "gotoParent", caption: lcl_goto_regio_list});
var cnt = rst.processResultset();
%>
<iframe src="../Shared/empty.asp" id=hiddenFrame name=hiddenFrame style="display:none"></iframe>
</body>
</html>
<%}%>

View File

@@ -0,0 +1,97 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 28-09-09 23:39 $
*/ %>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: ["expand_frame.js"]
});
var regio_key = getQParamInt("regio_key", -1);
var district_key = getQParamInt("district_key", -1);
var autosearch = getQParam("autosearch", -1);
autfunction = "WEB_ALGMAN"; //todo WEB_ALGUSE
var authparams = user.checkAutorisation(autfunction);
var lcl_bld_kenmerken = "TODO lcl_gebouw_kenmerken";
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
function doSubmit()
{
// Submitten met kenmerken
doSubmitWithKenmerken(0);
}
function myModal()
{
var lvl = "'D'";
var key = 0;
var bld_key = "";
var url = "load_kenmerk.asp?disc=" + "&urole=bo" + "&advanced=1" + "&bld_key=" +bld_key + "&onrgoedlvl=" + lvl;
var titel = "<%=lcl_bld_kenmerken%>";
showKenmerkModal(key, url, titel)
}
$(document).ready(function() {<% if (autosearch == 1) { %> document.forms.u2.submit();<%}%>});
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", lcl_filterblok);%>
<form name="u2" target="workFrame" action="alg_district_search_list.asp" method="get">
<table id="searchtable"><!-- 1 rij, 2 kolommen -->
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Locatie, gebouw en verdieping -->
<tr class="primsearch">
<td colspan="2">
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
regiokey: regio_key,
districtkey: district_key,
startlevel: 0, // Regio
eindlevel: 1, // District
whenEmpty: lcl_search_generic
});
%>
</td>
</tr>
</table>
</td><!-- end column 1 -->
<td class="searchkolom2">
</td><!-- end column 1 -->
</tr>
</table>
</form>
<% BLOCK_END();
var buttons = [ {title: lcl_search, action:"doSubmit()", id:"bSearch" },
{title: lcl_obj_advanced, action:"myModal()", id:"bAdvanced" } ];
CreateButtons(buttons); %>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload='ExpandFrame("workFrame")'
frameborder="0" scrolling="no">
</iframe>
</div>
</body>
</html>

View File

@@ -0,0 +1,47 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 27-08-09 12:02 $
File: alg_district_search_list.asp
Description: Vangt de parameters van msg_search op en verwerkt die in een aanroep van msg_list
Parameters: urole
Context: Vanuit alg_district.asp
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="alg_district_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// FORM parameters: de waarde indien aanwezig, anders null
// Vaak is een lege selectie ook een -1, dus dan is-ie wel aanwezig, maar hoeft niet
// als filter te worden toegepast. Dan is null dus gelijk aan -1, qua betekenis,
// Vandaar dat een default van -1 ipv null ook mag
// In eerste instantie identificeren we elk veld gewoon 1-op-1.
var outputmode = parseInt(getQParam("outputmode", 0), 10); // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParam("showall", "0") == "1";
var reg_key = getQParamInt("regiokey", -1); // Regio
var dis_key = getQParamInt("districtkey", -1); // District
var autfunction = "WEB_ALGMAN";
gebouw_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
reg_key: (reg_key != -1? reg_key : null),
dis_key: (dis_key != -1? dis_key : null)
}
);
%>

View File

@@ -0,0 +1,123 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 16:06 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery", "kenmerk"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
var dis_key = parseInt(getQParam("dis_key", "-1"), 10);
var reg_key
var onrgoedlvl = "'D'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
if (dis_key > 0)
{
sql = " select * "
+ " FROM alg_district "
+ " WHERE alg_district_key = " + dis_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var dis_oms = oRsMes("alg_district_omschrijving").value;
} else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
document.forms.u2.submit();
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name="u2" action="alg_edit_district_save.asp?urole=bo&dis_key=<%=dis_key%>" method=post onSubmit="alg_submit();">
<%
var buttons = [ {title: lcl_submit, action:"alg_submit()", icon: "opslaan.png", id:"bsubmit_alg_distrcit" },
{title: lcl_cancel, action:"alg_cancel()", icon: "undo.png", id:"bcancel_alg_district" } ];
IFRAMER_HEADER(lcl_alg_district_frame, buttons);
BLOCK_START("algInfo", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
regiokey: reg_key,
districtkey: dis_key,
startlevel: 0, // Regio
eindlevel: 0 // District
});
%>
<tr>
<td class="label"><label><%=lcl_district%>:</label></td>
<td><input class="fldmsgsubj" type="text" id="dis_oms" name="dis_oms" value="<%=dis_oms%>"></td>
</tr>
</table>
<%
BLOCK_END();
BLOCK_START("algFlex", lcl_mld_flexblok);
%>
<!-- theText indicates flexkenmerken will follow on the next row -->
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : dis_key,
onrgoedlvl : onrgoedlvl,
reado : false
//mldman : false // TODO: => MGE: Niet meer nodig. Wordt in generateFlexKenmerkCode bepaald.
});
%>
<% // </td></tr> %>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,56 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 29-09-09 14:54 $
SUBMIT-form
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../shared/calendar.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/date_sql.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: ["FcltMgr.js"]
}) %>
<%
var dis_key = getQParamInt( "dis_key" );
var dis_oms =getFParam("dis_oms", "");
var fields = [ { dbs: "alg_district_omschrijving", typ: "varchar", frm: "dis_oms" }];
sql = buildUpdate("alg_district", fields)
+ " alg_district_key = " + dis_key;
oRs = Oracle.Execute(sql);
saveFlexKenmerken(dis_key, "ALG_KENMERK", "ALG_KENMERK_KEY",
"MLD_KENMERKMELDING_WAARDE", "mld_kenmerk_key",
null, // ??? Geen keys nodig, we hebben alles al opgeruimd
false, // geen QueryString maar Form
"D",null,
false, null);
/* function saveFlexKenmerken(parentKey, kenmerkTable, kenmerkParentKey,
kenmerkWaarde, kenmerkKey, currentKenmerkenSQL, RequestQ,
moduleName, moduleVal,
isNew, flexPath)*/
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
FcltMgr.closeDetail(window, { regio_key: <%=reg_key%> });
</script>
</head>
<body onLoad="loaded();">
</body>
</html>

View File

@@ -0,0 +1,229 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 16:05 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery", "kenmerk"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
var bld_key = parseInt(getQParam("bld_key", "-1"), 10);
var loc_key
var onrgoedlvl = "'G'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
if (bld_key > 0)
{
sql = " select * "
+ " FROM ALG_GEBOUW "
+ " WHERE alg_gebouw_key = " + bld_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var bld_srtkey = oRsMes("ALG_SRTGEBOUW_KEY").value;
var bld_acakey = oRsMes("ALG_GEBOUW_ACADKEY").value;
var bld_naam = oRsMes("ALG_GEBOUW_NAAM").value;
var bld_code = oRsMes("ALG_GEBOUW_CODE").value;
var bld_descr = oRsMes("ALG_GEBOUW_OMSCHRIJVING").value;
var bld_maak = oRsMes("ALG_GEBOUW_AANMAAK").value;
var bld_teken = oRsMes("ALG_GEBOUW_GETEKEND").value;
var bld_opp = oRsMes("ALG_GEBOUW_BRUTO_VLOEROPP").value;
var bld_omtrek = oRsMes("ALG_GEBOUW_OMTREK").value;
var bld_inhoud = oRsMes("ALG_GEBOUW_INHOUD").value;
var bld_opmerk = oRsMes("ALG_GEBOUW_OPMERKING").value;
var mld_adres = oRsMes("MLD_ADRES_KEY").value;
var prs_kstpl = oRsMes("PRS_KOSTENPLAATS_KEY").value;
var bld_ordrnr = oRsMes("ALG_GEBOUW_ORDERNR").value;
var bld_dwgx = oRsMes("ALG_GEBOUW_DWGX").value;
var bld_dwgy = oRsMes("ALG_GEBOUW_DWGY").value;
var bld_x = oRsMes("ALG_GEBOUW_X").value;
var bld_y = oRsMes("ALG_GEBOUW_Y").value;
var bld_bez = oRsMes("ALG_GEBOUW_BEZ").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
document.forms.u2.submit();
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name="u2" action="alg_edit_gebouw_save.asp?urole=bo&bld_key=<%=bld_key%>" method=post onSubmit="alg_submit();">
<%
var buttons = [ {title: lcl_submit, action:"alg_submit()", icon: "opslaan.png", id:"bsubmit_alg_distrcit" },
{title: lcl_cancel, action:"alg_cancel()", icon: "undo.png", id:"bcancel_alg_district" } ];
IFRAMER_HEADER(lcl_alg_gebouw_frame, buttons);
BLOCK_START("algLoc1", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: loc_key,
gebouwkey: bld_key,
startlevel: 2, //Locatie
eindlevel: 2, // Locatie
readonly: false }); %>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_name%>:</label></td>
<td><input class="fldbld" type="text" id="bld_naam" name="bld_naam" value="<%=bld_naam%>"></td>
</tr>
<tr>
<%
sql = "SELECT alg_srtgebouw_key, "
+ " alg_srtgebouw_omschrijving "
+ " FROM alg_srtgebouw "
+ " WHERE alg_srtgebouw_verwijder IS NULL "
+ "ORDER BY alg_srtgebouw_upper "
FCLTselector("bld_srtkey", sql,
{ label: lcl_estate_gebouw_srtgebouw,
initKey: bld_srtkey,
emptyOption: "",
readonly: false
}
);
%>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_code%>:</label></td>
<td><input class="fldbld" type="text" id="bld_code" name="bld_code" value="<%=bld_code%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_opmerk%>:</label></td>
<td><input class="fldbld" type="text" id="bld_opmerk" name="bld_opmerk" value="<%=bld_opmerk%>"></td>
</tr>
<%
sql = "SELECT prs_kostenplaats_key, "
+ " k.prs_kostenplaats_nr || ' ' || k.prs_kostenplaats_omschrijving "
+ " FROM prs_kostenplaats k "
+ " WHERE k.prs_kostenplaats_module = 'ALG' "
+ "ORDER BY prs_kostenplaats_upper ";
FCLTselector("prs_kstpl", sql,
{ label: lcl_prs_dept_kosten,
initKey: prs_kstpl,
emptyOption: "",
readonly: false
}
);
%>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_ordernr%>:</label></td>
<td><input class="fldbld" type="text" id="bld_ordrnr" name="bld_ordrnr" value="<%=bld_ordrnr%>"></td>
</tr>
</table>
<% BLOCK_END();
BLOCK_START("algLoc2", ""); %>
<table>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_bruto_vloeropp%>:</label></td>
<td><input class="fldbld" type="text" id="bld_opp" name="bld_opp" value="<%=bld_opp%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_omtrek%>:</label></td>
<td><input class="fldbld" type="text" id="bld_omtrek" name="bld_omtrek" value="<%=bld_omtrek%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_inhoud%>:</label></td>
<td><input class="fldbld" type="text" id="bld_inhoud" name="bld_inhoud" value="<%=bld_inhoud%>"></td>
</tr>
<tr>
<%
sql ="SELECT mld_adres_key, "
+ " mld_adres_naam "
+ " FROM mld_v_afleveradres "
+ "ORDER BY mld_adres_naam ";
FCLTselector("srt", sql,
{ label: lcl_delivery_address,
initKey: mld_adres,
emptyOption: "",
readonly: false
}
);
%>
</tr>
<tr>
<td class="label"><label><%=lcl_geoxcoord%>:</label></td>
<td><input class="fldbld" type="text" id="bld_x" name="bld_x" value="<%=bld_x%>" ></td>
</tr>
<tr>
<td class="label"><label><%=lcl_geoycoord%>:</label></td>
<td><input class="fldbld" type="text" id="bld_y" name="bld_y" value="<%=bld_y%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_bez%>:</label></td>
<td><input class="fldalgbez" type="checkbox" id="bld_bez" name="bld_bez" value="<%=bld_bez%>" <%= bld_bez==1 ? " checked " : "" %>></td>
</tr>
</table>
<% BLOCK_END();
BLOCK_START("mldFlex", lcl_mld_flexblok);
%>
<!-- theText indicates flexkenmerken will follow on the next row -->
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : bld_key,
onrgoedlvl : onrgoedlvl,
reado : false
//mldman : false // TODO: => MGE: Niet meer nodig. Wordt in generateFlexKenmerkCode bepaald.
});
%>
<% // </td></tr> %>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,54 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 9:44 $
SUBMIT-form
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../shared/calendar.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/date_sql.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
}) %>
<%
var reg_key = getQParamInt( "regio_key" );
var fields = [ { dbs: "alg_regio_omschrijving", typ: "varchar", frm: "reg_oms" }];
if (reg_key > 0)
{
sql = buildUpdate("alg_regio", fields)
+ " alg_regio_key = " + reg_key;
oRs = Oracle.Execute(sql);
}
else
{
fields.push({ dbs: "alg_regio_key", typ: "key", seq: "alg_s_alg_regio_key" });
var regIns = buildInsert("alg_regio", fields);
var reg_key = regIns.sequences["alg_regio_key"];
sql = regIns.sql;
oRs = Oracle.Execute( sql );
}
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(document).ready(function () { FcltMgr.closeDetail(window, { regio_key: <%=reg_key%> }); } );
</script>
</head>
<body>
</body>
</html>

View File

@@ -0,0 +1,196 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 16:05 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery","kenmerk"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var loc_key = parseInt(getQParam("loc_key", "-1"), 10);
var dis_key
var onrgoedlvl = "'L'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
if (loc_key > 0)
{
sql = " select * "
+ " FROM ALG_LOCATIE "
+ " WHERE alg_locatie_key = " + loc_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var loc_omsch = oRsMes("alg_locatie_omschrijving").value;
var loc_code = oRsMes("alg_locatie_code").value;
var bez_adres = oRsMes("alg_locatie_adres").value;
var bez_postc = oRsMes("alg_locatie_postcode").value;
var bez_plaats = oRsMes("alg_locatie_plaats").value
var bez_land = oRsMes("alg_locatie_land").value;
var loc_vw = oRsMes("alg_locatie_verantw").value;
var loc_vwtel = oRsMes("alg_locatie_verantw_tel").value;
var loc_x = oRsMes("alg_locatie_x").value;
var loc_y = oRsMes("alg_locatie_y").value;
var loc_mail = oRsMes("alg_locatie_email").value;
var pst_adres = oRsMes("alg_locatie_post_adres").value;
var pst_postc = oRsMes("alg_locatie_post_postcode").value;
var pst_adres = oRsMes("alg_locatie_post_adres").value;
var pst_plaats = oRsMes("alg_locatie_post_plaats").value;
var pst_land = oRsMes("alg_locatie_post_land").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
document.forms.u2.submit();
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name="u2" action="alg_edit_locatie_save.asp?urole=bo&loc_key=<%=loc_key%>" method=post onSubmit="alg_submit();">
<%
var buttons = [ {title: lcl_submit, action:"alg_submit()", icon: "opslaan.png", id:"bsubmit_alg_locatie" },
{title: lcl_cancel, action:"alg_cancel()", icon: "undo.png", id:"bcancel_alg_locatie" } ];
IFRAMER_HEADER(lcl_alg_locatie_frame, buttons);
BLOCK_START("algLoc1", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
districtkey: dis_key,
locatiekey: loc_key,
startlevel: 1, //District
eindlevel: 1, // District
readonly: false }); %>
<tr>
<td class="label"><label><%=lcl_estate_locatie_man_descr%>:</label></td>
<td><input class="fldloc" type="text" id="loc_code" name="loc_omsch" value="<%=loc_omsch%>" </td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_locatie_man_code%>:</label></td>
<td><input class="fldloc" type="text" id="loc_code" name="loc_code" value="<%=loc_code%>" </td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_bezoek_adres%>:</label></td>
<td><input class="fldloc"" type="text" id="bez_adres" name="bez_adres" value="<%=bez_adres%>" ></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_bezoek_postcode%>:</label></td>
<td><input class="fldloc"" type="text" id="bez_postc" name="subject" value="<%=bez_postc%>" ></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_bezoek_plaats%>:</label></td>
<td><input class="fldloc"" type="text" id="bez_plaats" name="bez_plaats" value="<%=bez_plaats%>"</td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_bezoek_land%>:</label></td>
<td><input class="fldloc"" type="text" id="bez_land" name="bez_land" value="<%=bez_land%>" ></td>
</tr>
<tr>
<td class="label"><label><%=lcl_geoxcoord%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_x" name="loc_x" value="<%=loc_x%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_geoycoord%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_y" name="loc_y" value="<%=loc_y%>" ></td>
</tr>
</table>
<% BLOCK_END();
BLOCK_START("algLoc2", ""); %>
<table>
<tr>
<td class="label"><label><%=lcl_prs_address_post_adres%>:</label></td>
<td><input class="fldloc"" type="text" id="pst_adres" name="pst_adres" value="<%=pst_adres%>" ></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_post_postcode%>:</label></td>
<td><input class="fldloc"" type="text" id="pst_postc" name="pst_postc" value="<%=pst_postc%>" ></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_post_plaats%>:</label></td>
<td><input class="fldloc"" type="text" id="pst_plaats" name="pst_plaats" value="<%=pst_plaats%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_post_land%>:</label></td>
<td><input class="fldloc"" type="text" id="pst_land" name="pst_land" value="<%=pst_land%>"</td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_locatie_man_verantw%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_vw" name="loc_vw" value="<%=loc_vw%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_locatie_man_verantw_tel%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_vwtel" name="loc_vwtel" value="<%=loc_vwtel%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_noti_email%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_mai" name="loc_mail" value="<%=loc_mail%>"></td>
</tr>
</table>
<% BLOCK_END();
BLOCK_START("mldFlex", lcl_mld_flexblok);
%>
<!-- theText indicates flexkenmerken will follow on the next row -->
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : loc_key,
onrgoedlvl : onrgoedlvl,
reado : false
});
%>
<% // </td></tr> %>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,54 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 9:44 $
SUBMIT-form
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../shared/calendar.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/date_sql.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
}) %>
<%
var reg_key = getQParamInt( "regio_key" );
var fields = [ { dbs: "alg_regio_omschrijving", typ: "varchar", frm: "reg_oms" }];
if (reg_key > 0)
{
sql = buildUpdate("alg_regio", fields)
+ " alg_regio_key = " + reg_key;
oRs = Oracle.Execute(sql);
}
else
{
fields.push({ dbs: "alg_regio_key", typ: "key", seq: "alg_s_alg_regio_key" });
var regIns = buildInsert("alg_regio", fields);
var reg_key = regIns.sequences["alg_regio_key"];
sql = regIns.sql;
oRs = Oracle.Execute( sql );
}
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(document).ready(function () { FcltMgr.closeDetail(window, { regio_key: <%=reg_key%> }); } );
</script>
</head>
<body>
</body>
</html>

View File

@@ -0,0 +1,96 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 16:11 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var reg_key = parseInt(getQParam("regio_key", "-1"), 10);
if (reg_key > 0)
{
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
sql = " select * "
+ " FROM alg_regio "
+ " WHERE alg_regio_key = " + reg_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var reg_oms = oRsMes("alg_regio_omschrijving").value;
} else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
document.forms.u2.submit();
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name="u2" action="alg_edit_regio_save.asp?regio_key=<%=reg_key%>" method=post onSubmit="alg_submit();">
<%
var buttons = [ {title: lcl_submit, action:"alg_submit()", icon: "opslaan.png", id:"bsubmit_alg_distrcit" },
{title: lcl_cancel, action:"alg_cancel()", icon: "undo.png", id:"bcancel_alg_district" } ];
IFRAMER_HEADER(lcl_alg_regio_frame, buttons);
BLOCK_START("algInfo", "");
%>
<table>
<tr>
<td class="label"><label><%=lcl_region%>:</label></td>
<td><input class="fldloc" type="text" id="reg_oms" name="reg_oms" value="<%=reg_oms%>"></td>
</tr>
</table>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,54 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 9:44 $
SUBMIT-form
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../shared/calendar.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/date_sql.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
}) %>
<%
var reg_key = getQParamInt( "regio_key" );
var fields = [ { dbs: "alg_regio_omschrijving", typ: "varchar", frm: "reg_oms" }];
if (reg_key > 0)
{
sql = buildUpdate("alg_regio", fields)
+ " alg_regio_key = " + reg_key;
oRs = Oracle.Execute(sql);
}
else
{
fields.push({ dbs: "alg_regio_key", typ: "key", seq: "alg_s_alg_regio_key" });
var regIns = buildInsert("alg_regio", fields);
var reg_key = regIns.sequences["alg_regio_key"];
sql = regIns.sql;
oRs = Oracle.Execute( sql );
}
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(document).ready(function () { FcltMgr.closeDetail(window, { regio_key: <%=reg_key%> }); } );
</script>
</head>
<body>
</body>
</html>

View File

@@ -0,0 +1,120 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 16:03 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var room_key = parseInt(getQParam("dis_key", "-1"), 10);
var reg_key
var onrgoedlvl = "'D'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
if (room_key > 0)
{
sql = " select * "
+ " FROM alg_district "
+ " WHERE alg_district_key = " + dis_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var dis_oms = oRsMes("alg_district_omschrijving").value;
} else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
document.forms.u2.submit();
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name="u2" action="alg_edit_district_save.asp?urole=bo&dis_key=<%=dis_key%>" method=post onSubmit="alg_submit();">
<%
var buttons = [ {title: lcl_submit, action:"alg_submit()", icon: "opslaan.png", id:"bsubmit_alg_distrcit" },
{title: lcl_cancel, action:"alg_cancel()", icon: "undo.png", id:"bcancel_alg_district" } ];
IFRAMER_HEADER(lcl_alg_ruimte_frame, buttons);
%>
<table>
<%
BLOCK_START("algInfo", "");
FCLTplaatsselector(authparams.ALGreadlevel, {
regiokey: reg_key,
districtkey: dis_key,
startlevel: 0, // Regio
eindlevel: 0 // District
});
%>
<tr>
<td class="label"><label><%=lcl_district%>:</label></td>
<td><input class="fldmsgsubj" type="text" id="subject" name="subject" value="<%=dis_oms%>"></td>
</tr>
</table>
<%
BLOCK_END();
BLOCK_START("algFlex", lcl_mld_flexblok);
%>
<!-- theText indicates flexkenmerken will follow on the next row -->
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : dis_key,
onrgoedlvl : onrgoedlvl,
reado : true
//mldman : false // TODO: => MGE: Niet meer nodig. Wordt in generateFlexKenmerkCode bepaald.
});
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,54 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 9:44 $
SUBMIT-form
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../shared/calendar.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/date_sql.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
}) %>
<%
var reg_key = getQParamInt( "regio_key" );
var fields = [ { dbs: "alg_regio_omschrijving", typ: "varchar", frm: "reg_oms" }];
if (reg_key > 0)
{
sql = buildUpdate("alg_regio", fields)
+ " alg_regio_key = " + reg_key;
oRs = Oracle.Execute(sql);
}
else
{
fields.push({ dbs: "alg_regio_key", typ: "key", seq: "alg_s_alg_regio_key" });
var regIns = buildInsert("alg_regio", fields);
var reg_key = regIns.sequences["alg_regio_key"];
sql = regIns.sql;
oRs = Oracle.Execute( sql );
}
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(document).ready(function () { FcltMgr.closeDetail(window, { regio_key: <%=reg_key%> }); } );
</script>
</head>
<body>
</body>
</html>

View File

@@ -0,0 +1,181 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 16:01 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery", "kenmerk"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var urole = "1";
var ter_key = parseInt(getQParam("ter_key", "-1"), 10);
var onrgoedlvl = "'T'";
var read = false;
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
if (ter_key > 0)
{
var read = true;
sql = " select * "
+ " FROM alg_terreinsector "
+ " WHERE alg_terreinsector_key = " + ter_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var loc_key = oRsMes("ALG_LOCATIE_KEY").value;
var ter_oms = oRsMes("ALG_TERREINSECTOR_OMSCHRIJVING").value;
var ter_code = oRsMes("ALG_TERREINSECTOR_CODE").value;
var ter_naam = oRsMes("ALG_TERREINSECTOR_NAAM").value;
var ter_srkey = oRsMes("ALG_SRTTERREINSECTOR_KEY").value;
var ter_opp = oRsMes("ALG_TERREINSECTOR_OPPERVLAK").value;
var ter_omt = oRsMes("ALG_TERREINSECTOR_OMTREK").value;
var ter_aanmk = oRsMes("ALG_TERREINSECTOR_AANMAAK").value;
var ter_oms = oRsMes("ALG_TERREINSECTOR_OMSCHRIJVING").value;
var ter_ordnr = oRsMes("ALG_TERREINSECTOR_ORDERNR").value;
var prs_kstn = oRsMes("PRS_KOSTENPLAATS_KEY").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
document.forms.u2.submit();
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="editbody">
<div id="edit>
<form name="u2" action="alg_edit_terreinsector_save.asp?urole=bo&bld_key=<%=ter_key%>" method=post onSubmit="alg_submit();">
<%
var buttons = [ {title: lcl_submit, action:"alg_submit()", icon: "opslaan.png", id:"bsubmit_alg_distrcit" },
{title: lcl_cancel, action:"alg_cancel()", icon: "undo.png", id:"bcancel_alg_district" } ];
IFRAMER_HEADER(lcl_alg_terreinsector_frame, buttons);
BLOCK_START("test", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: loc_key,
startlevel: 2, // Locatie
eindlevel: 2, // Locatie
readonly: read
});%>
<tr>
<% sql = "SELECT alg_srtterreinsector_key, "
+ " alg_srtterreinsec_omschrijving "
+ " FROM alg_v_aanwezigsrtterreinsector "
+ "ORDER BY alg_srtterreinsector_upper "
FCLTselector("ter_srkey", sql,
{ label: lcl_estate_terreinsector_man_sort,
initKey: ter_srkey,
emptyOption: "",
readonly: false
}
); %>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_code%>:</label></td>
<td><input class="fldbld" type="text" id="ter_code" name="ter_code" value="<%=ter_code%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_name%>:</label></td>
<td><input class="fldbld" type="text" id="ter_naam" name="ter_naam" value="<%=ter_naam%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_descr%>:</label></td>
<td><input class="fldbld" type="text" id="ter_oms" name="ter_oms" value="<%=ter_oms%>"></td>
</tr>
<tr>
<%
sql = "SELECT prs_kostenplaats_key, "
+ " k.prs_kostenplaats_nr || ' ' || k.prs_kostenplaats_omschrijving "
+ " FROM prs_kostenplaats k "
+ " WHERE k.prs_kostenplaats_module = 'ALG' "
+ "ORDER BY prs_kostenplaats_upper "
FCLTselector("bprs_kstn", sql,
{ label: lcl_prs_dept_kosten,
initKey: prs_kstn,
emptyOption: "",
readonly: false
}
); %>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_ordernr%>:</label></td>
<td><input class="fldbld" type="text" id="ter_ordnr" name="ter_ordnr" value="<%=ter_ordnr%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_oppervlak%>:</label></td>
<td><input class="fldbld" type="text" id="ter_opp" name="ter_opp" value="<%=ter_opp%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_omtrek%>:</label></td>
<td><input class="fldbld" type="text" id="ter_omt" name="ter_omt" value="<%=ter_omt%>"></td>
</tr>
</table>
<%
BLOCK_END();
BLOCK_START("mldFlex", lcl_mld_flexblok);
%>
<!-- theText indicates flexkenmerken will follow on the next row -->
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : ter_key,
onrgoedlvl : onrgoedlvl,
reado : false
});
%>
<% // </td></tr> %>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,125 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 15:52 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var flr_key = parseInt(getQParam("flr_key", "-1"), 10);
var bld_key
var loc_key
var onrgoedlvl = "'L'";
var read = false;
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
if (flr_key > 0)
{
var read = true;
sql = " select * "
+ " FROM ALG_VERDIEPING "
+ " WHERE alg_verdieping_key = " + flr_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var flr_omschr = oRsMes("ALG_VERDIEPING_OMSCHRIJVING").value;
var flr_volgnr = oRsMes("ALG_VERDIEPING_VOLGNR").value;
var flr_code = oRsMes("ALG_VERDIEPING_CODE").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
document.forms.u2.submit();
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name="u2" action="alg_edit_verdieping_save.asp?urole=bo&flr_key=<%=flr_key%>" method=post onSubmit="alg_submit();">
<%
var buttons = [ {title: lcl_submit, action:"alg_submit()", icon: "opslaan.png", id:"bsubmit_alg_distrcit" },
{title: lcl_cancel, action:"alg_cancel()", icon: "undo.png", id:"bcancel_alg_district" } ];
IFRAMER_HEADER(lcl_alg_verdieping_frame, buttons);
BLOCK_START("algLoc1", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: loc_key,
gebouwkey: bld_key,
verdiepingkey: flr_key,
startlevel: 2, //locatie
eindlevel: 3, // gebouw
readonly: read }); %>
<tr>
<td class="label"><label><%=lcl_estate_verdieping_man_descr%>:</label></td>
<td><input class="fldloc" type="text" id="flr_omschr" name="flr_omschr" value="<%=flr_omschr%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_verdieping_man_code%>:</label></td>
<td><input class="fldloc" type="text" id="flr_volgnr" name="flr_volgnr" value="<%=flr_volgnr%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_verdieping_man_volgnr%>:</label></td>
<td><input class="fldloc" type="text" id="flr_code" name="flr_code" value="<%=flr_code%>"></td>
</tr>
</table>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,58 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 15:43 $
SUBMIT-form
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../shared/calendar.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/date_sql.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
}) %>
<%
var flr_key = getQParamInt( "flr_key" );
var fields = [ { dbs: "alg_verdieping_omschrijving", typ: "varchar", frm: "flr_omschr" },
{ dbs: "alg_verdieping_volgnr", typ: "number", frm: "flr_volgnr" },
{ dbs: "alg_verdieping_code", typ: "varchar", frm: "flr_code" },
{ dbs: "alg_gebouw_key", typ: "number", frm: "bld_key" }
];
if (flr_key > 0)
{
sql = buildUpdate("alg_verdieping", fields)
+ " alg_verdieping_key = " + flr_key;
oRs = Oracle.Execute(sql);
}
else
{
fields.push({ dbs: "alg_verdieping_key", typ: "key", seq: "alg_s_alg_onroerendgoed_keys" });
var regIns = buildInsert("alg_verdieping", fields);
var flr_key = regIns.sequences["alg_verdieping_key"];
sql = regIns.sql;
oRs = Oracle.Execute( sql );
}
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(document).ready(function () { FcltMgr.closeDetail(window, { flr_key: <%=flr_key%> }); } );
</script>
</head>
<body>
</body>
</html>

140
APPL/ALG/alg_edit_wp.asp Normal file
View File

@@ -0,0 +1,140 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 16:01 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var wp_key = parseInt(getQParam("wp_key", "-1"), 10);
var loc_key
var bld_key
var flr_key
var room_key
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
var read = false;
if (wp_key > 0)
{
var read = true;
sql = " select * "
+ " FROM PRS_WERKPLEK "
+ " WHERE prs_werkplek_key = " + wp_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var wp_volgnr = oRsMes("PRS_WERKPLEK_VOLGNR").value;
var wp_oms = oRsMes("PRS_WERKPLEK_VOLGNR").value;
var wp_vstopp = oRsMes("PRS_WERKPLEK_VASTOPP").value;
var wp_opp = oRsMes("PRS_WERKPLEK_OPP").value;
var wp_vstopp = oRsMes("PRS_WERKPLEK_VASTOPP").value;
var wp_virt = oRsMes("PRS_WERKPLEK_VIRTUEEL").value;
var room_key = oRsMes("PRS_ALG_RUIMTE_KEY").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
document.forms.u2.submit();
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="editbody">
<div id="show">
<form name="u2" action="alg_edit_wp_save.asp?wp_key=<%=wp_key%>" method=post onSubmit="alg_submit();">
<%
var buttons = [ {title: lcl_submit, action:"alg_submit()", icon: "opslaan.png", id:"bsubmit_alg_distrcit" },
{title: lcl_cancel, action:"alg_cancel()", icon: "undo.png", id:"bcancel_alg_district" } ];
IFRAMER_HEADER(lcl_alg_gebouw_frame, buttons);
BLOCK_START("test", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatie: loc_key,
gebouwkey: bld_key,
verdiepingkey: flr_key,
ruimtekey: room_key,
startlevel: 2, // Regio
eindlevel: 5, // District
readonly: read });
%>
<tr>
<td class="label"><label><%=lcl_estate_wp_seq%>:</label></td>
<td><input class="fldbld" type="text" id="wp_volgnr" name="wp_volgnr" value="<%=wp_volgnr%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_workplace%>:</label></td>
<td><input class="fldbld" type="text" id="wp_oms" name="wp_oms" value="<%=wp_oms%>"></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_wp_fixed%>:</label></td>
<td>
<label for="wp_vstopp_v">
<input type="radio" name="wp_vstopp_v" id="wp_vstopp_v" value="0" <%= wp_vstopp==0 ? " checked " : "" %>><%=lcl_estate_wp_fixed_v%>
</label>
<label for="wp_vstopp_f">
<input type="radio" name="wp_vstopp_f" id="wp_vstopp_f" value="1"<%= wp_vstopp==1 ? " checked " : "" %>><%=lcl_estate_wp_fixed_f%>
</label>
</td>
</tr>
<td class="label"><label><%=lcl_estate_wp_area%>:</label></td>
<td><input class="fldbld" type="text" id="wp_opp" name="wp_opp" value="<%=wp_opp%>"></td>
<tr>
<td class="label"><label><%=lcl_estate_wp_virt%>:</label></td>
<td><input class="fldalgbez" type="checkbox" id="wp_virt" name="wp_virt" value="<%=wp_virt%>" <%= wp_virt==1 ? " checked " : "" %>></td>
</tr>
</table>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,54 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 9:44 $
SUBMIT-form
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../shared/calendar.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/date_sql.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
}) %>
<%
var reg_key = getQParamInt( "regio_key" );
var fields = [ { dbs: "alg_regio_omschrijving", typ: "varchar", frm: "reg_oms" }];
if (reg_key > 0)
{
sql = buildUpdate("alg_regio", fields)
+ " alg_regio_key = " + reg_key;
oRs = Oracle.Execute(sql);
}
else
{
fields.push({ dbs: "alg_regio_key", typ: "key", seq: "alg_s_alg_regio_key" });
var regIns = buildInsert("alg_regio", fields);
var reg_key = regIns.sequences["alg_regio_key"];
sql = regIns.sql;
oRs = Oracle.Execute( sql );
}
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(document).ready(function () { FcltMgr.closeDetail(window, { regio_key: <%=reg_key%> }); } );
</script>
</head>
<body>
</body>
</html>

View File

@@ -0,0 +1,120 @@
<% /*
$Revision: 1 $
$Modtime: 22-09-09 10:56 $
File: ALG@/load_kenmerk.asp
Status: 60%
Description: cnt_search.asp: Genereert html code voor de presentatie van de flexvelden voor cnt overzichten
cnt.asp: Genereert javascript code om de flexkenmerken in het cnt_edit popup scherm dynamisch bij te werken
Parameters: urole Rol van de gebruiker (frontend, frontoffice, backoffice, management info)
cnt_key Contract key
disc_key Contractsoort key
reado Readonly
advanced Geadvanceerd
Context: cnt_search.asp: Deze gegenereerde html code wordt in modal div geplaats van cnt_search.asp
cnt.asp: Of submits naar/via cnt.asp!
Note: cnt.asp: Het formulier van cnt.asp wordt dynamisch gewijzigd met onze flexvelden
TODO: Aanpassen voor gebruik door cnt.asp
*/ %>
<%
var DOCTYPE_Disable = true;
Response.Expires = -1;
var fp = new Object(); // dummy, moet er nog uitgewerkt worden TODO:
%>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc" -->
<%
function generateFlexKenmerkCode(params)
{ %>
<div id="bldKenmerken" name="bldKenmerken">
<table width="100%">
<%
//var urole = getQParam("urole");
var urole = "bo";
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// var bld_key = getQParamInt("bld_key", -1); // Contract key
var bld_key = params.bld_key;
var advanced = getQParam("advanced", 0) == 1; // Geavanceerd
var reqId = getQParamInt("reqId", -1); // Perslid key (!search && multiMode)
var onrgoedlvl = getQParam("onrgoedlvl", -1);
var onrgoedlvl = params.onrgoedlvl;
var reado = params.reado;
__Log(onrgoedlvl);
var autfunction = "";
switch(urole)
{
case "bo": autfunction = "WEB_CNTMAN";
break;
case "mi": autfunction = "WEB_CNTMAN";
break;
}
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction);
function isReadonly (volgnummer)
{
return reado;
}
sql = "SELECT k.alg_kenmerk_key, "
+ " k.alg_kenmerk_omschrijving, "
+ " k.alg_kenmerk_kenmerktype, "
+ " r.alg_refkenmerk_objectnaam, "
+ " r.alg_refkenmerk_kolomnaam, "
+ " r.alg_refkenmerk_kolomtxt, "
+ " r.fac_usrtab_key, "
+ " k.alg_kenmerk_lengte, "
+ " k.alg_kenmerk_dec, "
+ " k.alg_kenmerk_nmin, "
+ " k.alg_kenmerk_nmax, "
+ (bld_key > 0
? " (SELECT v.alg_onrgoedkenmerk_waarde "
+ " FROM alg_onrgoedkenmerk v "
+ " WHERE v.alg_onrgoed_key = " + bld_key
+ " AND v.alg_onrgoed_niveau = " + onrgoedlvl
+ " AND v.alg_kenmerk_key = k.alg_kenmerk_key) waarde, "
: " k.alg_kenmerk_default, " )
+ " COALESCE (k.alg_kenmerk_volgnr, 0), "
+ " COALESCE (k.alg_kenmerk_dimensie, ''), "
+ " COALESCE (k.alg_kenmerk_hint, ''), "
+ " k.alg_kenmerk_default, "
+ " 0 "
+ " FROM alg_kenmerk k, "
+ " alg_refkenmerk r "
+ " WHERE k.alg_kenmerk_niveau = " + onrgoedlvl
+ " AND k.alg_refkenmerk_key = r.alg_refkenmerk_key(+) "
+ " AND k.alg_kenmerk_verwijder IS NULL "
+ "ORDER BY k.alg_kenmerk_volgnr, "
+ " k.alg_kenmerk_omschrijving ";
var trn = 0;
// Voor als we nog geen key weten
var tmp_folder = "__NEW__" + Session.SessionId;
listKenmerk(sql,
"ALG", //module
"A" + (bld_key > 0? bld_key : tmp_folder), //foldername?
{ kenmerk_2col: (advanced? true : false), // In edit mode kenmerken onder elkaar en niet in 2 kolommen.
kenmerk_search: advanced,
kenmerk_colspan: false,
fnIsReadonly: isReadonly,
parentKey: bld_key }
);
%>
</table>
</div>
<%
} %>

100
APPL/ALG/alg_gebouw.asp Normal file
View File

@@ -0,0 +1,100 @@
<%@language = "javascript" %>
<% // testing: bes_key=1251054
/* $Revision: 1 $
$Modtime: 22-09-09 13:45 $
File: bes_edit.asp
Status: 40% (new style)
Description: Muteerscherm voor bestellingen
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: urole
bes_key
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/funcodes.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/cmenuFn.inc"-->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "FCLTMgr.js", "jquery-ui.js"]})
/* AUTORISATIEPARAMETERS
var urole = getQParam("urole");
// Om nog even compatible te blijven zodat alles nog even blijft werken. Moet er straks uit, natuurlijk.
var fronto = urole == "fo";
var backo = urole == "bo";
var minfo = urole == "mi";
var frontend = (!fronto & !backo & !minfo);
// de melding waar het over gaat, kan leeg zijn voor nieuwe, maar dat mag niet met bo of mi
var autfunction = '';
if (fronto)
autfunction = 'WEB_BESFOF';
else if (backo)
autfunction = 'WEB_BESBOF';
else
autfunction = 'WEB_BESUSE'; */
var autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction); //Wat weet ik dan nou van disciplines???
var bld_key = getQParamInt("key", -1);
// OVERIGE PARAMETERS
// dit lijkt mij de enige gehele readonlyverklaring, de rest is localer
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<%
//======================================
%>
</head>
<body id="editbody">
<%
if (bld_key == -1)
var page="alg_edit_gebouw.asp"; // Maak een nieuw
else
var page="alg_show_gebouw.asp";
page += "?urole=bo&bld_key="+bld_key;
IFRAMER("algFrame", page, { title: lcl_alg_district_frame,
initHeight: "450px",
FcltClose: "algClose" } );
// AKZA#88 don not allow printing if call isn't saved yet.
// UWVA#427 also print for FE
if (bld_key>-1 ) {
add_str ='huh?';
menuArray = new Array();
menuArray[0] = lcl_print_report;
menuArray[1] = lcl_noti_vis_email;
onClickArray = new Array();
onClickArray[0] = 'print_test(0)';
onClickArray[1] = 'print_test(1)';
// TODO: ik denk niet hier: generateCmenu("c_menu")
} %>
</body>
</html>

View File

@@ -0,0 +1,206 @@
<% /*
$Revision: 1 $
$Modtime: 28-09-09 23:40 $
File: alg_gebouw.inc
Description: Show an overview of gebouw items in list-form,
which meets with the given requirements
Parameters:
Context: Search action from alg_gebouw_search_list.asp form
Note:
*/ %>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
})
function fnrowData(oRs)
{
var parent_key = oRs("alg_locatie_key").value;
var detail_key = oRs("alg_gebouw_key").value;
var key = oRs("alg_gebouw_key").value;
var oms = oRs("alg_gebouw_naam").value;
var data = {parent_key:parent_key, detail_key:detail_key, key:key, oms:oms};
return JSON.stringify(data);
}
%>
<script>
dtable = "ALG_GEBOUW";
</script>
<script type="text/javascript">
var lcl_row_delete_failed1 = "<%=lcl_row_delete_failed1%>";
var lcl_row_delete_failed2 = "<%=lcl_row_delete_failed2%>";
var autosearch = 1 // automatisch laden van resultaat op search pagina
function gotoDetails(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_verdieping_search.asp?gebouw_key="+algData.detail_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_floor%>");
}
function gotoParent(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_locatie_search.asp?locatie_key="+algData.parent_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_location%>");
}
function gebouwEdit(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_gebouw.asp?mode=viewUpdate&key="+algData.key;
FcltMgr.openDetail(url, "<%=lcl_building%>" + ' ' + algData.oms);
}
function doDelete(row)
{
if (confirm('<%=lcl_row_delete_confirm%>')) {
var algData = eval('(' + row.ROWDATA + ')');
parent.document.body.style.cursor = "wait";
document.body.style.cursor = "wait";
hiddenFrame.navigate("setAlgVerwijder.asp?key=" + algData.key + "&table=" + dtable);
}
}
function DeleteFailed(result)
{
if (result == 1 ) {
alert(lcl_row_delete_failed1);
} else if ( result == 2 ) {
alert(lcl_row_delete_failed2);
}
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
function Deleted()
{
algtable.deleteSelectedRows();
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
</script>
<%
function gebouw_list(pautfunction, params)
{
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(pautfunction);
var canWrite = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var loc_key = params.loc_key;
var bld_key = params.bld_key;
var bld_func = params.bld_func;
%>
<html>
<head>
<% FCLTHeader.Generate({outputmode:outputmode}) %>
</head>
<body id="listbody">
<%
var sqln = "SELECT g.alg_gebouw_key, "
+ " g.alg_locatie_key, "
+ " g.alg_locatie_key, "
+ " g.alg_srtgebouw_key, "
+ " l.alg_locatie_omschrijving, "
+ " s.alg_srtgebouw_omschrijving, "
+ " g.alg_gebouw_code, "
+ " g.alg_gebouw_naam, "
+ " g.alg_gebouw_opmerking, "
+ " g.alg_gebouw_bruto_vloeropp, "
+ " g.alg_gebouw_omtrek, "
+ " g.alg_gebouw_inhoud "
+ " FROM alg_v_aanweziggebouw g, "
+ " alg_locatie l, "
+ " alg_srtgebouw s "
+ " WHERE l.alg_locatie_key(+) = g.alg_locatie_key "
+ " AND s.alg_srtgebouw_key(+) = g.alg_srtgebouw_key "
+ " AND g.alg_gebouw_verwijder IS NULL ";
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
sqln += " AND g.alg_gebouw_key IN "
+ "(SELECT alg_gebouw_key FROM fac_v_my_buildings "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
sqln += getKenmerkSql("ALG", "g.alg_gebouw_key");
if (bld_key)
{
__Log("bld_key is " + bld_key);
sqln += " AND g.alg_gebouw_key = " + bld_key;
}
else if (loc_key)
{
__Log("loc_key is " + loc_key);
sqln += " AND g.alg_locatie_key = " + loc_key;
}
if (bld_func)
{
sqln += " AND g.alg_srtgebouw_key = " + bld_func;
}
sqln += " ORDER BY l.alg_locatie_upper ASC, "
+ " g.alg_gebouw_upper ASC ";
var addurl = "appl/alg/alg_gebouw.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
var rst = new ResultsetTable({ sql:sqln,
keyColumn: "alg_gebouw_key",
ID: "algtable",
rowData: fnrowData,
flexModule: "ALG",
flexId: "alg_gebouw_key",
filterParams: params,
outputmode: outputmode,
buttons: [{ icon: "plus.png", title: lcl_add, action: "FcltMgr.openDetail('" + addurl + "', '" + lcl_add + "')" }]
});
rst.addColumn(new Column({caption: lcl_estate_locatie_man_descr, content: "alg_locatie_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_gebouw_man_code, content: "alg_gebouw_code"}));
rst.addColumn(new Column({caption: lcl_estate_gebouw_man_name, content: "alg_gebouw_naam", hasActions: true}));
rst.addColumn(new Column({caption: lcl_estate_gebouw_srtgebouw, content: "alg_srtgebouw_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_gebouw_man_bruto_vloeropp, content: "alg_gebouw_bruto_vloeropp"}));
if (outputmode != 0)
{
rst.addColumn(new Column({caption: lcl_estate_gebouw_man_opmerk, content: "alg_gebouw_opmerking"}));
rst.addColumn(new Column({caption: lcl_estate_gebouw_man_omtrek, content: "alg_gebouw_omtrek"}));
rst.addColumn(new Column({caption: lcl_estate_gebouw_man_inhoud, content: "alg_gebouw_inhoud"}));
}
rst.addAction({ action: "gebouwEdit", caption: lcl_edit, isDefault: true});
if (canWrite )
rst.addAction({ action: "doDelete", caption: lcl_delete, multi: true});
rst.addAction({ action: "gotoDetails", caption: lcl_goto_verdieping_list});
rst.addAction({ action: "gotoParent", caption: lcl_goto_locatie_list});
var cnt = rst.processResultset();
%>
<iframe src="../Shared/empty.asp" id=hiddenFrame name=hiddenFrame style="display:none"></iframe>
</body>
</html>
<%}%>

View File

@@ -0,0 +1,120 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 28-09-09 15:18 $
*/ %>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: ["expand_frame.js"]
});
var locatie_key = getQParamInt("locatie_key", -1); // Locatie
var gebouw_key = getQParamInt("gebouw_key", -1); //gebouw
var gebouw_func = getQParam("gebouw_func", "");
var autosearch = getQParam("autosearch", -1);
autfunction = "WEB_ALGMAN"; //TODO WEB_ALGUSE
var authparams = user.checkAutorisation(autfunction);
var lcl_bld_kenmerken = "lcl_gebouw_kenmerken";
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
function doSubmit()
{
// Submitten met kenmerken
doSubmitWithKenmerken(0);
}
function myModal()
{
var lvl = "'G'";
var key = 0;
var bld_key = "";
var url = "load_kenmerk.asp?disc=" + "&urole=bo" + "&advanced=1" + "&bld_key=" + bld_key + "&onrgoedlvl=" + lvl;
alert(url);
var titel = "<%=lcl_bld_kenmerken%>";
showKenmerkModal(key, url, titel)
}
$(document).ready(function() {<% if (autosearch == 1) { %> document.forms.u2.submit();<%}%>});
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", lcl_filterblok);%>
<form name="u2" target="workFrame" action="alg_gebouw_search_list.asp" method="get">
<table id="searchtable"><!-- 1 rij, 2 kolommen -->
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Locatie, gebouw en verdieping -->
<tr class="primsearch">
<td colspan="2">
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: locatie_key,
gebouwkey: gebouw_key,
startlevel: 2, // locatie
eindlevel: 3, // gebouw
whenEmpty: lcl_search_generic
});
%>
</td>
</tr>
</table>
</td><!-- end column 1 -->
<td class="searchkolom2">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Zoektekst -->
<tr class="primsearch">
<% sql = "SELECT alg_srtgebouw_key"
+ ", alg_srtgebouw_omschrijving"
+ " FROM alg_srtgebouw"
+ " WHERE alg_srtgebouw_verwijder IS NULL"
+ " ORDER BY alg_srtgebouw_upper";
FCLTselector("srt",
sql,
{ initKey: gebouw_func,
label: lcl_estate_gebouw_srtgebouw,
emptyOption: ""
}); %>
</tr>
</table>
</td><!-- end column 1 -->
</tr>
</table>
</form>
<% BLOCK_END();
var buttons = [ {title: lcl_search, action:"doSubmit()", id:"bSearch" },
{title: lcl_obj_advanced, action:"myModal()", id:"bAdvanced" } ];
CreateButtons(buttons);
%>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload='ExpandFrame("workFrame")'
frameborder="0" scrolling="no">
</iframe>
</div>
</body>
</html>

View File

@@ -0,0 +1,50 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 28-09-09 12:06 $
File: msg_search_list.asp
Description: Vangt de parameters van msg_search op en verwerkt die in een aanroep van msg_list
Parameters: urole
Context: Vanuit msg_search.asp
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="alg_gebouw_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// FORM parameters: de waarde indien aanwezig, anders null
// Vaak is een lege selectie ook een -1, dus dan is-ie wel aanwezig, maar hoeft niet
// als filter te worden toegepast. Dan is null dus gelijk aan -1, qua betekenis,
// Vandaar dat een default van -1 ipv null ook mag
// In eerste instantie identificeren we elk veld gewoon 1-op-1.
var outputmode = parseInt(getQParam("outputmode", 0), 10); // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParam("showall", "0") == "1";
var loc_key = parseInt(getQParam("locatiekey", -1), 10); // Locatie
var bld_key = parseInt(getQParam("gebouwkey", -1), 10); // Gebouw
var bld_func = parseInt(getQParam("bldfunction", -1), 10);
var autfunction = "WEB_ALGMAN";
gebouw_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
bld_func: (bld_func != -1? bld_func: null),
loc_key: (loc_key != -1? loc_key : null),
bld_key: (bld_key != -1? bld_key : null)
}
);
%>

100
APPL/ALG/alg_locatie.asp Normal file
View File

@@ -0,0 +1,100 @@
<%@language = "javascript" %>
<% // testing: bes_key=1251054
/* $Revision: 1 $
$Modtime: 21-09-09 10:32 $
File: bes_edit.asp
Status: 40% (new style)
Description: Muteerscherm voor bestellingen
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: urole
bes_key
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/funcodes.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/cmenuFn.inc"-->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "FCLTMgr.js", "jquery-ui.js"]})
/* AUTORISATIEPARAMETERS
var urole = getQParam("urole");
// Om nog even compatible te blijven zodat alles nog even blijft werken. Moet er straks uit, natuurlijk.
var fronto = urole == "fo";
var backo = urole == "bo";
var minfo = urole == "mi";
var frontend = (!fronto & !backo & !minfo);
// de melding waar het over gaat, kan leeg zijn voor nieuwe, maar dat mag niet met bo of mi
var autfunction = '';
if (fronto)
autfunction = 'WEB_BESFOF';
else if (backo)
autfunction = 'WEB_BESBOF';
else
autfunction = 'WEB_BESUSE'; */
var autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction); //Wat weet ik dan nou van disciplines???
var loc_key = getQParamInt("key", -1);
// OVERIGE PARAMETERS
// dit lijkt mij de enige gehele readonlyverklaring, de rest is localer
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<%
//======================================
%>
</head>
<body id="editbody">
<%
if (loc_key == -1)
var page="alg_edit_locatie.asp"; // Maak een nieuw
else
var page="alg_show_locatie.asp";
page += "?urole=bo&bld_key="+loc_key;
IFRAMER("algFrame", page, { title: lcl_alg_locatie_frame,
initHeight: "450px",
FcltClose: "algClose" } );
// AKZA#88 don not allow printing if call isn't saved yet.
// UWVA#427 also print for FE
if (loc_key>-1 ) {
add_str ='huh?';
menuArray = new Array();
menuArray[0] = lcl_print_report;
menuArray[1] = lcl_noti_vis_email;
onClickArray = new Array();
onClickArray[0] = 'print_test(0)';
onClickArray[1] = 'print_test(1)';
// TODO: ik denk niet hier: generateCmenu("c_menu")
} %>
</body>
</html>

View File

@@ -0,0 +1,218 @@
<% /*
$Revision: 1 $
$Modtime: 28-09-09 14:04 $
File: alg_locatie_list.inc
Status: 95%
Description: Show an overview of alg_locatie items in list-form,
which meets with the given requirements
Parameters:
Context: Include for locatie-overzichten, like Search action from alg_locatie_search_list.asp form
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
})
function fnrowData(oRs)
{
var parent_key = oRs("alg_district_key").value;
var detail_key = oRs("alg_locatie_key").value;
var key = oRs("alg_locatie_key").value;
var oms = oRs("alg_locatie_omschrijving").value;
var data = {parent_key:parent_key, detail_key:detail_key, key:key, oms:oms};
return JSON.stringify(data);
}
%>
<script>
dtable = "ALG_LOCATIE";
</script>
<script type="text/javascript">
var lcl_row_delete_failed1 = "<%=lcl_row_delete_failed1%>";
var lcl_row_delete_failed2 = "<%=lcl_row_delete_failed2%>";
// TODO: PF verdacht. Hoort dit hier?
// Lijkt me alleen om met 1 wijziging de 3 aanroepen te veranderen, maar dat zal niet
// nodig zijn. Ik zou zeggen: gewoon 1 invullen hieronder.
var autosearch = 1; //automatisch laden van resultaat op search pagina
function gotoDetails(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_gebouw_search.asp?locatie_key="+algData.detail_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_building%>");
}
function gotoDetails2(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_terreinsector_search.asp?locatie_key="+algData.detail_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_terra%>");
}
function gotoParent(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_district_search.asp?district_key="+algData.parent_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_district%>");
}
function locatieEdit(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_locatie.asp?mode=viewUpdate&key="+algData.key;
FcltMgr.openDetail(url, "<%=lcl_location%>" + ' ' + algData.oms);
}
function doDelete(row)
{
if (confirm('<%=lcl_row_delete_confirm%>')) {
var algData = eval('(' + row.ROWDATA + ')');
parent.document.body.style.cursor = "wait";
document.body.style.cursor = "wait"; // TODO: via getJSON of zoiets
hiddenFrame.navigate("setAlgVerwijder.asp?key=" + algData.key + "&table=" + dtable);
}
}
function DeleteFailed(result)
{
if (result == 1 ) {
alert(lcl_row_delete_failed1);
} else if ( result == 2 ) {
alert(lcl_row_delete_failed2);
}
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
function Deleted()
{
algtable.deleteSelectedRows();
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
</script>
<%
function locatie_list(pautfunction, params)
{
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(pautfunction);
var canWrite = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var dis_key = params.dis_key;
var loc_key = params.loc_key;
%>
<html>
<head>
<% FCLTHeader.Generate({outputmode:outputmode}) %>
</head>
<body id="listbody">
<%
var sqln = "SELECT l.alg_locatie_key, "
+ " l.alg_district_key, "
+ " l.alg_locatie_code, "
+ " l.alg_locatie_omschrijving, "
+ " d.alg_district_omschrijving, "
+ " l.alg_locatie_adres, "
+ " l.alg_locatie_post_adres, "
+ " l.alg_locatie_postcode, "
+ " l.alg_locatie_post_postcode, "
+ " l.alg_locatie_plaats, "
+ " l.alg_locatie_post_plaats, "
+ " l.alg_locatie_land, "
+ " l.alg_locatie_post_land, "
+ " l.alg_locatie_verantw, "
+ " l.alg_locatie_verantw_tel "
+ " FROM alg_v_aanweziglocatie l, "
+ " alg_district d "
+ " WHERE d.alg_district_key(+) = l.alg_district_key "
+ " AND l.alg_locatie_verwijder IS NULL ";
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
sqln += " AND l.alg_locatie_key IN "
+ "(SELECT alg_locatie_key FROM fac_v_my_locations "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
sqln += getKenmerkSql("ALG", "l.alg_locatie_key");
if (loc_key)
{
sqln += " AND l.alg_locatie_key = " + loc_key;
}
else if (dis_key)
{
sqln += " AND l.alg_district_key = " + dis_key;
}
sqln += " ORDER BY l.alg_locatie_upper ASC "
var addurl = "appl/alg/alg_locatie.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
var rst = new ResultsetTable({sql:sqln,
keyColumn: "alg_locatie_key",
ID: "algtable",
rowData: fnrowData,
outputmode: outputmode,
flexModule: "ALG",
flexId: "alg_locatie_key",
filterParams: params,
buttons: [{ icon: "plus.png", title: lcl_add, action: "FcltMgr.openDetail('" + addurl + "', '" + lcl_add + "')" }]
});
rst.addColumn(new Column({caption: lcl_estate_district_man_descr, content: "alg_district_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_locatie_man_code, content: "alg_locatie_code"}));
rst.addColumn(new Column({caption: lcl_estate_locatie_man_descr, content: "alg_locatie_omschrijving", hasActions:true}));
rst.addColumn(new Column({caption: lcl_prs_address_bezoek_adres, content: "alg_locatie_adres"}));
rst.addColumn(new Column({caption: lcl_prs_address_bezoek_postcode, content: "alg_locatie_postcode"}));
rst.addColumn(new Column({caption: lcl_prs_address_bezoek_plaats, content: "alg_locatie_plaats"}));
if (outputmode != 0)
{
rst.addColumn(new Column({caption: lcl_prs_address_bezoek_land, content: "alg_locatie_land"}));
rst.addColumn(new Column({caption: lcl_prs_address_post_adres, content: "alg_locatie_post_adres"}));
rst.addColumn(new Column({caption: lcl_prs_address_post_postcode, content: "alg_locatie_post_postcode"}));
rst.addColumn(new Column({caption: lcl_prs_address_post_plaats, content: "alg_locatie_post_plaats"}));
rst.addColumn(new Column({caption: lcl_prs_address_post_land, content: "alg_locatie_post_land"}));
rst.addColumn(new Column({caption: lcl_estate_locatie_man_verantw, content: "alg_locatie_verantw"}));
rst.addColumn(new Column({caption: lcl_estate_locatie_man_verantw_tel, content: "alg_locatie_verantw_tel"}));
}
rst.addAction({ action: "locatieEdit", caption: lcl_edit, isDefault: true});
if (canWrite )
rst.addAction({ action: "doDelete", caption: lcl_delete, multi: true});
rst.addAction({ action: "gotoDetails", caption: lcl_goto_gebouw_list});
rst.addAction({ action: "gotoDetails2", caption: lcl_goto_terreinsector_list});
rst.addAction({ action: "gotoParent", caption: lcl_goto_district_list});
var cnt = rst.processResultset();
%>
<iframe src="../Shared/empty.asp" id=hiddenFrame name=hiddenFrame style="display:none"></iframe>
</body>
</html>
<%}%>

View File

@@ -0,0 +1,96 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 26-09-09 18:36 $
*/ %>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: ["expand_frame.js"]
});
var district_key = getQParamInt("district_key", -1); //district
var locatie_key = getQParamInt("locatie_key", -1); //locatie
var autosearch = getQParam("autosearch", -1);
autfunction = "WEB_ALGMAN"; // TODO: of WEB_ALGUSE
var authparams = user.checkAutorisation(autfunction);
var lcl_bld_kenmerken = "TODO lcl_locatiekenmerken";
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
function doSubmit()
{
// Submitten met kenmerken
doSubmitWithKenmerken(0);
}
function myModal()
{
var lvl = "'L'";
var key = 0;
var bld_key = "";
var url = "load_kenmerk.asp?disc=" + "&urole=bo" + "&advanced=1" + "&bld_key=" +bld_key + "&onrgoedlvl=" + lvl;
var titel = "<%=lcl_bld_kenmerken%>";
showKenmerkModal(key, url, titel)
}
$(document).ready(function() {<% if (autosearch == 1) { %> document.forms.u2.submit();<%}%>});
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", lcl_filterblok);%>
<form name="u2" target="workFrame" action="alg_locatie_search_list.asp" method="get">
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Locatie, gebouw en verdieping -->
<tr class="primsearch">
<td colspan="2">
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
districtkey: district_key,
locatiekey: locatie_key,
startlevel: 1, // District
eindlevel: 2, // locatie
whenEmpty: lcl_search_generic // want filter
});
%>
</td>
</tr>
</table>
</td><!-- end column 1 -->
<td class="searchkolom2">
</td><!-- end column 1 -->
</tr>
</form>
<% BLOCK_END();
var buttons = [ {title: lcl_search, action:"doSubmit()", id:"bSearch" },
{title: lcl_obj_advanced, action:"myModal()", id:"bAdvanced" } ];
CreateButtons(buttons);
%>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload='ExpandFrame("workFrame")'
frameborder="0" scrolling="no">
</iframe>
</div>
</body>
</html>

View File

@@ -0,0 +1,47 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 27-08-09 11:55 $
File: msg_search_list.asp
Description: Vangt de parameters van msg_search op en verwerkt die in een aanroep van msg_list
Parameters: urole
Context: Vanuit alg_locatie.asp
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="alg_locatie_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// FORM parameters: de waarde indien aanwezig, anders null
// Vaak is een lege selectie ook een -1, dus dan is-ie wel aanwezig, maar hoeft niet
// als filter te worden toegepast. Dan is null dus gelijk aan -1, qua betekenis,
// Vandaar dat een default van -1 ipv null ook mag
// In eerste instantie identificeren we elk veld gewoon 1-op-1.
var outputmode = getQParamInt("outputmode", 0) // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParam("showall", "0") == "1";
var dis_key = getQParamInt("districtkey", -1); // District
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var autfunction = "WEB_ALGMAN";
locatie_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
dis_key: (dis_key != -1? dis_key : null),
loc_key: (loc_key != -1? loc_key : null)
}
);
%>

89
APPL/ALG/alg_regio.asp Normal file
View File

@@ -0,0 +1,89 @@
<%@language = "javascript" %>
<% // testing: bes_key=1251054
/* $Revision: 1 $
$Modtime: 30-09-09 9:35 $
File: bes_edit.asp
Status: 40% (new style)
Description: Muteerscherm voor bestellingen
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: urole
bes_key
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/funcodes.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/cmenuFn.inc"-->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "FCLTMgr.js", "jquery-ui.js"]})
var autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction); //Wat weet ik dan nou van disciplines???
var reg_key = getQParamInt("key", -1);
// OVERIGE PARAMETERS
// dit lijkt mij de enige gehele readonlyverklaring, de rest is localer
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
function algClose(params)
{
<% if (reg_key == -1)
{ %>
if (params.cancel)
{
FcltMgr.closeDetail(window, params );
return true;
}
FcltMgr.setTitle("<%=lcl_region%> " + params.regio_key, {hot:false});
window.location.href = "alg_regio.asp?verynew=1&key=" + params.regio_key;
<% } else { // Bestaande melding bewerkt, switch naar show-mode %>
$("#algFrame")[0].src = "alg_show_regio.asp?regio_key=<%=reg_key%>";
<% } %>
}
</script>
</head>
<body id="editbody">
<%
if (reg_key == -1)
var page="alg_edit_regio.asp"; // Maak een nieuw
else
var page="alg_show_regio.asp";
page += "?regio_key="+reg_key;
IFRAMER("algFrame", page, { title: lcl_alg_regio_frame,
initHeight: "450px",
FcltClose: "algClose" } );
// AKZA#88 don not allow printing if call isn't saved yet.
// UWVA#427 also print for FE
if (reg_key>-1 ) {
add_str ='huh?';
menuArray = new Array();
menuArray[0] = lcl_print_report;
menuArray[1] = lcl_noti_vis_email;
onClickArray = new Array();
onClickArray[0] = 'print_test(0)';
onClickArray[1] = 'print_test(1)';
// TODO: ik denk niet hier: generateCmenu("c_menu")
} %>
</body>
</html>

153
APPL/ALG/alg_regio_list.inc Normal file
View File

@@ -0,0 +1,153 @@
<% /*
$Revision: 1 $
$Modtime: 28-09-09 13:07 $
File: alg_regio.inc
Description: Show an overview of regio items in list-form,
which meets with the given requirements
Parameters:
Context: Search action from alg_regio_search_list.asp form
Note:
*/ %>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
})
function fnrowData(oRs)
{
var detail_key = oRs("alg_regio_key").value;
var key = oRs("alg_regio_key").value;
var oms = oRs("alg_regio_omschrijving").value;
var data = {detail_key:detail_key, key:key, oms:oms};
return JSON.stringify(data);
}
%>
<script>
dtable = "ALG_REGIO";
</script>
<script type="text/javascript">
var lcl_row_delete_failed1 = "<%=lcl_row_delete_failed1%>";
var lcl_row_delete_failed2 = "<%=lcl_row_delete_failed2%>";
var autosearch = 1; // automatisch laden van resultaat op search pagina.
function gotoDetails(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_district_search.asp?regio_key="+algData.detail_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_district%>");
}
function gebouwEdit(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_regio.asp?mode=viewUpdate&key="+algData.key;
FcltMgr.openDetail(url, "<%=lcl_region%>" + ' ' + algData.oms);
}
function doDelete(row)
{
if (confirm('<%=lcl_row_delete_confirm%>')) {
var algData = eval('(' + row.ROWDATA + ')');
parent.document.body.style.cursor = "wait";
document.body.style.cursor = "wait";
hiddenFrame.navigate("setAlgVerwijder.asp?key=" + algData.key + "&table=" + dtable);
}
}
function DeleteFailed(result)
{
if (result == 1 ) {
alert(lcl_row_delete_failed1);
} else if ( result == 2 ) {
alert(lcl_row_delete_failed2);
}
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
function Deleted()
{
algtable.deleteSelectedRows();
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
</script>
<%
function regio_list(pautfunction, params)
{
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(pautfunction);
var canWrite = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var reg_key = params.reg_key;
%>
<html>
<head>
<% FCLTHeader.Generate({outputmode:outputmode}) %>
</head>
<body id="listbody">
<%
var sqln = "SELECT r.alg_regio_key, "
+ " r.alg_regio_omschrijving "
+ " FROM alg_regio r "
+ " WHERE r.alg_regio_verwijder IS NULL ";
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
sqln += " AND r.alg_regio_key IN "
+ "(SELECT alg_regio_key FROM fac_v_my_regions "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
if (reg_key)
{
sqln += " AND r.alg_regio_key = " + reg_key;
}
var addurl = "appl/alg/alg_regio.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
var rst = new ResultsetTable({sql:sqln,
keyColumn: "alg_regio_key",
ID: "algtable",
rowData: fnrowData,
outputmode: outputmode,
filterParams: params,
buttons: [{ icon: "plus.png", title: lcl_add, action: "FcltMgr.openDetail('" + addurl + "', '" + lcl_add + "')" }]
});
rst.addColumn(new Column({caption: lcl_estate_regio_descr, content: "alg_regio_omschrijving"}));
rst.addAction({ action: "gebouwEdit", caption: lcl_edit, isDefault: true});
if (canWrite )
rst.addAction({ action: "doDelete", caption: lcl_delete, multi: true});
rst.addAction({ action: "gotoDetails", caption: lcl_goto_district_list});
var cnt = rst.processResultset();
%>
<iframe src="../Shared/empty.asp" id=hiddenFrame name=hiddenFrame style="display:none"></iframe>
</body>
</html>
<%}%>

View File

@@ -0,0 +1,88 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 28-09-09 23:39 $
*/ %>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/afdelingselector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/calendar.inc" -->
<!-- #include file="../Shared/timer.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: ["expand_frame.js"]
});
var regio_key = getQParamInt("regio_key", -1); //regio
var autosearch = getQParam("autosearch", -1);
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
$(document).ready(function() {<% if (autosearch == 1) { %> document.forms.u2.submit();<%}%>});
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", lcl_filterblok);%>
<form name="u2" target="workFrame" action="alg_regio_search_list.asp" method="get">
<table id="searchtable"><!-- 1 rij, 2 kolommen -->
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Locatie, gebouw en verdieping -->
<tr class="primsearch">
<td colspan="2">
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
regiokey: regio_key,
startlevel: 0, // Regio
eindlevel: 0, // District
whenEmpty: lcl_search_generic
});
%>
</td>
</tr>
</table>
</td><!-- end column 1 -->
<td class="searchkolom2">
</td><!-- end column 1 -->
</tr>
</table>
</form>
<% BLOCK_END();
var buttons = [{title: lcl_search, action:"document.forms.u2.submit();", id:"bSearch" }];
CreateButtons(buttons);
%>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload='ExpandFrame("workFrame")'
frameborder="0" scrolling="no">
</iframe>
</div>
</body>
</html>

View File

@@ -0,0 +1,45 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 27-08-09 11:54 $
File: alg_district_search_list.asp
Description: Vangt de parameters van msg_search op en verwerkt die in een aanroep van msg_list
Parameters: urole
Context: Vanuit alg_district.asp
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="alg_regio_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// FORM parameters: de waarde indien aanwezig, anders null
// Vaak is een lege selectie ook een -1, dus dan is-ie wel aanwezig, maar hoeft niet
// als filter te worden toegepast. Dan is null dus gelijk aan -1, qua betekenis,
// Vandaar dat een default van -1 ipv null ook mag
// In eerste instantie identificeren we elk veld gewoon 1-op-1.
var outputmode = getQParamInt("outputmode", 0) // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParam("showall", "0") == "1";
var reg_key = getQParamInt("regiokey", -1) // Regio
var autfunction = "WEB_ALGMAN";
regio_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
reg_key: (reg_key != -1? reg_key : null)
}
);
%>

100
APPL/ALG/alg_ruimte.asp Normal file
View File

@@ -0,0 +1,100 @@
<%@language = "javascript" %>
<% // testing: bes_key=1251054
/* $Revision: 1 $
$Modtime: 23-09-09 11:21 $
File: bes_edit.asp
Status: 40% (new style)
Description: Muteerscherm voor bestellingen
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: urole
bes_key
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/funcodes.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/cmenuFn.inc"-->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "FCLTMgr.js", "jquery-ui.js"]})
/* AUTORISATIEPARAMETERS
var urole = getQParam("urole");
// Om nog even compatible te blijven zodat alles nog even blijft werken. Moet er straks uit, natuurlijk.
var fronto = urole == "fo";
var backo = urole == "bo";
var minfo = urole == "mi";
var frontend = (!fronto & !backo & !minfo);
// de melding waar het over gaat, kan leeg zijn voor nieuwe, maar dat mag niet met bo of mi
var autfunction = '';
if (fronto)
autfunction = 'WEB_BESFOF';
else if (backo)
autfunction = 'WEB_BESBOF';
else
autfunction = 'WEB_BESUSE'; */
var autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction); //Wat weet ik dan nou van disciplines???
var room_key = getQParamInt("key", -1);
// OVERIGE PARAMETERS
// dit lijkt mij de enige gehele readonlyverklaring, de rest is localer
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<%
//======================================
%>
</head>
<body id="editbody">
<%
if (room_key == -1)
var page="alg_edit_ruimte.asp"; // Maak een nieuw
else
var page="alg_show_ruimte.asp";
page += "?urole=bo&bld_key="+room_key;
IFRAMER("algFrame", page, { title: lcl_alg_ruimte_frame,
initHeight: "450px"
} );
// AKZA#88 don not allow printing if call isn't saved yet.
// UWVA#427 also print for FE
if (room_key>-1 ) {
add_str ='huh?';
menuArray = new Array();
menuArray[0] = lcl_print_report;
menuArray[1] = lcl_noti_vis_email;
onClickArray = new Array();
onClickArray[0] = 'print_test(0)';
onClickArray[1] = 'print_test(1)';
// TODO: ik denk niet hier: generateCmenu("c_menu")
} %>
</body>
</html>

View File

@@ -0,0 +1,254 @@
<% /*
$Revision: 1 $
$Modtime: 28-09-09 23:40 $
File: alg_ruimte.inc
Description: Show an overview of ruimte items in list-form,
which meets with the given requirements
Parameters:
Context: Search action from alg_ruimte_search_list.asp form
Note:
*/ %>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
})
function fnrowData(oRs)
{
var parent_key = oRs("alg_verdieping_key").value;
var detail_key = oRs("alg_ruimte_key").value;
var key = oRs("alg_ruimte_key").value;
var oms = oRs("alg_ruimte_omschrijving").value
var data = {parent_key:parent_key, detail_key:detail_key, key:key, oms:oms};
return JSON.stringify(data);
}
%>
<script>
dtable = "ALG_RUIMTE";
</script>
<script type="text/javascript">
var lcl_row_delete_failed1 = "<%=lcl_row_delete_failed1%>";
var lcl_row_delete_failed2 = "<%=lcl_row_delete_failed2%>";
var autosearch = 1; // automatisch laden van resultaat op search pagina
function gotoDetails(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_werkplek_search.asp?ruimte_key="+algData.detail_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_workspace%>");
}
function gotoParent(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_verdieping_search.asp?verdieping_key="+algData.parent_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_floor%>");
}
function ruimteEdit(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_ruimte.asp?mode=viewUpdate&key="+algData.key;
FcltMgr.openDetail(url, "<%=lcl_room%>" + ' ' + algData.oms);
}
function doDelete(row)
{
if (confirm('<%=lcl_row_delete_confirm%>')) {
var algData = eval('(' + row.ROWDATA + ')');
parent.document.body.style.cursor = "wait";
document.body.style.cursor = "wait";
hiddenFrame.navigate("setAlgVerwijder.asp?key=" + algData.key + "&table=" + dtable);
}
}
function DeleteFailed(result)
{
if (result == 1 ) {
alert(lcl_row_delete_failed1);
} else if ( result == 2 ) {
alert(lcl_row_delete_failed2);
}
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
function Deleted()
{
algtable.deleteSelectedRows();
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
</script>
<%
function ruimte_list(pautfunction, params)
{
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(pautfunction);
var canWrite = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var loc_key = params.loc_key;
var bld_key = params.bld_key;
var lvl_key = params.lvl_key;
var room_key = params.room_key;
var area_nr = params.area_nr;
var area_descr = params.area_descr;
var area_use = params.area_use
%>
<html>
<head>
<% FCLTHeader.Generate({outputmode:outputmode}) %>
</head>
<body id="listbody">
<%
var sqln = "SELECT r.alg_ruimte_key, "
+ " v.alg_verdieping_key, "
+ " v.alg_gebouw_key, "
+ " g.alg_locatie_key, "
+ " l.alg_locatie_omschrijving, "
+ " g.alg_gebouw_omschrijving, "
+ " v.alg_verdieping_omschrijving, "
+ " r.alg_srtruimte_key, "
+ " s.alg_srtruimte_omschrijving, "
+ " r.alg_ruimte_nr, "
+ " r.alg_ruimte_omschrijving, "
+ " r.alg_ruimte_bruto_vloeropp, "
+ " r.alg_ruimte_opmerking, "
+ " r.alg_ruimte_omtrek, "
+ " r.alg_ruimte_inhoud, "
+ " v.alg_verdieping_code, "
+ " r.alg_ruimte_opp_alt1 "
+ " FROM alg_v_aanwezigruimte r, "
+ " alg_verdieping v, "
+ " alg_gebouw g, "
+ " alg_locatie l, "
+ " alg_srtruimte s "
+ " WHERE v.alg_verdieping_key = r.alg_verdieping_key "
+ " AND g.alg_gebouw_key = v.alg_gebouw_key "
+ " AND l.alg_locatie_key(+) = g.alg_locatie_key "
+ " AND s.alg_srtruimte_key(+) = r.alg_srtruimte_key "
+ " AND v.alg_verdieping_verwijder IS NULL ";
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
sqln += " AND r.alg_ruimte_key IN "
+ "(SELECT alg_ruimte_key FROM fac_v_my_rooms "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
sqln += getKenmerkSql("ALG", "r.alg_ruimte_key");
if (room_key)
{
sqln += " AND r.alg_ruimte_key = " + room_key;
}
else if (lvl_key)
{
sqln += " AND v.alg_verdieping_key = " + lvl_key;
}
else if (bld_key)
{
sqln += " AND v.alg_gebouw_key = " + bld_key;
}
else if (loc_key)
{
sqln += " AND g.alg_locatie_key = " + loc_key;
}
if (area_use && area_use != -1)
{
sqln += " AND r.alg_srtruimte_key = " + area_use;
}
if (area_nr)
{
sqln += " AND (UPPER(r.alg_ruimte_nr) LIKE UPPER('%" + area_nr + "%'))"
}
if (area_descr)
{
sqln += " AND (UPPER(r.alg_ruimte_omschrijving) LIKE UPPER('%" + area_descr + "%'))"
}
sqln += " ORDER BY l.alg_locatie_upper ASC, "
+ " g.alg_gebouw_upper ASC, "
+ " v.alg_verdieping_volgnr ASC, "
+ " r.alg_ruimte_upper_nr ASC "
var addurl = "appl/alg/alg_ruimte.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
var rst = new ResultsetTable({sql:sqln,
keyColumn: "alg_ruimte_key",
ID: "algtable",
rowData: fnrowData,
outputmode: outputmode,
flexModule: "ALG",
flexId: "alg_ruimte_key",
filterParams: params,
buttons: [{ icon: "plus.png", title: lcl_add, action: "FcltMgr.openDetail('" + addurl + "', '" + lcl_add + "')" }]
});
rst.addColumn(new Column({caption: lcl_estate_gebouw_man_descr, content: "alg_gebouw_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_verdieping_man_descr, content: "alg_verdieping_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_ruimte_man_nr, content: "alg_ruimte_nr"}));
rst.addColumn(new Column({caption: lcl_estate_ruimte_man_descr, content: "alg_ruimte_omschrijving", hasActions: true}));
rst.addColumn(new Column({caption: lcl_estate_ruimte_man_sort, content: "alg_srtruimte_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_ruimte_bruto_vloeropp, content: "alg_ruimte_bruto_vloeropp"}));
/*if (fg_contourlayers_alt1!=""&&fg_labellayers_alt1!="")
{
rst.addColumn(new Column().withCaption(lcl_estate_ruimte_opp_alt1).withContent("alg_ruimte_opp_alt1").withAlign("right"));
}
if (fg_contourlayers_alt2!=""&&fg_labellayers_alt2!="")
{
rst.addColumn(new Column().withCaption(lcl_estate_ruimte_opp_alt2).withContent("alg_ruimte_opp_alt2").withAlign("right"));
} */ // wat moet hier mee gebeuren??
/* if (!embedded)
rst.addColumn(new Column({caption: lcl_estate_locatie_man_descr, content: "alg_locatie_omschrijving"})); */ // emedded uitzoeken
if (outputmode != 0) // to be completed
{
rst.addColumn(new Column({caption: lcl_estate_ruimte_man_opmerk, content: "alg_ruimte_opmerking"}));
rst.addColumn(new Column({caption: lcl_estate_ruimte_man_omtrek, content: "alg_ruimte_omtrek"}));
rst.addColumn(new Column({caption: lcl_estate_ruimte_man_inhoud, content: "alg_ruimte_inhoud"}));
}
rst.addAction({ action: "ruimteEdit", caption: lcl_edit, isDefault: true});
if (canWrite )
rst.addAction({ action: "doDelete", caption: lcl_delete, multi: true});
rst.addAction({ action: "gotoDetails", caption: lcl_goto_werkplek_list});
rst.addAction({ action: "gotoParent", caption: lcl_goto_verdieping_list});
var cnt = rst.processResultset();
%>
<iframe src="../Shared/empty.asp" id=hiddenFrame name=hiddenFrame style="display:none"></iframe>
</body>
</html>
<%}%>

View File

@@ -0,0 +1,132 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 28-09-09 10:51 $
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: ["expand_frame.js"]
});
var locatie_key = getQParamInt("locatie_key", -1); // Locatie
var gebouw_key = getQParamInt("gebouw_key", -1); // Gebouw
var verdieping_key = getQParamInt("verdieping_key", -1); // Verdieping
var ruimte_key = getQParamInt("ruimte_key", -1); // ruimte
var ruimte_nr = getQParam("ruimte_nr", "");
var ruimte_use = getQParam("ruimte_use", "");
var ruimte_descr = getQParam("ruimte_descr", "");
var autosearch = getQParam("autosearch", -1);
autfunction = "WEB_ALGMAN"; //WEB_ALGUSE
var authparams = user.checkAutorisation(autfunction);
var lcl_bld_kenmerken = "lcl_ruimte_kenmerken";
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
function doSubmit()
{
// Submitten met kenmerken
doSubmitWithKenmerken(0);
}
function myModal()
{
var lvl = "'R'";
var key = 0;
var bld_key = "";
var url = "load_kenmerk.asp?disc=" + "&urole=bo" + "&advanced=1" + "&bld_key=" + bld_key + "&onrgoedlvl=" + lvl;
var titel = "<%=lcl_bld_kenmerken%>";
showKenmerkModal(key, url, titel)
}
$(document).ready(function() {<% if (autosearch == 1) { %> document.forms.u2.submit();<%}%>});
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", lcl_filterblok);%>
<form name="u2" target="workFrame" action="alg_ruimte_search_list.asp" method="get">
<table id="searchtable"><!-- 1 rij, 2 kolommen -->
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Locatie, gebouw en verdieping -->
<tr class="primsearch">
<td colspan="2">
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: locatie_key,
gebouwkey: gebouw_key,
verdiepingkey: verdieping_key,
ruimtekey: ruimte_key,
startlevel: 2, // locatie
eindlevel: 5, // ruimte
whenEmpty: lcl_search_generic // want filter
});
%>
</tr>
<tr>
<% sql = "SELECT alg_srtruimte_key, "
+ " alg_srtruimte_omschrijving "
+ " FROM alg_srtruimte "
+ " WHERE alg_srtruimte_verwijder IS NULL "
+ " ORDER BY alg_srtruimte_upper ";
FCLTselector("srt",
sql,
{ initKey: ruimte_use,
label: lcl_estate_ruimte_man_sort,
emptyOption: ""
});
%>
</td>
</tr>
</table>
</td><!-- end column 1 -->
<td class="searchkolom2">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Zoektekst -->
<tr class="primsearch">
<td class="label"><label for="nr"><%=lcl_estate_ruimte_man_nr%>:</label></td>
<td><input type="text" class="fldsrch" name="nr" value="<%=ruimte_nr%>"></td>
</tr>
<tr class="primsearch">
<td class="label"><label for="descr"><%=lcl_estate_ruimte_man_descr%>:</label></td>
<td><input type="text" class="fldsrch" name="descr" value="<%=ruimte_descr%>"></td>
</tr>
</table>
</td><!-- end column 1 -->
</tr>
</table>
</form>
<% BLOCK_END();
var buttons = [ {title: lcl_search, action:"doSubmit()", id:"bSearch" },
{title: lcl_obj_advanced, action:"myModal()", id:"bAdvanced" } ];
CreateButtons(buttons);
%>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload='ExpandFrame("workFrame")'
frameborder="0" scrolling="no">
</iframe>
</div>
</body>
</html>

View File

@@ -0,0 +1,58 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 27-08-09 11:52 $
File: alg_ruimte_search_list.asp
Description: Vangt de parameters van msg_search op en verwerkt die in een aanroep van msg_list
Parameters: urole
Context: Vanuit alg_ruimte_search.asp
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="alg_ruimte_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// FORM parameters: de waarde indien aanwezig, anders null
// Vaak is een lege selectie ook een -1, dus dan is-ie wel aanwezig, maar hoeft niet
// als filter te worden toegepast. Dan is null dus gelijk aan -1, qua betekenis,
// Vandaar dat een default van -1 ipv null ook mag
// In eerste instantie identificeren we elk veld gewoon 1-op-1.
var outputmode = getQParamInt("outputmode", 0) // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParam("showall", "0") == "1";
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var bld_key = getQParamInt("gebouwkey", -1); // Gebouw
var lvl_key = getQParamInt("verdiepingkey", -1); // Verdieping
var room_key = getQParamInt("ruimtekey", -1); // ruimte
var area_nr = getQParam("nr", null);
var area_descr = getQParam("descr", null);
var area_use = getQParam("srt", null);
var autfunction = "WEB_ALGMAN";
ruimte_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
loc_key: (loc_key != -1? loc_key : null),
bld_key: (bld_key != -1? bld_key : null),
lvl_key: (lvl_key != -1? lvl_key : null),
room_key: (room_key != -1? room_key : null),
area_nr: (area_nr != -1? area_nr : null),
area_descr: (area_descr != ""? area_descr : null),
area_use: (area_use != ""? area_use : null)
}
);
%>

View File

@@ -0,0 +1,113 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 15:56 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var urole = "1";
var dis_key = parseInt(getQParam("bld_key", "-1"), 10);
var reg_key
var onrgoedlvl = "'D'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
sql = " select * "
+ " FROM alg_district, "
+ " WHERE alg_district_key = " + dis_key;
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function dis_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_district.asp?urole=<%=urole%>&dis_key=<%=dis_key%>&embedded=1"
}
function dis_delete()
{
alert("Delete nog niet geimplementeerd");
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name=u2 onSubmit="return false;">
<%
var buttons = [ {title: lcl_change, action:"dis_change()", icon: "wijzigen.png", id:"bchange_bez_afspraak" },
{title: lcl_delete, action:"dis_delete()", icon: "delete.png", id:"bdelete_bez_afspraak" } ];
IFRAMER_HEADER(lcl_alg_gebouw_frame, buttons);
BLOCK_START("test", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
regiokey: reg_key,
districtkey: dis_key,
startlevel: 0, // Regio
eindlevel: 1, // District
readonly: true
});
%>
</table>
<%
BLOCK_END();
BLOCK_START("mldFlex", lcl_mld_flexblok);
%>
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : dis_key,
onrgoedlvl : onrgoedlvl,
reado : true
});
%>
<% // </td></tr> %>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,227 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 15:55 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
var bld_key = parseInt(getQParam("bld_key", "-1"), 10);
var loc_key
var onrgoedlvl = "'G'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
sql = " select * "
+ " FROM ALG_GEBOUW "
+ " WHERE alg_gebouw_key = " + bld_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var bld_srtkey = oRsMes("ALG_SRTGEBOUW_KEY").value;
var bld_acakey = oRsMes("ALG_GEBOUW_ACADKEY").value;
var bld_naam = oRsMes("ALG_GEBOUW_NAAM").value;
var bld_code = oRsMes("ALG_GEBOUW_CODE").value;
var bld_descr = oRsMes("ALG_GEBOUW_OMSCHRIJVING").value;
var bld_maak = oRsMes("ALG_GEBOUW_AANMAAK").value;
var bld_teken = oRsMes("ALG_GEBOUW_GETEKEND").value;
var bld_opp = oRsMes("ALG_GEBOUW_BRUTO_VLOEROPP").value;
var bld_omtrek = oRsMes("ALG_GEBOUW_OMTREK").value;
var bld_inhoud = oRsMes("ALG_GEBOUW_INHOUD").value;
var bld_opmerk = oRsMes("ALG_GEBOUW_OPMERKING").value;
var mld_adres = oRsMes("MLD_ADRES_KEY").value;
var prs_kstpl = oRsMes("PRS_KOSTENPLAATS_KEY").value;
var bld_ordrnr = oRsMes("ALG_GEBOUW_ORDERNR").value;
var bld_dwgx = oRsMes("ALG_GEBOUW_DWGX").value;
var bld_dwgy = oRsMes("ALG_GEBOUW_DWGY").value;
var bld_x = oRsMes("ALG_GEBOUW_X").value;
var bld_y = oRsMes("ALG_GEBOUW_Y").value;
var bld_bez = oRsMes("ALG_GEBOUW_BEZ").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function bld_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_gebouw.asp?bld_key=<%=bld_key%>&embedded=1"
}
function bld_delete()
{
alert("Delete nog niet geimplementeerd");
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name=u2 onSubmit="return false;">
<%
var buttons = [ {title: lcl_change, action:"bld_change()", icon: "wijzigen.png", id:"bchange_bez_afspraak" },
{title: lcl_delete, action:"bld_delete()", icon: "delete.png", id:"bdelete_bez_afspraak" } ];
IFRAMER_HEADER(lcl_alg_gebouw_frame, buttons);
BLOCK_START("algLoc1", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: loc_key,
gebouwkey: bld_key,
startlevel: 2, //Locatie
eindlevel: 3, // Gebouw
readonly: true }); %>
</tr>
<tr>
<%
sql = "SELECT alg_srtgebouw_key, "
+ " alg_srtgebouw_omschrijving "
+ " FROM alg_srtgebouw "
+ " WHERE alg_srtgebouw_verwijder IS NULL "
+ "ORDER BY alg_srtgebouw_upper "
FCLTselector("bld_srtkey", sql,
{ label: lcl_estate_gebouw_srtgebouw,
initKey: bld_srtkey,
emptyOption: "",
readonly: true
}
);
%>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_code%>:</label></td>
<td><input class="fldbld" type="text" id="bld_code" name="bld_code" value="<%=bld_code%>" readonly>
<img class='details' src='../Pictures/detail.png' onclick=""></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_opmerk%>:</label></td>
<td><input class="fldbld" type="text" id="bld_opmerk" name="bld_opmerk" value="<%=bld_opmerk%>" readonly></td>
</tr>
<%
sql = "SELECT prs_kostenplaats_key, "
+ " k.prs_kostenplaats_nr || ' ' || k.prs_kostenplaats_omschrijving "
+ " FROM prs_kostenplaats k "
+ " WHERE k.prs_kostenplaats_module = 'ALG' "
+ "ORDER BY prs_kostenplaats_upper ";
FCLTselector("prs_kstpl", sql,
{ label: lcl_prs_dept_kosten,
initKey: prs_kstpl,
emptyOption: "",
readonly: true
}
);
%>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_ordernr%>:</label></td>
<td><input class="fldbld" type="text" id="bld_ordrnr" name="bld_ordrnr" value="<%=bld_ordrnr%>" readonly></td>
</tr>
</table>
<% BLOCK_END();
BLOCK_START("algLoc2", ""); %>
<table>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_bruto_vloeropp%>:</label></td>
<td><input class="fldbld" type="text" id="bld_opp" name="bld_opp" value="<%=bld_opp%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_omtrek%>:</label></td>
<td><input class="fldbld" type="text" id="bld_omtrek" name="bld_omtrek" value="<%=bld_omtrek%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_man_inhoud%>:</label></td>
<td><input class="fldbld" type="text" id="bld_inhoud" name="bld_inhoud" value="<%=bld_inhoud%>" readonly></td>
</tr>
<tr>
<%
sql ="SELECT mld_adres_key, "
+ " mld_adres_naam "
+ " FROM mld_v_afleveradres "
+ "ORDER BY mld_adres_naam ";
FCLTselector("del_address", sql,
{ label: lcl_delivery_address,
initKey: mld_adres,
emptyOption: "",
readonly: true
}
);
%>
</tr>
<tr>
<td class="label"><label><%=lcl_geoxcoord%>:</label></td>
<td><input class="fldbld" type="text" id="bld_x" name="bld_x" value="<%=bld_x%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_geoycoord%>:</label></td>
<td><input class="fldbld" type="text" id="bld_y" name="bld_y" value="<%=bld_y%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_gebouw_bez%>:</label></td>
<td><input class="fldalgbez" type="checkbox" id="bld_bez" name="bld_bez" value="<%=bld_bez%>" <%= bld_bez==1 ? " checked " : "" %>disabled></td>
</tr>
</table>
<% BLOCK_END();
BLOCK_START("mldFlex", lcl_mld_flexblok);
%>
<!-- theText indicates flexkenmerken will follow on the next row -->
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : bld_key,
onrgoedlvl : onrgoedlvl,
reado : true
//mldman : false // TODO: => MGE: Niet meer nodig. Wordt in generateFlexKenmerkCode bepaald.
});
%>
<% // </td></tr> %>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,198 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 15:55 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var urole = "1";
var loc_key = parseInt(getQParam("bld_key", "-1"), 10);
var dis_key
var onrgoedlvl = "'L'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
sql = " select * "
+ " FROM ALG_LOCATIE "
+ " WHERE alg_locatie_key = " + loc_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var loc_code = oRsMes("alg_locatie_code").value;
var bez_adres = oRsMes("alg_locatie_adres").value;
var bez_postc = oRsMes("alg_locatie_postcode").value;
var bez_plaats = oRsMes("alg_locatie_plaats").value
var bez_land = oRsMes("alg_locatie_land").value;
var loc_vw = oRsMes("alg_locatie_verantw").value;
var loc_vwtel = oRsMes("alg_locatie_verantw_tel").value;
var loc_x = oRsMes("alg_locatie_x").value;
var loc_y = oRsMes("alg_locatie_y").value;
var loc_mail = oRsMes("alg_locatie_email").value;
var pst_adres = oRsMes("alg_locatie_post_adres").value;
var pst_postc = oRsMes("alg_locatie_post_postcode").value;
var pst_adres = oRsMes("alg_locatie_post_adres").value;
var pst_plaats = oRsMes("alg_locatie_post_plaats").value;
var pst_land = oRsMes("alg_locatie_post_land").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function loc_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_locatie.asp?urole=<%=urole%>&loc_key=<%=loc_key%>&embedded=1"
}
function loc_delete()
{
alert("Delete nog niet geimplementeerd");
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name=u2 onSubmit="return false;">
<%
var buttons = [ {title: lcl_change, action:"loc_change()", icon: "wijzigen.png", id:"bchange_bez_afspraak" },
{title: lcl_delete, action:"loc_delete()", icon: "delete.png", id:"bdelete_bez_afspraak" } ];
IFRAMER_HEADER(lcl_alg_locatie_frame, buttons);
BLOCK_START("algLoc1", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
districtkey: dis_key,
locatiekey: loc_key,
startlevel: 1, //District
eindlevel: 2, // Locatie
readonly: true }); %>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_locatie_man_code%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_code" name="loc_code" value="<%=loc_code%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_bezoek_adres%>:</label></td>
<td><input class="fldloc"" type="text" id="bez_adres" name="bez_adres" value="<%=bez_adres%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_bezoek_postcode%>:</label></td>
<td><input class="fldloc"" type="text" id="bez_postc" name="subject" value="<%=bez_postc%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_bezoek_plaats%>:</label></td>
<td><input class="fldloc"" type="text" id="bez_plaats" name="bez_plaats" value="<%=bez_plaats%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_bezoek_land%>:</label></td>
<td><input class="fldloc"" type="text" id="bez_land" name="bez_land" value="<%=bez_land%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_geoxcoord%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_x" name="loc_x" value="<%=loc_x%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_geoycoord%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_y" name="loc_y" value="<%=loc_y%>" readonly></td>
</tr>
</table>
<% BLOCK_END();
BLOCK_START("algLoc2", ""); %>
<table>
<tr>
<td class="label"><label><%=lcl_prs_address_post_adres%>:</label></td>
<td><input class="fldloc"" type="text" id="pst_adres" name="pst_adres" value="<%=pst_adres%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_post_postcode%>:</label></td>
<td><input class="fldloc"" type="text" id="pst_postc" name="pst_postc" value="<%=pst_postc%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_post_plaats%>:</label></td>
<td><input class="fldloc"" type="text" id="pst_plaats" name="pst_plaats" value="<%=pst_plaats%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_address_post_land%>:</label></td>
<td><input class="fldloc"" type="text" id="pst_land" name="pst_land" value="<%=pst_land%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_locatie_man_verantw%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_vw" name="loc_vw" value="<%=loc_vw%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_locatie_man_verantw_tel%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_vwtel" name="loc_vwtel" value="<%=loc_vwtel%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_noti_email%>:</label></td>
<td><input class="fldloc"" type="text" id="loc_mai" name="loc_mail" value="<%=loc_mail%>" readonly></td>
</tr>
</table>
<% BLOCK_END();
BLOCK_START("mldFlex", lcl_mld_flexblok);
%>
<!-- theText indicates flexkenmerken will follow on the next row -->
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : loc_key,
onrgoedlvl : onrgoedlvl,
reado : true
});
%>
<% // </td></tr> %>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,85 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 11:38 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js"]})
var regio_key = parseInt(getQParam("regio_key", "-1"), 10);
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
sql = " select * "
+ " FROM alg_regio, "
+ " WHERE alg_regio_key = " + regio_key;
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function reg_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_regio.asp?regio_key=<%=regio_key%>&embedded=1"
}
function reg_delete()
{
alert("Delete nog niet geimplementeerd");
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name=u2 onSubmit="return false;">
<%
var buttons = [ {title: lcl_change, action:"reg_change()", icon: "wijzigen.png", id:"bchange_bez_afspraak" },
{title: lcl_delete, action:"reg_delete()", icon: "delete.png", id:"bdelete_bez_afspraak" } ];
IFRAMER_HEADER(lcl_alg_regio_frame, buttons);
BLOCK_START("test", "");
FCLTplaatsselector(authparams.ALGreadlevel, {
regiokey: regio_key,
startlevel: 0, // Regio
eindlevel: 0, // Regio
readonly: true
});
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,172 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 15:54 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var urole = "1";
var room_key = parseInt(getQParam("bld_key", "-1"), 10);
var loc_key
var bld_key
var flr_key
var onrgoedlvl = "'R'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
sql = " select * "
+ " FROM ALG_RUIMTE "
+ " WHERE alg_ruimte_key = " + room_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var room_srt = oRsMes("ALG_SRTRUIMTE_KEY").value;
var room_nr = oRsMes("ALG_RUIMTE_NR").value;
var room_ackey = oRsMes("ALG_RUIMTE_ACADKEY").value;
var room_oms = oRsMes("ALG_RUIMTE_OMSCHRIJVING").value;
var room_tek = oRsMes("ALG_RUIMTE_GETEKEND").value;
var room_opp = oRsMes("ALG_RUIMTE_BRUTO_VLOEROPP").value;
var room_omt = oRsMes("ALG_RUIMTE_OMTREK").value;
var room_inh = oRsMes("ALG_RUIMTE_INHOUD").value;
var room_opm = oRsMes("ALG_RUIMTE_OPMERKING").value;
var room_flrom = oRsMes("ALG_RUIMTE_VLOER_OMSCHRIJVING").value;
var room_gegl = oRsMes("ALG_RUIMTE_OPP_GEVELGLAS").value;
var room_segl = oRsMes("ALG_RUIMTE_OPP_SEPARATIEGLAS").value;
var room_gebe = oRsMes("ALG_RUIMTE_OPP_GEVELBEKLEDING").value;
var room_oppa1 = oRsMes("ALG_RUIMTE_OPP_ALT1").value;
var room_oppa2 = oRsMes("ALG_RUIMTE_OPP_ALT2").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function room_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_room.asp?urole=<%=urole%>&room_key=<%=room_key%>&embedded=1"
}
function room_delete()
{
alert("Delete nog niet geimplementeerd");
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name=u2 onSubmit="return false;">
<%
var buttons = [ {title: lcl_change, action:"room_change()", icon: "wijzigen.png", id:"bchange_bez_afspraak" },
{title: lcl_delete, action:"room_delete()", icon: "delete.png", id:"bdelete_bez_afspraak" } ];
IFRAMER_HEADER(lcl_alg_ruimte_frame, buttons);
BLOCK_START("algLoc1", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: loc_key,
gebouwkey: bld_key,
verdiepingkey: flr_key,
ruimtekey: room_key,
startlevel: 2, //Locatie
eindlevel: 5, //Ruimte
readonly: true }); %>
<%
ROFIELDTR("fldroom", lcl_estate_ruimte_man_nr, room_nr);
ROFIELDTR("fldroom", lcl_estate_ruimte_man_sort, room_srt);
%>
<tr>
<td class="label"><label><%=lcl_estate_ruimte_bruto_vloeropp%>:</label></td>
<td><input class="fldroom" type="text" id="room_opp" name="room_opp" value="<%=room_opp%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_ruimte_getekendopp%>:</label></td>
<td><input class="fldroom"" type="text" id="room_ackey" name="room_ackey" value="<%=room_ackey%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_ruimte_opp_alt1%>:</label></td>
<td><input class="fldroom"" type="text" id="room_oppa1" name="room_oppa1" value="<%=room_oppa1%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_ruimte_opp_alt2%>:</label></td>
<td><input class="fldroom" type="text" id="room_oppa2" name="room_oppa2" value="<%=room_oppa2%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_ruimte_man_omtrek%>:</label></td>
<td><input class="fldroom" type="text" id="room_omt" name="room_omt" value="<%=room_omt%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_ruimte_man_inhoud%>:</label></td>
<td><input class="fldroom" type="text" id="room_inh" name="room_inh" value="<%=room_inh%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_ruimte_man_opmerk%>:</label></td>
<td><input class="fldroom" type="text" id="room_opm" name="room_opm" value="<%=room_opm%>" readonly></td>
</tr>
</table>
<% BLOCK_END();
BLOCK_START("mldFlex", lcl_mld_flexblok);
%>
<!-- theText indicates flexkenmerken will follow on the next row -->
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : room_key,
onrgoedlvl : onrgoedlvl,
reado : true
});
%>
<% // </td></tr> %>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,161 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 15:54 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var urole = "1";
var ter_key = parseInt(getQParam("bld_key", "-1"), 10);
var onrgoedlvl = "'T'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
sql = " select * "
+ " FROM alg_terreinsector "
+ " WHERE alg_terreinsector_key = " + ter_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var loc_key = oRsMes("ALG_LOCATIE_KEY").value;
var ter_oms = oRsMes("ALG_TERREINSECTOR_OMSCHRIJVING").value;
var ter_code = oRsMes("ALG_TERREINSECTOR_CODE").value;
var ter_naam = oRsMes("ALG_TERREINSECTOR_NAAM").value;
var ter_srkey = oRsMes("ALG_SRTTERREINSECTOR_KEY").value;
var ter_opp = oRsMes("ALG_TERREINSECTOR_OPPERVLAK").value;
var ter_omt = oRsMes("ALG_TERREINSECTOR_OMTREK").value;
var ter_aanmk = oRsMes("ALG_TERREINSECTOR_AANMAAK").value;
var ter_oms = oRsMes("ALG_TERREINSECTOR_OMSCHRIJVING").value;
var ter_ordnr = oRsMes("ALG_TERREINSECTOR_ORDERNR").value;
var prs_kstn = oRsMes("PRS_KOSTENPLAATS_KEY").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function ter_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_terreinsector.asp?urole=<%=urole%>&ter_key=<%=ter_key%>&embedded=1"
}
function ter_delete()
{
alert("Delete nog niet geimplementeerd");
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name=u2 onSubmit="return false;">
<%
var buttons = [ {title: lcl_change, action:"ter_change()", icon: "wijzigen.png", id:"bchange_bez_afspraak" },
{title: lcl_delete, action:"ter_delete()", icon: "delete.png", id:"bdelete_bez_afspraak" } ];
IFRAMER_HEADER(lcl_alg_terreinsector_frame, buttons);
BLOCK_START("test", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: loc_key,
startlevel: 2, // Locatie
eindlevel: 2, // Locatie
readonly: true
});%>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_sort%>:</label></td>
<td><input class="fldbld" type="text" id="ter_srkey" name="ter_srkey" value="<%=ter_srkey%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_code%>:</label></td>
<td><input class="fldbld" type="text" id="ter_code" name="ter_code" value="<%=ter_code%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_name%>:</label></td>
<td><input class="fldbld" type="text" id="ter_naam" name="ter_naam" value="<%=ter_naam%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_descr%>:</label></td>
<td><input class="fldbld" type="text" id="ter_oms" name="ter_oms" value="<%=ter_oms%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_prs_dept_kosten%>:</label></td>
<td><input class="fldbld" type="text" id="prs_kstn" name="prs_kstn" value="<%=prs_kstn%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_ordernr%>:</label></td>
<td><input class="fldbld" type="text" id="ter_ordnr" name="ter_ordnr" value="<%=ter_ordnr%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_oppervlak%>:</label></td>
<td><input class="fldbld" type="text" id="ter_opp" name="ter_opp" value="<%=ter_opp%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_terreinsector_man_omtrek%>:</label></td>
<td><input class="fldbld" type="text" id="ter_omt" name="ter_omt" value="<%=ter_omt%>" readonly></td>
</tr>
</table>
<%
BLOCK_END();
BLOCK_START("mldFlex", lcl_mld_flexblok);
%>
<!-- theText indicates flexkenmerken will follow on the next row -->
<% //<tr id="theText"><td> %>
<%
generateFlexKenmerkCode ({
bld_key : ter_key,
onrgoedlvl : onrgoedlvl,
reado : true
//mldman : false // TODO: => MGE: Niet meer nodig. Wordt in generateFlexKenmerkCode bepaald.
});
%>
<% // </td></tr> %>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,120 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 15:53 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
var flr_key = parseInt(getQParam("flr_key", "-1"), 10);
var bld_key
var loc_key
var onrgoedlvl = "'L'";
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
sql = " select * "
+ " FROM ALG_VERDIEPING "
+ " WHERE alg_verdieping_key = " + flr_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var flr_omschr = oRsMes("ALG_VERDIEPING_OMSCHRIJVING").value;
var flr_volgnr = oRsMes("ALG_VERDIEPING_VOLGNR").value;
var flr_code = oRsMes("ALG_VERDIEPING_CODE").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function flr_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_verdieping.asp?flr_key=<%=flr_key%>&embedded=1"
}
function flr_delete()
{
alert("Delete nog niet geimplementeerd");
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name=u2 onSubmit="return false;">
<%
var buttons = [ {title: lcl_change, action:"flr_change()", icon: "wijzigen.png", id:"bchange_bez_afspraak" },
{title: lcl_delete, action:"flr_delete()", icon: "delete.png", id:"bdelete_bez_afspraak" } ];
IFRAMER_HEADER(lcl_alg_verdieping_frame, buttons);
BLOCK_START("algLoc1", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: loc_key,
gebouwkey: bld_key,
verdiepingkey: flr_key,
startlevel: 2, //locatie
eindlevel: 4, // Verdieping
readonly: true }); %>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_verdieping_man_code%>:</label></td>
<td><input class="fldloc" type="text" id="flr_volgnr" name="flr_volgnr" value="<%=flr_volgnr%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_verdieping_man_volgnr%>:</label></td>
<td><input class="fldloc" type="text" id="flr_code" name="flr_code" value="<%=flr_code%>" readonly></td>
</tr>
</table>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

140
APPL/ALG/alg_show_wp.asp Normal file
View File

@@ -0,0 +1,140 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 15:53 $
File: bez_show_afspraak.asp
Status: 10% (new style)
Description: Detailscherm voor afspraken
Parameters: urole (required)
afspr_key (required)
-
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var wp_key = parseInt(getQParam("bld_key", "-1"), 10);
var loc_key
var bld_key
var flr_key
var room_key
autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction);
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
sql = " select * "
+ " FROM PRS_WERKPLEK "
+ " WHERE prs_werkplek_key = " + wp_key;
oRsMes = Oracle.Execute(sql);
if (!oRsMes.eof ) {
var wp_volgnr = oRsMes("PRS_WERKPLEK_VOLGNR").value;
var wp_oms = oRsMes("PRS_WERKPLEK_VOLGNR").value;
var wp_vstopp = oRsMes("PRS_WERKPLEK_VASTOPP").value;
var wp_opp = oRsMes("PRS_WERKPLEK_OPP").value;
var wp_vstopp = oRsMes("PRS_WERKPLEK_VASTOPP").value;
var wp_virt = oRsMes("PRS_WERKPLEK_VIRTUEEL").value;
var room_key = oRsMes("PRS_ALG_RUIMTE_KEY").value;
}
else {
Response.write("internal error or message deleted");
Response.End;
}
oRsMes.Close();
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function wp_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_wp.asp?wp_key=<%=wp_key%>&embedded=1"
}
function wp_delete()
{
alert("Delete nog niet geimplementeerd");
}
</script>
</head>
<body id="showbody">
<div id="show">
<form name=u2 onSubmit="return false;">
<%
var buttons = [ {title: lcl_change, action:"wp_change()", icon: "wijzigen.png", id:"bchange_bez_afspraak" },
{title: lcl_delete, action:"wp_delete()", icon: "delete.png", id:"bdelete_bez_afspraak" } ];
IFRAMER_HEADER(lcl_alg_wp_frame, buttons);
BLOCK_START("test", "");
%>
<table>
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatie: loc_key,
gebouwkey: bld_key,
verdiepingkey: flr_key,
ruimtekey: room_key,
startlevel: 2, // Regio
eindlevel: 5, // District
readonly: true });
%>
<tr>
<td class="label"><label><%=lcl_estate_wp_seq%>:</label></td>
<td><input class="fldbld" type="text" id="wp_volgnr" name="wp_volgnr" value="<%=wp_volgnr%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_workplace%>:</label></td>
<td><input class="fldbld" type="text" id="wp_oms" name="wp_oms" value="<%=wp_oms%>" readonly></td>
</tr>
<tr>
<td class="label"><label><%=lcl_estate_wp_fixed%>:</label></td>
<td>
<label for="wp_vstopp_v">
<input type="radio" name="wp_vstopp_v" id="wp_vstopp_v" value="0" <%= wp_vstopp==0 ? " checked " : "" %> disabled><%=lcl_estate_wp_fixed_v%>
</label>
<label for="wp_vstopp_f">
<input type="radio" name="wp_vstopp_f" id="wp_vstopp_f" value="1"<%= wp_vstopp==1 ? " checked " : "" %> disabled><%=lcl_estate_wp_fixed_f%>
</label>
</td>
</tr>
<td class="label"><label><%=lcl_estate_wp_area%>:</label></td>
<td><input class="fldbld" type="text" id="wp_opp" name="wp_opp" value="<%=wp_opp%>" readonly></td>
<tr>
<td class="label"><label><%=lcl_estate_wp_virt%>:</label></td>
<td><input class="fldalgbez" type="checkbox" id="wp_virt" name="wp_virt" value="<%=wp_virt%>" <%= wp_virt==1 ? " checked " : "" %>disabled></td>
</tr>
</table>
<%
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,99 @@
<%@language = "javascript" %>
<% // testing: bes_key=1251054
/* $Revision: 1 $
$Modtime: 24-09-09 13:48 $
File: bes_edit.asp
Status: 40% (new style)
Description: Muteerscherm voor bestellingen
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: urole
bes_key
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/funcodes.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/cmenuFn.inc"-->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "FCLTMgr.js", "jquery-ui.js"]})
/* AUTORISATIEPARAMETERS
var urole = getQParam("urole");
// Om nog even compatible te blijven zodat alles nog even blijft werken. Moet er straks uit, natuurlijk.
var fronto = urole == "fo";
var backo = urole == "bo";
var minfo = urole == "mi";
var frontend = (!fronto & !backo & !minfo);
// de melding waar het over gaat, kan leeg zijn voor nieuwe, maar dat mag niet met bo of mi
var autfunction = '';
if (fronto)
autfunction = 'WEB_BESFOF';
else if (backo)
autfunction = 'WEB_BESBOF';
else
autfunction = 'WEB_BESUSE'; */
var autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction); //Wat weet ik dan nou van disciplines???
var ter_key = getQParamInt("key", -1);
// OVERIGE PARAMETERS
// dit lijkt mij de enige gehele readonlyverklaring, de rest is localer
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<%
//======================================
%>
</head>
<body id="editbody">
<%
if (ter_key == -1)
var page="alg_edit_terreinsector.asp"; // Maak een nieuw
else
var page="alg_show_terreinsector.asp";
page += "?urole=bo&bld_key="+ter_key;
IFRAMER("algFrame", page, { title: lcl_alg_terreinsector_frame,
initHeight: "450px"} );
// AKZA#88 don not allow printing if call isn't saved yet.
// UWVA#427 also print for FE
if (ter_key>-1 ) {
add_str ='huh?';
menuArray = new Array();
menuArray[0] = lcl_print_report;
menuArray[1] = lcl_noti_vis_email;
onClickArray = new Array();
onClickArray[0] = 'print_test(0)';
onClickArray[1] = 'print_test(1)';
// TODO: ik denk niet hier: generateCmenu("c_menu")
} %>
</body>
</html>

View File

@@ -0,0 +1,188 @@
<% /*
$Revision: 1 $
$Modtime: 28-09-09 14:10 $
File: alg_terreinsector.inc
Description: Show an overview of terrein items in list-form,
which meets with the given requirements
Parameters:
Context: Search action from alg_terreinsector_search_list.asp form
Note:
*/
%>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
})
function fnrowData(oRs)
{
var parent_key = oRs("alg_locatie_key").value;
var key = oRs("alg_terreinsector_key").value;
var oms = oRs("alg_terreinsector_omschrijving").value;
var data = {parent_key:parent_key, key:key, oms:oms};
return JSON.stringify(data);
}
%>
<script>
dtable = "ALG_TERREINSECTOR";
</script>
<script type="text/javascript">
var lcl_row_delete_failed1 = "<%=lcl_row_delete_failed1%>";
var lcl_row_delete_failed2 = "<%=lcl_row_delete_failed2%>";
var autosearch = 1; // automatisch laden van resultaat op search pagina
function gotoParent(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_locatie_search.asp?locatie_key="+algData.parent_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_location%>");
}
function terreinEdit(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_terreinsector.asp?mode=viewUpdate&key="+algData.key;
FcltMgr.openDetail(url, "<%=lcl_terra%>" + ' ' + algData.oms);
}
function doDelete(row)
{
if (confirm('<%=lcl_row_delete_confirm%>')) {
var algData = eval('(' + row.ROWDATA + ')');
parent.document.body.style.cursor = "wait";
document.body.style.cursor = "wait";
hiddenFrame.navigate("setAlgVerwijder.asp?key=" + algData.key + "&table=" + dtable);
}
}
function DeleteFailed(result)
{
if (result == 1 ) {
alert(lcl_row_delete_failed1);
} else if ( result == 2 ) {
alert(lcl_row_delete_failed2);
}
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
function Deleted()
{
algtable.deleteSelectedRows();
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
</script>
<%
function terrein_list(pautfunction, params)
{
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(pautfunction);
var canWrite = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var loc_key = params.loc_key;
var ter_code = params.ter_code;
var ter_func = params.ter_func;
%>
<html>
<head>
<% FCLTHeader.Generate({outputmode:outputmode}) %>
</head>
<body id="listbody">
<%
var sqln = "SELECT g.alg_terreinsector_key, "
+ " g.alg_locatie_key, "
+ " l.alg_locatie_omschrijving, "
+ " g.alg_terreinsector_naam, "
+ " g.alg_terreinsector_omschrijving, "
+ " g.alg_terreinsector_code, "
+ " g.alg_terreinsector_oppervlak, "
+ " g.alg_terreinsector_omtrek, "
+ " g.alg_srtterreinsector_key, "
+ " s.alg_srtterreinsec_omschrijving "
+ " FROM alg_v_aanwezigterreinsector g, "
+ " alg_locatie l, "
+ " alg_srtterreinsector s "
+ " WHERE l.alg_locatie_key(+) = g.alg_locatie_key "
+ " AND s.alg_srtterreinsector_key(+) = g.alg_srtterreinsector_key "
+ " AND g.alg_terreinsector_verwijder IS NULL "
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
sqln += " AND g.alg_locatie_key IN "
+ "(SELECT alg_locatie_key FROM fac_v_my_locations "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
sqln += getKenmerkSql("ALG", "g.alg_terreinsector_key");
if (loc_key)
{
sqln += " AND g.alg_locatie_key = " + loc_key;
}
if (ter_func && ter_func != -1)
{
sqln += " AND g.ALG_SRTTERREINSECTOR_KEY = " + ter_func;
}
if (ter_code)
{
sqln += " AND (UPPER(g.ALG_TERREINSECTOR_CODE) LIKE UPPER('%" + ter_code + "%'))"
}
sqln += " ORDER BY g.alg_terreinsector_upper ASC "
var addurl = "appl/alg/alg_terreinsector.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
var rst = new ResultsetTable({sql:sqln,
keyColumn: "alg_terreinsector_key",
ID: "algtable",
rowData: fnrowData,
outputmode: outputmode,
flexModule: "ALG",
flexId: "alg_terreinsector_key",
filterParams: params,
buttons: [{ icon: "plus.png", title: lcl_add, action: "FcltMgr.openDetail('" + addurl + "', '" + lcl_add + "')" }]
});
rst.addColumn(new Column({caption: lcl_estate_locatie_man_descr, content: "alg_locatie_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_terreinsector_man_code, content: "alg_terreinsector_code"}));
rst.addColumn(new Column({caption: lcl_estate_terreinsector_man_name, content: "alg_terreinsector_naam"}));
rst.addColumn(new Column({caption: lcl_estate_terreinsector_man_sort, content: "alg_srtterreinsec_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_terreinsector_man_oppervlak, content: "alg_terreinsector_oppervlak"}));
rst.addColumn(new Column({caption: lcl_estate_terreinsector_man_omtrek, content: "alg_terreinsector_omtrek"}));
rst.addAction({ action: "terreinEdit", caption: lcl_edit, isDefault: true});
if (canWrite )
rst.addAction({ action: "doDelete", caption: lcl_delete, multi: true});
rst.addAction({ action: "gotoParent", caption: lcl_goto_locatie_list});
var cnt = rst.processResultset();
%>
<iframe src="../Shared/empty.asp" id=hiddenFrame name=hiddenFrame style="display:none"></iframe>
</body>
</html>
<%}%>

View File

@@ -0,0 +1,121 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 28-09-09 15:13 $
*/ %>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: ["expand_frame.js"]
});
var locatie_key = getQParam("locatie_key", -1); // locatie
var vak_code = getQParam("vak_code", "");
var ter_func = getQParam("ter_func", "");
var autosearch = getQParam("autosearch", -1);
autfunction = "WEB_ALGMAN"; //TODO: WEB_ALGUSE
var authparams = user.checkAutorisation(autfunction);
var lcl_bld_kenmerken = "lcl_terreinsector_kenmerken";
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
function doSubmit()
{
// Submitten met kenmerken
doSubmitWithKenmerken(0);
}
function myModal()
{
var lvl = "'T'";
var key = 0;
var bld_key = "";
var url = "load_kenmerk.asp?disc=" + "&urole=bo" + "&advanced=1" + "&bld_key=" + bld_key + "&onrgoedlvl=" + lvl;
var titel = "<%=lcl_bld_kenmerken%>";
showKenmerkModal(key, url, titel)
}
$(document).ready(function() {<% if (autosearch == 1) { %> document.forms.u2.submit();<%}%>});
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", lcl_filterblok);%>
<form name="u2" target="workFrame" action="alg_terreinsector_search_list.asp" method="get">
<table id="searchtable"><!-- 1 rij, 2 kolommen -->
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Locatie, gebouw en verdieping -->
<tr class="primsearch">
<td colspan="2">
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: locatie_key,
startlevel: 2, // locatie
eindlevel: 2, // locatie
whenEmpty: lcl_search_generic
});
%>
</td></tr>
<tr class="primsearch">
<% sql = "SELECT alg_srtterreinsector_key, "
+ " alg_srtterreinsec_omschrijving "
+ " FROM alg_srtterreinsector "
+ " WHERE alg_srtterreinsector_verwijder IS NULL "
+ "ORDER BY alg_srtterreinsector_upper ";
FCLTselector("srt",
sql,
{ initKey: ter_func,
label: lcl_estate_terreinsector_man_sort,
emptyOption: "",
initEmpty: true
});
%>
</tr>
</table>
</td><!-- end column 1 -->
<td class="searchkolom2">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Zoektekst -->
<tr class="primsearch">
<td class="label"><label for="descr"><%=lcl_estate_terreinsector_man_code%>:</label></td>
<td><input type="text" class="fldsrch" name="descr" value="<%=vak_code%>"></td>
</tr>
</table>
</td><!-- end column 1 -->
</tr>
</table>
</form>
<% BLOCK_END();
var buttons = [ {title: lcl_search, action:"doSubmit()", id:"bSearch" },
{title: lcl_obj_advanced, action:"myModal()", id:"bAdvanced" } ];
CreateButtons(buttons);
%>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload='ExpandFrame("workFrame")'
frameborder="0" scrolling="no">
</iframe>
</div>
</body>
</html>

View File

@@ -0,0 +1,49 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 27-08-09 11:49 $
File: alg_ruimte_search_list.asp
Description: Vangt de parameters van msg_search op en verwerkt die in een aanroep van msg_list
Parameters: urole
Context: Vanuit alg_ruimte_search.asp
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="alg_terreinsector_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// FORM parameters: de waarde indien aanwezig, anders null
// Vaak is een lege selectie ook een -1, dus dan is-ie wel aanwezig, maar hoeft niet
// als filter te worden toegepast. Dan is null dus gelijk aan -1, qua betekenis,
// Vandaar dat een default van -1 ipv null ook mag
// In eerste instantie identificeren we elk veld gewoon 1-op-1.
var outputmode = getQParamInt("outputmode", 0) // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParam("showall", "0") == "1";
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var ter_code = getQParam("descr", null);
var ter_func = getQParam("srt", null);
var autfunction = "WEB_ALGMAN";
terrein_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
loc_key: (loc_key != -1? loc_key : null),
ter_code: (ter_code != ""? ter_code : null),
ter_func: (ter_func != ""? ter_func : null)
}
);
%>

View File

@@ -0,0 +1,88 @@
<%@language = "javascript" %>
<% // testing: bes_key=1251054
/* $Revision: 1 $
$Modtime: 30-09-09 14:06 $
File: bes_edit.asp
Status: 40% (new style)
Description: Muteerscherm voor bestellingen
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: urole
bes_key
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/funcodes.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/cmenuFn.inc"-->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "jquery-ui.js"]})
var autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction); //Wat weet ik dan nou van disciplines???
var flr_key = getQParamInt("key", -1);
// OVERIGE PARAMETERS
// dit lijkt mij de enige gehele readonlyverklaring, de rest is localer
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
function algClose(params)
{
<% if (flr_key == -1)
{ %>
if (params.cancel)
{
FcltMgr.closeDetail(window, params );
return true;
}
FcltMgr.setTitle("<%=lcl_floor%> " + params.flr_key, {hot:false});
window.location.href = "alg_verdieping.asp?key=" + params.flr_key;
<% } else { // Bestaande melding bewerkt, switch naar show-mode %>
$("#algFrame")[0].src = "alg_show_verdieping.asp?flr_key=<%=flr_key%>";
<% } %>
}
</script>
</head>
<body id="editbody">
<%
if (flr_key == -1)
var page="alg_edit_verdieping.asp"; // Maak een nieuw
else
var page="alg_show_verdieping.asp";
page += "?flr_key="+flr_key;
IFRAMER("algFrame", page, { title: lcl_alg_verdieping_frame,
initHeight: "450px",
FcltClose: "algClose" } );
// AKZA#88 don not allow printing if call isn't saved yet.
// UWVA#427 also print for FE
if (flr_key>-1 ) {
add_str ='huh?';
menuArray = new Array();
menuArray[0] = lcl_print_report;
menuArray[1] = lcl_noti_vis_email;
onClickArray = new Array();
onClickArray[0] = 'print_test(0)';
onClickArray[1] = 'print_test(1)';
// TODO: ik denk niet hier: generateCmenu("c_menu")
} %>
</body>
</html>

View File

@@ -0,0 +1,188 @@
<% /*
$Revision: 1 $
$Modtime: 28-09-09 23:40 $
File: alg_verdieping.inc
Description: Show an overview of verdieping items in list-form,
which meets with the given requirements
Parameters:
Context: Search action from alg_verdieping_search_list.asp form
Note:
*/ %>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
})
function fnrowData(oRs)
{
var parent_key = oRs("alg_gebouw_key").value;
var detail_key = oRs("alg_verdieping_key").value;
var key = oRs("alg_verdieping_key").value;
var oms = oRs("alg_verdieping_omschrijving").value
var data = {parent_key:parent_key, detail_key:detail_key, key:key, oms:oms};
return JSON.stringify(data);
}
%>
<script>
dtable = "ALG_VERDIEPING";
</script>
<script type="text/javascript">
var lcl_row_delete_failed1 = "<%=lcl_row_delete_failed1%>";
var lcl_row_delete_failed2 = "<%=lcl_row_delete_failed2%>";
var autosearch = 1; //automatische laden van resultaat op search pagina
function gotoDetails(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_ruimte_search.asp?verdieping_key="+algData.detail_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_room%>");
}
function gotoParent(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_gebouw_search.asp?gebouw_key="+algData.parent_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_building%>");
}
function verdiepingEdit(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_verdieping.asp?mode=viewUpdate&key="+algData.key;
FcltMgr.openDetail(url, "<%=lcl_floor%>" + ' ' + algData.oms);
}
function doDelete(row)
{
if (confirm('<%=lcl_row_delete_confirm%>')) {
var algData = eval('(' + row.ROWDATA + ')');
parent.document.body.style.cursor = "wait";
document.body.style.cursor = "wait";
hiddenFrame.navigate("setAlgVerwijder.asp?key=" + algData.key + "&table=" + dtable);
}
}
function DeleteFailed(result)
{
if (result == 1 ) {
alert(lcl_row_delete_failed1);
} else if ( result == 2 ) {
alert(lcl_row_delete_failed2);
}
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
function Deleted()
{
algtable.deleteSelectedRows();
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
</script>
<%
function verdiepingen_list(pautfunction, params)
{
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(pautfunction);
var canWrite = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var loc_key = params.loc_key;
var bld_key = params.bld_key;
var lvl_key = params.lvl_key;
%>
<html>
<head>
<% FCLTHeader.Generate({outputmode:outputmode}) %>
</head>
<body id="listbody">
<%
var sqln = "SELECT v.alg_verdieping_key, "
+ " v.alg_gebouw_key, "
+ " g.alg_locatie_key, "
+ " l.alg_locatie_omschrijving, "
+ " g.alg_gebouw_omschrijving, "
+ " v.alg_verdieping_omschrijving, "
+ " v.alg_verdieping_code "
+ " FROM alg_v_aanwezigverdieping v, "
+ " alg_gebouw g, "
+ " alg_locatie l "
+ " WHERE g.alg_gebouw_key = v.alg_gebouw_key "
+ " AND l.alg_locatie_key(+) = g.alg_locatie_key "
+ " AND v.alg_verdieping_verwijder IS NULL "
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
sqln += " AND v.alg_verdieping_key IN "
+ "(SELECT alg_verdieping_key FROM fac_v_my_floors "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
if (lvl_key)
{
__Log("lvl_key is " + lvl_key);
sqln += " AND v.alg_verdieping_key = " + lvl_key;
}
else if (bld_key)
{
__Log("bld_key is " + bld_key);
sqln += " AND g.alg_gebouw_key = " + bld_key;
}
else if (loc_key)
{
__Log("loc_key is " + loc_key);
sqln += " AND g.alg_locatie_key = " + loc_key;
}
sqln += " ORDER BY l.alg_locatie_upper ASC, "
+ " g.alg_gebouw_upper ASC, "
+ " v.alg_verdieping_volgnr ASC ";
var addurl = "appl/alg/alg_verdieping.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
var rst = new ResultsetTable({sql:sqln,
keyColumn: "alg_verdieping_code",
ID: "algtable",
outputmode: outputmode,
filterParams: params,
rowData: fnrowData,
buttons: [{ icon: "plus.png", title: lcl_add, action: "FcltMgr.openDetail('" + addurl + "', '" + lcl_add + "')" }]
});
rst.addColumn(new Column({caption: lcl_estate_locatie_man_descr, content: "alg_locatie_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_gebouw_man_descr, content: "alg_gebouw_omschrijving"}));
rst.addColumn(new Column({caption: lcl_estate_verdieping_man_code, content: "alg_verdieping_code"}));
rst.addColumn(new Column({caption: lcl_estate_verdieping_man_descr, content: "alg_verdieping_omschrijving", hasActions: true}));
rst.addAction({ action: "verdiepingEdit", caption: lcl_edit, isDefault: true});
if (canWrite )
rst.addAction({ action: "doDelete", caption: lcl_delete, multi: true});
rst.addAction({ action: "gotoDetails", caption: lcl_goto_ruimte_list});
rst.addAction({ action: "gotoParent", caption: lcl_goto_gebouw_list});
var cnt = rst.processResultset();
%>
<iframe src="../Shared/empty.asp" id=hiddenFrame name=hiddenFrame style="display:none"></iframe>
</body>
</html>
<%}%>

View File

@@ -0,0 +1,81 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 29-09-09 14:49 $
*/ %>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["expand_frame.js"]
});
var locatie_key = getQParamInt("locatie_key", -1); // Locatie
var gebouw_key = getQParamInt("gebouw_key", -1); // Gebouw
var verdieping_key = getQParamInt("verdieping_key", -1); // Verdieping
var autosearch = getQParam("autosearch", -1);
autfunction = "WEB_ALGMAN"; //TODO WEB_ALGUSE?
var authparams = user.checkAutorisation(autfunction);
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script>
$(document).ready(function() {<% if (autosearch == 1) { %> document.forms.u2.submit();<%}%>});
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", lcl_filterblok);%>
<form name="u2" target="workFrame" action="alg_verdieping_search_list.asp" method="get">
<td valign=top>
<table>
<!-- Locatie, gebouw en verdieping -->
<tr class="primsearch">
<td colspan="2">
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: locatie_key,
gebouwkey: gebouw_key,
verdiepingkey: verdieping_key,
startlevel: 2, // locatie
eindlevel: 4, // verdieping
whenEmpty: lcl_search_generic // want filter
});
%>
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>
<% BLOCK_END();
var buttons = [ {title: lcl_search, action:"document.forms.u2.submit();", id:"bSearch" } ];
CreateButtons(buttons);
%>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload='ExpandFrame("workFrame")'
frameborder="0" scrolling="no">
</iframe>
</div>
</body>
</html>

View File

@@ -0,0 +1,49 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 28-09-09 12:18 $
File: msg_search_list.asp
Description: Vangt de parameters van msg_search op en verwerkt die in een aanroep van msg_list
Parameters: urole
Context: Vanuit msg_search.asp
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="alg_verdieping_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// FORM parameters: de waarde indien aanwezig, anders null
// Vaak is een lege selectie ook een -1, dus dan is-ie wel aanwezig, maar hoeft niet
// als filter te worden toegepast. Dan is null dus gelijk aan -1, qua betekenis,
// Vandaar dat een default van -1 ipv null ook mag
// In eerste instantie identificeren we elk veld gewoon 1-op-1.
var outputmode = getQParamInt("outputmode", 0) // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParam("showall", "0") == "1";
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var bld_key = getQParamInt("gebouwkey", -1); // Gebouw
var lvl_key = getQParamInt("verdiepingkey", -1); // Verdieping
var autfunction = "WEB_ALGMAN";
verdiepingen_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
loc_key: (loc_key != -1? loc_key : null),
bld_key: (bld_key != -1? bld_key : null),
lvl_key: (lvl_key != -1? lvl_key : null)
}
);
%>

View File

@@ -0,0 +1,231 @@
<% /*
$Revision: 1 $
$Modtime: 28-09-09 23:35 $
File: alg_werkplek_list.inc
Description: Show an overview of werkplek items in list-form,
which meets with the given requirements
Parameters:
Context: Search action from alg_werkplek_search_list.asp form
Note:
*/
%>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getvalues.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["FcltMgr.js"]
})
function fnrowData(oRs)
{
var parent_key = oRs("alg_ruimte_key").value;
var key = oRs("prs_werkplek_key").value;
var oms = oRs("prs_werkplek_omschrijving").value;
var data = {parent_key:parent_key, key:key, oms:oms};
return JSON.stringify(data);
}
%>
<script>
dtable = "PRS_WERKPLEK";
</script>
<script type="text/javascript">
var lcl_row_delete_failed1 = "<%=lcl_row_delete_failed1%>";
var lcl_row_delete_failed2 = "<%=lcl_row_delete_failed2%>";
var autosearch = 1;
function gotoParent(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_ruimte_search.asp?ruimte_key="+algData.parent_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=lcl_room%>");
}
function werkplekEdit(row)
{
var algData = eval('(' + row.ROWDATA + ')');
var url = "appl/ALG/alg_wp.asp?mode=viewUpdate&key="+algData.key;
FcltMgr.openDetail(url, "<%=lcl_workspace%>" + ' ' + algData.oms);
}
function doDelete(row)
{
if (confirm('<%=lcl_row_delete_confirm%>')) {
var algData = eval('(' + row.ROWDATA + ')');
parent.document.body.style.cursor = "wait";
document.body.style.cursor = "wait";
hiddenFrame.navigate("setAlgVerwijder.asp?key=" + algData.key + "&table=" + dtable);
}
}
function DeleteFailed(result)
{
if (result == 1 ) {
alert(lcl_row_delete_failed1);
} else if ( result == 2 ) {
alert(lcl_row_delete_failed2);
}
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
}
function Deleted()
{
selRow = parseInt(GetCurRow());
parent.document.body.style.cursor = "auto";
document.body.style.cursor = "auto";
rowData = document.all.item("row" + selRow);
rowData.style.display = 'none';
}
</script>
<%
function werkplek_list(pautfunction, params)
{
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(pautfunction);
var canWrite = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var loc_key = params.loc_key;
var bld_key = params.bld_key;
var lvl_key = params.lvl_key;
var room_key = params.room_key;
var wp_descr = params.wp_descr;
%>
<html>
<head>
<% FCLTHeader.Generate({outputmode:outputmode}) %>
</head>
<body id="listbody">
<%
var sqln = "SELECT p.prs_werkplek_key, "
+ " p.alg_ruimte_key, "
+ " p.alg_verdieping_key, "
+ " p.alg_gebouw_key, "
+ " p.alg_locatie_key, "
+ " l.alg_locatie_code "
+ " || ' - ' "
+ " || p.alg_gebouw_code "
+ " || ' - ' "
+ " || p.alg_verdieping_code "
+ " || ' - ' "
+ " || p.alg_ruimte_nr samengesteld, "
+ " p.alg_gebouw_omschrijving, "
+ " p.alg_verdieping_omschrijving, "
+ " p.alg_verdieping_code, "
+ " p.alg_ruimte_nr, "
+ " w.alg_ruimte_omschrijving, "
+ " p.prs_werkplek_volgnr, "
+ " p.prs_werkplek_omschrijving, "
+ " CASE COALESCE (w.prs_werkplek_vastopp, -1) "
+ " WHEN -1 "
+ " THEN 'nee' "
+ " ELSE 'ja' "
+ " END decode_vastopp, "
+ " p.prs_werkplek_opp, "
+ " p.prs_perslidwerkplek_bezetting, "
+ " p.prs_afd_perslid_naam, "
+ " w.prs_werkplek_virtueel "
+ " FROM prs_v_perslidwerkplek_gegevens p, "
+ " alg_locatie l, "
+ " prs_v_werkplek_gegevens w "
+ " WHERE p.alg_locatie_key = l.alg_locatie_key "
+ " AND w.prs_werkplek_key = p.prs_werkplek_key ";
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
sqln += " AND p.alg_ruimte_key IN "
+ "(SELECT alg_ruimte_key FROM fac_v_my_rooms "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
if (room_key)
{
sqln += " AND p.alg_ruimte_key = " + room_key;
}
else if (lvl_key)
{
sqln += " AND p.alg_verdieping_key = " + lvl_key;
}
else if (bld_key)
{
sqln += " AND p.alg_gebouw_key = " + bld_key;
}
else if (loc_key)
{
sqln += " AND p.alg_locatie_key = " + loc_key;
}
if (wp_descr)
{
sqln += " AND (UPPER(p.prs_werkplek_omschrijving) LIKE UPPER('%" + wp_descr + "%'))"
}
sqln += " ORDER BY w.alg_locatie_key ASC, "
+ " p.alg_gebouw_code ASC, "
+ " p.alg_verdieping_volgnr ASC, "
+ " p.alg_ruimte_nr ASC, "
+ " p.prs_werkplek_volgnr ";
var addurl = "appl/alg/alg_wp.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
var rst = new ResultsetTable({sql:sqln,
keyColumn: "prs_werkplek_key",
ID: "algtable",
rowData: fnrowData,
outputmode: outputmode,
filterParams: params,
title: lcl_workplace,
buttons: [{ icon: "plus.png", title: lcl_add, action: "FcltMgr.openDetail('" + addurl + "', '" + lcl_add + "')" }]
});
rst.addColumn(new Column({caption: lcl_room, content: "samengesteld"}));
rst.addColumn(new Column({caption: lcl_estate_ruimte_man_descr, content: "alg_ruimte_omschrijving"}));
rst.addColumn(new Column({caption: lcl_workplace, content: "prs_werkplek_omschrijving", hasActions: true}));
rst.addColumn(new Column({caption: lcl_estate_wp_fixed, content: "decode_vastopp"}));
rst.addColumn(new Column({caption: lcl_estate_wp_area, content: prepareArea}));
rst.addColumn(new Column({caption: lcl_occupation+" (%)", content: "prs_perslidwerkplek_bezetting"}));
rst.addColumn(new Column({caption: lcl_name, content: "prs_afd_perslid_naam"}));
function prepareArea(oRs)
{
return num2currEditable(oRs("prs_werkplek_opp").Value);
}
if (outputmode != 0)
{
rst.addColumn(new Column({caption: lcl_estate_wp_seq, content: "prs_werkplek_volgnr"}));
rst.addColumn(new Column({caption: lcl_estate_wp_virt, content: "prs_werkplek_virtueel"}));
}
rst.addAction({ action: "werkplekEdit", caption: lcl_edit, isDefault: true});
if (canWrite )
rst.addAction({ action: "doDelete", caption: lcl_delete, multi: true});
rst.addAction({ action: "gotoParent", caption: lcl_goto_ruimte_list});
var cnt = rst.processResultset();
%>
<iframe src="../Shared/empty.asp" id=hiddenFrame name=hiddenFrame style="display:none"></iframe>
</body>
</html>
<%}%>

View File

@@ -0,0 +1,93 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 29-09-09 14:51 $
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: ["expand_frame.js"]
});
var locatie_key = getQParamInt("locatie_key", -1); // Locatie
var gebouw_key = getQParamInt("gebouw_key", -1); // Gebouw
var verdieping_key = getQParamInt("verdieping_key", -1); // Verdieping
var ruimte_key = getQParamInt("ruimte_key", -1); // ruimte
var descr = getQParam("werkplek", "");
var autosearch = getQParam("autosearch", -1);
autfunction = "WEB_ALGMAN"; //WEB_ALGUSE
var authparams = user.checkAutorisation(autfunction);
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script>
$(document).ready(function() {<% if (autosearch == 1) { %> document.forms.u2.submit();<%}%>});
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", lcl_filterblok);%>
<form name="u2" target="workFrame" action="alg_werkplek_search_list.asp" method="get">
<table id="searchtable"><!-- 1 rij, 2 kolommen -->
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Locatie, gebouw en verdieping -->
<tr class="primsearch">
<td colspan="2">
<%
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: locatie_key,
gebouwkey: gebouw_key,
ruimtekey: ruimte_key,
startlevel: 2, // locatie
eindlevel: 5, // ruimte
whenEmpty: lcl_search_generic // want filter
});
%>
</td>
</tr>
</table>
</td><!-- end column 1 -->
<td class="searchkolom2">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Zoektekst -->
<tr class="primsearch">
<td class="label"><label for="nr"><%=lcl_workplace%>:</label></td>
<td><input type="text" class="fldsrch" name="descr" value=""></td>
</tr>
</table>
</td><!-- end column 1 -->
</tr>
</table>
</form>
<% BLOCK_END();
var buttons = [ {title: lcl_search, action:"document.forms.u2.submit();", id:"bSearch" } ];
CreateButtons(buttons);
%>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload='ExpandFrame("workFrame")'
frameborder="0" scrolling="no">
</iframe>
</div>
</body>
</html>

View File

@@ -0,0 +1,54 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 27-08-09 11:50 $
File: alg_werkplek_search_list.asp
Description: Vangt de parameters van msg_search op en verwerkt die in een aanroep van msg_list
Parameters: urole
Context: Vanuit alg_werkplek_search.asp
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="alg_werkplek_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// FORM parameters: de waarde indien aanwezig, anders null
// Vaak is een lege selectie ook een -1, dus dan is-ie wel aanwezig, maar hoeft niet
// als filter te worden toegepast. Dan is null dus gelijk aan -1, qua betekenis,
// Vandaar dat een default van -1 ipv null ook mag
// In eerste instantie identificeren we elk veld gewoon 1-op-1.
var outputmode = getQParamInt("outputmode", 0); // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParam("showall", "0") == "1";
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var bld_key = getQParamInt("gebouwkey", -1); // Gebouw
var lvl_key = getQParamInt("verdiepingkey", -1); // Verdieping
var room_key = getQParamInt("ruimtekey", -1); // ruimte
var wp_descr = getQParam("descr", null);
var autfunction = "WEB_ALGMAN";
werkplek_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
loc_key: (loc_key != -1? loc_key : null),
bld_key: (bld_key != -1? bld_key : null),
lvl_key: (lvl_key != -1? lvl_key : null),
room_key: (room_key != -1? room_key : null),
wp_descr: (wp_descr != ""? wp_descr : null)
}
);
%>

80
APPL/ALG/alg_wp.asp Normal file
View File

@@ -0,0 +1,80 @@
<%@language = "javascript" %>
<% // testing: bes_key=1251054
/* $Revision: 1 $
$Modtime: 29-09-09 9:56 $
File: bes_edit.asp
Status: 40% (new style)
Description: Muteerscherm voor bestellingen
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: urole
bes_key
Context:
Note:
*/ %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/funcodes.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/cmenuFn.inc"-->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "FCLTMgr.js", "jquery-ui.js"]})
var autfunction = "WEB_ALGMAN";
var authparams = user.checkAutorisation(autfunction); //Wat weet ik dan nou van disciplines???
var wp_key = getQParamInt("key", -1);
// OVERIGE PARAMETERS
// dit lijkt mij de enige gehele readonlyverklaring, de rest is localer
var readonly = !(authparams.PRSwritelevel< 9 || authparams.ALGwritelevel < 9);
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<%
//======================================
%>
</head>
<body id="editbody">
<%
if (wp_key == -1)
var page="alg_edit_wp.asp"; // Maak een nieuw
else
var page="alg_show_wp.asp";
page += "?bld_key="+wp_key;
IFRAMER("algFrame", page, { title: lcl_alg_wp_frame,
initHeight: "450px",
FcltClose: "algClose" } );
// AKZA#88 don not allow printing if call isn't saved yet.
// UWVA#427 also print for FE
if (wp_key>-1 ) {
add_str ='huh?';
menuArray = new Array();
menuArray[0] = lcl_print_report;
menuArray[1] = lcl_noti_vis_email;
onClickArray = new Array();
onClickArray[0] = 'print_test(0)';
onClickArray[1] = 'print_test(1)';
// TODO: ik denk niet hier: generateCmenu("c_menu")
} %>
</body>
</html>

106
APPL/ALG/load_kenmerk.asp Normal file
View File

@@ -0,0 +1,106 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 16-09-09 10:34 $
File: ALG@/load_kenmerk.asp
Status: 60%
Description: cnt_search.asp: Genereert html code voor de presentatie van de flexvelden voor cnt overzichten
cnt.asp: Genereert javascript code om de flexkenmerken in het cnt_edit popup scherm dynamisch bij te werken
Parameters: urole Rol van de gebruiker (frontend, frontoffice, backoffice, management info)
cnt_key Contract key
disc_key Contractsoort key
reado Readonly
advanced Geadvanceerd
Context: cnt_search.asp: Deze gegenereerde html code wordt in modal div geplaats van cnt_search.asp
cnt.asp: Of submits naar/via cnt.asp!
Note: cnt.asp: Het formulier van cnt.asp wordt dynamisch gewijzigd met onze flexvelden
TODO: Aanpassen voor gebruik door cnt.asp
*/ %>
<%
var DOCTYPE_Disable = true;
Response.Expires = -1;
var fp = new Object(); // dummy, moet er nog uitgewerkt worden TODO:
%>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc" -->
<div id="bldKenmerken" name="bldKenmerken">
<table width="100%">
<%
var urole = getQParam("urole");
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
var bld_key = getQParamInt("bld_key", -1); // Contract key
var reado = getQParam("reado", 0) == 1; // Readonly
var advanced = getQParam("advanced", 0) == 1; // Geavanceerd
var reqId = getQParamInt("reqId", -1); // Perslid key (!search && multiMode)
var onrgoedlvl = getQParam("onrgoedlvl", -1);
__Log(onrgoedlvl);
var autfunction = "";
switch(urole)
{
case "bo": autfunction = "WEB_CNTMAN";
break;
case "mi": autfunction = "WEB_CNTMAN";
break;
}
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction);
function isReadonly (volgnummer)
{
return reado;
}
sql = "SELECT k.alg_kenmerk_key, "
+ " k.alg_kenmerk_omschrijving, "
+ " k.alg_kenmerk_kenmerktype, "
+ " r.alg_refkenmerk_objectnaam, "
+ " r.alg_refkenmerk_kolomnaam, "
+ " r.alg_refkenmerk_kolomtxt, "
+ " r.fac_usrtab_key, "
+ " k.alg_kenmerk_lengte, "
+ " k.alg_kenmerk_dec, "
+ " k.alg_kenmerk_nmin, "
+ " k.alg_kenmerk_nmax, "
+ " k.alg_kenmerk_default, "
+ " COALESCE (k.alg_kenmerk_volgnr, 0), "
+ " COALESCE (k.alg_kenmerk_dimensie, ''), "
+ " COALESCE (k.alg_kenmerk_hint, ''), "
+ " k.alg_kenmerk_default, "
+ " 0 "
+ " FROM alg_kenmerk k, "
+ " alg_refkenmerk r "
+ " WHERE k.alg_kenmerk_niveau = " + onrgoedlvl
+ " AND k.alg_refkenmerk_key = r.alg_refkenmerk_key(+) "
+ " AND k.alg_kenmerk_verwijder IS NULL "
+ "ORDER BY k.alg_kenmerk_volgnr, "
+ " k.alg_kenmerk_omschrijving ";
var trn = 0;
// Voor als we nog geen key weten
var tmp_folder = "__NEW__" + Session.SessionId;
listKenmerk(sql,
"ALG", //module
"A" + (bld_key > 0? bld_key : tmp_folder), //foldername?
{ kenmerk_2col: (advanced? true : false), // In edit mode kenmerken onder elkaar en niet in 2 kolommen.
kenmerk_search: advanced,
kenmerk_colspan: false,
fnIsReadonly: isReadonly,
parentKey: bld_key }
);
%>
</table>
</div>

0
APPL/BES/.gitignore vendored
View File

160
APPL/BES/DynArtikelInfo.asp Normal file
View File

@@ -0,0 +1,160 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 13:59 $
File: DynArtikelInfo.asp
Description: Haal dynamische artikel informatie op (bijvoorbeeld: voorraad)
bij de leverancier site
Let op: de web(!)server moet dan wel naar buiten kunnen
(proxy?/ Certificaten?)
Parameters: srtdeel_key: srddeel_key van het artikel
Context: sel_items_tab.js/fetchArtikelInfo-Ajax
Result: json data
stock: number
stockDate: waarop leverancier in zijn magazijn heeft gekeken
Note:
*/
DOCTYPE_Disable = 1;
%>
<!--#include file="../../cust/install.inc"-->
<!--#include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/json2.js" -->
<%
Response.Expires = -1;
var SXH_PROXY_SET_PROXY = 2;
var SXH_OPTION_SELECT_CLIENT_SSL_CERT=3;
function getSupplierStock(pGroupNr, pArticleNr, xmlurl, xslPath, certificateName)
{
var http_request = Server.CreateObject("MSXML2.ServerXMLHTTP.4.0");
if (ProxyServerIPAddress)
{
http_request.setProxy(SXH_PROXY_SET_PROXY, ProxyServerIPAddress);
}
if (certificateName != null) // Let wel: zorg dat IUSR (of: geauthenticeerde gebruiker)
{ // Rechten heeft op het certificaat!
__Log("Zetten certificaat: " + certificateName);
http_request.setOption(SXH_OPTION_SELECT_CLIENT_SSL_CERT, certificateName);
}
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
xmlReq.appendChild(xmlReq.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"UTF-8\""))
rootrootElement = xmlReq.createElement("facilitor");
rootElement = xmlReq.createElement("stock_request");
elementPart = xmlReq.createElement("part");
elementGroup = xmlReq.createElement("group");
elementGroupText = xmlReq.createTextNode(pGroupNr);
elementGroup.appendChild(elementGroupText);
elementPart.appendChild(elementGroup);
elementNumber = xmlReq.createElement("number");
elementNumberText = xmlReq.createTextNode(pArticleNr);
elementNumber.appendChild(elementNumberText);
elementPart.appendChild(elementNumber);
rootElement.appendChild(elementPart);
rootrootElement.appendChild(rootElement);
xmlReq.appendChild(rootrootElement);
// Transformeer met de leverancier specifieke stylesheet
if (xslPath)
{
var xslDoc = Server.CreateObject("MSXML2.DOMDocument.4.0");
__Log("Loading xslPath: " + Server.MapPath(custpath + "/" + xslPath));
xslDoc.load(Server.MapPath(custpath + "/" + xslPath));
xmlReq.transformNodeToObject(xslDoc, xmlReq);
}
__Log("Posting to url: " + xmlurl);
http_request.open("POST", xmlurl, false); // Synchroon
http_request.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
__Log("Posting naar leverancier: " + Server.HTMLEncode(xmlReq.xml));
http_request.send(xmlReq.xml);
if (http_request.status != 200)
{
__Log("getSupplierStock status: " + http_request.status);
return null;
}
xmlResp = http_request.responseXML;
__Log("Response van leverancier: " + Server.HTMLEncode(xmlResp.xml));
// Transformeer met de leverancier specifieke stylesheet
if (xslPath)
{
var xslDoc = Server.CreateObject("MSXML2.DOMDocument.4.0");
__Log("Loading xslPath: " + Server.MapPath(custpath + "/" + xslPath));
xslDoc.load(Server.MapPath(custpath + "/" + xslPath));
xmlResp.transformNodeToObject(xslDoc, xmlResp);
__Log("Stock response transformed: " + Server.HTMLEncode(xmlResp.xml));
}
// Zoek ons artikel terug in de response (voor het theoretische geval dat
// de leverancier meer terugstuurd)
var strQuery = "facilitor/stock_response/part[number='"+escape_js(pArticleNr)+"']/amount";
objStock = xmlResp.selectSingleNode(strQuery);
if (!objStock)
{
__Log("getSupplierStock: " + strQuery + " not found in (transformed) XML");
return null;
}
else
{
result = { stock: objStock.text };
strQuery = "stock_response/part[number='"+escape_js(pArticleNr)+"']/infotext";
objInfotext = http_request.responseXML.selectSingleNode(strQuery);
if (objInfotext)
result.infotext = objInfotext.text;
// We doen nog niets met infohtml maar leggen alvast de basis
strQuery = "stock_response/part[number='"+escape_js(pArticleNr)+"']/infohtml";
objInfohtml = http_request.responseXML.selectSingleNode(strQuery);
if (objInfohtml)
result.infohtml = objInfohtml.text;
return result;
}
}
var srtdeel_key = Request.QueryString("srtdeel_key");
var sql = "SELECT ins_srtdeel_nr, ins_srtgroep_omschrijving, "
+ " prs_bedrijf_xmldetails_loc, prs_bedrijf_xsl, "
+ " prs_bedrijf_details_loc, prs_bedrijf_order_certificate"
+ " FROM bes_v_aanwezigsrtdeel d,"
+ " bes_v_aanwezigsrtgroep g,"
+ " prs_bedrijf be"
+ " WHERE d.ins_srtdeel_key = " + srtdeel_key
+ " AND d.ins_srtgroep_key = g.ins_srtgroep_key"
+ " AND d.prs_bedrijf_key = be.prs_bedrijf_key"
var oRs = Oracle.Execute(sql);
if (oRs("prs_bedrijf_xmldetails_loc").Value == null) // Leverancier ondersteunt dat niet
{
Response.Write(JSON.stringify({})); // We weten niets
Response.End;
}
var res = getSupplierStock(oRs("ins_srtgroep_omschrijving").Value,
oRs("ins_srtdeel_nr").Value,
oRs("prs_bedrijf_xmldetails_loc").Value,
oRs("prs_bedrijf_xsl").Value,
oRs("prs_bedrijf_order_certificate").Value
)
if (!res) // Geen antwoord?
{
Response.Write(JSON.stringify({})); // We weten niets
Response.End;
}
var txtJson = "{ stock: '"+res.stock+"', requestDate: '" + (new Date()) + "'";
txtJson += ", details_url: '" + oRs("prs_bedrijf_details_loc").value
+ (oRs("prs_bedrijf_details_loc").value != null?oRs("ins_srtdeel_nr").value:"") + "'";
txtJson += "}"
Response.Write(txtJson); // JSON.stringify(result));
Response.End;
%>

25
APPL/BES/ModalForm.asp Normal file
View File

@@ -0,0 +1,25 @@
<%@ language = "JavaScript" %>
<!--#include file="../../cust/install.inc"-->
<% // Modal form container
var titleString = Request.QueryString("title").Count > 0? Request.QueryString("title") : lcl_BES_article_details; // Titel
%>
<html>
<title><%=titleString%></title>
<script>
function closeModal(retval)
{
window.returnValue = retval;
yy = window.returnValue;
document.write(yy); // Als ik dit weghaal is de returnValue altijd false?
window.close();
}
</script>
<body>
<script>
document.write('<iframe width="100%" height="100%" src='+window.dialogArguments+'></iframe>');
</script>
</body>
</html>

104
APPL/BES/PrsStaffelInfo.asp Normal file
View File

@@ -0,0 +1,104 @@
<%@ LANGUAGE="JavaScript" %>
<% /*
$Revision: 1 $
$Modtime: 16-09-09 14:12 $
File: Bes/PrsStaffelInfo.asp
Description: Toont een lijst met bedrijfstaffels
Parameters:
prs_bedrijf_key prs_bedrijf_key van bedrijf
Context: Van de leverancier worden de bedrijfstaffel regels getoond in een popup scherm
Note: Wordt getoond in een popup scherm
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<% Response.Expires = 0;
var prs_bedrijf_key = Request.QueryString("prs_bedrijf_key");
var sql = "SELECT b.prs_bedrijf_naam bedrijfnaam"
+ " FROM prs_bedrijf b"
+ " WHERE b.prs_bedrijf_key = " + prs_bedrijf_key;
var oRs = Oracle.Execute(sql);
var staffeltext = "<table><tr><td colspan='8' class='result' align='left'><b><u>" + lcl_BES_staffel_company + ": " + oRs("bedrijfnaam").value + "</u></b></td></tr>"
var sql = "SELECT ps.prs_staffel_grenswaarde grenswaarde"
+ ", ps.prs_staffel_korting korting"
+ " FROM prs_staffel ps"
+ " WHERE ps.prs_bedrijf_key = " + prs_bedrijf_key
+ " ORDER BY 1";
oRs = Oracle.Execute(sql);
var start = 0;
var kleur;
var toeslagkorting = "";
while (!oRs.eof)
{
if (oRs("korting").value < 0)
kleur = "red";
else if (oRs("korting").value > 0)
kleur = "green";
else
kleur = "black";
// percentage
if (parseFloat(oRs("korting").value) < 0)
toeslagkorting = oRs("korting").value + "%&nbsp;" + lcl_BES_extra_charge; // ...% toeslag
else if (parseFloat(oRs("korting").value) > 0)
toeslagkorting = oRs("korting").value + "%&nbsp;" + lcl_BES_discount; // ...% korting
else
toeslagkorting = "";
tdspan_begin = "<td class='result' align='right'><span style='color: " + kleur + "'>";
tdspan_eind = "&nbsp;</span></td>";
staffeltext += "<tr>" + tdspan_begin
+ lcl_BES_staffel
+ (oRs("grenswaarde").value // Is er een grenswaarde
? tdspan_eind + tdspan_begin
+ lcl_BES_of // van
+ tdspan_eind + tdspan_begin
+ (start? start : "0")
+ tdspan_eind + tdspan_begin
+ lcl_BES_until // tot
+ tdspan_eind + tdspan_begin
+ (oRs("grenswaarde").value? oRs("grenswaarde").value : " ")
+ tdspan_eind + tdspan_begin
: tdspan_eind + "<td colspan='4' class='result' align='left'><span style='color: " + kleur + "'>"
+ lcl_BES_for + "&nbsp;" + start // voor x eenheid of meer ...
+ "&nbsp;" + lcl_BES_or_more
//+ lcl_BES_for_more_than + "&nbsp;" + start // voor meer dan ...
+ tdspan_eind + tdspan_begin)
//+ eenheid
//+ tdspan_eind + tdspan_begin
+ toeslagkorting
+ tdspan_eind + "</tr>"
start = oRs("grenswaarde").value;
oRs.MoveNext();
}
staffeltext += "</table>"; // Maximaal ongeveer 25 korting regels kunnen via header verstuurd worden. Moet genoeg zijn voor 4.82.
%>
<html>
<head>
<link rel=stylesheet href="../<%=custpath%>/cust.css" type="text/css">
</head>
<body>
<div align="center">
<table>
<tr>
<td class="result">
<%=staffeltext%>
</td>
</tr>
</table>
</div>
</body>
</html>

229
APPL/BES/addFavourites.asp Normal file
View File

@@ -0,0 +1,229 @@
<%@ LANGUAGE="JavaScript" %>
<% /*
$Revision: 1 $
$Modtime: 20-02-09 0:03 $
File: Bes/addFavourites.asp
Description: Voegt favorieten toe aan de favorieten lijst van een persoon
Parameters:
srtdeel_key item key van item die toegevoegt moet worden aan de favorieten lijst
prs_key prs_perslid_key van persoon waarvan een item
aan een van zijn favorieten lijsten toegevoegd moet worden
Context: Binnen ModalForm die wordt geopend als gebruiker knopje 'Favorieten toevoegen'
drukt bij een bestelling
Note:
*/ %>
<%=Session("EnableClientLogging")%>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<html>
<link rel=stylesheet href="<%=custpath%>/cust.css" type="text/css">
<head>
<script type="text/javascript" src="../LocalScripts/wpos.js"></script>
<script type="text/javascript" src="../LocalScripts/arrange.js"></script>
<script type="text/javascript" src="../LocalScripts/autocomplete.js"></script>
<script language="vbscript" src="../LocalScripts/num2curr.vbs"></script>
</head>
<script language=JavaScript>
// Zorg voor de submit
function doSubmit()
{
document.forms.u2.submit();
}
</script>
<%
__Log("addFavourites");
insert_mode = Request('insert_mode').Count > 0;
if (insert_mode) {
// Sla de ingevoerde gegevens op in een nieuwe bestellingsaanvraag
%>
<body id="info" topmargin='0' onLoad="">
<%
var srtdeel_key = Request.Form('srtdeel_key').Count>0? parseInt(Request.Form('srtdeel_key'), 10):-1;
var prs_key = Request.Form('prs_key').Count>0? parseInt(Request.Form('prs_key'), 10):-1;
fav = Request.form("fav").Count>0? Request.form("fav"):"";
fav = replace(fav,"'","''")
fav_name = Request.form("fav_name").Count>0? Request.form("fav_name"):"";
fav_name = replace(fav_name,"'","''")
if (srtdeel_key == -1 || prs_key == -1) {
Response.Write(lcl_internal_error);
Response.End();
}
// controleer of het item al binnen de favorieten lijst bestaat
sql = "SELECT bes_favoriet_key"
+ " FROM bes_favoriet"
+ (fav_name == ""
? (fav == ""
? " WHERE bes_favoriet_naam IS NULL"
: " WHERE bes_favoriet_naam = '" + fav + "'")
: " WHERE bes_favoriet_naam = '" + fav_name + "'")
+ " AND prs_perslid_key = " + prs_key
+ " AND ins_srtdeel_key = " + srtdeel_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof) {
%>
<script language=JavaScript>
alert("<%=lcl_BES_fav_item_exist%>");
parent.closeModal(false);
</script>
<%
} else {
// Voeg item aan de favorieten lijst toe
sql = "INSERT INTO bes_favoriet ("
+ "bes_favoriet_naam"
+ ", prs_perslid_key"
+ ", ins_srtdeel_key"
+ ") VALUES ("
+ (fav_name == "" && fav != ""
? "'" + fav + "'"
: "'" + fav_name + "'")
+ ", " + prs_key
+ ", " + srtdeel_key
+ ")";
Oracle.Execute(sql);
%>
<script language=JavaScript>
parent.closeModal(true);
</script>
<%
}
} else {
// Maak het favorieten formulier
%>
<body id="info" topmargin='0' onLoad="document.u2.fav_name.focus();">
<table width=100% id=mainTable><tr><td>
<table width=100% id=mainForm><tr><td valign=top align=left>
<form action="../Bes/addFavourites.asp" method="post" name="u2" onsubmit="return false;"'>
<%
var srtdeel_key = Request.QueryString('srtdeel_key').Count>0? parseInt(Request.QueryString('srtdeel_key'), 10):-1;
var prs_key = Request.QueryString('prs_key').Count>0? parseInt(Request.QueryString('prs_key'), 10):-1;
var disgroup_key = Request.QueryString('disgroup_key').Count>0? parseInt(Request.QueryString('disgroup_key'), 10):-1;
if (srtdeel_key == -1 || prs_key == -1) {
Response.Write(lcl_internal_error);
Response.End();
}
sql = "SELECT COALESCE(ins_srtdeel_nr,'')||' '||ins_srtdeel_omschrijving"
+ ", COALESCE(ins_srtdeel_eenheid,'')"
+ " FROM bes_v_aanwezigsrtdeel d"
+ " WHERE d.ins_srtdeel_key = " + srtdeel_key;
oRs = Oracle.Execute(sql);
srtdeel_oms = "";
srtdeel_eenh = "";
if (!oRs.eof) {
srtdeel_oms = oRs(0).value;
srtdeel_eenh = oRs(1).value;
}
oRs.Close();
%>
<table border=0 cellpadding='0' cellspacing='5' width='500'>
<tr><td></td>
<td align="left"><b><%=lcl_BES_favour_add%>:</b></td>
</tr>
<tr><td><br></td></tr>
<tr>
<td align="right" valign="top"><b><%=lcl_BES_srtdeel%>:</b></td>
<td align="left">
<%=srtdeel_oms%> <nobr>(<%=srtdeel_eenh%>)</nobr>
</td>
</tr>
<tr>
<td align="right"><b><nobr><%=lcl_BES_favour_list%>:</nobr></b></td>
<td align="left" width="260" name="td_fav" id="td_fav">
<select name="fav" style="width:260" onKeyPress='return false;' onKeyUp='autoComplete(this);'>
<%
// eigen favorieten lijsten van een bepaalde categorie
sql = " SELECT '<" + lcl_BES_select_fav_list + ">', 'A' FROM DUAL"
+ " UNION"
+ " SELECT bf.bes_favoriet_naam"
+ ", 'B'"
+ " FROM bes_v_aanwezigsrtdeel d"
+ ", bes_v_aanwezigsrtgroep g"
+ ", bes_favoriet bf"
+ " WHERE d.ins_srtgroep_key = g.ins_srtgroep_key"
+ " AND d.ins_srtdeel_key = bf.ins_srtdeel_key"
+ " AND bf.bes_favoriet_naam IS NULL"
+ " AND bf.prs_perslid_key = " + prs_key
+ " AND g.ins_discipline_key = " + disgroup_key
+ " UNION"
+ " SELECT bf.bes_favoriet_naam"
+ ", 'C'"
+ " FROM bes_v_aanwezigsrtdeel d"
+ ", bes_v_aanwezigsrtgroep g"
+ ", bes_favoriet bf"
+ " WHERE d.ins_srtgroep_key = g.ins_srtgroep_key"
+ " AND d.ins_srtdeel_key = bf.ins_srtdeel_key"
+ " AND bf.bes_favoriet_naam IS NOT NULL"
+ " AND bf.prs_perslid_key = " + prs_key
+ " AND g.ins_discipline_key = " + disgroup_key
+ " ORDER BY 2, 1";
var oRs = Oracle.Execute(sql);
%>
<%
while (!oRs.eof) {
%>
<option value='<%=oRs(1).value == 'A'?"":oRs(0).value%>' <%=oRs(1).value == 'A'?"selected":""%>><%=escape2(oRs(0).value)%></option>
<%
oRs.MoveNext();
}
oRs.close();
%>
</select>
</td>
</tr>
<tr>
<td align="right"><b><nobr><%=lcl_BES_new_favour_list%>:</nobr></b></td>
<td align="left">
<input type="text" style="width:260;" name="fav_name" maxlength="50" value="">
</td>
</tr>
</table></td></tr>
<input type='hidden' id='srtdeel_key' name='srtdeel_key' value='<%=srtdeel_key%>'>
<input type='hidden' id='prs_key' name='prs_key' value='<%=prs_key%>'>
<input type='hidden' id='insert_mode' name='insert_mode' value='1'>
<input type='submit' style="width:0">
</td></tr></table>
</td><td valign="top" align="right" rowspan="2" width="120">
<br>
<%
BUTTONS_START(2);
CreateButton(lcl_submit, "doSubmit();", 120);
NEXT_BUTTON();
CreateButton(lcl_cancel, "parent.closeModal(false);", 120);
BUTTONS_END();
%>
</td></tr></table>
</form>
<%
}
%>
</body>
</html>

62
APPL/BES/bes_accept.asp Normal file
View File

@@ -0,0 +1,62 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 23-09-09 13:59 $
File: bes_accept.asp
Status: 90%
Description: Accepteren van een bestelaanvraag.
Parameters:
bes_key Bestelaanvraag nummer (key)
*/ %>
<%
DOCTYPE_Disable = 1;
%>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="rfo_approve_utils.inc" -->
<!-- #include file="rfo_utils.inc" -->
<%
/***** Get webform parameters *****/
var urole = getFParam("urole");
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
var bes_key = getFParamInt("bes_key");
// MGE: opmerk wordt volgens mij nooit doorgegeven bij accepteren. Alleen bij afwijzen kun je reden opgeven. Kan hier volgens mij weg.
//var has_remark = (getQParam("opmerk", 0) == 1);
//var opmerk = getQParam("opmerk", "");
/***** End get webform parameters *****/
var autfunction = "";
switch(urole)
{
case "bo": autfunction = "WEB_BESBOF"; // Accepteren alleen met backoffice rechten
break;
}
// De functie checkAutorisation(autfunction, true) geeft null terug indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction);
// PF: hier stond een voorwaardelijke update indien status was 3; dit hangt echter van de
// catalogus eigenschappen af, dus als ik hier accepteer, dan accepteer ik gewoon altijd. toch?
sql = "UPDATE bes_bestelling_item "
+ " SET bes_bestelling_i_gcpt_us_key = " + user_key
//+ (has_remark
// ? (", bes_bestelling_opmerking = '" + replace(opmerk, "'", "''") + "'")
// : "")
+ " WHERE bes_bestelling_key = " + bes_key;
oRs = Oracle.Execute(sql);
if (autoorderRFO(bes_key))
makeOrders(user_key, bes_key);
var result = {message: lcl_BES_accepted1 + bes_bestelling_prefix + bes_key + lcl_BES_accepted2};
Response.Write(JSON.stringify(result));
%>

View File

@@ -0,0 +1,99 @@
<%@language = "javascript" %>
<% // testing: bes_key=1251054
/* $Revision: 1 $
$Modtime: 30-09-09 17:10 $
File: bes_bestelling.asp
Status: 40% (new style)
Description: Muteerscherm voor bestellingen
dit is de grote 'wrapper' voor de diverse andere schermen
Parameters: urole
bes_key
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/algautlevel.inc" -->
<!-- #include file="../Shared/cmenuFn.inc" -->
<%
FCLTHeader.Requires({ plugins: ["suggest","jQuery"],
js: ["expand_frame.js", "FCLTMgr.js", "jquery-ui.js"] })
// AUTORISATIEPARAMETERS
var urole = getQParam("urole");
// Om nog even compatible te blijven zodat alles nog even blijft werken. Moet er straks uit, natuurlijk.
var fronto = urole == "fo";
var backo = urole == "bo";
var minfo = urole == "mi";
var frontend = (!fronto & !backo & !minfo);
// de melding waar het over gaat, kan leeg zijn voor nieuwe, maar dat mag niet met bo of mi
var bes_key = getQParamInt("bes_key", -1);
// defaults
var dis_key = getQParamInt("dis_key", -1);
transitParam = buildTransitParam(["mld_key", "artikel_key"]);
var autfunction = '';
if (fronto)
autfunction = 'WEB_BESFOF';
else if (backo)
autfunction = 'WEB_BESBOF';
else
autfunction = 'WEB_BESUSE';
var authparams = user.checkAutorisation(autfunction); // Wat weet ik dan nou van disciplines???
// OVERIGE PARAMETERS
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
function besClose(params)
{
<% if (bes_key ==-1) { %>
if (params.cancel || params.close)
{
FcltMgr.closeDetail(window, params );
return true;
}
window.location.href = "bes_bestelling.asp?verynew=1&urole=<%=urole%>&bes_key=" + params.bes_key;
<% } else { // Bestaande bestelling bewerkt, switch naar show-mode %>
$("#besFrame")[0].src = "bes_show_bestelling.asp?urole=<%=urole%>&bes_key=<%=bes_key%>&embedded=1";
<% } %>
}
</script>
<%
//======================================
%>
</head>
<body id="editbody">
<%
if (bes_key == -1)
var page="bes_edit_bestelling.asp?urole=" + urole + "&dis_key=" + dis_key + transitParam; // Maak een nieuw
else
var page="bes_show_bestelling.asp?urole=" + urole + "&bes_key=" + bes_key + transitParam;
IFRAMER("besFrame", page, { title: lcl_bes_frame_algemeen,
initHeight: "450px",
FcltClose: "besClose" } );
%>
</body>
</html>

View File

@@ -0,0 +1,94 @@
/*
$Revision: 1 $
$Modtime: 29-09-09 13:32 $
File: bes_bestellnig.js
Status: 10% (new style)
Description: Javascript code voor bes_xxxx_bestelling
Parameters:
Context:
Note:
*/
function DisciplinesUploaded(new_objs)
{
// remove items from list
sel = document.all.disgroup;
$(sel).empty();
if (empty_option)
{
opt = document.createElement("OPTION");
opt.text = "";
opt.value = -1;
sel.add(opt);
}
for (i in new_objs)
{
if (!new_objs[i].discipline_key) continue;// Skip Prototype.js spul
opt = document.createElement("OPTION");
opt.text = new_objs[i].desc;
opt.value = new_objs[i].discipline_key;
opt.value2 = new_objs[i].punchout; // punchoutUrl
opt.value3 = new_objs[i].leverdagen; // leverdagen
opt.value4 = new_objs[i].logo_url; // logo_url
opt.value5 = new_objs[i].staffelgroepitems; // staffelgroepitems
sel.add(opt);
}
if (document.u2.bestellimiet) document.u2.bestellimiet.value = "";
disgroupChanged($(sel).val());
}
// Process de data die van de melder via Ajax terugkomt. TODO afleveradres?
var prs_info;
function process_besteller_info(data)
{
prs_info = data;
sgAccount.setValue(prs_info.kostenplaats_key, prs_info.kpn_string, true, true);
if( u2.delivery_place )
u2.delivery_place.value=prs_info.defaultDelivPlace||"";
if (data.defDelivAdress != -1)
u2.deliveryAddr.value = prs_info.defaultDelivAdress;
else
u2.deliveryAddr.value = -1;
if( u2.ordernr ) u2.ordernr.value="";
prskey = prs_info.prs_perslid_key;
changeDisciplineList(prs_info.prs_perslid_key);
changeKostK();
};
// Haal de fiatteurs en profielen op die zijn bepaald.
function checkAjaxResult(transport, json)
{
if (json)
{
rfoNameFiatteur1 = unescape(json.name_fiatteur_kp);
rfoNameFiatteur2 = unescape(json.name_fiatteur_kpg);
rfoProfielBesteller = parseFloat(json.profiel_besteller);
rfoProfielFiatteur = parseFloat(json.profiel_fiatteur);
showfiatteur();
}
}
function changeAccount()
{
// laatst geselecteerde kostenplaats van user bewaren. Indien van kostenklant naar kostenuser dan deze laatste laten zien.
var costclient = document.u2.costclient.checked;
if (!costclient) document.u2.inputter_acc.value = document.u2.sgAccount.value;
if (bes_key > 0) {
var s = "BesFiatProf.asp?disc=" + rfoDisciplineKey
+ "&account=" + document.u2.account.value
+ "&prs_key=" + document.u2.person.value;
var res = new Ajax.Request(s,
{ method:'get',
onSuccess: checkAjaxResult
}
);
}
}

126
APPL/BES/bes_delete.asp Normal file
View File

@@ -0,0 +1,126 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 23-09-09 14:01 $
File: bes_delete.asp
Status: 95%
*/ %>
<%
DOCTYPE_Disable = 1;
%>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/json2.js" -->
<%
/***** Get webform parameters *****/
var urole = getFParam("urole");
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
var bes_key = getFParamInt("bes_key");
var message = "";
/***** End get webform parameters *****/
var autfunction = "";
switch(urole)
{
case "fe": autfunction = "WEB_BESUSE";
break;
case "fo": autfunction = "WEB_BESFOF";
break;
case "bo": autfunction = "WEB_BESBOF";
break;
}
// De functie checkAutorisation(autfunction, true) geeft null terug indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction, true);
if (authparams)
{
bestelstatus = -1;
bestelopdr_key = -1;
// Bepaal de status van de bestelopdracht (indien aanwezig)
sql = "SELECT DISTINCT bo.bes_bestelopdr_status"
+ ", boi.bes_bestelopdr_key"
+ " FROM bes_bestelling_item bi"
+ ", bes_bestelopdr_item boi"
+ ", bes_bestelopdr bo"
+ " WHERE boi.bes_bestelopdr_item_key = bi.bes_bestelopdr_item_key"
+ " AND bo.bes_bestelopdr_key = boi.bes_bestelopdr_key"
+ " AND bes_bestelling_key = " + bes_key
oRs = Oracle.Execute(sql);
if (!oRs.eof) {
// Er is een bestelopdracht aanwezig
bestelstatus = oRs(0).value;
bestelopdr_key = oRs(1).value;
}
if (bestelstatus < 4)
{ // Dan is er nog geen opdracht naar de leverancier verzonden
// Verwijder bestelaanvraag
if (backo)
{
sql = "DELETE bes_bestelling WHERE bes_bestelling_key = " + bes_key;
}
else { // !backo
sql = "DELETE bes_bestelling"
+ " WHERE bes_bestelling_key = " + bes_key
+ " AND bes_bestelling_status IN (1,2)"
+ (fronto
? (" AND (prs_perslid_key = " + user_key
+ " OR bes_bestelling_owner_key = " + user_key
+ ")")
: (" AND prs_perslid_key = " + user_key));
}
oRs = Oracle.Execute(sql);
// check of bestelaanvraag is verwijderd
sql = "SELECT * FROM bes_bestelling WHERE bes_bestelling_key = " + bes_key;
oRs = Oracle.Execute(sql);
if (oRs.eof)
{
// bestelaanvraag is verwijderd. Verwijdere nu ook de rest
// Verwijder bestelaanvraag items
sql = "DELETE bes_bestelling_item WHERE bes_bestelling_key = " + bes_key
oRs = Oracle.Execute(sql);
// Indien een bestelopdracht aanwezig is dan bestelopdracht + bestelopdracht items verwijderen.
if (bestelopdr_key > 0)
{
// Verwijder bestelopdracht items
sql = "DELETE bes_bestelopdr_item WHERE bes_bestelopdr_key = " + bestelopdr_key
oRs = Oracle.Execute(sql);
// Verwijder bestelopdracht
sql = "DELETE bes_bestelopdr WHERE bes_bestelopdr_key = " + bestelopdr_key
oRs = Oracle.Execute(sql);
}
message = lcl_BES_deleted_1 + bes_bestelling_prefix + bes_key + lcl_BES_deleted_2;
}
else
{ // bestelaanvraag is niet verwijderd.
message = lcl_BES_delete_failed;
oRs.Close();
}
}
else
{ // Er is al een opdracht naar de leverancier verstuurd. Verwijderen kan niet meer.
message = lcl_BES_Del_OrderSend;
}
}
else
{ // Geen autorisatie
message = lcl_BES_RFO_Del_Fails_Auth;
}
var result = {message: message};
Response.Write(JSON.stringify(result));
%>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,547 @@
<% @language="javascript"%>
<% /*
$Revision: 1 $
$Modtime: 29-09-09 12:44 $
File: bes_edit_bestellin_save (formerly RegisterRFO.asp)
Status: 10% (new style) TODO vooral opslaan flexkenmerken wat veel eenvoudiger is geworden zonder UploadItems
Description: Muteerscherm voor bestellingen
Parameters: bes_key (-1 voor nieuwe) (formerly rfoKey?)
dis_key: default catalogus. Verplicht voor fo
Context:
Note: flexArray gaat de flexkenmerken van de *bestelling* bevatten
flexkey_string de flexkenmerken van de bes_bestel_item
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="RFO_utils.inc" -->
<!-- #include file="rfo_approve_utils.inc" -->
<!--#include file="../shared/save2db.inc" -->
<!--#include file="../shared/date_sql.inc" -->
<%
var act_key = getQParamInt("act_key", -1);
var act_mode = (act_key != -1);
var mld_key = getQParamInt("mld_key", -1);
//TODO: niet overal default "" toestaan
//prs_phone = getFParam("prs_phone","");
deliveryAddr = getFParam("deliveryAddr","");
kostenplaats_key = getFParam("account","");
kosten_klant = getFParam("costclient",""); // TODO???
srtdeel_keys = getFParam("srtdeel_keys","");
amount_string = getFParam("amount_string","");
item_keys = getFParam("item_keys","");
flexkey_string = getFParam("flexkey_string","");
flexval_string = getFParam("flexval_string","");
flexdeel_string = getFParam("flexdeel_string","");
flexitem_string = getFParam("flexitem_string","");
jaar = getFParam("year","");
maand = getFParam("month","");
dag = getFParam("date","");
disgroup = getFParam("disgroupval","");
levkosten = getFParam("levkosten","");
korting = getFParam("korting","");
itemkeystring = getFParam("itemkeystring","");
itemprijsstring = getFParam("itemprijsstring","");
// Person's info
prs_key = getFParam("person_key","");
afdeling_key = getFParam("dept_key","");
// fronto | backo ?
fronto = false
backo = false
switch (Request.QueryString("office"))
{
case "fronto":
fronto = true; break;
case "backo":
backo = true; break;
}
bes_key = getFParamInt("bes_key");
total = parseFloat(getFParam("total","0"));
item_coll = Server.CreateObject("Scripting.Dictionary")
amo_ar = amount_string.split(",")
item_ar = item_keys.split(",")
for (i=0; i< amo_ar.length; i++)
{
item_coll.Add(i, item_ar[i]);
}
// == de rest was altijd al JavaScript
srtdeel_keys = srtdeel_keys.split(',');
amount_string = amount_string.split(',');
item_keys = item_keys.split(',');
flexkey_string = flexkey_string.split(',');
flexval_string = flexval_string.split(',');
flexdeel_string = flexdeel_string.split(',');
flexitem_string = flexitem_string.split(',');
itemkeystring = itemkeystring.split(',');
itemprijsstring = itemprijsstring.split(',');
Response.Write("flexkey_string = " + flexkey_string);
Response.Write("flexval_string = " + flexval_string);
Response.Write("flexdeel_string = " + flexdeel_string);
Response.Write("flexitem_string = " + flexitem_string);
Response.Write("srtdeel_keys[0] = " + srtdeel_keys[0]);
Response.Write("srtdeel_keys[1] = " + srtdeel_keys[1]);
Response.Write("itemkeystring = " + itemkeystring);
Response.Write("itemprijsstring = " + itemprijsstring);
//Response.End;
// ======= Kernmerken van bes_bestelling
// LET OP: Elementen uit de flexArrays worden gebruikt in klantspecifieke controle functies
// aanpassingen moeten dus met zorg uitgevoerd worden !!!!!!!!!!!!!!!!!!!!!!
nameArray = Request.Form; // TODO: was (allNames.split('&^%'); // zo worden ze samengevoegd in bes/upload.inc
var flexArray = new Array();
flexArray[0] = new Array(); // key
flexArray[1] = new Array(); // val
var teller = 1;
Response.Write("\n");
for (var i=1; i<=nameArray.Count; i++)
{
Response.Write("nameArray[" + i + "] = " + nameArray[i] + "\n");
if (nameArray.key(i) == "k" + teller + "key") {
Response.Write(" key" + teller + "\n");
Response.Write(" nameArray[i+1] = " + nameArray.key(i+1) + "\n");
if ((i+1)<nameArray.Count && nameArray.key(i+1) == "k" + teller + "req") {
flexArray[0][flexArray[0].length] = nameArray.key(i);
flexArray[0][flexArray[0].length] = nameArray.key(i+1);
flexArray[1][flexArray[1].length] = nameArray(i);
flexArray[1][flexArray[1].length] = nameArray(i+1);
if ((i+2)<nameArray.length) { // if k1req is present so is k1val otherwise error
flexArray[0][flexArray[0].length] = nameArray.key(i+2); // if kireq is present so is kival
flexArray[1][flexArray[1].length] = nameArray(i+2); // if kireq is present so is kival
i++;i++; // volgende twee overslaan
} else {
Response.Write("bes_edit_bestelling_save: " + lcl_internal_error);
__DoLog("<div style=\"background-color: #FF0000;\">Fatal error in RegisterRFO 2</div>");
Response.End;
}
}
else if ((i+1)<nameArray.length && nameArray.key(i+1) == "k" + teller + "val") {
flexArray[0][flexArray[0].length] = nameArray.key(i);
flexArray[0][flexArray[0].length] = "";
flexArray[0][flexArray[0].length] = nameArray.key(i+1);
flexArray[1][flexArray[1].length] = nameArray(i);
flexArray[1][flexArray[1].length] = 0;
flexArray[1][flexArray[1].length] = nameArray(i+1);
i++; // volgende overslaan
}
teller++;
}
}
Response.Write("\n");
Response.Write("lengte flexArray[0] = " + flexArray[0].length + "\n");
for (var i=0; i<flexArray[0].length; i++)
{
Response.Write("flexArray[0][" + i + "] = " + flexArray[0][i] + "\n");
}
Response.Write("\n");
Response.Write("lengte flexArray[1] = " + flexArray[1].length + "\n");
for (var i=0; i<flexArray[1].length; i++)
{
Response.Write("flexArray[1][" + i + "] = " + flexArray[1][i] + "\n");
}
function SendResult(bes_key, msg)
{
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
parent.RFORegistered("<%=bes_key%>","<%=msg%>");
//FcltMgr.closeDetail(window, { bes_key: <%=bes_key%>, message: msg });
</script>
</head>
<body>
</body>
</html>
<%
Response.End;
}
function kenmerkSaveBestell(bes_key) {
sql = "DELETE FROM bes_kenmerkbestell"
+ " WHERE bes_bestelling_key = " + bes_key;
Oracle.Execute(sql);
Response.Write("disgroup = " + disgroup + "\n");
for( kenmerk=0; kenmerk < (flexArray[0].length/3); kenmerk++ ) {
Response.Write("kenmerk_key1 = " + flexArray[0][kenmerk*3+2] + "\n");
if( flexArray[1][kenmerk*3+2] == "" || flexArray[1][kenmerk*3+2] == 'undefined' || flexArray[1][kenmerk*3+2] == null)
continue;
Response.Write("bes_key = " + bes_key + "\n");
Response.Write("disgroup = " + flexArray[1][kenmerk*3] + "\n");
Response.Write("kenmerk_key2 = " + flexArray[1][kenmerk*3+2] + "\n");
sql = "INSERT INTO bes_kenmerkbestell"
+ " (bes_bestelling_key"
+ ", bes_kenmerk_key"
+ ", bes_kenmerkbestell_waarde)"
+ " values (" + bes_key + ", " + flexArray[1][kenmerk*3] + ", " + escape_sql(flexArray[1][kenmerk*3+2]) + ")";
Oracle.Execute( sql );
}
//Response.End
}
var strState = lcl_BES_RFO_regSuccess;
// Check customer specific restrictions
// customer hook
pResult = new HookResult();
if ((!custfunc.bes_checkrfo(disgroup, pResult)) && (!act_mode)) {
SendResult(-1, pResult.errmsg);
}
// Check authorization
if( (backo && func_enabled["WEB_BESBOF"] == null) ||
(fronto && func_enabled["WEB_BESFOF"] == null) ||
(!fronto && !backo && func_enabled["WEB_BESUSE"] == null))
{
if (!act_mode) {
SendResult(-1,lcl_no_auth);
}
}
sql = "SELECT BES_DISC_PARAMS_MIN_BEDRAG"
+ " FROM BES_DISC_PARAMS WHERE BES_INS_DISCIPLINE_KEY = " + disgroup;
oRs_settings = Oracle.Execute(sql);
if (!oRs_settings.eof)
{
min_order_amount = parseInt(oRs_settings(0).Value, 10);
if (total < min_order_amount && bes_key<0)
{
if (!act_mode) {
SendResult(-1,lcl_BES_below_limit+" " + currency_pref + num2curr(min_order_amount) + currency_suff);
}
}
}
var approver_key = f_getApprover(prs_key, kostenplaats_key, disgroup, total);
// getApprover returns -2 if result is above limit
// -1 if no approval is needed
// prs_perslid_key of the aprover
if ( approver_key == -2){
if (!act_mode) {
SendResult(-1,lcl_BES_exceed_limit);
}
}
if ( needOrdernrKey(disgroup) && !(kostenplaats_key > 0) ){
if (!act_mode) {
SendResult(-1,lcl_select_account_bes);
}
}
// Create order
// Get primary key
var updateMode = (bes_key>0);
// insert into bes_bestelling
user_name = replace(user.naam(), "'", "''");
var fields = [ { dbs: "bes_bestelling_owner_key", typ: "key", val: user_key },
{ dbs: "prs_perslid_key", typ: "key", val: prs_key },
{ dbs: "prs_kostenplaats_key", typ: "key", frm: "account" },
{ dbs: "bes_bestelling_ordernr", typ: "varchar", frm: "ordernr" }, // TODO trim_all?
//TODO { dbs: "bes_bestelling_kosten_klant", typ: "check", val: "kosten_klant" },
{ dbs: "MLD_ADRES_KEY_LEV", typ: "key", val: deliveryAddr },
{ dbs: "bes_bestelling_leverdatum", typ: "date", frm: "calendar" },
// { dbs: "bes_bestelling_telefoon", typ: "varchar", val: prs_phone },
{ dbs: "bes_bestelling_plaats", typ: "varchar", frm: "delivery_place" },
{ dbs: "bes_bestelling_module", typ: "varchar", val: "BES" },
{ dbs: "bes_bestelling_levkosten", typ: "number", val: levkosten },
{ dbs: "bes_bestelling_korting", typ: "number", val: korting }
];
if ( mld_key != -1) { // New bestelling originated from a mld_melding
fields.push({ dbs: "mld_melding_key", typ: "key", val: mld_key});
}
if (act_mode) {
fields.push({ dbs: "fac_activiteit_key", typ: "key", val: act_key});;
}
if (bes_key==-1) // Nieuw
{
//if (autoacceptRFO(bes_key)) {
// status = 4;
//}
fields = fields.concat(
[ { dbs: "bes_bestelling_key", typ: "key", seq: "bes_s_bes_bestelling_key" }
]
)
var besIns = buildInsert("bes_bestelling", fields);
bes_key = besIns.sequences["bes_bestelling_key"];
Oracle.Execute( besIns.sql );
//res.trackaction("RESNEW", rsv_ruimte_key); /* TODO: wat willen we reservering of deelreservering ?*/
status = 2;
}
else // update
{
sql = buildUpdate("bes_bestelling", fields)
+ " bes_bestelling_key = " + bes_key;
Oracle.Execute( sql );
//res.trackaction("RESUPD", rsv_ruimte_key, "TODO lcl_deelreservering gewijzigd"); /* TODO zie boven */
status = Oracle.Execute("SELECT BES_BESTELLING_status FROM BES_BESTELLNIG WHERE bes_bestelling_key = " + bes_key)[0];
}
IsOK = true;
if ( status <= 2 ) {
// Delete all objects if updating
if (updateMode)
{
sql = "DELETE from bes_bestelling_item where bes_bestelling_key = " + bes_key;
Oracle.Execute(sql);
}
// insert values into bes_bestelling_item
// insert flexproperies in bes_kenmerkbesteli
teller = 0;
// ins_srtdeel_key kan nu vaker ingevoerd zijn.
// MGE TODO!!!! srtdeel_key kan nu vaker ingevoerd zijn. Dus niet (meer) eenduidig te bepalen
// moeten hier strings aflopen. waar item_key is regelnr
// Dus query oRs_deels niet meer gebruiken
for (var itemnr=0; itemnr<item_keys.length; itemnr++) {
// items_keys bevat de regelnummers, aantal alleen van belang
// Zelf volgende item_key opvragen
oRs = Oracle.Execute("SELECT bes_s_bes_bestelling_item_key.nextval FROM DUAL");
bestelling_item_key = parseInt(oRs(0).Value,10);
oRs.close();
var index = -1;
for (var h = 0; h < itemkeystring.length; h++)
{ // Vind de juiste index
if (itemkeystring[h] == srtdeel_keys[itemnr])
{
index = h;
break;
}
}
if (index == -1)
{
SendResult(-1,lcl_internal_error + " No items?");
}
sql = "INSERT INTO bes_bestelling_item ("
+ "bes_bestelling_item_key, "
+ "bes_bestelling_key"
+ ", ins_srtdeel_key"
+ ", bes_bestelling_item_aantal"
+ ", bes_bestelling_item_brutoprijs"
+ ", bes_bestelling_item_prijs"
+ ") VALUES("
+ bestelling_item_key+", "
+ bes_key
+ ", " + srtdeel_keys[itemnr]
+ ", " + amount_string[itemnr]
+ ", (SELECT isd.ins_srtdeel_prijs"
+ " FROM ins_srtdeel isd"
+ " WHERE isd.ins_srtdeel_key = " + itemkeystring[index] + ")"
+ ", " + itemprijsstring[index]
+ ")";
oRs_item = Oracle.Execute(sql);
// Indien flexkenmerken bij dit item, dan opslaan
foundone = false;
for (var i=0; i<flexdeel_string.length; i++) {
if (flexitem_string[i] == item_keys[itemnr]) {
foundone = true;
sql = "INSERT INTO bes_kenmerkbesteli ("
+ "bes_bestelling_item_key"
+ ", bes_kenmerk_key, "
+ " bes_kenmerkbesteli_waarde"
+ ") VALUES("
+ bestelling_item_key
+ ", " + flexkey_string[i]
+ ", " + escape_sql(unescape(flexval_string[i]))
+ ")";
Oracle.Execute(sql);
}
else {
if (foundone) break; // als er al 1 gevonden is dan staan ze achter elkaar.
}
}
}
if ( approver_key == -1 ) { // RFO is within order limit of the requestor
if (needBOApproval(bes_key)) { // should BO approve?
Oracle.Execute("UPDATE bes_bestelling SET bes_bestelling_status = 3 WHERE bes_bestelling_key = " + bes_key);
} else {
Oracle.Execute("UPDATE bes_bestelling SET bes_bestelling_status = 4 WHERE bes_bestelling_key = " + bes_key);
if ( autoorderRFO(bes_key) ) {
makeOrders(user_key, bes_key);
}
}
} else {
// this RFO needs budget approval
// Inform approver that they have something to do
sendNeedApprovalNotification(bes_key, prs_key, approver_key);
sql = "SELECT prs_perslid_naam_full FROM prs_v_perslid_fullnames WHERE prs_perslid_key = " + approver_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
strState = lcl_BES_RFO_regApprov + oRs(0).value;
} else {
strState = lcl_BES_RFO_regApprov;
}
}
kenmerkSaveBestell(bes_key);
} else if (status == 5 || status == 6) {
sql = "select bes_bestelling_item_key, bes_bestelling_item_aantal from bes_bestelling_item"
+ " where bes_bestelling_key = " + bes_key;
oRs = Oracle.Execute(sql);
old_aantal = new Array();
while(!oRs.eof) {
old_aantal[oRs(0).Value] = oRs(1).Value;
oRs.MoveNext();
}
oRs.Close();
// Verwijder alle oude flexkenmerken
sql = "DELETE FROM bes_kenmerkbesteli"
+ " WHERE bes_bestelling_item_key IN ("
+ "SELECT bes_bestelling_item_key"
+ " FROM bes_bestelling_item"
+ " WHERE bes_bestelling_key = " + bes_key + ")";
Oracle.Execute(sql);
for (var itemnr=0; itemnr<item_keys.length; itemnr++) {
var index = -1;
for (var h = 0; h < itemkeystring.length; h++)
{ // Vind de juiste index
if (itemkeystring[h] == srtdeel_keys[itemnr])
{
index = h;
break;
}
}
if (index == -1)
{
SendResult(-1,lcl_internal_error + " No items2?");
}
sql = "UPDATE bes_bestelling_item"
+ " SET bes_bestelling_item_aantal = " + amount_string[itemnr]
+ ", bes_bestelling_item_brutoprijs = "
+ " (SELECT isd.ins_srtdeel_prijs"
+ " FROM ins_srtdeel isd"
+ " WHERE isd.ins_srtdeel_key = " + itemkeystring[index] + ")"
+ ", bes_bestelling_item_prijs = " + itemprijsstring[index]
+ " WHERE bes_bestelling_item_key = " + item_keys[itemnr]
+ " AND bes_bestelling_key = " + bes_key;
Oracle.Execute(sql);
// Indien flexkenmerken bij dit srtdeel, dan opslaan
foundone = false;
for (var j=0; j<flexdeel_string.length; j++) {
if (flexitem_string[j] == item_keys[itemnr]) {
foundone = true;
sql = "INSERT INTO bes_kenmerkbesteli ("
+ "bes_bestelling_item_key"
+ ", bes_kenmerk_key, "
+ " bes_kenmerkbesteli_waarde"
+ ") VALUES("
+ "(SELECT bes_bestelling_item_key"
+ " FROM bes_bestelling_item"
+ " WHERE bes_bestelling_item_key = " + item_keys[itemnr]
+ " AND bes_bestelling_key = " + bes_key + ")"
+ ", " + flexkey_string[j]
+ ", " + escape_sql(unescape(flexval_string[j]))
+ ")";
Oracle.Execute(sql);
}
else {
if (foundone) break; // als er al 1 gevonden is dan staan ze achter elkaar.
}
}
sql = "UPDATE bes_bestelopdr_item"
+ " SET bes_bestelopdr_item_aantal = "
+ " nvl(bes_bestelopdr_item_aantal,0)"
+ " - " + old_aantal["" + item_coll.Item(itemnr)]
+ " + " + amount_string[itemnr]
+ ", bes_bestelopdr_item_prijs = bes.calcbesartikelkortingsprijs(" + item_coll.Item(itemnr) + ")"
+ " WHERE bes_bestelopdr_item_key = (SELECT bes_bestelopdr_item_key"
+ " FROM bes_bestelling_item"
+ " WHERE bes_bestelling_item_key = " + item_coll.Item(itemnr)
+ " AND bes_bestelling_key = " + bes_key + ")";
Oracle.Execute(sql);
sql = "SELECT DISTINCT boi.bes_bestelopdr_key besopdr_key"
+ " FROM bes_bestelling_item bi"
+ ", bes_bestelopdr_item boi"
+ " WHERE bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key"
+ " AND bes_bestelling_key = " + bes_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
sql = " SELECT bes.calcbesopdrachtkorting(" + oRs("besopdr_key").value + ", 0) bes_kosten FROM DUAL";
oRs2 = Oracle.Execute(sql);
sql = "UPDATE bes_bestelopdr"
+ " SET bes_bestelopdr_korting = " + (oRs2("bes_kosten").value? oRs2("bes_kosten").value : "0")
+ " WHERE bes_bestelopdr_key = " + oRs("besopdr_key").value;
Oracle.Execute(sql);
sql = " SELECT bes.calcbesopdrachtkosten(" + oRs("besopdr_key").value + ", 0) lev_kosten FROM DUAL";
oRs2 = Oracle.Execute(sql);
sql = "UPDATE bes_bestelopdr"
+ " SET bes_bestelopdr_levkosten = " + (oRs2("lev_kosten").value? oRs2("lev_kosten").value : "0")
+ " WHERE bes_bestelopdr_key = " + oRs("besopdr_key").value;
Oracle.Execute(sql);
}
}
kenmerkSaveBestell(bes_key);
} else if (status == 4) {
kenmerkSaveBestell(bes_key);
}
if (act_mode) {
Response.Write("<body>");
Response.Write("</body>");
} else {
SendResult(bes_key,strState); // TODO: and autoprint
// + (mld_melding_autoprint!=0 ? ";window.open('bes_opdr_xml.asp?bes_key="+bes_key+"')" : "")
}
// FINISHING
%>

View File

@@ -0,0 +1,262 @@
<%@ LANGUAGE="JavaScript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 15:24 $
File: kenmerk_fill.asp
Status:
Description: Vraag in een modal popup naar de flexkenmerken van *een bestelitem*
Parameters: ??
Context: ShowModalDialog popup
Note: Er is geen interface binnen Facilitor om bestelitem kenmerken te wijzigen
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc" -->
<%
FCLTHeader.Requires({ plugins:["suggest", "kenmerk"],
js: []
});
var srtdeel_key = getQParamInt('srtdeel_key');
var srtgroup_key = getQParamInt('srtgroup_key');
var dis_key = getQParamInt('dis_key');
// TODO: kenmerk_common.inc eis nog een globale reqId
var prs_key = reqId = getQParamInt('prs_key',-1);
var PRSreadlevel = getQParamInt('PRSreadlevel',-1);
// PRSreadlevel bepaalt de scope van de personen waarvan ik persoonsafhankelijke kenmerken kan gebruiken
var prs_name = "";
if (prs_key > 0) {
prs_name = new Perslid(prs_key).naam();
}
var preview = 0;
// xml genereren als ins_srtdeel_opmaat = 1
sql = "SELECT ins_srtdeel_opmaat preview"
+ ", ins_srtdeel_prsflex"
+ " FROM ins_srtdeel"
+ " WHERE ins_srtdeel_key = " + srtdeel_key
oRs = Oracle.Execute(sql);
if (!oRs.eof) {
preview = oRs(0).value;
prsflex = oRs(1).value;
}
%>
<script language=JavaScript>
var preview = <%=preview%>
var prsflex = <%=prsflex%>
function doSubmit()
{
if (!checkAllFlexKenmerk())
return false;
//if (document.forms.u2.note_descr.value != "")
// document.forms.u2.submit();
//else
// alert("<%=lcl_prj_no_description_note%>");
//var objReturn = new Object();
//objReturn.EersteWaarde = 1;
//objReturn.TweedeWaarde = 2;
var objReturn = new Array();
objReturn[0] = new Array(); // bes_kenmerk_key
objReturn[1] = new Array(); // bes_kenmerkbestell_waarde
objReturn[2] = new Array(); // flexkenmerk omschrijving
objReturn[3] = new Array(); // flexkenmerkwaarde omschrijving
objReturn[4] = new Array(); // url
for (var i=1; i<=window.document.all.k_all.value; i++) {
if (window.document.all['k' + i + 'val']) {
if (window.document.all['k' + i + 'val'].value != "")
{
objReturn[0][objReturn[0].length] = window.document.all['k' + i + 'key'].value;
objReturn[1][objReturn[1].length] = window.document.all['k' + i + 'val'].value;
var lbl = $("label[for='k" + i + "val']").text();
// skip : (haal dubbele punt van de string af)
lbl = lbl.substring(0, lbl.length - 1)
objReturn[2][objReturn[2].length] = lbl;
if (window.document.all['k' + i + 't'] && window.document.all['k' + i + 't'].value == 'R') {
var opts = window.document.all['k' + i + 'val'].options;
key = opts(opts.selectedIndex).innerText;
objReturn[3][objReturn[3].length] = key;
}
else {
//alert("key = " + window.document.all['k' + i + 'val'].value);
objReturn[3][objReturn[3].length] = window.document.all['k' + i + 'val'].value;
}
}
}
}
var isXmlOk = true;
if (preview!=1)
{
FcltMgr.closeDetail(window, { objReturn: objReturn});
return true;
}
// Ga een preview tonen
var s = "../Bes/show_kenmerkresult.asp?srtdeel_key=<%=srtdeel_key%>";
objReturn[4][0] = s;
FcltMgr.openModalDetail(s, "lcl_BES_article_details",
{ width: 500, xheight: 400,
params: { objReturn:objReturn },
callback: function (data)
{
if (data.isXmlOk) {
FcltMgr.closeDetail(window, { objReturn: objReturn} );
}
else {
return false;
}
}
});
return false;
}
var sgPerson;
function prsinfUploaded()
{
persInfArray = window.frames.hidFramePrsInf.pers_inf;
for (i in persInfArray)
{
persInfArray_i = persInfArray[i];
pi_text = persInfArray_i.text;
pi_value = persInfArray_i.value;
for (kenmerk=1; true; kenmerk++) { // doorloop alle aanwezige kenmerken
if (document.all.item("k" + kenmerk + "text")) {
if (document.all.item("k" + kenmerk + "text").value == pi_text)
document.all.item("k" + kenmerk + "val").value = pi_value;
}
else {
break;
}
}
}
}
function changeName() {
if (document.u2.person)
{
var prs_key = document.u2.person.value;
if (!isNaN(prs_key) && prs_key > 0)
{
var s = "./kenmerk_fill.asp?srtdeel_key=<%=srtdeel_key%>"
+ "&PRSreadlevel=<%=PRSreadlevel%>"
+ "&srtgroup_key=<%=srtgroup_key%>"
+ "&dis_key=<%=dis_key%>"
+ "&prs_key=" + prs_key;
window.navigate(s);
}
}
}
</script>
<html>
<head>
<% FCLTHeader.Generate(); %>
</head>
<body id="editbody">
<%
buttons = [{title: (preview ? lcl_BES_preview:lcl_submit), icon: "opslaan.png", action: "doSubmit();"},
{title: lcl_back, icon: "undo.png", action: "FcltMgr.closeDetail(window, { cancel: true });"}
];
IFRAMER_HEADER(lcl_flexible_properties, buttons);
%>
<div id="edit">
<form name="u2" method=get>
<% if (prsflex) { %>
<table>
<tr>
<%
FCLTpersoonselector(
"person",
"sgPerson",
{ autlevel: PRSreadlevel,
perslidKey: prs_key>0?prs_key:user_key,
label: lcl_name,
onChange: "changeName"
});
%>
</tr>
</table>
<% } %>
<% BLOCK_START("besItemFlex" , ""); %>
<tr><td><table width=100% id="theTable">
<%
sql = "SELECT k.bes_kenmerk_key" // 0
+ ", sk.bes_srtkenmerk_omschrijving" // 1
+ ", sk.bes_srtkenmerk_kenmerktype" // 2
+ ", r.bes_refsrtkenmerk_objectnaam" // 3
+ ", r.bes_refsrtkenmerk_kolomnaam" // 4
+ ", r.bes_refsrtkenmerk_kolomtxt" // 5
+ ", r.fac_usrtab_key" // 6
+ ", sk.bes_srtkenmerk_lengte" // 7
+ ", sk.bes_srtkenmerk_dec" // 8
+ ", sk.bes_srtkenmerk_nmin" // 9
+ ", sk.bes_srtkenmerk_nmax" // 10
+ ", k.bes_kenmerk_default" // 11
+ ", k.bes_kenmerk_volgnummer" // 12
+ ", sk.bes_srtkenmerk_dimensie" // 13
+ ", '' hint" // 14
+ ", k.bes_kenmerk_default" // 15
+ ", k.bes_kenmerk_verplicht" // 16
+ " FROM bes_srtkenmerk sk"
+ ", bes_kenmerk k"
+ ", bes_refsrtkenmerk r"
+ " WHERE (k.bes_srtinstallatie_key = " + dis_key + " AND k.bes_kenmerk_niveau LIKE 'D'"
+ " OR k.bes_srtinstallatie_key = " + srtgroup_key + " AND k.bes_kenmerk_niveau LIKE 'G'"
+ " OR k.bes_srtinstallatie_key = " + srtdeel_key + " AND k.bes_kenmerk_niveau LIKE 'S')"
+ " AND k.bes_kenmerk_verwijder IS NULL"
+ " AND k.bes_srtkenmerk_key = sk.bes_srtkenmerk_key"
+ " AND sk.bes_srtkenmerk_verwijder IS NULL"
+ " AND sk.bes_refsrtkenmerk_key = r.bes_refsrtkenmerk_key(+)"
+ " AND k.bes_kenmerk_type = 'I'"
+ " ORDER BY k.bes_kenmerk_volgnummer, sk.bes_srtkenmerk_omschrijving";
var trn = 0;
// Voor als we nog geen key weten
var tmp_folder = "__NEW__" + Session.SessionId;
var fp = new Object(); // dummy, moet er nog uitgewerkt worden
listKenmerk(sql,
"BES",
"B" + tmp_folder,
{ kenmerk_2col: true, // In edit mode kenmerken onder elkaar en niet in 2 kolommen.
kenmerk_search: false,
kenmerk_colspan: false
}
);
%>
</table></td></tr>
<% BLOCK_END(); %>
</form>
<iframe src="../Shared/empty.asp" id="hidFrameKenmerk" style="display:none"></iframe>
<iframe src="../Shared/empty.asp" id="hidFramePrsInf" style="display:none"></iframe>
</div>
</body>
</html>

384
APPL/BES/bes_edit_opdr.asp Normal file
View File

@@ -0,0 +1,384 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 29-09-09 10:28 $
File: bes_opdr.asp
Status: 10% (old style)
Description: Edit voor bestellingen-opdrachten
Parameters:
urole
ordernr
Context:
Note:
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<%
FCLTHeader.Requires({ plugins: ["suggest","jQuery"],
js: ["wpos.js"] })
var urole = getQParam("urole");
var ordernr = getQParamInt( 'ordernr');
var sql = "SELECT bes_bestelopdr_id "
+ " FROM bes_bestelopdr "
+ " WHERE bes_bestelopdr_key = " + ordernr;
oRs = Oracle.Execute( sql );
ordernr_id = oRs("bes_bestelopdr_id").value;
oRs.Close();
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
</head>
<%
maninfo = Request.QueryString("maninfo").Count() > 0;
var autfunction = '';
if (maninfo)
autfunction = 'WEB_BESBAC';
else
autfunction = 'WEB_BESBOR';
var authparams = user.checkAutorisation(autfunction);
%>
<%
oikey = -1;
okey = -1;
var str_srtdeel = '';
var str_aantal = '';
var submitting = getQParam("submit","0")=="1";
if (submitting) {
bi_keys = Request('bi_keys');
comment = "" + Request('ta');
lev_adr = getFParamInt('lsel');
fac_adr = getFParamInt('fsel');
min_o_i = getFParamInt( 'min_o_i');
max_o_i = getFParamInt( 'max_o_i');
process = Request('chkpro');
sql = "UPDATE bes_bestelopdr"
+ " SET bes_bestelopdr_opmerking = '" + comment + "'"
+ ((lev_adr>=0)?(", mld_adres_key_lev="+lev_adr):"")
+ ((fac_adr>=0)?(", mld_adres_key_fac="+fac_adr):"")
+ ((process == "on")?", bes_bestelopdr_status = 3":"")
+ " WHERE bes_bestelopdr_key = " + ordernr;
Oracle.Execute( sql );
for ( i = min_o_i; i <= max_o_i; i++ ) {
comment = "" + Request('ita'+i);
cnt = parseInt(Request('cnt'+i),10);
ikey = parseInt(Request('ikey'+i),10);
sql = "UPDATE bes_bestelopdr_item SET bes_bestelopdr_item_aantal = " + cnt
+ ", bes_bestelopdr_item_prijs = "
+ "(SELECT ins_srtdeel_prijs FROM ins_srtdeel WHERE ins_srtdeel_key = "
+ "(SELECT ins_srtdeel_key FROM bes_bestelling_item WHERE "
+ " bes_bestelopdr_item_key = " + ikey
+ ")) WHERE bes_bestelopdr_item_key = " + ikey;
Oracle.Execute( sql );
}
%><script>FcltMgr.closeDetail(window, { warning: null } );</script><%
Response.End;
}
%>
<script type="text/javascript" Language="JavaScript">
function bes_opdrsubmit()
{ //TODO CheckLengte
u2.submit();
return true;
}
function bes_opdrcancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
<body id="editbody">
<%
var buttons = [ {title: lcl_submit, icon: "opslaan.png", action:"bes_opdrsubmit()" },
{title: lcl_cancel, icon: "undo.png", action:"bes_opdrcancel()" }];
IFRAMER_HEADER(lcl_BES_Bes_details_pre+bes_bestelopdr_prefix+ordernr_id+lcl_BES_Bes_details_suf,buttons)
%>
<div id="edit">
<script language="vbscript" src="../LocalScripts/num2curr.vbs"></script>
<script>
function recalcPrice(key)
{
var m_count = parseInt( document.u2['cnt'+key].value);
if ( isNaN(m_count) ) {
document.u2['cnt'+key].value = document.u2['am'+key].value;
return;
}
var price = parseFloat(document.u2['pr'+key].value);
var c_count = m_count * price;
$('#price'+key).val(num2curr(c_count));
var amount = document.u2['am'+key].value;
document.u2['am'+key].value = m_count;
var o_count = amount * price;
document.u2.total.value = parseFloat(document.u2.total.value) - o_count + c_count;
document.u2.total_txt.value = num2curr(parseFloat(document.u2.total.value));
}
</script>
<form action="bes_edit_opdr.asp?submit=1&urole=<%=urole%>&ordernr=<%=ordernr%>" method=post name=u2 >
<% BLOCK_START("besTODO");
l_rfos = "";
comma = "";
// Welke bestelaanvragen worden door deze bestelopdracht afgehandeld?
sql = "SELECT DISTINCT bes_bestelling_key "
+ "FROM bes_bestelling_item bi, bes_bestelopdr_item boi "
+ "WHERE boi.bes_bestelopdr_item_key = bi.bes_bestelopdr_item_key "
+ " AND boi.bes_bestelopdr_key =" + ordernr;
oRs = Oracle.Execute(sql);
while(!oRs.eof) {
l_rfos += comma + oRs(0).Value;
comma = ", ";
oRs.MoveNext();
}
oRs.Close();
sql = "SELECT bd.prs_bedrijf_key"
+ ", bd.prs_bedrijf_naam"
+ ", d.ins_discipline_omschrijving"
+ ", s.ins_srtdeel_omschrijving"
+ ", coalesce(s.ins_srtdeel_eenheid,'')"
+ ", coalesce(boi.bes_bestelopdr_item_prijs,0)"
+ ", boi.bes_bestelopdr_item_aantal"
+ ", boi.bes_bestelopdr_item_prijs * boi.bes_bestelopdr_item_aantal"
+ ", boi.bes_bestelopdr_item_omschrijv"
+ ", boi.bes_bestelopdr_item_key"
+ ", coalesce(b.mld_adres_key_lev,-1),COALESCE(b.mld_adres_key_fac,-1)"
+ ", b.bes_bestelopdr_opmerking"
+ ", b.bes_bestelopdr_key"
+ ", (" + decode_name + "b.bes_bestelopdr_status"
+ decode_when + "6"
+ decode_then + " (" + decode_name + "COALESCE((SELECT bst.bes_bestelling_retourvan_key FROM bes_bestelling bst WHERE bst.bes_bestelling_key = bi.bes_bestelling_key), -1)"
+ decode_when + "-1"
+ decode_then + "bs.bes_bestelopdrstatuses_omschr"
+ decode_else + "'" + lcl_BES_collected + "'"
+ decode_end
+ ")"
+ decode_else + "bs.bes_bestelopdrstatuses_omschr"
+ decode_end + ") status"
+ ", " + prs_pers_string
+ ", p.prs_perslid_upper"
+ ", b.bes_bestelopdr_delivery_opmerk"
+ ", b.bes_bestelopdr_korting bes_korting"
+ ", b.bes_bestelopdr_levkosten lev_kosten"
+ " FROM bes_v_aanwezigdiscipline d, ins_srtgroep g, bes_disc_params bdp,"
+ " ins_srtdeel s, prs_bedrijf bd, bes_bestelopdr b, bes_bestelling_item bi, "
+ " bes_bestelopdr_item boi, bes_bestelopdrstatuses bs, prs_perslid p"
+ " WHERE d.ins_discipline_key = g.ins_discipline_key"
+ " AND d.ins_discipline_key = bdp.bes_ins_discipline_key"
+ " AND g.ins_srtgroep_key = s.ins_srtgroep_key"
+ " AND s.ins_srtdeel_key = bi.ins_srtdeel_key"
+ " AND bdp.bes_disc_params_module = 'BES'"
+ " AND boi.bes_bestelopdr_key = b.bes_bestelopdr_key"
+ " AND boi.bes_bestelopdr_item_key = bi.bes_bestelopdr_item_key"
+ " AND b.prs_bedrijf_key = bd.prs_bedrijf_key"
+ " AND b.prs_perslid_key = p.prs_perslid_key"
+ " AND b.bes_bestelopdr_status = bs.bes_bestelopdrstatuses_key"
+ " AND b.bes_bestelopdr_key = " + ordernr
+ " ORDER BY 2,3,4";
oRs = Oracle.Execute( sql );
bedr_key = -1;
srtdeel_key = -1;
srtdeel_cnt = 3;
b_name = "";
itemstr = "";
fitemstr = "";
fitemcnt = "";
fitemprs = "";
fitemdisc = "";
fitemdsc = "";
fiprice = "";
bi_keys = "";
total = 0;
bedr_cnt = 0;
order = 0;
min_o_i = 1;
max_o_i = 0;
bes_korting = 0;
lev_kosten = 0;
fitem_comp_name = "";
fitem_comps = "";
fitem_comp_cnt_str = "";
fitem_comp_cnt = "";
price = "";
while(!oRs.eof) {
if( bedr_key != oRs(0).value ) {
b_name = oRs(1).value;
lkey = oRs(10).value;
fkey = oRs(11).value;
oremark = oRs(12).value;
okey = oRs(13).value;
odelremark = oRs(17).value;
ROFIELDTR("fld", lcl_BES_RFOs, escape2(bes_bestelling_prefix + l_rfos));
ROFIELDTR("fld", lcl_BES_Supplier, escape2(b_name));
ROFIELDTR("fld", lcl_BES_Bes_status, oRs(14).value);
ROFIELDTR("fld", lcl_BES_Bes_Owner, escape2(oRs(15).value));
%>
<tr><td align='right'>
<b><input type=checkbox name=chkpro id=chkpro value="on" CHECKED><label for=chkpro><%=lcl_BES_submit_proceed%></label></b>
</td>
</tr>
<%
// PF: Waarom nu, en waarom hier??
bedr_key = oRs(0).value;
if(lkey<0) {
Response.Write('<option value="-1" selected></option>');
}
sql = "SELECT mld_adres_key, mld_adres_naam "
+ " FROM mld_v_aanwezigadres"
+ " WHERE mld_adres_afleveradres IS NOT NULL"
+ (authparams.ALGreadlevel>=0?" AND alg_locatie_key IN (SELECT alg_locatie_key FROM fac_v_my_locations "
+ " WHERE prs_perslid_key="+user_key+" AND niveau="+authparams.ALGreadlevel+")":"")
+ " ORDER BY 2";
FCLTselector("lsel", sql, {label: lcl_BES_adres_lev,
initKey: lkey,
emptyOption:(lkey<0?null:"")})
%>
</tr>
<tr>
<%
sql = "SELECT mld_adres_key, mld_adres_naam "
+ " FROM mld_v_aanwezigadres"
+ " WHERE mld_adres_factuuradres IS NOT NULL"
+ (authparams.ALGreadlevel>=0?" AND alg_locatie_key IN (SELECT alg_locatie_key FROM fac_v_my_locations "
+ " WHERE prs_perslid_key="+user_key+" AND niveau="+authparams.ALGreadlevel+")":"")
+ " ORDER BY 2";
FCLTselector("fsel", sql, {label: lcl_BES_adres_fac,
initKey: fkey,
emptyOption:(fkey<0?null:"")})
%>
</tr>
<tr><td class="label"><label><%=lcl_remark%>:</label></td>
<td><textarea rows="3" style="width:100%" name="ta" id=ta><%=escape2(oremark)%></textarea></td>
</tr>
<%
if ( odelremark != null ) {
%><tr><td class="label"><label><%=lcl_BES_comment%>:</label></td>
<td><textarea readonly class="fldtxt" id="txt"><%=escape2(odelremark)%></textarea></td></tr>
<%
}
BLOCK_END();
BLOCK_START("besTODO2");
%>
<tr>
<th><%=lcl_BES_discipline%></th>
<th><%=lcl_BES_srtdeel%></th>
<th align="right"><%=lcl_BES_amount%></th>
<th align="right"><%=lcl_BES_Price%></th>
</tr>
<%
} // if bedrijf-change
fitemdisc = oRs(2).value;
fitemstr = oRs(3).value + " (" + currency_pref + num2curr(oRs(5).value) + currency_suff + "/"
+ oRs(4).value + ")";
fitemcnt = oRs(6).value;
price = oRs(7).value;
fitemdsc = oRs(8).value;
oikey = oRs(9).value;
fiprice = oRs(5).value;
total += price;
bes_korting = oRs("bes_korting").value;
lev_kosten = oRs("lev_kosten").value;
max_o_i++;
%>
<tr>
<td><%=escape2(fitemdisc)%></td>
<td><%=escape2(fitemstr)%></td>
<td align=right>
<input type="text" maxlength=5 style="width:100%;text-align:right" onBlur="recalcPrice(<%=max_o_i%>);"
id='cnt<%=max_o_i%>' name='cnt<%=max_o_i%>' value='<%=fitemcnt%>'>
<input type='hidden' id='am<%=max_o_i%>' name='am<%=max_o_i%>' value='<%=fitemcnt%>'>
<input type='hidden' id='pr<%=max_o_i%>' name='pr<%=max_o_i%>' value='<%=num2curr(fiprice)%>'>
<input type='hidden' id='ikey<%=max_o_i%>' name='ikey<%=max_o_i%>' value='<%=oikey%>'>
<i><%=fitem_comp_cnt_str%></i>
</td>
<td align=right><%=num2curr(price)%></td>
</tr>
<%
oRs.MoveNext();
}
oRs.Close();
total = total - bes_korting + lev_kosten;
if( bedr_key != -1 ) {
%>
<% if (bes_korting > 0)
{ %>
<tr>
<td align=left colspan=3><b><%=lcl_BES_order_discount%></b></td>
<td align=right style="font-size:9pt">
<input type="text" style="text-align:right" readonly class='disabled' value='<%=num2curr(bes_korting * -1)%>'>
</td>
</tr>
<%
}
%>
<% if (lev_kosten > 0)
{ %>
<tr>
<td align=left colspan=3><b><%=lcl_BES_tpcosts%></b></td>
<td align=right style="font-size:9pt">
<input type="text" style="text-align:right" readonly class='disabled'
value='<%=num2curr(lev_kosten)%>'>
</td>
</tr>
<%
}
%>
<tr>
<td align=left colspan=3><b><%=lcl_total%></b></td>
<td align=right style="font-size:9pt">
<input type="text" style="text-align:right" readonly class='disabled' id='total_txt' name='total_txt'
value='<%=num2curr(total)%>'>
</td>
</tr>
<%
}
%>
</table></td><tr>
</table>
<input type='hidden' id='min_o_i' name='min_o_i' value='<%=min_o_i%>'>
<input type='hidden' id='max_o_i' name='max_o_i' value='<%=max_o_i%>'>
<input type='hidden' id='ordernr' name='ordernr' value='<%=okey%>'>
<input type='hidden' id='total' name='total' value='<%=num2curr(total)%>'>
</form>
<iframe src="../Shared/empty.asp" frameborder="0" id="hidFrame" style="display:none"></iframe>
</div>
</body>
</html>

View File

@@ -0,0 +1,202 @@
<% /*
$Revision: 1 $
$Modtime: 23-09-09 17:51 $
File: RES/bes_flexkenmerk.inc
Status: 80%
Description: Functie die html code genereert voor de presentatie van de flexvelden
Parameters: urole Rol van de gebruiker (frontend, frontoffice, backoffice, management info)
bes_key Bestelling key
disc_key Catalogus key
srtgroup_key Groep key
srtdeel_key Item key
kenmerktype Kenmerk type (B, I)
reado Readonly
advanced Geadvanceerd
reqId Perslid key
ord Via ORD binnengekomen
Context: Functie wordt aangeroepen door
1) load_kenmerk.asp
2) res_edit.asp die initieel serverside deze html code invoegd.
Note:
TODO: Aanpassen voor gebruik door bes_bestelling.asp
*/ %>
<%
var DOCTYPE_Disable = true;
var fp = new Object(); // dummy, moet er nog uitgewerkt worden
%>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc" -->
<%
function generateFlexKenmerkCode(params)
{ %>
<div id="besKenmerken" name="besKenmerken">
<table width="100%">
<%
var urole = params.urole;
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
var bes_key = params.bes_key; // Bestelling key
var disc_key = params.disc_key; // Catalogus key
var srtgroup_key = params.srtgroup_key; // Groep
var srtdeel_key = params.srtdeel_key; // Item
var kenmerktype = params.kenmerktype; // Kenmerktype
var ord = params.ord; // Via ORD binnengekomen
var reado = params.reado; // Readonly
var advanced = params.advanced; // Geavanceerd
var reqId = params.reqId; // Perslid key (!search && multiMode)
var autfunction = "";
switch(urole)
{
case "fe": autfunction = "WEB_BESUSE";
break;
case "fo": autfunction = "WEB_BESFOF";
break;
case "bo": autfunction = "WEB_BESBOF";
break;
case "mi": if (ord)
autfunction = "WEB_BESBOR"; // Via ORD binnengekomen dan ook ORD rechten pakken
else
autfunction = "WEB_BESBAC"; // Via BES binnengekomen dan ook BES rechten pakken
break;
}
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction);
// Heb ik rechten om kenmerken met volgnummer 900 en hoger te zien?
// De functie checkAutorisation(autfunction, true) geeft null terug indien er geen autorisatie voor autofunction wordt gevonden
var besman_authparams = user.checkAutorisation("WEB_ORDSUP", true);
var besman = false;
if (besman_authparams)
besman = true;
if (kenmerktype != 'B' && kenmerktype != 'I')
{
%><p><%=lcl_internal_error%></p><%
Response.End();
}
if (bes_key > 0) // Bestaande bestelling. Bij nieuwe bestelling wordt catalogus, groep en item doorgegeven.
{ // Catalogus, groep en item van bestelling opvragen
sql = "SELECT DISTINCT bd.ins_discipline_key catalogus"
+ ", isg.ins_srtgroep_key groep"
+ ", isd.ins_srtdeel_key item"
+ " FROM bes_bestelling_item bi"
+ ", ins_srtdeel isd"
+ ", ins_srtgroep isg"
+ ", bes_discipline bd"
+ " WHERE bi.ins_srtdeel_key = isd.ins_srtdeel_key"
+ " AND isd.ins_srtgroep_key = isg.ins_srtgroep_key"
+ " AND isg.ins_discipline_key = bd.ins_discipline_key"
+ " AND bi.bes_bestelling_key = " + bes_key;
oRs = Oracle.Execute(sql);
var disc_key = oRs("catalogus").Value;
var srtgroup_key = oRs("groep").Value;
var srtdeel_key = oRs("item").Value;
}
if (kenmerktype == "I")
{ //(showItemOms) {
sql = "SELECT COALESCE(ins_srtdeel_nr, '') || ' ' || ins_srtdeel_omschrijving"
+ ", COALESCE(ins_srtdeel_eenheid,'')"
+ " FROM bes_v_aanwezigsrtdeel d"
+ " WHERE d.ins_srtdeel_key = " + srtdeel_key;
oRs = Oracle.Execute(sql);
srtdeel_oms = "";
srtdeel_eenh = "";
if (!oRs.eof) {
srtdeel_oms = escape_js(oRs(0).value);
srtdeel_eenh = escape_js(oRs(1).value);
}
oRs.Close();
%>
<tr>
<td>
<b><%=lcl_BES_srtdeel%>:</b>
</td>
<td colspan="2">
<b><%=srtdeel_oms%> <nobr>(<%=srtdeel_eenh%>)</nobr></b>
</td>
</tr>
<%
}
function isReadonly (volgnummer)
{
if (reado) return true;
}
sql = "SELECT k.bes_kenmerk_key" // 0
+ ", sk.bes_srtkenmerk_omschrijving" // 1
+ ", sk.bes_srtkenmerk_kenmerktype" // 2
+ ", r.bes_refsrtkenmerk_objectnaam" // 3
+ ", r.bes_refsrtkenmerk_kolomnaam" // 4
+ ", r.bes_refsrtkenmerk_kolomtxt" // 5
+ ", r.fac_usrtab_key" // 6
+ ", sk.bes_srtkenmerk_lengte" // 7
+ ", sk.bes_srtkenmerk_dec" // 8
+ ", sk.bes_srtkenmerk_nmin" // 9
+ ", sk.bes_srtkenmerk_nmax" // 10
+ (bes_key > 0
? ", (SELECT v.bes_kenmerkbestell_waarde"
+ " FROM bes_kenmerkbestell v"
+ " WHERE v.bes_bestelling_key = " + bes_key
+ " AND v.bes_kenmerk_key = k.bes_kenmerk_key"
+ " AND v.bes_kenmerkbestell_verwijder IS NULL) waarde"
: ", k.bes_kenmerk_default" ) // 11
+ ", k.bes_kenmerk_volgnummer" // 12
+ ", sk.bes_srtkenmerk_dimensie" // 13
+ ", '' hint" // 14
+ ", k.bes_kenmerk_default" // 15
+ ", k.bes_kenmerk_verplicht" // 16
+ (fronto
? ", NULL"
: "") // 17
+ "" // 18
+ " FROM bes_srtkenmerk sk"
+ ", bes_kenmerk k"
+ ", bes_refsrtkenmerk r"
+ (kenmerktype == 'I'
? " WHERE (k.bes_srtinstallatie_key = " + disc_key + " AND k.bes_kenmerk_niveau LIKE 'D'"
+ " OR k.bes_srtinstallatie_key = " + srtgroup_key + " AND k.bes_kenmerk_niveau LIKE 'G'"
+ " OR k.bes_srtinstallatie_key = " + srtdeel_key + " AND k.bes_kenmerk_niveau LIKE 'S')"
: " WHERE k.bes_srtinstallatie_key IN (" + disc_key + ")")
+ " AND k.bes_kenmerk_verwijder IS NULL"
+ " AND k.bes_srtkenmerk_key = sk.bes_srtkenmerk_key"
+ " AND sk.bes_srtkenmerk_verwijder IS NULL"
+ " AND sk.bes_refsrtkenmerk_key = r.bes_refsrtkenmerk_key(+)"
+ " AND k.bes_kenmerk_type = '" + kenmerktype + "'"
+ (!besman ? " AND k.bes_kenmerk_volgnummer < 900 ":"")
+ " ORDER BY k.bes_kenmerk_volgnummer, sk.bes_srtkenmerk_omschrijving";
var trn = 0;
// Voor als we nog geen key weten
var tmp_folder = "__NEW__" + Session.SessionId;
listKenmerk(sql,
"BES",
"B" + (bes_key > 0? bes_key : tmp_folder),
{ kenmerk_2col: (advanced? true : false), // In edit mode kenmerken onder elkaar en niet in 2 kolommen.
kenmerk_search: advanced,
kenmerk_colspan: false,
fnIsReadonly: isReadonly,
parentKey: bes_key }
);
%>
</table>
</div>
<%
} %>

263
APPL/BES/bes_gettotals.asp Normal file
View File

@@ -0,0 +1,263 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 17-09-09 13:16 $
File: besGetTotals.asp
Description: Haal de individuele staffel en de groepsstaffel kortingen op van de item
Parameters:
itemstring: string met item keys
itemaantalstring: string met aantallen die behoren bij de meegegegven items
Context: sel_items_tab.js/onBlurAmount-Ajax
Result: json data
sgstring: keys van de staffelgroepen
sgkorting: korting van de staffelgroepen
Note:
*/
DOCTYPE_Disable = 1;
%>
<!--#include file="../../cust/install.inc"-->
<!--#include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/json2.js" -->
<%
var itemstring = "" + Request.QueryString("itemstring");
var itemaantalstring = "" + Request.QueryString("itemaantalstring");
itemstring = itemstring.split(",");
itemaantalstring = itemaantalstring.split(",");
if (itemstring.length != itemaantalstring.length)
{
Response.write(lcl_internal_error + ": besGetTotals.asp, aantal item keys komt niet overeen met het aantal aantallen!");
Response.End;
}
var lsgnaamstring = "";
var lsgkeystring = "";
var lsgkortingstring = "";
var lsgaantalstring = "";
var lsgeenheidstring = "";
var litemkeystring = "";
var litemprijsstring = "";
var first = true;
var prs_bedrijf_key;
var liakorting = 0;
var subbedrag = 0;
var subkorting = 0;
var subtotaal = 0;
var totaalbedrag = 0;
var opdrachtkorting;
var opdrachtkortingbedrag;
var grenswaardetot;
var grenswaardevanaf;
function Item(item_key, aantal, prijs, eenheid, staffelgroep)
{
this.item_key = item_key;
this.aantal = aantal;
this.prijs = prijs;
this.eenheid = eenheid;
this.staffelgroep = staffelgroep;
}
function StaffelGroep(naam, aantal, eenheid, korting, groep, bestelbedrag)
{
this.naam = naam;
this.aantal = aantal;
this.eenheid = eenheid;
this.korting = korting;
this.groep = groep;
this.bestelbedrag = bestelbedrag;
}
var ItemArray = new Array();
var staffelGroepArray = new Array();
// Je hebt eerst totaal aantallen per staffelgroep nodig om korting van een (groeps) artikel te kunnen berekenen.
for (var i = 0; i < itemstring.length; i++)
{
sql = "SELECT sd.bes_staffeltabel_key staffelgroep"
+ ", bst.bes_staffeltabel_naam staffelgroepnaam"
+ ", COALESCE(sd.ins_srtdeel_prijs, 0) prijs"
+ ", bst.bes_staffeltabel_groep groep"
+ ", sd.ins_srtdeel_eenheid eenheid"
+ ", sd.prs_bedrijf_key bedrijf"
+ " FROM ins_srtdeel sd"
+ ", bes_staffeltabel bst"
+ " WHERE sd.bes_staffeltabel_key = bst.bes_staffeltabel_key(+)"
+ " AND sd.ins_srtdeel_key = " + itemstring[i];
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
// Oplaan bedrijf waar alle artikelen worden besteld. Moet voor elke artikel hetzelfde zijn.
prs_bedrijf_key = oRs("bedrijf").value;
// Opslaan van staffelgroep van een item
ItemArray[itemstring[i]] = new Item(itemstring[i],
parseInt(itemaantalstring[i], 10),
oRs("prijs").value,
oRs("eenheid").value,
(oRs("staffelgroep").value? parseInt(oRs("staffelgroep").value, 10) : null));
// Opslaan van totaalaantallen van een staffelgroep
if (oRs("staffelgroep").value)
{
if (staffelGroepArray[oRs("staffelgroep").value])
{
staffelGroepArray[parseInt(oRs("staffelgroep").value, 10)].aantal += parseInt(itemaantalstring[i], 10);
staffelGroepArray[parseInt(oRs("staffelgroep").value, 10)].bestelbedrag += (oRs("prijs").value * parseInt(itemaantalstring[i], 10));
}
else
{
staffelGroepArray[parseInt(oRs("staffelgroep").value, 10)] = new StaffelGroep(oRs("staffelgroepnaam").value,
parseInt(itemaantalstring[i], 10),
oRs("eenheid").value,
0,
oRs("groep").value,
(oRs("prijs").value * parseInt(itemaantalstring[i], 10)))
}
}
}
}
// Nu kunnen we totale kortingen per staffelgroep uitrekenen
// Daarnaast itemkeystring en itemprijsstring opbouwen. Nodig bij het opslaan van de juiste betaalde prijs van een artikel (bes_edit_bestelling_save)
for (var j in ItemArray)
{
if (ItemArray[j] != null && ItemArray[j].item_key && ItemArray[j].staffelgroep != null) // Item moet staffelgroep hebben en skip Prototype.js spul ook
{
sql = "SELECT BES.calcartikelkortingsprijs(" + ItemArray[j].item_key + ", " + (staffelGroepArray[ItemArray[j].staffelgroep].groep == 1? staffelGroepArray[ItemArray[j].staffelgroep].aantal : ItemArray[j].aantal) + ") kortingsprijs"
+ " FROM DUAL";
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
staffelGroepArray[ItemArray[j].staffelgroep].korting += ItemArray[j].aantal * (ItemArray[j].prijs - parseFloat(oRs("kortingsprijs").value, 10));
litemkeystring += (!first? "," : "") + ItemArray[j].item_key;
litemprijsstring += (!first? "," : "") + parseFloat(oRs("kortingsprijs").value, 10);
first = false;
}
}
else // geen staffelkortingen voor dit artikel. Wel in de itemkeystring en itemprijsstring opnemen
{
litemkeystring += (!first? "," : "") + ItemArray[j].item_key;
litemprijsstring += (!first? "," : "") + parseFloat(ItemArray[j].prijs, 10);
first = false;
}
subbedrag += ItemArray[j].aantal * ItemArray[j].prijs;
}
// Groepeer staffelgegevens in een string die verzonden kan worden
first = true;
for (var sg in staffelGroepArray)
{
if (staffelGroepArray[sg] != null && staffelGroepArray[sg].aantal) // Skip Prototype.js spul ook
{
if (staffelGroepArray[sg].groep == 0)
{ // Individuele artikelkorting
liakorting += parseFloat(staffelGroepArray[sg].korting);
subkorting += staffelGroepArray[sg].korting;
}
else
{ // Groepskorting
lsgnaamstring += (!first? "," : "[") + "{naam:\"" + staffelGroepArray[sg].naam + "\"}";
lsgkeystring += (!first? "," : "") + sg;
lsgkortingstring += (!first? "," : "") + toJsNumber(num2currEditable(staffelGroepArray[sg].korting));
lsgaantalstring += (!first? "," : "") + parseInt(staffelGroepArray[sg].aantal, 10);
lsgeenheidstring += (!first? "," : "") + staffelGroepArray[sg].eenheid;
subkorting += staffelGroepArray[sg].korting;
first = false;
}
}
}
lsgnaamstring += (!first? "]" : "\"\"");
// Bereken subtotaal: Bestelbedrag - artikel en groepskoringen
subtotaal = subbedrag - subkorting;
// Opdrachtkorting, opdrachtkortingbedrag en onderlimiet bepalen
sql = "SELECT BES.calcopdrachtkortingbedrag(" + prs_bedrijf_key + ", " + subtotaal + ") opdrachtkortingbedrag"
+ " FROM DUAL"
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
opdrachtkortingbedrag = oRs("opdrachtkortingbedrag").value;
}
sql = "SELECT BES.calcopdrachtkorting(" + prs_bedrijf_key + ", " + subtotaal + ") opdrachtkorting FROM DUAL";
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
// Korting tot grenswaarde
opdrachtkorting = oRs("opdrachtkorting").value;
}
// Nieuw subtotaal: Bestelbedrag - alle kortingen
subtotaal = subtotaal - opdrachtkortingbedrag;
sql = "SELECT prs_staffel_grenswaarde grenswaarde"
+ " FROM prs_staffel s"
+ " WHERE prs_staffel_korting = " + opdrachtkorting
+ " AND prs_bedrijf_key = " + prs_bedrijf_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
// Korting tot grenswaarde
grenswaardetot = oRs("grenswaarde").value;
}
// Nu grenswaarde bepalen vanaf
sql = "SELECT COALESCE(MAX(prs_staffel_grenswaarde), 0) grenswaarde"
+ " FROM prs_staffel s"
+ (grenswaardetot
? " WHERE prs_staffel_grenswaarde < " + grenswaardetot
: " WHERE prs_staffel_grenswaarde IS NOT NULL")
+ " AND prs_bedrijf_key = " + prs_bedrijf_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
// Korting vanaf grenswaarde
grenswaardevanaf = oRs("grenswaarde").value;
}
// Extra (transport) kosten en onderlimiet bepalen
sql = "SELECT CASE"
+ " WHEN (prs_bedrijf_bes_limiet - " + subtotaal + ") <= 0" // Subtotaal: Bestelbedrag - alle kortingen
+ " THEN 0"
+ " ELSE COALESCE(prs_bedrijf_bes_kosten, 0)"
+ " END bes_kosten"
+ ", COALESCE(prs_bedrijf_bes_limiet, 0) bes_limiet"
+ " FROM prs_bedrijf"
+ " WHERE prs_bedrijf_key = " + prs_bedrijf_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
// Extra (transport) kosten
bes_kosten = oRs("bes_kosten").value;
bes_limiet = oRs("bes_limiet").value;
}
// Totaalbedrag
totaalbedrag = subtotaal + bes_kosten;
var txtJson = '{ sgnaamstring: ' + lsgnaamstring
+ ', sgkeystring: "' + lsgkeystring
+ '", sgkortingstring: "' + lsgkortingstring
+ '", sgaantalstring: "' + lsgaantalstring
+ '", sgeenheidstring: "' + lsgeenheidstring
+ '", itemkeystring: "' + litemkeystring
+ '", itemprijsstring: "' + litemprijsstring
+ '", opdrachtkorting: "' + opdrachtkorting
+ '", opdrachtkortingbedrag: "' + toJsNumber(num2currEditable(opdrachtkortingbedrag))
+ '", grenswaardevanaf: "' + toJsNumber(num2currEditable(grenswaardevanaf))
+ '", grenswaardetot: "' + toJsNumber(num2currEditable(grenswaardetot))
+ '", bes_kosten: "' + toJsNumber(num2currEditable(bes_kosten))
+ '", bes_limiet: "' + toJsNumber(num2currEditable(bes_limiet))
+ '", prs_bedrijf_key: "' + prs_bedrijf_key
+ '", iakorting: "' + toJsNumber(num2currEditable(liakorting))
+ '", totaalbedrag: "' + toJsNumber(num2currEditable(totaalbedrag)) + '"}';
Response.Write(txtJson);
Response.End;
%>

111
APPL/BES/bes_levopm.asp Normal file
View File

@@ -0,0 +1,111 @@
<%@ LANGUAGE="JavaScript" %>
<% /*
$Revision: 1 $
$Modtime: 23-09-09 12:18 $
File: bes_levopm.asp
Status: 50%
Description: Opens a supplier specific page(URL) in a modal window to support
off the record communication between requester, backoffice and supplier
e.g. with a Damo-like platform
Parameters:
bes_key bes_bestelling_key.
Context: Called from sel_items_tab.js (from bes details screen)
Note: This function is only provided if bes_disc_params.bes_disc_params_levopm_url is not null
Parameters that can be given to the url are
* all fixed parameters like logboekdb and user (a key for the anonymous
user on that platform) should be defined in
bes_disc_params.bes_disc_params_levopm_url for a discipline (catalog/supplier).
email email address of the user OR
client_code the 'name' of bes_key, i.e. prefix + bes_key
*/ %>
<!-- #include file="../../cust/install.inc" -->
<%
FCLTHeader.Requires({ plugins: ["jQuery"], js:["FcltMgr.js"] });
var bes_key = getFParamInt("bes_key", -1);
var disc_key = -1;
var levopm = "";
var email = "";
//var autfunction = "WEB_BESBOF";
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
//var authparams = user.checkAutorisation(autfunction);
// Welke discipline? Kunnen er in uitzonderingsgevallen meer als <20><>n zijn. Neem dan de nieuwste voor de veiligheid.
var sql = "SELECT MAX (isg.ins_discipline_key)"
+ " FROM bes_bestelling b"
+ " , bes_bestelling_item bi"
+ " , ins_srtdeel isd"
+ " , ins_srtgroep isg"
+ " WHERE b.bes_bestelling_key = bi.bes_bestelling_key"
+ " AND bi.ins_srtdeel_key = isd.ins_srtdeel_key"
+ " AND isd.ins_srtgroep_key = isg.ins_srtgroep_key"
+ " AND b.bes_bestelling_key = " + bes_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
disc_key = oRs(0).value;
}
// Welke url is gerelateerd aan deze discipline?
sql = "SELECT bdp.bes_disc_params_levopm_url"
+ " FROM bes_disc_params bdp"
+ " WHERE bdp.bes_ins_discipline_key = " + disc_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
levopm_url = "" + oRs(0).value;
}
oRs.close();
if (levopm_url != "")
{
// Wat is het email adres van de aanvrager?
sql = "SELECT p.prs_perslid_email"
+ " FROM bes_bestelling b, prs_perslid p"
+ " WHERE p.prs_perslid_key = b.prs_perslid_key"
+ " AND bes_bestelling_key = " + bes_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof) {
email = "" + oRs(0).value;
}
// Als het email adres van de aanvrager onbekend is, gebruik die van de user.
if (email == "")
{
sql = "SELECT p.prs_perslid_email"
+ " FROM prs_perslid p "
+ " WHERE p.prs_perslid_key = " + user_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
email = "" + oRs(0).value;
}
}
oRs.close();
}
levopm_url = levopm_url + "&email=" + email;
levopm_url = levopm_url + "&client_code=" + bes_bestelling_prefix + bes_key;
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script language=JavaScript>
levopm_url = "<%=levopm_url%>";
function loaded()
{
// Open een nieuwe tab met de levopm_url
FcltMgr.openDetail(levopm_url, lcl_communicatie);
}
</script>
</head>
<body id="info" topmargin='0' onLoad="loaded()">
</body>
</html>

47
APPL/BES/bes_list.asp Normal file
View File

@@ -0,0 +1,47 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 29-09-09 14:21 $
File: bes_list.asp
Status: 95%
Description: Vangt de parameters op en verwerkt die in een aanroep van bes_list
Met andere worden: toont een overzicht van de besetllingen die voldoen aan
de meegegeven criteria.
Parameters: urole (VERPLICHT)
print, excel, tiny
optioneel: allerlei zoekcriteria
Context: Vanuit een Facilitor ASP die een lijstje van opdrachten wil tonen (in een iframe)
Note:
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="bes_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var autfunction = "";
switch(urole)
{
case "fe": autfunction = "WEB_BESUSE";
break;
case "fo": autfunction = "WEB_BESFOF";
break;
case "bo": autfunction = "WEB_BESBOF";
break;
case "mi": if (ord)
autfunction = "WEB_BESBOR"; // via ORD binnengekomen dan ook ORD rechten pakken
else
autfunction = "WEB_BESBAC"; // via BES binnengekomen dan ook BES rechten pakken
break;
}
bes_list ( autfunction,
{ urole : urole,
outputmode: getQParam("outputmode", null),
tiny: getQParam("tiny", null),
rfo_key: getQParam("bes_key", null),
mld_key: getQParam("mld_key", null)
}
);
%>

1607
APPL/BES/bes_list.inc Normal file

File diff suppressed because it is too large Load Diff

123
APPL/BES/bes_list.js Normal file
View File

@@ -0,0 +1,123 @@
/*
$Revision: 1 $
$Modtime: 23-09-09 16:04 $
File: bes_list.js
Status: 50%
*/
function besLower(row, isMulti) {
besEdit(row, isMulti, true);
}
function besEdit(row, isMulti, lower)
{
var bes_key = row.ROWKEY;
var besData = eval('(' + row.ROWDATA + ')');
var besModule;
if (besData)
{
if (besData.besType == null)
{
besModule = "BES";
}
else
{
besModule = besData.besType;
}
if (besModule == "BES")
{
url = "Appl/BES/bes_bestelling.asp?bes_key=" + bes_key + (lower? "&lower=1" : '') + "&details=1" + "&urole=" + urole + (urole != "fo" && urole != "bo"? "&reado=1" : "");
FcltMgr.openDetail(url, lcl_BES_Bestelling + ' ' + bes_bestelling_prefix + bes_key);
}
}
}
function besOpdrShow(row)
{
var besData = eval('(' + row.ROWDATA + ')');
if (besData)
{
besOpdrType = besData.besOpdrType;
besOpdrKey = besData.besOpdrKey;
if (besOpdrType == null)
{
alert("Error: besOpdrShow in ordman_search.asp");
return;
}
url = "Appl/BES/bes_opdr.asp?reado=&ordernr=" + besOpdrKey;
FcltMgr.openDetail(url, lcl_BES_BesOrder + ' ' + bes_bestelopdr_prefix + besOpdrKey);
}
}
function besDelete(row, isMulti)
{
var bes_key = row.ROWKEY;
if(isMulti || confirm(lcl_BES_delete_1 + bes_bestelling_prefix + bes_key + lcl_BES_delete_2) )
{
$(row).addClass('dirty');
$.post("bes_delete.asp",
{ urole: urole,
bes_key: bes_key },
FcltCallback,
"json");
}
}
function besAccept(row)
{
$(row).addClass('dirty');
var bes_key = row.ROWKEY;
$.post("bes_accept.asp",
{ urole: urole,
bes_key: bes_key },
FcltCallback,
"json");
}
function besRejectCallback(data)
{
if (data.rejected == 1)
$("#row" + data.bes_key).addClass('dirty');
}
function besReject(row)
{
//$(row).addClass('dirty'); // Gebeurt nu in besRejectCallback()
var bes_key = row.ROWKEY;
url = "../BES/bes_reject.asp?bes_key=" + bes_key + "&urole=" + urole;
FcltMgr.openModalDetail(url, lcl_BES_reject + bes_bestelling_prefix + bes_key, {callback: besRejectCallback});
}
function besSubmitCallback(json, textStatus)
{
if (textStatus == "success")
{
if (json.mld_order_autoprint == 1) // Opdrachtbon printen
{
url = "Appl/BES/bes_opdr_xml.asp?opdr_key=" + json.opdr_key;
FcltMgr.openDetail(url, lcl_BES_BesOrder + " " + bes_bestelopdr_prefix + bes_key);
}
//else
// TODO: MOET hier een melding! Vroeger refresh maar nu gebeurt er alleen een dirty
//alert("lcl_bes_bestelling_is_besteld");
if (json.message) alert(json.message);
}
else
alert(textStatus);
};
function besSubmit(row)
{
var bes_key = row.ROWKEY;
$(row).addClass('dirty');
$.post("bes_submit.asp",
{ urole: urole,
bes_key: bes_key },
besSubmitCallback,
"json");
}

70
APPL/BES/bes_opdr.asp Normal file
View File

@@ -0,0 +1,70 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 28-09-09 22:33 $
File: bes_opdr.asp
Status: 10% (old style)
Description: Wrapper voor bestellingen-opdrachten
Parameters: reado: als status ongelijk 1 of 2 mag er niet meer bewerk worden
TODO: showmode maken
urole
ordernr
Context:
Note:
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<%
FCLTHeader.Requires({ plugins: ["suggest","jQuery"],
js: ["wpos.js", "arrange.js", "expand_frame.js"] })
// AUTORISATIEPARAMETERS
// var urole = getQParam("urole");
urole="bo"; //todo
var ordernr = getQParamInt('ordernr');
var sql = "SELECT bes_bestelopdr_id, bes_bestelopdr_status "
+ " FROM bes_bestelopdr "
+ " WHERE bes_bestelopdr_key = " + ordernr;
oRs = Oracle.Execute( sql );
ordernr_id = oRs("bes_bestelopdr_id").value;
oRs.Close();
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
</head>
<%
maninfo = Request.QueryString("maninfo").Count() > 0;
var autfunction = '';
if (maninfo)
autfunction = 'WEB_BESBAC';
else
autfunction = 'WEB_BESBOR';
var authparams = user.checkAutorisation(autfunction);
%>
<%
reado = (Request('reado').Count > 0) ? 1 : 0; // TODO: Zelf bepalen
%>
<body id="editbody">
<%
page = "./bes_show_opdr.asp?urole="+urole+"&ordernr="+ordernr;
IFRAMER("opdrFrame", page, { title: lcl_opdr_frame_algemeen,
initHeight: "450px",
refreshOnClose: true } );
%>
</body>
</html>

28
APPL/BES/bes_opdr_xml.asp Normal file
View File

@@ -0,0 +1,28 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 9-02-09 13:28 $
File: BES_opdr_xml.asp
Description: XML converter for bestellingen and opdrachten
Parameters: one of the opdr_key or bes_key should be supplied. If both, opdr_key is used
opdr_key optional, key of the bes_bestelopdr to be printed using XML and cust.xsl
bes_key optional, key of the orderrequest bes_bestelling to be printed using XML and cust.xsl
Context: Called from bes.asp
Note:
*/ %>
<!-- #include file="../../cust/install.inc"-->
<!-- #include file="../Shared/funcodes.inc"-->
<!-- #include file="../Shared/xml_converter.inc" -->
<%
var bes_key = (Request.QueryString("bes_key").Count>0)?parseInt(Request.QueryString("bes_key")):-1;
var opdr_key = (Request.QueryString("opdr_key").Count>0)?parseInt(Request.QueryString("opdr_key")):-1;
if (opdr_key != -1) {
FCLT2XMLResponse('bestelopdr', opdr_key, null, -1, '', '');
} else {
FCLT2XMLResponse('bestelling', bes_key, null, -1, '', '');
}
%>

123
APPL/BES/bes_reject.asp Normal file
View File

@@ -0,0 +1,123 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 24-09-09 14:51 $
File: bes_reject.asp
Status: 90%
Description: Afwijzen van een bestelaanvraag. Opmerking moet ingevuld worden.
Parameters:
bes_key Bestelaanvraag nummer (key)
submitting 0 = invoer opmerking, 1 = reject mode
opmerk Opmerking
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<%
FCLTHeader.Requires({ plugins: ["jQuery"],
js: ["FcltMgr.js"] });
var bes_key = getQParamInt("bes_key");
var submitting = getQParam("submit", "0") == "1";
var opmerk = getFParam("opmerk", "");
var autfunction = "WEB_BESBOF";
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction);
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<% if (submitting && opmerk != "")
{
sql = "UPDATE bes_bestelling"
+ " SET bes_bestelling_afgewezen = SYSDATE"
+ " , bes_bestelling_opmerking = '" + replace(opmerk, "'", "''") + "'"
+ " WHERE bes_bestelling_key = " + bes_key
+ " AND bes_bestelling_status IN (2, 3)";
oRs = Oracle.Execute(sql);
// de trigger zet hierdoor de status op 1 en notificeert aanvrager en invoerder
// check (zat er al in)
sql = "SELECT '' FROM bes_bestelling"
+ " WHERE bes_bestelling_key = " + bes_key
+ " AND bes_bestelling_status = 1";
oRs = Oracle.Execute(sql);
if (oRs.eof)
{
var warning = lcl_BES_reject_failed;
var rejected = false;
}
else
{
var warning = lcl_BES_rejected1 + bes_bestelling_prefix + bes_key + lcl_BES_rejected2;
var rejected = true;
}
%>
<script type="text/javascript">
FcltMgr.closeDetail( window,
{ refresh: true,
bes_key: <%=bes_key%>,
warning: "<%=warning%>",
rejected: "<%=rejected? 1 : 0%>"
});
</script>
<%
Response.End;
}
else
{ %>
<script type="text/javascript">
jQuery(document).ready(function()
{
$('textarea').resize(function() { FcltMgr.resized(window) });
$('textarea').autogrow();
});
function bes_reject()
{
if (rejectform.opmerk.value == "")
alert("<%=lcl_empty_reject%>");
else
rejectform.submit();
}
function bes_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
<% } %>
</head>
<body id="rejectbody">
<div id="reject">
<%
var buttons = [{ title: lcl_reject, icon: "opslaan.png", action: "bes_reject()" },
{ title: lcl_cancel, icon: "undo.png", action: "bes_cancel()" }];
IFRAMER_HEADER(lcl_BES_reject + bes_bestelling_prefix + bes_key, buttons);
%>
<form id="rejectform" name="rejectform" action="bes_reject.asp?submit=1&bes_key=<%=bes_key%>" method="post">
<%
BLOCK_START("besReject", lcl_BES_flexblok);
%>
<table id="rejecttable">
<!-- Reden afwijzing -->
<tr>
<td class="label"><label for="opmerk"><nobr><%=lcl_BES_reject_remark%>:</nobr></label></td>
<td>
<textarea class="fldremark" name="opmerk" rows="8"></textarea>
</td>
</tr>
</table>
<%
BLOCK_END();
%>
</form>
</div>
</body>
</html>

515
APPL/BES/bes_retour.asp Normal file
View File

@@ -0,0 +1,515 @@
<%@ LANGUAGE="JavaScript" %>
<% /*
$Revision: 1 $
$Modtime: 20-02-09 0:03 $
*/ %>
<%=Session("EnableClientLogging")%>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="rfo_approve_utils.inc" -->
<!-- #include file="rfo_utils.inc" -->
<!-- #include file="../Shared/dep_select.inc" -->
<html>
<link rel=stylesheet href="<%=custpath%>/cust.css" type="text/css">
<head>
<script type="text/javascript" src="../LocalScripts/wpos.js"></script>
<script type="text/javascript" src="../LocalScripts/arrange.js"></script>
<script language="vbscript" src="../LocalScripts/num2curr.vbs"></script>
</head>
<body id="info" topmargin='0' onLoad="">
<script language=JavaScript>
// check of er invoer is in het retour formulier
function checkRetour() {
var count = 0;
var min_o_i = document.forms.u2.min_o_i.value;
var max_o_i = document.forms.u2.max_o_i.value;
for (i = min_o_i; i <= max_o_i; i++) {
if (!isNaN(document.forms.u2['cnt'+i].value) && document.forms.u2['cnt'+i].value>0) count++;
}
if (count == 0) {
return false;
}
document.forms.u2.nr_retour.value = count; // sla aantal ingevulde retour items op
return true;
}
// Indien goede invoer dan submit
function doSubmit()
{
// Check of er een reden van retour is ingevuld
// Alleen spaties en returns wordt gezien als een lege waarde
text = document.forms.u2.remark.value
if (text.replace(/^\s+|\s+$/g, "") != "") { // trim spaties links en rechts (+ return)
// check of er invoer is in het retour formulier
if (checkRetour()) {
document.forms.u2.submit();
} else {
alert("<%=lcl_BES_no_retour%>");
}
} else {
alert("<%=lcl_BES_remark_retour%>");
}
}
function isGoodNumber(str, checkInteger)
{
var anum=/(^\d+$)|(^\d+\.\d*$)|(^\d*\.\d+$)/
if ( checkInteger ) {
anum=/(^\d+$)/
}
return anum.test(str);
}
// check toetsaanslag
function checkInput()
{
obj = event.srcElement;
val = obj.value;
if( val == "" || val == 0 || (!isNaN(val) && isGoodNumber(val, true) &&
parseInt(val,10) >= 0 )) {
i = obj.id.substring(3);
remaining = parseInt(document.all['rem'+i].value,10);
if( val == "" ) val = 0;
if( val > remaining ){
alert ("<%=lcl_BES_exceed_value_retour%>");
obj.focus();
u2.action = 'javascript:0';
return false;
}
u2.action = 'retour.asp';
return true;
}
alert("<%=lcl_BES_bad_value%>");
obj.focus();
u2.action = 'javascript:0';
return false;
}
function guardMaxLength()
{
var ta=event.srcElement;
if(ta.value.length>=ta.maxlength)
{
event.returnValue = false; //cancel event
}
}
function ensureMaxLength()
{
if(window.event.propertyName=='value')
{
var ta=window.event.srcElement;
if(ta.value.length>ta.maxlength) {
// indien enter dan stack overflow voorkomen
// en '/n/' wordt er niet afgehaald. '/r/n' eraf halen.
if (ta.value.substr(ta.maxlength - 1) == '\r\n')
ta.value=ta.value.substr(0, ta.maxlength-1);
else
ta.value=ta.value.substr(0, ta.maxlength);
}
}
}
</script>
<%
var fronto = Request('fronto').Count > 0;
var backo = Request('backo').Count > 0;
var autfunction;
if (fronto) autfunction = 'WEB_BESFOF';
else autfunction = 'WEB_BESUSE';
%>
<!-- #include file="../Shared/autlevel.inc" -->
<%
if (!backo && thisfunc_enabled) {
insert_mode = Request('insert_mode').Count > 0;
if (insert_mode) {
// Sla de ingevoerde gegevens op in een nieuwe bestellingsaanvraag
%>
<%
var bes_key = Request.Form('bes_key').Count>0? parseInt(Request.Form('bes_key'), 10):-1;
var nr_retour = Request.Form('nr_retour').Count>0? parseInt(Request.Form('nr_retour'), 10):-1;
var deliveryAddr = Request.Form('deliveryAddr').Count>0? parseInt(Request.Form('deliveryAddr'), 10):-1;
if (bes_key == -1 || nr_retour == -1) {
Response.Write(lcl_internal_error);
Response.End();
}
newremark = Request.form("remark").Count>0? Request.form("remark"):"";
delivery_place = Request.form("delivery_place").Count>0? Request.form("delivery_place"):"";
oRs = Oracle.Execute("SELECT bes_s_bes_bestelling_key.nextval FROM DUAL");
new_bes_key = parseInt(oRs(0).Value,10);
oRs.close();
sql = "INSERT INTO bes_bestelling ("
+ "bes_bestelling_key, "
+ " bes_bestelling_module"
+ ", bes_bestelling_status" // op default waarde zetten
+ ", bes_bestelling_datum"
+ ", prs_perslid_key"
+ ", bes_bestelling_owner_key"
+ ", bes_bestelling_opmerking"
+ ", bes_bestelling_ordernr"
+ ", bes_bestelling_telefoon"
+ ", bes_bestelling_plaats"
+ ", bes_bestelling_fiat_user"
+ ", mld_adres_key_lev"
+ ", prs_kostenplaats_key"
+ ", fac_activiteit_key"
+ ", bes_bestelling_leverdatum"
+ ", bes_bestelling_kosten_klant"
+ ", bes_bestelling_retourvan_key)"
+ " SELECT "
+ new_bes_key + ", "
+ " bes_bestelling_module"
+ ", 2" // default waarde
+ ", SYSDATE"
+ ", prs_perslid_key"
+ ", bes_bestelling_owner_key"
+ ", '" + replace(newremark,"'","''") + "'"
+ ", bes_bestelling_ordernr"
+ ", bes_bestelling_telefoon"
+ ", '" + replace(delivery_place,"'","''") + "'"
+ ", bes_bestelling_fiat_user"
+ ", " + deliveryAddr
+ ", prs_kostenplaats_key"
+ ", fac_activiteit_key"
+ ", bes_bestelling_leverdatum"
+ ", bes_bestelling_kosten_klant"
+ ", " + bes_key
+ " FROM bes_bestelling"
+ " WHERE bes_bestelling_key = " + bes_key;
oRs = Oracle.Execute(sql);
// kopieer de bestelitemkenmerken van de orginele bestelitems
sql = "INSERT INTO bes_kenmerkbestell"
+ " (bes_bestelling_key"
+ ", bes_kenmerk_key"
+ ", bes_kenmerkbestell_waarde"
+ ", bes_kenmerkbestell_aanmaak)"
+ " SELECT " + new_bes_key
+ ", bes_kenmerk_key"
+ ", bes_kenmerkbestell_waarde"
+ ", SYSDATE"
+ " FROM bes_kenmerkbestell"
+ " WHERE bes_bestelling_key = " + bes_key;
Oracle.Execute(sql);
min_o_i = parseInt( Request('min_o_i'), 10 );
max_o_i = parseInt( Request('max_o_i'), 10 );
for (i = min_o_i; i <= max_o_i; i++) {
retour = parseInt(Request('cnt'+i),10); // ingevulde aantal
bokey = parseInt(Request('bokey'+i),10); // boi.bes_bestelopdr_item_key
bikey = parseInt(Request('bi_key'+i),10); // bes_bestelling_item_key
if (!isNaN(retour) && retour != 0) {
oRs = Oracle.Execute("SELECT bes_s_bes_bestelling_item_key.nextval FROM DUAL");
new_bikey = parseInt(oRs(0).Value,10);
oRs.close();
sql = "INSERT INTO bes_bestelling_item ("
+ "bes_bestelling_item_key, "
+ " bes_bestelling_key"
+ ", ins_srtdeel_key"
+ ", bes_bestelling_item_aantal"
+ ", bes_bestelling_item_status)"
+ " SELECT "
+ new_bikey + ", "
+ new_bes_key
+ ", ins_srtdeel_key"
+ ", -" + retour
+ ", 2"
+ " FROM bes_bestelling_item"
+ " WHERE bes_bestelling_key = " + bes_key
+ " AND bes_bestelling_item_key = " + bikey;
Oracle.Execute(sql);
// kopieer de bestelitemkenmerken van de orginele bestelitems
sql = "INSERT INTO bes_kenmerkbesteli"
+ " (bes_bestelling_item_key"
+ ", bes_kenmerk_key"
+ ", bes_kenmerkbesteli_waarde"
+ ", bes_kenmerkbesteli_aanmaak)"
+ " SELECT " + new_bikey
+ ", bes_kenmerk_key"
+ ", bes_kenmerkbesteli_waarde"
+ ", SYSDATE"
+ " FROM bes_kenmerkbesteli"
+ " WHERE bes_bestelling_item_key = " + bikey;
Oracle.Execute(sql);
}
}
// Indien BO niet hoeft te fiatteren kan de bestelling direcht geaccepteerd worden
if (bes_retour_need_approval == 0) { // bestelling naar status geaccepteerd (4)
sql = "UPDATE bes_bestelling_item "
+ " SET bes_bestelling_i_gcpt_us_key = " + user_key
+ " WHERE bes_bestelling_key = " + new_bes_key;
oRs = Oracle.Execute(sql); // bes_bestelling_item_status wordt nu ook automatisch op geaccepteerd (4) gezet door trigger
if ( autoorderRFO(bes_key) ) { // automatisch opdracht staat aan?
makeOrders(user_key, new_bes_key); // automatisch opdracht aanmaken en status naar besteld (5)
}
}
else { // BO moet bestelling fiatteren, status gefiatteerd (3)
sql = "UPDATE bes_bestelling"
+ " SET bes_bestelling_status = 3"
+ " WHERE bes_bestelling_key = " + new_bes_key;
oRs = Oracle.Execute(sql); // bes_bestelling_item_status nu op gefiatteerd (3) zetten voor BO fiattering
}
%>
<script language=JavaScript>
parent.closeModal(true);
</script>
<%
} else {
// Maak het retourformulier
%>
<table width=100% id=mainTable><tr><td>
<table width=100% id=mainForm><tr><td valign=top align=left>
<form action=retour.asp method=post name=u2 onsubmit='return false;'>
<%
var bes_key = Request.QueryString('bes_key').Count>0? parseInt(Request.QueryString('bes_key'), 10):-1;
if (bes_key == -1) {
Response.Write(lcl_internal_error);
Response.End();
}
sql = "SELECT DISTINCT b.bes_bestelopdr_key o_key," // 0
+ " bd.prs_bedrijf_naam b_name," // 1
+ " s.ins_srtdeel_omschrijving isd_descr, " // 2
+ "COALESCE((s.ins_srtdeel_eenheid,'') isd_eenheid, " // 3
+ "COALESCE((boi.bes_bestelopdr_item_prijs,0) boi_price," // 4
+ " bi.bes_bestelling_item_key bi_key," // 5
+ " boi.bes_bestelopdr_item_aantal boi_aantal," // 6
+ "COALESCE((boi.bes_bestelopdr_item_aantalontv,0) boi_ontv," // 7
+ " m.mld_adres_bezoek_adres ||"
+ "' '|| m.mld_adres_bezoek_postcode "
+ "||' '||"
+ " m.mld_adres_bezoek_plaats d_place, " // 8
+ "b.bes_bestelopdr_opmerking oremark," // 9
+ " boi.bes_bestelopdr_item_key boi_key," // 10
+ " s.ins_srtdeel_nr catstr," // 11
+ " b.bes_bestelopdr_delivery_opmerk odelremark," // 12
+ " ABS((SELECT SUM (bi2.bes_bestelling_item_aantal)"
+ " FROM bes_bestelling_item bi2"
+ " WHERE bi2.bes_bestelling_key IN ("
+ " SELECT bes_bestelling_key"
+ " FROM bes_bestelling"
+ " WHERE bes_bestelling_retourvan_key = " + bes_key + ")"
+ " AND bi2.ins_srtdeel_key = bi.ins_srtdeel_key"
+ " GROUP BY ins_srtdeel_key)) retour" // 13
+ ", s.ins_srtdeel_upper" // 14
+ ", m.mld_adres_key" // 15
+ " FROM ins_tab_discipline d"
+ ", ins_srtgroep g,"
+ " ins_srtdeel s"
+ ", prs_bedrijf bd"
+ ", bes_bestelopdr b"
+ ", mld_adres m"
+ ", bes_bestelling_item bi"
+ ", bes_bestelopdr_item boi"
+ ", bes_bestelling bes"
+ " WHERE d.ins_discipline_key = g.ins_discipline_key" // PF: hier waren nog wat secundaire condities; nu verwijderd.
+ " AND g.ins_srtgroep_key = s.ins_srtgroep_key"
+ " AND s.ins_srtdeel_key = bi.ins_srtdeel_key"
+ " AND bi.bes_bestelling_key = bes.bes_bestelling_key"
+ " AND b.bes_bestelopdr_key = boi.bes_bestelopdr_key"
+ " AND bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key"
+ " AND b.prs_bedrijf_key = bd.prs_bedrijf_key"
+ " AND m.mld_adres_key(+)= b.mld_adres_key_lev"
//+ " AND b.bes_bestelopdr_key = " + ordernr
+ " AND bi.bes_bestelling_key = " + bes_key
+ " ORDER BY s.ins_srtdeel_nr, s.ins_srtdeel_upper"; // FSN#239
oRs = Oracle.Execute(sql);
okey = -1;
b_name = "";
fitemstr = "";
ficompstr = "";
fitemcnt = "";
min_o_i = -1;
oikey = -1;
count = 0;
oikey_cnt = 0;
while (!oRs.eof) {
if (oikey != oRs.fields("boi_key").value) {
fitemstr = oRs.fields("isd_descr").value + " (" + currency_pref + num2curr(oRs.fields("boi_price").value)
+ currency_suff + "/" + oRs.fields("isd_eenheid").value + ")";
fitemcnt = oRs.fields("boi_aantal").value;
fitemcntretour = oRs.fields("retour").value;
if( oikey != -1 ) {
%>
<input type='hidden' id='bokey<%=oikey_cnt%>' name='bokey<%=oikey_cnt%>' value='<%=oikey%>'> <% // boi.bes_bestelopdr_item_key %>
<%
oikey_cnt++;
}
oikey = oRs.fields("boi_key").value;
catstr = oRs.fields("catstr").value;
} else {
fitemstr = "";
fitemcnt = -1;
fitemcntretour = -1;
catstr = "";
}
bi_key = oRs.fields("bi_key").value;
if (okey != oRs.fields("o_key").value) {
b_name = oRs.fields("b_name").value;
d_place = oRs.fields("d_place").value;
mld_adres_key = oRs.fields("mld_adres_key").value;
oremark = oRs.fields("oremark").value;
odelremark = oRs.fields("odelremark").value;
okey = oRs.fields("o_key").value;
min_o_i = 0;
%>
<table border=0 cellpadding='0' cellspacing='5' width='720'>
<tr><td align=right width='26%'><b><%=lcl_BES_Supplier%>:</b></td>
<td colspan=2 align=left><b>&nbsp;<%=escape2(b_name)%>&nbsp;</b></td>
</tr>
<tr>
<td align='right' valign='top'><b><%=lcl_BES_retour_remark%>:</b></td>
<td><textarea rows="3" cols="30" style="width:100%"name="remark" id=nosat
onkeypress="guardMaxLength();" onpropertychange="ensureMaxLength();"
maxlength="320"><%=escape2(odelremark)%></textarea></td>
</tr>
<%
CreateArrSelect(lcl_delivery_address + ":",
"deliveryAddr",
" style='width:250' " +
"onFocus=this.s_str='' onKeyPress='return false;' onKeyUp='autoComplete(this);'",
"[noCache]",
"SELECT m.mld_adres_key"
+ ", m.mld_adres_naam, m.mld_adres_upper"
+ " FROM mld_v_afleveradres m"
+ (ALGreadlevel>=0?" WHERE m.alg_locatie_key IN (SELECT alg_locatie_key FROM fac_v_my_locations "
+ " WHERE prs_perslid_key="+user_key+" AND niveau="+ALGreadlevel+")":"")
+ " UNION" // Huidige waarde ook toevoegen aan lijst
+ " SELECT m.mld_adres_key"
+ ", m.mld_adres_naam, m.mld_adres_upper"
+ " FROM mld_v_afleveradres m"
+ " WHERE m.mld_adres_key = " + mld_adres_key
+ " ORDER BY mld_adres_upper",
false,
mld_adres_key);
%>
<tr>
<td valign=top align=right><p><b><%=lcl_BES_del_room%>:</b></p></td>
<td><input style="width:250;" name="delivery_place" type="text" maxlength="30" value=""></td>
</tr>
</table></td></tr>
<tr><td><table border=0 cellpadding='0' cellspacing='0' width='100%'><tr>
<th><%=lcl_BES_srtdeel_nr%></th>
<td width='1' bgcolor='#ffffff'></td>
<th><%=lcl_BES_srtdeel%></th>
<td width='1' bgcolor='#ffffff'></td>
<th><%=lcl_BES_ordered%></th>
<td width='1' bgcolor='#ffffff'></td>
<th><%=lcl_BES_retour_so_far%></th>
<td width='1' bgcolor='#ffffff'></td>
<th><%=lcl_BES_retour%></th>
<td width='1' bgcolor='#ffffff'></td>
<th><%=lcl_BES_retour_remaining%></th>
</tr>
<tr><td colspan='5' bgcolor='#ffffff' height='1'></td></tr>
<%
}
%>
<tr>
<td align='right' valign='top' class='blueform'><%=escape2(catstr)%></td>
<td width="1" bgcolor="#ffffff"></td>
<td align='left' valign='top' class='blueform'><%=escape2(fitemstr)%><%=ficompstr%></td>
<td width="1" bgcolor="#ffffff"></td>
<td align='right' valign='top' class='blueform'><nobr>
<%if (fitemcnt != -1){%>
<%=fitemcnt%>
<%}%>
</nobr>
</td>
<td width="1" bgcolor="#ffffff"></td>
<td align='right' valign='top' class='blueform'>
<%if (fitemcntretour != -1){%>
<%=fitemcntretour%>
<%}else{%>
0
<%}%>&nbsp;
</td>
<td width='1' bgcolor='#ffffff'></td>
<td align='right' valign='top' class='blueform'><NOBR>
<input type="text" maxlength=5 style="width:50;text-align:right"
onBlur='checkInput();' id='cnt<%=count%>' name='cnt<%=count%>'
value=''>
<input type='hidden' id='bi_key<%=count%>' name='bi_key<%=count%>' value='<%=bi_key%>'> <% // bes_bestelling_item_key %>
</NOBR></td>
<td width="1" bgcolor="#ffffff"></td>
<td align='right' valign='top' class='blueform' id='remtd<%=count%>'>
<%=fitemcnt-fitemcntretour%>&nbsp;
<input type='hidden' id='rem<%=count%>' name='rem<%=count%>' value='<%=fitemcnt-fitemcntretour%>'> <% // bes_bestelopdr_item_aantal - bes_bestelopdr_item_aantalontv %>
</td>
<tr><td colspan='5' bgcolor='#ffffff' height='1'></td></tr>
<%
oRs.MoveNext();
count++;
}
oRs.Close();
if (okey != -1) {
%>
<input type='hidden' id='bokey<%=oikey_cnt%>' name='bokey<%=oikey_cnt%>' value='<%=oikey%>'> <% // bes_bestelopdr_item_key %>
<%
}
%>
</table>
<input type='hidden' id='bes_key' name='bes_key' value='<%=bes_key%>'>
<input type='hidden' id='min_o_i' name='min_o_i' value='<%=min_o_i%>'>
<input type='hidden' id='max_o_i' name='max_o_i' value='<%=oikey_cnt%>'>
<input type='hidden' id='insert_mode' name='insert_mode' value='1'>
<input type='hidden' id='ordernr' name='ordernr' value='<%=okey%>'>
<input type='hidden' id='count' name='count' value='<%=count%>'>
<input type='hidden' id='nr_retour' name='nr_retour' value='0'>
<input type='submit' style="width:0">
</td></tr></table>
</td><td valign="top" align="right" rowspan="2" width="200">
<br>
<%
BUTTONS_START(2);
CreateButton(lcl_submit, "doSubmit();", 120);
NEXT_BUTTON();
CreateButton(lcl_cancel, "parent.closeModal(false);", 120);
BUTTONS_END();
%>
</td></tr></table>
</form>
<%
}
} else { %>
<p><%=lcl_no_auth%></p>
<%
}
%>
</body>
</html>
<body>
</body>

497
APPL/BES/bes_search.asp Normal file
View File

@@ -0,0 +1,497 @@
<%@ LANGUAGE="JavaScript" %>
<% /*
$Revision: 1 $
$Modtime: 29-09-09 16:31 $
File: bes_search.asp
Status: 90%
Description: Filterscherm voor overzicht bestellingen
Parameters: urole Rol van de gebruiker (frontend, frontoffice, backoffice, management info)
datefrom Periode van
dateto Periode tot
ord Via ORD binnengekomen zodat ook ORD rechten gepakt kan worden
disc Catalogus
srtgroup Groep
srtdeel Item (key)
supplier Leverancier
groupby Groepering 1
groupby2 Groepering 2
rfo_key Aanvraag nummer (rfo key, request for order)
rfostatus_key_str Aanvraag status string
order_key Opdracht nummer
orderstatus_key_str Opdracht status string
prs_key Aanvrager
comp_key Bedrijf
dep_key Afdeling
kp Kostenplaats
item Item (string)
rfoNew Status nieuw
rfoOpen Status open
rfoDelivered Status geleverd
rfoClosed Status archief
Globals:
Context:
Note: Merk op dat de kostenplaats er ook altijd bij wordt gezocht, handig met withExtraParamField
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/calendar.inc" -->
<!-- #include file="../Shared/afdelingselector.inc" -->
<!-- #include file="../Shared/bedrijfselector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: ["expand_frame.js", "../BES/bes_search.js"]
});
/***** Get webform parameters *****/
var urole = getQParam("urole");
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
var datefrom = getQParam("date_from", "");
var dateto = getQParam("date_to", "");
var today = new Date ();
var date_from = (datefrom == ""? today : new Date(parseInt(datefrom, 10)));
var date_to = (dateto == ""? today : new Date(parseInt(dateto, 10)));
var ord = getQParam("ord", 0) == 1; // Via ORD binnengekomen
var disc = parseInt(getQParam("disc", -1), 10); // catalogus
var srtgroup = parseInt(getQParam("srtgroup", -1), 10); // groep
var srtdeel = parseInt(getQParam("srtdeel", -1), 10); // item (key voor select box)
var supplier = parseInt(getQParam("supplier", -1), 10); // leverancier
var groupby = parseInt(getQParam("groupby", -1), 10); // Groepering 1
var groupby2 = parseInt(getQParam("groupby2", -1), 10); // Groepering 2
var rfo_key = getQParam("rfo_key", ""); // Aanvraag nummer (rfo key, request for order)
var rfostatus_key_str = getQMultiParam("rfostatus", "2,3,4,5,6,7,8"); // Aanvraag status string
var order_key = getQParam("order_key", ""); // Opdracht nummer
var orderstatus_key_str = getQMultiParam("orderstatus", "-1"); // Opdracht status string
var prs_key = parseInt(getQParam("prs_key", -1), 10); // Aanvrager (Requestor_key)
var comp_key = parseInt(getQParam("comp_key", -1), 10); // Bedrijf
var dep_key = parseInt(getQParam("dep_key", -1), 10); // Afdeling
var kp = getQParam("kp", ""); // Kostenplaats
var item = getQParam("item", ""); // item (string voor input box)
var rfoNew = getQParam("rfoNew", 0) == 1; // Status nieuw
var rfoOpen = getQParam("rfoOpen", 0) == 1; // Status open
var rfoDelivered = getQParam("rfoDelivered", 0) == 1; // Status geleverd
var rfoClosed = getQParam("rfoClosed", 0) == 1; // Status archief
if (!rfoNew && !rfoOpen && !rfoDelivered && !rfoClosed)
rfoNew = true;
/***** End get webform parameters *****/
var autfunction = "";
switch(urole)
{
case "fe": autfunction = "WEB_BESUSE";
break;
case "fo": autfunction = "WEB_BESFOF";
break;
case "bo": autfunction = "WEB_BESBOF";
break;
case "mi": if (ord)
autfunction = "WEB_BESBOR"; // Via ORD binnengekomen dan ook ORD rechten pakken
else
autfunction = "WEB_BESBAC"; // Via BES binnengekomen dan ook BES rechten pakken
break;
}
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction);
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
var front_end = false; // Needed by sel_Obj_Op.js
var maninfo = true; // Needed by sel_Obj_Op.js
var empty_option = true;
var lcl_BES_deli_date = "<%=lcl_BES_deli_date%>";
// TODO: calender afhankelijkheid: calender1 <= calender2
function doSubmit()
{
<% if (backo)
{ %>
// Submitten met kenmerken
doSubmitWithKenmerken($('#disc').val());
<% }
else
{ %>
document.forms.u2.submit();
<% } %>
}
<% if (backo)
{ %>
function myModal()
{
if ($('#disc').val() == -1)
{
alert("<%=lcl_BES_nocat_selected%>");
return;
}
var key = $('#disc').val()
var url = "load_kenmerk.asp?disc_key=" + $('#disc').val()
+ "&urole=<%=urole%>"
+ "<%=ord? '&ord=1' : ''%>"
+ "&kenmerktype=B"
+ "&advanced=1";
var titel = "<%=lcl_BES_kenmerken%>";
showKenmerkModal(key, url, titel)
}
<% } %>
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", lcl_filterblok);%>
<form name="u2" target="workFrame" action="bes_search_list.asp" method="get">
<input type="hidden" name="urole" value="<%=urole%>">
<% if (ord) // via ORD binnengekomen dan ook ORD rechten pakken
{ %>
<input type=hidden name=ord value="1">
<% } %>
<tr>
<td class="searchkolom1"><!-- start column 1 -->
<table><!-- x rijen, 2 kolommen: label + veld -->
<% if (!frontend)
{
if (groupby == 1 || groupby == 6) // Opdracht groepering is geselecteerd
{ %>
<!-- Opdrachtnummer -->
<tr class="primsearch">
<td class="label"><label for="ordernum"><%=lcl_ord_order_num%>:</label></td>
<td><input type="text" class="fldordernum" name="ordernum" value="<%=order_key%>"></td>
</tr>
<% }
else // Aanvraag groepering is geselecteerd
{ %>
<!-- Aanvraag number -->
<tr class="primsearch" id="rfoOrOrder">
<td class="label"><label id="rfonumlabel" for="rfonum"><%=lcl_BES_key%>:</label></td>
<td><input type="text" class="fldrfonum" name="rfonum" value="<%=rfo_key%>"></td>
</tr>
<% }
if (minfo)
{ %>
</tr>
<script type="text/javascript">
function showRfoOrOrder()
{
var phtml = "";
if (($("#groupby").val() == 1 || $("#groupby").val() == 6) &&
($("[name=rfonum]").val() != undefined)) // Opdracht groepering is geselecteerd en aanvraagnummer is weergegeven
{ // Geef opdrachtnummer weer maar neem waarde over van aanvraagnummer
phtml = '<td class="label"><label for="ordernum"><%=lcl_ord_order_num%>:</label></td>'
+ '<td><input type="text" class="fldordernum" name="ordernum" value="' + $("[name=rfonum]").val() + '"></td>';
$("#rfoOrOrder").html(phtml);
}
else if (($("#groupby").val() != 1 && $("#groupby").val() != 6) &&
($('[name=ordernum]').val() != undefined)) // Aanvraag groepering is geselecteerd en opdrachtnummer is weergegeven
{ // Geef aanvraagnummer weer maar neem waarde over van opdrachtnummer
phtml = '<td class="label"><label id="rfonumlabel" for="rfonum"><%=lcl_BES_key%>:</label></td>'
+ '<td><input type="text" class="fldrfonum" name="rfonum" value="' + $("[name=ordernum]").val() + '"></td>';
$("#rfoOrOrder").html(phtml);
}
}
</script>
<% } %>
<% } %>
<% if (minfo)
{ %>
<!-- Datum van -->
<tr class="primsearch">
<% FCLTcalendar( "date_from",
{ label : lcl_period_from,
datum: date_from,
volgnr: 1
}); %>
</tr>
<!-- Datum tot -->
<tr class="primsearch">
<% FCLTcalendar( "date_to",
{ label: lcl_period_to,
datum: date_to,
volgnr: 2
}); %>
</tr>
<% } %>
<% if (!frontend)
{ %>
<!-- Catalogus -->
<tr class="primsearch">
<% sql = "SELECT ins_discipline_key"
+ ", ins_discipline_omschrijving"
+ " FROM bes_v_aanwezigdiscipline"
+ " WHERE ins_discipline_key IN"
+ " (SELECT ins_discipline_key"
+ " FROM fac_v_webgebruiker g"
+ ", fac_functie f"
+ " WHERE g.prs_perslid_key = " + user_key
+ " AND f.fac_functie_key = g.fac_functie_key "
+ " AND f.fac_functie_code = '" + autfunction + "'" + ") "
+ " ORDER BY ins_discipline_omschrijving ASC";
FCLTselector("disc",
sql,
{ initKey: disc,
label: lcl_BES_Catalogus,
onChange: 'updateSrtGroup("' + autfunction + '");', // discChanged
emptyOption: ""
}); %>
</tr>
<!-- Groep -->
<tr class="secsearch">
<td class="label"><label for="srtgroup"><%=lcl_BES_srtgroup%>:</label></td>
<td>
<div id="srtgroupdiv">
<% FCLTselector("srtgroup",
"", // sql: lege selectbox die onload wordt geladen
{ initKey: srtgroup,
onChange: 'updateSrtDeel("' + autfunction + '");', // srtgroupChanged
emptyOption: ""
}); %>
</div>
</td>
</tr>
<!-- Item select box -->
<tr class="secsearch">
<td class="label"><label for="srtdeelmulti"><%=lcl_BES_srtdeel%>:</label></td>
<td>
<div id="srtdeeldiv">
<% FCLTselector("srtdeelmulti",
"", // sql: lege selectbox die onload wordt geladen
{ initKey: srtdeel,
emptyOption: ""
}); %>
</div>
</td>
</tr>
<script type="text/javascript">
// Laad de groupen en de items
// Selecteer eventueel de initi<74>le groepen en items die meegegeven kunnen worden
$(document).ready(function()
{
updateSrtGroup("<%=autfunction%>", "<%=srtgroup%>", "<%=srtdeel%>");
});
</script>
<% } %>
<% if (!frontend)
{ %>
<% if (fronto || backo)
{ %>
<!-- Item input box -->
<tr class="secsearch">
<td class="label"><label for="item"><%=lcl_BES_srtdeel%>:</label></td>
<td><input type="text" class="flditem" name="item" value="<%=item%>"></input>
</tr>
<% } %>
<% } %>
<% if (minfo)
{ %>
<!-- Groepering1 -->
<tr class="primsearch">
<% sql = "SELECT 0, '" + lcl_BES_RFOs + "', 1 FROM DUAL"
+ " UNION SELECT 3,' " + lcl_BES_RFOs + " - " + lcl_BES_Catalogus + "', 2 FROM DUAL"
+ " UNION SELECT 4, '" + lcl_BES_RFOs + " - " + lcl_BES_srtgroup + "', 3 FROM DUAL"
+ " UNION SELECT 5, '" + lcl_BES_RFOs + " - " + lcl_BES_srtdeel + "', 4 FROM DUAL"
+ " UNION SELECT 2, '" + lcl_BES_RFOs + " - " + dep_name_level1 + "', 5 FROM DUAL"
+ " UNION SELECT 7, '" + lcl_BES_RFOs + " - " + dep_name_level2 + "', 6 FROM DUAL"
+ " UNION SELECT 8, '" + lcl_BES_RFOs + " - " + lcl_BES_ordernr + "', 7 FROM DUAL"
+ " UNION SELECT 1, '" + lcl_order + "', 8 FROM DUAL"
+ " UNION SELECT 6, '" + lcl_order + " - " + lcl_BES_Supplier + "', 9 FROM DUAL"
+ " UNION SELECT 10, '" + lcl_district + "', 10 FROM DUAL"
+ " UNION SELECT 11, '" + lcl_mi_location + "', 11 FROM DUAL"
+ " ORDER BY 3";
FCLTselector("groupby",
sql,
{ initKey: groupby,
label: lcl_BES_group,
onChange: 'showRfoOrOrder();'
}); %>
</tr>
<!-- Groepering2 -->
<tr class="secsearch">
<% sql = "SELECT 8,' " + lcl_BES_RFOs + " - " + lcl_BES_ordernr + "', 2 FROM DUAL"
+ " UNION SELECT 10, '" + lcl_district + "', 5 FROM DUAL"
+ " UNION SELECT 11, '" + lcl_mi_location + "', 5 FROM DUAL"
+ " ORDER BY 3";
FCLTselector("groupby2",
sql,
{ initKey: groupby2,
label: lcl_BES_group2,
emptyOption: ""
}); %>
</tr>
<% } %>
</table>
</td><!-- end column 1 -->
<!-- Second column -->
<td valign=top>
<table>
<% if (!frontend)
{ %>
<!-- Aanvrager -->
<tr class="primsearch">
<% FCLTpersoonselector("sName_key", // requestor
"sgPerson",
{ perslidKey: prs_key,
label: lcl_rfo_requestor,
filtercode: "BES",
whenEmpty: lcl_search_generic // want filter
}); %>
</tr>
<!-- Organisatie -->
<tr class="secsearch">
<% FCLTafdelingselector("sDept_key", // organisation
"sgDept",
{ departmentKey: dep_key,
label: dep_name_level2, // Nu Afdeling, was lcl_BES_organisation => Organisatie
autlevel: authparams.PRSreadlevel, // Was voorheen niet aanwezig
whenEmpty: lcl_search_generic // want filter
}); %>
</tr>
<% } %>
<% if (minfo)
{ %>
<!-- Bedrijf -->
<tr class="secsearch">
<% FCLTbedrijfselector("sComp_key", // company
"sgComp",
{ companyKey: comp_key,
label: lcl_BES_company,
filtercode: "I",
whenEmpty: lcl_search_generic // want filter
}); %>
</tr>
<!-- Leverancier -->
<tr class="secsearch">
<% FCLTbedrijfselector("sSuppl_key", // supplier
"sgSuppl",
{ companyKey: supplier,
label: lcl_BES_Supplier,
filtercode: "B",
whenEmpty: lcl_search_generic // want filter
}); %>
</tr>
<% } %>
<% if (!frontend)
{ %>
<!-- Kostenplaats -->
<tr class="secsearch">
<td class="label"><label for="kp"><%=lcl_BES_ordernr%>:</label></td>
<td><input type="text" class="fldkp" name="kp" value="<%=kp%>"></input>
</tr>
<% } %>
<% if (minfo)
{ %>
<!-- Aanvraagstatus -->
<tr class="primsearch">
<% sql = "SELECT bes_bestellingstatuses_key"
+ ", bes_bestellingstatuses_omschr"
+ " FROM bes_bestellingstatuses"
+ " ORDER BY 1";
FCLTselector("rfostatus",
sql,
{ initKey: rfostatus_key_str,
label: lcl_BES_RFOs_status,
multi: true,
emptyOption: lcl_all
}); %>
</tr>
<!-- Opdrachtstatus -->
<tr class="primsearch">
<% sql = "SELECT bes_bestelopdrstatuses_key"
+ ", bes_bestelopdrstatuses_omschr"
+ " FROM bes_bestelopdrstatuses"
+ " ORDER BY 1";
FCLTselector("orderstatus",
sql,
{ initKey: orderstatus_key_str,
label: lcl_BES_Orders_status,
multi: true,
emptyOption: lcl_all
}); %>
</tr>
<% } %>
<% if (!minfo)
{ %>
<!-- Statuses -->
<tr class="primsearch">
<td class="label"><label><%=lcl_BES_Bes_status%>:</label></td>
<td>
<nobr>
<input type="checkbox" class="fldrfonew" name="rfoNew" id="rfoNew" onClick="checkCheckboxesRFO();" value="1" <%=rfoNew? "checked" : ""%>>
<label for="rfoNew"><%=lcl_BES_chek3%></label>
<input type="checkbox" class="fldrfoopen" name="rfoOpen" id="rfoOpen" onClick="checkCheckboxesRFO();" value="1" <%=rfoOpen? "checked" : ""%>>
<label for="rfoOpen"><%=lcl_BES_chek1%></label>
<input type="checkbox" class="fldrfodelivered" name="rfoDelivered" id="rfoDelivered" onClick="checkCheckboxesRFO();" value="1" <%=rfoDelivered? "checked" : ""%>>
<label for="rfoDelivered"><%=lcl_BES_chek2%></label>
<% if (!frontend)
{ %>
<input type="checkbox" class="fldrfoclosed" name="rfoClosed" id="rfoClosed" onClick="checkCheckboxesRFO();" value="1" <%=rfoClosed? "checked" : ""%>>
<label for="rfoClosed"><%=lcl_BES_chek4%></label>
<% } %>
</nobr>
</td>
</tr>
<% } %>
</table>
</td><!-- end column 2-->
</tr>
</table>
</form>
<% BLOCK_END();%>
<div id="buttons">
<% BUTTONS_START();
CreateButton(lcl_search, "doSubmit();", 100);
if (!frontend)
CreateButton(lcl_more, "iface_toggleSecondarySearchblock();", 100, "btnMoreLess");
if (backo)
{
CreateButton(lcl_obj_advanced +'&gt;', "javascript:myModal();", 100, 'bAdvanced'); // met actuele waarden van catalogus en vorig filter
}
BUTTONS_END(); %>
</div>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload='ExpandFrame("workFrame")'
frameborder="0" scrolling="no">
</iframe>
<iframe height=0 width=100% name="hidFrame" id="hidFrame" src="../Shared/empty.asp">
</iframe>
</div>
</body>
</html>

61
APPL/BES/bes_search.js Normal file
View File

@@ -0,0 +1,61 @@
/*
$Revision: 1 $
$Modtime: 29-09-09 17:11 $
File: bes_search.js
Status: 95%
Description: Javascript functies voor bestand bes_search.asp
Parameters:
Globals:
Context: Javascript script bestand voor bes_search.asp
Note: Merk op dat de kostenplaats er ook altijd bij wordt gezocht, handig met withExtraParamField
*/
function checkCheckboxesRFO()
{
if (!document.all.rfoNew.checked &&
!document.all.rfoOpen.checked &&
!document.all.rfoDelivered.checked &&
(document.all.rfoClosed && !document.all.rfoClosed.checked))
{
document.all.rfoNew.checked = true;
}
}
function checkCheckboxesOpdr()
{
if (!document.all.opdrRej.checked &&
!document.all.opdrOpen.checked &&
!document.all.opdrDelivered.checked &&
!document.all.opdrClosed.checked)
{
document.all.opdrOpen.checked = true;
}
}
function updateSrtGroup(pautfunction, psrtgroup, psrtdeel)
{
var ldis_key = $('#disc :selected').val();
$("#srtgroupdiv").load("../Shared/loadGroup.asp?autfunction=" + pautfunction
+ "&dis_key=" + ldis_key
+ "&module=bes"
//+ "&initempty=1"
+ (psrtgroup? "&srtgroup=" + psrtgroup : ""),
function ()
{
// Laad de items
// Selecteer eventueel de initi<74>le items die meegegeven kunnen worden
updateSrtDeel(pautfunction, psrtdeel);
});
}
function updateSrtDeel(pautfunction, psrtdeel)
{
var lsrtgroup = $('#srtgroup :selected').val();
$("#srtdeeldiv").load("../Shared/loadDeel.asp?autfunction=" + pautfunction
+ "&srtgroup=" + lsrtgroup
+ "&module=bes"
//+ "&initempty=1"
+ (psrtdeel? "&srtdeel=" + psrtdeel : ""));
}

View File

@@ -0,0 +1,209 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 16-09-09 13:48 $
File: bes_search_list.asp
Status: 95%
Description: Vangt de parameters van bes_search op en verwerkt die in een aanroep van bes_list
Parameters: urole
Alle zoek-criteria van bes_search.asp
Context: Vanuit bes_search.asp
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<!-- #include file="bes_list.inc" -->
<%
var urole = getQParam("urole", ""); // Indien niet meegegeven, veronderstel dan frontend gebruik
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// FORM parameters: de waarde indien aanwezig, anders null
// Vaak is een lege selectie ook een -1, dus dan is-ie wel aanwezig, maar hoeft niet
// als filter te worden toegepast. Dan is null dus gelijk aan -1, qua betekenis,
// Vandaar dat een default van -1 ipv null ook mag
// In eerste instantie identificeren we elk veld gewoon 1-op-1.
var outputmode = getQParamInt("outputmode", 0); // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParam("showall", "0") == "1";
// Period from start-time until end-time
// Indien geen datums meegegeven, dan huidige datum voor beide kalenders nemen anders duurt de query te lang.
var datefrom = getQParam("date_from", null);
var dateto = getQParam("date_to", null);
datefrom = (datefrom? new Date(parseInt(datefrom, 10)) : null); // als datefrom == "" dan wordt datefrom ook null
dateto = (dateto? new Date(parseInt(dateto, 10)) : null); // als dateto == "" dan wordt dateto ook null
// Voor velden die de user in kan typen valideren we zodanig dat we er tegen kunnen
var ord = getQParam("ord", 0) == 1; // Via ORD binnengekomen dan ook ORD rechten pakken (fromORD)
var rfo_key = getQParam("rfonum", null); // Aanvraag nummer (rfo key, request for order)
var ord_key = getQParam("ordernum", null); // Opdracht nummer
var catalogus_key = getQParamInt("disc", -1); // catalogus
var besgroep_key = getQParamInt("srtgroup", -1); // groep
var item_key = getQParamInt("srtdeelmulti", -1); // item
var supplier_key = getQParamInt("sSuppl_key", -1); // leverancier
var groupbes = getQParamInt("groupby", -1); // Groepering 1
var groupbes2 = getQParamInt("groupby2", -1); // Groepering 2
var requestor_key = getQParamInt("sName_key", -1);
var company_key = getQParamInt("sComp_key", -1);
var dep_key = getQParamInt("sDept_key", -1);
var kp = getQParam("kp", "");
var item = getQParam("item", "");
// FORM checkboxes
// Status checkboxen niet aanwezig bij minfo
if (!minfo)
{
var st_rfoNew = (getQParam("rfoNew", "0") == "1");
var st_rfoOpen = (getQParam("rfoOpen", "0") == "1");
var st_rfoDelivered = (getQParam("rfoDelivered", "0") == "1");
var st_rfoClosed = (getQParam("rfoClosed", "0") == "1");
// ** de velden van de form zijn nu allemaal bekend **
// ** nu volgt de verwerking
// Statusfilters:
// FE: Nieuw (2), open (3, 4, 5), geleverd (1, 6, 7, 8)
// FO: Nieuw (2), open (3, 4, 5), geleverd (6), archief (1, 7)
// BO: Nieuw (2, 3, 4), open (5), geleverd (6), archief (1, 7)
// Merk op: de ids kunnen afhankelijk van de urole andere betekenis hebben, dus.
var besstatus1 = (frontend && st_rfoDelivered) || (!frontend && st_rfoClosed);
var besstatus2 = st_rfoNew;
var besstatus3 = (frontend && st_rfoOpen) || (fronto && st_rfoOpen) || (backo && st_rfoNew);
var besstatus4 = (frontend && st_rfoOpen) || (fronto && st_rfoOpen) || (backo && st_rfoNew);
var besstatus5 = st_rfoOpen;
var besstatus6 = st_rfoDelivered;
var besstatus7 = besstatus1;
var besstatus8 = (frontend && st_rfoDelivered);
var ordstatus1 = null;
var ordstatus2 = null;
var ordstatus3 = null;
var ordstatus4 = null;
var ordstatus5 = null;
var ordstatus6 = null;
var ordstatus7 = null;
}
else // minfo
{
var rfo_status_str = getQMultiParam("rfostatus", "2,3,4,5,6,7,8"); // Aanvraag status
var ord_status_str = getQMultiParam("orderstatus", "-1"); // Opdracht status
var besstatus1 = false;
var besstatus2 = false;
var besstatus3 = false;
var besstatus4 = false;
var besstatus5 = false;
var besstatus6 = false;
var besstatus7 = false;
var besstatus8 = false;
var rfo_status = rfo_status_str.split(',');
for (var mst = 0; mst < rfo_status.length; mst++)
{
switch(parseInt(rfo_status[mst], 10))
{
case 1: besstatus1 = true;
break;
case 2: besstatus2 = true;
break;
case 3: besstatus3 = true;
break;
case 4: besstatus4 = true;
break;
case 5: besstatus5 = true;
break;
case 6: besstatus6 = true;
break;
case 7: besstatus7 = true;
break;
case 8: besstatus8 = true;
break;
}
}
var ordstatus1 = false;
var ordstatus2 = false;
var ordstatus3 = false;
var ordstatus4 = false;
var ordstatus5 = false;
var ordstatus6 = false;
var ordstatus7 = false;
var ord_status = ord_status_str.split(',');
for (var ost = 0; ost < ord_status.length; ost++)
{
switch(parseInt(ord_status[ost], 10))
{
case 1: ordstatus1 = true;
break;
case 2: ordstatus2 = true;
break;
case 3: ordstatus3 = true;
break;
case 4: ordstatus4 = true;
break;
case 5: ordstatus5 = true;
break;
case 6: ordstatus6 = true;
break;
case 7: ordstatus7 = true;
break;
}
}
}
var autfunction = "";
switch(urole)
{
case "fe": autfunction = "WEB_BESUSE";
break;
case "fo": autfunction = "WEB_BESFOF";
break;
case "bo": autfunction = "WEB_BESBOF";
break;
case "mi": if (ord)
autfunction = "WEB_BESBOR"; // via ORD binnengekomen dan ook ORD rechten pakken
else
autfunction = "WEB_BESBAC"; // via BES binnengekomen dan ook BES rechten pakken
break;
}
bes_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
rfo_key: rfo_key,
ord_key: ord_key,
datefrom: datefrom,
dateto: dateto,
catalogus_key: (catalogus_key != -1? catalogus_key : null),
besgroep_key: (besgroep_key != -1? besgroep_key : null),
item_key: (item_key != -1? item_key : null),
supplier_key: (supplier_key != -1? supplier_key : null),
groupbes: (groupbes != -1? groupbes : null),
groupbes2: (groupbes2 != -1? groupbes2 : null),
requestor_key: (requestor_key != -1? requestor_key : null),
company_key: (company_key != -1? company_key : null),
dep_key: (dep_key != -1? dep_key : null),
kp: (kp != ""? kp : null),
item: (item != ""? item : null),
besstafg: besstatus1,
besstnew: besstatus2,
besstfia: besstatus3,
besstacc: besstatus4,
besstbes: besstatus5,
besstlev: besstatus6,
besstver: besstatus7,
besstmix: besstatus8,
besordstafg: ordstatus1,
besordstnew: ordstatus2,
besordstbeh: ordstatus3,
besordstbes: ordstatus4,
besordstbev: ordstatus5,
besordstlev: ordstatus6,
besordstver: ordstatus7
}
);
%>

View File

@@ -0,0 +1,421 @@
<%@language = "javascript" %>
<%
/* $Revision: 1 $
$Modtime: 30-09-09 17:53 $
File: bes_show_bestelling.asp
Status: 10% (new style)
Description: Toon bestelling
Parameters: urole (required)
bes_key (required)
-
Context:
Note:
*/ %>
<% Response.Expires = -1; %>
<!--#include file="../../cust/install.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/cmenuFn.inc" -->
<!--#?include file="../Shared/algautlevel.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/date_sql.inc"-->
<!-- #include file="../Shared/datetime.inc"-->
<!-- #include file="../Shared/escape.inc"-->
<!-- #include file="../Shared/calendar.inc"-->
<!-- #include file="../Shared/dep_select.inc" -->
<!-- #include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["expand_frame.js", "date.js", "FcltMgr.js"]})
// AUTORISATIEPARAMETERS
var urole = getQParam("urole");
var bes_key = getQParam("bes_key");
//TODO:
fronto=true;backo=false;frontend=false;
to_approve=false;reado=true;lower=false;
autfunction = 'WEB_BESFOF';
dis_key=-1;
punchout=false;
lower_part=false;
act_key=-1;
show_price=true;
%>
<!-- #include file="../Shared/autlevel.inc" -->
<!-- #include file="RFO_utils.inc" -->
<!-- #include file="Details.inc" -->
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function bes_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "bes_edit_bestelling.asp?urole=<%=urole%>&bes_key=<%=bes_key%>&embedded=1"
}
function bes_delete()
{
alert("Delete nog niet geimplementeerd");
}
function bes_mail() {
<%
var defemail="";
sql = " SELECT b.prs_perslid_key"
+ " FROM bes_bestelling b"
+ " WHERE b.bes_bestelling_key = " + bes_key;
oRs = Oracle.Execute( sql);
defemail_key = oRs("prs_perslid_key").value
%>
var subject = "<%=lcl_BES_RFO + bes_bestelling_prefix + bes_key%>";
var url="../shared/queuemail.asp?pcode=BESMAI&defemail_key=<%=defemail%>&key=<%=bes_key%>&subject=" + escape(subject);
FcltMgr.openModalDetail(url, subject);
}
function bes_print() {
window.open('./bes_opdr_xml.asp?bes_key='+'<% = bes_key %>').focus();
}
</script>
</head>
<body id="showbody">
<%
// TODO: Rechten controleren
var buttons = [ { icon: "wijzigen.png", title: lcl_change, action:"bes_change()", id:"bchange_bes_bestelling" },
{ icon: "delete.png", title: lcl_delete, action:"bes_delete()", id:"bdelete_bes_bestelling" },
{ icon: "print.png", title: lcl_print, action: 'bes_print()' },
{ icon: "email.png", title: lcl_noti_bes_aanv_email, action: 'bes_mail()' }];
IFRAMER_HEADER(lcl_bes_frame_algemeen, buttons);
%>
<div id="show">
<form name=u2 onSubmit="return false;">
<%
bes_bestelling.drawHeader(false);
//Response.Write("bestelling " + bes_key + " zou ik hier moeten tonen");
BLOCK_START("besInfo" , lcl_bes_artikelblok);
sql_inputter = "SELECT " + prs_kpn_string + " kpstring"
+ " FROM prs_perslid p"
+ ", prs_v_aanwezigafdeling d"
+ ", prs_kostenplaats k"
+ " WHERE d.prs_kostenplaats_key= k.prs_kostenplaats_key(+)"
+ " AND d.prs_afdeling_key = p.prs_afdeling_key"
+ " AND p.prs_perslid_key = " + (bes_bestelling.rfoForPerson!=-1?bes_bestelling.rfoForPerson:user_key);
var oRs = Oracle.Execute( sql_inputter );
if (!oRs.eof) {
%>
<input type='hidden' id='inputter_acc' name='inputter_acc' value='<%=escape2(oRs(0).Value)%>'>
<%
}
oRs.close();
%>
<input type=hidden name="bes_key" value="<%= bes_bestelling.bes_key %>">
<input type=hidden name="person_key" value="<%= bes_bestelling.rfoForPerson%>">
<input type=hidden name="dept_key" value="<%= bes_bestelling.rfoDeptKey %>">
<input type=hidden name="punchoutURL" value="">
<input type=hidden name="leverdagen" value=0>
<input type=hidden name="PRSreadlevel" value=<%=PRSreadlevel%>>
<%
// Zijn wij een incidentele bestelling via een melding?
if (bes_bestelling.mld_key != null)
{%><tr><%
ROFIELDNOTD ("fld", "TODO: namens melding", bes_bestelling.mld_key);
InfoPointer("appl/mld/mld_melding.asp?urole="+urole+"&mld_key="+bes_bestelling.mld_key, lcl_complain+" " + bes_bestelling.mld_key);
%></tr><%
}
if ( details ) {
ROFIELDTR ("fld", lcl_BES_key, bes_bestelling_prefix + bes_bestelling.bes_key);
ROFIELDTR ("fld", lcl_date_time, bes_bestelling.rfoDate);
ROFIELDTR (bes_bestelling.rfoStatus==1 ? 'class="rejected"' : 'fld', lcl_BES_RFO_status, bes_bestelling.rfoStatusText);
%>
<%
l_rfos = " ";
comma = "";
sql_boi = "(SELECT bo.bes_bestelopdr_id, bes_bestelopdr_item_key " +
" FROM BES_BESTELOPDR_ITEM boi, BES_BESTELOPDR bo " +
" WHERE bo.BES_BESTELOPDR_key = boi.BES_BESTELOPDR_key " +
" GROUP BY bo.bes_bestelopdr_id, bes_bestelopdr_item_key)";
// Door welke bestelopdracht(en) wordt deze aanvraag afgehandeld?
sql = "SELECT DISTINCT boi.bes_bestelopdr_id"
+ " FROM bes_bestelling_item bi, "+sql_boi+" boi "
+ " WHERE bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key"
+ " AND bi.bes_bestelling_key =" + bes_bestelling.bes_key
+ " ORDER BY 1";
oRs = Oracle.Execute(sql);
while(!oRs.eof) {
l_rfos += comma + bes_bestelopdr_prefix + oRs(0).Value;
comma = ", ";
oRs.MoveNext();
}
oRs.Close();
ROFIELDTR ("fld", lcl_BES_Orders, l_rfos);
// Waar zijn wij een retour van?
l_retours = "";
comma = "";
sql = "SELECT bes_bestelling_key"
+ " FROM bes_bestelling"
+ " WHERE bes_bestelling_retourvan_key = " + bes_bestelling.bes_key
+ " ORDER BY bes_bestelling_key";
oRs = Oracle.Execute(sql);
while(!oRs.eof) {
l_retours += comma + "<nobr>" + bes_bestelling_prefix + oRs("bes_bestelling_key").Value;
comma = ", </nobr>";
oRs.MoveNext();
}
oRs.Close();
if (l_retours != "") {
ROFIELDTR ("rejected", lcl_BES_retour_nr, l_retours);
}
if (bes_bestelling.rfoRetourVan!=null) {
ROFIELDTR ("rejected", lcl_BES_retour_of, bes_bestelling.rfoRetourVan);
}
} else { // geen details maar nieuw? %>
<div align=center>
&nbsp;&nbsp;<img src="../Pictures/no_photo.gif" id="photo" border=1 bordercolor=#000000 width="100" onClick="">
</div>
<%}%>
<% BLOCK_END(); %>
<% BLOCK_START("besFlex" , lcl_bes_flexblok); %>
<!-- FLEX KOMEN HIER-->
<tr><td>
<table id="theTable" cellspacing="8" cellpadding="0" border="0" width="100%"></table>
</td></tr>
<% BLOCK_END(); %>
<% BLOCK_START("besItemSel" , lcl_bes_selectieblok); %>
<tr>
<td>
<input type=hidden name=srtdeel_keys value="">
<input type=hidden name=amount_string value="">
<input type=hidden name=item_keys value="">
<input type=hidden name=flexkey_string value="">
<input type=hidden name=flexval_string value="">
<input type=hidden name=flexdeel_string value="">
<input type=hidden name=flexitem_string value="">
<input type=hidden name=year value="">
<input type=hidden name=month value="">
<input type=hidden name=date value="">
<input type=hidden name=datestring value="">
<input type=hidden name=fronto value="<%=fronto?1:0%>">
<input type=hidden name=backo value="<%=backo?1:0%>">
<input type=hidden name="levkosten" value="0">
<input type=hidden name="korting" value="0">
<input type=hidden name="itemkeystring" value="">
<input type=hidden name="itemprijsstring" value="">
<% if (to_approve) { %>
<input type=hidden name=approve value="1">
<input type=hidden name=module value="BES">
<% }
if (rfo_opmerking && rfo_opmerking != '' && rfo_opmerking != 'null' ) {
ROFIELDTR("rejected", bes_bestelling.rfoStatus==1? lcl_BES_reject_remark : lcl_BES_remark, rfo_opmerking);
}
%><tr>
<td class="label"><label id="disgroup_help"><% = lcl_BES_discipline %>:</label></td>
<td>
<input type=hidden
name="disgroupval"
value="<%=(dis_key<0?0:dis_key)%>" leverdagen="<%=bes_bestelling.rfoLeverdagen%>" >
<% = bes_bestelling.rfoDisciplineText %>
<input type=hidden name="discipline" value=<%=dis_key%> value4=<%=bes_bestelling.rfoLogoURL%>>
</td>
</tr>
<tr>
<%
// Deze readonly conditie lijkt me absurd -PF
//if not readonly. Als status is 4 dan worden alleen de flexkenmerken opgeslagen NFIT#13069
FCLTcalendar( "calendar",
{ label : lcl_BES_deli_date,
datum: bes_bestelling.rfoDeliverydate,
readonly: !(bes_bestelling.rfoStatus != 4 && (editable || (lower_part && bes_bestelling.rfoStatus != 6))
|| punchout || (!fronto && !backo && dis_key>0 && !reado))
});
%>
</tr>
<% // Als status is 4 dan worden alleen de flexkenmerken opgeslagen NFIT#13069 %>
<tr id="tr_searchbtn" name="tr_searchbtn" <% = (editable && bes_bestelling.rfoStatus != 4) || (!punchout && !fronto && !backo && !isNaN(dis_key)) && !reado ? "" : " style='display:none;'" %> >
<td class="label"><label for="itemfilter_help"><% = lcl_BES_filter %>:</label></td>
<td>
<input type=text
maxlength=30
name="itemfilter" id="itemfilter"
style="width:80"
<% // Als status is 4 dan worden alleen de flexkenmerken opgeslagen NFIT#13069 %>
<% = ((editable && bes_bestelling.rfoStatus != 4) || (!punchout && !fronto && !backo && !isNaN(dis_key)) && !reado ? " " : " readonly ") %>
value="">
<input type=Button
value="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
style="background-image:url(../Pictures/cart.png);background-repeat:no-repeat"
title="<%=lcl_BES_add_btn%>"
OnClick="AddSuggestItem(sgFilter.getValue())"
class="button"
id=Button1
name=Button1>
<input type=button
class=button
style='height:21;background-image:url(../Pictures/star_2.png);background-repeat:no-repeat;padding-left:10px;'
title="<%=lcl_BES_favour_title%>"
onClick='favouriteList();'
value="<%=lcl_BES_favour_btn%>"></td>
<% CreateSelect(lcl_BES_staffelgroep + ':', "filterstaffelgroep",
"style='width:250px;'",
"SELECT -1, '', 'A' " + from_dual
+ " UNION SELECT bs.bes_staffeltabel_key, bs.bes_staffeltabel_naam, 'B' FROM bes_staffeltabel bs"
+ " ORDER BY 3",
-1, "id='staffelgroepa' style='display: none'", "id='staffelgroepb' style='display: none'"); %>
</td>
</tr>
<% // Als status is 4 dan worden alleen de flexkenmerken opgeslagen NFIT#13069 %>
<%// TODO='favouriteAdd();'%>
<%
if (act_key == -1) {
if (to_approve)
{ // JGL: Ondertussen mogen de (bestelling?) flexkenmerken nog wel bewerkt worden
BUTTONS_START(2);
CreateButton(lcl_approve, "rfoApprove()", 100, "bApprove");
NEXT_BUTTON();
CreateButton(lcl_reject, "rfoReject()", 100, "bReject");
NEXT_BUTTON();
BUTTONS_END();
}
}
%>
<script type="text/javascript">
function rfoApprove()
{
enableButton("bApprove", false, "");
u2.submit(); // via post form zodat kenmerken ook meegegeven en opgeslagen worden (NFIT#12806)
}
function rfoReject()
{
var rejectReason = showModalDialog("reject_reason.asp?key=<%=bes_bestelling.bes_key%>",
null, "dialogHeight:230px; dialogWidth: 400px; status=no;");
if (rejectReason == null)
return;
window.navigate('rfo_approve.asp?REJECT=1&reason='+rejectReason+'&bes_key=<%= bes_bestelling.bes_key%>');
}
</script>
<% BLOCK_END(); %>
<% BLOCK_START("besItems" , lcl_bes_geselecteerd); %>
<tr><td colspan="2">
<!-- SELECTED ITEMS -->
<label><% = lcl_FE_items_choosen %>:</label>
<table id="sel_items">
<tr>
<% //if (editable || (!punchout && !fronto && !backo && !isNaN(dis_key)) && !reado ) { %>
<% if (editable || !punchout) { %>
<th width=15></th>
<%}%>
<th><%=lcl_BES_srtdeel%></th>
<th><%=lcl_BES_unity%></th>
<th><%=lcl_BES_price_per_unity%></th>
<th><%=lcl_BES_multiple%></th>
<th><%=lcl_BES_Price%></th>
<% if (editable || (!punchout && !fronto && !backo && !isNaN(dis_key)) && !reado ) {%>
<th><%=lcl_BES_stock%></th>
<% } %>
<th width="75"><%=lcl_BES_amount%></th>
<th width="100" <% = show_price ? "" : " style='display:none;'" %> ><%=lcl_BES_subtotal%></th>
</tr>
<!--hier komen de geselecteerde artikelen-->
</table>
<br>
<% if (details && !lower)
//if ((editable || lower) && !statusIs4)
{
var totaal = 0;
sql = "SELECT SUM (bi.bes_bestelling_item_aantal * bi.bes_bestelling_item_prijs)"
+ " FROM bes_bestelling_item bi"
+ " WHERE bes_bestelling_key = " + bes_bestelling.bes_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof) {
totaal = oRs(0).Value;
}
oRs.Close();
totaal = totaal - bes_bestelling.rfoBesKosten + bes_bestelling.rfoLevKosten;
%>
<table width=100% cellspacing=0>
<%
if (bes_bestelling.rfoBesKosten != 0 && show_price)
ROFIELDTR("fld", lcl_BES_order_discount, currency_pref + "&nbsp;" + num2curr(bes_bestelling.rfoBesKosten * -1));
if (bes_bestelling.rfoLevKosten != 0 && show_price)
ROFIELDTR("fld", lcl_BES_tpcosts, currency_pref + "&nbsp;" + num2curr(bes_bestelling.rfoLevKosten));
if (show_price)
ROFIELDTR("fld", lcl_total, currency_pref + "&nbsp;" + num2curr(totaal));
}
else
{
%>
<div id="total_list" align="right">
<table cellspacing=0>
<tr <% = show_price ? "" : " style='display:none;'" %> >
<td class="result"><b><%=lcl_total_cost%>&nbsp;<%=currency_pref%></b><input type='hidden' id='total' name='total' value=0></td>
<td class="result"></td>
<td class="result"></td>
<td width="100px" class="result" id='total_txt' align=right><%=num2curr(0)%></td>
</tr>
</table>
</div>
<%
}
BLOCK_END();
%>
</form>
</div> <!-- edit -->
</body>
</html>

View File

@@ -0,0 +1,84 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 15:32 $
File: show_kenmerkresult.asp
Description: showing result of selected properties
Parameters: one of the opdr_key or bes_key should be supplied. If both, opdr_key is used
srtdeel_key bestelling group
objectlength length obj
obj kenmerk information
Context: Called from kenmerk_fill.asp
Note:
*/ %>
<!-- #include file="../../cust/install.inc"-->
<!-- #include file="../Shared/funcodes.inc"-->
<!-- #include file="../Shared/xml_converter.inc" -->
<!-- #include file="../Shared/escape.inc"-->
<!-- #include file="../Shared/iface.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["Expand_Frame.js"]
});
var srtdeel_key = Request.QueryString('srtdeel_key').Count>0? parseInt(Request.QueryString('srtdeel_key'), 10):-1;
var result_src = "kenmerkresult.asp?srtdeel_key=" + srtdeel_key;
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(document).ready(
function (){
var obj = FcltMgr.dialogArguments();
}
);
</script>
</head>
<body id="editbody" onload="javascript:document.forms.u2.submit();">
<%
buttons = [{title: lcl_BES_preview_ok, icon: "opslaan.png", action: "FcltMgr.closeDetail(window, { isXmlOk: true})"},
{title: lcl_cancel, icon: "undo.png", action: "FcltMgr.closeDetail(window, { isXmlOk: false });"}
];
IFRAMER_HEADER(lcl_BES_preview, buttons);
%>
<div id="edit">
<form name="u2" action="<%=result_src%>" target="result" method="POST" onsubmit="return false;">
<%BLOCK_START();%>
<script type="text/javascript">
var obj = FcltMgr.dialogArguments().objReturn;
document.writeln("<input type='hidden' id='flex_length' name='flex_length' value='" + obj[0].length + "'>");
for (var i=0; i<obj[0].length; i++) {
document.writeln("<input type='hidden' id='flex0_" + i + "' name='flex0_" + i + "' value='" + obj[0][i].replace("'","''") + "'>");
document.writeln("<input type='hidden' id='flex1_" + i + "' name='flex1_" + i + "' value='" + escape(obj[1][i]) + "'>");
document.writeln("<input type='hidden' id='flex2_" + i + "' name='flex2_" + i + "' value='" + escape(obj[2][i]) + "'>");
document.writeln("<input type='hidden' id='flex3_" + i + "' name='flex3_" + i + "' value='" + escape(obj[3][i]) + "'>");
}
</script>
<table border="0">
<tr>
<td>
<iframe id='result' name='result'
src="../Shared/empty.asp" marginwidth="0" marginheight="0"
scrolling=no width="400px" height="380" frameborder='0' framespacing='0'
xxonload='FcltMgr.resized(window);'>
</iframe>
</td>
<td valign="top">
</td>
</tr>
</table>
<%BLOCK_END();%>
</form>
</div>
</body>
</html>

313
APPL/BES/bes_show_opdr.asp Normal file
View File

@@ -0,0 +1,313 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 28-09-09 22:34 $
File: bes_opdr.asp
Status: 10% (old style)
Description: Show voor bestellingen-opdrachten
Parameters: reado: als status ongelijk 1 of 2 mag er niet meer bewerk worden
TODO: reado zelf afleiden
urole
ordernr
Context:
Note:
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<%
FCLTHeader.Requires({ plugins: ["suggest","jQuery"],
js: ["wpos.js", "arrange.js"] })
var urole = getQParam("urole");
var ordernr = getQParamInt( 'ordernr');
var sql = "SELECT bes_bestelopdr_id, bes_bestelopdr_status "
+ " FROM bes_bestelopdr "
+ " WHERE bes_bestelopdr_key = " + ordernr;
oRs = Oracle.Execute( sql );
ordernr_id = oRs("bes_bestelopdr_id").value;
opdr_status = oRs("bes_bestelopdr_status").Value;
oRs.Close();
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function bes_opdr_print()
{
window.open("bes_opdr_xml.asp?opdr_key=<%=ordernr%>").focus;
}
function bes_opdr_mail() {
<%
var defemail="";
sql = " SELECT prs_bedrijf_email email"
+ " FROM prs_bedrijf b, bes_bestelopdr bo"
+ " WHERE b.prs_bedrijf_key = bo.prs_bedrijf_key"
+ " AND bo.bes_bestelopdr_key = " + ordernr;
oRs = Oracle.Execute( sql);
if (!oRs.eof)
{
defemail = oRs("email").value
}
%>
var sFeatures="dialogHeight:230px;dialogWidth:500px;status=no";
var subject = "&subject=" + escape("<%=lcl_BES_BesOrder + ' ' + bes_bestelopdr_prefix + ordernr_id%>");
var url="../shared/queuemail.asp?pcode=BES2MA&defemail=<%=defemail%>&key=<%=ordernr%>" + subject;
var mld = window.showModalDialog("../Shared/ModalForm.asp", url, sFeatures);
}
function bes_opdr_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "bes_edit_opdr.asp?urole=<%=urole%>&ordernr=<%=ordernr%>";
}
</script>
</head>
<%
maninfo = Request.QueryString("maninfo").Count() > 0;
var autfunction = '';
if (maninfo)
autfunction = 'WEB_BESBAC';
else
autfunction = 'WEB_BESBOR';
var authparams = user.checkAutorisation(autfunction);
reado = (Request('reado').Count > 0) ? 1 : 0;
oikey = -1;
okey = -1;
var str_srtdeel = '';
var str_aantal = '';
%>
<body id="showbody">
<%
var buttons = [];
if (opdr_status==1||opdr_status==2)
buttons.push({icon: "wijzigen.png", title: lcl_change, action:"bes_opdr_change()" });
buttons.push({ icon: "print.png", title: lcl_print, action: 'bes_opdr_print()' });
buttons.push({ icon: "email.png", title: lcl_noti_mld_email, action: 'bes_opdr_mail()' });
IFRAMER_HEADER(lcl_BES_Bes_details_pre+bes_bestelopdr_prefix+ordernr_id+lcl_BES_Bes_details_suf,buttons)
%>
<div id="show">
<form action=order_details.asp method=post name=u2 >
<% BLOCK_START("besTODO");
l_rfos = "";
comma = "";
// Welke bestelaanvragen worden door deze bestelopdracht afgehandeld?
sql = "SELECT DISTINCT bes_bestelling_key "
+ " FROM bes_bestelling_item bi, bes_bestelopdr_item boi "
+ " WHERE boi.bes_bestelopdr_item_key = bi.bes_bestelopdr_item_key "
+ " AND boi.bes_bestelopdr_key =" + ordernr;
oRs = Oracle.Execute(sql);
while(!oRs.eof) {
l_rfos += comma + oRs("bes_bestelling_key").Value;
comma = ", ";
oRs.MoveNext();
}
oRs.Close();
sql = "SELECT bd.prs_bedrijf_key"
+ ", bd.prs_bedrijf_naam"
+ ", d.ins_discipline_omschrijving"
+ ", s.ins_srtdeel_omschrijving"
+ ", coalesce(s.ins_srtdeel_eenheid,'')"
+ ", coalesce(boi.bes_bestelopdr_item_prijs,0)"
+ ", boi.bes_bestelopdr_item_aantal"
+ ", boi.bes_bestelopdr_item_prijs * boi.bes_bestelopdr_item_aantal"
+ ", boi.bes_bestelopdr_item_omschrijv"
+ ", boi.bes_bestelopdr_item_key"
+ ", coalesce(b.mld_adres_key_lev,-1),COALESCE(b.mld_adres_key_fac,-1)"
+ ", b.bes_bestelopdr_opmerking"
+ ", b.bes_bestelopdr_key"
+ ", (CASE b.bes_bestelopdr_status"
+ " WHEN 6"
+ " THEN (CASE COALESCE((SELECT bst.bes_bestelling_retourvan_key "
+ "FROM bes_bestelling bst "
+ " WHERE bst.bes_bestelling_key = bi.bes_bestelling_key), -1)"
+ " WHEN -1"
+ " THEN bs.bes_bestelopdrstatuses_omschr"
+ " ELSE '" + lcl_BES_collected + "'"
+ " END"
+ ")"
+ " ELSE bs.bes_bestelopdrstatuses_omschr"
+ " END) status"
+ ", " + prs_pers_string
+ ", p.prs_perslid_upper"
+ ", b.bes_bestelopdr_delivery_opmerk"
+ ", b.bes_bestelopdr_korting bes_korting"
+ ", b.bes_bestelopdr_levkosten lev_kosten"
+ " FROM bes_v_aanwezigdiscipline d, ins_srtgroep g, bes_disc_params bdp,"
+ " ins_srtdeel s, prs_bedrijf bd, bes_bestelopdr b, bes_bestelling_item bi, "
+ " bes_bestelopdr_item boi, bes_bestelopdrstatuses bs, prs_perslid p"
+ " WHERE d.ins_discipline_key = g.ins_discipline_key"
+ " AND d.ins_discipline_key = bdp.bes_ins_discipline_key"
+ " AND g.ins_srtgroep_key = s.ins_srtgroep_key"
+ " AND s.ins_srtdeel_key = bi.ins_srtdeel_key"
+ " AND bdp.bes_disc_params_module = 'BES'"
+ " AND boi.bes_bestelopdr_key = b.bes_bestelopdr_key"
+ " AND boi.bes_bestelopdr_item_key = bi.bes_bestelopdr_item_key"
+ " AND b.prs_bedrijf_key = bd.prs_bedrijf_key"
+ " AND b.prs_perslid_key = p.prs_perslid_key"
+ " AND b.bes_bestelopdr_status = bs.bes_bestelopdrstatuses_key"
+ " AND b.bes_bestelopdr_key = " + ordernr
+ " ORDER BY 2,3,4";
oRs = Oracle.Execute( sql );
bedr_key = -1;
srtdeel_key = -1;
srtdeel_cnt = 3;
b_name = "";
itemstr = "";
fitemstr = "";
fitemcnt = "";
fitemprs = "";
fitemdisc = "";
fitemdsc = "";
fiprice = "";
bi_keys = "";
total = 0;
bedr_cnt = 0;
order = 0;
min_o_i = 1;
max_o_i = 0;
bes_korting = 0;
lev_kosten = 0;
fitem_comp_name = "";
fitem_comps = "";
fitem_comp_cnt_str = "";
fitem_comp_cnt = "";
price = "";
while(!oRs.eof) {
if( bedr_key != oRs(0).value ) { // ga verder met een nieuw bedrijf
b_name = oRs(1).value;
lkey = oRs(10).value;
fkey = oRs(11).value;
oremark = oRs(12).value;
okey = oRs(13).value;
odelremark = oRs(17).value;
ROFIELDTR("fld", lcl_BES_RFOs, escape2(bes_bestelling_prefix + l_rfos));
ROFIELDTR("fld", lcl_BES_Supplier, escape2(b_name));
ROFIELDTR("fld", lcl_BES_Bes_status, oRs(14).value);
ROFIELDTR("fld", lcl_BES_Bes_Owner, escape2(oRs(15).value));
// PF: Waarom nu, en waarom hier??
bedr_key = oRs(0).value;
sql = "SELECT mld_adres_key, mld_adres_naam "
+ " FROM mld_adres"
+ " WHERE mld_adres_key="+lkey;
oRs1 = Oracle.Execute( sql );
ROFIELDTR("fld", lcl_BES_adres_lev, !oRs1.eof ? oRs1(1).value : '?');
sql = "SELECT mld_adres_key, mld_adres_naam "
+ " FROM mld_adres"
+ " WHERE mld_adres_key="+fkey;
oRs1 = Oracle.Execute( sql );
ROFIELDTR("fld", lcl_BES_adres_fac, !oRs1.eof ? oRs1(1).value : '?');
%><tr><td class="label"><label><%=lcl_remark%>:</label></td>
<td><textarea readonly class="fldtxt" id="txt"><%=escape2(oremark)%></textarea></td></tr>
<%
if ( odelremark != null ) {
%><tr><td class="label"><label><%=lcl_BES_comment%>:</label></td>
<td><textarea readonly class="fldtxt" id="txt"><%=escape2(odelremark)%></textarea></td></tr>
<%
}
BLOCK_END();
BLOCK_START("besTODO2");
%>
<tr>
<th><%=lcl_BES_discipline%></th>
<th><%=lcl_BES_srtdeel%></th>
<th align="right"><%=lcl_BES_amount%></th>
<th align="right"><%=lcl_BES_Price%></th>
</tr>
<%
} // if bedrijf-change
fitemdisc = oRs(2).value;
fitemstr = oRs(3).value + " (" + currency_pref + num2curr(oRs(5).value) + currency_suff + "/"
+ oRs(4).value + ")";
fitemcnt = oRs(6).value;
price = oRs(7).value;
fitemdsc = oRs(8).value;
oikey = oRs(9).value;
fiprice = oRs(5).value;
total += price;
bes_korting = oRs("bes_korting").value;
lev_kosten = oRs("lev_kosten").value;
max_o_i++;
%>
<tr>
<td><%=escape2(fitemdisc)%></td>
<td><%=escape2(fitemstr)%></td>
<td align=right><%=fitemcnt%><i><%=fitem_comp_cnt_str%></i></td>
<td align=right><%=num2curr(price)%></td>
</tr>
<%
oRs.MoveNext();
}
oRs.Close();
total = total - bes_korting + lev_kosten;
if( bedr_key != -1 ) {
%>
<% if (bes_korting > 0)
{ %>
<tr>
<td align=left colspan=3><b><%=lcl_BES_order_discount%></b></td>
<td align=right style="font-size:9pt">
<input type="text" style="text-align:right" readonly class='disabled' value='<%=num2curr(bes_korting * -1)%>'>
</td>
</tr>
<%
}
%>
<% if (lev_kosten > 0)
{ %>
<tr>
<td align=left colspan=3><b><%=lcl_BES_tpcosts%></b></td>
<td align=right style="font-size:9pt">
<input type="text" style="text-align:right" readonly class='disabled'
value='<%=num2curr(lev_kosten)%>'>
</td>
</tr>
<%
}
%>
<tr>
<td align=left colspan=3><b><%=lcl_total%></b></td>
<td align=right style="font-size:9pt">
<input type="text" style="text-align:right" readonly class='disabled' value='<%=num2curr(total)%>'>
</td>
</tr>
<%
}
%>
<% BLOCK_END();
%>
</form>
</div>
</body>
</html>

49
APPL/BES/bes_submit.asp Normal file
View File

@@ -0,0 +1,49 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 23-09-09 9:37 $
File: bes_submit.asp
Status: 90%
*/ %>
<%
DOCTYPE_Disable = 1;
%>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="rfo_approve_utils.inc" -->
<!-- #include file="rfo_utils.inc" -->
<%
/***** Get webform parameters *****/
var urole = getFParam("urole");
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
var bes_key = getFParamInt("bes_key");
/***** End get webform parameters *****/
var autfunction = "";
switch(urole)
{
case "bo": autfunction = "WEB_BESBOF"; // Accepteren alleen met backoffice rechten
break;
}
// De functie checkAutorisation(autfunction, true) geeft null terug indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction);
makeOrders(user_key, bes_key);
var opdr_key = getOrderKey(bes_key);
if (mld_order_autoprint == 1)
var result = {mld_order_autoprint: 1, opdr_key: opdr_key};
else
var result = {mld_order_autoprint: 0, opdr_key: opdr_key, message: lcl_BES_is_ordered_1 + bes_bestelling_prefix + bes_key + lcl_BES_is_ordered_2};
Response.Write(JSON.stringify(result));
%>

View File

@@ -0,0 +1,53 @@
<%@ LANGUAGE="JavaScript" %>
<% /*
$Revision: 1 $
$Modtime: 20-02-09 0:03 $
File: Bes/delFavourites.asp
Description: Verwijderd favorieten uit de favorieten lijst van een persoon
Parameters:
fav_key favoriet key van item die verwijderd moet worden uit de favorieten lijst
prs_key prs_perslid_key van persoon waarvan een item
aan een van zijn favorieten lijsten toegevoegd moet worden
Context: Binnen ModalForm sel_favourites.asp als gebruiker op het kruisje drukt
voor <20><>n van de items die in de favorietenlijst staan
Note:
*/ %>
<%=Session("EnableClientLogging")%>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<html>
<link rel=stylesheet href="<%=custpath%>/cust.css" type="text/css">
<head>
<script type="text/javascript" src="../LocalScripts/wpos.js"></script>
<script type="text/javascript" src="../LocalScripts/arrange.js"></script>
<script language="vbscript" src="../LocalScripts/num2curr.vbs"></script>
</head>
<body id="info" topmargin='0' onLoad="loaded()">
<script language=JavaScript>
function loaded()
{
//parent.favouriteDeleted();
}
</script>
<%
var fav_key = Request.QueryString('fav_key').Count>0? parseInt(Request.QueryString('fav_key'), 10):-1;
if (fav_key > 0) {
// Verwijder favoriet
sql = "DELETE bes_favoriet"
+ " WHERE bes_favoriet_key = " + fav_key;
Oracle.Execute(sql);
}
%>
</body>
</html>

387
APPL/BES/details.inc Normal file
View File

@@ -0,0 +1,387 @@
<% /*
$Revision: 1 $
$Modtime: 23-09-09 21:09 $
File: details.inc
Status: 10% (new style)
Description: Bepaalt een clientside array details_Items met bestelregels
Daar wordt clientside in sel_items_tab.js dan weer HTML van gemaakt
Parameters: veelal globalen
Context: Include van bes_edit_bestelling.asp
Note:
*/ %>
<script language="javascript">
function ItemToAdd(srtdeel_key, desc, srtgroep_desc, dis_desc, dis_key,
amount, price, eenheid, veelvoud, received, retour,
item_key, objFlex, staffelgroep, bestelminimum, opmerking)
{
this.srtdeel_key = srtdeel_key;
this.desc = desc;
this.srtgroep_desc = srtgroep_desc;
this.amount = amount;
this.dis_desc = dis_desc;
this.dis_key = dis_key;
this.price = parseFloat(price);
this.eenheid = eenheid;
this.veelvoud = veelvoud;
this.received = received;
this.retour = retour;
this.item_key = item_key;
this.objFlex = objFlex;
this.staffelgroep = staffelgroep;
this.bestelminimum = bestelminimum;
this.opmerking = opmerking;
}
details_Items = new Array();
</script>
<%
bes_bestelling = new Attributes_RFO();
details = false; // JGL: dit moet je lezen als: 'bestaande melding?'
editable = true;
details = (Request.QueryString("details").Count() > 0 ? true : false);
if (!details)
{
details = (Request.QueryString("key").Count() > 0 ? true : false);
}
if (!details)
{
details = bes_key > 0;
}
if (fronto && backo)
{
details = true;
editable = false;
}
if (details)
{
if (to_approve == true)
{
if( !Request.QueryString("to_approve").Count > 0 && Request.QueryString("to_approve") == '0') {
if (!canApprove(bes_key))
{
Response.Write(lcl_approve + ": " + lcl_no_auth);
Response.End();
}
}
backo = true;
fronto = true;
}
else
{
if( ((fronto && backo && func_enabled["WEB_BESBOF"] == null && func_enabled["WEB_BESBAC"] == null) ||
(!fronto && backo && func_enabled["WEB_BESBOF"] == null) ||
(fronto && !backo && func_enabled["WEB_BESFOF"] == null) ||
(!fronto && !backo && func_enabled["WEB_BESUSE"] == null) ||
(to_approve && func_enabled["WEB_BESUSE"] == null)) &&
(!statusinfo) // if from portal statusinfo you enter in readonly mode
)
{
__Log ("1");
Response.Write(lcl_no_auth);
Response.End();
}
}
if (bes_bestelling.initRFO(bes_key) == UNAUTHORIZED)
{
__Log ("initRFO");
Response.Write(lcl_no_auth);
Response.End();
}
if (backo)
{
if ( !fronto ) {
editable = (bes_bestelling.rfoStatus <= 6 ? true : false);
} else {
editable = false;
}
} else {
editable = (bes_bestelling.rfoStatus < 3 ? true : false);
}
// retrieve info about the objects
sql = "SELECT i.ins_srtdeel_key"
+ ", COALESCE(s.ins_srtdeel_nr,'')||' '||s.ins_srtdeel_omschrijving"
+ ", i.bes_bestelling_item_aantal"
+ ", d.ins_discipline_omschrijving"
+ ", g.ins_srtgroep_omschrijving"
+ ", d.ins_discipline_key"
+ (details && !lower
? ", COALESCE(i.bes_bestelling_item_prijs, 0)" // pak bestelling prijs inclusief kortingen
: ", COALESCE(s.ins_srtdeel_prijs, 0)") // pak catalogus prijs
+ ", COALESCE(s.ins_srtdeel_veelvoud, 1)"
+ ", b.bes_bestelling_opmerking"
+ ", COALESCE(i.bes_bestelling_item_aantalontv, 0)"
+ ", i.bes_bestelling_item_key"
+ ", s.ins_srtdeel_eenheid"
+ ", (SELECT COALESCE(ABS(SUM(bi.bes_bestelling_item_aantal)), 0)"
+ " FROM bes_bestelling b"
+ ", bes_bestelling_item bi"
+ " WHERE b.bes_bestelling_key = bi.bes_bestelling_key"
+ " AND b.bes_bestelling_retourvan_key = i.bes_bestelling_key) retour"
+ ", CASE bst.bes_staffeltabel_groep"
+ " WHEN 0"
+ " THEN 0" // artikelkorting
+ " WHEN 1"
+ " THEN bst.bes_staffeltabel_key" // groepskorting
+ " ELSE -1" // geen staffelkorting
+ " END staffelgroep"
+ ", COALESCE(s.ins_srtdeel_minimum, 0) bestelminimum"
+ ", s.ins_srtdeel_opmerking opmerking"
+ " FROM bes_bestelling_item i"
+ ", bes_v_aanwezigdiscipline d"
+ ", bes_disc_params bdp"
+ ", ins_srtdeel s"
+ ", ins_srtgroep g"
+ ", bes_bestelling b"
+ ", bes_v_item_prijs bp"
+ ", bes_staffeltabel bst"
+ " WHERE i.bes_bestelling_key = " + bes_bestelling.bes_key
+ " AND bp.bes_bestelling_item_key = i.bes_bestelling_item_key"
+ " AND d.ins_discipline_key = bdp.bes_ins_discipline_key"
+ " AND i.ins_srtdeel_key = s.ins_srtdeel_key"
+ " AND b.bes_bestelling_key = i.bes_bestelling_key"
+ " AND s.ins_srtgroep_key = g.ins_srtgroep_key"
+ " AND bst.bes_staffeltabel_key(+) = s.bes_staffeltabel_key"
+ " AND bdp.bes_disc_params_module = 'BES'"
+ " AND d.ins_discipline_key = g.ins_discipline_key"
+ " order by INS_SRTDEEL_NR, INS_SRTDEEL_UPPER";
oRs = Oracle.Execute(sql);
if (!backo && !fronto) // front end
{
bes_bestelling.rfoDisciplineText = "" + oRs(3);
bes_bestelling.rfoDisciplineKey = "" + oRs(5);
}
rfo_opmerking = "" + oRs(8);
%>
<script language="javascript">
var i = 0;
<%
while (!oRs.eof)
{
sql = " SELECT k.bes_kenmerk_key"
+ ", sk.bes_srtkenmerk_omschrijving"
+ ", sk.bes_srtkenmerk_kenmerktype"
+ ", r.bes_refsrtkenmerk_objectnaam"
+ ", r.bes_refsrtkenmerk_kolomnaam"
+ ", r.bes_refsrtkenmerk_kolomtxt"
+ ", r.fac_usrtab_key"
+ ", sk.bes_srtkenmerk_lengte"
+ ", sk.bes_srtkenmerk_dec"
+ ", sk.bes_srtkenmerk_nmin"
+ ", sk.bes_srtkenmerk_nmax"
+ ", (SELECT v.bes_kenmerkbesteli_waarde"
+ " FROM bes_kenmerkbesteli v"
+ " WHERE v.bes_bestelling_item_key = " + oRs("bes_bestelling_item_key").Value // 83 84
+ " AND v.bes_kenmerk_key = k.bes_kenmerk_key"
+ " AND v.bes_kenmerkbesteli_verwijder IS NULL) waarde"
+ ", k.bes_kenmerk_verplicht"
+ ", k.bes_kenmerk_default"
+ ", k.bes_srtinstallatie_key"
+ " FROM bes_srtkenmerk sk"
+ ", bes_kenmerk k"
+ ", bes_refsrtkenmerk r"
+ ", bes_kenmerkbesteli kbi"
+ " WHERE k.bes_kenmerk_verwijder IS NULL"
+ " AND kbi.bes_kenmerk_key = k.bes_kenmerk_key"
+ " AND kbi.bes_bestelling_item_key IN (" + oRs("bes_bestelling_item_key").Value + ")"
+ " AND k.bes_srtkenmerk_key = sk.bes_srtkenmerk_key"
+ " AND sk.bes_srtkenmerk_verwijder IS NULL"
+ " AND sk.bes_refsrtkenmerk_key = r.bes_refsrtkenmerk_key(+)"
+ " AND k.bes_kenmerk_type = 'I'"
+ " ORDER BY k.bes_kenmerk_volgnummer, sk.bes_srtkenmerk_omschrijving";
oRs1 = Oracle.Execute(sql);
%>
var objFlex = new Array;
objFlex[0] = new Array(); // bes_kenmerk_key
objFlex[1] = new Array(); // bes_kenmerkbestell_waarde
objFlex[2] = new Array(); // flexkenmerk omschrijving
objFlex[3] = new Array(); // flexkenmerkwaarde omschrijving
var objFlex = objFlex; // empty object
i = 0;
<%
while (!oRs1.eof)
{
var ktype = oRs1(2).Value;
if ( ktype == 'R' ) {
val = oRs1(11).Value;
var FAC_USRTAB_KEY = oRs1(6).Value;
var where = '';
if( oRs1(3).Value == "FAC_USRDATA" && FAC_USRTAB_KEY ) where = "FAC_USRTAB_KEY="+FAC_USRTAB_KEY;
if( reado ) where = (where?where+' and ':'')+oRs1(4).Value+"="+val;
sql = "select "+oRs1(4).Value+","+oRs1(5).Value+" from "+oRs1(3).Value
+ ( where != '' ? (" where " + where
+ (FAC_USRTAB_KEY ? " and fac_usrdata_verwijder IS NULL":""))
: "" )
+ " AND FAC_USRDATA_KEY = " + oRs1(11).Value
+ ((oRs1(3).Value == "FAC_USRDATA") ? " order by fac_usrdata_volgnr, 2":" order by 2");
oRs2 = Oracle.Execute(sql);
if (!oRs2.eof) {
%>
objFlex[0][i] = <% = parseInt(oRs1(0).Value, 10) %>;
objFlex[1][i] = "<% = escape_js(oRs1(11).Value) %>";
objFlex[2][i] = "<% = escape_js(oRs1(1).Value) %>";
objFlex[3][i] = "<% = escape_js(oRs2(1).Value) %>";
i++;
<%
}
}
else {
%>
objFlex[0][i] = <% = parseInt(oRs1(0).Value, 10) %>;
objFlex[1][i] = "<% = escape_js(oRs1(11).Value) %>";
objFlex[2][i] = "<% = escape_js(oRs1(1).Value) %>";
objFlex[3][i] = "<% = escape_js(oRs1(11).Value) %>";
i++;
<%
}
oRs1.moveNext();
}
%>
details_Items[" <% = oRs(10) %>"] = new ItemToAdd(<%= parseInt(oRs(0), 10)%>, // srtdeel_key
"<%= escape_js(oRs(1))%>", // desc
"<%= escape_js(oRs(4))%>", // srtgroep_desc
"<%= escape_js(oRs(3))%>", // dis_desc
<%= parseInt(oRs(5), 10)%>, // dis_key
<%= parseInt(oRs(2), 10)%>, // amount
<%= ""+oRs(6).Value %>, // price
"<%= escape_js(oRs(11))%>", // eenheid
<%= parseInt(oRs(7), 10)%>, // veelvoud
<%= parseInt(oRs(9), 10)%>, // received
<%= parseInt(oRs(12), 10)%>, // retour
<%= parseInt(oRs(10), 10)%>, // item_key
objFlex, // objFlex
<%= parseInt(oRs(13), 10)%>, // staffelgroep (-1=geen staffelgroep 0=artikelkorting >0=groepskorting met key van staffelgroep)
<%= parseInt(oRs(14), 10)%>, // bestelminimum
"<%= escape(oRs(15).value?oRs(15).value:"")%>"); // opmerking
<%
oRs.moveNext();
}
oRs.close();
%> </script> <%
}
else if (punchout) {
%> <script language="javascript">
<%
basketEmpty = false;
function punchNVL(nm, def)
{
if (Request.Form(nm + "["+i+"]").Count() == 0)
return def;
if (Request.Form(nm + "["+i+"]") == "")
return def;
return Request.Form(nm + "["+i+"]");
}
i = 1;
while (!basketEmpty) {
description = punchNVL("NEW_ITEM-DESCRIPTION", "Onbekend");
productGroup = punchNVL("NEW_ITEM-MATGROUP", "Onbekend");
quantity = parseInt(punchNVL("NEW_ITEM-QUANTITY", "-1"),10);
unitOfMeasure = punchNVL("NEW_ITEM-UNIT", '');
price = punchNVL("NEW_ITEM-PRICE", '');
eenheid = punchNVL("NEW_ITEM-UNIT", "Onbekend");
vendorProductNumber = punchNVL("NEW_ITEM-VENDORMAT", '');
vendor = punchNVL("NEW_ITEM-VENDOR", '');
if (quantity != -1) {
sql = "BEGIN bes_check_or_create_item "
+ " ( " + dis_key
+ " , '" + productGroup + "'"
+ " , " + escape_sql(description)
+ " , " + price
+ " , 19 "
+ " , '" + unitOfMeasure + "'"
+ " , '" + vendorProductNumber + "'"
+ " , -1 "
+ " , sysdate "
+ " , ''"
+ " , 1 ); END;";
Oracle.Execute(sql);
sql = "SELECT ins_srtdeel_key "
+ " FROM ins_srtdeel sd, ins_srtgroep sg "
+ " WHERE sg.ins_discipline_key = " + dis_key
+ " AND sg.ins_srtgroep_key = sd.ins_srtgroep_key "
+ " AND sg.ins_srtgroep_omschrijving = '" + productGroup + "'"
+ " AND sd.ins_srtdeel_upper = upper(" + escape_sql(description) + ")"
+ " AND sd.ins_srtdeel_prijs = " + price
+ " AND sd.ins_srtdeel_eenheid = '" + unitOfMeasure + "'"
+ " AND sd.ins_srtdeel_nr = '" + vendorProductNumber + "'"
+ " ORDER BY sd.ins_srtdeel_key DESC ";
oRs = Oracle.Execute(sql);
srtdeel_key = -1;
if (!oRs.eof)
{
srtdeel_key = oRs(0).Value;
}
%>
details_Items[<%=i%>] = new ItemToAdd(<%=srtdeel_key%>, // srtdeel_key
"<%=vendorProductNumber + " " + escape_js(description) %>", // desc
"<%=escape_js(productGroup)%>", // srtgroep_desc
"<%=escape_js(dis_descr)%>", // dis_desc
<%=dis_key%>, // dis_key
<%=quantity%>, // amount
"<%=price%>", // price
"<%=escape_js(eenheid)%>", // eenheid
"<%=unitOfMeasure%>", // veelvoud
0, // received
0, // retour
<%=i%>, // item_key
null, // objFlex
-1, // staffelgroep (-1=geen staffelgroep 0=artikelkorting >0=groepskorting met key van staffelgroep)
0, // bestelminimum
""); // opmerking
<%
i= i+1;
}
else {
basketEmpty = true;
}
}
%> </script> <%
}
if (to_approve == true)
editable = false;
if ( (bes_readonlyRFO && details) || statusinfo || (!fronto && !backo) || punchout)
editable = false;
bes_bestelling.setReadonly(editable ? false : true);
%>

240
APPL/BES/fav_items_list.asp Normal file
View File

@@ -0,0 +1,240 @@
<%@ LANGUAGE="JavaScript" %>
<% /*
$Revision: 1 $
$Modtime: 22-09-09 11:32 $
File: Bes/fav_items_list.asp
Description: Toont een lijst met items van een meegegeven favorieten lijst van een persoon
Parameters:
fav_name De meegegeven favorieten lijst waarvan de items lijst getoond moet worden
prs_key prs_perslid_key van persoon van de favorieten lijst
Context: Binnen sel_favourites.asp worden binnen een frame de items van de meegegeven favorieten lijst
getoond
Note:
*/ %>
<%=Session("EnableClientLogging")%>
<% Response.Expires = 0 %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/funcodes.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/date_sql.inc" -->
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript" src="../LocalScripts/wpos.js"></script>
<script type="text/javascript" src="../LocalScripts/arrange.js"></script>
<script language="vbscript" src="../LocalScripts/num2curr.vbs"></script>
<script type="text/javascript" src="fav_items_list.js"></script>
<script type="text/javascript" src="../LocalScripts/prototype.js"></script>
</head>
<script language=JavaScript>
lcl_BES_fac_items_inlist = "<%=lcl_BES_fac_items_inlist%>";
lcl_BES_cancelfav = "<%=lcl_BES_cancelfav%>"
</script>
<body id="info" topmargin='0'
onLoad="window.parent.favouritsListLoaded(selectedItems);">
<%
var disgroup_key = Request.QueryString('disgroup_key').Count>0? parseInt(Request.QueryString('disgroup_key'), 10):-1;
var prs_key = Request.QueryString('prs_key').Count>0? parseInt(Request.QueryString('prs_key'), 10):-1;
var recent = Request.QueryString('recent').Count>0;
var fav_name = Request.QueryString('fav_name').Count>0? Request.QueryString('fav_name'):"";
fav_name = replace(fav_name,"'","''")
%>
<form name="u2">
<table id="fl_items" cellspacing=0 cellpadding=0 border=0 width="100%">
<tr><td colspan=9 height=1 bgcolor="#ffffff"></td></tr>
<thead>
<tr>
<% if (!recent) { %>
<td width=1 bgcolor=#ffffff></td>
<th width=15></th>
<% } %>
<td width=1 bgcolor=#ffffff></td>
<th><%=lcl_BES_srtdeel%></th>
<td width=1 bgcolor=#ffffff></td>
<th><%=lcl_BES_fav_last_ordered%></th>
<td width=1 bgcolor=#ffffff></td>
</tr>
</thead>
<tbody>
<%
if (recent) {
sql = "SELECT srtdeel_key"
+ ", srtdeel_oms"
+ ", srtdeel_eenh"
+ ", disc_key"
+ ", srtgroep_key"
+ ", srtgroep_oms"
+ ", veelvoud"
+ ", prijs"
+ ", recent_date"
+ ", rc_date"
+ ", num_prop"
+ ", staffelgroep"
+ ", bestelminimum"
+ ", opmerking"
+ " FROM (SELECT d.ins_srtdeel_key srtdeel_key"
+ ", COALESCE(ins_srtdeel_nr,'')||' '||ins_srtdeel_omschrijving srtdeel_oms"
+ ", COALESCE(ins_srtdeel_eenheid,'') srtdeel_eenh"
+ ", g.ins_discipline_key disc_key"
+ ", g.ins_srtgroep_key srtgroep_key"
+ ", g.ins_srtgroep_omschrijving srtgroep_oms"
+ ", COALESCE(d.ins_srtdeel_veelvoud, 1) veelvoud"
+ ", d.ins_srtdeel_prijs prijs"
+ ", " + DatePart("MAX(bo.bes_bestelopdr_datum)", "DD-MM-YYYY") + " recent_date"
+ ", MAX(bo.bes_bestelopdr_datum) rc_date"
+ ", (SELECT COUNT(bes_kenmerk_key)"
+ " FROM bes_kenmerk k"
+ " WHERE (k.bes_srtinstallatie_key = " + disgroup_key + " AND k.bes_kenmerk_niveau LIKE 'D'"
+ " OR k.bes_srtinstallatie_key = g.ins_srtgroep_key AND k.bes_kenmerk_niveau LIKE 'G'"
+ " OR k.bes_srtinstallatie_key = d.ins_srtdeel_key AND k.bes_kenmerk_niveau LIKE 'S')"
+ " AND k.bes_kenmerk_verwijder IS NULL"
+ " AND k.bes_kenmerk_type = 'I') num_prop"
+ ", CASE bst.bes_staffeltabel_groep"
+ " WHEN 0"
+ " THEN 0" // artikelkorting
+ " WHEN 1"
+ " THEN bst.bes_staffeltabel_key" // groepskorting
+ " ELSE -1" // geen staffelkorting
+ " END staffelgroep"
+ ", COALESCE(d.ins_srtdeel_minimum, 0) bestelminimum"
+ ", d.ins_srtdeel_opmerking opmerking"
+ " FROM bes_bestelopdr bo"
+ ", bes_bestelopdr_item boi"
+ ", bes_bestelling_item bi"
+ ", bes_v_aanwezigsrtdeel d"
+ ", bes_v_aanwezigsrtgroep g"
+ ", bes_staffeltabel bst"
+ " WHERE bo.bes_bestelopdr_key = boi.bes_bestelopdr_key"
+ " AND d.ins_srtgroep_key = g.ins_srtgroep_key"
+ " AND boi.bes_bestelopdr_item_key = bi.bes_bestelopdr_item_key"
+ " AND bi.ins_srtdeel_key = d.ins_srtdeel_key"
+ " AND bst.bes_staffeltabel_key(+) = d.bes_staffeltabel_key"
+ " AND g.ins_discipline_key = " + disgroup_key
//+ " AND bo.prs_perslid_key = " + prs_key
+ " GROUP BY d.ins_srtdeel_key"
+ ", ins_srtdeel_nr"
+ ", ins_srtdeel_omschrijving"
+ ", ins_srtdeel_eenheid"
+ ", g.ins_discipline_key"
+ ", g.ins_srtgroep_key"
+ ", g.ins_srtgroep_omschrijving"
+ ", d.ins_srtdeel_veelvoud"
+ ", d.ins_srtdeel_prijs"
+ ", d.ins_srtdeel_key"
+ ", bst.bes_staffeltabel_groep"
+ ", bst.bes_staffeltabel_key"
+ ", d.ins_srtdeel_minimum"
+ ", d.ins_srtdeel_opmerking)"
+ " WHERE ROWNUM <= 20"
+ " ORDER BY rc_date DESC, srtdeel_oms"
}
else {
// hier komen de items uit de favorieten lijst
sql_recent_date = "(SELECT MAX (bo.bes_bestelopdr_datum)"
+ " FROM bes_bestelopdr bo"
+ ", bes_bestelopdr_item boi"
+ ", bes_bestelling_item bi"
+ " WHERE bo.bes_bestelopdr_key = boi.bes_bestelopdr_key"
+ " AND boi.bes_bestelopdr_item_key = bi.bes_bestelopdr_item_key"
+ " AND bi.ins_srtdeel_key = d.ins_srtdeel_key)"
sql = "SELECT d.ins_srtdeel_key srtdeel_key"
+ ", COALESCE(ins_srtdeel_nr,'')||' '||ins_srtdeel_omschrijving srtdeel_oms"
+ ", COALESCE(ins_srtdeel_eenheid,'') srtdeel_eenh"
+ ", g.ins_discipline_key disc_key"
+ ", g.ins_srtgroep_key srtgroep_key"
+ ", g.ins_srtgroep_omschrijving srtgroep_oms"
+ ", COALESCE(d.ins_srtdeel_veelvoud, 1) veelvoud"
+ ", d.ins_srtdeel_prijs prijs"
+ ", " + DatePart(sql_recent_date, "DD-MM-YYYY") + " recent_date"
//+ ", " + sql_recent_date + " rc_date"
+ ", bf.bes_favoriet_key fav_key"
+ ", (SELECT COUNT(bes_kenmerk_key)"
+ " FROM bes_kenmerk k"
+ " WHERE (k.bes_srtinstallatie_key = " + disgroup_key + " AND k.bes_kenmerk_niveau LIKE 'D'"
+ " OR k.bes_srtinstallatie_key = g.ins_srtgroep_key AND k.bes_kenmerk_niveau LIKE 'G'"
+ " OR k.bes_srtinstallatie_key = d.ins_srtdeel_key AND k.bes_kenmerk_niveau LIKE 'S')"
+ " AND k.bes_kenmerk_verwijder IS NULL"
+ " AND k.bes_kenmerk_type = 'I') num_prop"
+ ", CASE bst.bes_staffeltabel_groep"
+ " WHEN 0"
+ " THEN 0" // artikelkorting
+ " WHEN 1"
+ " THEN bst.bes_staffeltabel_key" // groepskorting
+ " ELSE -1" // geen staffelkorting
+ " END staffelgroep"
+ ", COALESCE(d.ins_srtdeel_minimum, 0) bestelminimum"
+ ", d.ins_srtdeel_opmerking opmerking"
+ " FROM bes_v_aanwezigsrtdeel d"
+ ", bes_v_aanwezigsrtgroep g"
+ ", bes_favoriet bf"
+ ", bes_staffeltabel bst"
+ " WHERE d.ins_srtgroep_key = g.ins_srtgroep_key"
+ " AND d.ins_srtdeel_key = bf.ins_srtdeel_key"
+ " AND bst.bes_staffeltabel_key(+) = d.bes_staffeltabel_key"
+ " AND bf.bes_favoriet_naam " + (fav_name==""?"IS NULL":"= '" + fav_name + "'")
+ " AND g.ins_discipline_key = " + disgroup_key
+ " AND bf.prs_perslid_key = " + prs_key
+ " ORDER BY 2"
}
oRs = Oracle.Execute(sql);
var teller = 0;
while (!oRs.eof) {
teller++;
%>
<script language=JavaScript>
AddItem('<%=recent?"":replace(fav_name, "'", "\\'")%>',
<%=replace(oRs.fields("srtdeel_key").value, "'", "\\'")%>,
'<%=replace(oRs.fields("srtdeel_oms").value, "'", "\\'")%>',
'<%=replace(oRs.fields("srtgroep_key").value, "'", "\\'")%>',
'<%=replace(oRs.fields("srtgroep_oms").value, "'", "\\'")%>',
<%=oRs.fields("veelvoud").value%>,
<%="" + oRs.fields("prijs").value%>,
'<%=replace(oRs.fields("srtdeel_eenh").value, "'", "\\'")%>',
<%=oRs.fields("num_prop").value%>,
<%=oRs.fields("staffelgroep").value%>,
<%=oRs.fields("bestelminimum").value%>,
'<%=escape_js(oRs.fields("opmerking").value)%>',
'<%=replace(oRs.fields("recent_date").value, "'", "\\'")%>',
<%=recent?1:0%>==1,
<%=recent?-1:oRs.fields("fav_key").value%>)
</script>
<%
oRs.MoveNext();
}
%>
</tbody>
<tfoot>
<tr>
<td width=1 bgcolor=#ffffff></td>
<th colspan="5" align=left name="item_in_list" id="item_in_list">
<%=teller + lcl_BES_fac_items_inlist%>
</th>
<td width=1 bgcolor=#ffffff></td>
</tr>
</tfoot>
</table>
<input type='hidden' id='itemsInList' name='itemsInList' value='<%=teller%>'>
</form>
</body>
</html>

190
APPL/BES/fav_items_list.js Normal file
View File

@@ -0,0 +1,190 @@
/*
$Revision: 1 $
$Modtime: 7-09-09 13:03 $
*/
// Array of currently favourites lines
var selectedItems = new Array();
var rowIndex = -1;
function FavItem(fav_name, srtdeel_key, srtdeel_oms, srtgroep_key, srtgroep_oms,
veelvoud, prijs, eenheid, num_prop, staffelgroep, bestelminimum, opmerking, recent_date, fav_key)
{
this.fav_name = fav_name;
this.srtdeel_key = srtdeel_key;
this.srtdeel_oms = srtdeel_oms;
this.srtgroep_key = srtgroep_key;
this.srtgroep_oms = srtgroep_oms;
this.veelvoud = veelvoud;
this.prijs = prijs;
this.eenheid = eenheid;
this.num_prop = num_prop;
this.staffelgroep = staffelgroep;
this.bestelminimum = bestelminimum;
this.opmerking = opmerking;
this.recent_date = recent_date;
this.fav_key = fav_key;
this.row = null;
}
function onClickItem(rowIndex)
{
// Wordt aangeroepen na <20><>n klik op een item
var item_in_array = window.parent.itemInArray(selectedItems[rowIndex].srtdeel_key);
if (!item_in_array) {
window.parent.addItemToArray(selectedItems[rowIndex].srtdeel_key,
selectedItems[rowIndex].srtdeel_oms,
selectedItems[rowIndex].srtgroep_key,
selectedItems[rowIndex].srtgroep_oms,
selectedItems[rowIndex].veelvoud,
selectedItems[rowIndex].prijs,
selectedItems[rowIndex].eenheid,
selectedItems[rowIndex].num_prop,
selectedItems[rowIndex].staffelgroep,
selectedItems[rowIndex].bestelminimum,
selectedItems[rowIndex].opmerking);
for (i=1; i < selectedItems[rowIndex].row.cells.length;i++) {
if (i%2!=0) selectedItems[rowIndex].row.cells(i).className = 'resultRed';
}
}
else {
window.parent.deleteItemFromArray(selectedItems[rowIndex].srtdeel_key);
for (i=1; i < selectedItems[rowIndex].row.cells.length;i++) {
if (i%2!=0) selectedItems[rowIndex].row.cells(i).className = 'result';
}
}
}
function onDblClickItem(rowIndex) {
// Wordt aangeroepen na dubbelklik op een item
//onClickItem(rowIndex); // wordt al uitgevoerd door de eerste klik van de dubbelklik
// Selecteer in ieder geval het dubbelgeklikte item
var item_in_array = window.parent.itemInArray(selectedItems[rowIndex].srtdeel_key);
if (!item_in_array) {
window.parent.addItemToArray(selectedItems[rowIndex].srtdeel_key,
selectedItems[rowIndex].srtdeel_oms,
selectedItems[rowIndex].srtgroep_key,
selectedItems[rowIndex].srtgroep_oms,
selectedItems[rowIndex].veelvoud,
selectedItems[rowIndex].prijs,
selectedItems[rowIndex].eenheid,
selectedItems[rowIndex].num_prop,
selectedItems[rowIndex].staffelgroep,
selectedItems[rowIndex].bestelminimum,
selectedItems[rowIndex].opmerking);
// Rood weergeven heeft geen zin meer
//for (i=1; i < selectedItems[rowIndex].row.cells.length;i++) {
// if (i%2!=0) selectedItems[rowIndex].row.cells(i).className = 'resultRed';
//}
}
window.parent.doSubmit();
}
function AddItem(fav_name, srtdeel_key, srtdeel_oms, srtgroep_key, srtgroep_oms,
veelvoud, prijs, eenheid, num_prop, staffelgroep, bestelminimum, opmerking, recent_date, recent, fav_key)
{
table = document.all.fl_items;
CreateRow(fav_name, srtdeel_key, srtdeel_oms, srtgroep_key, srtgroep_oms,
veelvoud, prijs, eenheid, num_prop, staffelgroep, bestelminimum, opmerking, recent_date, recent, fav_key);
}
function CreateRow(fav_name, srtdeel_key, srtdeel_oms, srtgroep_key, srtgroep_oms,
veelvoud, prijs, eenheid, num_prop, staffelgroep, bestelminimum, opmerking, recent_date, recent, fav_key)
{
rowIndex++;
table = document.all.fl_items;
selectedItems[rowIndex] = new FavItem(fav_name, srtdeel_key, srtdeel_oms, srtgroep_key, srtgroep_oms,
veelvoud, prijs, eenheid, num_prop, staffelgroep, bestelminimum, opmerking, recent_date, fav_key)
// Insert white line
tr = table.insertRow();
for (i=0; i<=9; i++)
{
cell = tr.insertCell();
cell.style.backgroundColor = "#ffffff";
cell.style.height = 1;
}
// Insert data rows
tr = table.insertRow();
tr.value = rowIndex;
selectedItems[rowIndex].row = tr;
if (!recent) {
// Create drop button
CreateVLine(tr);
cell = tr.insertCell();
cell.className = "result";
cell.align = "center";
cell.innerHTML = "<img src=../Pictures/order_cancel.gif OnClick=delFavourites("
+ rowIndex + ") style=cursor:hand>";
}
// Create srtdeel description field
CreateVLine(tr);
cell = tr.insertCell();
cell.className = "result";
cell.innerHTML = srtdeel_oms;
cell.onclick = function(){onClickItem(this.value)};
cell.ondblclick = function(){onDblClickItem(this.value)};
cell.value = rowIndex;
cell.align = 'left';
// Create recently date field
CreateVLine(tr);
cell = tr.insertCell();
cell.className = "result";
cell.innerHTML = recent_date;
cell.onclick = function(){onClickItem(this.value)};
cell.ondblclick = function(){onDblClickItem(this.value)};
cell.value = rowIndex;
cell.align = 'left';
}
function CreateVLine(tr)
{
cell = tr.insertCell();
cell.style.backgroundColor = "#ffffff";
cell.style.width = 1;
}
function delFavourites(index)
{
// Verwijder het aangeklikte item uit de lijst (de regel) en de favorieten lijst (bes_favoriet tabel)
if (!confirm(lcl_BES_cancelfav))
return;
if (selectedItems[index] != null)
{
fav_key = selectedItems[index].fav_key;
tr = selectedItems[index].row;
trIndex = tr.rowIndex;
document.all.fl_items.deleteRow(trIndex);
document.all.fl_items.deleteRow(trIndex-1);
selectedItems[index].row = null;
var item_in_array = window.parent.itemInArray(selectedItems[index].srtdeel_key);
if (item_in_array) {
window.parent.deleteItemFromArray(selectedItems[index].srtdeel_key);
}
selectedItems[index] = null;
document.all.itemsInList.value = document.all.itemsInList.value -1;
document.all.item_in_list.innerHTML = document.all.itemsInList.value + " " + lcl_BES_fac_items_inlist
var s = "delFavourites.asp?fav_key=" + fav_key;
new Ajax.Updater("flexEnd", s,
{ method:'get',
insertion: Insertion.Before,
onComplete: function(transport) { }
}
);
}
}

View File

@@ -0,0 +1,78 @@
<%@ language = "JavaScript" %>
<%
/*
$Revision: 1 $
$Modtime: 23-09-09 13:50 $
File: get_item_info_ajax.asp
Description: Ophalen van allerlei info van een bestelitem (ins_srtdeel)
Parameters: srtdeel_key: te zoeken bestelitem
Context:
Note:
*/ %>
<% DOCTYPE_Disable = 1;
%>
<!--#include file="../../cust/install.inc"-->
<!--#include file="../Shared/json2.js" -->
<%
var srtdeel_key = getQParam("srtdeel_key");
var sql ="SELECT ins_srtdeel_key, g.ins_srtgroep_key, ins_srtgroep_omschrijving"
+ ", COALESCE(ins_srtdeel_nr, '')||' '||ins_srtdeel_omschrijving srtdeel_text"
+ ", ins_srtdeel_image"
+ ", ins_srtdeel_eenheid"
+ ", ins_srtdeel_prijs"
+ ", COALESCE(ins_srtdeel_nr, ins_srtdeel_upper) nrofdeel"
+ ", b.prs_bedrijf_image_loc"
+ ", b.prs_bedrijf_details_loc"
+ ", ins_srtdeel_veelvoud"
+ ", (SELECT COUNT(bes_kenmerk_key)"
+ " FROM bes_kenmerk k"
+ " WHERE (k.bes_srtinstallatie_key = (SELECT isg.ins_discipline_key"
+ " FROM ins_srtgroep isg"
+ " WHERE isg.ins_srtgroep_key = g.ins_srtgroep_key)"
+ " AND k.bes_kenmerk_niveau LIKE 'D'"
+ " OR k.bes_srtinstallatie_key = g.ins_srtgroep_key"
+ " AND k.bes_kenmerk_niveau LIKE 'G'"
+ " OR k.bes_srtinstallatie_key = d.ins_srtdeel_key"
+ " AND k.bes_kenmerk_niveau LIKE 'S')"
+ " AND k.bes_kenmerk_verwijder IS NULL"
+ " AND k.bes_kenmerk_type = 'I') num_prop"
+ ", CASE bst.bes_staffeltabel_groep"
+ " WHEN 0"
+ " THEN 0" // artikelkorting
+ " WHEN 1"
+ " THEN bst.bes_staffeltabel_key" // groepskorting
+ " ELSE -1" // geen staffelkorting
+ " END staffelgroep"
+ ", COALESCE(d.ins_srtdeel_minimum, 0) bestelminimum"
+ ", d.ins_srtdeel_opmerking"
+ " FROM ins_srtdeel d"
+ ", ins_srtgroep g"
+ ", prs_bedrijf b"
+ ", bes_staffeltabel bst"
+ " WHERE d.prs_bedrijf_key = b.prs_bedrijf_key "
+ " AND bst.bes_staffeltabel_key(+) = d.bes_staffeltabel_key"
+ " AND ins_srtdeel_key = " + srtdeel_key
+ " AND g.ins_srtgroep_key = d.ins_srtgroep_key"
+ " AND (ins_srtdeel_vervaldatum IS NULL OR ins_srtdeel_vervaldatum > SYSDATE)";
oRs = Oracle.Execute(sql);
var result = {
srtdeel_key: srtdeel_key,
srtdeel_text: oRs("srtdeel_text").Value,
srtgroup_key: oRs("ins_srtgroep_key").Value,
srtgroup_text: oRs("ins_srtgroep_omschrijving").Value,
veelvoud: oRs("ins_srtdeel_veelvoud").Value||1,
price:oRs("ins_srtdeel_prijs").Value||0,
eenheid:oRs("ins_srtdeel_eenheid").Value||"",
num_prop:oRs("num_prop").Value,
staffelgroep:oRs("staffelgroep").Value,
bestelminimum:oRs("bestelminimum").Value,
opmerking:oRs("ins_srtdeel_opmerking").Value||""
};
Response.Write(JSON.stringify(result));
%>

50
APPL/BES/load_kenmerk.asp Normal file
View File

@@ -0,0 +1,50 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 23-09-09 17:23 $
File: BES/load_kenmerk.asp
Status: 95%
Description: Bestand die html code genereert voor de presentatie van de flexvelden
Parameters: urole Rol van de gebruiker (frontend, frontoffice, backoffice, management info)
bes_key Bestelling key
disc_key Catalogus key
srtgroup_key Groep key
srtdeel_key Item key
kenmerktype Kenmerk type (B, I)
reado Readonly
advanced Geadvanceerd
reqId Perslid key
ord Via ORD binnengekomen
Context: res_search.asp en res_edit.asp: Clientside wordt de gegenereerde html code m.b.v. $('div#xxx').load binnen een div geplaatst.
De functie is gedefinieerd in res_flexkenmerk.inc
Note:
TODO: Aanpassen voor gebruik door bes_bestelling.asp
*/ %>
<%
var DOCTYPE_Disable = true;
%>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="bes_flexkenmerk.inc" -->
<%
generateFlexKenmerkCode ({ urole: getQParam("urole"),
bes_key: getQParamInt("bes_key", -1), // Bestelling key
disc_key: getQParamInt("dis_key", -1), // Catalogus key
srtgroup_key: getQParamInt("srtgroup_key", -1), // Groep
srtdeel_key: getQParamInt("srtdeel_key", -1), // Item
kenmerktype: getQParam("kenmerktype", ""), // Kenmerktype
ord: getQParam("ord", 0) == 1, // Via ORD binnengekomen
res_key: getQParamInt("res_key", -1), // Reservering key
act_key: getQParamInt("act_key", -1), // Activiteit key
rsv_ruimte_key: getQParamInt("rsv_ruimte_key", -1), // Rsv ruimte key
serie: getQParam("serie", 0) == 1, // Serie reservering
reado: getQParam("reado", 0) == 1, // Readonly
advanced: getQParam("advanced", 0) == 1, // Geavanceerd
reqId: getQParamInt("reqId", -1), // Perslid key (!search && multiMode)
kenmerk_2col: false
});
%>

54
APPL/BES/opdr_accept.asp Normal file
View File

@@ -0,0 +1,54 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 23-09-09 14:02 $
File: opdr_confirm.asp
Status: 90%
*/ %>
<%
DOCTYPE_Disable = 1;
%>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/json2.js" -->
<%
/***** Get webform parameters *****/
var urole = getFParam("urole");
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
var opdr_key = getFParamInt("opdr_key");
var message = "";
/***** End get webform parameters *****/
var autfunction = "";
switch(urole)
{
case "bo": autfunction = "WEB_BESBOF";
break;
}
// De functie checkAutorisation(autfunction, true) geeft null terug indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction, true);
if (authparams)
{
sql = "UPDATE bes_bestelopdr"
+ " SET bes_bestelopdr_status = 4"
+ " WHERE bes_bestelopdr_key=" + opdr_key + " AND bes_bestelopdr_status = 3";
Oracle.Execute(sql);
oRs.Close();
}
else
{ // Geen autorisatie
message: lcl_no_auth;
}
var result = {message: message};
Response.Write(JSON.stringify(result));
%>

84
APPL/BES/opdr_delete.asp Normal file
View File

@@ -0,0 +1,84 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision: 1 $
$Modtime: 23-09-09 14:03 $
File: opdr_order_delete.asp
Status: 60%
*/ %>
<%
DOCTYPE_Disable = 1;
%>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/json2.js" -->
<%
/***** Get webform parameters *****/
var urole = getFParam("urole");
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi");
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
var opdr_key = getFParamInt("opdr_key");
var opdr_id = getFParam("opdr_id");
var message = "";
/***** End get webform parameters *****/
var autfunction = "";
switch(urole)
{
case "fe": autfunction = "WEB_BESUSE";
break;
case "fo": autfunction = "WEB_BESFOF";
break;
case "bo": autfunction = "WEB_BESBOF";
break;
}
// De functie checkAutorisation(autfunction, true) geeft null terug indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction, true);
if (authparams)
{
// VERWIJDEREN HEEFT OOK NIET GEWERKT IN 4.81
// TODO: Om de bestelopdracht te verwijderen moeten de referenties in bes_bestelling_items worden verwijderen
// en daarna de bestelopdracht items worden verwijderd. Daarna pas bestelopdracht verwijderen.
// ?? Dan ook nog status van bes_bestelling aanpassen??
// Verwijder bestelopdracht items
//sql = "DELETE bes_bestelopdr_item"
// + " WHERE bes_bestelopdr_key = " + opdr_key
//oRs = Oracle.Execute(sql);
//enz enz enz
// Verwijder bestelopdracht
sql = "DELETE bes_bestelopdr"
+ " WHERE bes_bestelopdr_key = " + opdr_key
+ " AND bes_bestelopdr_status IN (1, 2)";
oRs = Oracle.Execute(sql);
sql = "SELECT *"
+ " FROM bes_bestelopdr"
+ " WHERE bes_bestelopdr_key = " + opdr_key;
oRs = Oracle.Execute(sql);
if (oRs.eof)
{ // bestelopdracht is verwijderd.
message = lcl_BES_deleted_3 + opdr_id + lcl_BES_deleted_2;
}
else
{ // bestelopdracht is niet verwijderd.
message = lcl_BES_order_delete_failed;
}
oRs.Close();
}
else
{ // Geen autorisatie
message = lcl_BES_RFO_Del_Fails_Auth;
}
var result = {message: message};
Response.Write(JSON.stringify(result));
%>

286
APPL/BES/opdr_delivery.asp Normal file
View File

@@ -0,0 +1,286 @@
<%@language = "javascript" %>
<% /*
$Revision: 1 $
$Modtime: 30-09-09 16:55 $
*/ %>
<!-- #include file="../../cust/install.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/escape.inc" -->
<!--#include file="../shared/save2db.inc" -->
<%
FCLTHeader.Requires({ plugins: ["jQuery"],
js: ["./opdr_delivery.js"] })
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript">
lcl_BES_bad_value = '<%=lcl_BES_bad_value%>';
lcl_BES_exceed_value = '<%=lcl_BES_exceed_value%>';
</script>
<script language="vbscript" src="../LocalScripts/num2curr.vbs"></script></script>
<script type="text/javascript" >
jQuery(document).ready(function() {
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
function opdr_submit()
{
u2.submit();
return false;
}
</script>
</head>
<%
var opdr_key = getQParamInt( 'opdr_key');
var submitting = getQParam("submit","0")=="1";
if (submitting)
{
min_o_i = parseInt( Request('min_o_i'), 10 );
max_o_i = parseInt( Request('max_o_i'), 10 );
for ( i = min_o_i; i <= max_o_i; i++ ) {
ontv = parseInt(Request('cnt'+i),10);
oldcnt = parseInt(Request('amto'+i),10);
bokey = parseInt(Request('bokey'+i),10);
bikey = parseInt(Request('bi_key'+i),10);
if ( !isNaN(ontv) && ontv != 0 && !isNaN(oldcnt)) {
sql = "UPDATE BES_BESTELOPDR_ITEM B "
+ " SET BES_BESTELOPDR_ITEM_AANTALONTV = "
+ " COALESCE(BES_BESTELOPDR_ITEM_AANTALONTV,0) + " + ontv
+ " , BES_BESTELOPDR_ITEM_ONTVANGEN=SYSDATE"
+ " WHERE BES_BESTELOPDR_ITEM_KEY = " + bokey;
Oracle.Execute( sql );
sql = "UPDATE BES_BESTELLING_ITEM"
+ " SET BES_BESTELLING_ITEM_AANTALONTV = "
+ " COALESCE(BES_BESTELLING_ITEM_AANTALONTV,0) + " + ontv
+ " WHERE BES_BESTELLING_ITEM_KEY = " + bikey;
Oracle.Execute( sql );
}
}
var newremark = getFParam("notsat", "");
if ( newremark != "" ) {
var fields = [ { dbs: "BES_BESTELOPDR_DELIVERY_OPMERK", typ: "varchar", frm: "newremark" } ];
sql = buildUpdate("BES_BESTELOPDR", fields) + " BES_BESTELOPDR_KEY = " + opdr_key;
Oracle.Execute( sql );
}
%><script>FcltMgr.closeDetail(window, { warning: "TODO: De levering is geregistreerd" } );</script><%
Response.End;
}
var authparams = user.checkAutorisation("WEB_BESBOR"); // Dit is nog ongeacht de melding
var str_srtdeel = '';
var str_aantal = '';
var sql = "SELECT bes_bestelopdr_id "
+ " FROM bes_bestelopdr "
+ " WHERE bes_bestelopdr_key = " + opdr_key;
oRs = Oracle.Execute( sql );
// Moet eigenlijk altijd gevonden kunnen worden.
ordernr_id = oRs("bes_bestelopdr_id").value;
oRs.Close();
%>
<body id="editbody">
<%
var buttons = [{title: lcl_BES_complete, action: "complete();"},
{title: lcl_submit, icon: "opslaan.png", action: "opdr_submit();"}
];
IFRAMER_HEADER(lcl_BES_delvery_h_pref + bes_bestelopdr_prefix + ordernr_id + lcl_BES_delvery_h_suf, buttons);
%>
<div id="edit">
<form action="opdr_delivery.asp?opdr_key=<%=opdr_key%>&submit=1" method=post name=u2 onsubmit="return false;">
<%
BLOCK_START("besTODO");
sql = "SELECT DISTINCT b.bes_bestelopdr_key,"
+ " bd.prs_bedrijf_naam,"
+ " s.ins_srtdeel_omschrijving, "
+ "s.ins_srtdeel_eenheid, "
+ "boi.bes_bestelopdr_item_prijs,"
+ "bi.bes_bestelling_item_aantal,"
+ " s.ins_srtdeel_key,"
+ " bi.bes_bestelling_item_key,"
+ " boi.bes_bestelopdr_item_aantal,"
+ " boi.bes_bestelopdr_item_aantalontv,"
+ " m.mld_adres_bezoek_adres || ' ' ||"
+ " m.mld_adres_bezoek_postcode || ' ' ||"
+ " m.mld_adres_bezoek_plaats delivery_place, "
+ "b.bes_bestelopdr_opmerking,"
+ " bes.prs_perslid_key,"
+ " boi.bes_bestelopdr_item_key,"
+ " b.bes_bestelopdr_module,"
+ " s.ins_srtdeel_nr,"
+ " b.bes_bestelopdr_delivery_opmerk"
+ " FROM ins_tab_discipline d, "
+ " ins_srtgroep g,"
+ " ins_srtdeel s,"
+ " prs_bedrijf bd,"
+ " bes_bestelopdr b,"
+ " mld_adres m,"
+ " bes_bestelling_item bi,"
+ " bes_bestelopdr_item boi,"
+ " bes_bestelling bes"
+ " WHERE d.ins_discipline_key = g.ins_discipline_key AND" // PF: hier waren nog wat secundaire condities; nu verwijderd.
+ " g.ins_srtgroep_key = s.ins_srtgroep_key AND"
+ " s.ins_srtdeel_key = bi.ins_srtdeel_key AND"
+ " bi.bes_bestelling_key = bes.bes_bestelling_key AND"
+ " b.bes_bestelopdr_key = boi.bes_bestelopdr_key AND"
+ " bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key AND"
+ " b.prs_bedrijf_key = bd.prs_bedrijf_key AND"
+ " m.mld_adres_key(+)= b.mld_adres_key_lev AND"
+ " b.bes_bestelopdr_key = " + opdr_key
+ " ORDER BY bes_bestelopdr_delivery_opmerk"; // FSN#239
oRs = Oracle.Execute( sql );
okey = -1;
srtdeel_key = -1;
srtdeel_cnt = 3;
b_name = "";
itemstr = "";
fitemstr = "";
ficompstr = "";
fitemcnt = "";
fitemprs = "";
fitemstr1 = "";
fitemcnt1 = "";
fitemprs1 = "";
fitemta1 = "";
bi_keys = "";
bedr_cnt = 0;
order = 0;
min_o_i = -1;
oikey = -1;
bistart = 0;
count = 0;
oikey_cnt = 0;
mode = "";
fname = "";
while(!oRs.eof) {
if ( mode == "" ) {
mode = oRs("bes_bestelopdr_module").value;
}
if( oikey != oRs("bes_bestelopdr_item_key").value ) {
fitemstr = oRs("ins_srtdeel_omschrijving").value + " (" + currency_pref + num2curr(oRs("bes_bestelopdr_item_prijs").value||0)
+ currency_suff + "/" + (oRs("ins_srtdeel_eenheid").value||"") + ")";
fitemcnt = oRs("bes_bestelopdr_item_aantal").value;
fitemcnttv = oRs("bes_bestelopdr_item_aantalontv").value||0;
if( oikey != -1 ) {
%>
<input type='hidden' id='stop<%=oikey_cnt%>' name='stop<%=oikey_cnt%>' value='<%=bistart%>'>
<input type='hidden' id='bokey<%=oikey_cnt%>' name='bokey<%=oikey_cnt%>' value='<%=oikey%>'>
<%
oikey_cnt++;
}
oikey = oRs("bes_bestelopdr_item_key").value;
%>
<input type='hidden' id='start<%=oikey_cnt%>' name='start<%=oikey_cnt%>' value='<%=bistart%>'>
<%
catstr = oRs("ins_srtdeel_nr").value;
} else {
fitemstr = "";
fitemcnt = -1;
fitemcnttv = -1;
catstr = "";
}
pikey = oRs("prs_perslid_key").value;
bi_key = oRs("bes_bestelling_item_key").value;
if( okey != oRs("bes_bestelopdr_key").value ) {
b_name = oRs("prs_bedrijf_naam").value;
d_place = oRs("delivery_place").value;
oremark = oRs("bes_bestelopdr_opmerking").value;
odelremark = oRs("bes_bestelopdr_delivery_opmerk").value;
okey = oRs("bes_bestelopdr_key").value;
min_o_i = 0;
ROFIELDTR("fld", lcl_BES_Supplier, escape2(b_name));
%>
<tr><td class="label"><label for="notsat"><%=lcl_BES_not_satisfied%>&nbsp;<%=lcl_BES_your_comment%></label></td>
<td><textarea rows="3" style="width:90%"name="notsat" id="notsat"><%=escape2(odelremark)%></textarea></td>
</tr>
<% ROFIELDTR("fld", lcl_BES_adres_lev, escape2(d_place));%>
<% BLOCK_END();
BLOCK_START("besTODO2");
%>
<tr>
<th><%=lcl_BES_srtdeel_nr%></th>
<th><%=lcl_BES_srtdeel%></th>
<th><%=lcl_BES_total_order%></th>
<th align="right"><%=lcl_BES_delivered_so_far%></th>
<th align="right"><%=lcl_BES_delivered_now%></th>
<th align="right"><%=lcl_BES_remaining%></th>
</tr>
<%
}
%>
<tr>
<td><%=escape2(catstr)%></td>
<td><%=escape2(fitemstr)%><%=ficompstr%></td>
<td align='right' valign='top'><nobr>
<%if (fitemcnttv != -1){%>
<%=fitemcnt%>
<input type='hidden' id='amto<%=oikey_cnt%>' name='amto<%=oikey_cnt%>'
value='<%=fitemcnttv%>'>
<%}%>
</nobr>
</td>
<td align='right' valign='top'>
<%if (fitemcnttv != -1){%>
<%=fitemcnttv%>
<%}else{%>
0
<%}%>
</td>
<td align='right' valign='top'><NOBR>
<input type="text" maxlength=5 style="width:50px;text-align:right"
onBlur='checkInput();' id='cnt<%=count%>' name='cnt<%=count%>'
value=''>
<input type='hidden' id='bi_key<%=count%>' name='bi_key<%=count%>' value='<%=bi_key%>'>
</NOBR>
</td>
<td align='right' valign='top' id='remtd<%=count%>'>
<%=fitemcnt-fitemcnttv%>&nbsp;
<input type='hidden' id='rem<%=count%>' name='rem<%=count%>' value='<%=fitemcnt-fitemcnttv%>'>
</td>
</tr>
<%
oRs.MoveNext();
bistart++;
count++;
}
oRs.Close();
if( okey != -1 ) {
%>
<input type='hidden' id='stop<%=oikey_cnt%>' name='stop<%=oikey_cnt%>' value='<%=bistart%>'>
<input type='hidden' id='bokey<%=oikey_cnt%>' name='bokey<%=oikey_cnt%>' value='<%=oikey%>'>
<%
}
BLOCK_END();
%>
<input type='hidden' id='min_o_i' name='min_o_i' value='<%=min_o_i%>'>
<input type='hidden' id='max_o_i' name='max_o_i' value='<%=oikey_cnt%>'>
<input type='hidden' id='count' name='count' value='<%=count%>'>
<input type='submit' style="width:0">
</form>
</div>
</body>
</html>

56
APPL/BES/opdr_delivery.js Normal file
View File

@@ -0,0 +1,56 @@
/*
$Revision: 1 $
$Modtime: 30-09-09 16:52 $
*/
function BI(bikey, pkey, akey)
{
this.bikey = bikey;
this.pkey = pkey;
this.akey = akey;
}
function isGoodNumber(str, checkInteger)
{
var anum=/(^-?\d+$)|(^-?\d+\.\d*$)|(^-?\d*\.\d+$)/
if ( checkInteger ) {
anum=/(^-?\d+$)/
}
return anum.test(str);
}
function checkInput()
{
obj = event.srcElement;
val = obj.value;
// alert ("remaining = " + remaining);
// alert ("val = " + val);
// return false;
i = obj.id.substring(3);
remaining = parseInt(document.all['rem'+i].value,10);
if( val == "" || val == 0 || (!isNaN(val) && isGoodNumber(val, true) &&
((remaining > 0 && parseInt(val,10) >= 0) || (remaining < 0 && parseInt(val,10) <= 0)))) {
if( val == "" ) val = 0;
if( (remaining > 0 && val > remaining) || (remaining < 0 && val < remaining) ){
alert (lcl_BES_exceed_value);
obj.focus();
return false;
}
return true;
}
alert(lcl_BES_bad_value);
obj.focus();
return false;
}
function complete()
{
var cnt = document.u2.count.value;
for (i = 0; i < cnt; i ++)
{
rem_value = document.u2['rem'+i].value;
document.u2['cnt'+i].value = rem_value;
}
}

358
APPL/BES/opdr_list.inc Normal file
View File

@@ -0,0 +1,358 @@
<% /*
$Revision: 1 $
$Modtime: 29-09-09 15:27 $
File: opdr_list.inc
Description: Show an overview of orders in list-form,
which meets with the given requirements
Parameters:
urole user role (only bo until now)
outputmode behave in an output mode, print to 0 = screen, 1 = printer, 2 = excel, etc.
showall show all orders which meets with the given requirements
opdr_key search for orders with the given order key
catalogus_key search for orders with the given catalogus (discipline) key
besgroep_key search for orders with the given besgroep (srtgroup) key
item_key search for orders with the given item (srtdeel) key
supplier_key search for orders with the given supplier key
requestor_key search for orders for selected requestor
dep_key search for orders for the selected department
kp search for orders with the given account text in account description
item search for orders with the given account text in item description
besopdrstafg search for orders with the status besopdrstafg
besopdrstnew search for orders with the status besopdrstnew
besopdrstbeh search for orders with the status besopdrstbeh
besopdrstbes search for orders with the status besopdrstbes
besopdrstbev search for orders with the status besopdrstbev
besopdrstlev search for orders with the status besopdrstlev
besopdrstver search for orders with the status besopdrstver
Context: Search action from opdr_search.asp form
Note:
*/ %>
<% Response.Expires = 0; %>
<!-- #include file="../Shared/escape.inc" -->
<!-- #include file="../Shared/discx3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: ["../BES/opdr_list.js"]
});
function opdr_list (pautfunction, params)
{ // VALIDATE AND PREPARE
// Als een parameter niet gedefinieerd of null is, dan doet-ie niks
// anders wordt die verondersteld een zinvolle waarde te hebben
// NB: -1 is vaak geen zinvolle waarde; null had het dan moeten zijn!
// Valid and supported parameters are:
// params.urole : the usuals two-letter lowercase string
// params.outputmode : print to 0 = screen, 1 = printer, 2 = excel, etc.
// params.showall : boolean (true | false)
// params.opdr_key : key
// params.catalogus_key : key
// params.besgroep_key : key
// params.item_key : key
// params.supplier_key : key
// params.requestor_key : key
// params.dep_key : key
// params.kp : wildcard string
// params.item : wildcard string
// params.besopdrstafg : boolean (true | false)
// params.besopdrstnew : boolean (true | false)
// params.besopdrstbeh : boolean (true | false)
// params.besopdrstbes : boolean (true | false)
// params.besopdrstbev : boolean (true | false)
// params.besopdrstlev : boolean (true | false)
// params.besopdrstver : boolean (true | false)
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(pautfunction);
var urole = params.urole;
var fronto = (urole == "fo");
var backo = (urole == "bo");
var minfo = (urole == "mi"); // NOT APPLICABLE?
var frontend = (urole == "fe" || (!fronto & !backo & !minfo));
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var print = (outputmode == 1);
var excel = (outputmode == 2);
var showall = params.showall;
var opdr_key = params.opdr_key;
var catalogus_key = params.catalogus_key;
var besgroep_key = params.besgroep_key;
var item_key = params.item_key;
var supplier_key = params.supplier_key;
var requestor_key = params.requestor_key;
var dep_key = params.dep_key;
var kp = params.kp;
var item = params.item;
var besopdrstafg = params.besopdrstafg;
var besopdrstnew = params.besopdrstnew;
var besopdrstbeh = params.besopdrstbeh;
var besopdrstbes = params.besopdrstbes;
var besopdrstbev = params.besopdrstbev;
var besopdrstlev = params.besopdrstlev;
var besopdrstver = params.besopdrstver;
var showopdrstatus = "";
if (besopdrstafg) showopdrstatus = (showopdrstatus == ""? "" : showopdrstatus + ",") + "1";
if (besopdrstnew) showopdrstatus = (showopdrstatus == ""? "" : showopdrstatus + ",") + "2";
if (besopdrstbeh) showopdrstatus = (showopdrstatus == ""? "" : showopdrstatus + ",") + "3";
if (besopdrstbes) showopdrstatus = (showopdrstatus == ""? "" : showopdrstatus + ",") + "4";
if (besopdrstbev) showopdrstatus = (showopdrstatus == ""? "" : showopdrstatus + ",") + "5";
if (besopdrstlev) showopdrstatus = (showopdrstatus == ""? "" : showopdrstatus + ",") + "6";
if (besopdrstver) showopdrstatus = (showopdrstatus == ""? "" : showopdrstatus + ",") + "7";
%>
<html>
<head>
<%
FCLTHeader.Generate({ outputmode: outputmode });
if (excel)
{
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader ("content-disposition", "inline; filename=dynamic.xls");
}
%>
<script type="text/javascript">
// Text strings used by bes_list.js
urole = "<%=urole%>";
lcl_BES_BesOrder = "<%=lcl_BES_BesOrder%>";
lcl_BES_delete_3 = "<%=lcl_BES_delete_3%>";
lcl_BES_delete_2 = "<%=lcl_BES_delete_2%>";
lcl_BES_RFO_Del_Fails_Auth = "<%=lcl_BES_RFO_Del_Fails_Auth%>";
lcl_BES_order_delete_failed = "<%=lcl_BES_order_delete_failed%>";
lcl_BES_order_reject = "<%=lcl_BES_order_reject%>";
lcl_BES_confirm_confirm = "<%=lcl_BES_confirm_confirm%>";
lcl_BES_delvery_h_pref = "<%=lcl_BES_delvery_h_pref%>";
bes_bestelopdr_prefix = "<%=bes_bestelopdr_prefix%>";
lcl_BES_delvery_h_suf = "<%=lcl_BES_delvery_h_suf%>";
</script>
</head>
<body id="listbody">
<%
// Distinct omdat een bes_bestelopdr over meerdere bes_bestelling_itmes kan gaan
sql = "SELECT DISTINCT b.bes_bestelopdr_key"
+ ", bes_bestelopdr_datum datum"
+ ", (CASE b.bes_bestelopdr_status"
+ " WHEN 6"
+ " THEN (CASE COALESCE(bst.bes_bestelling_retourvan_key, -1)"
+ " WHEN -1"
+ " THEN s.bes_bestelopdrstatuses_omschr"
+ " ELSE '" + lcl_BES_collected + "'"
+ " END)"
+ " ELSE s.bes_bestelopdrstatuses_omschr"
+ " END) statusomschrijving"
+ ", be.prs_bedrijf_naam"
+ ", bes_bestelopdr_items(b.bes_bestelopdr_key) tooltip"
+ ", b.bes_bestelopdr_status status"
+ ", ma.mld_adres_naam afleveradres"
+ ", bst.bes_bestelling_leverdatum leverdatum"
+ ", b.bes_bestelopdr_id"
+ ", be.prs_bedrijf_order_adres"
+ " FROM bes_bestelopdr b"
+ ", bes_bestelopdrstatuses s"
+ ", prs_bedrijf be"
+ ", mld_adres ma"
+ ", bes_bestelopdr_item boi"
+ ", bes_bestelling_item bi"
+ ", bes_bestelling bst"
+ ", ins_srtdeel isd"
+ ", ins_srtgroep isg"
+ ", bes_v_aanwezigdiscipline bid"
+ ", prs_perslid pp, prs_afdeling d, prs_v_afdeling_boom boom"
+ ", alg_locatie l, alg_district di"
+ " WHERE be.prs_bedrijf_key = b.prs_bedrijf_key "
+ " AND b.bes_bestelopdr_status = s.bes_bestelopdrstatuses_key"
+ " AND ma.mld_adres_key=b.mld_adres_key_lev"
+ " AND bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key"
+ " AND bst.bes_bestelling_key = bi.bes_bestelling_key "
+ " AND boi.bes_bestelopdr_key = b.bes_bestelopdr_key "
+ " AND bi.ins_srtdeel_key = isd.ins_srtdeel_key"
+ " AND isd.ins_srtgroep_key = isg.ins_srtgroep_key"
+ " AND isg.ins_discipline_key = bid.ins_discipline_key"
+ " AND pp.prs_perslid_key = bst.prs_perslid_key"
+ " AND pp.prs_afdeling_key = d.prs_afdeling_key"
+ " AND boom.prs_afdeling_key = d.prs_afdeling_key"
+ " AND ma.alg_locatie_key = l.alg_locatie_key(+)"
+ " AND l.alg_district_key = di.alg_district_key(+)";
if (opdr_key)
{
sql += " AND b.bes_bestelopdr_id LIKE '" + opdr_key +"%'";
}
else // Niet op opdrachtnummer gezocht, maar op andere criteria
{
if (requestor_key) // opdracht behorende bij aanvrager van bestelling
sql += " AND pp.prs_perslid_key =" + requestor_key;
if (dep_key)
{ // opdrachten van aanvragers uit deze afdelingen
sql += " AND pp.prs_afdeling_key = " + dep_key;
}
if (kp)
{
sql += " AND bst.prs_kostenplaats_key IN"
+ " (SELECT prs_kostenplaats_key"
+ " FROM prs_kostenplaats"
+ " WHERE prs_kostenplaats_upper LIKE '" + replace(kp, "'", "''") + "%')";
}
if (item)
sql += " AND isd.ins_srtdeel_upper LIKE UPPER('%" + replace(item, "'", "''") + "%')";
// AND b.bes_bestelopdr_key IN (...item_key...) hoef niet gebruikt te worden omdat geen bedragen worden getoond.
if (item_key)
sql += " AND isd.ins_srtdeel_key = " + item_key;
else if (besgroep_key)
sql += " AND isg.ins_srtgroep_key = " + besgroep_key;
else if (catalogus_key)
sql += " AND bid.ins_discipline_key = " + catalogus_key;
__Log("showopdrstatus = " + showopdrstatus);
if (showopdrstatus != "")
//sql += " AND bst.bes_bestelling_status IN (" + showopdrstatus + ")"
sql += " AND b.bes_bestelopdr_status IN (" + showopdrstatus + ")"
if (supplier_key)
sql += " AND be.prs_bedrijf_key = " + supplier_key;
}
// apply 3D authorization to the locations and to the to the organisations (both ALG and PRS)
// merk op: CONN heeft bijvoorbeeld verschillend voor PRS niveau en UWVA verschillen voor ALG_niveau
// We ondersteunen alleen district en locatie niveau!
sql = discx3d(sql,
"bid.ins_discipline_key",
"di.alg_regio_key",
"l.alg_district_key",
"l.alg_locatie_key",
"", // UNSUPPORTED_GEBOUW
"", // UNSUPPORTED_VERDIEPING
"", // UNSUPPORTED_RUIMTE
"boom.prs_bedrijf_key",
"boom.prs_afdeling_key",
autfunction,
catalogus_key? catalogus_key : '',
2);
sql += " ORDER BY statusomschrijving, be.prs_bedrijf_naam, b.bes_bestelopdr_key DESC";
/**********************************
* Callback functies ResultsetTable
*********************************/
function fnrowClass(oRs)
{
var class1 = '';
var m_stat = parseInt(oRs("status").Value);
// status 2 wordt niet weergegeven
//if (m_stat == 2) class1 = 'nieuw';
//return class1;
}
function fnrowData(oRs)
{
var opdrId = oRs("bes_bestelopdr_id").Value;
// bReado = (m_stat==1 || m_stat==2)?'1':'0';
var data = { opdrId: opdrId};
return JSON.stringify(data);
}
function hasWriteRights(opdrKey)
{
sql = "SELECT aut.fac_get_prs_same_level (" + user_key + ", bst.prs_perslid_key) same_level"
+ ", fac_gebruiker_prs_level_write write_level"
+ " FROM bes_bestelopdr bo"
+ ", bes_bestelopdr_item boi"
+ ", bes_bestelling_item bi"
+ ", bes_bestelling bst"
+ ", fac_v_webgebruiker w"
+ ", ins_srtdeel isd"
+ ", ins_srtgroep isg"
+ " WHERE bo.bes_bestelopdr_key = " + opdrKey
+ " AND bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key"
+ " AND bst.bes_bestelling_key = bi.bes_bestelling_key"
+ " AND boi.bes_bestelopdr_key = bo.bes_bestelopdr_key"
+ " AND w.prs_perslid_key = " + user_key
+ " AND w.fac_functie_key = " + authparams.autfunctionkey
+ " AND isd.ins_srtdeel_key = bi.ins_srtdeel_key"
+ " AND isg.ins_srtgroep_key = isd.ins_srtgroep_key"
+ " AND w.ins_discipline_key = isg.ins_discipline_key"
+ " AND ROWNUM = 1";
oRs2 = Oracle.Execute(sql);
var same_level = oRs2("same_level").value;
var write_level = oRs2("write_level").value;
oRs2.close();
return write_level <= same_level;
}
function fnrowActionEnabler(oRs)
{
var opdrKey = oRs("bes_bestelopdr_key").Value;
var opdrStatus = oRs("status").Value;
var opdrConfirm = oRs("prs_bedrijf_order_adres").Value == null; // Alleen als er nog geen auto-confirm is geweest
var opdrWrite = hasWriteRights(opdrKey);
var eEdit = true;
var eDeliver = opdrWrite && (opdrStatus == 4 || opdrStatus == 5);
var eDelete = opdrWrite && (opdrStatus == 1 || opdrStatus == 2);
var eReject = opdrWrite && opdrStatus == 2;
var eConfirm = opdrWrite && (opdrStatus == 3 && opdrConfirm);
var data = {eEdit: eEdit, eDeliver:eDeliver, eDelete:eDelete, eReject:eReject, eConfirm:eConfirm};
return data;
}
function fncolBesOpdrId(oRs)
{
return bes_bestelopdr_prefix + oRs.fields("bes_bestelopdr_id").Value;
}
var rst = new ResultsetTable({keyColumn: "bes_bestelopdr_key",
ID: "opdrtable",
//rowClass: fnrowClass,
rowData: fnrowData,
rowActionEnabler: fnrowActionEnabler,
sql: sql,
filterParams: params,
outputmode: outputmode,
title: lcl_BES_Bestelling_Orders,
showAll: showall
});
// Kolommen
rst.addColumn(new Column({caption: lcl_ord_order_num, content: fncolBesOpdrId}));
rst.addColumn(new Column({caption: lcl_BES_add_date, content: "datum", datatype: "date"}));
rst.addColumn(new Column({caption: lcl_BES_Supplier, content: "prs_bedrijf_naam", tooltip: "tooltip"}));
rst.addColumn(new Column({caption: lcl_BES_del_place, content: "afleveradres"}));
rst.addColumn(new Column({caption: lcl_BES_deli_date, content: "datum", datatype: "date"}));
rst.addColumn(new Column({caption: lcl_BES_Bes_status, content: "statusomschrijving"}));
// Acties
rst.addAction({action: "opdrEdit", caption: lcl_edit, isDefault: true});
rst.addAction({action: "opdrDelete", caption: lcl_delete, enabler: "eDelete"});
rst.addAction({action: "opdrReject", caption: lcl_reject, enabler: "eReject", multi: true});
rst.addAction({action: "opdrConfirm", caption: lcl_BES_confirm, enabler: "eConfirm", multi: true});
rst.addAction({action: "opdrDeliver", caption: lcl_BES_delivery, enabler: "eDeliver"});
var count = rst.processResultset();
%>
<iframe src="../Shared/empty.asp" frameborder="0" id="hidFrame" style="display:none"></iframe>
</body>
</html>
<%
}
%>

81
APPL/BES/opdr_list.js Normal file
View File

@@ -0,0 +1,81 @@
/*
$Revision: 1 $
$Modtime: 28-09-09 22:36 $
*/
function opdrEdit(row)
{
var opdr_key = row.ROWKEY;
var opdrData = eval('(' + row.ROWDATA + ')');
if (opdrData)
{
url = "Appl/BES/bes_opdr.asp?ordernr=" + opdr_key;
FcltMgr.openDetail(url, lcl_BES_BesOrder + ' ' + opdr_key);
}
}
function opdrDelete(row, isMulti)
{
var opdr_key = row.ROWKEY;
var opdrData = eval('(' + row.ROWDATA + ')');
if (opdrData)
{
var opdrId = opdrData.opdrId;
if(isMulti || confirm(lcl_BES_delete_3 + opdrId + lcl_BES_delete_2) )
{
$(row).addClass('dirty');
$.post("opdr_delete.asp",
{ urole: urole,
opdr_key: opdr_key,
opdr_id: opdrId },
FcltCallback,
"json");
}
}
}
function opdrRejectCallback(data)
{
if (data.rejected == 1)
$(row).addClass('dirty');
}
function opdrReject(row)
{
var opdr_key = row.ROWKEY;
url = "../BES/opdr_reject.asp?opdr_key=" + opdr_key + "&urole=" + urole;
FcltMgr.openModalDetail(url, lcl_BES_order_reject + opdr_key, {callback: opdrRejectCallback});
}
function opdrConfirm(row, isMulti)
{
var opdr_key = row.ROWKEY;
var opdrData = eval('(' + row.ROWDATA + ')');
if (opdrData)
{
var opdrId = opdrData.opdrId;
if (isMulti || confirm(lcl_BES_confirm_confirm + opdrId + '?'))
{
$(row).addClass('dirty');
$.post("opdr_confirm.asp",
{ urole: urole,
opdr_key: opdr_key },
FcltCallback,
"json");
}
}
}
function opdrDeliver(row)
{
var opdr_key = row.ROWKEY;
var opdrData = eval('(' + row.ROWDATA + ')');
if (opdrData)
{
var opdrId = opdrData.opdrId;
$(row).addClass('dirty');
url = "opdr_delivery.asp?opdr_key=" + opdr_key + "&urole=" + urole;
FcltMgr.openModalDetail(url, lcl_BES_delvery_h_pref + bes_bestelopdr_prefix + opdrId + lcl_BES_delvery_h_suf, {width: 800});
}
}

Some files were not shown because too many files have changed in this diff Show More