1с найти документ по дополнительному реквизиту

Ном = Справочники.Номенклатура.НайтиПоРеквизиту("Гарантия", ЗначениеРеквизита);

Этот способ подходит для поиска по реквизитам справочника. И он ищет только первый элемент и не годится, если их несколько.
Но, поскольку вы пишете что вам нужно осуществить поиск по дополнительному реквизиту, то вам прийдеться писать запрос, и решение зависит от того, как в вашей конфигурации реализованы дополнительные реквизиты.
Например, в конфигурации УНФ, дополнительные реквизиты, это элементы табличной части справочника Номенклатура. При этом «свойство», т.е. имя реквизита, в вашем случае «Гарантия», это план видов характеристик ДополнительныеРеквизитыИСведения. Запрос будет выглядеть примерно так:

Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ РАЗЛИЧНЫЕ
		|	НоменклатураДополнительныеРеквизиты.Ссылка КАК НоменклатураСсылка
		|ИЗ
		|	Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
		|ГДЕ
		|	НоменклатураДополнительныеРеквизиты.Свойство = &Свойство
		|	И НоменклатураДополнительныеРеквизиты.Значение = &Значение";
	
	Запрос.УстановитьПараметр("Значение", ЗначениеГарантии);
	Запрос.УстановитьПараметр("Свойство", СсылкаНаПВХ_Гарантия);
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		// Вставить обработку выборки ВыборкаДетальныеЗаписи
	КонецЦикла;

как в запросе отбирать по значению доп реквизита?

Я
   ШурикОвёрт

27.12.21 — 15:16

Здравствуйте, подскажите пожалуйста запросом достаю данные по продажам и РН, у соглашений есть  доп реквизит тип соглашения,

и мне нужно найти все документы по значению доп реквизита

  

Партнерская программа EFSOL Oblako

   dubolom

1 — 27.12.21 — 15:18

Соединение по таблице ДополнительныеРеквизиты, а таблица соединяется с самим документом по полю Ссылка.

   ШурикОвёрт

2 — 27.12.21 — 15:23

(1)

ВЫБРАТЬ

    ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиОборот КАК СуммаВыручкиОборот

ИЗ

    РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(, , , Договор.Партнер.БизнесРегион = &БизнесРегион) КАК ВыручкаИСебестоимостьПродажОбороты

        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СоглашенияСКлиентами.ДополнительныеРеквизиты КАК СоглашенияСКлиентамиДополнительныеРеквизиты

        ПО (СоглашенияСКлиентамиДополнительныеРеквизиты.Ссылка = &Ссылка)

   ШурикОвёрт

3 — 27.12.21 — 15:25

(1) а что мне в ссылку передавать?  значение доп рекв?

   Ryzeman

4 — 27.12.21 — 15:26

Для начала было бы неплохо понимать с чем ты имеешь дело. Доп реквизиты — это табличная часть справочника СоглашенияСКлиентами.

Если у тебя задача как ты описал, то сперва будет правильным выбрать во временную таблицу все нужные соглашения, у которых есть этот доп реквизит, затем внутренним соединением привязать к твоему запросу к ВыручкаИСебестоимостьПродаж.

Если же ты хочешь в результат запроса выводить все типы соглашений, а уже параметрами или отборами в СКД выбирать нужные, то присоединяй левым соединением таблицу с доп реквизитами по условию Свойство = &ТвоёСвойство, которое и будет твоё ПВХ ТипСоглашения

Как работать с доп реквизитами и что такое ПланыВидовХарактеристик сам гугли)

   ШурикОвёрт

5 — 27.12.21 — 15:32

(4) нужно получиться суммувыручки по тем документам по которым тип соглашение «N», как я понял это первый вариант который вы описали да?

   Ryzeman

6 — 27.12.21 — 15:36

Да. Если тебе не скажут через час «а теперь дай нам такой же отчёт по всем соглашениям, и сгруппируй по типам соглашениям и по менеджерам».

   ШурикОвёрт

7 — 27.12.21 — 15:39

