Имя: Пароль:
1C
1С v8
Добавить колонку в форму
0 anisa8310
 
08.11.12
12:28
Добрый день!
1С:Предприятие 8.2 (8.2.15.319)
Зарплата и Управление Персоналом, редакция 2.5 (2.5.54.1)
Как вывести колонку "РАЗНОСТЬ" в форму остатки отпусков, спр Сотрудники, если в функции добавили её в таблицу сведений??  

Функция ОстатокОтпускаСпискаСотрудниковНаДату(Знач МассивСотрудников, Знач ДатаОстатков = '00010101') Экспорт
   
   Если Не ЗначениеЗаполнено(ДатаОстатков) Тогда
       ДатаОстатков = ОбщегоНазначения.ПолучитьРабочуюДату();
   КонецЕсли;
           
   ТаблицаДанных = ОписаниеТаблицыДанных();
   
   Для Каждого Сотрудник Из МассивСотрудников Цикл
       Строка = ТаблицаДанных.Добавить();
       Строка.Сотрудник                = Сотрудник;
       Строка.ДатаОстатков                = НачалоДня(ДатаОстатков);
       

   КонецЦикла;
   
   Результат = ОстаткиОтпусков(ТаблицаДанных);
   
   ТаблицаСведений = Новый ТаблицаЗначений;
   ТаблицаСведений.Колонки.Добавить("Сотрудник");
   ТаблицаСведений.Колонки.Добавить("ОстатокНаДату");
   ТаблицаСведений.Колонки.Добавить("РабочийГодС");
   ТаблицаСведений.Колонки.Добавить("РабочийГодПо");
   ТаблицаСведений.Колонки.Добавить("Примечание");
   ТаблицаСведений.Колонки.Добавить("ОстаткиВРазрезеВидовОтпусков");
   ТаблицаСведений.Колонки.Добавить("ОстаткиВРазрезеРабочихЛетИВидовОтпусков");
   ТаблицаСведений.Колонки.Добавить("Итог");
   ТаблицаСведений.Колонки.Добавить("Разность");
   Для Каждого СтрокаРезультата Из Результат Цикл
       ОстаткиВРазрезеРабочихЛетИВидовОтпусков = Новый Массив;
       Для Каждого РабочийГод Из СтрокаРезультата.ДанныеРасчета Цикл
           Если РабочийГод.ОсталосьДнейОтпускаСУчетомВсехОтпусков = 0 Тогда
               Продолжить;
           КонецЕсли;
           ОстаткиВРазрезеРабочихЛетИВидовОтпусков.Добавить(Новый Структура("ВидЕжегодногоОтпуска, ОсталосьДней, РабочийГодС, РабочийГодПо, ПоследнийРабочийГод",
               РабочийГод.ВидЕжегодногоОтпуска, РабочийГод.ОсталосьДнейОтпускаСУчетомВсехОтпусков, РабочийГод.ДатаНачала, РабочийГод.ДатаОкончания, РабочийГод.ПоследнийРабочийГод));
       КонецЦикла;
       
       Строка = ТаблицаСведений.Добавить();
       Строка.Сотрудник                                = СтрокаРезультата.Сотрудник;
       Строка.ОстатокНаДату                            = СтрокаРезультата.ОстатокНаДату;
       Строка.РабочийГодС                                = СтрокаРезультата.РабочийГодС;
       Строка.РабочийГодПо                                = СтрокаРезультата.РабочийГодПо;
       Строка.Примечание                                = СтрокаРезультата.Примечание;
       Строка.ОстаткиВРазрезеВидовОтпусков                = СтрокаРезультата.ОстатокНаДатуПоВидамЕжегодныхОтпусков;
       Строка.ОстаткиВРазрезеРабочихЛетИВидовОтпусков    = ОстаткиВРазрезеРабочихЛетИВидовОтпусков;
       Строка.Разность = Окр((ДатаОстатков-Строка.Сотрудник.ДатаПриемаНаРаботу)/86400);
   КонецЦикла;
   
   Возврат ТаблицаСведений;
       
КонецФункции

а в форму, остатки отпусков как вывести эту новую колонку- РАЗНОСТЬ?
всем спасибо!
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn