Merge 5.4.4 patches

svn path=/Website/trunk/; revision=24236
This commit is contained in:
Jos Groot Lipman
2015-02-23 12:33:46 +00:00
parent deedaf247f
commit 43cb1aa835
14 changed files with 74 additions and 59 deletions

View File

@@ -155,9 +155,9 @@ transitParam = buildTransitParam(["punch", "mld_key", "artikel_key", "ps", "pn",
var bes_disc_info = bes.disc_info(dis_key); var bes_disc_info = bes.disc_info(dis_key);
var newWindow = false; var newWindow = false;
if (!from_punch && bes_disc_info.isPunchout) if (!from_punch && bes_disc_info.disc_params_punchouturl && !bes_disc_info.isFreeArticle)
{ {
var purl = oRsbes_disc_info.disc_params_punchouturl; var purl = bes_disc_info.disc_params_punchouturl;
var hook_url = "bes_hook_punch.asp?urole="+urole+"&dis_key="+dis_key+transitParam; var hook_url = "bes_hook_punch.asp?urole="+urole+"&dis_key="+dis_key+transitParam;
// Biedt de mogelijkheid de url te verrijken met gebruikers info // Biedt de mogelijkheid de url te verrijken met gebruikers info
var subst_table = { "RANDOM" : shared.random(16), var subst_table = { "RANDOM" : shared.random(16),

View File

@@ -86,6 +86,7 @@ function show_item_details(bes_item_info)
window.stock_info = {}; // even onbekend. window.stock_info = {}; // even onbekend.
var imgObj = $("#photo")[0]; var imgObj = $("#photo")[0];
if (imgObj == null) return; // free artikel
if (bes_item_info.srtdeel_image) if (bes_item_info.srtdeel_image)
{ {

View File

@@ -712,21 +712,22 @@ else // nieuwe bestelling. Defaults bepalen
<% // ======== BLOCK om itemregels toe te voegen ======== <% // ======== BLOCK om itemregels toe te voegen ========
if (this_bes.canItemsChange) if (this_bes.canItemsChange)
{ {
BLOCK_START("besItemSel" , L("lcl_bes_selectieblok") + " " + bes_disc_info.discipline_omschrijving + " " + (bes_bestelling.inclBTW? L("lcl_shared_inclBTW") : L("lcl_shared_exclBTW"))); BLOCK_START("besItemSel" , L("lcl_bes_selectieblok") + " " + safe.html(bes_disc_info.discipline_omschrijving) + " " + (bes_bestelling.inclBTW? L("lcl_shared_inclBTW") : L("lcl_shared_exclBTW")));
if (bes_disc_info.isFreeArticle) if (bes_disc_info.isFreeArticle)
{ {
FCLTbedrijfselector("lev_key", // Leverancier FCLTbedrijfselector("lev_key", // Leverancier
"sg_lev", "sg_lev",
{ companyKey: -1, { companyKey: bes_bestelling.bedrijf_key||-1,
label: L("lcl_bes_Supplier"), label: L("lcl_bes_Supplier"),
filtercode: "L", filtercode: "L",
required: true required: true,
readonly: bes_bestelling.bedrijf_key > 0
}); });
RWFIELDTR("srtdeel_nr", "fld", L("lcl_bes_srtdeel_nr"), "", { required: true, maxlength: 32 }); RWFIELDTR("srtdeel_nr", "fld", L("lcl_bes_srtdeel_nr"), "", { required: true, maxlength: 32 });
RWFIELDTR("omschrijving", "fld", L("lcl_bes_srtdeel_oms"), "", { required: true, maxlength: 100 }) RWFIELDTR("omschrijving", "fld", L("lcl_bes_srtdeel_oms"), "", { required: true, maxlength: 100 })
RWFIELDTR("unit", "fld", L("lcl_bes_unity"), "", { maxlength: 30 }) RWFIELDTR("unit", "fld", L("lcl_bes_unity"), "", { maxlength: 30 })
RWFIELDTR("price", "fld currency", L("lcl_bes_price_per_unity"), "", { required: true, maxlength: 10 }) RWFIELDTR("price", "fld currency", L("lcl_bes_price_per_unity"), "", { requiredor0: true, maxlength: 10 })
RWFIELDTR("aantal_text", "fld", L("lcl_bes_amount"), "", { required: true, maxlength: 10 }) RWFIELDTR("aantal_text", "fld", L("lcl_bes_amount"), "", { required: true, maxlength: 10 })
%> <tr id="buttons_tr"><td colspan="2"> %> <tr id="buttons_tr"><td colspan="2">
<span class='labelextra'> <span class='labelextra'>

View File

@@ -43,28 +43,30 @@ var flexkey_string_arr = getFParamIntArray("flexkey_string",[]);
var flexval_string_arr = getFParamArray("flexval_string",[]); var flexval_string_arr = getFParamArray("flexval_string",[]);
var flexdeel_string_arr = getFParamArray("flexdeel_string",[]); var flexdeel_string_arr = getFParamArray("flexdeel_string",[]);
var flexitem_string_unsafe = getFParamArray("flexitem_string",[]); // kan ook 'new1' zijn voor nieuwe opdrachten var flexitem_string_unsafe = getFParamArray("flexitem_string",[]); // kan ook 'new1' zijn voor nieuwe opdrachten
var srtdeel_keys = getFParamIntArray("srtdeel_keys",[]); // Bij isFree ook voor bewerken bestaande
if (bes_disc_info.isFreeArticle) if (bes_disc_info.isFreeArticle)
{ // Moeten we de srtdeel-en nog aanmaken { // Moeten we de nieuwe srtdeel-en nog aanmaken
var srtdeel_keys = [];
for (var itemregelnr = 0; itemregelnr < item_keys_unsafe.length; itemregelnr++) for (var itemregelnr = 0; itemregelnr < item_keys_unsafe.length; itemregelnr++)
{ {
var data = { //srtgroep_key: getFParamInt("srtgroup_key_" + item_keys_unsafe[itemregelnr]), var srtdeel_nr = getFParam("srtdeel_nr_" + item_keys_unsafe[itemregelnr], ""); // Leeg bij bewerken bestaande;
srtgroep_omschrijving: "Vrije artikel groep", // 2015.1 nog lcl van maken if (srtdeel_nr)
srtdeel_nr: getFParam("srtdeel_nr_" + item_keys_unsafe[itemregelnr]), {
srtdeel_omschrijving: getFParam("srtdeel_omschrijving_" + item_keys_unsafe[itemregelnr]), var data = { //srtgroep_key: getFParamInt("srtgroup_key_" + item_keys_unsafe[itemregelnr]),
srtdeel_prijs: getFParamFloat("price_" + item_keys_unsafe[itemregelnr]), srtgroep_omschrijving: "Vrije artikel groep", // 2015.1 nog lcl van maken
srtdeel_eenheid: getFParam("eenheid_" + item_keys_unsafe[itemregelnr], ""), srtdeel_nr: srtdeel_nr,
srtdeel_btw: 21, srtdeel_omschrijving: getFParam("srtdeel_omschrijving_" + item_keys_unsafe[itemregelnr]),
bedrijf_key: getFParamInt("lev_key_" + item_keys_unsafe[itemregelnr]), srtdeel_prijs: getFParamFloat("price_" + item_keys_unsafe[itemregelnr]),
srtdeel_opmerking: "" //opmerking srtdeel_eenheid: getFParam("eenheid_" + item_keys_unsafe[itemregelnr], ""),
}; srtdeel_btw: 21,
var bes_srtdeel_key = bes.upsert_deel(dis_key, data); bedrijf_key: getFParamInt("lev_key_" + item_keys_unsafe[itemregelnr]),
srtdeel_keys.push(bes_srtdeel_key); srtdeel_opmerking: "" //opmerking
};
var bes_srtdeel_key = bes.upsert_deel(dis_key, data);
srtdeel_keys[itemregelnr] = bes_srtdeel_key;
}
} }
} }
else
var srtdeel_keys = getFParamIntArray("srtdeel_keys",[]);
var isNew = (bes_key == -1); var isNew = (bes_key == -1);
var isChange = !isNew && bes_bestelling.parent_key > 0; var isChange = !isNew && bes_bestelling.parent_key > 0;

View File

@@ -18,6 +18,7 @@
*/ %> */ %>
<!-- #include file="../Shared/common.inc" --> <!-- #include file="../Shared/common.inc" -->
<!-- #include file="bes.inc" -->
<% <%
var urole = getQParamSafe("urole"); var urole = getQParamSafe("urole");
var dis_key = getQParamInt("dis_key"); var dis_key = getQParamInt("dis_key");

View File

@@ -71,9 +71,10 @@ function maxArtikelReached()
return (maxartikel > 0 && aantalArtikelen >= maxartikel) return (maxartikel > 0 && aantalArtikelen >= maxartikel)
} }
var jqFreeFields = ["lev_key_show", "srtdeel_nr", "omschrijving", "srtgroep", "price", "aantal_text"];
function AddFreeArticleItem(urole) function AddFreeArticleItem(urole)
{ {
if (!validateForm("u2", { checkOnly: ["lev_key_show", "srtdeel_nr", "omschrijving", "srtgroep", "price", "aantal_text"] })) if (!validateForm("u2", { checkOnly: jqFreeFields }))
return; return;
window.bes_item_info = window.bes_item_info =
{ {
@@ -88,7 +89,7 @@ function AddFreeArticleItem(urole)
"singlegroep":0, "singlegroep":0,
//"srtdeel_image":"https://cos.euroflorist.com/uwv/Products/ARR06_03.jpg", //"srtdeel_image":"https://cos.euroflorist.com/uwv/Products/ARR06_03.jpg",
"veelvoud":1, "veelvoud":1,
"price":parseFloat($("#price").val()), "price":parseFloat(String($("#price").val()).replace(',', '.')) || 0.0,
"eenheid":$("#unit").val(), "eenheid":$("#unit").val(),
"num_prop":0, "num_prop":0,
"staffelgroep":-1, "staffelgroep":-1,
@@ -141,16 +142,15 @@ function AddSuggestItem(bes_item_info, aantal, urole)
function AddItem(bes_item_info, aantal, urole, doCheckAmount) function AddItem(bes_item_info, aantal, urole, doCheckAmount)
{ {
var table = $("#sel_items")[0];
// openModalDetail is dan wel modal maar niet synchroon, daarom continueAdd callback // openModalDetail is dan wel modal maar niet synchroon, daarom continueAdd callback
var continueAdd = function(objFlex) var continueAdd = function(objFlex)
{ {
if (objFlex || bes_item_info.num_prop == 0) if (bes_item_info.num_prop > 0 && !objFlex)
{ return; // geen flex ingevuld
var aantal_cell = CreateRow(bes_item_info, aantal, -1, true, objFlex, urole);
if (doCheckAmount) var aantal_cell = CreateRow(bes_item_info, aantal, -1, true, objFlex, urole);
checkAmount(aantal_cell); // eventuele minimum en zo if (doCheckAmount)
checkAmount(aantal_cell); // eventuele minimum en zo
StaffelKortingResult(); StaffelKortingResult();
@@ -164,8 +164,16 @@ function AddItem(bes_item_info, aantal, urole, doCheckAmount)
} }
// Item veld en details van item wissen: onChangeArtikelgroep does the trick // Item veld en details van item wissen: onChangeArtikelgroep does the trick
if (!bes_item_info.isFreeArticle) // niet bij de isFreeArticle if (!bes_item_info.isFreeArticle)
onChangeArtikelgroep(); onChangeArtikelgroep();
else
{
$('#aantal_text').val("");
$('#srtdeel_nr').val("");
$('#omschrijving').val("");
$("#price").val("");
$("#unit").val("");
}
// Als het maximum aantal artikelen voor deze discipline bereikt is moet het artikel veld gedisabled worden. // Als het maximum aantal artikelen voor deze discipline bereikt is moet het artikel veld gedisabled worden.
if (maxArtikelReached()) if (maxArtikelReached())
@@ -175,10 +183,6 @@ function AddItem(bes_item_info, aantal, urole, doCheckAmount)
} }
FcltMgr.resized(window); FcltMgr.resized(window);
}
else {
return;
}
} }
var objFlex = false; var objFlex = false;
@@ -516,7 +520,7 @@ function checkInput()
function MakeOrder (newOrder) function MakeOrder (newOrder)
{ {
// Standaard checks op verplichte velden, datum formaat, numeriek en float formaat, currency formaat. // Standaard checks op verplichte velden, datum formaat, numeriek en float formaat, currency formaat.
if (!validateForm("u2")) if (!validateForm("u2", { checkNot: jqFreeFields }))
return false; return false;
// Formulier specifieke checks // Formulier specifieke checks

View File

@@ -66,12 +66,7 @@ if (Session("user_lang"))
urole = findparam(params, "urole"); urole = findparam(params, "urole");
if (urole) if (urole)
url += "&urole=" + urole; url += "&urole=" + urole;
Response.Redirect(protectQS.create(url, { sleutel: S("helppage_secret"), no_user_key: true }));
Response.End;
%> %>
<html>
<head>
<% FCLTHeader.Generate() %>
</head>
<frameset frameborder="no" border="0">
<frame src="<%=protectQS.create(url, { sleutel: S("helppage_secret"), no_user_key: true }) %>" frameborder="0" marginwidth="0" noresize>
</frameset>
</html>

View File

@@ -173,6 +173,7 @@ iface =
} }
// params: checkOnly : [] beperkt array met velden die gecontroleerd moeten worden // params: checkOnly : [] beperkt array met velden die gecontroleerd moeten worden
// (default alles met class 'required') // (default alles met class 'required')
// checkNot : [] deze velden niet controleren (default leeg)
// relaxed : alleen controle, geen class aanpassingen of alerts // relaxed : alleen controle, geen class aanpassingen of alerts
function validateForm(fName, params) function validateForm(fName, params)
{ // TODO: Alleen binnen fName kijken? { // TODO: Alleen binnen fName kijken?
@@ -227,15 +228,17 @@ function validateForm(fName, params)
var anyBad = false; var anyBad = false;
var validatorHint = ""; var validatorHint = "";
var selector = ".required";
var jqcheckonly="*"; var jqcheckonly="*";
if (params.checkOnly) // slechts enkele velden controleren if (params.checkOnly) // slechts enkele velden controleren
jqcheckonly = "#" + params.checkOnly.join(",#"); jqcheckonly = "#" + params.checkOnly.join(",#");
var jqchecknot="";
if (params.checkNot) // Deze velden niet meer controleren
jqchecknot = "#" + params.checkNot.join(",#");
if (params.relaxed) if (params.relaxed)
clsName = ""; clsName = "";
$(selector).filter(jqcheckonly).each(function (i) $(".required").filter(jqcheckonly).not(jqchecknot).each(function (i)
{ {
switch (this.tagName) switch (this.tagName)
{ {
@@ -282,9 +285,10 @@ function validateForm(fName, params)
case "TEXTAREA": case "TEXTAREA":
{ {
// bij currency zijn we extra streng: 0.0 wordt niet geaccepteerd. // bij currency zijn we extra streng: 0.0 wordt niet geaccepteerd.
// tenzij je oorspronkelijk requiredor0:true (ipv required) hebt meegegeven
$(this).removeClass(clsName); $(this).removeClass(clsName);
if ($(this).val() == "" || if ($(this).val() == "" ||
($(this).hasClass("currency") && parseFloat($(this).val().replace(',', '.')) == 0) || ($(this).hasClass("currency") && !$(this).hasClass("required0isoke") && parseFloat($(this).val().replace(',', '.')) == 0) ||
$(this).hasClass("suggestBad") || $(this).hasClass("suggestBad") ||
($(this).hasClass("suggest") && this.getAttribute("sgKey") < 0)) ($(this).hasClass("suggest") && this.getAttribute("sgKey") < 0))
{ {
@@ -313,7 +317,7 @@ function validateForm(fName, params)
} }
) )
$(".number").filter(jqcheckonly).each(function (i) $(".number").filter(jqcheckonly).not(jqchecknot).each(function (i)
{ {
if ($(this).val() != "" && isNaN(parseInt($(this).val()), 10)) if ($(this).val() != "" && isNaN(parseInt($(this).val()), 10))
{ {
@@ -326,7 +330,7 @@ function validateForm(fName, params)
} }
} }
) )
$(".float").filter(jqcheckonly).each(function (i) $(".float").filter(jqcheckonly).not(jqchecknot).each(function (i)
{ {
if ($(this).val() != "" && !isFinite(parseFloat($(this).val()))) if ($(this).val() != "" && !isFinite(parseFloat($(this).val())))
{ {
@@ -339,7 +343,7 @@ function validateForm(fName, params)
} }
} }
) )
$(".currency").filter(jqcheckonly).each(function (i) $(".currency").filter(jqcheckonly).not(jqchecknot).each(function (i)
{ {
if ($(this).val() != "" && !_isGoodCurrency($(this).val().replace(',', '.'))) if ($(this).val() != "" && !_isGoodCurrency($(this).val().replace(',', '.')))
{ {
@@ -352,7 +356,7 @@ function validateForm(fName, params)
} }
} }
) )
$("input[regexp]").filter(jqcheckonly).each(function (i) $("input[regexp]").filter(jqcheckonly).not(jqchecknot).each(function (i)
{ {
if (($(this).hasClass("required") || $(this).val()) && (!_isGoodTextFormat(this))) if (($(this).hasClass("required") || $(this).val()) && (!_isGoodTextFormat(this)))
{ {
@@ -365,7 +369,7 @@ function validateForm(fName, params)
} }
} }
) )
$("textarea[regexp]").filter(jqcheckonly).each(function (i) $("textarea[regexp]").filter(jqcheckonly).not(jqchecknot).each(function (i)
{ {
if (($(this).hasClass("required") || $(this).val()) && (!_isGoodTextFormat(this))) if (($(this).hasClass("required") || $(this).val()) && (!_isGoodTextFormat(this)))
{ {

View File

@@ -120,7 +120,7 @@ BLOCK_START("prsAfd", L("lcl_dep_name_level"+afd_niveau));
required: true }); required: true });
} }
RWFIELDTR("afd_naam", "fld", L("lcl_prs_dept_name"), afd_naam, {required: true, maxlength: 10}); RWFIELDTR("afd_naam", "fld", L("lcl_prs_dept_name"), afd_naam, {required: true, maxlength: 15});
RWFIELDTR("afd_oms", "fld", L("lcl_prs_dept_desc"), afd_oms, {required: true, maxlength: 60}); RWFIELDTR("afd_oms", "fld", L("lcl_prs_dept_desc"), afd_oms, {required: true, maxlength: 60});
FCLTkostenplaatsselector( "kstpl_key", FCLTkostenplaatsselector( "kstpl_key",

View File

@@ -79,7 +79,8 @@ for (var i = 1; i <= form_dates.Count; i++)
} }
} }
} }
sql += "END;" sql += " UPDATE res_rsv_artikel SET res_rsv_artikel_prijs = NULL WHERE res_rsv_ruimte_key = new_key;"; // NYBU#31785 DB24 res.res_copy_res doet dat fout
sql += " END;"
var err = Oracle.Execute(sql, true); var err = Oracle.Execute(sql, true);
if (err.friendlyMsg) if (err.friendlyMsg)
abort_with_warning(err.friendlyMsg); abort_with_warning(err.friendlyMsg);

View File

@@ -9,7 +9,7 @@
Note: Sinds 5.2.2 zitten de settings in de database Note: Sinds 5.2.2 zitten de settings in de database
*/ */
var FCLTVersion="5.4.4d"; // software versie var FCLTVersion="5.4.4e"; // software versie
var FCLTMinDatabaseSchema="24"; var FCLTMinDatabaseSchema="24";
var custpath = rooturl + "/cust/" + customerId; // path to customer files var custpath = rooturl + "/cust/" + customerId; // path to customer files

View File

@@ -291,6 +291,7 @@ function RWFIELD(pname, pclass, plabel, pvalue, params)
var lclass = pclass; var lclass = pclass;
if (params.infoPointer) lclass += " details"; if (params.infoPointer) lclass += " details";
if (!params.readonly && params.required) lclass += " required"; if (!params.readonly && params.required) lclass += " required";
if (!params.readonly && params.requiredor0) lclass += " required required0isoke";
var inputtype = (isBadInput()? " type='text'" : " type='number'"); var inputtype = (isBadInput()? " type='text'" : " type='number'");
var lstep=""; var lstep="";
switch (params.datatype) { switch (params.datatype) {

View File

@@ -141,8 +141,13 @@ function sendMLDorders(opdr_key)
oRs.Close(); oRs.Close();
var result = send1Order(Bedrijf_key, XMLnode, OpdrKey, ordernr, Sender, cust) var result = send1Order(Bedrijf_key, XMLnode, OpdrKey, ordernr, Sender, cust)
if (!result) if (result)
{
Log2File(1, "====== " + XMLnode + " done (" + toDateTimeString(new Date()) + ")");
}
else
{ // Dan maar opnieuw door scheduled putorders laten proberen { // Dan maar opnieuw door scheduled putorders laten proberen
Log2File(1, "====== " + XMLnode + " sending failed. Retry by scheduled putorders (" + toDateTimeString(new Date()) + ")");
var sql = "UPDATE mld_opdr SET mld_opdr_teverzenden = 1 WHERE mld_opdr_key = " + opdr_key; var sql = "UPDATE mld_opdr SET mld_opdr_teverzenden = 1 WHERE mld_opdr_key = " + opdr_key;
Oracle.Execute(sql); Oracle.Execute(sql);
} }

View File

@@ -10,7 +10,7 @@ function sendFTP(p_connect, p_file, p_data, p_path)
{ {
var objFso = new ActiveXObject("Scripting.FileSystemObject"); var objFso = new ActiveXObject("Scripting.FileSystemObject");
Log2File(1, "*> sendFTP"); Log2File(2, "*> sendFTP");
var FTPsend = false; var FTPsend = false;
if (p_connect.Connected) if (p_connect.Connected)
{ {
@@ -41,7 +41,7 @@ function sendFTP(p_connect, p_file, p_data, p_path)
FTPsend = false; FTPsend = false;
} }
} }
Log2File(1, "*< sendFTP"); Log2File(2, "*< sendFTP");
return FTPsend; return FTPsend;
} }