(6) спасибо буду разбираться

   Мультук

8 — 27.12.21 — 16:17

(2)

А где в запросе связь между таблицами ?

ВыручкаИСебестоимостьПродажОбороты

СоглашенияСКлиентамиДополнительныеРеквизиты

   ШурикОвёрт

9 — 27.12.21 — 16:20

(8) ВЫБРАТЬ

    ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиОборот КАК СуммаВыручкиОборот

ИЗ

    РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(

            &НачалоПериода,

            &КонецПериода,

            ,

            Договор.Партнер.БизнесРегион = &БизнесРегион

                И Соглашение.ДополнительныеРеквизиты.Значение = &Значение) КАК ВыручкаИСебестоимостьПродажОбороты

  

ШурикОвёрт

10 — 27.12.21 — 16:21

(8) сделал таким макаром вроде как выдаёт всё что нужно

TurboConf — расширение возможностей Конфигуратора 1С

Функция позволяет найти ссылку на объект любого типа в конфигурации ERP2.0 (либо любой другой построенной на БСП).
Поиск может выполняться по реквизитам основной таблицы, значениям дополнительных реквизитов по табличной части «Дополнительные реквизиты», значениям доп. сведений (регистр сведений «ДополнительныеСведения»).

Используется объектная модель работы с запросом (СхемаЗапроса). Поддерживается в версиях платформы: 8.3.5 и выше.
Параметры:

Имя параметра Тип Описание
ИмяТаблицы Строка Имя таблицы, по которой осуществляется поиск. Пример: «Справочник.Номенклатура»
СтруктураРеквизитов Структура В качестве ключа передается имя реквизита основной таблицы, в качестве значения — значение реквизита
СоответствиеДопРеквизитов Соответствие В качестве ключа передается ссылка на доп. реквизит — элемент плана вида характеристик «ДополнительныеРеквизитыИСведения», в качестве значения — значение реквизита
СоответствиеДопСведений Соответствие В качестве ключа передается ссылка на доп. сведение — элемент плана вида характеристик «ДополнительныеРеквизитыИСведения», в качестве значения — значение доп. сведения

