Показать сообщение отдельно
Старый 28.04.2015, 11:24   #4  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,712 / 1201 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от trudel Посмотреть сообщение
Есть enum поля. делаю outer join с таблицей, содержащей их, для отчета. В итоге отчет выводит там где соединения не произошло все равно первое(0) значение енума, а должен пустое. Каким образом это сделать. При заполнении поля проверять поле "неенум типа" этой таблицы и если оно пустое, то тогда и енум поля заполнять пустым?
Да. Именно так.

Axapta не в состоянии отличить состояние "нет значения", от "нулевого" значения поля. Значение NULL просто не поддерживается.

Более того, для Enum вообще не существует понятия "пустого" (нулевого) значения, поскольку, как правило, нумерация в Enum как раз и начинается с нуля. Т.е. применительно к Enum отличить "пустое" от "не пустого" значения невозможно "в принципе" Только по значению других полей. Ну, за исключением случаев, когда нумерация Enum сделана "не стандартно" (разные есть варианты)

В общем случае, по возможности, любые типы соединений, отличные от inner join лучше вообще избегать. Сопровождать такие запросы, если возникает желание как-то расширить функциональность, слишком сложно и накладно. По возможности, используйте различные альтернативы. От заполнения временных таблиц для отчета, до различных дисплейных методов.

В Вашем случае, вероятно, подойдет вариант решения, использованный в формах SalesTable и PurchTable для отображения значений на закладках "Разноска", где отображаются номера и даты последних разнесенных документов разных типов.
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...

Последний раз редактировалось Владимир Максимов; 28.04.2015 в 11:30.