8.х Найти подчиненные документы

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем kisol, 5 дек 2016.

  1. TopicStarter Overlay
    kisol
    Offline

    kisol Профессионал в 1С

    Регистрация:
    25 июл 2012
    Сообщения:
    606
    Симпатии:
    81
    Баллы:
    54
    Добрый день, я хочу запросом получить все документы отчеты о продажах, на основании которых не создавались акты списания, вот что накорябал, но это проверка одного документа и без отсечения актов списания, розница 2.2.

    Код:
    ВЫБРАТЬ РАЗРЕШЕННЫЕ
         СтруктураПодчиненности.Ссылка
    ИЗ
    КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СтруктураПодчиненности
      
    
    [​IMG]
    Последнее редактирование: 5 дек 2016
  2. Максим
    Offline

    Максим Опытный в 1С

    Регистрация:
    28 фев 2008
    Сообщения:
    743
    Симпатии:
    8
    Баллы:
    29
    Так , что нужно отсечь акты списания?
    Тогда
    Код:
    ВЫБРАТЬ РАЗРЕШЕННЫЕ
         СтруктураПодчиненности.Ссылка
    ИЗ
    КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СтруктураПодчиненности
    ГДЕ
        НЕ СтруктураПодчиненности.Ссылка ССЫЛКА Документ.АктСписания
    P.S. Скинь, пожалуйста, консоль в личку.
    kisol нравится это.
  3. TopicStarter Overlay
    kisol
    Offline

    kisol Профессионал в 1С

    Регистрация:
    25 июл 2012
    Сообщения:
    606
    Симпатии:
    81
    Баллы:
    54
    Скинул консоль.
    Немного не то, мне нужны все документы ОтчетыОРозничныхПродажах, у которых нету АктСписания в структуреПодчиненнности
  4. TopicStarter Overlay
    kisol
    Offline

    kisol Профессионал в 1С

    Регистрация:
    25 июл 2012
    Сообщения:
    606
    Симпатии:
    81
    Баллы:
    54
    Жуткое решение на мой взгляд, выбираем все отчеты, в цикле проверяем создавали на них акты списания, если нет то добавляем в ТЗ.
    Код:
    &НаСервере
    Процедура ПриОткрытииНаСервере()
        Запрос = Новый Запрос;
        Запрос.Текст =
            "ВЫБРАТЬ
            |    ОтчетОРозничныхПродажах.Ссылка КАК СсылкаОтчет
            |ИЗ
            |    Документ.ОтчетОРозничныхПродажах КАК ОтчетОРозничныхПродажах";
       
        РезультатЗапросаОтчет = Запрос.Выполнить();
        ВыборкаДетальныеЗаписиОтчет = РезультатЗапросаОтчет.Выбрать();
        Пока ВыборкаДетальныеЗаписиОтчет.Следующий() Цикл
               
                Запрос = Новый Запрос;
                Запрос.Текст =
                    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
                    |    СтруктураПодчиненности.Ссылка
                    |ИЗ
                    |    КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СтруктураПодчиненности
                    |ГДЕ
                    |    СтруктураПодчиненности.Ссылка ССЫЛКА Документ.АктСписанияЕГАИС";
               
                Запрос.УстановитьПараметр("ЗначениеКритерияОтбора", ВыборкаДетальныеЗаписиОтчет.СсылкаОтчет);
                РезультатЗапросаАкт = Запрос.Выполнить();
                ВыборкаДетальныеЗаписиАкт = РезультатЗапросаАкт.Выбрать();
                       
                Пока ВыборкаДетальныеЗаписиАкт.Следующий() Цикл
                    СтрОтчеты = Объект.ТЗОтчеты.Добавить();
                    СтрОтчеты.НаименованиеОтчета = ВыборкаДетальныеЗаписиОтчет.СсылкаОтчет;
                КонецЦикла;
               
            КонецЦикла;       
    КонецПроцедуры
    
  5. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204
    Конечно запрос в цикле не есть хорошо :)
    А что если подзапросом дергать, и потом уже отбирать по условию ?
    kisol нравится это.
  6. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    5.064
    Симпатии:
    185
    Баллы:
    104
    А что одним запросом никак?
    kisol нравится это.
  7. TopicStarter Overlay
    kisol
    Offline

    kisol Профессионал в 1С

    Регистрация:
    25 июл 2012
    Сообщения:
    606
    Симпатии:
    81
    Баллы:
    54
    Подскажи кошаку как одним запросом -Cat-
  8. 1с-ник
    Offline

    1с-ник Профессионал в 1С Заблокирован

    Регистрация:
    5 окт 2014
    Сообщения:
    998
    Симпатии:
    164
    Баллы:
    104
    Неверная постановка задачи. Критерий отбора - всего лишь один из механизмом 1с, который ищет конкретные ссылки из состава сего объекта.
    В данном случае критерий отбора не подходит для решения задачи. Напиши обычный "православный" запрос. Скорее всего идея получения данных из критерия отбора появилась из-за незнания по каким полям делать соединения.
    --- Объединение сообщений, 5 дек 2016 ---
    Так что за конфа? Кот, ПКМ->поиск ссылок на объект. :)
    Последнее редактирование: 5 дек 2016
    kisol нравится это.
  9. TopicStarter Overlay
    kisol
    Offline

    kisol Профессионал в 1С

    Регистрация:
    25 июл 2012
    Сообщения:
    606
    Симпатии:
    81
    Баллы:
    54
    Розница 2.2.
    Спс вот решение
    --- Объединение сообщений, 5 дек 2016 ---
    Код:
    ВЫБРАТЬ
        ОтчетОРозничныхПродажах.Ссылка,
        АктСписанияЕГАИС.Ссылка КАК Ссылка1
    ИЗ
        Документ.ОтчетОРозничныхПродажах КАК ОтчетОРозничныхПродажах
            ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.АктСписанияЕГАИС КАК АктСписанияЕГАИС
            ПО ОтчетОРозничныхПродажах.Ссылка = АктСписанияЕГАИС.ДокументОснование
    [​IMG]
  10. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204
    А почему внутреннее соединение ?