Имя параметра Тип Описание
ИмяТаблицы Строка Имя таблицы, по которой осуществляется поиск. Пример: «Справочник.Номенклатура»
СтруктураРеквизитов Структура В качестве ключа передается имя реквизита основной таблицы, в качестве значения — значение реквизита
СоответствиеДопРеквизитов Соответствие В качестве ключа передается ссылка на доп. реквизит — элемент плана вида характеристик «ДополнительныеРеквизитыИСведения», в качестве значения — значение реквизита
СоответствиеДопСведений Соответствие В качестве ключа передается ссылка на доп. сведение — элемент плана вида характеристик «ДополнительныеРеквизитыИСведения», в качестве значения — значение доп. сведения
Функция СсылкаНаОбъектПоРеквизитам(ИмяТаблицы, СтруктураРеквизитов = Неопределено, СоответствиеДопРеквизитов = Неопределено, СоответствиеДопСведений = Неопределено)
 
    ИмяТаблицыВЗапросе = СтрЗаменить(ИмяТаблицы, ".", "");
 
    СхемаЗапроса = Новый СхемаЗапроса;
 
    ЗапросПакета    = СхемаЗапроса.ПакетЗапросов[0];
    ОператорВыбора    = ЗапросПакета.Операторы[0];
 
    Если СтруктураРеквизитов <> Неопределено Тогда
 
        ИсточникСправочник    = ОператорВыбора.Источники.Добавить(ИмяТаблицы, ИмяТаблицыВЗапросе);
 
        ОператорВыбора.ВыбираемыеПоля.Добавить(ИмяТаблицыВЗапросе + ".Ссылка");
 
        Для Каждого КлючИЗначение Из СтруктураРеквизитов Цикл
            ОператорВыбора.Отбор.Добавить(ИмяТаблицыВЗапросе + "." + КлючИЗначение.Ключ + " = &" + КлючИЗначение.Ключ);
        КонецЦикла;
 
        Если СоответствиеДопРеквизитов <> Неопределено
            ИЛИ СоответствиеДопСведений <> Неопределено Тогда
 
            ЗапросПакета.ТаблицаДляПомещения = "ОсновнаяТаблица";
 
            ЗапросПакета    = СхемаЗапроса.ПакетЗапросов.Добавить(Тип("ЗапросВыбораСхемыЗапроса"));
            ОператорВыбора    = ЗапросПакета.Операторы[0];
 
        КонецЕсли;
 
    КонецЕсли;
 
    Если СоответствиеДопРеквизитов <> Неопределено Тогда
 
        Для Сч = 0 По СоответствиеДопРеквизитов.Количество()-1 Цикл
 
            ИсточникСправочник    = ОператорВыбора.Источники.Добавить(ИмяТаблицы + ".ДополнительныеРеквизиты", ИмяТаблицыВЗапросе + "ДополнительныеРеквизиты");
 
            ОператорВыбора.ВыбираемыеПоля.Добавить(ИмяТаблицыВЗапросе + "ДополнительныеРеквизиты.Ссылка");
 
            ОператорВыбора.Отбор.Добавить(ИмяТаблицыВЗапросе + "ДополнительныеРеквизиты.Свойство = &Свойство" + Формат(Сч+1, "ЧГ=0"));
            ОператорВыбора.Отбор.Добавить(ИмяТаблицыВЗапросе + "ДополнительныеРеквизиты.Значение = &Значение" + Формат(Сч+1, "ЧГ=0"));
 
            Если СтруктураРеквизитов <> Неопределено Тогда
 
                ИсточникОсновнаяТаблица = ОператорВыбора.Источники.Добавить("ОсновнаяТаблица", "ОсновнаяТаблица");
 
                Соединение = ИсточникОсновнаяТаблица.Соединения.Добавить(ИсточникСправочник);
                ИсточникОсновнаяТаблица.Соединения[0].ТипСоединения = ТипСоединенияСхемыЗапроса.Внутреннее;
 
            КонецЕсли;
 
            Если СоответствиеДопРеквизитов.Количество()> 1
                ИЛИ СоответствиеДопСведений <> Неопределено Тогда
 
                ЗапросПакета.ТаблицаДляПомещения = "ДопРеквизит" + Формат(Сч+1, "ЧГ=0");
 
                ЗапросПакета    = СхемаЗапроса.ПакетЗапросов.Добавить(Тип("ЗапросВыбораСхемыЗапроса"));
                ОператорВыбора    = ЗапросПакета.Операторы[0];
 
            КонецЕсли;
 
        КонецЦикла;
 
    КонецЕсли;
 
    Если СоответствиеДопСведений <> Неопределено Тогда
 
        Для Сч = 0 По СоответствиеДопСведений.Количество()-1 Цикл
 
            ИсточникРегистр    = ОператорВыбора.Источники.Добавить("РегистрСведений.ДополнительныеСведения", "ДополнительныеСведения");
 
            ОператорВыбора.ВыбираемыеПоля.Добавить("ДополнительныеСведения.Объект");
            ЗапросПакета.Колонки[0].Псевдоним = "Ссылка";
 
            ОператорВыбора.Отбор.Добавить("ДополнительныеСведения.Свойство = &Сведение" + Формат(Сч+1, "ЧГ=0"));
            ОператорВыбора.Отбор.Добавить("ДополнительныеСведения.Значение = &ЗначениеСведения" + Формат(Сч+1, "ЧГ=0"));
 
            Если СтруктураРеквизитов <> Неопределено Тогда
 
                ИсточникОсновнаяТаблица = ОператорВыбора.Источники.Добавить("ОсновнаяТаблица", "ОсновнаяТаблица");
 
                Соединение = ИсточникОсновнаяТаблица.Соединения.Добавить(ИсточникРегистр, "ОсновнаяТаблица.Ссылка = ДополнительныеСведения.Объект");
                ИсточникОсновнаяТаблица.Соединения[0].ТипСоединения = ТипСоединенияСхемыЗапроса.Внутреннее;
 
            КонецЕсли;
 
            Если СоответствиеДопСведений.Количество()> 1
                ИЛИ СоответствиеДопРеквизитов <> Неопределено Тогда
 
                ЗапросПакета.ТаблицаДляПомещения = "ДопСведение" + Формат(Сч+1, "ЧГ=0");
 
                ЗапросПакета    = СхемаЗапроса.ПакетЗапросов.Добавить(Тип("ЗапросВыбораСхемыЗапроса"));
                ОператорВыбора    = ЗапросПакета.Операторы[0];
 
            КонецЕсли;
 
        КонецЦикла;
 
    КонецЕсли;
 
    Если СоответствиеДопРеквизитов <> Неопределено
        И (СоответствиеДопРеквизитов.Количество() <> 1 ИЛИ СоответствиеДопСведений <> Неопределено) Тогда
 
        ИсточникВТ1 = ОператорВыбора.Источники.Добавить("ДопРеквизит1", "ДопРеквизит1");
 
        ОператорВыбора.ВыбираемыеПоля.Добавить("ДопРеквизит1.Ссылка");
 
        Для Сч = 1 По СоответствиеДопРеквизитов.Количество()-1 Цикл
 
            СчСтрока = Формат(Сч+1, "ЧГ=0");
 
            ИсточникВТ = ОператорВыбора.Источники.Добавить("ДопРеквизит" + СчСтрока, "ДопРеквизит" + СчСтрока);
            Соединение = ИсточникВТ1.Соединения.Добавить(ИсточникВТ, "ДопРеквизит1.Ссылка = ДопРеквизит" + СчСтрока + ".Ссылка");
            ИсточникВТ1.Соединения[ИсточникВТ1.Соединения.Количество()-1].ТипСоединения = ТипСоединенияСхемыЗапроса.Внутреннее;
 
        КонецЦикла;
 
    КонецЕсли;
 
    Если СоответствиеДопСведений <> Неопределено
        И (СоответствиеДопСведений.Количество()> 1 ИЛИ СоответствиеДопРеквизитов <> Неопределено) Тогда
 
        Если СоответствиеДопРеквизитов = Неопределено Тогда
 
            ИсточникВТ1 = ОператорВыбора.Источники.Добавить("ДопСведение1", "ДопСведение1");
 
            ОператорВыбора.ВыбираемыеПоля.Добавить("ДопСведение1.Ссылка");
 
            СтартовыйИндекс        = 1;
            ИмяПервойТаблицы    = "ДопСведение1";
 
        Иначе
 
            СтартовыйИндекс        = 0;
            ИмяПервойТаблицы    = "ДопРеквизит1";
 
        КонецЕсли;
 
        Для Сч = СтартовыйИндекс По СоответствиеДопСведений.Количество()-1 Цикл
 
            СчСтрока = Формат(Сч+1, "ЧГ=0");
 
            ИсточникВТ = ОператорВыбора.Источники.Добавить("ДопСведение" + СчСтрока, "ДопСведение" + СчСтрока);
            Соединение = ИсточникВТ1.Соединения.Добавить(ИсточникВТ, ИмяПервойТаблицы + ".Ссылка = ДопСведение" + СчСтрока + ".Ссылка");
            ИсточникВТ1.Соединения[ИсточникВТ1.Соединения.Количество()-1].ТипСоединения = ТипСоединенияСхемыЗапроса.Внутреннее;
 
        КонецЦикла;
 
    КонецЕсли;
 
    Запрос = Новый Запрос;
 
    Запрос.Текст = СхемаЗапроса.ПолучитьТекстЗапроса();
 
    Если СтруктураРеквизитов <> Неопределено Тогда
 
        Для Каждого КлючИЗначение Из СтруктураРеквизитов Цикл
            Запрос.УстановитьПараметр(КлючИЗначение.Ключ, КлючИЗначение.Значение);
        КонецЦикла;
 
    КонецЕсли;
 
    Если СоответствиеДопРеквизитов <> Неопределено Тогда
 
        Сч = 1;
 
        Для Каждого КлючИЗначение Из СоответствиеДопРеквизитов Цикл
 
            СчСтрока = Формат(Сч, "ЧГ=0");
 
            Запрос.УстановитьПараметр("Свойство" + СчСтрока, КлючИЗначение.Ключ);
            Запрос.УстановитьПараметр("Значение" + СчСтрока, КлючИЗначение.Значение);
 
            Сч = Сч + 1;
 
        КонецЦикла;
 
    КонецЕсли;
 
    Если СоответствиеДопСведений <> Неопределено Тогда
 
        Сч = 1;
 
        Для Каждого КлючИЗначение Из СоответствиеДопСведений Цикл
 
            СчСтрока = Формат(Сч, "ЧГ=0");
 
            Запрос.УстановитьПараметр("Сведение" + СчСтрока, КлючИЗначение.Ключ);
            Запрос.УстановитьПараметр("ЗначениеСведения" + СчСтрока, КлючИЗначение.Значение);
 
            Сч = Сч + 1;
 
        КонецЦикла;
 
    КонецЕсли;
 
    РезультатЗапроса = Запрос.Выполнить();
 
    Если РезультатЗапроса.Пустой() Тогда
        Возврат Неопределено;
    КонецЕсли;
 
    Выборка = РезультатЗапроса.Выбрать(); Выборка.Следующий();
 
    Возврат Выборка.Ссылка;
 
