Files
Facilitor/APPL/FAC/faq_flexkenmerk.inc
2025-05-15 11:34:20 +00:00

103 lines
5.0 KiB
C++

<% /*
$Revision$
$Id$
File: FAC/faq_flexkenmerk.inc
Description: Functie die html code genereert voor de presentatie van de flexvelden
Parameters:
faq_key FAQnummer
reado Readonly
advanced Geadvanceerd
reqId Perslid key
Context: Functie wordt aangeroepen door
1) load_kenmerk.asp
2) fac_faq_show.asp die initieel serverside deze html code invoegd.
3) fac_faq_edit.asp die initieel serverside deze html code invoegd.
*/ %>
<!-- #include file="../Shared/kenmerk_common.inc" -->
<%
function generateFlexKenmerkCode(params)
{
function isReadonly (oRs)
{
return reado;
}
var faq_key = params.faq_key; // FAQnummer
var disc_key = params.disc_key;
var reado = params.reado; // Readonly
var advanced = params.advanced; // Geavanceerd
var reqId = params.reqId; // Perslid key (!search && multiMode)
var copy = (params.copy? params.copy : false);
var otherKenmerkPath = "NULL";
var hasfilter = params.hasfilter? params.hasfilter : null;
if (copy)
{ // Kopieeer eventueel flexfiles
otherKenmerkPath = " 'FAQ/" + subfolderKey("F", faq_key) + "/' || faq_kenmerk_key";
}
var sql = "SELECT k.faq_kenmerk_key kenmerk_key"
+ " , 1 kenmerk_key_count"
+ " , NULL srtkenmerk_key"
+ " , " + lcl.xsql("k.faq_kenmerk_omschrijving", "k.faq_kenmerk_key") + " kenmerk_omschrijving"
+ " , k.faq_kenmerk_kenmerktype kenmerk_kenmerktype"
+ " , k.fac_kenmerkdomein_key kenmerkdomein_key"
+ " , k.faq_kenmerk_lengte kenmerk_lengte"
+ " , k.faq_kenmerk_dec kenmerk_dec"
+ " , k.faq_kenmerk_nmin kenmerk_nmin"
+ " , k.faq_kenmerk_nmax kenmerk_nmax"
+ " , k.faq_kenmerk_systeem kenmerk_systeem"
+ (faq_key > 0
? " , (SELECT MAX(CASE WHEN k.faq_kenmerk_kenmerktype = 'M'"
+ " THEN NULL"
+ " ELSE f.faq_kenmerkwaarde_waarde"
+ " END)"
+ " FROM faq_kenmerkwaarde f"
+ " WHERE f.fac_faq_key = " + faq_key
+ " AND f.faq_kenmerk_key = k.faq_kenmerk_key"
+ " AND f.faq_kenmerkwaarde_verwijder IS NULL)"
: " , " + lcl.xsql("k.faq_kenmerk_default", "k.faq_kenmerk_key")
) + " kenmerk_waarde"
+ " , k.faq_kenmerk_volgnr kenmerk_volgnr"
+ " , k.faq_kenmerk_rolcode kenmerk_rolcode"
+ " , " + lcl.xsql("k.faq_kenmerk_dimensie", "k.faq_kenmerk_key") + " kenmerk_dimensie"
+ " , " + lcl.xsql("k.faq_kenmerk_hint", "k.faq_kenmerk_key") + " kenmerk_hint"
+ " , " + lcl.xsql("k.faq_kenmerk_default", "k.faq_kenmerk_key") + " kenmerk_default"
+ " , k.faq_kenmerk_show_expr kenmerk_show_expr"
+ " , k.faq_kenmerk_verplicht kenmerk_verplicht"
+ " , k.faq_kenmerk_groep kenmerk_groep"
+ " , " + otherKenmerkPath + " otherpath" // corresponderende pad voor copy/move folder
+ " , k.faq_kenmerk_toonbaar kenmerk_toonbaar"
+ " , k.faq_kenmerk_uniek kenmerk_uniek"
+ " , k.faq_kenmerk_regexp kenmerk_regexp"
+ " , k.fac_functie_key"
+ " FROM faq_kenmerk k"
+ " WHERE k.faq_kenmerk_verwijder IS NULL"
+ (advanced
? "" // Dan alle kenmerken laten zien
: " AND (k.faq_discipline_key IS NULL"
+ (disc_key > 0
? " OR k.faq_discipline_key = " + disc_key
: "")
+ " )"
)
+ " ORDER BY k.faq_kenmerk_volgnr"
+ " , UPPER("+lcl.xsql("k.faq_kenmerk_omschrijving", "k.faq_kenmerk_key")+")";
listKenmerk( sql
, "FAQ"
, faq_key
, { kenmerk_search: advanced
, fnIsReadonly: isReadonly
, reado: reado
, mobile: params.mobile
, hideVervallen: faq_key<0
, parentKey: faq_key
, hasfilter: hasfilter
, sortFilename: true
}
);
} %>