PCHD#58564 -- Bidfood: meerdere klantnummers op één locatie
svn path=/Website/branches/v2019.1/; revision=43523
This commit is contained in:
@@ -94,8 +94,10 @@ function (RequestForm, bes_srtdeel_key, item, pResult)
|
||||
|
||||
// Afleveradres is het klantnummer, en moeten wij 'mappen' op een mld_adres record (=aflever adres)
|
||||
// Implementatie van deze mapping (vertaaltabel): bidfood_klantnr -> alg_locatie kenmerk 'bidfood_klantnr' -> alg_locatie -> mld_adres.
|
||||
// Uitgangspunt is dat alg_locatie wel een mld_adres met vinkje 'afleveradres=ja' heeft, en precies 1 (anders wordt de '1e' of een willekeurige gepakt).
|
||||
// Indien alg_locatie geen mld_adres heeft, dan wordt geen mld_adres_key meegegeven!
|
||||
// Voorwaardes voor goed functioneren structuur:
|
||||
// - Per locatie 1 uniek 5-cijferig bidfoodklantnr gekoppeld
|
||||
// - Per locatie 1 afleveradres gekoppeld met een vinkje 'afleveradres=ja'.
|
||||
// Indien er MEER adressen gekoppeld zijn OF GEEN adressen gekoppeld zijn dan moet gebruiker zelf nog afleveradressen selecteren (zie ticket 58564)
|
||||
|
||||
var bidfood_klantnr = punchNVL("NEW_ITEM-CUST_FIELD2[#]", item, "Onbekend");
|
||||
__Log('bidfood_klantnr: CUST_FIELD2[' + item + ']= ' + bidfood_klantnr);
|
||||
@@ -106,11 +108,16 @@ function (RequestForm, bes_srtdeel_key, item, pResult)
|
||||
|
||||
|
||||
sql = " SELECT mld_adres_key FROM mld_adres a, alg_locatie l, alg_onrgoedkenmerk k"
|
||||
+ " WHERE alg_onrgoed_niveau = 'L' and alg_kenmerk_key = 1220 and alg_onrgoedkenmerk_verwijder is NULL and alg_onrgoedkenmerk_waarde = " + safe.quoted_sql(bidfood_klantnr)
|
||||
+ " WHERE alg_onrgoed_niveau = 'L' and alg_kenmerk_key = 1220 and alg_onrgoedkenmerk_verwijder is NULL and substr(alg_onrgoedkenmerk_waarde,1,5) = substr(" + safe.quoted_sql(bidfood_klantnr) + ",1,5)"
|
||||
+ " AND l.alg_locatie_key = k.alg_onrgoed_key"
|
||||
+ " AND a.alg_locatie_key = l.alg_locatie_key"
|
||||
+ " AND a.mld_adres_afleveradres = 1"
|
||||
+ " AND a.mld_adres_verwijder IS NULL";
|
||||
+ " AND a.mld_adres_verwijder IS NULL"
|
||||
+ " AND l.alg_locatie_key NOT IN (select v.alg_locatie_key from"
|
||||
+ " (select l.alg_locatie_Key, count(a.mld_adres_key) as AantalAflever from alg_locatie l, mld_adres a where l.alg_Locatie_key = a.alg_locatie_key and a.mld_adres_afleveradres = 1 and a.mld_adres_verwijder is null"
|
||||
+ " group by l.alg_locatie_key) v where v.AantalAflever=2)"
|
||||
|
||||
;
|
||||
|
||||
oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof){
|
||||
|
||||
Reference in New Issue
Block a user