КонецФункции

Конвертация данных: Поиск при загрузке по дополнительному реквизиту

13.12.2017

Конвертация данных 2.1. Поиск при загрузке справочника по дополнительному реквизиту.

В качестве примера буду использовать конфигурации:

  • Конфигурация — источник «1С: Управление торговлей ред. 10.3» (далее УТ10.3)
  • Конфигурация — приемник «1С: Бухгалтерия предприятия (базовая) ред. 3.0» (далее БП3.0)

Задача:

Необходимо выгрузить из УТ10.3 справочник «Склады» и загрузить его в БП3.0. Поиск должен осуществляться по дополнительному реквизиту в БП3.0 «Идентификатор склада», который равен реквизиту «Код» справочника «Склады» в УТ10.3. Таким образом мы будем искать соответствия по коду, только в БП3.0, данный код будет сохранен в Дополнительном реквизите «Идентификатор склада»

  • Создадим в УТ10.3 новый элемент справочника «Склады

  • В БП3.0 создадим доп. реквизит справочника «Склады» 

Тип «Строка», Длина 9.

  • В «Конвертации данных» создадим новое «ПКО» «Склады»

  • Добавим два ПКС:

  • При загрузке будем искать объект по дополнительному реквизиту.

  • При загрузке найдем доп. реквизит «Идентификатор склада» в табличной части «Дополнительные реквизиты», если нашли, то перезаполним, если нет, то добавим.

  • С помощью универсальной обработки выгрузим/загрузим данные, в результате в БП3.0 будет загружен новый элемент справочника «Склады», и доп. реквизитом, который равен коду этого элемента в УТ10.3

  • Для проверки переименуем склад

  • Выгрузим/загрузим

Помогите составить запрос по договорам с доп.реквизитом

Автор Alex Varavva, 19 июл 2018, 17:21

0 Пользователей и 1 гость просматривают эту тему.

Здравствуйте!

Прошу помощи с составлением запроса в конфигурации БП 3.0 (1с 8.3)

В Договорах введен доп.реквизит «Выгружать документы по договору» тип значения Булево

Необходимо найти все договоры у которых наименование содержит определенную строку и при этом доп.реквизит «Выгружать документы по договору» = ЛОЖЬ

В SQL как-то так

select * from contracts a
left join extra_fields_values b on b.contact_id=a.id
left join extra_fields c on c.id=b.field_id and c.field_name=»Выгружать документы по договору»
where a.contract_name=»Договор поставки» and b.value=»ЛОЖЬ»


в принципе в 1С тоже самое, те-же левые соединения

только учтите отсутствие доп. реквизит  «Выгружать документы по договору» надо расчитывать как = Ложь
в условии запроса используйте такую конструкцию, пример

и ЕстьNull(Рег.ДопЗначение, Ложь) = Ложь

если помогло нажмите: Спасибо!


ВЫБРАТЬ
ДополнительныеРеквизитыИСведения.Ссылка,
ДополнительныеРеквизитыИСведения.Наименование
ИЗ
ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения
ГДЕ
ДополнительныеРеквизитыИСведения.Наименование = "Выгружать документы по договору"

