FSN#39055 BCS/2000 functionaliteit in FACILITOR - customization

svn path=/Website/branches/v2017.2/; revision=35799
This commit is contained in:
Erik Groener
2017-10-24 11:02:49 +00:00
parent c66544f61b
commit f19d64e074
10 changed files with 87 additions and 38 deletions

View File

@@ -14,6 +14,7 @@
<!-- #include file="../bgt/bgt_tools.inc" --> <!-- #include file="../bgt/bgt_tools.inc" -->
<!-- #include file="../api2/model_bgt_budgetmutatie.inc" --> <!-- #include file="../api2/model_bgt_budgetmutatie.inc" -->
<% <%
var v_checkauth = getQParamInt("id", 0) > 0;
function model_bgt_budget() function model_bgt_budget()
{ {
@@ -41,7 +42,7 @@ function model_bgt_budget()
"typ": "key", "typ": "key",
"required": true, "required": true,
"insertonly": true, "insertonly": true,
"foreign": bgt_budgetdiscipline_foreign(), "foreign": bgt_budgetdiscipline_foreign(v_checkauth),
"showtransit": true "showtransit": true
}, },
"budgetproject": { "budgetproject": {

View File

@@ -284,10 +284,10 @@ function model_fin_factuur()
"mld_opdr" "mld_opdr"
], ],
wheres: [ wheres: [
"fin_factuur.prs_kostensoort_key = prs_kostensoort.prs_kostensoort_key",
"prs_kostensoort.prs_kostensoortgrp_key = prs_kostensoortgrp.prs_kostensoortgrp_key", "prs_kostensoort.prs_kostensoortgrp_key = prs_kostensoortgrp.prs_kostensoortgrp_key",
"prs_kostensoortgrp.bgt_kostenrubriek_key = bgt_kostenrubriek.bgt_kostenrubriek_key", "prs_kostensoortgrp.bgt_kostenrubriek_key = bgt_kostenrubriek.bgt_kostenrubriek_key",
"bgt_kostenrubriek.bgt_project_key = bgt_project.bgt_project_key", "bgt_kostenrubriek.bgt_project_key = bgt_project.bgt_project_key",
"mld_opdr.prs_kostensoort_key = prs_kostensoort.prs_kostensoort_key",
"mld_opdr.mld_opdr_key = fin_factuur.mld_opdr_key" "mld_opdr.mld_opdr_key = fin_factuur.mld_opdr_key"
] ]
} }

View File

