Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

В запросе выбрать контрагентов без головного контрагента

В запросе выбрать контрагентов без головного контрагента
Я
   igel1969
 
31.01.18 - 14:09
Здравствуйте.
1С 8.2 УТ 10.3
Казалось бы вопрос идиотский, но никак не получается, а запрос нужно сделать срочно.
Мне нужно выбрать в запросе документы по всем контрагентам, которые не имеют головного контрагента.
Я уж и так писал:
РеализацияТоваровУслугТовары.Ссылка.Контрагент.ГоловнойКонтрагент = Null

и так:
РеализацияТоваровУслугТовары.Ссылка.Контрагент.ГоловнойКонтрагент = &ГК
Запрос.УстановитьПараметр("ГК", Справочники.Контрагенты.ПустаяСсылка());
и так: ЕСТЬNULL(РеализацияТоваровУслугТовары.Ссылка.Контрагент.ГоловнойКонтрагент, NULL) = NULL

Ничего не помогает.

Проверять реквизит "ВходитВХолдинг" не предлагать, ибо такого реквизита не существует - это какое-то вычисляемое поле на форме.
 
 
   CHerypga
 
1 - 31.01.18 - 14:11
по логике 
РеализацияТоваровУслугТовары.Ссылка.Контрагент.ГоловнойКонтрагент = &ГК
Запрос.УстановитьПараметр("ГК", Справочники.Контрагенты.ПустаяСсылка());
должно работать, хотя кто ж знает что за тип там у вашего реквизита, может там Неопределено, но уж точно никак не Null
   hhhh
 
2 - 31.01.18 - 14:12
(0) вы не поняли, там головной контрагент всегда есть. Наверно вам тупо надо

РеализацияТоваровУслугТовары.Ссылка.Контрагент.ГоловнойКонтрагент = РеализацияТоваровУслугТовары.Ссылка.Контрагент
   CHerypga
 
3 - 31.01.18 - 14:12
по поводу
ЕСТЬNULL(РеализацияТоваровУслугТовары.Ссылка.Контрагент.ГоловнойКонтрагент, NULL) = NULL
Null в запросе не равен самому себе, он равен себе только в коде
   igel1969
 
4 - 31.01.18 - 14:13
(2) т.е. если на форме головной контрагент не заполнен, то реально в базе он заполнен и равен самому контрагенту?
   igel1969
 
5 - 31.01.18 - 14:14
(2) так и есть, сработало, спасибо!!!!
   GGDots
 
6 - 31.01.18 - 14:15
что выводит следующий код для твоего документа без головного контрагента:

Сообщить(Ссылка.Контрагент.ГоловнойКонтрагент);
в отладчике если встать на эту строчку - какой тип значения

показывает Ссылка.Контрагент.ГоловнойКонтрагент? какое там значение?

И покажи целиком запрос - мало ли какие условия дополнительные обрубают всю выборку
   GGDots
 
7 - 31.01.18 - 14:15
+
   Гипервизор
 
8 - 31.01.18 - 14:16
(2) Есть нюансы:

Если НЕ ЭтоГруппа И НЕ ЗначениеЗаполнено(ГоловнойКонтрагент) И НЕ ОбособленноеПодразделение Тогда
        Если ЭтоНовый() Тогда
            ГоловнойКонтрагент = мСсылкаНового;
        Иначе
            ГоловнойКонтрагент = Ссылка;
        КонецЕсли;
    КонецЕсли;
   igel1969
 
9 - 31.01.18 - 14:27
(8) во-первых я ищу в запросе, а во-вторых, среди документов. как Вы представляете себе документ, в котором контрагент - группа или новый?
   igel1969
 
10 - 31.01.18 - 14:28
(6) вот да, ступил из-за того, что торопился. всегда можно поставить точку останова и посмотреть значение.
 
 Рекламное место пустует
   1Сергей
 
11 - 31.01.18 - 14:28
>>ЕСТЬNULL(РеализацияТоваровУслугТовары.Ссылка.Контрагент.ГоловнойКонтрагент, NULL)

Это пять ящитаю
   igel1969
 
12 - 31.01.18 - 14:31
(11) да, сам уже понял что написал ))))))
   Гипервизор
 
13 - 31.01.18 - 14:39
(12) Осталось еще понять что вы написали в ответ на (8).
Я привел кусок типового кода, из которого видно, что есть случаи, когда головной контрагент не заполняется автоматически.
   Chameleon1980
 
14 - 31.01.18 - 14:43
NULL не равно NULL - это ничто
   GGDots
 
15 - 31.01.18 - 15:07
(14)

Сообщить(NULL = NULL) = Истина :)

Список тем форума
Рекламное место пустует  Рекламное место пустует
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует