Имя: Пароль:
1C
 
Отбор документов, у которого нет связанных
,
0 NIGHTHUNTER
 
12.07.22
15:59
Занялся разработкой отчета. Там разные условия. Одни из которых, отбор документов, к еоторых нет связанных документов.
такихто видов, или есть связанные документы, но у одного из них не стоит галка определенная. Или же,
один вид документа есть в связи с отбираемым, а другого нет.

Подскажите пожалуйста как такие приемы выполнять в запросе? Связь наверное устанавливается по какому то полю, в документе. реквизиту.
Где, тип документ ссылка этого связываемого документа.
1 NIGHTHUNTER
 
13.07.22
04:38
Мне необходимо, отбирать документы Авансовый отчет, где либо есть связанные документы
Заявка на расходование денежных средств
и
Списание безналичных денежных средств
или нет.

Как этим я могу оперировать? Выяснил что документы эти создаются на основании документа авансовый отчет.
И у него самого, на них нет никаких ссылок.

Как тут производить выборку?

http://joxi.ru/a2Xj7eECQkRZ3r
2 NIGHTHUNTER
 
13.07.22
04:55
Пытаюсь понять как мне делать выборку вообще.

Выборка документов авансовый отчет, где. -

1). Нет связанных документов Заявка на расходование денежных средств и списание безналичных денежных средств.

2). Есть связанный документ заявка на расходование денежных средств.
    Нет связанного документа списание безналичных денежных средств.

3). Есть связанный документ заявка на расходование денежных средств.
    Есть связанный документ списание безналичных денежных средств  (нет отметки проведено банком).

Как делать такую выборку, подскажите пожалуйста.
3 2S
 
13.07.22
05:21
Выпей кофе, выдохни и накидай свой запрос. А потом спрашивай.
4 NIGHTHUNTER
 
13.07.22
05:36
(3) Так, тут не известно как делать. Есть Таблица = ПолныеПрава.ПолучитьВыборкуПоКритериюОтбора("СвязанныеДокументы", ТекущийДокумент);
это делать можно не на СКД уже.