@@ -204,12 +204,6 @@ function model_mld_opdr()
}; };
if (mode == "show")
{
this.fields.ordernr_sort.hidden_fld = false;
this.fields.ordernr_sort.readonly = true;
}
this.hook_pre_edit = function (obj, fld) this.hook_pre_edit = function (obj, fld)
{ {
var btw_data = {}; var btw_data = {};

View File

@@ -18,6 +18,20 @@
var kostensoort_key = getQParamInt("costtype", -1); var kostensoort_key = getQParamInt("costtype", -1);
var this_model = new model_bgt_budget(); var this_model = new model_bgt_budget();
if (mode == "show")
{
var budget_key = getQParamInt("id", -1);
var sql = "SELECT count(*) aantal"
+ " FROM mld_opdr o"
+ " , bgt_budget b"
+ " WHERE o.prs_kostensoort_key = b.prs_kostensoort_key"
+ " AND b.bgt_budget_key = " + budget_key;
var oRs = Oracle.Execute(sql);
if (oRs("aantal").Value > 0)
delete this_model.REST_DELETE;
oRs.Close();
}
var model_params = { var model_params = {
"search": { "search": {
"autosearch": true, "autosearch": true,

View File

@@ -132,8 +132,6 @@ function change_groep()
} }
function change_soort() function change_soort()
{ {
var soort_key = $("#costtype").val();
var btw_perc = parseFloat($("#costtype option:selected").attr("perc_btw").replace(/,/g,".")); var btw_perc = parseFloat($("#costtype option:selected").attr("perc_btw").replace(/,/g,"."));
if ($("#amount").val() && btw_perc != kostensoort_btw) if ($("#amount").val() && btw_perc != kostensoort_btw)
{ {
@@ -162,6 +160,13 @@ function change_amount()
} }
kostensoort_btw = btw_perc; // Huidige btw-percentage globaal opslaan. kostensoort_btw = btw_perc; // Huidige btw-percentage globaal opslaan.
if (isNaN(amount))
{
$("#vat").val("");
$("#vat").closest("tr").next("tr").find("span").text("");
}
else
{
if (btw_perc && !isNaN(btw_perc)) if (btw_perc && !isNaN(btw_perc))
{ {
var perc = (btw_perc / 100); var perc = (btw_perc / 100);
@@ -171,6 +176,7 @@ function change_amount()
$("#vat").val(num2currEditable(vat)); $("#vat").val(num2currEditable(vat));
$("#vat").closest("tr").next("tr").find("span").text(num2currEditable(incl)); $("#vat").closest("tr").next("tr").find("span").text(num2currEditable(incl));
} }
}
} }
function change_vat() function change_vat()
@@ -178,8 +184,15 @@ function change_vat()
// bereken totaalbedrag bij wijziging van het btw-bedrag. // bereken totaalbedrag bij wijziging van het btw-bedrag.
var amount = parseFloat($("#amount").val().replace(/,/g,".")); var amount = parseFloat($("#amount").val().replace(/,/g,"."));
var vat = parseFloat($("#vat").val().replace(/,/g,".")); var vat = parseFloat($("#vat").val().replace(/,/g,"."));
var incl = amount + vat; var incl = (isNaN(amount) ? vat : amount + vat);
if (isNaN(vat))
{
$("#vat").closest("tr").next("tr").find("span").text("");
}
else
{
$("#vat").closest("tr").next("tr").find("span").text(num2currEditable(incl)); $("#vat").closest("tr").next("tr").find("span").text(num2currEditable(incl));
}
} }
function change_account() function change_account()

View File

@@ -186,7 +186,7 @@ var authparamsBGTUSE = user.checkAutorisation("WEB_BGTUSE");
sql, sql,
{ label: L("lcl_bgt_group"), { label: L("lcl_bgt_group"),
xreadonly: groupby > -1, xreadonly: groupby > -1,
initKey: (groupby == -1 ? 3 : groupby) initKey: (groupby == -1 ? 5 : groupby)
} }
); );
%> %>

View File

@@ -152,7 +152,8 @@ var transitParam = buildTransitParam([]);
FcltMgr.openDetail(url, { reuse: true }); FcltMgr.openDetail(url, { reuse: true });
} }
</script> </script>
<% } // outputmode=0 %> <% } // outputmode=0
%>
</head> </head>
<body id="listbody"> <body id="listbody">
@@ -871,10 +872,7 @@ var transitParam = buildTransitParam([]);
outputmode: outputmode, outputmode: outputmode,
filterParams: params, filterParams: params,
title: L("bgt_totaaloverzicht"), title: L("bgt_totaaloverzicht"),
showAll: true, showAll: true
// buttons: buttons,
advancedprint: true, //S("ph_export_advanced"),
advancedprint_title: L("lcl_pb_export_advanced")
}); });

View File

