FSN#39054 Budgetcontrole uitbreiding: BGT module savepoint
svn path=/Website/trunk/; revision=32889
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
<% /*
|
||||
$Revision$
|
||||
$Id$
|
||||
File: mjb/mjb_search.asp
|
||||
File: bgt/bgt_search.asp
|
||||
Description: Menuoptie BGT Totaaloverzicht
|
||||
Parameters:
|
||||
Context:
|
||||
@@ -10,8 +10,7 @@
|
||||
|
||||
@todo
|
||||
- project (dis_key) is vereist
|
||||
- deelproject (bgt_srtgroep) is optioneel. Indien gegeven dan niet muteerbaar getoond, anders te kiezen default leeg
|
||||
- zoektekst zoekt fuzzy door vanalles, zoveel als dat er tijd voor is
|
||||
- deelproject (bgt_project) is optioneel. Indien gegeven dan niet muteerbaar getoond, anders te kiezen default leeg
|
||||
- groepering kan als groupby ook optioneel worden meegegeven
|
||||
|
||||
|
||||
@@ -21,8 +20,6 @@
|
||||
<!-- #include file="../Shared/selector.inc" -->
|
||||
|
||||
<!-- #include file="../Shared/disciplineselector.inc" -->
|
||||
<!-- #include file="../Shared/srtgroepselector.inc" -->
|
||||
<!-- #include file="../Shared/srtdeelselector.inc" -->
|
||||
<%
|
||||
|
||||
FCLTHeader.Requires({ plugins:["suggest", "jQuery"],
|
||||
@@ -32,10 +29,9 @@ FCLTHeader.Requires({ plugins:["suggest", "jQuery"],
|
||||
/***** Get webform parameters *****/
|
||||
var autosearch = getQParamInt("autosearch", 0) == 1;
|
||||
|
||||
var groep = getQParam("groep", ""); // Categorie/Groep
|
||||
if (groep == -1) groep = "";
|
||||
var bgtdisc_key = getQParamInt("dis_key"); // Discipline initialisatie
|
||||
var srtgroep = getQParamInt("srtgroep", -1); // Groep
|
||||
var bgtdisc_key = getQParamInt("dis_key"); // Project
|
||||
var bgtproj_key = getQParamInt("bgtproj_key", -1); // Deelproject
|
||||
var groupby = getQParamInt("groupby", -1); // Groepering
|
||||
|
||||
|
||||
/*if (bgtdisc_key <= 0) // Als er maar eentje is selecteer die automatisch
|
||||
@@ -91,44 +87,42 @@ var authparamsBGTUSE = user.checkAutorisation("WEB_BGTUSE");
|
||||
<tr>
|
||||
<td class="searchkolom1"><!-- start column 1 -->
|
||||
<table><!-- x rijen, 2 kolommen: label + veld -->
|
||||
<!-- Object -->
|
||||
<tr class="primsearch">
|
||||
<td class="label"><label for="search"><%=L("lcl_search")%>:</label></td>
|
||||
<td><input type="text" class="fldseaerch" name="search" value=""></td>
|
||||
</tr>
|
||||
<%
|
||||
// Soort groep
|
||||
FCLTsrtgroepselector("srtgroep",
|
||||
"sgSrtgroep",
|
||||
{ label: L("bgt_srtgroep_omschrijving"),
|
||||
srtgroep_key: srtgroep,
|
||||
autfunction: autfunctionBGTUSE,
|
||||
trclass: "primsearch noxd",
|
||||
whenEmpty: L("lcl_search_generic")
|
||||
});
|
||||
|
||||
|
||||
var sql = "SELECT bgt_project_key, bgt_project_code||' '||bgt_project_omschrijving "
|
||||
+ " FROM bgt_project"
|
||||
+ " WHERE ins_discipline_key = "+ bgtdisc_key;
|
||||
|
||||
FCLTselector("bgtproj_key",
|
||||
sql,
|
||||
{ label: L("bgt_project"),
|
||||
xdisable: bgtproj_key > -1, // dan komt de waarde niet door, jammer
|
||||
xreadonly: bgtproj_key > -1, // dan komt de waarde niet door, jammer
|
||||
multi: true,
|
||||
emptyOption: L("lcl_all"),
|
||||
initKey: bgtproj_key
|
||||
}
|
||||
);
|
||||
sql = "SELECT "
|
||||
+ " 1, " + safe.qL("lcl_fin_invoices") + ", 6 FROM DUAL"
|
||||
+ " UNION SELECT 2, " + safe.qL("lcl_orders") + ", 5 FROM DUAL"
|
||||
+ " UNION SELECT 3, " + safe.qL("prs_kostensoort") + ", 4 FROM DUAL"
|
||||
+ " UNION SELECT 4, " + safe.qL("prs_kostensoortgrp") + ", 3 FROM DUAL"
|
||||
+ " UNION SELECT 5, " + safe.qL("bgt_kostenrubriek") + ", 2 FROM DUAL"
|
||||
+ " UNION SELECT 6, " + safe.qL("bgt_project") + ", 1 FROM DUAL"
|
||||
+ " ORDER BY 3";
|
||||
FCLTselector("groupby",
|
||||
sql,
|
||||
{ label: L("lcl_bgt_group"),
|
||||
xreadonly: groupby > -1,
|
||||
initKey: (groupby == -1 ? 3 : groupby)
|
||||
}
|
||||
);
|
||||
%>
|
||||
</table>
|
||||
</td><!-- end column 1 -->
|
||||
|
||||
<!-- Second column -->
|
||||
<td valign=top>
|
||||
<table><!-- x rijen, 2 kolommen: label + veld -->
|
||||
<% sql = "SELECT 1, " + safe.qL("bgt_srtgroep_omschrijving") + ", 1 FROM DUAL"
|
||||
+ " UNION SELECT 2, " + safe.qL("bgt_kostenrubriek_oms") + ", 2 FROM DUAL"
|
||||
+ " UNION SELECT 3, " + safe.qL("bgt_srtgroep_omschrijving") + ", 3 FROM DUAL"
|
||||
+ " UNION SELECT 4, " + safe.qL("prs_kostensoort_opmerking") + ", 4 FROM DUAL"
|
||||
+ " UNION SELECT 5, " + safe.qL("bgt_opdrachten") + ", 5 FROM DUAL"
|
||||
+ " UNION SELECT 6, " + safe.qL("bgt_facturen") + ", 6 FROM DUAL";
|
||||
|
||||
|
||||
FCLTselector("groupby",
|
||||
sql,
|
||||
{ label: L("lcl_mjb_group")
|
||||
});
|
||||
%> </table>
|
||||
</td><!-- end column 2-->
|
||||
</tr>
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
|
||||
- totaalregel moet totaaltelling geven
|
||||
|
||||
- groepering is leuk stukje
|
||||
- groepering is leuk stukje, pas op dat je bedragen niet dubbel meetelt
|
||||
|
||||
*/ %>
|
||||
<!-- #include file="../Shared/common.inc" -->
|
||||
@@ -42,9 +42,24 @@ var excel = (outputmode == 2 || outputmode == 6);
|
||||
|
||||
|
||||
var bgtdisc_key = getQParamInt("dis_key"); // bgt discipline is echt vereist
|
||||
var bgt_srtgroep_key = getQParamInt("srtgroep_key", -1);
|
||||
var bgtproj_key_arr = getQParamIntArray("bgtproj_key", []);
|
||||
if (bgtdisc_key > 0)
|
||||
lcl.set_dialect(bgtdisc_key, "INS_TAB_DISCIPLINE_KEY");
|
||||
lcl.set_dialect(bgtdisc_key, "INS_TAB_DISCIPLINE_KEY"); // TBD. Nodig?
|
||||
|
||||
var groupby = getQParamInt("groupby");
|
||||
// -1. niks
|
||||
// 1. facturen
|
||||
// 2. opdrachten
|
||||
|
||||
// 3. kostensoort
|
||||
// 4. kostensoortgrp
|
||||
// 5. kostenrubriek
|
||||
// 6. project
|
||||
//
|
||||
// IK DENK DAT IK HIER TOCH OOK NOG DE PLATTERE GROEPERINGEN WIL: alle opdrachten met SUM(facturen) en zelfs alle facturen
|
||||
// Dan ben je eigenlijk in 1 scherm klaar!
|
||||
// Kun je dan zelf een individuele opdracht/factuur in een popup editen? Hoe voeg je dan leuk toe?
|
||||
// Ik sluit een bgt-variant van mld_opdr.asp resp fin_factuur.asp niet geheel uit. Wel met de bestaande _save.asp's
|
||||
|
||||
var params = { };
|
||||
var transitParam = buildTransitParam([]);
|
||||
@@ -54,81 +69,301 @@ var transitParam = buildTransitParam([]);
|
||||
|
||||
<%
|
||||
FCLTHeader.Generate({ outputmode: outputmode });
|
||||
|
||||
if (outputmode == 0) {
|
||||
%>
|
||||
<script type="text/javascript">
|
||||
function naarbudgetmutaties(ks_key, deze)
|
||||
{
|
||||
var url = "appl/bgt/bgt_mutaties.asp?ks_key=" + ks_key ; // todo
|
||||
FcltMgr.openDetail(url, $(deze).text());
|
||||
}
|
||||
function naaropdrachten(ks_key, deze)
|
||||
{
|
||||
// zoiets. Of naar opdr_list.asp waar dan kostensoort_key ook een nieuwe optie is?
|
||||
var url = "appl/mld/opdr_search.asp?urole=bgt&ks_key="+ks_key; //todo
|
||||
FcltMgr.openDetail(url, $(deze).text());
|
||||
}
|
||||
function naarfacturen(ks_key, deze)
|
||||
{
|
||||
// zoiets. Of naar fin_search.asp ?
|
||||
var url = "appl/fin/fin_list.asp?urole=bgt&ks_key="+ks_key; //todo
|
||||
FcltMgr.openDetail(url, $(deze).text());
|
||||
}
|
||||
<%
|
||||
}
|
||||
%>
|
||||
</script>
|
||||
</head>
|
||||
<body id="listbody">
|
||||
<%
|
||||
|
||||
// zoiets moet het dan gaan worden. Vast nog wat verfijnder. UNIONs met reserve e.d. nodig?
|
||||
var sql = "SELECT "
|
||||
+ " kr.bgt_kostenrubriek_oms rubriek, "
|
||||
+ " ksg.prs_kostensoortgrp_oms groep, "
|
||||
+ " ks.prs_kostensoort_opmerking onderdeel, "
|
||||
+ " bud.bgt_budget_limiet budget, "
|
||||
+ " SUM (o.mld_opdr_kosten) gecontracteerd, "
|
||||
+ " bud.bgt_budget_limiet - SUM (o.mld_opdr_kosten) tecontracteren, "
|
||||
+ " SUM (f.fin_factuur_totaal) gefactureerd, "
|
||||
+ " SUM (o.mld_opdr_kosten) - SUM (f.fin_factuur_totaal) tefactureren, "
|
||||
+ " bgt_budget_key,"
|
||||
+ " bgt_srtgroep_omschrijving deelproject,"
|
||||
+ " ins_discipline_omschrijving project"
|
||||
+ " FROM mld_opdr o, "
|
||||
+ " prs_kostensoort ks, "
|
||||
+ " prs_kostensoortgrp ksg, "
|
||||
+ " bgt_kostenrubriek kr, "
|
||||
+ " bgt_budget bud, "
|
||||
+ " bgt_srtgroep sg, "
|
||||
+ " ins_tab_discipline id, "
|
||||
+ " fin_factuur f "
|
||||
+ " WHERE o.prs_kostensoort_key(+) = ks.prs_kostensoort_key "
|
||||
+ " AND ksg.bgt_kostenrubriek_key = kr.bgt_kostenrubriek_key "
|
||||
+ " AND ks.prs_kostensoort_key(+) = bud.prs_kostensoort_key "
|
||||
+ " AND sg.bgt_srtgroep_key = kr.bgt_srtgroep_key "
|
||||
+ " AND ksg.prs_kostensoortgrp_key(+) = ks.prs_kostensoortgrp_key "
|
||||
+ " AND f.mld_opdr_key(+) = o.mld_opdr_key "
|
||||
+ " AND id.ins_discipline_key = sg.ins_discipline_key "
|
||||
+ " AND sg.ins_discipline_key = " + bgtdisc_key
|
||||
+ " GROUP BY bgt_kostenrubriek_oms, "
|
||||
+ " prs_kostensoortgrp_oms, "
|
||||
+ " prs_kostensoort_opmerking, "
|
||||
+ " bgt_budget_limiet , "
|
||||
+ " bgt_budget_key , "
|
||||
+ " bgt_srtgroep_omschrijving , "
|
||||
+ " ins_discipline_omschrijving "
|
||||
+ " ORDER BY kr.bgt_kostenrubriek_oms, "
|
||||
+ " ksg.prs_kostensoortgrp_oms, "
|
||||
+ " ks.prs_kostensoort_opmerking ";
|
||||
// zoiets moet het dan gaan worden. Vast nog wat verfijnder. UNIONs met reserve e.d. nodig?
|
||||
if (groupby == 1) // facturen
|
||||
{
|
||||
var sql ="SELECT"
|
||||
+ " kr.bgt_kostenrubriek_oms rubriek,"
|
||||
+ " ksg.prs_kostensoortgrp_oms groep,"
|
||||
+ " ks.prs_kostensoort_opmerking onderdeel,"
|
||||
// + " bud.bgt_budget_bedrag budget,"
|
||||
+ " b.prs_bedrijf_naam uitvoerder,"
|
||||
+ " o.mld_opdr_id opdrachtnr,"
|
||||
//+ " o.mld_opdr_kosten gecontracteerd,"
|
||||
// + " bud.bgt_budget_bedrag" + " - SUM (COALESCE(o.mld_opdr_kosten,0)) tecontracteren,"
|
||||
+ " f.fin_factuur_nr factuur,"
|
||||
+ " f.fin_factuur_datum factuurdatum,"
|
||||
+ " f.fin_factuur_totaal gefactureerd,"
|
||||
+ " bgt_project_omschrijving deelproject,"
|
||||
+ " ins_discipline_omschrijving project"
|
||||
+ " FROM mld_opdr o,"
|
||||
+ " prs_kostensoort ks,"
|
||||
+ " prs_bedrijf b,"
|
||||
+ " prs_kostensoortgrp ksg,"
|
||||
+ " bgt_kostenrubriek kr,"
|
||||
+ " bgt_budget bud,"
|
||||
+ " bgt_project pr,"
|
||||
+ " ins_tab_discipline id,"
|
||||
+ " fin_factuur f"
|
||||
+ " WHERE o.prs_kostensoort_key(+) = ks.prs_kostensoort_key"
|
||||
+ " AND ksg.bgt_kostenrubriek_key = kr.bgt_kostenrubriek_key"
|
||||
+ " AND ks.prs_kostensoort_key(+) = bud.prs_kostensoort_key"
|
||||
+ " AND pr.bgt_project_key = kr.bgt_project_key"
|
||||
+ " AND ksg.prs_kostensoortgrp_key(+) = ks.prs_kostensoortgrp_key"
|
||||
+ " AND b.prs_bedrijf_key = o.mld_uitvoerende_keys"
|
||||
+ " AND f.mld_opdr_key(+) = o.mld_opdr_key"
|
||||
+ " AND id.ins_discipline_key = pr.ins_discipline_key"
|
||||
+ (bgtproj_key_arr.length > 0 ? " AND pr.bgt_project_key IN (" + bgtproj_key_arr.join(",") + ")" : "")
|
||||
+ " AND pr.ins_discipline_key =" + bgtdisc_key;
|
||||
|
||||
sql += " ORDER BY "
|
||||
+ "bgt_project_omschrijving"
|
||||
+ ",kr.bgt_kostenrubriek_oms"
|
||||
+ ",ksg.prs_kostensoortgrp_oms"
|
||||
+ ",ks.prs_kostensoort_opmerking"
|
||||
+ ",b.prs_bedrijf_naam"
|
||||
+ ",f.fin_factuur_datum";
|
||||
}
|
||||
else if (groupby ==2) // opdrachten
|
||||
{
|
||||
var sql ="SELECT"
|
||||
+ " kr.bgt_kostenrubriek_oms rubriek,"
|
||||
+ " ksg.prs_kostensoortgrp_oms groep,"
|
||||
+ " ks.prs_kostensoort_opmerking onderdeel,"
|
||||
// + " bud.bgt_budget_bedrag budget,"
|
||||
+ " b.prs_bedrijf_naam uitvoerder,"
|
||||
+ " o.mld_opdr_id opdrachtnr,"
|
||||
+ " o.mld_opdr_datumbegin opdrachtdatum,"
|
||||
+ " o.mld_opdr_kosten gecontracteerd,"
|
||||
// + " bud.bgt_budget_bedrag" + " - SUM (COALESCE(o.mld_opdr_kosten,0)) tecontracteren,"
|
||||
+ " SUM (f.fin_factuur_totaal) gefactureerd,"
|
||||
+ " COALESCE(o.mld_opdr_kosten,0) - SUM (COALESCE(f.fin_factuur_totaal,0)) tefactureren,"
|
||||
+ " bgt_project_omschrijving deelproject,"
|
||||
+ " ins_discipline_omschrijving project"
|
||||
+ " FROM mld_opdr o,"
|
||||
+ " prs_kostensoort ks,"
|
||||
+ " prs_bedrijf b,"
|
||||
+ " prs_kostensoortgrp ksg,"
|
||||
+ " bgt_kostenrubriek kr,"
|
||||
+ " bgt_budget bud,"
|
||||
+ " bgt_project pr,"
|
||||
+ " ins_tab_discipline id,"
|
||||
+ " fin_factuur f"
|
||||
+ " WHERE o.prs_kostensoort_key(+) = ks.prs_kostensoort_key"
|
||||
+ " AND ksg.bgt_kostenrubriek_key = kr.bgt_kostenrubriek_key"
|
||||
+ " AND ks.prs_kostensoort_key(+) = bud.prs_kostensoort_key"
|
||||
+ " AND pr.bgt_project_key = kr.bgt_project_key"
|
||||
+ " AND ksg.prs_kostensoortgrp_key(+) = ks.prs_kostensoortgrp_key"
|
||||
+ " AND b.prs_bedrijf_key = o.mld_uitvoerende_keys"
|
||||
+ " AND f.mld_opdr_key(+) = o.mld_opdr_key"
|
||||
+ " AND id.ins_discipline_key = pr.ins_discipline_key"
|
||||
+ (bgtproj_key_arr.length > 0 ? " AND pr.bgt_project_key IN (" + bgtproj_key_arr.join(",") + ")" : "")
|
||||
+ " AND pr.ins_discipline_key =" + bgtdisc_key;
|
||||
sql += " GROUP BY "
|
||||
+ " kr.bgt_kostenrubriek_oms,"
|
||||
+ " ksg.prs_kostensoortgrp_oms,"
|
||||
+ " ks.prs_kostensoort_opmerking,"
|
||||
+ " bgt_budget_bedrag,"
|
||||
+ " prs_bedrijf_naam,"
|
||||
+ " mld_opdr_kosten,"
|
||||
+ " mld_opdr_id,"
|
||||
+ " mld_opdr_datumbegin,"
|
||||
+ " bgt_project_omschrijving ,"
|
||||
+ " ins_discipline_omschrijving";
|
||||
|
||||
sql += " ORDER BY "
|
||||
+ "bgt_project_omschrijving"
|
||||
+ ",kr.bgt_kostenrubriek_oms"
|
||||
+ ",ksg.prs_kostensoortgrp_oms"
|
||||
+ ",ks.prs_kostensoort_opmerking";
|
||||
}
|
||||
else // de rest
|
||||
{
|
||||
|
||||
var sql ="SELECT"
|
||||
+ (groupby >= 6 ? "" : " kr.bgt_kostenrubriek_oms rubriek,")
|
||||
+ (groupby >= 5 ? "" : " ksg.prs_kostensoortgrp_oms groep,")
|
||||
+ (groupby >= 4 ? "" : " ks.prs_kostensoort_opmerking onderdeel,")
|
||||
+ (groupby >= 4 ? " SUM(bud.bgt_budget_bedrag)" : " bud.bgt_budget_bedrag") + " budget," // TODO: DIT IS ONJUIST bij hogere groeperingen
|
||||
+ " SUM (o.mld_opdr_kosten) gecontracteerd,"
|
||||
+ (groupby >= 4 ? " SUM(bud.bgt_budget_bedrag)" : " bud.bgt_budget_bedrag") + " - SUM (COALESCE(o.mld_opdr_kosten,0)) tecontracteren,"
|
||||
+ " SUM (f.fin_factuur_totaal) gefactureerd,"
|
||||
+ " SUM (COALESCE(o.mld_opdr_kosten,0)) - SUM (COALESCE(f.fin_factuur_totaal,0)) tefactureren,"
|
||||
+ " bgt_project_omschrijving deelproject,"
|
||||
+ " ins_discipline_omschrijving project"
|
||||
+ " FROM mld_opdr o,"
|
||||
+ " prs_kostensoort ks,"
|
||||
+ " prs_kostensoortgrp ksg,"
|
||||
+ " bgt_kostenrubriek kr,"
|
||||
+ " bgt_budget bud,"
|
||||
+ " bgt_project pr,"
|
||||
+ " ins_tab_discipline id,"
|
||||
+ " fin_factuur f"
|
||||
+ " WHERE o.prs_kostensoort_key(+) = ks.prs_kostensoort_key"
|
||||
+ " AND ksg.bgt_kostenrubriek_key = kr.bgt_kostenrubriek_key"
|
||||
+ " AND ks.prs_kostensoort_key(+) = bud.prs_kostensoort_key"
|
||||
+ " AND pr.bgt_project_key = kr.bgt_project_key"
|
||||
+ " AND ksg.prs_kostensoortgrp_key(+) = ks.prs_kostensoortgrp_key"
|
||||
+ " AND f.mld_opdr_key(+) = o.mld_opdr_key"
|
||||
+ " AND id.ins_discipline_key = pr.ins_discipline_key"
|
||||
+ (bgtproj_key_arr.length > 0 ? " AND pr.bgt_project_key IN (" + bgtproj_key_arr.join(",") + ")" : "")
|
||||
+ " AND pr.ins_discipline_key =" + bgtdisc_key;
|
||||
sql += " GROUP BY "
|
||||
+ (groupby >= 6 ? "" : " kr.bgt_kostenrubriek_oms,")
|
||||
+ (groupby >= 5 ? "" : " ksg.prs_kostensoortgrp_oms,")
|
||||
+ (groupby >= 4 ? "" : " ks.prs_kostensoort_opmerking,")
|
||||
+ (groupby >= 4 ? "" : " bgt_budget_bedrag,")
|
||||
+ " bgt_project_omschrijving ,"
|
||||
+ " ins_discipline_omschrijving";
|
||||
|
||||
sql += " ORDER BY "
|
||||
+ (groupby >= 7 ? "" : "bgt_project_omschrijving")
|
||||
+ (groupby >= 6 ? "" : ",kr.bgt_kostenrubriek_oms")
|
||||
+ (groupby >= 5 ? "" : ",ksg.prs_kostensoortgrp_oms")
|
||||
+ (groupby >= 4 ? "" : ",ks.prs_kostensoort_opmerking");
|
||||
}
|
||||
|
||||
var buttons = [];
|
||||
buttons.push({ icon: "page_refresh.png", title: L("lcl_refresh"), action: "FcltMgr.reload()" });
|
||||
|
||||
// KOLOM BUDGET
|
||||
function budgetShow(oRs)
|
||||
{
|
||||
var v = safe.curr(Math.round(oRs("budget").Value), true);
|
||||
v = ("<span class='details"+ (v<0 ? " negative" : "") +"' onclick='naarbudgetmutaties({0}, this)'>" + v +"</span>").format(41); // todo ks_key uit query
|
||||
return v;
|
||||
}
|
||||
function budgetAmount(oRs)
|
||||
{
|
||||
var v = Math.round(oRs("budget").Value);
|
||||
return v;
|
||||
}
|
||||
|
||||
var rst = new ResultsetTable({ keyColumn: "bgt_budget_key", //fnkeyFunction,
|
||||
// KOLOM GECONTRACTEERD
|
||||
function ordersShow(oRs)
|
||||
{
|
||||
var v = safe.curr(Math.round(oRs("gecontracteerd").Value), true);
|
||||
if (true) v = ("<span class='details' onclick='naaropdrachten({0}, this)'>" + v +"</span>").format(41); // todo ks_key uit query
|
||||
return v;
|
||||
}
|
||||
function ordersAmount(oRs)
|
||||
{
|
||||
var v = Math.round(oRs("gecontracteerd").Value);
|
||||
return v;
|
||||
}
|
||||
|
||||
// KOLOM TE CONTRACTEREN
|
||||
function orderstogoShow(oRs)
|
||||
{
|
||||
var v = safe.curr(Math.round(oRs("tecontracteren").Value), true);
|
||||
if (v < 0) v = "<span class='negative'>" + v +"</span>";
|
||||
// en een onclick met params afh. van groupby
|
||||
if (v != 0) return v;
|
||||
}
|
||||
function orderstogoAmount(oRs)
|
||||
{
|
||||
var v = Math.round(oRs("tecontracteren").Value);
|
||||
return v;
|
||||
}
|
||||
|
||||
// KOLOM GEFACTUREERD
|
||||
function invoicesShow(oRs)
|
||||
{
|
||||
var v = safe.curr(Math.round(oRs("gefactureerd").Value), true);
|
||||
if (true) v = ("<span class='details' onclick='naarfacturen({0}, this)'>" + v +"</span>").format(41); // todo ks_key uit query
|
||||
return v;
|
||||
}
|
||||
function invoicesAmount(oRs)
|
||||
{
|
||||
var v = Math.round(oRs("gefactureerd").Value);
|
||||
return v;
|
||||
}
|
||||
|
||||
// KOLOM TE FACTUREREN
|
||||
function invoicestogoShow(oRs)
|
||||
{
|
||||
var v = safe.curr(Math.round(oRs("tefactureren").Value), true);
|
||||
if (v < 0) v = "<span class='negative'>" + v +"</span>";
|
||||
// en een onclick
|
||||
if (v != 0) return v;
|
||||
}
|
||||
function invoicestogoAmount(oRs)
|
||||
{
|
||||
var v = Math.round(oRs("tefactureren").Value);
|
||||
return v;
|
||||
}
|
||||
|
||||
function totalShow(column, rowNum)
|
||||
{
|
||||
return safe.curr(column.totalsum, true);
|
||||
}
|
||||
|
||||
var rst = new ResultsetTable({ //keyColumn: "bgt_budget_key", //fnkeyFunction,
|
||||
sql: sql,
|
||||
ID: "bgttable",
|
||||
//rowData: fnrowData,
|
||||
//rowClass: fnrowClass,
|
||||
//suppressKeyRepeat: "deelproject",
|
||||
//rowActionEnabler: fnrowActionEnabler,
|
||||
//totalShow: true,
|
||||
totalShow: totalShow,
|
||||
//filterParams: params,
|
||||
outputmode: outputmode,
|
||||
title: L("bgt_totaaloverzicht"),
|
||||
showAll: true,
|
||||
buttons: buttons
|
||||
});
|
||||
// negatieve getallen .negative maken
|
||||
|
||||
rst.addColumn(new Column({caption: L("bgt_discipline_omschrijving"), content: "project", purpose: (bgtdisc_key>-1 ? PRINTING_ONLY : PRINT_AND_VIEW)}));
|
||||
rst.addColumn(new Column({caption: L("bgt_srtgroep_omschrijving"), content: "deelproject", purpose: (bgt_srtgroep_key>-1 ? PRINTING_ONLY : PRINT_AND_VIEW)}));
|
||||
rst.addColumn(new Column({caption: L("bgt_kostenrubriek_oms"), content: "rubriek"}));
|
||||
rst.addColumn(new Column({caption: L("bgt_srtgroep_omschrijving"), content: "groep"}));
|
||||
rst.addColumn(new Column({caption: L("prs_kostensoort_opmerking"), content: "onderdeel"}));
|
||||
rst.addColumn(new Column({caption: L("bgt_budget_limiet"), content: "budget", datatype: "currency", total: true}));
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachten"), content: "gecontracteerd", datatype: "currency", total: true }));
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachtentogo"), content: "tecontracteren", datatype: "currency", total: true }));
|
||||
rst.addColumn(new Column({caption: L("bgt_facturen"), content: "gefactureerd", datatype: "currency", total: true }));
|
||||
rst.addColumn(new Column({caption: L("bgt_facturentogo"), content: "tefactureren", datatype: "currency", total: true }));
|
||||
|
||||
rst.addColumn(new Column({caption: L("bgt_project"), content: "deelproject", purpose: (bgtproj_key_arr.length > 0 ? PRINTING_ONLY : PRINT_AND_VIEW)}));
|
||||
if (groupby <= 5)
|
||||
rst.addColumn(new Column({caption: L("bgt_kostenrubriek"), content: "rubriek"}));
|
||||
if (groupby <= 4)
|
||||
rst.addColumn(new Column({caption: L("prs_kostensoortgrp"), content: "groep"}));
|
||||
if (groupby <= 3)
|
||||
rst.addColumn(new Column({caption: L("prs_kostensoort"), content: "onderdeel"}));
|
||||
if (groupby > 2) // denk ik
|
||||
rst.addColumn(new Column({caption: L("bgt_budget_bedrag"), content: budgetShow, fnAmount: budgetAmount, datatype: "currency", total: true}));
|
||||
if (groupby <= 2)
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("lcl_ord_company_uit"), content: "uitvoerder"}));
|
||||
}
|
||||
if (groupby == 2)
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("lcl_ord_order_num"), content: "opdrachtnr"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_orderdate"), content: "opdrachtdatum"}));
|
||||
}
|
||||
if (groupby == 1)
|
||||
{
|
||||
rst.addColumn(new Column({caption: L("lcl_fin_invoice"), content: "factuur"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_fin_findate"), content: "factuurdatum"}));
|
||||
}
|
||||
if (groupby != 1)
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachten"), content: ordersShow, fnAmount: ordersAmount, datatype: "currency", total: true }));
|
||||
if (groupby > 2) // denk ik
|
||||
rst.addColumn(new Column({caption: L("bgt_opdrachtentogo"), content: orderstogoShow, fnAmount: orderstogoAmount, datatype: "currency", total: true }));
|
||||
rst.addColumn(new Column({caption: L("bgt_facturen"), content: invoicesShow, fnAmount: invoicesAmount, datatype: "currency", total: true }));
|
||||
if (groupby > 2) // denk ik
|
||||
rst.addColumn(new Column({caption: L("bgt_facturentogo"), content: invoicestogoShow, fnAmount: invoicestogoAmount, datatype: "currency", total: true }));
|
||||
|
||||
var count = rst.processResultset();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user