7.7 Отчет по справочнику

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

  1. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

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

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

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    и что не получилось? какой результат запроса?
  3. dianofob
    Offline

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    хм.. посмотрел конфигурацию ТиС 9.2 и такого справочника там не обнаружил
  4. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    Конфигурация измененная, ориентирована на магазин ювелирных изделий. Справочник Сертификаты добавлен... У него есть реквизиты Фирма, Склад, Номинал, СтатусСертификата, ДокОснование, Штрихкод, Валюта, ДатаДок, Автор.
    СтатусСертификата - берется из перечисления.
    Номинал - число.

    Отчет должен получиться в виде таблицы сертификатов, сгруппированных по номиналу и по статусу. Ну и отдельной колонкой - количество соответствующих сертификатов.

    Результат - ошибка:
    Переменная не определена (Статус)
    Статус<<?>>
  5. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Это ошибка вывода печатной формы. И где в вашем коде переменная Статус?

    P.S. СтатусСертификата какой тип имеет?.
    Увидел - перечисление. Зачем эта строчка:
    Код:
    |Функция Сум = Сумма(Статус);
    
  6. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    СтатусСертификата - Перечисление.СтатусыСертификатов (добавленное перечисление)

    А почему ругается именно на СтатусСертификата? А на Магазин и на Сертификат - нет... Хотя их тоже нигде больше не встречается, кроме как на печатной форме, в таблице.

    Ну по идее хотела сложить все сертификаты по статусам) Я новичок, если что, поправляйте! =)
  7. dianofob
    Offline

    dianofob (-_-)y-.o0O

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

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    Опять ошибка)
    Пока Запрос.Группировка("Сертификат") = 1 Цикл
    Неверное имя группы 'Сертификат' в функции Группировка.
    Но прошлую ошибку уже не выдает, спасибо! :)
  9. dianofob
    Offline

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    по сертификату нет группировки, нужно по статусу или магазину. И определитесь что хотите иметь на выходе. Предлагаю выгрузить результат запроса в ТЗ и посмотреть что вышло в этом случае по группировкам
  10. WaRDeR
    Offline

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

    Регистрация:
    23 ноя 2006
    Сообщения:
    3.263
    Симпатии:
    14
    Баллы:
    29
    Выложите МДшник и обработку. Чего в слепую гадать?
  11. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    Пожалуйста! :)
  12. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    Немного изменила процедуру Сформировать() в модуле обработки.
    В ТЗ выгружается все как положено, вот только когда пытаюсь выгружать все в печатную форму, выдается ошибка:
    Пока Запрос.Группировка("Номинал") = 1 Цикл
    Не было обращения к старшим уровням выборки.

    Вложения:

  13. TopicStarter Overlay
    Tilda
    Offline

    Tilda Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    70
    Симпатии:
    0
    Баллы:
    26
    Все, вроде работает... Вот такая сейчас она (файл), конечно, хочется как-то покрасивее, но...

    Вложения:

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