FCLT#88619 Naamgeving kenmerkdomein pagina's

svn path=/Website/trunk/; revision=70137
This commit is contained in:
Peter Feij
2025-08-28 10:27:41 +00:00
parent e89a6f0f2d
commit 88cba48e04
3 changed files with 122 additions and 23 deletions

View File

@@ -54,15 +54,15 @@ if (domein_key > 0)
else
{
// Eigen tabellen als initi<74>le waarde invullen
domein = { domein_objectnaam: "FAC_USRDATA",
domein_module: getQParam("module", -1),
domein_kolomnaam: "FAC_USRDATA_KEY",
domein_kolomtxt: "FAC_USRDATA_OMSCHR",
domein_kolomtxt2: "FAC_USRDATA_OMSCHR2"
};
var domein = { domein_objectnaam: "FAC_USRDATA",
domein_module: getQParam("module", -1),
domein_kolomnaam: "FAC_USRDATA_KEY",
domein_kolomtxt: "FAC_USRDATA_OMSCHR",
domein_kolomtxt2: "FAC_USRDATA_OMSCHR2",
domein_kolomverval: "FAC_USRDATA_VERVALDATUM"
};
}
%>
<html>
<head>
<% FCLTHeader.Generate();
@@ -163,6 +163,79 @@ else
window.location.href = "fac_kenmerkdomein.asp?mode=show&domein_key=" + params.domein_key;
}
</script>
<script>
document.addEventListener("DOMContentLoaded", function() {
const usrtabField = document.getElementById("usrtabkey"); // <select>
const objectField = document.getElementById("objectnaam"); // Tabel (input)
const fields = {
kolomnaam: document.getElementById("kolomnaam"), // Sleutelkolom
kolomtxt: document.getElementById("kolomtxt"), // Tekstkolom
kolomtxt2: document.getElementById("kolomtxt2"), // Extra tekstkolom
kolomverval: document.getElementById("kolomverval"), // Vervaldatumkolom
};
// Defaultwaarden
const defaults = {
objectnaam: "FAC_USRDATA",
kolomnaam: "FAC_USRDATA_KEY",
kolomtxt: "FAC_USRDATA_OMSCHR",
kolomtxt2: "FAC_USRDATA_OMSCHR2",
kolomverval:"FAC_USRDATA_VERVALDATUM"
};
function dispatchChanged(el) {
if (!el) return;
el.dispatchEvent(new Event("input", { bubbles: true }));
el.dispatchEvent(new Event("change", { bubbles: true }));
}
function setReadonly(el, state) {
if (!el) return;
if (state) el.setAttribute("readonly", true);
else el.removeAttribute("readonly");
}
function applyConfig() {
const isEmpty = usrtabField.value === "-1";
if (isEmpty) {
// Leeg & ontgrendeld
//objectField.value = "";
setReadonly(objectField, false);
dispatchChanged(objectField);
Object.values(fields).forEach(f => {
if (!f) return;
//f.value = "";
setReadonly(f, false);
dispatchChanged(f);
});
} else {
// Default vullen & readonly maken
objectField.value = defaults.objectnaam;
setReadonly(objectField, true);
dispatchChanged(objectField);
Object.keys(fields).forEach(k => {
const f = fields[k];
if (!f) return;
f.value = defaults[k];
setReadonly(f, true);
dispatchChanged(f);
});
}
}
// Initieel
applyConfig();
// Bij wijziging van de select
usrtabField.addEventListener("change", applyConfig);
});
</script>
</head>
<body class="<%=mode=="edit"?"editmode":"showmode"%>">
<% SUBFRAME_START();
@@ -195,6 +268,7 @@ else
+ " , fac_module_name || ' - ' || lcl.l(fac_module_remark)"
+ " FROM fac_module"
+ " WHERE fac_module_extern = 1"
+ " AND fac_module_name IN ('ALG','PRS','INS','MLD','RES','BES','CNT','FIN','BEZ','FAQ')"
+ " AND EXISTS (SELECT *"
+ " FROM fac_v_webgebruiker g"
+ " , fac_functie f"

