Member 14588284 Ответов: 1

Поиск следующей первой серии в запросе oracle


Привет.

Как я могу найти в серии счетов-фактур после первой серии missig sequence?

Подобный этому:

А402020000000001
А402020000000002
А402020000000006


У меня есть коды для поиска пропавших серий последовательностей например
(A402020000000003-A402020000000004-A402020000000005)
мой вопрос ответ должен быть ;

для серии A402020000000003 я должен найти A402020000000006 (следующая первая серия)
для серии A402020000000004 я должен найти A402020000000006 (следующая первая серия)
для A402020000000005 серия i должна найти A402020000000006 (следующая первая серия)

Что я уже пробовал:

NEXTFIRST = "SELECT MAX(SERIE) FROM TABLE WHERE SERIE =LPAD(A.SERIE,7)||LPAD((TO_NUMBER(SUBSTR(A.SERIE,8,9))+1),9,0) "


в этом коде я нахожу следующую серию только для
A402020000000005
результат есть
A402020000000006


другие A402020000000003 и A402020000000004 равны нулю

1 Ответов

Рейтинг:
2

Gerry Schmitz

Как только вы выдадите "номер счета-фактуры", Он никогда не должен "пропадать". У вас есть "непогашенные" счета-фактуры, как указано их остатками в книге дебиторской или кредиторской задолженности.

Если счета-фактуры "отсутствуют", то ваша бухгалтерская система повреждена.

Затем вы генерируете список номеров счетов-фактур "should have" и сравниваете его с теми, которые "не пропущены"; например, выберите xxx not in yyy.


Member 14588284

Если счета-фактуры "отсутствуют", то ваша бухгалтерская система повреждена.

Это уже моя проблема. Поэтому я хочу найти недостающую последовательность и первую серию после недостающей последовательности серии