@@ -37,22 +37,13 @@ function model_prs_kostenplaats()
|
||||
"seq": "prs_s_prs_kostenplaats_key"
|
||||
},
|
||||
"budgetdiscipline": {
|
||||
"dbs": "bgt_project.ins_discipline_key",
|
||||
"dbs": "ins_discipline_key",
|
||||
"label": L("bgt_discipline_omschrijving"),
|
||||
"typ": "key",
|
||||
"required": true,
|
||||
"foreign": bgt_budgetdiscipline_foreign(),
|
||||
"showtransit": true
|
||||
},
|
||||
"budgetproject": {
|
||||
"dbs": "bgt_project.bgt_project_key",
|
||||
"label": L("bgt_project_omschrijving"),
|
||||
"typ": "key",
|
||||
"required": true,
|
||||
"foreign": bgt_budgetproject_foreign(),
|
||||
"delayload": true,
|
||||
"showtransit": true
|
||||
},
|
||||
"costgroup": {
|
||||
"dbs": "prs_kostenplaatsgrp_key",
|
||||
"label": L("lcl_prs_kostenpl_group"),
|
||||
@@ -142,65 +133,25 @@ function model_prs_kostenplaats()
|
||||
delete this.fields.limitperiod;
|
||||
delete this.fields.external;
|
||||
delete this.fields.approval;
|
||||
this.fields.costgroup.hidden_fld = true; // Deze wordt bepaald uit de gekozen project/deelproject.
|
||||
|
||||
this.hook_pre_edit = function (obj, fld)
|
||||
{
|
||||
%>
|
||||
<script>
|
||||
var budgetdiscipline_key = <%=(obj.budgetdiscipline ? obj.budgetdiscipline.id : -1)%>;
|
||||
var budgetproject_key = <%=(obj.budgetproject ? obj.budgetproject.id : -1)%>;
|
||||
</script>
|
||||
<%
|
||||
}
|
||||
|
||||
this.hook_pre_post = function (params, jsondata)
|
||||
{
|
||||
var v_discipline_key = jsondata.budgetdiscipline || getQParamInt("budgetdiscipline", -1);
|
||||
var v_project_key = jsondata.budgetproject || getQParamInt("budgetproject", -1);
|
||||
if (v_discipline_key > 0 && v_project_key > 0)
|
||||
{
|
||||
var sql_e = "SELECT prs_kostenplaatsgrp_key"
|
||||
+ " FROM prs_kostenplaatsgrp kpg"
|
||||
+ " WHERE kpg.bgt_project_key = " + v_project_key;
|
||||
var oRs_e = Oracle.Execute(sql_e);
|
||||
var v_kostenplaatsgrp_key = (!oRs_e.eof ? oRs_e("prs_kostenplaatsgrp_key").Value : -1);
|
||||
oRs_e.Close();
|
||||
//
|
||||
if (v_kostenplaatsgrp_key == -1 && v_project_key > 0)
|
||||
{
|
||||
// Ontbrekende verwijzing tussen kostenplaats en project toevoegen.
|
||||
var sql = "INSERT INTO prs_kostenplaatsgrp"
|
||||
+ " (bgt_project_key, prs_kostenplaatsgrp_nr, prs_kostenplaatsgrp_oms)"
|
||||
+ " SELECT " + v_project_key
|
||||
+ " , d.bgt_disc_params_code"
|
||||
+ " , p.bgt_project_code"
|
||||
+ " FROM bgt_project p"
|
||||
+ " , bgt_disc_params d"
|
||||
+ " WHERE p.ins_discipline_key = d.bgt_ins_discipline_key"
|
||||
+ " AND p.bgt_project_key = " + v_project_key;
|
||||
Oracle.Execute(sql);
|
||||
//
|
||||
oRs_e = Oracle.Execute(sql_e);
|
||||
v_kostenplaatsgrp_key = (!oRs_e.eof ? oRs_e("prs_kostenplaatsgrp_key").Value : -1);
|
||||
oRs_e.Close();
|
||||
//
|
||||
if (v_kostenplaatsgrp_key == -1)
|
||||
abort_with_warning("Er is een fout opgetreden bij het aanmaken van de kostenplaatsgroep");
|
||||
}
|
||||
//
|
||||
jsondata.costgroup = v_kostenplaatsgrp_key;
|
||||
}
|
||||
}
|
||||
|
||||
this.REST_GET = generic_REST_GET(this, {
|
||||
"GET": {
|
||||
"tables": [ "prs_kostenplaatsgrp"
|
||||
, "bgt_project"
|
||||
],
|
||||
"wheres": [ "prs_kostenplaatsgrp.bgt_project_key = bgt_project.bgt_project_key"
|
||||
, "prs_kostenplaatsgrp.prs_kostenplaatsgrp_key = prs_kostenplaats.prs_kostenplaatsgrp_key"
|
||||
, "bgt_project.bgt_project_verwijder IS NULL"
|
||||
"wheres": [ "prs_kostenplaatsgrp.prs_kostenplaatsgrp_key(+) = prs_kostenplaats.prs_kostenplaatsgrp_key"
|
||||
]
|
||||
}
|
||||
});
|
||||
@@ -211,7 +162,6 @@ function model_prs_kostenplaats()
|
||||
else
|
||||
{
|
||||
delete this.fields.budgetdiscipline;
|
||||
delete this.fields.budgetproject;
|
||||
delete this.fields.begin;
|
||||
delete this.fields.module.hidden_fld;
|
||||
delete this.fields.module.defaultvalue;
|
||||
|
||||
@@ -114,23 +114,21 @@ if (0) {
|
||||
if (S("bgt_enabled"))
|
||||
{
|
||||
this.fields["budgetdiscipline"] = {
|
||||
"dbs": "ins_tab_discipline.ins_discipline_key",
|
||||
"dbs": "prs_kpdisc.ins_discipline_key",
|
||||
"label": L("bgt_discipline_omschrijving"),
|
||||
"typ": "key",
|
||||
"foreign": bgt_budgetdiscipline_foreign(),
|
||||
"hidden_fld": true
|
||||
};
|
||||
|
||||
var get_tbl = "(SELECT DISTINCT"
|
||||
+ " prs_kostenplaatsgrp_key"
|
||||
+ " , ins_discipline_key"
|
||||
+ " FROM prs_kostenplaats) prs_kpdisc";
|
||||
gparams = {
|
||||
GET: {
|
||||
tables: [
|
||||
"prs_kostenplaats",
|
||||
"ins_tab_discipline"
|
||||
],
|
||||
wheres: [
|
||||
"prs_kostenplaats.ins_discipline_key = ins_tab_discipline.ins_discipline_key",
|
||||
"prs_kostenplaats.prs_kostenplaatsgrp_key = prs_kostenplaatsgrp.prs_kostenplaatsgrp_key"
|
||||
]
|
||||
tables: [get_tbl],
|
||||
wheres: ["prs_kostenplaatsgrp.prs_kostenplaatsgrp_key = prs_kpdisc.prs_kostenplaatsgrp_key(+)"]
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ function init_budget()
|
||||
// budgetdiscipline en budgetproject kunnen ook als gekozen filter worden meegegeven
|
||||
// en worden dan als readonly velden getoond.
|
||||
// LET OP: bij delayload = true wordt een select nooit default gevuld voordat het hier komt.
|
||||
var v_budgetdiscipline = (typeof $("#budgetdiscipline").val() == "undefined" ? (typeof budgetdiscipline_key == "undefined" ? -1 : budgetdiscipline_key) : $("#budgetdiscipline").val() );
|
||||
var v_budgetdiscipline = typeof budgetdiscipline_key == "undefined" ? -1 : budgetdiscipline_key;
|
||||
var v_budgetproject = typeof budgetproject_key == "undefined" ? -1 : budgetproject_key;
|
||||
var v_budgetcostcategory = typeof budgetcostcategory_key == "undefined" ? -1 : budgetcostcategory_key;
|
||||
var v_costtypegroup = typeof costtypegroup_key == "undefined" ? -1 : costtypegroup_key;
|
||||
@@ -143,6 +143,7 @@ function change_groep()
|
||||
}
|
||||
function change_soort()
|
||||
{
|
||||
var bdiscipline_key = typeof budgetdiscipline_key == "undefined" ? -1 : budgetdiscipline_key;
|
||||
var bproject_key = typeof budgetproject_key == "undefined" ? -1 : budgetproject_key;
|
||||
var kplaats_key = -1;
|
||||
var btw_perc = 0;
|
||||
|
||||
@@ -58,6 +58,9 @@ scaffolding(this_model,
|
||||
},
|
||||
"modal": true
|
||||
},
|
||||
"filter": {
|
||||
"nolimit": true
|
||||
},
|
||||
"transit": {
|
||||
"budgetcommon": p_budget_key
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user