YKPN#55980 Goedkeuring facturen op basis van contractscope
svn path=/Website/trunk/; revision=41270
This commit is contained in:
@@ -419,6 +419,7 @@ fin = { func_enabled_factuur: // Wat mag ik zoal op deze specifieke factuur?
|
||||
+ " , f.fin_factuur_debiteur_nr"
|
||||
+ " , f.prs_kostensoort_key"
|
||||
+ " , ks.prs_kostensoort_oms || '-' || "+lcl.xsql('ks.prs_kostensoort_opmerking','ks.prs_kostensoort_key')+" kostensoort"
|
||||
+ " , cnt_contract_plaats_key"
|
||||
+ " , fin_factuur_verwijder"
|
||||
+ " FROM fin_factuur f"
|
||||
+ " , prs_kostensoort ks"
|
||||
@@ -437,6 +438,20 @@ fin = { func_enabled_factuur: // Wat mag ik zoal op deze specifieke factuur?
|
||||
|
||||
var fin_boekm = oRs("fin_factuur_boekmaand").Value;
|
||||
|
||||
var cnt_plaats_omschrijving = null;
|
||||
if (oRs("cnt_contract_plaats_key"))
|
||||
{
|
||||
var sql_cp = "SELECT cp.cnt_plaats_omschrijving"
|
||||
+ " FROM cnt_v_aanwezigcontract_plaats ap, cnt_v_contract_plaats cp "
|
||||
+ " WHERE ap.cnt_contract_plaats_key = " + oRs("cnt_contract_plaats_key")
|
||||
+ " AND cp.cnt_plaats_key = ap.cnt_alg_plaats_key"
|
||||
+ " AND cp.cnt_plaats_code = ap.cnt_alg_plaats_code"
|
||||
var oRs_cp = Oracle.Execute(sql_cp);
|
||||
if (!oRs_cp.eof)
|
||||
cnt_plaats_omschrijving = oRs_cp("cnt_plaats_omschrijving").Value;
|
||||
oRs_cp.Close();
|
||||
}
|
||||
|
||||
var fin_factuur = { fin_key: fin_key,
|
||||
ref_type: ref_type,
|
||||
mldopdr_key: oRs("mld_opdr_key").Value,
|
||||
@@ -462,6 +477,8 @@ fin = { func_enabled_factuur: // Wat mag ik zoal op deze specifieke factuur?
|
||||
fin_debiteur: oRs("fin_factuur_debiteur_nr").Value,
|
||||
fin_costsrt_key: oRs("prs_kostensoort_key").Value,
|
||||
fin_costsrt: oRs("kostensoort").Value,
|
||||
cnt_contract_plaats_key: oRs("cnt_contract_plaats_key").Value,
|
||||
cnt_plaats_omschrijving: cnt_plaats_omschrijving,
|
||||
fin_verwijder: oRs("fin_factuur_verwijder").Value
|
||||
}
|
||||
oRs.Close();
|
||||
@@ -1043,43 +1060,14 @@ fin = { func_enabled_factuur: // Wat mag ik zoal op deze specifieke factuur?
|
||||
oRs.close();
|
||||
|
||||
// Locations + Buildings
|
||||
sql = "SELECT 0"
|
||||
+ ", cnt_alg_plaats_code"
|
||||
+ ", l.alg_locatie_omschrijving"
|
||||
+ ", cnt_alg_plaats_key"
|
||||
+ " FROM cnt_contract_plaats"
|
||||
+ ", alg_locatie l"
|
||||
+ " WHERE cnt_alg_plaats_key = l.alg_locatie_key"
|
||||
+ " AND cnt_alg_plaats_code = 'L'"
|
||||
+ " AND cnt_contract_plaats_verwijder IS NULL"
|
||||
+ " AND cnt_contract_key = " + fin_factuur.cnt_key
|
||||
+ " UNION ALL "
|
||||
+ " SELECT 1"
|
||||
+ ", cnt_alg_plaats_code"
|
||||
+ ", l.alg_locatie_omschrijving"
|
||||
+ ", cnt_alg_plaats_key"
|
||||
+ " FROM cnt_contract_plaats"
|
||||
+ ", alg_locatie l"
|
||||
+ ", alg_gebouw g "
|
||||
+ " WHERE cnt_alg_plaats_code = 'G'"
|
||||
+ " AND cnt_alg_plaats_key=g.alg_gebouw_key"
|
||||
+ " AND g.alg_locatie_key=l.alg_locatie_key"
|
||||
+ " AND cnt_contract_plaats_verwijder IS NULL"
|
||||
+ " AND cnt_contract_key = "+ fin_factuur.cnt_key
|
||||
+ " UNION ALL "
|
||||
+ " SELECT 1"
|
||||
+ ", cnt_alg_plaats_code"
|
||||
+ ", l.alg_locatie_omschrijving"
|
||||
+ ", cnt_alg_plaats_key"
|
||||
+ " FROM cnt_contract_plaats"
|
||||
+ ", alg_locatie l"
|
||||
+ ", alg_terreinsector t"
|
||||
+ " WHERE cnt_alg_plaats_code = 'T'"
|
||||
+ " AND cnt_alg_plaats_key=t.alg_terreinsector_key"
|
||||
+ " AND t.alg_locatie_key=l.alg_locatie_key"
|
||||
+ " AND cnt_contract_plaats_verwijder IS NULL"
|
||||
+ " AND cnt_contract_key = " + fin_factuur.cnt_key
|
||||
+ " ORDER BY 3";
|
||||
sql = "SELECT ap.cnt_contract_plaats_key, "
|
||||
+ " cp.cnt_plaats_omschrijving "
|
||||
+ " FROM cnt_v_aanwezigcontract_plaats ap, "
|
||||
+ " cnt_v_contract_plaats cp "
|
||||
+ " WHERE ap.cnt_contract_key = " + fin_factuur.cnt_key
|
||||
+ " AND cp.cnt_plaats_key = ap.cnt_alg_plaats_key"
|
||||
+ " AND cp.cnt_plaats_code = ap.cnt_alg_plaats_code "
|
||||
+ "ORDER BY cp.cnt_plaats_omschrijving ";
|
||||
oRs = Oracle.Execute(sql);
|
||||
|
||||
if (!oRs.eof)
|
||||
@@ -1090,8 +1078,8 @@ fin = { func_enabled_factuur: // Wat mag ik zoal op deze specifieke factuur?
|
||||
|
||||
while (!oRs.eof)
|
||||
{
|
||||
result.loc_geg.push({ loc_key: oRs("cnt_alg_plaats_key").Value,
|
||||
loc_desc: oRs("alg_locatie_omschrijving").Value
|
||||
result.loc_geg.push({ loc_key: oRs("cnt_contract_plaats_key").Value,
|
||||
loc_desc: oRs("cnt_plaats_omschrijving").Value
|
||||
});
|
||||
oRs.MoveNext();
|
||||
}
|
||||
@@ -1662,7 +1650,7 @@ fin = { func_enabled_factuur: // Wat mag ik zoal op deze specifieke factuur?
|
||||
|
||||
return oRs("BTW").Value + "%";
|
||||
}
|
||||
|
||||
|
||||
function fnBTWverlegd(oRs)
|
||||
{
|
||||
var v_verlegd = "";
|
||||
|
||||
@@ -99,7 +99,8 @@ else // nieuwe factuur. Defaults bepalen
|
||||
fin_costsrt_default: -1, // Is afhankelijk van het referentie type // TODO: opvragen
|
||||
bes_id: "",
|
||||
default_costsrt_selected: false, // ((fin_costsrt_key == fin_costsrt_default) && (fin_costsrt_key != null)), // TODO: opvragen
|
||||
kostenplaats_naam: ""
|
||||
kostenplaats_naam: "",
|
||||
cnt_contract_plaats_key: null
|
||||
}
|
||||
if (referentie != "")
|
||||
{
|
||||
@@ -322,6 +323,22 @@ oRs.Close();
|
||||
}
|
||||
);
|
||||
|
||||
sql = "SELECT ap.cnt_contract_plaats_key, "
|
||||
+ " cp.cnt_plaats_omschrijving "
|
||||
+ " FROM cnt_v_aanwezigcontract_plaats ap, "
|
||||
+ " cnt_v_contract_plaats cp "
|
||||
+ " WHERE ap.cnt_contract_key = " + fin_factuur.cnt_key
|
||||
+ " AND cp.cnt_plaats_key = ap.cnt_alg_plaats_key"
|
||||
+ " AND cp.cnt_plaats_code = ap.cnt_alg_plaats_code "
|
||||
+ "ORDER BY cp.cnt_plaats_omschrijving ";
|
||||
|
||||
FCLTselector("cnt_plaats_key", sql,
|
||||
{ label: L("lcl_cnt_location_scope"),
|
||||
emptyOption: "",
|
||||
whenEmpty: L("lcl_search_generic"),
|
||||
initKey: fin_factuur.cnt_contract_plaats_key
|
||||
});
|
||||
|
||||
// Verdeelperiode
|
||||
events = ' onKeyPress="kenmerkDividePeriodKey(event);"'
|
||||
+ ' onPropertyChange="kenmerkDividePeriodChange(event);"'
|
||||
@@ -480,7 +497,7 @@ oRs.Close();
|
||||
loc_geg_string.push(ref_info.loc_geg[i].loc_desc);
|
||||
}
|
||||
} %>
|
||||
<tr id="tr_loc_omschr" style="display: <%=(ref_info.loc_geg && ref_info.loc_geg.length > 0)? "block" : "none"%>">
|
||||
<tr id="tr_loc_omschr" <%=(ref_info.loc_geg && ref_info.loc_geg.length > 0)? "" : 'style="display: none"'%>>
|
||||
<td class="label"><label><%=L("lcl_location")%>:</label></td>
|
||||
<td><div class="fldtxt readonly" id="loc_omschr"><%=safe.html(loc_geg_string.join(",\n"))%></div></td>
|
||||
</tr>
|
||||
|
||||
@@ -351,13 +351,22 @@ function FcltGetRefInfoCallback(json)
|
||||
|
||||
if (json.show_loc)
|
||||
{
|
||||
var plaats_key = $("#cnt_plaats_key option:selected").val();
|
||||
$("#cnt_plaats_key option:not([value=-1])").remove();
|
||||
var loc_geg_string = "";
|
||||
var cnt_plaats_options = "";
|
||||
for (i = 0; i < json.loc_geg.length; i++)
|
||||
{
|
||||
cnt_plaats_options += "<option value=" + json.loc_geg[i].loc_key + ">" + json.loc_geg[i].loc_desc + "</option>"
|
||||
loc_geg_string += (i > 0? ",<br>" : "") + json.loc_geg[i].loc_desc;
|
||||
}
|
||||
$("#loc_omschr").html(loc_geg_string);
|
||||
$("#tr_loc_omschr").show();
|
||||
$("#cnt_plaats_key").append(cnt_plaats_options);
|
||||
if ($("#cnt_plaats_key option[value="+plaats_key+"]").length)
|
||||
{
|
||||
$("#cnt_plaats_key option[value="+plaats_key+"]").attr("selected", true);
|
||||
}
|
||||
} else {
|
||||
$("#loc_omschr").html("");
|
||||
$("#tr_loc_omschr").hide();
|
||||
|
||||
@@ -51,15 +51,16 @@ if (fin_status_key == 6) fin_status_key = 2;
|
||||
|
||||
// Deze velden altijd opslaan
|
||||
// Merk op: fin_factuur_totaal en fin_factuur_totaal_btw krijgen later definitieve waarde
|
||||
var fields = [ { dbs: "prs_perslid_key_user", typ: "key", val: user_key, track: L("lcl_fin_name"), foreign: "prs_perslid" },
|
||||
{ dbs: "prs_perslid_key_goedkeur", typ: "key", frm: "goedkeurder", track: L("lcl_fin_goedkeurder"), foreign: "prs_perslid" },
|
||||
{ dbs: "fin_factuur_datum", typ: "date", frm: "calendar", track: L("lcl_fin_findate") },
|
||||
{ dbs: "fin_factuur_opmerking", typ: "varchar", frm: "remark", track: L("lcl_fin_remark"), len: 250 },
|
||||
{ dbs: "fin_factuur_statuses_key", typ: "key", val: fin_status_key, track: L("lcl_status"), foreign: fin.getfinstatustext },
|
||||
{ dbs: "fin_factuur_nr", typ: "varchar", frm: "finnr", track: L("lcl_fin_invoice_nr_extern"), len: 30 },
|
||||
{ dbs: "fin_factuur_boekmaand", typ: "varchar", frm: "finboekm", track: L("lcl_fin_divide_period") },
|
||||
{ dbs: "fin_factuur_debiteur_nr", typ: "varchar", frm: "findebtor", track: L("lcl_fin_debtor_nr"), len: 30 },
|
||||
{ dbs: "prs_kostensoort_key", typ: "key", frm: "fincostsrt", track: L("lcl_shared_charge_type"), foreign: "prs_kostensoort" }
|
||||
var fields = [ { dbs: "prs_perslid_key_user", typ: "key", val: user_key, track: L("lcl_fin_name"), foreign: "prs_perslid" },
|
||||
{ dbs: "prs_perslid_key_goedkeur", typ: "key", frm: "goedkeurder", track: L("lcl_fin_goedkeurder"), foreign: "prs_perslid" },
|
||||
{ dbs: "fin_factuur_datum", typ: "date", frm: "calendar", track: L("lcl_fin_findate") },
|
||||
{ dbs: "fin_factuur_opmerking", typ: "varchar", frm: "remark", track: L("lcl_fin_remark"), len: 250 },
|
||||
{ dbs: "fin_factuur_statuses_key", typ: "key", val: fin_status_key, track: L("lcl_status"), foreign: fin.getfinstatustext },
|
||||
{ dbs: "fin_factuur_nr", typ: "varchar", frm: "finnr", track: L("lcl_fin_invoice_nr_extern"), len: 30 },
|
||||
{ dbs: "fin_factuur_boekmaand", typ: "varchar", frm: "finboekm", track: L("lcl_fin_divide_period") },
|
||||
{ dbs: "fin_factuur_debiteur_nr", typ: "varchar", frm: "findebtor", track: L("lcl_fin_debtor_nr"), len: 30 },
|
||||
{ dbs: "prs_kostensoort_key", typ: "key", frm: "fincostsrt", track: L("lcl_shared_charge_type"), foreign: "prs_kostensoort" },
|
||||
{ dbs: "cnt_contract_plaats_key", typ: "key", frm: "cnt_plaats_key", track: L("lcl_cnt_location_scope"), foreign: "cnt_contract_plaats" }
|
||||
];
|
||||
|
||||
if (S("fin_factuur_verlegdmode") & 1 == 1)
|
||||
|
||||
@@ -123,6 +123,7 @@ var urlMail = "../shared/queuemail.asp?pcode=FINMAI&defemail_key=-1&key=" + fin_
|
||||
ROFIELDTR("fld", L("lcl_fin_referentie"), ref_info.referentie); // Referentie
|
||||
ROFIELDTR("flddate", L("lcl_fin_findate"), toDateString(fin_factuur.fin_date)); // Factuur datum
|
||||
ROFIELDTR("fld", L("lcl_fin_invoice_nr_extern"), fin_factuur.fin_nr != null? fin_factuur.fin_nr : ""); // Extern factuur nummer
|
||||
ROFIELDTR("fld", L("lcl_cnt_location_scope"), fin_factuur.cnt_contract_plaats_key != null? fin_factuur.cnt_plaats_omschrijving : "", {suppressEmpty: true}); // contract_plaats
|
||||
ROFIELDTR("fldshort", L("lcl_fin_divide_period"), fin_factuur.fin_boekm != null? fin_factuur.fin_boekm : ""); // Verdeelperiode
|
||||
ROFIELDTR("fld", "<nobr>" + L("lcl_fin_debtor_nr") + "</nobr>", fin_factuur.fin_debiteur, {suppressEmpty: true}); // Eigen debiteurnummer
|
||||
ROFIELDTR("fld", L("lcl_shared_charge_type"), fin_factuur.fin_costsrt); // Kostensoort
|
||||
@@ -222,7 +223,7 @@ var urlMail = "../shared/queuemail.asp?pcode=FINMAI&defemail_key=-1&key=" + fin_
|
||||
loc_geg_string.push(ref_info.loc_geg[i].loc_desc);
|
||||
}
|
||||
} %>
|
||||
<tr id="tr_loc_omschr" style="display: <%=(ref_info.loc_geg && ref_info.loc_geg.length > 0)? "block" : "none"%>">
|
||||
<tr id="tr_loc_omschr" <%=(ref_info.loc_geg && ref_info.loc_geg.length > 0)? "" : 'style="display: none"'%>">
|
||||
<td class="label"><label><%=L("lcl_location")%>:</label></td>
|
||||
<td><div class="fldtxt" id="loc_omschr"><%=safe.html(loc_geg_string.join(",\n"))%></div></td>
|
||||
</tr>
|
||||
|
||||
@@ -58,6 +58,12 @@ function foreignKeyTable(field)
|
||||
"PRS_KOSTENSOORTGRP" : { tbl: "prs_kostensoortgrp", key: "prs_kostensoortgrp_key", desc: "prs_kostensoortgrp_oms"},
|
||||
"CNT_TERMIJN" : { tbl: "cnt_termijn", key: "cnt_termijn_key", desc: lcl.xsql("cnt_termijn_omschrijving", "cnt_termijn_key" )},
|
||||
"CNT_CONTRACT" : { tbl: "cnt_contract", key: "cnt_contract_key", desc: "cnt_contract_nummer_intern" },
|
||||
"CNT_CONTRACT_PLAATS" : { tbl: "cnt_contract_plaats", key: "cnt_contract_plaats_key", alias: "plaats",
|
||||
desc: "(SELECT cp.cnt_plaats_omschrijving"
|
||||
+ " FROM cnt_v_aanwezigcontract_plaats ap, cnt_v_contract_plaats cp "
|
||||
+ " WHERE ap.cnt_contract_plaats_key = plaats.cnt_contract_plaats_key"
|
||||
+ " AND cp.cnt_plaats_key = ap.cnt_alg_plaats_key"
|
||||
+ " AND cp.cnt_plaats_code = ap.cnt_alg_plaats_code) cnt_plaats_omschrijving" },
|
||||
"CNT_DISCIPLINE" : { tbl: "cnt_discipline", key: "ins_discipline_key", desc: "ins_discipline_omschrijving" },
|
||||
"CTR_DISCIPLINE" : { tbl: "ctr_discipline", key: "ins_discipline_key", desc: "ins_discipline_omschrijving" },
|
||||
"PRS_BEDRIJF" : { tbl: "prs_bedrijf", key: "prs_bedrijf_key", desc: "prs_bedrijf_naam" },
|
||||
|
||||
Reference in New Issue
Block a user