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="../api2/model_bgt_budgetmutatie.inc" -->
<%
var v_checkauth = getQParamInt("id", 0) > 0;
function model_bgt_budget()
{
@@ -41,7 +42,7 @@ function model_bgt_budget()
"typ": "key",
"required": true,
"insertonly": true,
"foreign": bgt_budgetdiscipline_foreign(),
"foreign": bgt_budgetdiscipline_foreign(v_checkauth),
"showtransit": true
},
"budgetproject": {

View File

@@ -284,10 +284,10 @@ function model_fin_factuur()
"mld_opdr"
],
wheres: [
"fin_factuur.prs_kostensoort_key = prs_kostensoort.prs_kostensoort_key",
"prs_kostensoort.prs_kostensoortgrp_key = prs_kostensoortgrp.prs_kostensoortgrp_key",
"prs_kostensoortgrp.bgt_kostenrubriek_key = bgt_kostenrubriek.bgt_kostenrubriek_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"
]
}

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)
{
var btw_data = {};

View File

@@ -18,6 +18,20 @@
var kostensoort_key = getQParamInt("costtype", -1);
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 = {
"search": {
"autosearch": true,

View File

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

View File

@@ -186,7 +186,7 @@ var authparamsBGTUSE = user.checkAutorisation("WEB_BGTUSE");
sql,
{ label: L("lcl_bgt_group"),
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 });
}
</script>
<% } // outputmode=0 %>
<% } // outputmode=0
%>
</head>
<body id="listbody">
@@ -871,10 +872,7 @@ var transitParam = buildTransitParam([]);
outputmode: outputmode,
filterParams: params,
title: L("bgt_totaaloverzicht"),
showAll: true,
// buttons: buttons,
advancedprint: true, //S("ph_export_advanced"),
advancedprint_title: L("lcl_pb_export_advanced")
showAll: true
});

View File

@@ -19,24 +19,32 @@ function object_merge(){
return arguments[0];
}
function bgt_budgetdiscipline_foreign()
function bgt_budgetdiscipline_foreign(p_checkauth)
{
return {
"tbl": "(SELECT d.ins_discipline_key"
var tbl = "(SELECT d.ins_discipline_key"
+ ", p.bgt_disc_params_code ||' - '|| d.ins_discipline_omschrijving oms"
+ " FROM ins_tab_discipline d"
+ " , bgt_disc_params p"
+ " WHERE d.ins_discipline_key = p.bgt_ins_discipline_key"
+ " 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"
+ " (SELECT ins_discipline_key FROM fac_v_webgebruiker"
+ " 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",
"desc": "oms"
};
return foreign;
}
function bgt_budgetproject_foreign()
@@ -134,15 +142,18 @@ function bgt_accountgroup_foreign()
};
}
function bgt_company_foreign()
function bgt_company_foreign(p_oms)
{
return {
"tbl": "(SELECT prs_bedrijf_key"
+ " , prs_leverancier_nr ||' - '|| prs_bedrijf_naam oms"
+ " FROM prs_bedrijf)",
var v_oms = p_oms || 0;
var tbl = "(SELECT prs_bedrijf_key"
+ " , prs_leverancier_nr" + (v_oms == 0 ? " ||' - '|| prs_bedrijf_naam" : "") + " oms"
+ " FROM prs_bedrijf)";
var foreign = {
"tbl": tbl,
"key": "prs_bedrijf_key",
"desc": "oms"
};
return 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 this_model = new model_fin_factuur();
if (mode == "list")
{
this_model.fields.company.foreign = bgt_company_foreign(1);
}
scaffolding(this_model,
{
"search": {
@@ -42,16 +48,16 @@ scaffolding(this_model,
},
"list": {
"columns": [
"invoice",
"date",
"invoice",
"ordernr",
"budgetproject",
"company",
"remark",
"advice",
"total",
"totalvat",
"totalincl"
"totalincl",
"advice"
],
"orderby": [
"invoice",

View File

@@ -17,6 +17,18 @@
<%
var project_key = getQParamInt("budgetproject", -1);
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,
{
"search": {