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

Прощу помощи по коду

Автор Dobrolubov, 25 июл 2012, 08:22

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

Dobrolubov

День добрый, мне надо сделать печатную форму(), по регистру сведений. Оттуда мне необходимо брать номенклатуру сырья и считать приход и уход за сегодняшний день, подскажите кто что сможет))



Процедура Печать(Элемент)
   
   
   Макет=РЕгистрыНакопления.Движение.ПолучитьМакет("Макет");
   ОбластьШапки=макет.ПолучитьОбласть("Шапка");
   ТабДок=Новый ТабличныйДокумент;
   дат=текущаядата();
     Результат="";
    Если ТипЗнч(Дат)=Тип("Дата") Тогда
        Результат=Формат(Дат,"ДФ=""дд ММММ гггг 'г.'""");
    КонецЕсли;
   областьшапки.Параметры.текущаядата=РЕзультат;
   ТабДок.Вывести(ОбластьШапки);
        
   Выборка=РЕгистрыНакопления.Движение.Выбрать();
    имяц=выборка.Номенклатура;
   пока выборка.Следующий() цикл
       к1=0;             
      к2=0;
      к3=0;

      датТ=выборка.Период;
        Рез="";
    Если ТипЗнч(ДатТ)=Тип("Дата") Тогда
        Рез=Формат(ДатТ,"ДФ=""дд ММММ гггг 'г.'""");
    КонецЕсли;
                 облТабЧасти=макет.ПолучитьОбласть("Строка");
          если рез=результат               //проверка сегоднящней даты
      тогда
   облтабчасти.Параметры.наим=выборка.Номенклатура;   
   
   пока      выборка.Следующий() цикл
      
      
      
      к1=к1+выборка.Факт;
         к2=к2+выборка.Расход_сырья;
      
   конеццикла;   
   конецесли;   

                              
        облтабчасти.Параметры.прих=к1;
       облтабчасти.Параметры.расх=к2;
          

   конеццикла;
   табдок.Вывести(ОблТабЧасти);

      табдок.Защита=Истина;
   табдок.ТолькоПросмотр=Истина;
   табдок.Показать();
      

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

Dobrolubov

вот скрины

djvjv

такой вопрос, вы что новичок в 1с.Могу помочь если не понятно вам все.
1. Какая конфигурация?
2. По какому регистру сведений надо сделать печатную форму?

3. скрин это что нужно сделать или то что уже сделано? А то на скрине уже номенклатура сырья.

У меня к вам вопрос, у вас этот странный для меня кусок кода ошибок не выдает? А то я минут только 20 хотел понять что код должен делать и толком не понял до конца.

данные из регистра запросом вытаскивайте, проще будет.
Просто у вас в цикле который не правилен вы хотите типо сделать, пока есть хоть какие-то записи в регистре
всегда приравнивать K1=0, K2=0, K3=0
Потом вытаскиваете дату(которая всегда имеет тип Дата) и ставите условие если Дата имеющая всегда тип Дата равно Тип Дата то ее преобразовать.
И у вас нет вывода данных. Область выводите, а в нее данных никаких не выводите.

облТабЧасти=макет.ПолучитьОбласть("Строка"); -например к чему это строка если потом ее не вывдите, а тем более не каких данных в макет не выводите по коду.

Зачем вам эти конструкции?
дат=текущаядата();
     Результат="";
    Если ТипЗнч(Дат)=Тип("Дата") Тогда
        Результат=Формат(Дат,"ДФ=""дд ММММ гггг 'г.'""");
    КонецЕсли;

  датТ=выборка.Период;
        Рез="";
    Если ТипЗнч(ДатТ)=Тип("Дата") Тогда
        Рез=Формат(ДатТ,"ДФ=""дд ММММ гггг 'г.'""");
    КонецЕсли;

Просто это делается:
дат=текущаядата();
датТ=выборка.период.
если дат=датТ тогда
и дальше что нужно.

cska-fanat-kz

Регистр сведений или все таки накопления?..

Почитайте самую малость про систему компоновки данных - сделаете отчет на раз-два...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:

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

Рейтинг@Mail.ru

Поиск