Files
Facilitor/APPL/API2/model_ins_kenmerk.inc
Erik Groener 7b609e28b7 SUTF#34058 Kenmerk toevoegen lukt niet
svn path=/Website/trunk/; revision=26614
2015-10-12 09:17:48 +00:00

247 lines
8.5 KiB
PHP

<% /*
$Revision$
$Id$
File: model_ins_kenmerk.inc
Description: Vanuit CodeCharge gegenereerd model voor ins_kenmerk
Context: Met parameter 'niveau' worden alleen de inspectiekenmerken getoond.
Zonder, alle niet-inspectie kenmerken.
Notes:
*/
%>
<%
function model_ins_kenmerk(fnparams)
{
this.table = "ins_kenmerk";
this.primary = "ins_kenmerk_key";
this.records_name = "ins_kenmerks";
this.record_name = "ins_kenmerk";
this.fields = {
"id": {
"dbs": "ins_kenmerk_key",
"label": "Key",
"typ": "key",
"required": true,
"filter": "exact",
"seq": "ins_s_ins_kenmerk_key",
"readonly": true
},
"ins_srtkenmerk_key": {
"dbs": "ins_srtkenmerk_key",
"label": L("ins_srtkenmerk_key"),
"typ": "key",
"required": true,
"foreign": {
"tbl": "ins_srtkenmerk",
"key": "ins_srtkenmerk_key",
"where": "ins_srtkenmerk_verwijder is null",
"desc": "ins_srtkenmerk_omschrijving"
},
"filter": "exact"
},
"ins_discipline_key": {
"dbs": "ins_v_allsrtinstallatie.ins_discipline_key",
"label": L("ins_srtinstallatie_discipline"),
"typ": "key",
"insertonly": true,
"foreign": { "tbl": "ins_discipline",
"key": "ins_discipline_key",
"desc": "ins_discipline_omschrijving"
}
},
"ins_srtgroep_key": {
"dbs": "ins_v_allsrtinstallatie.ins_srtgroep_key",
"label": L("ins_srtinstallatie_srtgroep"),
"typ": "key",
"insertonly": true,
"foreign": { "tbl": "ins_srtgroep",
"key": "ins_srtgroep_key",
"desc": "ins_srtgroep_omschrijving"
}
},
"ins_srtdeel_key": {
"dbs": "ins_v_allsrtinstallatie.ins_srtdeel_key",
"label": L("ins_srtinstallatie_srtdeel"),
"typ": "key",
"insertonly": true,
"foreign": { "tbl": "ins_srtdeel",
"key": "ins_srtdeel_key",
"desc": "ins_srtdeel_omschrijving"
}
},
"ref_srtinstallatie_key": {
"dbs": "ins_srtinstallatie_key",
"label": "ins_srtinstallatie_key",
"typ": "key",
"hidden_fld": true,
"foreign": {"tbl": "ins_srtcontrole",
"key": "ins_srtcontrole_key",
"desc": "ins_srtcontrole_omschrijving"
},
"filter": "exact"
},
"ins_kenmerk_niveau": {
"dbs": "ins_kenmerk_niveau",
"label": L("ins_kenmerk_niveau"),
"typ": "varchar",
"hidden_fld": true,
"LOV": L("ins_kenmerk_niveauLOV"),
"defaultvalue": "C"
},
"ins_kenmerk_bewerkniveau": {
"dbs": "ins_kenmerk_bewerkniveau",
"label": L("ins_kenmerk_bewerkniveau"),
"typ": "varchar",
"required": true,
"insertonly": true,
"defaultvalue": "D",
"LOV": L("ins_kenmerk_bewerkniveauLOV")
},
"sequence": {
"dbs": "ins_kenmerk_volgnummer",
"label": L("ins_kenmerk_volgnummer"),
"typ": "number",
"required": true
},
"ins_kenmerk_verplicht": {
"dbs": "ins_kenmerk_verplicht",
"label": L("ins_kenmerk_verplicht"),
"typ": "key",
"LOV": fill_verplicht_LOV(),
"emptyoption": L("lcl_mld_niet_verplicht")
},
"ins_kenmerk_groep": {
"dbs": "ins_kenmerk_groep",
"label": L("ins_kenmerk_groep"),
"typ": "key",
"required": true,
"LOV": fill_groepsverplichting_LOV(),
"defaultvalue": "0"
},
"ins_kenmerk_toonbaar": {
"dbs": "ins_kenmerk_toonbaar",
"label": L("ins_kenmerk_toonbaar"),
"typ": "check"
},
"ins_kenmerk_meetwaarde": {
"dbs": "ins_kenmerk_meetwaarde",
"label": L("ins_kenmerk_meetwaarde"),
"typ": "check"
},
"ins_kenmerk_locatiekolom": {
"dbs": "ins_kenmerk_locatiekolom",
"label": L("ins_kenmerk_locatiekolom"),
"typ": "varchar"
},
"ins_kenmerk_default": {
"dbs": "ins_kenmerk_default",
"label": L("ins_kenmerk_default"),
"typ": "memo",
"translate": true
},
"ins_kenmerk_hint": {
"dbs": "ins_kenmerk_hint",
"label": L("ins_kenmerk_hint"),
"typ": "memo",
"translate": true
},
"ins_kenmerk_regexp": {
"dbs": "ins_kenmerk_regexp",
"label": L("ins_kenmerk_regexp"),
"typ": "varchar"
}
};
this.list = {
"columns": ["id",
"ins_srtkenmerk_key",
"sequence",
"ins_kenmerk_verplicht",
"ins_kenmerk_groep"
]
};
this.search = {
"autosearch": true,
"filters": ["ins_kenmerk_niveau",
"ins_discipline_key",
"ins_srtgroep_key",
"ins_srtdeel_key",
"ins_srtkenmerk_key"
]
};
this.soft_delete = "ins_kenmerk_verwijder";
this.autfunction = "WEB_INSMGT";
this.record_title = L("ins_kenmerk");
this.records_title = L("ins_kenmerk_m");
this.edit = { modal: true};
// Server side code!
//
// Afhankelijk van niveau:
var niveau = fnparams.niveau;
var gparams = { GET: { } };
if (niveau == "C")
{
delete this.fields.ins_discipline_key;
delete this.fields.ins_srtgroep_key;
delete this.fields.ins_srtdeel_key;
delete this.fields.ins_kenmerk_bewerkniveau;
delete this.fields.ins_kenmerk_meetwaarde;
this.fields.ref_srtinstallatie_key.label = L("ins_srtcontrole");
this.record_title = L("ins_srtcontrole_kenmerk");
gparams.GET = {wheres: [ "ins_kenmerk.ins_kenmerk_niveau = " + safe.quoted_sql(niveau)
, "ins_kenmerk.ins_kenmerk_verwijder IS NULL"
]
};
}
else
{ //kenmerk_niveau: D | G | S
// Toevoegen extra kolommen voor niet-inspectie kenmerken.
// NB: Standaard in this.list opnemen en bij niveau=C verwijderen geeft fout op niet bestaande ins_discipline_key etc.
this.list.columns.splice(2, 0, "ins_srtdeel_key");
this.list.columns.splice(2, 0, "ins_srtgroep_key");
this.list.columns.splice(2, 0, "ins_discipline_key");
//
this.record_title = L("ins_srtcontrole_kenmerk");
gparams.GET = {tables: ["ins_v_allsrtinstallatie"],
wheres: [ "ins_kenmerk.ins_kenmerk_niveau <> 'C'",
"ins_kenmerk.ins_srtinstallatie_key = ins_v_allsrtinstallatie.ins_srtinstallatie_key",
"ins_kenmerk.ins_kenmerk_niveau = ins_v_allsrtinstallatie.niveau"
]
};
}
function fill_verplicht_LOV()
{ // Listbox verplicht vullen. Bij het veld is de emptyoption gezet.
// Hierdoor is er altijd een waarde geselecteerd.
return "1;" + L("lcl_mld_altijd_verplicht")
+ ";2;" + L("lcl_mld_groepsverplichting");
}
function fill_groepsverplichting_LOV()
{ // Listbox groepsverplichting vullen.
var groep_array = ["0", "<"+L("lcl_none")+">"];
for (i=1; i<=9; i++)
{
groep_array.push(i)
groep_array.push(L("ins_kenmerk_groep")+" "+i);
}
return groep_array.join(";");
}
this.REST_GET = generic_REST_GET(this, gparams);
this.REST_POST = generic_REST_POST(this);
this.REST_PUT = generic_REST_PUT(this);
this.REST_DELETE = generic_REST_DELETE(this, {});
}
%>