@@ -19,24 +19,32 @@ function object_merge(){
return arguments[0]; return arguments[0];
} }
function bgt_budgetdiscipline_foreign() function bgt_budgetdiscipline_foreign(p_checkauth)
{ {
return { var tbl = "(SELECT d.ins_discipline_key"
"tbl": "(SELECT d.ins_discipline_key"
+ ", p.bgt_disc_params_code ||' - '|| d.ins_discipline_omschrijving oms" + ", p.bgt_disc_params_code ||' - '|| d.ins_discipline_omschrijving oms"
+ " FROM ins_tab_discipline d" + " FROM ins_tab_discipline d"
+ " , bgt_disc_params p" + " , bgt_disc_params p"
+ " WHERE d.ins_discipline_key = p.bgt_ins_discipline_key" + " WHERE d.ins_discipline_key = p.bgt_ins_discipline_key"
+ " AND d.ins_discipline_module = 'BGT'" + " AND d.ins_discipline_module = 'BGT'"
+ " AND d.ins_discipline_verwijder IS NULL" + " AND d.ins_discipline_verwijder IS NULL";
if (p_checkauth)
{
tbl += ""
+ " AND ins_discipline_key IN" + " AND ins_discipline_key IN"
+ " (SELECT ins_discipline_key FROM fac_v_webgebruiker" + " (SELECT ins_discipline_key FROM fac_v_webgebruiker"
+ " WHERE prs_perslid_key = " + user_key + " WHERE prs_perslid_key = " + user_key
+ " AND (fac_gebruiker_prs_level_read<9 OR fac_gebruiker_alg_level_read<9))" + " AND (fac_gebruiker_prs_level_read<9 OR fac_gebruiker_alg_level_read<9))";
+ ")", }
tbl += ")"
var foreign = {
"tbl": tbl,
"key": "ins_discipline_key", "key": "ins_discipline_key",
"desc": "oms" "desc": "oms"
}; };
return foreign;
} }
function bgt_budgetproject_foreign() function bgt_budgetproject_foreign()
@@ -134,15 +142,18 @@ function bgt_accountgroup_foreign()
}; };
} }
function bgt_company_foreign() function bgt_company_foreign(p_oms)
{ {
return { var v_oms = p_oms || 0;
"tbl": "(SELECT prs_bedrijf_key" var tbl = "(SELECT prs_bedrijf_key"
+ " , prs_leverancier_nr ||' - '|| prs_bedrijf_naam oms" + " , prs_leverancier_nr" + (v_oms == 0 ? " ||' - '|| prs_bedrijf_naam" : "") + " oms"
+ " FROM prs_bedrijf)", + " FROM prs_bedrijf)";
var foreign = {
"tbl": tbl,
"key": "prs_bedrijf_key", "key": "prs_bedrijf_key",
"desc": "oms" "desc": "oms"
}; };
return foreign;
} }
function bgt_order_foreign() function bgt_order_foreign()

View File

@@ -19,6 +19,12 @@ var p_mld_opdr_key = getQParamInt("opdrachtcommon", -1);
var project_key = getQParamInt("budgetproject", -1); var project_key = getQParamInt("budgetproject", -1);
var this_model = new model_fin_factuur(); var this_model = new model_fin_factuur();
if (mode == "list")
{
this_model.fields.company.foreign = bgt_company_foreign(1);
}
scaffolding(this_model, scaffolding(this_model,
{ {
"search": { "search": {
@@ -42,16 +48,16 @@ scaffolding(this_model,
}, },
"list": { "list": {
"columns": [ "columns": [
"invoice",
"date", "date",
"invoice",
"ordernr", "ordernr",
"budgetproject", "budgetproject",
"company", "company",
"remark", "remark",
"advice",
"total", "total",
"totalvat", "totalvat",
"totalincl" "totalincl",
"advice"
], ],
"orderby": [ "orderby": [
"invoice", "invoice",

View File

@@ -17,6 +17,18 @@
<% <%
var project_key = getQParamInt("budgetproject", -1); var project_key = getQParamInt("budgetproject", -1);
var this_model = new model_mld_opdr(); var this_model = new model_mld_opdr();
if (mode == "show")
{
this_model.fields.ordernr_sort.hidden_fld = false;
this_model.fields.ordernr_sort.readonly = true;
}
if (mode == "list")
{
this_model.fields.company.foreign = bgt_company_foreign(1);
}
scaffolding(this_model, scaffolding(this_model,
{ {
"search": { "search": {