А в СКД как? Делать выборки по документам Заявка на расходование денежных средств и Списание безналичных денежных средств,
а потом как то соединяться с авансовым отчетом? пока что не представляю как (.
5 NIGHTHUNTER
 
13.07.22
05:43
(3) Пока у меня такой запрос, -

ВЫБРАТЬ
    АвансовыйОтчет.ПодотчетноеЛицо КАК ПодотчетноеЛицо,
    АвансовыйОтчет.Номер КАК Номер,
    АвансовыйОтчет.Дата КАК Дата,    
    АвансовыйОтчет.Ссылка КАК Ссылка
ИЗ
    Документ.АвансовыйОтчет КАК АвансовыйОтчет
ГДЕ
    АвансовыйОтчет.Дата МЕЖДУ &НачДата И &КонДата

СГРУППИРОВАТЬ ПО
    АвансовыйОтчет.ПодотчетноеЛицо,
    АвансовыйОтчет.Ссылка

УПОРЯДОЧИТЬ ПО
    АвансовыйОтчет.ПодотчетноеЛицо.Наименование
6 2S
 
13.07.22
06:40
Документы в ВТ, потом соединяй по условию
7 NIGHTHUNTER
 
13.07.22
06:50
(6) Как резервный вариант, делаю заготовку вывод секциями. что бы использовать там в коде функции по связанным документам. И вручную все выводить.
8 ИУБиПовиц
 
13.07.22
08:28
Ну гляньте в критерий по этим документам, какие реквизиты участвуют. В них и будет ссылка на авансовый.
9 NIGHTHUNTER
 
13.07.22
09:01
(8) Наверное я не очень имею представление об этом пока. Вот нужно разбираться.
Как с этим работать то?
Есть КритерийОтбора СвязанныеДокументы http://joxi.ru/a2Xj7eECQkRjnr . Что с этим делать пока не понятно.
10 NIGHTHUNTER
 
13.07.22
09:08
Сейчас вопрос, имея документ авансовый отчет, ссылку на него, как мне определить (2) ?
11 NIGHTHUNTER
 
13.07.22
09:11
Открыл документ Заявка на расходование денежных средств.
И тоже у него не увидел никаких ссылок на документ авансовый отчет.
Смотрел редактором реквизитов, как определить что они связаны?
12 NIGHTHUNTER
 
13.07.22
09:25
У документа заявка на расходование денежных средств. есть реквизит документ основание. Но там пусто везде, как что отбирать то по связанным документам?
13 Мультук
 
гуру
13.07.22
09:30
(12)

Т.е. ты открыл именно эту заявку -- из скриншота (там где авансовый) и там в поле "ДокументОснование" -- пусто ?
Но в связанных она каким-то чудом есть ?


P.S.

Мне лень лезть в ЕРП, но в УТ реквизит "ДокументОснование" документа "ЗаявкаНаРасходованиеДС" -- конечно же заполнен
14 NIGHTHUNTER
 
13.07.22
09:37
(13) Да этот реквизит есть, и я сделал выборку за 2022 год документов заявка на расходование ДС, и везде пусто.

Я могу это увидеть в авансовом отчете только Отчеты -> Связанные документы.

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

Как я понимаю, списание безналичных дс. не может быть привязано к авансовому отчету?

Только к заявке на расходование денежных средств, которая в свою очередь, привязана к авансовому отчету.

Как же тогда выполнять условия (2) ?

Или как определять, каким образом заявка на расходование денежных средств, есть или нет у авансового отчета?
15 NIGHTHUNTER
 
13.07.22
09:55
(6) Какие документы то во временную таблицу? Что с чем соединять то?

Я сейчас смотрю общую форму связанные документы. Почему то точка останова не остановилась на ее вызове, а только при создании ее на сервере.

Пытаюсь понять что она выводит.
16 NIGHTHUNTER
 
13.07.22
09:57
Для Каждого Реквизит Из МетаданныеОбъекта.Реквизиты Цикл
        
        Если Не Метаданные.КритерииОтбора.СвязанныеДокументы.Состав.Содержит(Реквизит) Тогда
            Продолжить;
        КонецЕсли;
        
        Для Каждого ТекущийТип Из Реквизит.Тип.Типы() Цикл


МетаданныеОбъекта.Реквизиты - АвансовыйОтчет
Реквизит                    - ДокументОснование

только на нем прошло продолжить, на документе основании
17 NIGHTHUNTER
 
13.07.22
10:18
там я запустался совсем, и не понимаю, сейчас как мне решать (2)
18 youalex
 
13.07.22
11:29
Собери динамический запрос из Метаданных критерия отбора (если нет библиотечной функции)
19 NIGHTHUNTER
 
13.07.22
11:50
(18) Конфигурация ERP все должно быть.
Я разбираюсь и пытаюсь понять как и что делать.
20 NIGHTHUNTER
 
13.07.22
13:16
Выявил я, что вот этот запрос все делает.
Им можно проверить на связь документа авансовый отчет, с документом заявка на расходование денежных средств.
И далее связь этого документа, заявка на расходование денежных средств, с документом списание безналичных денежных средств.

ВЫБРАТЬ
    СвязанныеДокументы.Ссылка КАК Ссылка
ИЗ
    КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СвязанныеДокументы


Думаю сейчас , как правильно сделать (2).
21 NIGHTHUNTER
 
13.07.22
13:20
Как мне связывать вот этот запрос, с (20) ? Подскажите пожалуйста?

    Запрос.Текст = "
        |ВЫБРАТЬ
        |    АвансовыйОтчет.ПодотчетноеЛицо КАК ПодотчетноеЛицо,
        |    АвансовыйОтчет.Номер КАК Номер,
        |    АвансовыйОтчет.Дата КАК Дата,
        |    АвансовыйОтчет.Ссылка КАК Ссылка
        |ИЗ
        |    Документ.АвансовыйОтчет КАК АвансовыйОтчет
        |ГДЕ
        |    АвансовыйОтчет.Дата МЕЖДУ &НачДата И &КонДата
        |
        |СГРУППИРОВАТЬ ПО
        |    АвансовыйОтчет.ПодотчетноеЛицо,
        |    АвансовыйОтчет.Ссылка,
        |    АвансовыйОтчет.Номер,
        |    АвансовыйОтчет.Дата
        |
        |УПОРЯДОЧИТЬ ПО
        |    АвансовыйОтчет.ПодотчетноеЛицо.Наименование
        |ИТОГИ ПО
        |    ПодотчетноеЛицо,
        |    Ссылка";
22 NIGHTHUNTER
 
13.07.22
13:25
(3) Я накидал, как дальше? Подскажите пожалуйста. по условиям (2) ?
23 NIGHTHUNTER
 
13.07.22
14:12
Никто не захотел подсказать (
24 ИУБиПовиц
 
13.07.22
14:21
(9) Откройте состав критериев. И гляньте какие реквизиты.:)
25 NIGHTHUNTER
 
13.07.22
14:21
(21)  Есть выборка авансовых отчетов, подскажите как мне ее передать в запрос (20).
Что бы узнать по каким из них есть связанные документы заявка на расходование денежных средств?

Как это можно сделать запросом???? Какая технология?
26 NIGHTHUNTER
 
13.07.22
14:22
(24) Я пишу про выборку, как правильно ее сделать, что бы решить вопросы (2), вы е чем?
27 Eiffil123
 
13.07.22
14:23
в запросе есть объект, называется "критерий отбора". может он поможет решить твою задачу
28 NIGHTHUNTER
 
13.07.22
14:27
(27) Я же объяснил уже. что это я уяснил.
Сейчас вопрос как мне увязать запросы (21) и (20) ?

В запросе (21), документы, авансовый отчет за период.

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

Какой будет правильный для этого запрос7 Используя (20) и (21) ?
29 Eiffil123
 
13.07.22
14:35
(28) одним запросом с использованием критерия отбора не получится. Обходи запрос из (21), в цикле выполняй запрос к связанным документам. Если он пустой, то документ тебе подходит. Если в нем есть какой-то результат, то документ из выборки запроса (21) не подходит
30 NIGHTHUNTER
 
13.07.22
14:53
(29) Не получится одним?
В цикле же не правильно?
Хотя, да, я сделал заготовку под вывод секциями и могу там обходить в цикле, но это же не правильно будет?

Всего нужно решать 3 условия из (2) .
31 ИУБиПовиц
 
13.07.22
15:01
(30) Что Вы прицепились к этому критерию. Связывайте сами документы. Найдите реквизит который участвует в связи и по нему связывайте
Запрос в цикле будет долго отрабатывать:)
32 nodrama
 
