FSN#36112 Workflowschermen nieuwe stijl
svn path=/Website/trunk/; revision=29005
This commit is contained in:
118
APPL/MGT/mld_workflow_expression.asp
Normal file
118
APPL/MGT/mld_workflow_expression.asp
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
<%@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>
|
||||||
@@ -70,6 +70,23 @@ var scf_params =
|
|||||||
},
|
},
|
||||||
"transit": {
|
"transit": {
|
||||||
"mystart": mystart_key
|
"mystart": mystart_key
|
||||||
|
},
|
||||||
|
"included": {
|
||||||
|
"rules": {
|
||||||
|
"edit": {
|
||||||
|
"requires": {
|
||||||
|
js: ["./mld_workflowstep.js"]
|
||||||
|
},
|
||||||
|
"buttons": [{ title: L("mld_workflowrule_condition"), action: "build_expression(" + prevstep + ")"}]
|
||||||
|
},
|
||||||
|
"list": {
|
||||||
|
"columns": [
|
||||||
|
"id",
|
||||||
|
"nextstep",
|
||||||
|
"condition"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -3,6 +3,16 @@
|
|||||||
$Id$
|
$Id$
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
function build_expression(step_key)
|
||||||
|
{
|
||||||
|
parent.FcltMgr.openModalDetail("./mld_workflow_expression.asp?step_key=" + step_key, "Uitdrukking",
|
||||||
|
{ callback: function (data)
|
||||||
|
{ if (data.expression)
|
||||||
|
$("textarea#condition").val(data.expression);
|
||||||
|
}
|
||||||
|
} );
|
||||||
|
}
|
||||||
|
|
||||||
function add_step(row)
|
function add_step(row)
|
||||||
{
|
{
|
||||||
var prevstep_key = row.getAttribute("ROWKEY");
|
var prevstep_key = row.getAttribute("ROWKEY");
|
||||||
|
|||||||
@@ -51,7 +51,10 @@ function scaffolding(model, scf_params)
|
|||||||
var imodel = getQParam("model", ""); // include model
|
var imodel = getQParam("model", ""); // include model
|
||||||
if (model.includes && imodel in model.includes)
|
if (model.includes && imodel in model.includes)
|
||||||
{
|
{
|
||||||
scf_params = {}; // settings gelden alleen op het hoofdmodel?
|
if ("included" in scf_params)
|
||||||
|
scf_params = scf_params.included[imodel] || {}
|
||||||
|
else
|
||||||
|
scf_params = {}; // settings gelden alleen op het hoofdmodel?
|
||||||
scf_params.orgmodel = model;
|
scf_params.orgmodel = model;
|
||||||
scf_params.incsetting = model.includes[imodel];
|
scf_params.incsetting = model.includes[imodel];
|
||||||
// scf_params.incsetting.joinfield zal nu ook altijd in de url voorkomen
|
// scf_params.incsetting.joinfield zal nu ook altijd in de url voorkomen
|
||||||
|
|||||||
Reference in New Issue
Block a user