Правильно извлечение реквизитов клиента
|
Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
d7d1cd Участник со стажем
Вступление в Клуб: 21.01.2022
|
Вт Мар 15, 2022 12:52  Правильно извлечение реквизитов клиента |
|
Полезность: Нет оценки
|
Всем привет.
Пишу представление для ТБП Платежные документы. При извлечении данных из реквизита KL_DT (или KL_KT) необходимо учитывать является ли клиент клиентом банка или не является им. Например, чтобы выяснить ИНН я видел вот такой код:
Код: | nvl(d.[KL_DT].[2].[INN], d.[KL_DT].[1].[1].[INN]) : INN |
То есть, если проверка ИНН реквизита "Не клиент банка" покажет, что он не null, то будет использоваться он, иначе будет использоваться ИНН из реквизита "Клиент банка".
Насколько правильно делать так для ИНН и вообще для любого другого параметра клиента? Ведь в показанном коде делается предположение о том, что указан только один из ИНН-нов. Но что если оба ИНН буду заполнены? Тогда, в силу функции nvl, вернется ИНН не клиента банка, но ведь при этом клиент может оказаться клиентом банка. Как правильно извлекать данные из KL_DT и KL_KT? |
|
 |
-Eugene- Участник
Вступление в Клуб: 21.04.2008
|
Вт Мар 15, 2022 16:28  Re: Правильно извлечение реквизитов клиента |
|
Полезность: 2
|
В структуре данных для хранения реквизитов клиента есть специальный флаг, содержащий признак какую именно секцию необходимо использовать для чтения данных:
Код: | d.[KL_DT].[0] -- переключатель: 1 - клиент, 2 - не клиент |
Поэтому корректнее использовать следующее выражение:
Код: | decode(d.[KL_DT].[0], 1, d.[KL_DT].[1].[1].[INN], 2, d.[KL_DT].[2].[INN], null) :INN |
|
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|