7.7 Помогите, пожалуйста:((

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

  1. TopicStarter Overlay
    Девочка
    Offline

    Девочка

    Регистрация:
    24 авг 2010
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте. Обращаюсь к вам с вопросом, или даже с просьбой. Сразу извиняюсь, я только-только начинаю обучаться программированию, поэтому знаю немного:) Задание такое. Нужно создать отчет по зарплате. Отчет должен формироваться на основании документа по начислению зарплаты и документа по выплате зарплаты. При нажатии на кнопку Сформировать на таблицу значений, расположенную на форме отчета, должен выводиться список сотрудников, сумма начислений и сумма выплат. Список сотрудников выводится, а начисления и выплаты почему-то нет:(( Объясните что к чему:(

    Код:
    Процедура ПриОткрытии()
    ТЗ.НоваяКолонка("Сотрудник","Справочник.Сотрудники",,,"Сотрудник",30);
    ТЗ.НоваяКолонка("СуммаН","Документ.НачислениеЗП",,,"Сумма Начислений",30);
    ТЗ.НоваяКолонка("СуммаВ","Документ.ВыплатаЗП",,,"Сумма Выплат",30);
    КонецПроцедуры
    
    Процедура Сформировать()
    ТЗ.Свернуть("Сотрудник","СуммаН,СуммаВ");
    СпрСотр=СоздатьОбъект("Справочник.Сотрудники");
    СпрСотр.ВыбратьЭлементы();
    Пока СпрСотр.ПолучитьЭлемент()=1 Цикл
    ТЗ.НоваяСтрока();
    ТЗ.Сотрудник=СпрСотр.ТекущийЭлемент();
    КонецЦикла;
    ДокН=СоздатьОбъект("Документ.НачислениеЗП");
    ДокН.ВыбратьДокументы();
    Пока ДокН.ПолучитьДокумент()>0 Цикл
    ТДок=ДокН.ТекущийДокумент();
    ТДок.ВыбратьСтроки();
    Пока ТДок.ПолучитьСтроку()>0 Цикл
    ТЗ.НоваяСтрока();
    ТЗ.СуммаН=ТДок.Сумма;
    КонецЦикла;
    КонецЦикла;
    ДокВ=СоздатьОбъект("Документ.ВыплатаЗП");
    ДокВ.ВыбратьДокументы();
    Пока ДокВ.ПолучитьДокумент()>0 Цикл
    ТекДок=ДокВ.ТекущийДокумент();
    ТекДок.ВыбратьСтроки();
    Пока ТекДок.ПолучитьСтроку()>0 Цикл
    ТЗ.СуммаВ=ТекДок.Сумма;
    КонецЦикла;
    КонецЦикла;
    КонецПроцедуры
    
  2. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Код:
    Процедура ПриОткрытии()
    ТЗ.НоваяКолонка("Сотрудник","Справочник.Сотрудники",,,"Сотрудник",30);
    ТЗ.НоваяКолонка("СуммаН","Документ.НачислениеЗП",,,"Сумма Начислений",30);
    ТЗ.НоваяКолонка("СуммаВ","Документ.ВыплатаЗП",,,"Сумма Выплат",30);
    КонецПроцедуры
    
    Процедура Сформировать()
    
    ТЗ.УдалитьСтроки(); //учтем что отчет может формироваться несколько раз
    
    //цикл по справочнику можно исключить если вы хотите видеть только ненулевые суммы
    СпрСотр=СоздатьОбъект("Справочник.Сотрудники");
    СпрСотр.ВыбратьЭлементы();
    Пока СпрСотр.ПолучитьЭлемент()=1 Цикл
    Если СпрСтотр.ЭтоГруппа()=1 Тогда Продолжить КонецЕсли; //группы нам не нужны
    ТЗ.НоваяСтрока();
    ТЗ.Сотрудник=СпрСотр.ТекущийЭлемент();
    КонецЦикла;
    
    ДокН=СоздатьОбъект("Документ.НачислениеЗП");
    ДокН.ВыбратьДокументы(НачДата,КонДата);//на форме лучше добавить диалог выбора периода. Так удобнее
    Пока ДокН.ПолучитьДокумент()=1 Цикл
    ДокН.ВыбратьСтроки();
    Пока ДокН.ПолучитьСтроку()=1 Цикл
    ТЗ.НоваяСтрока();
    ТЗ.Сотрудник=ДокН.Сотрудник;//Вот этого вам не хватало
    ТЗ.СуммаН=ДокН.Сумма;
    КонецЦикла;
    КонецЦикла;
    
    ДокВ=СоздатьОбъект("Документ.ВыплатаЗП");
    ДокВ.ВыбратьДокументы(НачДата,КонДата);
    Пока ДокВ.ПолучитьДокумент()=1 Цикл
    ДокВ.ВыбратьСтроки();
    Пока ДокВ.ПолучитьСтроку()=1 Цикл
    ТЗ.Сотрудник=ДокВ.Сотрудник;//и здесь тоже
    ТЗ.СуммаВ=ДокВ.Сумма;
    КонецЦикла;
    КонецЦикла;
    ТЗ.Свернуть("Сотрудник","СуммаН,СуммаВ");
    
    КонецПроцедуры
    
    
    
  3. TopicStarter Overlay
    Девочка
    Offline

    Девочка

    Регистрация:
    24 авг 2010
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Спасибо большое:)) Сделала, как вы сказали и все получилось:)
Похожие темы
  1. maximarm
    Ответов:
    6
    Просмотров:
    1.101
Загрузка...

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