STPH#41742: [BES Voorraad]: geen inkoopcatalogus gekoppeld en toch bestelvoorraad zien?

svn path=/Website/branches/v2017.1/; revision=35296
This commit is contained in:
Maykel Geerdink
2017-09-13 11:40:50 +00:00
parent a0d793006a
commit 82e14de882

View File

@@ -112,8 +112,8 @@ function bes_voorraad_list (pautfunction, params)
+ " , dp.bes_ins_discipline_key" + " , dp.bes_ins_discipline_key"
+ " , dp.bes_ins_discipline_key_inkoop inkoop_disc" + " , dp.bes_ins_discipline_key_inkoop inkoop_disc"
+ " , (SELECT "+ lcl.xsql('bd2.ins_discipline_omschrijving','bd2.ins_discipline_key') + " , (SELECT "+ lcl.xsql('bd2.ins_discipline_omschrijving','bd2.ins_discipline_key')
+ " FROM bes_discipline bd2" + " FROM bes_discipline bd2"
+ " WHERE bd2.ins_discipline_key = dp.bes_ins_discipline_key_inkoop) disc_oms" + " WHERE bd2.ins_discipline_key = dp.bes_ins_discipline_key_inkoop) disc_oms"
+ " , (SELECT isd2.bes_srtdeel_voorraadmax" + sql_srtdeel2 + ") voorraadmax" // Voorraadmax van gekoppelde discipline + " , (SELECT isd2.bes_srtdeel_voorraadmax" + sql_srtdeel2 + ") voorraadmax" // Voorraadmax van gekoppelde discipline
+ " , (SELECT isd2.bes_srtdeel_voorraadmin" + sql_srtdeel2 + ") voorraadmin" // Voorraadmin van gekoppelde discipline + " , (SELECT isd2.bes_srtdeel_voorraadmin" + sql_srtdeel2 + ") voorraadmin" // Voorraadmin van gekoppelde discipline
+ " , SUM (bo.bes_bestelopdr_item_aantal) aantal_intern" + " , SUM (bo.bes_bestelopdr_item_aantal) aantal_intern"
@@ -145,25 +145,25 @@ function bes_voorraad_list (pautfunction, params)
: "") : "")
+ (params.besgroep_key + (params.besgroep_key
? " AND g.bes_srtgroep_key IN (SELECT sd2.bes_srtgroep_key" ? " AND g.bes_srtgroep_key IN (SELECT sd2.bes_srtgroep_key"
+ " FROM bes_v_aanwezigsrtdeel sd2" + " FROM bes_v_aanwezigsrtdeel sd2"
+ " , bes_v_aanwezigsrtgroep sg2" + " , bes_v_aanwezigsrtgroep sg2"
+ " WHERE sd2.bes_srtgroep_key = sg2.bes_srtgroep_key" + " WHERE sd2.bes_srtgroep_key = sg2.bes_srtgroep_key"
+ " AND (sd2.bes_srtdeel_vervaldatum IS NULL OR sd2.bes_srtdeel_vervaldatum > SYSDATE)" + " AND (sd2.bes_srtdeel_vervaldatum IS NULL OR sd2.bes_srtdeel_vervaldatum > SYSDATE)"
+ " AND sd2.bes_srtdeel_nr IN (SELECT sd3.bes_srtdeel_nr" + " AND sd2.bes_srtdeel_nr IN (SELECT sd3.bes_srtdeel_nr"
+ " FROM bes_v_aanwezigsrtdeel sd3" + " FROM bes_v_aanwezigsrtdeel sd3"
+ " WHERE (sd3.bes_srtdeel_vervaldatum IS NULL OR sd3.bes_srtdeel_vervaldatum > SYSDATE)" + " WHERE (sd3.bes_srtdeel_vervaldatum IS NULL OR sd3.bes_srtdeel_vervaldatum > SYSDATE)"
+ " AND sd3.bes_srtgroep_key = " + params.besgroep_key + "))" + " AND sd3.bes_srtgroep_key = " + params.besgroep_key + "))"
: "") : "")
+ (params.item_key + (params.item_key
? " AND sd.bes_srtdeel_key IN (SELECT sd2.bes_srtdeel_key" ? " AND sd.bes_srtdeel_key IN (SELECT sd2.bes_srtdeel_key"
+ " FROM bes_v_aanwezigsrtdeel sd2" + " FROM bes_v_aanwezigsrtdeel sd2"
+ " , bes_v_aanwezigsrtgroep sg2" + " , bes_v_aanwezigsrtgroep sg2"
+ " WHERE sd2.bes_srtgroep_key = sg2.bes_srtgroep_key" + " WHERE sd2.bes_srtgroep_key = sg2.bes_srtgroep_key"
+ " AND (sd2.bes_srtdeel_vervaldatum IS NULL OR sd2.bes_srtdeel_vervaldatum > SYSDATE)" + " AND (sd2.bes_srtdeel_vervaldatum IS NULL OR sd2.bes_srtdeel_vervaldatum > SYSDATE)"
+ " AND sd2.bes_srtdeel_nr LIKE (SELECT sd3.bes_srtdeel_nr" + " AND sd2.bes_srtdeel_nr LIKE (SELECT sd3.bes_srtdeel_nr"
+ " FROM bes_v_aanwezigsrtdeel sd3" + " FROM bes_v_aanwezigsrtdeel sd3"
+ " WHERE (sd3.bes_srtdeel_vervaldatum IS NULL OR sd3.bes_srtdeel_vervaldatum > SYSDATE)" + " WHERE (sd3.bes_srtdeel_vervaldatum IS NULL OR sd3.bes_srtdeel_vervaldatum > SYSDATE)"
+ " AND sd3.bes_srtdeel_key = " + params.item_key + "))" + " AND sd3.bes_srtdeel_key = " + params.item_key + "))"
: "") : "")
+ " GROUP BY sd.bes_srtdeel_nr" + " GROUP BY sd.bes_srtdeel_nr"
+ " , sd.bes_srtdeel_key" + " , sd.bes_srtdeel_key"
@@ -195,15 +195,15 @@ function bes_voorraad_list (pautfunction, params)
+ " , sd.bes_srtdeel_veelvoud bestelveelvoud" + " , sd.bes_srtdeel_veelvoud bestelveelvoud"
+ " , sd.bes_srtdeel_eenheid" + " , sd.bes_srtdeel_eenheid"
+ " , (SELECT isd2.bes_srtdeel_eenheid" + " , (SELECT isd2.bes_srtdeel_eenheid"
+ " FROM bes_srtdeel isd2" + " FROM bes_srtdeel isd2"
+ " , bes_srtgroep isg2" + " , bes_srtgroep isg2"
+ " , bes_disc_params dp2" + " , bes_disc_params dp2"
+ " WHERE isd2.bes_srtgroep_key = isg2.bes_srtgroep_key" + " WHERE isd2.bes_srtgroep_key = isg2.bes_srtgroep_key"
+ " AND dp2.bes_ins_discipline_key = isg2.ins_discipline_key" + " AND dp2.bes_ins_discipline_key = isg2.ins_discipline_key"
+ " AND isd2.bes_srtdeel_nr LIKE sd.bes_srtdeel_nr" + " AND isd2.bes_srtdeel_nr LIKE sd.bes_srtdeel_nr"
+ " AND isd2.bes_srtdeel_verwijder IS NULL" + " AND isd2.bes_srtdeel_verwijder IS NULL"
+ " AND (isd2.bes_srtdeel_vervaldatum IS NULL OR isd2.bes_srtdeel_vervaldatum > TRUNC(SYSDATE))" + " AND (isd2.bes_srtdeel_vervaldatum IS NULL OR isd2.bes_srtdeel_vervaldatum > TRUNC(SYSDATE))"
+ " AND dp.bes_ins_discipline_key = dp2.bes_ins_discipline_key_inkoop) bes_srtdeel_eenheid_intern" // Eenheid van gekoppelde discipline + " AND dp.bes_ins_discipline_key = dp2.bes_ins_discipline_key_inkoop) bes_srtdeel_eenheid_intern" // Eenheid van gekoppelde discipline
+ " FROM bes_discipline bd" + " FROM bes_discipline bd"
+ " , bes_v_aanwezigsrtgroep g" + " , bes_v_aanwezigsrtgroep g"
+ " , bes_v_aanwezigsrtdeel sd" + " , bes_v_aanwezigsrtdeel sd"
@@ -225,6 +225,21 @@ function bes_voorraad_list (pautfunction, params)
+ " (SELECT dp1.bes_ins_discipline_key_inkoop" + " (SELECT dp1.bes_ins_discipline_key_inkoop"
+ " FROM bes_disc_params dp1" + " FROM bes_disc_params dp1"
+ " WHERE dp1.bes_ins_discipline_key_inkoop IS NOT NULL)" + " WHERE dp1.bes_ins_discipline_key_inkoop IS NOT NULL)"
// Het artikel moet gekoppeld zijn aan een externe leverancier die gekoppeld is aan de interne leverancier (bes_ins_discipline_key_inkoop).
+ " AND EXISTS (SELECT bd1.ins_discipline_key"
+ " , g1.bes_srtgroep_key"
+ " , sd1.bes_srtdeel_key"
+ " , sd1.bes_srtdeel_nr"
+ " , dp1.bes_ins_discipline_key_inkoop"
+ " FROM bes_discipline bd1"
+ " , bes_v_aanwezigsrtgroep g1"
+ " , bes_v_aanwezigsrtdeel sd1"
+ " , bes_disc_params dp1"
+ " WHERE sd1.bes_srtgroep_key = g1.bes_srtgroep_key"
+ " AND g1.ins_discipline_key = bd1.ins_discipline_key"
+ " AND bd1.ins_discipline_key = dp1.bes_ins_discipline_key"
+ " AND sd1.bes_srtdeel_nr = sd.bes_srtdeel_nr" // Dezelfde omschrijving.
+ " AND dp1.bes_ins_discipline_key_inkoop = bd.ins_discipline_key)" // Gekoppeld aan inkoopcatalogus.
+ (params.catalogus_key + (params.catalogus_key
? " AND bd.ins_discipline_key = " + params.catalogus_key ? " AND bd.ins_discipline_key = " + params.catalogus_key
+ " AND (sd.bes_srtdeel_vervaldatum IS NULL OR sd.bes_srtdeel_vervaldatum > SYSDATE)" + " AND (sd.bes_srtdeel_vervaldatum IS NULL OR sd.bes_srtdeel_vervaldatum > SYSDATE)"
@@ -264,15 +279,15 @@ function bes_voorraad_list (pautfunction, params)
+ " , sd.bes_srtdeel_veelvoud bestelveelvoud" + " , sd.bes_srtdeel_veelvoud bestelveelvoud"
+ " , sd.bes_srtdeel_eenheid" + " , sd.bes_srtdeel_eenheid"
+ " , (SELECT isd2.bes_srtdeel_eenheid" + " , (SELECT isd2.bes_srtdeel_eenheid"
+ " FROM bes_srtdeel isd2" + " FROM bes_srtdeel isd2"
+ " , bes_srtgroep isg2" + " , bes_srtgroep isg2"
+ " , bes_disc_params dp2" + " , bes_disc_params dp2"
+ " WHERE isd2.bes_srtgroep_key = isg2.bes_srtgroep_key" + " WHERE isd2.bes_srtgroep_key = isg2.bes_srtgroep_key"
+ " AND dp2.bes_ins_discipline_key = isg2.ins_discipline_key" + " AND dp2.bes_ins_discipline_key = isg2.ins_discipline_key"
+ " AND isd2.bes_srtdeel_nr LIKE sd.bes_srtdeel_nr" + " AND isd2.bes_srtdeel_nr LIKE sd.bes_srtdeel_nr"
+ " AND isd2.bes_srtdeel_verwijder IS NULL" + " AND isd2.bes_srtdeel_verwijder IS NULL"
+ " AND (isd2.bes_srtdeel_vervaldatum IS NULL OR isd2.bes_srtdeel_vervaldatum > TRUNC(SYSDATE))" + " AND (isd2.bes_srtdeel_vervaldatum IS NULL OR isd2.bes_srtdeel_vervaldatum > TRUNC(SYSDATE))"
+ " AND dp.bes_ins_discipline_key = dp2.bes_ins_discipline_key_inkoop) bes_srtdeel_eenheid_intern" // Eenheid van gekoppelde discipline + " AND dp.bes_ins_discipline_key = dp2.bes_ins_discipline_key_inkoop) bes_srtdeel_eenheid_intern" // Eenheid van gekoppelde discipline
+ " FROM bes_discipline bd" + " FROM bes_discipline bd"
+ " , bes_v_aanwezigsrtgroep g" + " , bes_v_aanwezigsrtgroep g"
+ " , bes_v_aanwezigsrtdeel sd" + " , bes_v_aanwezigsrtdeel sd"
@@ -295,9 +310,24 @@ function bes_voorraad_list (pautfunction, params)
+ " AND dp.bes_ins_discipline_key_inkoop IS NULL" + " AND dp.bes_ins_discipline_key_inkoop IS NULL"
// Het moet een gekoppelde discipline zijn // Het moet een gekoppelde discipline zijn
+ " AND dp.bes_ins_discipline_key IN" + " AND dp.bes_ins_discipline_key IN"
+ " (SELECT dp1.bes_ins_discipline_key_inkoop" + " (SELECT dp1.bes_ins_discipline_key_inkoop"
+ " FROM bes_disc_params dp1" + " FROM bes_disc_params dp1"
+ " WHERE dp1.bes_ins_discipline_key_inkoop IS NOT NULL)" + " WHERE dp1.bes_ins_discipline_key_inkoop IS NOT NULL)"
// Het artikel moet gekoppeld zijn aan een externe leverancier die gekoppeld is aan de interne leverancier (bes_ins_discipline_key_inkoop).
+ " AND EXISTS (SELECT bd1.ins_discipline_key"
+ " , g1.bes_srtgroep_key"
+ " , sd1.bes_srtdeel_key"
+ " , sd1.bes_srtdeel_nr"
+ " , dp1.bes_ins_discipline_key_inkoop"
+ " FROM bes_discipline bd1"
+ " , bes_v_aanwezigsrtgroep g1"
+ " , bes_v_aanwezigsrtdeel sd1"
+ " , bes_disc_params dp1"
+ " WHERE sd1.bes_srtgroep_key = g1.bes_srtgroep_key"
+ " AND g1.ins_discipline_key = bd1.ins_discipline_key"
+ " AND bd1.ins_discipline_key = dp1.bes_ins_discipline_key"
+ " AND sd1.bes_srtdeel_nr = sd.bes_srtdeel_nr" // Dezelfde omschrijving.
+ " AND dp1.bes_ins_discipline_key_inkoop = bd.ins_discipline_key)" // Gekoppeld aan inkoopcatalogus.
+ (params.catalogus_key + (params.catalogus_key
? " AND bd.ins_discipline_key = " + params.catalogus_key ? " AND bd.ins_discipline_key = " + params.catalogus_key
+ " AND (sd.bes_srtdeel_vervaldatum IS NULL OR sd.bes_srtdeel_vervaldatum > SYSDATE)" + " AND (sd.bes_srtdeel_vervaldatum IS NULL OR sd.bes_srtdeel_vervaldatum > SYSDATE)"
@@ -443,7 +473,7 @@ function bes_voorraad_list (pautfunction, params)
+ " , voorraad_intern" + " , voorraad_intern"
+ " , (SELECT COUNT(*)" + " , (SELECT COUNT(*)"
+ " FROM bes_kenmerk bk" + " FROM bes_kenmerk bk"
+ " , bes_srtkenmerk sk" + " , bes_srtkenmerk sk"
+ " , bes_srtdeel sd" + " , bes_srtdeel sd"
+ " , bes_srtgroep sg" + " , bes_srtgroep sg"
+ " WHERE sd.bes_srtgroep_key = sg.bes_srtgroep_key" + " WHERE sd.bes_srtgroep_key = sg.bes_srtgroep_key"
@@ -451,9 +481,9 @@ function bes_voorraad_list (pautfunction, params)
+ " OR bk.bes_srtinstallatie_key = sg.bes_srtgroep_key AND bk.bes_kenmerk_niveau LIKE 'G'" + " OR bk.bes_srtinstallatie_key = sg.bes_srtgroep_key AND bk.bes_kenmerk_niveau LIKE 'G'"
+ " OR bk.bes_srtinstallatie_key = sd.bes_srtdeel_key AND bk.bes_kenmerk_niveau LIKE 'S')" + " OR bk.bes_srtinstallatie_key = sd.bes_srtdeel_key AND bk.bes_kenmerk_niveau LIKE 'S')"
+ " AND bk.bes_kenmerk_type = 'I'" + " AND bk.bes_kenmerk_type = 'I'"
+ " AND bk.bes_srtkenmerk_key = sk.bes_srtkenmerk_key" + " AND bk.bes_srtkenmerk_key = sk.bes_srtkenmerk_key"
+ " AND bk.bes_kenmerk_verwijder = NULL" + " AND bk.bes_kenmerk_verwijder = NULL"
+ " AND sk.bes_srtkenmerk_verwijder = NULL" + " AND sk.bes_srtkenmerk_verwijder = NULL"
+ " AND sd.bes_srtdeel_key = l.bes_srtdeel_key) aantalkenmerken" + " AND sd.bes_srtdeel_key = l.bes_srtdeel_key) aantalkenmerken"
+ " , l.eenheid_extern" + " , l.eenheid_extern"
+ " , l.eenheid_intern" + " , l.eenheid_intern"