7.7 Формирование отчета по условиям

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Tilda, 13 дек 2010.

  1. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    В продолжение моей темы про отчет по справочнику "Сертификаты" в измененной ТиС 7.7.
    Отчет формируется, однако нужно добавить условия.. Допустим, есть реквизиты Номинал, СтатусСертификата и Магазин.. Нужно выводить строки по заданным значениям этих реквизитов. Прикрепляю md-шник и файл внешнего отчета.
    Пыталась сделать условиями - логически рассуждая, должно быть так: если заданное значение реквизита равно значению реквизита, получаемому из запроса, то строку выводим. Ведь так?
    Заранее спасибо!

    P.S. Прошлая моя тема: http://www.1c-pro.ru/index.php?showtopic=28187
  2. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    В запрос просто добавляем условие.
    (Пример прилагается)

    Вложения:

  3. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    Спасибо большое! :) Буду доделывать сейчас)
  4. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Спасибо???
    Не знаю такой валюты.
  5. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    Ну, с другой пока туго =)) Извиняйте!
  6. Бухгалтерский угодник
    Offline

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

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

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    А.. =) Для круглого счета..
  8. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    Еще вопросик! =) Все сделала - только одна проблема. Если пусты поля "ВыбСтатусСертификата" и "ВыбМагазин", то эти условия в запросе просто не учитываются и результат выводится по всем магазинам или по всем статусам сертификатов. Но если я не заполняю поле "ВыбНоминал", то ничего не получается, потому что этот реквизит имеет тип Число, и сбрасывается в ноль при очистке. То есть, можно отобрать только при заполненном поле. Пыталась сделать условие - проверку, если в этом поле ноль, то отбор по всем номиналам, а если заданное значение, то лишь по этому значению. Но мешается условие в запросе...
    Код:
    |Условие(Номинал в ВыбНоминал);  
    
    
    
    Однако, если убрать это условие из запроса, то результат так же неудовлетворительный - если не задавать Номинал, то все работает как надо, ну а если задать - нет. Прощу помощи! :)) Пожалуйста!
    Ну и прикрепляю отчет в текущем состоянии (файл конфигурации в прикрепленном ранее архиве файлы.zip)

    Вложения:

  9. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    Практически все сделала... Все работает. Осталось только одно - как-то увязать это все с датой, которую тоже надо задавать( Не пойму, как вообще это сделать.

    Вложения:

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

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

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

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