13.07.22
15:07
(31) Смотря сколько записей... когда человек не умеет по другому и цена вопроса.. пару тройку десяток строк... то можно как угодно накидать, бухгалтера все равно не поймут.. 5 секунд.. 10 секунд лишь бы работало
33 unbred
 
13.07.22
15:09
останови уже свой поток сознания. задай сначала вопрос себе, подумай, попробуй на него ответить. если ответа нет- спроси у постановщика задачи, по каким критериям нужно связывать таблицы. 90% твоих вопросов отпадут на этом этапе.
остальные 10% погугли.
оставшиеся 2% напиши тут.

ты сделай сначала, чтоб работало, а оптимизацию оставь на последний этап. там уже сам поймёшь, почему медленно работает.
34 Мимохожий Однако
 
13.07.22
15:33
ОФФ: Пришло завести ник Аквариумная рыбка. И составить конкуренцию ТС. Боюсь не потяну.
35 NIGHTHUNTER
 
14.07.22
02:48
(33) Врят ли, кто то из постановщиков может отвечать на подобные вопросы.
Они поставили, задачу в (2).
Это все что они могут, не более.
Остальное все решать должен разработчик.
36 NIGHTHUNTER
 
14.07.22
03:29
1). Нет связанных документов Заявка на расходование денежных средств и списание безналичных денежных средств.

2). Есть связанный документ заявка на расходование денежных средств.
    Нет связанного документа списание безналичных денежных средств.

3). Есть связанный документ заявка на расходование денежных средств.
    Есть связанный документ списание безналичных денежных средств  (нет отметки проведено банком).