работает. выдает реквизит

ВЫБРАТЬ
ДоговорыКонтрагентов.Наименование,
ДоговорыКонтрагентов.Владелец.Наименование
ИЗ
Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
ГДЕ
ДоговорыКонтрагентов.Наименование ПОДОБНО "%Лицензионный%"

работает — выдает договоры с нужным наименованием


ВЫБРАТЬ
ДоговорыКонтрагентов.Наименование,
ДоговорыКонтрагентов.Владелец.Наименование
ИЗ
Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов

ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения
ПО ДоговорыКонтрагентов.ДополнительныеРеквизиты.Ссылка = ДополнительныеРеквизитыИСведения.Ссылка И
   ДополнительныеРеквизитыИСведения.Наименование = "Выгружать документы по договору"

ГДЕ
ДоговорыКонтрагентов.Наименование ПОДОБНО "%Лицензионный%"


Не работает. Выдает ошибку

Запрос невозможно исполнить
В условиях соединения запроса не допускается обращение к табличным частям. (4)


Пример, как выбрать там где реквизит ИСТИНА, если ЛОЖЬ как-то не соображу сразу

ВЫБРАТЬ
ДополнительныеРеквизитыИСведения.Ссылка КАК Свойство
ПОМЕСТИТЬ ВТ_Свойство
ИЗ
ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения
ГДЕ
ДополнительныеРеквизитыИСведения.Наименование = "Выгружать документы по договору"
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ДоговорыКонтрагентовДополнительныеРеквизиты.Ссылка.Наименование КАК Наименование,
ДоговорыКонтрагентовДополнительныеРеквизиты.Ссылка.Владелец.Наименование КАК ВладелецНаименование
ИЗ
Справочник.ДоговорыКонтрагентов.ДополнительныеРеквизиты КАК ДоговорыКонтрагентовДополнительныеРеквизиты
ГДЕ
ДоговорыКонтрагентовДополнительныеРеквизиты.Свойство В
(ВЫБРАТЬ
ВТ_Свойство.Свойство КАК Свойство
ИЗ
ВТ_Свойство КАК ВТ_Свойство)
И ДоговорыКонтрагентовДополнительныеРеквизиты.Ссылка.Наименование ПОДОБНО "%Лицензионный%"


Цитата: Alex Varavva от 20 июл 2018, 08:57ВЫБРАТЬ
    ДоговорыКонтрагентов.Наименование,
    ДоговорыКонтрагентов.Владелец.Наименование
ИЗ
    Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов

ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения
    ПО ДоговорыКонтрагентов.ДополнительныеРеквизиты.Ссылка = ДополнительныеРеквизитыИСведения.Ссылка И
       ДополнительныеРеквизитыИСведения.Наименование = «Выгружать документы по договору»

                ГДЕ
    ДоговорыКонтрагентов.Наименование ПОДОБНО «%Лицензионный%»

можно так:

ВЫБРАТЬ
    ДоговорыКонтрагентов.Ссылка.Наименование,
    ДоговорыКонтрагентов.Ссылка.Владелец.Наименование
ИЗ
    Справочник.ДоговорыКонтрагентов.ДополнительныеРеквизиты КАК ДоговорыКонтрагентов

ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения
    ПО ДоговорыКонтрагентов.Ссылка = ДополнительныеРеквизитыИСведения.Ссылка И
       ДополнительныеРеквизитыИСведения.Наименование = "Выгружать документы по договору"

