7.7 Не работает условие в запросе

Тема в разделе "Типовые решения "1С:Предприятие 7.7"", создана пользователем alp, 24 июн 2010.

  1. TopicStarter Overlay
    alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Добрый День!
    не получается выбрать все документы запросом с условием

    Код:
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса = 
    "//{{ЗАПРОС(Сформировать)
    |Период с НачДата по КонДата;
    |ТекущийДокумент = Документ.Реализация.ТекущийДокумент, Документ.ПоступлениеТМЦ.ТекущийДокумент;
    |Фирма = Документ.Реализация.Фирма, Документ.ПоступлениеТМЦ.Фирма;
    |Склад = Документ.Реализация.Склад, Документ.ПоступлениеТМЦ.Склад;
    |Группировка ТекущийДокумент;
    //|Условие(ПустоеЗначение(Склад)=1);
    |"//}}ЗАПРОС
    ; 
    Если ВыбФирма.Выбран()=1 Тогда
    ТексЗапроса = ТекстЗапроса +
    "
    |Условие(Фирма = ВыбФирма);";
    КонецЕсли;
    
    
    Выбираю фирму, а в выборку попадают всеравно все фирмы!! В чем проблема ?
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Вы проверяли - условие Выбран() срабатывает?
  3. TopicStarter Overlay
    alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Да, Извеняюсь что не в том разделе написал.
  4. TopicStarter Overlay
    alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Причем у меня были похожие ситуации:
    Код:
    Перем Запрос, ТекстЗапроса, Таб;
    //Создание объекта типа Запрос
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса = 
    "//{{ЗАПРОС(Сформировать)
    |Период с ВыбНачПериода по ВыбКонПериода;
    |ТекущийДокумент = Документ.СчетФактураВыданный.ТекущийДокумент;
    |ДокОснование = Документ.СчетФактураВыданный.ДокОснование;
    |Группировка ТекущийДокумент без групп все;
    |Условие(ДокОснование = ВыбДок);
    |"//}}ЗАПРОС
    ;
    
    // ВыбДок - Это Ссылка на документ реализация.
    
    
    То же не может найти мне документ по основанию.
  5. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    А тип? М.б. ВыбФирма это Юрлицо, а не фирма? У вас ТиС?
    Выложите обработку....
  6. TopicStarter Overlay
    alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Посмотреть вложение 4657
    ТиС , Тип Фирма, Простым перебором докуметов все работает , а вот запросом нет.

    Вложения:

  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Так и не понял прикола, но вот так все работает...
    Код:
    Процедура Сформировать()
    Перем Запрос, ТекстЗапроса, Таб;
    //Создание объекта типа Запрос
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса = 
    "//{{ЗАПРОС(Сформировать)
    |Период с ВыбНачПериода по ВыбКонПериода;
    |Склад = Документ.Реализация.Склад, Документ.ПоступлениеТМЦ.Склад;
    |Фирма = Документ.Реализация.Фирма, Документ.ПоступлениеТМЦ.Фирма;
    |ТекущийДокумент = Документ.Реализация.ТекущийДокумент, Документ.ПоступлениеТМЦ.ТекущийДокумент;
    |Группировка ТекущийДокумент;
    |Условие(Склад в ВыбСклад);
    |Условие(Фирма в ВыбФирма);
    |"//}}ЗАПРОС
    ;
    // Если ошибка в запросе, то выход из процедуры
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
    Возврат;
    КонецЕсли;
    
    // Подготовка к заполнению выходных форм данными запроса
    Таб = СоздатьОбъект("Таблица");
    Таб.ИсходнаяТаблица("Сформировать");
    // Заполнение полей "Заголовок"
    Таб.ВывестиСекцию("Заголовок");
    Состояние("Заполнение выходной таблицы...");
    Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
    Пока Запрос.Группировка(1) = 1 Цикл
    // Заполнение полей ТекущийДокумент
    Таб.ВывестиСекцию("ТекущийДокумент");
    КонецЦикла;
    // Вывод заполненной формы
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Сформировать", "");
    КонецПроцедуры
    
    

    Вложения:

    • 4.ert
      Размер файла:
      32 КБ
      Просмотров:
      48
  8. TopicStarter Overlay
    alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Глюк какой то, причем это связанно с тем что выбираются документы , я много раз писал подобные запросы из регистров все нормально было.
  9. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    То что прикреплено - работает
  10. TopicStarter Overlay
    alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Спасибо , я пробовал.
Похожие темы
  1. mhl
    Ответов:
    5
    Просмотров:
    1.107
Загрузка...

Поделиться этой страницей