119 lines
4.3 KiB
Plaintext
119 lines
4.3 KiB
Plaintext
<%@language = "javascript" %>
|
|
<%
|
|
/* $Revision$
|
|
$Id$
|
|
|
|
File: mld_workflow_expression.asp
|
|
Description: Detailscherm om expressie te bouwen
|
|
Parameters: step_key (REQUIRED)
|
|
Context:
|
|
Note: Modal popup
|
|
|
|
*/ %>
|
|
<!-- #include file="../Shared/common.inc" -->
|
|
<!-- #include file="../Shared/iface.inc" -->
|
|
<!-- #include file="../mld/mld.inc" -->
|
|
<!-- #include file="../mld/mld_flexkenmerk.inc" -->
|
|
|
|
<%
|
|
FCLTHeader.Requires({ plugins: ["jQuery", "suggest"],
|
|
js: ["jQuery-ui.js", "modal_kenmerken.js"]
|
|
})
|
|
|
|
var step_key = getQParamInt("step_key");
|
|
|
|
var sql = "SELECT ms.mld_stdmelding_key,"
|
|
+ " md.ins_discipline_key,"
|
|
+ " md.ins_srtdiscipline_key"
|
|
+ " FROM mld_workflowstep ws,"
|
|
+ " mld_stdmelding ms,"
|
|
+ " mld_discipline md"
|
|
+ " WHERE ws.mld_stdmelding_key = ms.mld_stdmelding_key"
|
|
+ " AND md.ins_discipline_key = ms.mld_ins_discipline_key"
|
|
+ " AND ws.mld_workflowstep_key = " + step_key;
|
|
var oRs = Oracle.Execute(sql);
|
|
var srtdisc_key = oRs("ins_srtdiscipline_key").Value;
|
|
var disc_key = oRs("ins_discipline_key").Value;
|
|
var stdm_key = oRs("mld_stdmelding_key").Value;
|
|
oRs.Close()
|
|
%>
|
|
|
|
<html>
|
|
<head>
|
|
<%
|
|
FCLTHeader.Generate();
|
|
%>
|
|
<script type="text/javascript" >
|
|
window.return_data = {};
|
|
function quoted_sql(tekst, maxlen) // maxlen is optioneel
|
|
{
|
|
if (tekst == null)
|
|
return "NULL";
|
|
if (!maxlen)
|
|
maxlen = 4000;
|
|
tekst = tekst.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]+/g, "?");
|
|
tekst = tekst.substr(0, maxlen);
|
|
return "'" + tekst.replace(/\'/g,"''") + "'"; // " syntax highlight correctie
|
|
}
|
|
function preview ()
|
|
{
|
|
$("#sample").html(expr_text());
|
|
FcltMgr.resized();
|
|
}
|
|
$(function () { $("input,select").change(preview); });
|
|
function expr_text()
|
|
{
|
|
var sqlarr = [];
|
|
var aantal_kenm = $("#k_all").val();
|
|
// Ingevulde waarden van de kenmerken bewaren.
|
|
// TODO: getKenmerkSql hier inzetten?
|
|
for (var n = 1; n <= aantal_kenm; n++)
|
|
{
|
|
var kw = new kenmerkValues(n);
|
|
if (typeof kw.val == 'number')
|
|
kw.val = String(kw.val);
|
|
var keyname = ":flex" + kw.key;
|
|
if (kw.op == 'IS NOT NULL' || kw.op == 'IS NULL')
|
|
sqlarr.push(keyname + " " + kw.op)
|
|
else if (kw.val && kw.typ != "R" && kw.typ != "S")
|
|
{
|
|
if (kw.op == 'LIKE' || kw.op == 'NOT LIKE')
|
|
sqlarr.push("UPPER(" + keyname + ") " + kw.op + " " + quoted_sql(kw.val.toUpperCase()))
|
|
else
|
|
sqlarr.push(keyname + " " + kw.op + " " + quoted_sql(kw.val))
|
|
}
|
|
else if (kw.val != '-1' && kw.val != '' && (kw.typ == "R" || kw.typ == "S"))
|
|
sqlarr.push(keyname + " " + kw.op + " " + quoted_sql(kw.val));
|
|
}
|
|
return sqlarr.join(" AND ");
|
|
}
|
|
function expr_submit()
|
|
{
|
|
window.return_data.org_data = FcltMgr.dialogArguments();
|
|
window.return_data.expression = expr_text();
|
|
FcltMgr.closeDetail(window, return_data);
|
|
}
|
|
|
|
</script>
|
|
</head>
|
|
|
|
<body class="modal" id="mod_wfexpression" >
|
|
<form id="wf" name="wf" method="post">
|
|
<%
|
|
generateFlexKenmerkBlock({ stdm_arr : [stdm_key],
|
|
disc_arr : [disc_key],
|
|
srtdisc : [srtdisc_key], // Srtdiscipline/Soort melding
|
|
flexcolumns : 1,
|
|
closing : 1,
|
|
advanced : true,
|
|
wfbuilder : true
|
|
});
|
|
|
|
var buttons = [ {title: L("lcl_submit"), icon: "opslaan.png", action: "expr_submit()" },
|
|
{title: L("lcl_cancel"), icon: "undo.png", action: "FcltMgr.closeDetail( window )" }];
|
|
CreateButtons(buttons);
|
|
%></form>
|
|
<div id='sample'></div>
|
|
</body>
|
|
</html>
|