75 lines
3.2 KiB
SQL
75 lines
3.2 KiB
SQL
-- Customer specific once-script MDUX#36777.
|
|
|
|
SET ECHO ON
|
|
SPOOL xMDUX#36777.lst
|
|
SET DEFINE OFF
|
|
|
|
-- verwijder alle artikelen met verwijderde leveranciers die ook bestaan met niet verwijderde leveranciers
|
|
UPDATE bes_srtdeel
|
|
SET bes_srtdeel_verwijder = SYSDATE
|
|
WHERE bes_srtdeel_key IN
|
|
(SELECT srt.bes_srtdeel_key
|
|
FROM bes_srtdeel srt,
|
|
prs_bedrijf b,
|
|
(SELECT bes_srtdeel_key,
|
|
bes_srtgroep_key,
|
|
bes_srtdeel_omschrijving,
|
|
bes_srtdeel_nr,
|
|
b.prs_bedrijf_naam,
|
|
b.prs_bedrijf_verwijder
|
|
FROM bes_srtdeel srt, prs_bedrijf b
|
|
WHERE bes_srtdeel_verwijder IS NULL
|
|
AND b.prs_bedrijf_key = srt.prs_bedrijf_key
|
|
AND b.prs_bedrijf_verwijder IS NULL) b2
|
|
WHERE bes_srtdeel_verwijder IS NULL
|
|
AND b.prs_bedrijf_key = srt.prs_bedrijf_key
|
|
AND b.prs_bedrijf_verwijder IS NOT NULL
|
|
AND b2.bes_srtdeel_nr = srt.bes_srtdeel_nr
|
|
AND UPPER (b2.prs_bedrijf_naam) = UPPER (b.prs_bedrijf_naam)
|
|
AND srt.bes_srtgroep_key = b2.bes_srtgroep_key);
|
|
|
|
COMMIT;
|
|
|
|
-- Verwijder een van de dubbele artikelen zonder leverancier
|
|
UPDATE bes_srtdeel
|
|
SET bes_srtdeel_verwijder = SYSDATE
|
|
WHERE bes_srtdeel_key IN
|
|
( SELECT MIN (srt.bes_srtdeel_key)
|
|
FROM bes_srtdeel srt, prs_bedrijf b, prs_v_aanwezigbedrijf b2
|
|
WHERE bes_srtdeel_verwijder IS NULL
|
|
AND b.prs_bedrijf_key = srt.prs_bedrijf_key
|
|
AND b.prs_bedrijf_verwijder IS NOT NULL
|
|
AND UPPER (b2.prs_bedrijf_naam) = UPPER (b.prs_bedrijf_naam)
|
|
GROUP BY bes_srtdeel_nr,
|
|
bes_srtdeel_omschrijving,
|
|
bes_srtgroep_key,
|
|
b2.prs_bedrijf_key
|
|
HAVING COUNT ( * ) > 1);
|
|
|
|
COMMIT;
|
|
|
|
-- update arikelen met een verwijderde leverancier naar een gelijke leveranicer die nog niet is verwijderd
|
|
UPDATE bes_srtdeel sd
|
|
SET prs_bedrijf_key =
|
|
( SELECT b2.prs_bedrijf_key
|
|
FROM bes_srtdeel srt, prs_bedrijf b, prs_v_aanwezigbedrijf b2
|
|
WHERE bes_srtdeel_verwijder IS NULL
|
|
AND b.prs_bedrijf_key = srt.prs_bedrijf_key
|
|
AND b.prs_bedrijf_verwijder IS NOT NULL
|
|
AND UPPER (b2.prs_bedrijf_naam) = UPPER (b.prs_bedrijf_naam)
|
|
AND sd.bes_srtdeel_key = srt.bes_srtdeel_key)
|
|
WHERE EXISTS
|
|
( SELECT 1
|
|
FROM bes_srtdeel srt, prs_bedrijf b, prs_v_aanwezigbedrijf b2
|
|
WHERE bes_srtdeel_verwijder IS NULL
|
|
AND b.prs_bedrijf_key = srt.prs_bedrijf_key
|
|
AND b.prs_bedrijf_verwijder IS NOT NULL
|
|
AND UPPER (b2.prs_bedrijf_naam) = UPPER (b.prs_bedrijf_naam)
|
|
AND sd.bes_srtdeel_key = srt.bes_srtdeel_key);
|
|
|
|
COMMIT;
|
|
|
|
BEGIN adm.systrackscriptId('$Id$'); END;
|
|
/
|
|
SPOOL OFF
|