накатила новая волна декларирования - появились новые проблемы,
а именно -сверка с поставщиками в разрезе накладных (актуальная тема на форуме ФСРАР)
в этом квартале поставщики постарались на славу, а именно, один в печатной форме оставлял только цифры (без ведущих нулей, при чем в сч.фактуре они были) и я целый квартал исправлял за магазинами эту ошибку
Код:
UPDATE supermag.smwaybillsin a
SET supplierdoc = REPLACE (supplierdoc, '0000', '')
WHERE a.doctype = 'WI'
AND a.ID IN (
SELECT a.ID
FROM supermag.smdocuments a, supermag.smwaybillsin b
WHERE a.doctype = 'WI'
AND a.clientindex = 1295
AND a.createdat BETWEEN TO_DATE ('01.07.2013', 'DD.MM.YYYY')
AND TO_DATE ('30.09.2013', 'DD.MM.YYYY')
AND b.doctype = 'WI'
AND a.ID = b.ID
AND b.supplierdoc LIKE '0000%');
COMMIT ;
а еще один отличился - в печатной форме в качестве префикса использовал английские буквы BE - отличите их от русских ВЕ
запрос на исправление - аналогичный
Код:
UPDATE supermag.smwaybillsin a
SET supplierdoc = REPLACE (supplierdoc, 'ВЕ', 'BE')
WHERE a.doctype = 'WI'
AND a.ID IN (
SELECT a.ID
FROM supermag.smdocuments a, supermag.smwaybillsin b
WHERE a.doctype = 'WI'
AND a.clientindex = 1295
AND a.createdat BETWEEN TO_DATE ('01.07.2013', 'DD.MM.YYYY')
AND TO_DATE ('30.09.2013', 'DD.MM.YYYY')
AND b.doctype = 'WI'
AND a.ID = b.ID
AND b.supplierdoc LIKE 'ВЕ%');
COMMIT ;
может кто подскажет - а как вернуть ведущие нули, т.е. у меня сейчас остались только цифры, например 999, 1021, а должно быть 00000999, 00001021 - т.е. длина строки 8 символов??
есть вот такая конструкция - но никак не могу объединить ее с предыдущими запросами
Код:
SELECT TRIM (LPAD ('789654', 8, '0'))
FROM DUAL;