Спасибо за Сказать спасибо


вы же пишите что хорошо разбираетесь в СКЛ запросах, в вашем первом примере 2 левых джоита,
вам написали что тоже самое (примерно) и в запросе 1С надо написать.

в последнем выложенном вами запросе вообще нет ни одного левого соединения! что вы вообще с таким подходом хотите найти/решить?

Добавлено: 20 июл 2018, 11:19


попробуйте такой вариант запроса


ВЫБРАТЬ
    Спр.Ссылка,
    Спр.Владелец
ИЗ
Справочник.ДоговорыКонтрагентов Спр

левое соединение
    Справочник.ДоговорыКонтрагентов.ДополнительныеРеквизиты Доп

    левое соединение
    ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения Рег
по Доп.Свойство = Рег.Ссылка
и Рег.Наименование подобно "Выгружать документы по договору"

по Спр.Ссылка = Доп.Ссылка
и Рег.Ссылка есть Не Null

ГДЕ
    Спр.Наименование ПОДОБНО "%Лицензионный%"
и ЕстьNull(Доп.Значение, Ложь) = Ложь

если помогло нажмите: Спасибо!


Спасибо, все получилось

Когда не знаешь что джойнить, то и запросы не получаются.

Цитата: LexaK от 20 июл 2018, 10:48
вы же пишите что хорошо разбираетесь в СКЛ запросах, в вашем первом примере 2 левых джоита,
вам написали что тоже самое (примерно) и в запросе 1С надо написать.

в последнем выложенном вами запросе вообще нет ни одного левого соединения! что вы вообще с таким подходом хотите найти/решить?

Добавлено: 20 июл 2018, 11:19


попробуйте такой вариант запроса

ВЫБРАТЬ
    Спр.Ссылка,
    Спр.Владелец
ИЗ
Справочник.ДоговорыКонтрагентов Спр

левое соединение
    Справочник.ДоговорыКонтрагентов.ДополнительныеРеквизиты Доп

    левое соединение
    ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения Рег
по Доп.Свойство = Рег.Ссылка
и Рег.Наименование подобно "Выгружать документы по договору"

по Спр.Ссылка = Доп.Ссылка
и Рег.Ссылка есть Не Null

ГДЕ
    Спр.Наименование ПОДОБНО "%Лицензионный%"
и ЕстьNull(Доп.Значение, Ложь) = Ложь

Цитата: LexaK от 20 июл 2018, 10:48
вы же пишите что хорошо разбираетесь в СКЛ запросах, в вашем первом примере 2 левых джоита,
вам написали что тоже самое (примерно) и в запросе 1С надо написать.

в последнем выложенном вами запросе вообще нет ни одного левого соединения! что вы вообще с таким подходом хотите найти/решить?

Добавлено: 20 июл 2018, 11:19


попробуйте такой вариант запроса

ВЫБРАТЬ
    Спр.Ссылка,
    Спр.Владелец
ИЗ
Справочник.ДоговорыКонтрагентов Спр

левое соединение
    Справочник.ДоговорыКонтрагентов.ДополнительныеРеквизиты Доп

    левое соединение
    ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения Рег
по Доп.Свойство = Рег.Ссылка
и Рег.Наименование подобно "Выгружать документы по договору"

по Спр.Ссылка = Доп.Ссылка
и Рег.Ссылка есть Не Null

ГДЕ
    Спр.Наименование ПОДОБНО "%Лицензионный%"
и ЕстьNull(Доп.Значение, Ложь) = Ложь


Понравилась статья? Поделить с друзьями:
  • 1с найти по реквизиту уникальный идентификатор
  • 1с найти строки в табличной части по реквизиту
  • 1с обратиться к реквизиту справочника по имени
  • 1с обращение к реквизиту справочника в запросе
  • 1с общие реквизиты использование автоматически