View File

@@ -20,13 +20,23 @@
FCLTHeader.Requires({ plugins:["jQuery"]});
var authparams = user.checkAutorisation("WEB_PRSSYS");
var fkdmodule = getQParamSafe("fkdmodule", "");
var fkdmodule = getQParamSafe("fkdmodule", ""); // "ALG" enz
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
<% if (fkdmodule != "") {
var sql = "SELECT lcl.l(fac_module_remark) module"
+ " FROM fac_module"
+ " WHERE fac_module_name = " + safe.quoted_sql(fkdmodule);
var oRs = Oracle.Execute(sql);
var tabtitle = L("lcl_kenmerkdomeinen") + " " + oRs(0).Value;
oRs.Close();
%>
FcltMgr.setTitle("<%=safe.jsstring(tabtitle)%>", {hot: false});
<% } %>
function doSubmit()
{
document.forms.u2.submit();
@@ -42,18 +52,24 @@ var fkdmodule = getQParamSafe("fkdmodule", "");
<td><input type="text" class="fld" name="searchtext" id="searchtext"></td>
</tr>
<%
if (fkdmodule != "")
{
%><input type="hidden" name="fkdmodule" value="<%= fkdmodule %>"><%
}
else
{
sql = "select fac_module_name module1, fac_module_name || ' - ' || lcl.l(fac_module_remark) module2"
+ " FROM fac_module"
+ (fkdmodule!="" ? " WHERE fac_module_name = " + safe.quoted_sql(fkdmodule) :"")
+ " WHERE fac_module_name IN ('ALG','PRS','INS','MLD','RES','BES','CNT','FIN','BEZ','FAQ')"
+ " ORDER BY fac_module_name";
FCLTselector("fkdmodule",
sql,
{ label: L("lcl_fac_module"),
trclass: "primsearch",
emptyOption: "",
initKey: fkdmodule,
required: (fkdmodule != "")
emptyOption: ""
});
}
SEARCH_BLOCK_END();
var buttons = [ {title: L("lcl_overview_list"), action: "doSubmit()", id: "bSearch", icon: "fa-clipboard-list" } ];
@@ -63,7 +79,6 @@ var fkdmodule = getQParamSafe("fkdmodule", "");
SEARCH_PAGE_END();
%>
</form>
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"

View File

@@ -19,8 +19,10 @@ var fkdmodule = getQParamSafe("fkdmodule", -1);
var outputmode = getQParamInt("outputmode", 0); // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParamInt("showall", 0) == 1;
var authparams = user.checkAutorisation("WEB_PRSSYS"); // lager
// Er wordt nu dus PRSSYS-autorisatie vereist, wat adequaat is
// Iemand die vind dat dat eigenlijk <MOD>MSU moet zijn per module heeft gelijk
// maar dat gaan we pas doen als het een daadwerkelijk probleem blijkt.
var authparams = user.checkAutorisation("WEB_PRSSYS");
%>
<html>
<head>
@@ -38,36 +40,42 @@ var authparams = user.checkAutorisation("WEB_PRSSYS"); // lager
<body>
<%
var sql = "SELECT fkd.fac_kenmerkdomein_key,"
+ " fkd.fac_kenmerkdomein_module,"
+ " fm.fac_module_name,"
+ " fm.fac_module_name || ' - ' || lcl.l(fac_module_remark) module,"
+ " fkd.fac_kenmerkdomein_omschrijving,"
+ " fkd.fac_kenmerkdomein_upper,"
+ " fkd.fac_kenmerkdomein_objectnaam,"
+ " fkd.fac_kenmerkdomein_kolomnaam,"
+ " fkd.fac_kenmerkdomein_kolomtxt,"
+ " fkd.fac_kenmerkdomein_kolomtxt2,"
// + " fkd.fac_usrtab_key,"
+ " fkd.fac_kenmerkdomein_xmlnode,"
+ " fut.fac_usrtab_naam,"
+ " COUNT(fud.fac_usrdata_key) aantal"
+ " FROM fac_kenmerkdomein fkd, fac_usrtab fut, fac_usrdata fud"
+ " FROM fac_kenmerkdomein fkd, fac_usrtab fut, fac_usrdata fud, fac_module fm"
+ " WHERE fkd.fac_kenmerkdomein_verwijder IS NULL"
+ " AND fkd.fac_usrtab_key = fut.fac_usrtab_key(+)"
+ " AND fkd.fac_kenmerkdomein_module = fm.fac_module_name"
+ " AND fut.fac_usrtab_key = fud.fac_usrtab_key(+)"
+ " AND fud.fac_usrdata_verwijder is null"
+ (searchtext?" AND fac_kenmerkdomein_upper LIKE " + safe.quoted_sql_wild("%"+searchtext + "%") :"")
+ (fkdmodule!=-1 ? " AND fac_kenmerkdomein_module = " + safe.quoted_sql(fkdmodule) :"")
+ " GROUP BY fkd.fac_kenmerkdomein_key,"
+ " fkd.fac_kenmerkdomein_module,"
+ " fm.fac_module_name,"
+ " fm.fac_module_remark,"
+ " fkd.fac_kenmerkdomein_omschrijving,"
+ " fkd.fac_kenmerkdomein_upper,"
+ " fkd.fac_kenmerkdomein_objectnaam,"
+ " fkd.fac_kenmerkdomein_kolomnaam,"
+ " fkd.fac_kenmerkdomein_kolomtxt,"
+ " fkd.fac_kenmerkdomein_kolomtxt2,"
// + " fkd.fac_usrtab_key,"
+ " fkd.fac_kenmerkdomein_xmlnode,"
+ " fut.fac_usrtab_naam"
+ " ORDER BY fac_kenmerkdomein_upper";
+ " ORDER BY fkd.fac_kenmerkdomein_upper, fm.fac_module_name";
function fnDomeinTabel(oRs)
{
// Zwak is dat we voor niet-eigen tabellen de viewnaam laten zien, terwijl we de echt technische zaken willen
// verbergen. We accepteren dat dat voor PRSSYS niet erg is
return oRs("fac_kenmerkdomein_objectnaam").value != "FAC_USRDATA" ? oRs("fac_kenmerkdomein_objectnaam").value : oRs("fac_usrtab_naam").value;
}
function fnDomeinKeyKolom(oRs)
@@ -101,13 +109,15 @@ var authparams = user.checkAutorisation("WEB_PRSSYS"); // lager
});
rst.addColumn(new Column({caption: "Key", content: "fac_kenmerkdomein_key", datatype: "number" }));
if (fkdmodule==-1)
rst.addColumn(new Column({caption: L("lcl_fac_module"), content: "fac_kenmerkdomein_module"}));
rst.addColumn(new Column({caption: L("lcl_kenmerkdomein_omschrijving"), content: "fac_kenmerkdomein_omschrijving"}));
if (fkdmodule==-1) {
rst.addColumn(new Column({caption: L("lcl_fac_module"), content: "module"}));
}
rst.addColumn(new Column({caption: L("lcl_kenmerkdomein_objectnaam"), content: fnDomeinTabel}));
rst.addColumn(new Column({caption: L("lcl_kenmerkdomein_kolomnaam"), content: fnDomeinKeyKolom}));
rst.addColumn(new Column({caption: L("lcl_kenmerkdomein_kolomtxt"), content: fnDomeinTxtKolom}));
rst.addColumn(new Column({caption: L("lcl_kenmerkdomein_kolomtxt2"), content: fnDomeinTxtKolom2}));
rst.addColumn(new Column({caption: L("lcl_kenmerkdomein_xmlnode"), content: "fac_kenmerkdomein_xmlnode"}));
// rst.addColumn(new Column({caption: L("lcl_usrtab_omschrijving"), content: "fac_usrtab_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_usrdata_aantal"), content: "aantal", datatype: "number" }));