VGLD#35045 Leverancier kunnen wijzigen van vrije bestelaanvragen

svn path=/Website/trunk/; revision=28636
This commit is contained in:
Erik Groener
2016-03-25 13:42:15 +00:00
parent 319987e5f2
commit c0926ed3cf
4 changed files with 26 additions and 8 deletions

View File

@@ -154,7 +154,7 @@
return result;
},
generateBesInfoBlock: function (bes_bestelling)
generateBesInfoBlock: function (bes_bestelling, edit_leverancier)
{
BLOCK_START("besInfo" , L("lcl_bes_key") + " " + S("bes_bestelling_prefix") + bes_bestelling.bes_key + (bes_bestelling.parent_key? "*" : ""));
if (bes_bestelling.satisfaction)
@@ -163,14 +163,14 @@
ROFIELDTR("fld", L("lcl_bes_discipline"), bes_disc_info.discipline_omschrijving);
if (bes_bestelling.prs_bedrijf_key > 0)
{
FCLTbedrijfselector("lev_key", // supplier
FCLTbedrijfselector("lev_key_ro", // supplier
"sg_lev",
{ companyKey: bes_bestelling.prs_bedrijf_key,
label: L("lcl_bes_Supplier"),
readonly: true,
filtercode: (edit_leverancier?"":"Lv"),
readonly: edit_leverancier,
moreinfo: true
});
}
// Zijn wij een incidentele bestelling via een melding?

View File

@@ -704,7 +704,7 @@ else // nieuwe bestelling. Defaults bepalen
if (bes_key > 0)
{
bes.generateBesInfoBlock(bes_bestelling);
bes.generateBesInfoBlock(bes_bestelling, !backo);
}
BLOCK_START("besFlex"+(S("bes_flexcolumns")!=1?"2":"") , L("lcl_bes_flexblok"));

View File

@@ -35,6 +35,7 @@ else
}
var bes_disc_info = bes.disc_info(dis_key);
var lev_key = getFParamInt("lev_key_ro");
var act_key = getFParamInt("act_key", -1);
var act_mode = (act_key > 0);
var kostenplaats_key = getFParamInt("kostenplaats",-1);
@@ -60,12 +61,11 @@ if (bes_disc_info.isFreeArticle)
srtdeel_prijs: getFParamFloat("price_" + item_keys_unsafe[itemregelnr]),
srtdeel_eenheid: getFParam("eenheid_" + item_keys_unsafe[itemregelnr], ""),
srtdeel_btw: getFParamFloat("btw_" + item_keys_unsafe[itemregelnr], 21),
bedrijf_key: getFParamInt("lev_key_" + item_keys_unsafe[itemregelnr]),
bedrijf_key: getFParamInt("lev_key_ro"),
srtdeel_opmerking: "" //opmerking
};
try
{
__Log(data);
var bes_srtdeel_key = bes.upsert_deel(dis_key, data);
}
catch (e)
@@ -332,6 +332,24 @@ else
if (bes_bestelling.totaal.toFixed(2) != staffel_info.totaalbedrag.toFixed(2))
besUpd.trackarray.push(L("lcl_total") + ": " + buildTrackText("float", safe.curr(bes_bestelling.totaal), safe.curr(staffel_info.totaalbedrag)));
if (bes_bestelling.prs_bedrijf_key != lev_key)
{
var upd_lev = "UPDATE bes_srtdeel"
+ " SET prs_bedrijf_key = " + lev_key
+ " WHERE bes_srtdeel_key IN"
+ "(SELECT s.bes_srtdeel_key"
+ " FROM bes_bestelling_item b"
+ " , bes_srtdeel s"
+ " WHERE b.bes_srtdeel_key = s.bes_srtdeel_key"
+ " AND b.bes_bestelling_key = " + bes_key
+ ")";
Oracle.Execute(upd_lev);
// tracking
var old_lev = prs.prs_bedrijfinfo(bes_bestelling.prs_bedrijf_key);
var new_lev = prs.prs_bedrijfinfo(lev_key);
besUpd.trackarray.push(L("lcl_ins_leverancier") + ": " + buildTrackText("varchar", old_lev.naam, new_lev.naam, { nodiff: true }));
}
Oracle.Execute(besUpd.sql);
status = oldStatus;

View File

@@ -209,7 +209,7 @@ IFRAMER_HEADER((bes_bestelling.fac_activiteit_key > 0? L("lcl_bes_frame_algemeen
}
BLOCK_END();
bes.generateBesInfoBlock(bes_bestelling);
bes.generateBesInfoBlock(bes_bestelling, true);
BLOCK_START("besFlex"+(S("bes_flexcolumns")!=1?"2":"") , L("lcl_bes_flexblok"));
%><tr><td class="besflex"><%