fixin (fixin) wrote,
fixin
fixin

Поля пустого элемента в СКД



Поля пустого элемента в СКД


Если в отборе или группировке извлекается поле из элемента, значение которого равно пустая ссылка, например, Номенклатура.ОсновнойПоставщик, то результатом будет NULL, а не пустая ссылка.


Чтобы избежать этого, я придумал только один способ: завести пустую ссылку нужного типа, в нашем примере пустой товар с заранее известным кодом, например «ПЭ-ПУЭЛЕМЕН».


Далее в запросе писать:


ВЫБОР КОГДА Номенклатура  = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) Тогда &ПустаяНоменклатура ИНАЧЕ Номенклатура КОНЕЦ


А в параметрах добавить значение:


Параметры. Найти(Новый ПараметрКомпоновки(«ПустаяНоменклатура»).Значение = Справочники.Номенклатура.НайтиПоКоду(«ПЭ-ПУЭЛЕМЕН»);


 


В таком случае пользователь сможет делать отбор по полям элементов, которые могут содержать пустые значения.


Если не позаботиться о такой защите, то в группировке будут как минимум два значения – одно пустое, другое NULL.


А в отборе сравнение с NULL никогда не даст истину, ни в случае равенства, ни в случае неравенства.

Tags: скд 1с
Subscribe

promo fixin december 31, 2037 16:57 1420
Buy for 30 tokens
UPD: Друзья, в августе 2019 года блог переехал на http://fixinchik.ru. Welcome! Добро пожаловать в журнал Осипова Сергея Александровича, известного также как Fixin и Гений 1С. Рекомендую ознакомиться с Часто Задаваемыми Вопросами обо мне. Что я хочу в подарок - список. Мой проект "…
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 27 comments