NYBU#55434: Flexkenmerken per artikelregel.

svn path=/Website/branches/v2019.1/; revision=41940
This commit is contained in:
Maykel Geerdink
2019-04-04 09:40:49 +00:00
parent 29bb3b63c9
commit 313ed0883d
2 changed files with 26 additions and 21 deletions

View File

@@ -87,12 +87,12 @@ function model_res_kenmerk(niveau, params)
"dbs": "res_artikel_key", "dbs": "res_artikel_key",
"label": L("res_artikel"), "label": L("res_artikel"),
"typ": "key", "typ": "key",
"hidden_fld": true,
"required": true, "required": true,
"foreign": { "foreign": {
"tbl": "(SELECT res_artikel_key, res_artikel_omschrijving" "tbl": "(SELECT res_artikel_key, res_artikel_omschrijving"
+ " FROM res_artikel" + " FROM res_artikel"
+ " WHERE res_artikel_verwijder IS NULL" + " WHERE res_artikel_verwijder IS NULL"
+ " AND (res_artikel_vervaldatum IS NULL OR res_artikel_vervaldatum > SYSDATE)"
+ " ORDER BY UPPER(res_artikel_omschrijving) ASC)", + " ORDER BY UPPER(res_artikel_omschrijving) ASC)",
"key": "res_artikel_key", "key": "res_artikel_key",
"desc": "res_artikel_omschrijving" "desc": "res_artikel_omschrijving"
@@ -152,29 +152,44 @@ function model_res_kenmerk(niveau, params)
] ]
}; };
this.search = {
"autosearch": true,
"filters": ["level",
"bookingpropertytype",
"bookingactivity"
]
};
this.edit = { modal: true}; this.edit = { modal: true};
var gparams = { GET: { } }; var gparams = { GET: { } };
if (niveau == "D") if (niveau == "D")
{ // Kenmerk niveau: "D"=Discipline/Catalogus artikel. { // Kenmerk niveau: "D"=Discipline/Catalogus artikel.
// Toevoegen extra kolom voor artikel kenmerken.
// Deze kolom wordt trouwens niet getoond in het include frame onder in het artikel scherm, omdat het joinfield van de include de "articlekey" is.
// De details van het artikel staan dan in de gegevens erboven. De extra kolom met het artikel is dan overtollige informatie.
this.list.columns.splice(4, 0, "articlekey");
this.fields.level.defaultvalue = "D"; this.fields.level.defaultvalue = "D";
delete this.fields.bookingactivity; delete this.fields.bookingactivity;
this.record_title = L("res_article_kenmerk"); this.record_title = L("res_article_kenmerk");
this.records_title = L("res_article_kenmerk_m"); this.records_title = L("res_article_kenmerk_m");
gparams.GET = {wheres: [ "res_kenmerk.res_kenmerk_niveau = " + safe.quoted_sql(niveau) gparams.GET = {wheres: [ "res_kenmerk.res_kenmerk_niveau = 'D'"
, "res_kenmerk.res_kenmerk_verwijder IS NULL" , "res_kenmerk.res_kenmerk_verwijder IS NULL"
] ]
}; };
} }
else else
{ // Kenmerk_niveau: "A"=Activiteit. { // Kenmerk_niveau: "A"=Activiteit.
// Toevoegen extra kolom voor activiteit kenmerken.
this.list.columns.splice(4, 0, "bookingactivity");
this.fields.level.defaultvalue = "A"; this.fields.level.defaultvalue = "A";
delete this.fields.articlekey;
this.record_title = L("res_kenmerk"); this.record_title = L("res_kenmerk");
this.records_title = L("res_kenmerk_m"); this.records_title = L("res_kenmerk_m");
gparams.GET = {wheres: [ "res_kenmerk.res_kenmerk_niveau = " + safe.quoted_sql(niveau) gparams.GET = {wheres: [ "res_kenmerk.res_kenmerk_niveau = 'A'"
, "res_kenmerk.res_kenmerk_verwijder IS NULL" , "res_kenmerk.res_kenmerk_verwijder IS NULL"
] ]
}; };
} }
this.getPropertyType = function (kenmerkdata) this.getPropertyType = function (kenmerkdata)
@@ -202,7 +217,7 @@ function model_res_kenmerk(niveau, params)
} }
this.REST_GET = generic_REST_GET(this); this.REST_GET = generic_REST_GET(this, gparams);
this.REST_POST = generic_REST_POST(this); this.REST_POST = generic_REST_POST(this);
this.REST_PUT = generic_REST_PUT(this); this.REST_PUT = generic_REST_PUT(this);
this.REST_DELETE = generic_REST_DELETE(this); this.REST_DELETE = generic_REST_DELETE(this);

View File

@@ -4,24 +4,14 @@
<!-- #include file="../api2/model_res_kenmerk.inc" --> <!-- #include file="../api2/model_res_kenmerk.inc" -->
<% <%
var this_model = new model_res_kenmerk(); var niveau = getQParam("niveau", "A");
var this_model = new model_res_kenmerk(niveau);
scaffolding(this_model, scaffolding(this_model,
{ {
"search": { "transit": {
"autosearch": true, "niveau": niveau
"filters": [
"bookingpropertytype",
"bookingactivity"
]
},
"list": {
"columns": [
"id",
"bookingpropertytype",
"sequence",
"bookingactivity"
]
} }
}); });
%> %>