Files
Facilitor/APPL/API2/model_fin_verkoopfactuur.inc
Erik Groener 02a084ab45 FSN#39312 Verder ontsluiten van modellen via de API
svn path=/Website/trunk/; revision=33052
2017-03-06 15:38:02 +00:00

441 lines
13 KiB
C++

<% /*
$Revision$
$Id$
File: model_salesinvoices.inc
Description: Verkoopfactuur model.
Parameters:
Context:
Notes: TODO: definitieve namen geven
*/
%>
<%
function model_fin_verkoopfactuurregels()
{
this.records_name = "saleinvoicelines";
this.record_name = "saleinvoiceline";
this.table = "fin_verkoopfactuur";
this.primary = "fin_verkoopfactuur_key";
this.autfunction = "WEB_VERFAC";
this.record_title = L("fin_verkoopfactuur");
this.records_title = L("fin_verkoopfactuur_m");
// this.record_title = L("lcl_verkoopfactuurregel"),
// this.records_title = L("lcl_verkoopfactuurregels");
this.fields = {
"id": {
"dbs": "fin_verkoopfactuur_key",
"label": L("lcl_fin_verkoopfactuur_key"),
"typ": "key",
"filter": "exact",
"seq": "fin_s_fin_verkoopfactuur_key"
},
"creation": {
"dbs": "fin_verkoopfactuur_aanmaak",
"label": L("lcl_fin_verkoopfactuur_aanmaak"),
"typ": "datetime",
"readonly": true,
hidden: true
},
"name": {
"dbs": "fin_verkoopfactuur_id",
"label": L("lcl_fin_verkoopfactuur_id"),
"typ": "varchar"
},
"head": {
"dbs": "fin_verkoopfactuurkop_key",
"label": L("fin_verkoopfactuurkop"),
"typ": "key"
},
"invoicedate": {
"dbs": "fin_verkoopfactuur_datum",
"label": L("lcl_fin_verkoopfactuur_datum"),
"typ": "datetime" // date?
},
"description": {
"dbs": "fin_verkoopfactuur_omschr",
"label": L("lcl_fin_verkoopfactuur_omschr"),
"typ": "varchar"
},
"concerning": {
"dbs": "fin_verkoopfactuur_xmlnode",
"label": L("lcl_fin_verkoopfactuur_xmlnode"),
"typ": "varchar"
},
"refkey": {
"dbs": "fin_verkoopfactuur_refkey",
"label": L("lcl_fin_verkoopfactuur_refkey"),
"typ": "varchar",
"filter": "exact"
},
"account": {
"dbs": "prs_kostenplaats_key",
"label": L("lcl_prs_kosten"),
"typ": "key",
"foreign": "prs_kostenplaats",
"filter": "exact"
},
"accountnumber": { // frozen
"dbs": "prs_kostenplaats_nr",
"label": L("lcl_prs_dept_name"),
"typ": "varchar"
},
"accountname": { // frozen
"dbs": "prs_kostenplaats_omschrijving",
"label": L("lcl_prs_dept_desc"),
"typ": "varchar",
"filter": "like"
},
"costcentregroup": {
"dbs": "prs_kostenplaatsgrp_oms",
"label": L("lcl_prs_kostenpl_group"),
"typ": "varchar"
},
"costtypedescription": {
"dbs": "prs_kostensoort_oms",
"label": L("lcl_charge_type"),
"typ": "varchar"
},
"costtyperemark": {
"dbs": "prs_kostensoort_opmerking",
"label": L("lcl_charge_type_remark"),
"typ": "varchar"
},
"costtyperefcode": {
"dbs": "prs_kostensoort_refcode",
"label": L("lcl_prs_kostensoort_refcode"),
"typ": "varchar"
},
"company": {
"dbs": "prs_bedrijf_key",
"label": L("lcl_prs_companies_name"),
"typ": "key",
"foreign": "prs_bedrijf",
"filter": "exact"
},
"debtor": {
"dbs": "prs_debiteur_naam",
"label": L("lcl_prs_debiteur_naam"),
"typ": "varchar"
},
"costtypegroupdescription": {
"dbs": "prs_kostensoortgrp_oms",
"label": L("lcl_prs_kostensoortgrp_oms"),
"typ": "varchar"
},
"amount": {
"dbs": "fin_verkoopfactuur_bedrag",
"label": L("lcl_fin_verkoopfactuur_bedrag"),
"iscurrency": true,
"typ": "float",
"total": true
},
"vatamount": {
"dbs": "fin_verkoopfactuur_btw",
"label": L("lcl_fin_verkoopfactuur_btw"),
"iscurrency": true,
"typ": "float",
"total": true
},
"vattablecode": {
"dbs": "fin_btwtabelwaarde_code",
"label": L("lcl_fin_btwtabelwaarde_code"),
"typ": "varchar"
},
"vattabledescription": {
"dbs": "fin_btwtabelwaarde_oms",
"label": L("lcl_fin_btwtabelwaarde_oms"),
"typ": "varchar"
},
"vattablepercentage": {
"dbs": "fin_btwtabelwaarde_perc",
"label": L("lcl_fin_btwtabelwaarde_perc"),
"typ": "number",
"datatype": "float"
},
"vattableshifted": {
"dbs": "fin_btwtabelwaarde_verlegd",
"label": L("lcl_fin_btwtabelwaarde_verlegd"),
"typ": "number"
},
"month": {
"dbs": "fin_verkoopfactuur_maand",
"label": L("lcl_fin_verkoopfactuur_maand"),
"typ": "varchar"
},
"n1": {
"dbs": "fin_verkoopfactuur_n1",
"label": L("lcl_fin_verkoopfactuur_n1"),
"typ": "number",
"iscurrency": true,
"datatype": "float"
},
"n2": {
"dbs": "fin_verkoopfactuur_n2",
"label": L("lcl_fin_verkoopfactuur_n2"),
"typ": "number",
"iscurrency": true,
"datatype": "float"
},
"n3": {
"dbs": "fin_verkoopfactuur_n3",
"label": L("lcl_fin_verkoopfactuur_n3"),
"typ": "number",
"iscurrency": true,
"datatype": "float"
},
"n4": {
"dbs": "fin_verkoopfactuur_n4",
"label": L("lcl_fin_verkoopfactuur_n4"),
"typ": "number",
"iscurrency": true,
"datatype": "float"
},
"n5": {
"dbs": "fin_verkoopfactuur_n5",
"label": L("lcl_fin_verkoopfactuur_n5"),
"typ": "number",
"iscurrency": true,
"datatype": "float"
},
"c1": {
"dbs": "fin_verkoopfactuur_c1",
"label": L("lcl_fin_verkoopfactuur_c1"),
"typ": "varchar"
},
"c2": {
"dbs": "fin_verkoopfactuur_c2",
"label": L("lcl_fin_verkoopfactuur_c2"),
"typ": "varchar"
},
"c3": {
"dbs": "fin_verkoopfactuur_c3",
"label": L("lcl_fin_verkoopfactuur_c3"),
"typ": "varchar"
},
"c4": {
"dbs": "fin_verkoopfactuur_c4",
"label": L("lcl_fin_verkoopfactuur_c4"),
"typ": "varchar"
},
"c5": {
"dbs": "fin_verkoopfactuur_c5",
"label": L("lcl_fin_verkoopfactuur_c5"),
"typ": "varchar"
},
"c6": {
"dbs": "fin_verkoopfactuur_c6",
"label": L("lcl_fin_verkoopfactuur_c6"),
"typ": "varchar"
},
"c7": {
"dbs": "fin_verkoopfactuur_c7",
"label": L("lcl_fin_verkoopfactuur_c7"),
"typ": "varchar"
},
"c8": {
"dbs": "fin_verkoopfactuur_c8",
"label": L("lcl_fin_verkoopfactuur_c8"),
"typ": "varchar"
},
"d1": {
"dbs": "fin_verkoopfactuur_d1",
"label": L("lcl_fin_verkoopfactuur_d1"),
"typ": "datetime"
},
"d2": {
"dbs": "fin_verkoopfactuur_d2",
"label": L("lcl_fin_verkoopfactuur_d2"),
"typ": "datetime"
},
"d3": {
"dbs": "fin_verkoopfactuur_d3",
"label": L("lcl_fin_verkoopfactuur_d3"),
"typ": "datetime"
},
"d4": {
"dbs": "fin_verkoopfactuur_d4",
"label": L("lcl_fin_verkoopfactuur_d4"),
"typ": "datetime"
},
"d5": {
"dbs": "fin_verkoopfactuur_d5",
"label": L("lcl_fin_verkoopfactuur_d5"),
"typ": "datetime"
}
};
this.list = {
"columns": [
"name",
"concerning",
"refkey",
"invoicedate",
"amount",
"vatamount",
"c1",
"n1",
"d1"
]
};
this.show = {};
this.edit = {};
// api2.generic_REST(this); als we put-post-delete ondersteunen
this.REST_GET = generic_REST_GET(this); // Alleen de GET
}
// Dit is het model voor de factuurregels van een enkele xmlnode/refkey
model_fin_verkoopfactuur = function()
{
this.table = "verkoopfactuur"
this.primary = "fin_verkoopfactuur_id";
this.autfunction = "WEB_VERFAC";
this.record_title = L("lcl_verkoopfactuur"),
this.records_title = L("lcl_verkoopfacturen");
this.tablesql = "(SELECT fin_verkoopfactuur_id"
+ " , fin_verkoopfactuurkop_key"
+ " , 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_verkoopfactuurkop_key"
+ " , fin_verkoopfactuur_datum"
+ " , fin_verkoopfactuur_xmlnode"
+ " , fin_verkoopfactuur_refkey) verkoopfactuur";
this.fields = {
"id": {
"dbs": "fin_verkoopfactuurkop_key",
"label": L("fin_verkoopfactuurkop"),
"typ": "key"
},
"name": {
"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?
},
"concerning": {
"dbs": "fin_verkoopfactuur_xmlnode",
"label": L("lcl_fin_verkoopfactuur_xmlnode"),
"typ": "varchar",
LOV: "resevering;Reservering;bestelopdr;Bestelling;opdracht;Opdracht;contract;Contract"
},
"refkey": {
"dbs": "fin_verkoopfactuur_refkey",
"label": L("lcl_fin_verkoopfactuur_refkey"),
"typ": "varchar",
"filter": "exact"
},
"amount": {
"dbs": "fin_verkoopfactuur_bedrag",
"label": L("lcl_fin_verkoopfactuur_bedrag"),
"iscurrency": true,
"typ": "float",
"total": true
},
"vatamount": {
"dbs": "fin_verkoopfactuur_btw",
"label": L("lcl_fin_verkoopfactuur_btw"),
"iscurrency": true,
"typ": "float",
"total": true
},
"nrlines": {
"dbs": "aantalregels",
"label": L("lcl_nrfinlines"),
"typ": "number"
}
};
this.includes = {
regels: {
model: new model_fin_verkoopfactuurregels(),
joinfield: "head"
}
};
this.list = {
"columns": [
"name",
"invoicedate",
"amount",
"vatamount"
],
default_url : "appl/fin/fin_verkoopfactuurkop.asp?mode=wrap&id="
};
this.search = {
"filters": [
"name",
"concerning",
"refkey"
//"account"
]
};
api2.generic_REST(this); // Alleen de GET
}
// Dit is het model voor alle factuurregels van een fin_verkoopfactuur_id
fin_verkoopfactuurkop = function()
{
this.table = "fin_verkoopfactuurkop";
this.primary = "fin_verkoopfactuurkop_key";
this.autfunction = "WEB_VERFAC";
this.record_title = L("lcl_verkoopfactuur_verzamel"),
this.records_title = L("lcl_verkoopfacturen_verzamel");
this.fields = {
"id": {
"dbs": "fin_verkoopfactuurkop_key",
"label": L("lcl_key"),
"typ": "key"
},
"name": {
"dbs": "fin_verkoopfactuurkop_id",
"label": L("lcl_fin_verkoopfactuur_id"),
"typ": "varchar"
}
};
this.includes = {
regels: {
model: new model_fin_verkoopfactuurregels(),
joinfield: "head"
}
};
this.list = {
"columns": [
"name"
]
};
this.search = {
"filters": [
"name"
]
};
this.print = {
xmlnode: "verkoopfactuur",
key: "id"
};
// api2.generic_REST(this); geen edit en dergelijke
this.REST_GET = generic_REST_GET(this); // Alleen de GET
}
%>