Документ АвансовыйОтчет не знаю по какому полю связан с документом ЗаявканаРасходованиеДС, этого типа нет в реквизите ДокументОснование. Но почему то есть тип СписаниеБезналичныхДС.
Этот де жокумент, СписаниеБезналичныхДС может быть связан с авансовымОтчетом, только через документ ЗаявкаНаРасходованиеДС ?

Документ ЗаявкаНаРасходованиеДС связан с документом АвансовыйОтчет по реквизиту ДокументОснование, там есть тип Авансовый отчет, у документа ЗаявкаНарасходованиеДС.

Документ СписаниеБезналичныхДС в реквизите ДокументОснование имеет тип и АвансовыйОтчет и ЗаявкаНаРасходованиеДС .

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Документ.АвансовыйОтчет.Документоснование - Тип - Документ.СписаниеБезналичныхДС .

Документ.ЗаявканаРасходованиеДС.Документоснование - Тип - Документ.АвансовыйОтчет .

Документ.СписаниеБезналичныхДС.Документоснование - Тип - Документ.АвансовыйОтчет, Документ.ЗаявкаНарасходованиеДС .

Как имея такие типы у документов в реквизите ДокументОснование, правильно увязать их в выборке запросом?
37 NIGHTHUNTER
 
14.07.22
03:43
Если делать как в (29) То нужно этим запросом и запросом в цикле, создавать сначала таблицу значений.
А потом уже ее перебирать. Затратно получается.

Хотелось бы, владея информацией из (36), понять, можно ли это сделать одним запросом?
38 Мультук
 
гуру
14.07.22
08:26
(37)

обладая информацией (36)

Напиши запросы:

1) Запрос, который будет выбирать заявки у которых есть СписаниеБезналичныхДС
Подсказка
ВНУТРЕННЕЕ СОЕДИНЕНИЕ

Возможно нужно будет подумать о том, что списаний может быть несколько (убрать дублирование)

2) Запрос, который будет выбирать заявки у которых нет СписаниеБезналичныхДС

Подсказка
ЛЕВОЕ СОЕДИНЕНИЕ


Если ты не можешь написать такие запросы, то ищи книгу "Введение в sql Мартин Грабер" и изучай, что такое SQL
39 NIGHTHUNTER
 
14.07.22
10:57
Я так пока сделал


//
&НаКлиенте
Процедура ПриОткрытии(Отказ)
    ЭтаФорма.НачДата = '20220101';
    ЭтаФорма.КонДата = ТекущаяДата();    
КонецПроцедуры
//
&НаКлиенте
Процедура Сформировать(Команда)
    СформироватьНаСервере();
