Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 06:28

Проблема в работе с регистрами

Автор bri, 29 дек 2015, 22:46

0 Пользователей и 1 гость просматривают эту тему.

bri

Платформа 1с:Предприятие 7.7 версии (7.70.027)

О великие 1с-умы. Подскажите студенту которого замучила проблема в его курсовой по 1с:Предприятие (версии 7.7) и да получит каждый ответивший +10 к карме.
А проблема заключается в том... что я уже 4й день не понимаю в чем проблема. Перерыл тонны материалов и делая все с точностью по инструкциям ничего не выходит.
в общем, суть такова:

Нужно конфигурировать все для работы с Ювелирного магазина. Есть стандартная связка Документ-Регистр-(через запрос)Отчет, в таблице отчета строки не выводятся и я понять не могу почему. В связи с этим максимально подробно распишу все, что сделано, и прошу, найдите эту ошибку, у меня скоро дедлайн:

у меня есть справочник "Изделие", в котором записана инфа о изделии (Название, стоимость, материал, и т.д.)
Есть Документ "ПродажаТовара", который создан для записи в журнал документа информации о продаже товара, теперь о нем подробнее:
Реквизиты шапки: КоличествоИзделия, Изделие (объект справочник.Издение)

Настройка:


Модуль Документа:
Процедура ОбработкаПроведения()
Если КоличествоИзделия = 0 Тогда
    Предупреждение("Не указано количество");
    НеПроводитьДокумент();
КонецЕсли;     
Если Изделие.Выбран() = 0 тогда
Предупреждение("Не выбрано изделие");
    НеПроводитьДокумент();           
КонецЕсли;                           

                       
  Регистр.ПродаваемыйТовар.Изделие = Изделие;       
  Регистр.ПродаваемыйТовар.КолПрод = КоличествоИзделия;
  Регистр.ПродаваемыйТовар.Прибыль = Изделие.ЦенаП*КоличествоИзделия;   
  Регистр.ПродаваемыйТовар.ДвижениеПриходВыполнить();

КонецПроцедуры

Здесь, Изделие.ЦенаП - цена продажи

Регистр.ПродаваемыйТовар



Отчет.ПродавТов
вывод информации о проданных товарах

Форма

Модуль

// Процедура генерации запроса Сформировать.
//
Процедура Сформировать()
Перем Запрос, ТекстЗапроса, Таб;
//Создание объекта типа Запрос
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)   
|Период с ВыбДата по ВыбДатаКон;
|Издел = Регистр.ПродаваемыйТовар.Изделие;
|Приб = Регистр.ПродаваемыйТовар.Прибыль;
|Кол = Регистр.ПродаваемыйТовар.КолПрод;
|Группировка Издел;
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;     


// Подготовка к заполнению выходных форм данными запроса
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("");
// Заполнение полей "Заголовок"
Таб.ВывестиСекцию("Шапка");
Состояние("Заполнение выходной таблицы...");


Пока Запрос.Группировка(1) = 1 Цикл   
Таб.ВывестиСекцию("Строка");
КонецЦикла;

Таб.Опции(0);
// Вывод заполненной формы
Таб.ТолькоПросмотр(1);
Таб.Показать("");

КонецПроцедуры   


Таблица


И все было бы хорошо вот только когда я формирую отчет ничего не выводиться

Хотя в журнале информация есть


Пройдя по коду в отладчике стало ясно что "Запрос.Группировка(1)" возвращает ноль, в цикл не входится, а значит информация в регистр не была записана (или записана коряво, или групировка не проходит). не могу понять в чем проблема.

TerverVl

Чтобы в 7.7 получить данные из регистра нужно в запросе использовать функции.
Например:

    ТекстЗапроса =
    "//{{ЗАПРОС(Сформировать)   
    |Период с ВыбДата по ВыбДатаКон;
    |Издел = Регистр.ПродаваемыйТовар.Изделие;
    |Приб = Регистр.ПродаваемыйТовар.Прибыль;
    |КолПрод = Регистр.ПродаваемыйТовар.КолПрод;
    |Функция СуммаНачКол = НачОст(КолПрод);
    |Функция СуммаПриходКол = Приход(КолПрод);
    |Функция СуммаРасходКол = Расход(КолПрод);
    |Функция СуммаКонКол = КонОст(КолПрод);
    |Группировка Издел;
    |"//}}ЗАПРОС

bri


Похожие темы (5)

Рейтинг@Mail.ru

Поиск