PCHD#40285: Facilitor loopt vast als je factuurnummer 17325 wilt wijzigen.

svn path=/Website/branches/v2016.3/; revision=33588
This commit is contained in:
Maykel Geerdink
2017-04-25 10:27:10 +00:00
parent 1b705800b5
commit e273bb5ebf
4 changed files with 18 additions and 5 deletions

View File

@@ -281,6 +281,7 @@ fin = { func_enabled_factuur: // Wat mag ik zoal op deze specifieke factuur?
sql = "SELECT MAX(cnt_contract_key) cnt_contract_key"
+ " FROM cnt_v_aanwezigcontract c"
+ " WHERE c.cnt_contract_nummer_intern = " + safe.quoted_sql(cnt_nr)
+ " AND c.cnt_contract_status = 0"
+ (cnt_versie? " AND c.cnt_contract_versie = " + safe.quoted_sql(cnt_versie) : "")
+ (ascontactpers
? " AND c.cnt_prs_bedrijf_key IN (SELECT cp.prs_bedrijf_key"
@@ -947,6 +948,7 @@ fin = { func_enabled_factuur: // Wat mag ik zoal op deze specifieke factuur?
lev_uit_intern: oRs("intern").Value == 1,
lev_opm: oRs("lev_opm").Value,
reltype_oms: oRs("reltype_oms").Value,
status_key: oRs("cnt_contract_status").Value,
status: status.getcntstatustext(oRs("cnt_contract_status").Value),
startdatum: toDateString(oRs("startdatum").Value),
einddatum: toDateString(oRs("einddatum").Value),

View File

@@ -152,11 +152,12 @@ var fin_btwtabel_key = oRs("fin_btwtabel_key").value; // Standaard btw tabel key
var fin_kostensoort_verplicht = <%=S("fin_kostensoort_verplicht")%>;
var asContactpersoon = <%=asContactpersoon? 1 : 0%> == 1;
var cnt_srttype_rental = <%=S("cnt_srttype_rental")%>;
var referentie_old = "<%=this_fin.referentieinfo.referentie%>";
jQuery(document).ready(function()
{
$("#referentienr").focus();
<% if (fin_key > 0 && S("fin_enable_kostensoort") != 0 && this_fin.canInvLinChange)
if (!$("#referentienr").prop("readonly")) $("#referentienr").focus();
<% if (fin_key > 0 && S("fin_enable_kostensoort") != 0 && this_fin.canInvLinChange)
{ %>
// Overal suggest van maken
var rowIndex = parseInt($("#rowIndex").val());

View File

@@ -426,12 +426,13 @@ function FcltGetRefInfoCallback(json)
FcltMgr.resized(window);
}
}
referentie_old = $("#referentienr").val();
}
}
function referenceChanged(refchanged)
{
if ($("#referentienr").val() != "")
if ($("#referentienr").val() != "" && $("#referentienr").val() != referentie_old)
{
var returndata = FcltSyncgetJSON("get_ref_info_ajax.asp",
{ ref_nr: $("#referentienr").val(),

View File

@@ -38,9 +38,18 @@ if (fin_key > 0)
user.auth_required_or_abort(this_fin.canChange); // TODO: testen AAIT#22473
var asContactpersoon = this_fin.canFEwrite && !this_fin.canFOwrite;
var referentiegegevens = fin.analysereferentie(referentienr, asContactpersoon);
// Het moet een geldige referentie zijn.
// Als het niet veranderd is (Oorspronkelijke waarde), mag het altijd. Ondanks dat het een gesloten contract kan zijn.
if (this_fin.referentieinfo.referentie == referentienr)
var referentiegegevens = { mldopdr_key: this_fin.referentieinfo.ref_type == "O"? this_fin.referentieinfo.ref_key : -1,
besopdr_key: this_fin.referentieinfo.ref_type == "B"? this_fin.referentieinfo.ref_key : -1,
cnt_key: this_fin.referentieinfo.ref_type == "C"? this_fin.referentieinfo.ref_key : -1,
valid: true };
else
{
var asContactpersoon = this_fin.canFEwrite && !this_fin.canFOwrite;
var referentiegegevens = fin.analysereferentie(referentienr, asContactpersoon);
}
user.auth_required_or_abort(referentiegegevens.valid);
// Status van 3 (foute import) moet bij saven op 2 worden gezet.