КонецПроцедуры
//
&НаСервере
Процедура СформироватьНаСервере()
    ПолучаемыйОбъект = РеквизитФормыВЗначение("Отчет");
    Макет            = ПолучаемыйОбъект.ПолучитьМакет("Макет_4");
    //
    РезультатОтчета.Очистить();
    РезультатОтчета.ИмяПараметровПечати     = "ПАРАМЕТРЫ_ПЕЧАТИ_ПросроченныеАвансовыеОтчеты";
    РезультатОтчета.ОриентацияСтраницы      = ОриентацияСтраницы.Портрет;
    РезультатОтчета.АвтоМасштаб             = Истина;
    РезультатОтчета.ПолеСверху              = 0;
    РезультатОтчета.ПолеСлева               = 0;
    РезультатОтчета.ПолеСнизу                = 0;
    РезультатОтчета.ПолеСправа              = 0;
    РезультатОтчета.РазмерКолонтитулаСверху = 0;
    РезультатОтчета.РазмерКолонтитулаСнизу  = 0;
    //
    ОбластьШапка  = Макет.ПолучитьОбласть("Шапка");
    ОбластьСтроки = Макет.ПолучитьОбласть("Строки");
    ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
    //
    ОбластьШапка.Параметры.НачДата = ФОРМАТ(ЭтаФорма.НачДата, "ДЛФ=DD");    
    ОбластьШапка.Параметры.КонДата = ФОРМАТ(ЭтаФорма.КонДата, "ДЛФ=DD");    
    РезультатОтчета.Вывести(ОбластьШапка);
    //
    Запрос       = Новый Запрос;
    Запрос.Текст = "
        |ВЫБРАТЬ
        |    АвансовыйОтчет.ПодотчетноеЛицо КАК ПодотчетноеЛицо,
        |    АвансовыйОтчет.Ссылка КАК Ссылка,
        |    АвансовыйОтчет.Номер КАК Номер,
        |    АвансовыйОтчет.Дата КАК Дата,
        |    АвансовыйОтчет.СуммаИзрасходовано КАК СуммаИзрасходовано
        |ИЗ
        |    Документ.АвансовыйОтчет КАК АвансовыйОтчет
        |ГДЕ
        |    АвансовыйОтчет.Дата МЕЖДУ &НачДата И &КонДата
        |
        |СГРУППИРОВАТЬ ПО
        |    АвансовыйОтчет.ПодотчетноеЛицо,
        |    АвансовыйОтчет.Ссылка,
        |    АвансовыйОтчет.Номер,
        |    АвансовыйОтчет.Дата,
        |   АвансовыйОтчет.СуммаИзрасходовано        
        |
        |УПОРЯДОЧИТЬ ПО
        |    АвансовыйОтчет.ПодотчетноеЛицо.Наименование
        |ИТОГИ ПО
        |    ПодотчетноеЛицо,
        |    Ссылка";
    Запрос.УстановитьПараметр("НачДата", ЭтаФорма.НачДата);
    Запрос.УстановитьПараметр("КонДата", ЭтаФорма.КонДата);
    Рез = Запрос.Выполнить();
    Ном = 1;
    РезультатОтчета.НачатьАвтогруппировкуСтрок();
    Если Не Рез.Пустой() Тогда
        ВыборкаПоПодотчетномуЛицу = Рез.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "ПодотчетноеЛицо");
        Пока ВыборкаПоПодотчетномуЛицу.Следующий() Цикл
            ОбластьСтроки.Параметры.НомерПП         = Ном;
            ОбластьСтроки.Параметры.ПодотчетноеЛицо = ВыборкаПоПодотчетномуЛицу.ПодотчетноеЛицо;
            //
            ОбластьСтроки.Параметры.РасшифровкаПодотчетноелицо = ВыборкаПоПодотчетномуЛицу.ПодотчетноеЛицо;            
            //
            РезультатОтчета.Вывести(ОбластьСтроки, 1, "ПодотчетноеЛицо");
            ВыборкаПоАвансовымОтчетам = ВыборкаПоПодотчетномуЛицу.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Ссылка");
            НомГр                       = 1;
            РезВыявления               = Неопределено;
            Пока ВыборкаПоАвансовымОтчетам.Следующий() Цикл
                // КритерийОтбора СвязанныеДокументы
                РезВыявления = ВыявитьСвязиСДокументами(ВыборкаПоАвансовымОтчетам.Ссылка);
                //Сообщить(СТРОКА(РезВыявления) + " " + СТРОКА(ВыборкаПоАвансовымОтчетам.ПодотчетноеЛицо));
                //
                ОбластьСтроки.Параметры.НомерПП                    = НомГр;
                //
                ОбластьСтроки.Параметры.РасшифровкаАвансовыйОтчет  = ВыборкаПоАвансовымОтчетам.Ссылка;                
                //
                ОбластьСтроки.Параметры.ПодотчетноеЛицо            = "";
                //
                ОбластьСтроки.Параметры.РасшифровкаПодотчетноелицо = "";
                //
                //ОбластьСтроки.Параметры.Дата                       = ВыборкаПоАвансовымОтчетам.Дата;
                //ОбластьСтроки.Параметры.Номер                      = ВыборкаПоАвансовымОтчетам.Номер;
                ОбластьСтроки.Параметры.Ссылка                     = ВыборкаПоАвансовымОтчетам.Ссылка;
                ОбластьСтроки.Параметры.СуммаИзрасходовано         = ФОРМАТ(ВыборкаПоАвансовымОтчетам.СуммаИзрасходовано, "ЧЦ=15; ЧДЦ=2");
                Если РезВыявления = 0 Тогда
                    ОбластьСтроки.Параметры.НетСвязанныхДокументов = "***";
                КонецЕсли;
                Если РезВыявления = 1 Тогда
                    ОбластьСтроки.Параметры.ТолькоЗаявкаНарасхДС = "***";                    
                КонецЕсли;
                Если РезВыявления = 2 Тогда
                    ОбластьСтроки.Параметры.ЗаявкаИСписание =  "***";                    
                КонецЕсли;
                //
                РезультатОтчета.Вывести(ОбластьСтроки, 2, "АвансовыйОтчет", Ложь);
                НомГр                                          = НомГр + 1;
                РезВыявления                                   = Неопределено;
                ОбластьСтроки.Параметры.НетСвязанныхДокументов = "";
                ОбластьСтроки.Параметры.ТолькоЗаявкаНарасхДС   = "";                    
                ОбластьСтроки.Параметры.ЗаявкаИСписание        = "";                    
            КонецЦикла;
            Ном                                               = Ном + 1;
            //
            ОбластьСтроки.Параметры.НомерПП                   = "";
            //
            ОбластьСтроки.Параметры.РасшифровкаАвансовыйОтчет = "";                
            //
            //ОбластьСтроки.Параметры.ПодотчетноеЛицо = "";            
            //ОбластьСтроки.Параметры.Дата                      = "";
            //ОбластьСтроки.Параметры.Номер                     = "";
            ОбластьСтроки.Параметры.Ссылка                    = "";
            ОбластьСтроки.Параметры.СуммаИзрасходовано        = "";
            ОбластьСтроки.Параметры.НетСвязанныхДокументов    = "";
            ОбластьСтроки.Параметры.ТолькоЗаявкаНарасхДС      = "";                    
            ОбластьСтроки.Параметры.ЗаявкаИСписание           = "";                    
            //
        КонецЦикла;
        РезультатОтчета.ЗакончитьАвтоГруппировкуСтрок();
    КонецЕсли;
    
