@@ -13,12 +13,13 @@
|
||||
*/
|
||||
%>
|
||||
<%
|
||||
model_fin_verkoopfactuur = {
|
||||
"table": "fin_verkoopfactuur",
|
||||
"primary": "fin_verkoopfactuur_key",
|
||||
"records_name": "Fin_verkoopfactuurs",
|
||||
"record_name": "Fin_verkoopfactuur",
|
||||
"fields": {
|
||||
function model_fin_verkoopfactuurregels()
|
||||
{
|
||||
this.table = "fin_verkoopfactuur";
|
||||
this.primary = "fin_verkoopfactuur_key";
|
||||
this.records_name = "saleinvoicelines";
|
||||
this.record_name = "saleinvoiceline";
|
||||
this.fields = {
|
||||
"id": {
|
||||
"dbs": "fin_verkoopfactuur_key",
|
||||
"label": L("lcl_fin_verkoopfactuur_key"),
|
||||
@@ -30,7 +31,8 @@ model_fin_verkoopfactuur = {
|
||||
"dbs": "fin_verkoopfactuur_aanmaak",
|
||||
"label": L("lcl_fin_verkoopfactuur_aanmaak"),
|
||||
"typ": "datetime",
|
||||
"readonly": true
|
||||
"readonly": true,
|
||||
hidden: true
|
||||
},
|
||||
"name": {
|
||||
"dbs": "fin_verkoopfactuur_id",
|
||||
@@ -115,14 +117,14 @@ model_fin_verkoopfactuur = {
|
||||
"fin_verkoopfactuur_bedrag": {
|
||||
"dbs": "fin_verkoopfactuur_bedrag",
|
||||
"label": L("lcl_fin_verkoopfactuur_bedrag"),
|
||||
"typ": "number",
|
||||
"datatype": "float" // currency?
|
||||
"typ": "float",
|
||||
"total": true
|
||||
},
|
||||
"fin_verkoopfactuur_btw": {
|
||||
"dbs": "fin_verkoopfactuur_btw",
|
||||
"label": L("lcl_fin_verkoopfactuur_btw"),
|
||||
"typ": "number",
|
||||
"datatype": "float" // currency?
|
||||
"typ": "float",
|
||||
"total": true
|
||||
},
|
||||
"fin_btwtabelwaarde_code": {
|
||||
"dbs": "fin_btwtabelwaarde_code",
|
||||
@@ -245,11 +247,13 @@ model_fin_verkoopfactuur = {
|
||||
"label": L("lcl_fin_verkoopfactuur_d5"),
|
||||
"typ": "datetime"
|
||||
}
|
||||
},
|
||||
"list": {
|
||||
};
|
||||
this.list = {
|
||||
"columns": [
|
||||
"id",
|
||||
"name",
|
||||
"fin_verkoopfactuur_xmlnode",
|
||||
"fin_verkoopfactuur_refkey",
|
||||
"invoicedate",
|
||||
"fin_verkoopfactuur_bedrag",
|
||||
"fin_verkoopfactuur_btw",
|
||||
@@ -257,26 +261,159 @@ model_fin_verkoopfactuur = {
|
||||
"fin_verkoopfactuur_n1",
|
||||
"fin_verkoopfactuur_d1"
|
||||
]
|
||||
},
|
||||
"search": {
|
||||
"filters": [
|
||||
"fin_verkoopfactuur_id",
|
||||
"fin_verkoopfactuur_xmlnode",
|
||||
"fin_verkoopfactuur_refkey",
|
||||
"prs_kostenplaats_key"
|
||||
],
|
||||
"autosearch": true
|
||||
},
|
||||
"print": {
|
||||
xmlnode: "verkoopfactuur"
|
||||
},
|
||||
"autfunction": "WEB_VERFAC",
|
||||
"record_title": L("lcl_verkoopfactuur"),
|
||||
"records_title": L("lcl_verkoopfacturen"),
|
||||
"show": {},
|
||||
"edit": {},
|
||||
"soft_delete": null
|
||||
};
|
||||
this.autfunction = "WEB_VERFAC";
|
||||
this.record_title = L("lcl_verkoopfactuurregel"),
|
||||
this.records_title = L("lcl_verkoopfactuurregels");
|
||||
this.show = {};
|
||||
this.edit = {};
|
||||
|
||||
api2.generic_REST(this);
|
||||
//of this.REST_GET = generic_REST_GET(model_fin_verkoopfactuur);
|
||||
}
|
||||
api2.generic_REST(model_fin_verkoopfactuur);
|
||||
//model_fin_verkoopfactuur.REST_GET = generic_REST_GET(model_fin_verkoopfactuur);
|
||||
|
||||
// Dit is het model voor de factuurregels van een enkele xmlnode/refkey
|
||||
model_fin_verkoopfactuur = function()
|
||||
{
|
||||
this.table = "verkoopfactuur"
|
||||
this.tablesql = "(SELECT fin_verkoopfactuur_id"
|
||||
+ " , fin_verkoopfactuur_datum"
|
||||
+ " , fin_verkoopfactuur_xmlnode"
|
||||
+ " , fin_verkoopfactuur_refkey"
|
||||
+ " , SUM(fin_verkoopfactuur_bedrag) fin_verkoopfactuur_bedrag"
|
||||
+ " , SUM(fin_verkoopfactuur_btw) fin_verkoopfactuur_btw"
|
||||
+ " , COUNT(*) aantalregels"
|
||||
+ " FROM FIN_VERKOOPFACTUUR"
|
||||
+ " GROUP BY fin_verkoopfactuur_id"
|
||||
+ " , fin_verkoopfactuur_datum"
|
||||
+ " , fin_verkoopfactuur_xmlnode"
|
||||
+ " , fin_verkoopfactuur_refkey) verkoopfactuur";
|
||||
this.fields = {
|
||||
"id": {
|
||||
"dbs": "fin_verkoopfactuur_id",
|
||||
"label": L("lcl_fin_verkoopfactuur_id"),
|
||||
"typ": "varchar"
|
||||
},
|
||||
"invoicedate": {
|
||||
"dbs": "fin_verkoopfactuur_datum",
|
||||
"label": L("lcl_fin_verkoopfactuur_datum"),
|
||||
"typ": "datetime" // date?
|
||||
},
|
||||
"fin_verkoopfactuur_xmlnode": {
|
||||
"dbs": "fin_verkoopfactuur_xmlnode",
|
||||
"label": L("lcl_fin_verkoopfactuur_xmlnode"),
|
||||
"typ": "varchar",
|
||||
LOV: "resevering;Reservering;bestelopdr;Bestelling;opdracht;Opdracht;contract;Contract"
|
||||
},
|
||||
"fin_verkoopfactuur_refkey": {
|
||||
"dbs": "fin_verkoopfactuur_refkey",
|
||||
"label": L("lcl_fin_verkoopfactuur_refkey"),
|
||||
"typ": "varchar"
|
||||
},
|
||||
"fin_verkoopfactuur_bedrag": {
|
||||
"dbs": "fin_verkoopfactuur_bedrag",
|
||||
"label": L("lcl_fin_verkoopfactuur_bedrag"),
|
||||
"typ": "float",
|
||||
"total": true
|
||||
},
|
||||
"fin_verkoopfactuur_btw": {
|
||||
"dbs": "fin_verkoopfactuur_btw",
|
||||
"label": L("lcl_fin_verkoopfactuur_btw"),
|
||||
"typ": "float",
|
||||
"total": true
|
||||
},
|
||||
"nrlines": {
|
||||
"dbs": "aantalregels",
|
||||
"label": L("lcl_nrfinlines"),
|
||||
"typ": "number"
|
||||
}
|
||||
};
|
||||
this.primary = "fin_verkoopfactuur_id";
|
||||
this.includes = { regels: { model: new model_fin_verkoopfactuurregels(),
|
||||
joinfield: "name" } }
|
||||
this.list = {
|
||||
"columns": [
|
||||
"id",
|
||||
"invoicedate",
|
||||
"fin_verkoopfactuur_bedrag",
|
||||
"fin_verkoopfactuur_btw"
|
||||
],
|
||||
default_url : "appl/fin/fin_verkoopfactuur_verzamel.asp?mode=wrap&id="
|
||||
};
|
||||
this.search = {
|
||||
"filters": [
|
||||
"id",
|
||||
"fin_verkoopfactuur_xmlnode",
|
||||
"fin_verkoopfactuur_refkey"
|
||||
//"account"
|
||||
]
|
||||
};
|
||||
this.autfunction = "WEB_VERFAC";
|
||||
this.record_title = L("lcl_verkoopfactuur"),
|
||||
this.records_title = L("lcl_verkoopfacturen");
|
||||
|
||||
api2.generic_REST(this);
|
||||
}
|
||||
|
||||
// Dit is het model voor alle factuurregels van een fin_verkoopfactuur_id
|
||||
fin_verkoopfactuur_verzamel = function()
|
||||
{
|
||||
this.table = "verzamel"
|
||||
this.tablesql = "(SELECT fin_verkoopfactuur_id"
|
||||
+ " , MIN(fin_verkoopfactuur_key) min_factuur_key"
|
||||
+ " , SUM(fin_verkoopfactuur_bedrag) fin_verkoopfactuur_bedrag"
|
||||
+ " , SUM(fin_verkoopfactuur_btw) fin_verkoopfactuur_btw"
|
||||
+ " , COUNT(*) aantalregels"
|
||||
+ " FROM FIN_VERKOOPFACTUUR"
|
||||
+ " GROUP BY fin_verkoopfactuur_id) verzamel";
|
||||
this.fields = {
|
||||
"id": {
|
||||
"dbs": "fin_verkoopfactuur_id",
|
||||
"label": L("lcl_fin_verkoopfactuur_id"),
|
||||
"typ": "varchar"
|
||||
},
|
||||
"min_factuur_key": {
|
||||
"dbs": "min_factuur_key",
|
||||
"label": L("lcl_fin_verkoopfactuur_id"),
|
||||
"typ": "key",
|
||||
hidden_fld: true
|
||||
},
|
||||
"fin_verkoopfactuur_bedrag": {
|
||||
"dbs": "fin_verkoopfactuur_bedrag",
|
||||
"label": L("lcl_fin_verkoopfactuur_bedrag"),
|
||||
"typ": "float"
|
||||
},
|
||||
"fin_verkoopfactuur_btw": {
|
||||
"dbs": "fin_verkoopfactuur_btw",
|
||||
"label": L("lcl_fin_verkoopfactuur_btw"),
|
||||
"typ": "float",
|
||||
"total": true
|
||||
}
|
||||
};
|
||||
this.primary = "fin_verkoopfactuur_id";
|
||||
this.includes = { regels: { model: new model_fin_verkoopfactuurregels(),
|
||||
joinfield: "name" } }
|
||||
this.list = {
|
||||
"columns": [
|
||||
"id",
|
||||
"fin_verkoopfactuur_bedrag",
|
||||
"fin_verkoopfactuur_btw"
|
||||
]
|
||||
};
|
||||
this.search = {
|
||||
"filters": [
|
||||
"id"
|
||||
]
|
||||
};
|
||||
this.print = {
|
||||
xmlnode: "verkoopfactuur",
|
||||
key: "min_factuur_key"
|
||||
};
|
||||
this.autfunction = "WEB_VERFAC";
|
||||
this.record_title = L("lcl_verkoopfactuur_verzamel"),
|
||||
this.records_title = L("lcl_verkoopfacturen_verzamel");
|
||||
|
||||
api2.generic_REST(this);
|
||||
}
|
||||
|
||||
%>
|
||||
@@ -12,5 +12,6 @@
|
||||
<!-- #include file='../../appl/scf/scaffolding.inc' -->
|
||||
<!-- #include file='../../appl/api2/model_fin_verkoopfactuur.inc' -->
|
||||
<%
|
||||
|
||||
scaffolding(model_fin_verkoopfactuur);
|
||||
%>
|
||||
16
APPL/FIN/fin_verkoopfactuur_verzamel.asp
Normal file
16
APPL/FIN/fin_verkoopfactuur_verzamel.asp
Normal file
@@ -0,0 +1,16 @@
|
||||
<%@language = 'javascript' %>
|
||||
<% /*
|
||||
$Revision$
|
||||
$Id$
|
||||
|
||||
|
||||
Note:
|
||||
- all parameters are passed to the model automatically
|
||||
- printoptie (outputmode?) in detailscherm?
|
||||
|
||||
*/ %>
|
||||
<!-- #include file='../../appl/scf/scaffolding.inc' -->
|
||||
<!-- #include file='../../appl/api2/model_fin_verkoopfactuur.inc' -->
|
||||
<%
|
||||
scaffolding(fin_verkoopfactuur_verzamel);
|
||||
%>
|
||||
@@ -149,13 +149,13 @@ function scaffolding_list(model, scf_params)
|
||||
{ // echte data op via (ons als include van) de 'parent'
|
||||
xxx_params.filter.id = xxx_params.filter[scf_params.incsetting.joinfield]; // Die zal er dan zijn
|
||||
xxx_params.include = [ getQParam("model") ];
|
||||
// xxx_params.columns = []; // De kolommen van de parent hebben we niet nodig
|
||||
var xxx_array = scf_params.orgmodel.REST_GET(xxx_params);
|
||||
xxx_array = xxx_array[0][getQParam("model")];
|
||||
}
|
||||
else
|
||||
{
|
||||
xxx_params.include = xxx_params.include || [];
|
||||
//if (0) // even uit, pivot kolommen krijgen soms regulier een punt
|
||||
for (i in scf_params.list.columns)
|
||||
{
|
||||
var xmodel = model;
|
||||
|
||||
@@ -36,6 +36,8 @@ function scaffolding_print(model, scf_params)
|
||||
// Toch voeren we die wel uit voor de automatische authorisatiecontrole
|
||||
if (model.print.xmlnode) // Die is simpel
|
||||
{
|
||||
if (model.print.key)
|
||||
key = xxx_array[0][model.print.key];
|
||||
FCLT2XMLResponse( {xmlnode: model.print.xmlnode, key: key, stylsesheet: model.print.xmlnode});
|
||||
Response.End; // Simpel klaar
|
||||
}
|
||||
|
||||
@@ -160,12 +160,14 @@ function scaffolding_search(model, scf_params)
|
||||
|
||||
BLOCK_START("searchtable", L("lcl_filterblok") + est_title);
|
||||
|
||||
var includefilters = [];
|
||||
for (var i=0; i < scf_params.search.filters.length; i++)
|
||||
{
|
||||
var xmodel = model;
|
||||
var fld = scf_params.search.filters[i];
|
||||
if (fld.indexOf(".") > 0) // Bij res_ruimte configurations.res_opstelling_key ofwel <include>.<field>
|
||||
{
|
||||
includefilters.push(fld);
|
||||
xmodel = model.includes[fld.split(".")[0]].model;
|
||||
var fld = fld.split(".")[1];
|
||||
}
|
||||
@@ -204,6 +206,9 @@ function scaffolding_search(model, scf_params)
|
||||
RWCHECKBOXTR("scf_graph", "fldcheck", L("lcl_scf_graph"), on);
|
||||
}
|
||||
|
||||
if (includefilters.length)
|
||||
scf_RWHIDDENTR("includefilter", includefilters.join(","));
|
||||
|
||||
BLOCK_END();
|
||||
var buttons = [];
|
||||
buttons.push({title: L("lcl_search"), action: "doSubmit()" });
|
||||
@@ -244,6 +249,9 @@ function scaffolding_search(model, scf_params)
|
||||
var field = model.fields[fld];
|
||||
if (field.hidden || field.typ=="label") // Hidden kun je ook niet aanzetten, en labels idem.
|
||||
continue;
|
||||
if (!field.label || field.label == '<hidden>')
|
||||
continue;
|
||||
|
||||
var on = inArray(fld, scf_params.list.columns);
|
||||
Response.Write("\n<tr id='" + fld + "'><td><label><input type='checkbox'" + (on?" checked='1'":"") + ">"
|
||||
+ safe.html(field.label || ("<"+field.dbs+">")) + "</label></td>");
|
||||
|
||||
@@ -60,7 +60,7 @@ function scaffolding_wrap(model, scf_params)
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<% if (key < 0)
|
||||
<% if (key == -1) // Bij fin_verkoopfactuur is de key alfanumeriek. Pas daarvoor op.
|
||||
var page = scf_params.this_fullpath + "?mode=edit" + transit; // Maak een nieuw
|
||||
else
|
||||
var page = scf_params.this_fullpath + "?mode=show" + transit;
|
||||
@@ -68,7 +68,7 @@ function scaffolding_wrap(model, scf_params)
|
||||
|
||||
IFRAMER("scfFrame", page, { FcltClose: "scfClose" } );
|
||||
|
||||
if (key > 0)
|
||||
if (key != -1)
|
||||
{
|
||||
for (var inc in model.includes)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user