КонецПроцедуры
//
&НаСервере
Функция ВыявитьСвязиСДокументами(ЗначениеКритерияОтбора)
Запрос       = Новый Запрос;
Запрос.Текст = "
    |ВЫБРАТЬ
    |    СвязанныеДокументы.Ссылка КАК Ссылка
    |ИЗ
    |    КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СвязанныеДокументы";
Запрос.УстановитьПараметр("ЗначениеКритерияОтбора", ЗначениеКритерияОтбора);
ТзСвязанныеДокументы =  Запрос.Выполнить().Выгрузить();
КолВоВТч = ТзСвязанныеДокументы.Количество();
Если КолВоВТч = 0 Тогда
    Возврат 0;
ИначеЕсли КолВоВТч = 1 Тогда
    Если ТипЗнч(ТзСвязанныеДокументы[0].Ссылка) = Тип("ДокументСсылка.ЗаявкаНаРасходованиеДенежныхСредств") Тогда
        Запрос.Текст = "
            |ВЫБРАТЬ
            |    СвязанныеДокументы.Ссылка КАК Ссылка
            |ИЗ
            |    КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СвязанныеДокументы";
        Запрос.УстановитьПараметр("ЗначениеКритерияОтбора", ТзСвязанныеДокументы[0].Ссылка);
        ТзСвязанныеДокументы2 =  Запрос.Выполнить().Выгрузить();
        КолВоВТч2 = ТзСвязанныеДокументы2.Количество();
        Если КолВоВТч2 = 0 Тогда
            Возврат 1;
        Иначе
            Если ТипЗнч(ТзСвязанныеДокументы2[0].Ссылка) = Тип("ДокументСсылка.СписаниеБезналичныхДенежныхСредств") Тогда
                Возврат 2;
            КонецЕсли;
        КонецЕсли;
    Конецесли;
    //
    Возврат КолВоВТч;
КонецЕсли;
Возврат -1;
КонецФункции
//
40 NIGHTHUNTER
 
14.07.22
11:02
(39) Пока вижу тут проблему в том, что не обрабатываются документы у которых 2 документа связанных.
Привязанных к АвансовомуОтчету, 2 документа ЗаявканаРасходованиеДенежныхСредств.

Так как я не у чел это пока в условии.
41 NIGHTHUNTER
 
14.07.22
12:35
(39) Это все же заготовка на какие то первичные данные.
Которую в процессе от, множества моментов придется дорабатывать.

Как же это все же это попробовать сделать, по принципу (38) ?

ЗАПРОС В КОТОРОМ:

Отбираются документы авансовый отчет, у которых. -

1). Нет связанных документов. (Нет связанных документов заявка на расходование денежных средств, списание безналичных денежных средств, как я понимаю не может быть привязан на прямую к авансовому отчету. Только через документ заявка на расходование денежных средств).

2). Есть связанный документ заявка на расходование денежных средств, или несколько таких документов. Но с ними нет связанных документов списание безналичных денежных средств.

3). Есть связанный документ заявка на расходование денежных средств, или несколько таких документов. И к хотя бы одному из них есть привязанный документ списание безналичных денежных средств, у которого нет отметки проверено банком.
42 NIGHTHUNTER
 
14.07.22
12:40
Это отберет авансовые отчеты, у которых есть связанные документы заявка на расходование средств?

ВЫБРАТЬ
    АвансовыйОтчет.Ссылка КАК Ссылка,
    ЗаявкаНаРасходованиеДенежныхСредств.Ссылка КАК Ссылка1
ИЗ
    Документ.ЗаявкаНаРасходованиеДенежныхСредств КАК ЗаявкаНаРасходованиеДенежныхСредств
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.АвансовыйОтчет КАК АвансовыйОтчет
        ПО (ЗаявкаНаРасходованиеДенежныхСредств.ДокументОснование = АвансовыйОтчет.Ссылка)
ГДЕ
    АвансовыйОтчет.Дата МЕЖДУ &НачДата И &КонДата
43 NIGHTHUNTER
 
14.07.22
12:40
(38) ни че, вы подсказали !!!
44 NIGHTHUNTER
 
14.07.22
14:26
Я как понимаю это будет объединение запросов?

1. Авансовые отчеты за период у которых нет, связанных документов.

2. Авансовые отчеты за период у которых есть связанные документы заявка на расходование денежных средств.

3. Авансовые отчеты за период.
   У которых есть связанные документы заявка на расходование средств,
   которые имеют связанные документы списание безналичных денежных средств у которых нет галки оплачено банком.

Такие три группы авансовых отчетов нужно получить. Подскажите пожалуйста по запросам?
В основном трудность с третьим.

Пробую связывать все три документа, не идет,  http://joxi.ru/E2p7MkXHv0vPZm
45 NIGHTHUNTER
 
14.07.22
14:28
Или такая ошибка, http://joxi.ru/82QJW7EH8N8XWA . Я плаваю не пойму.

Как учитывая это правильно построить выборку?

Документ ЗаявкаНаРасходованиеДС связан с документом АвансовыйОтчет по реквизиту ДокументОснование, там есть тип Авансовый отчет, у документа ЗаявкаНарасходованиеДС.

Документ СписаниеБезналичныхДС в реквизите ДокументОснование имеет тип и АвансовыйОтчет и ЗаявкаНаРасходованиеДС .
46 NIGHTHUNTER
 
15.07.22
05:17
Подскажите по запросу?
47 NIGHTHUNTER
 
15.07.22
05:19
Тут же совсем не сложно, я прост оне пойму (
48 Admin_Net_1C
 
15.07.22
06:49
В (38) тебе все правильно подсказали. Удочка есть, ловить за тебя никто не будет.
В (42) направление верное, в детали не вникал.
Также тебе скорее всего пригодятся операторы ССЫЛКА и ВЫРАЗИТЬ в твоем запросе.
49 Мультук
 
гуру
15.07.22
07:56
(42)

Надеюсь, у тебя остались коробки от компьютера (с)

P.S.
Читай книги - они rules.

P.S.
Сначала это было интересно, затем весело, но в основном грустно.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший