Имя: Пароль:
1C
1С v8
Действие обработки
,
0 Tanis
 
05.04.13
11:22
Добрый день!
Подскажите, пожалуйста, что делает данный код?

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

   МассивФизЛицПересчет = Новый Массив;
   
   ЗаполнитьМассивУникальнымиЗначениями(МассивФизЛиц, МассивФизЛицПересчет);
   

   Объект.РассчитатьВсе();
   
КонецПроцедуры

//  Заполняет массив-приемник уникальными значениями из массива-источника.
// Если элемент в массиве-приемнике уже существует, то добавления нового элемента не происходит.
//
// Параметры:
//  МассивПриемник – Массив – массив, который заполняется уникальными значениями
//  МассивИсточник – Массив – массив, из которого подбираются элементы в массив-приемник.
//
Процедура ЗаполнитьМассивУникальнымиЗначениями(МассивПриемник, МассивИсточник) Экспорт
   
   Для Каждого Элемент Из МассивИсточник Цикл
       
       Если МассивПриемник.Найти(Элемент) = Неопределено Тогда
           
           МассивПриемник.Добавить(Элемент);
           
       КонецЕсли;
       
   КонецЦикла;
   
КонецПроцедуры
1 Wobland
 
05.04.13
11:24
инициализирует и заполняет
2 salvator
 
05.04.13
11:24
Заполняет табличную часть, инфа 146%
3 pessok
 
05.04.13
11:25
внешняя обработка табличной части, заполняет табличную часть :)
4 pessok
 
05.04.13
11:25
внешняя обработка ЗАПОЛНЕНИЯ табличной части
5 Tanis
 
05.04.13
11:34
хм... а что она должна заполнять?
и по какому принципу?
обработка не моя, а с меня спрашивают почему перестала работать...
6 pessok
 
05.04.13
11:36
(5) не работает вот тут:


Если ((Строка.ВидРасчета.Код = "00000") И (Строка.ВидРасчета.Наименование = "Наименование")) Тогда
7 Wobland
 
05.04.13
11:37
(5) табличную часть. бывают такие внешние обработки для этого
8 pessok
 
05.04.13
11:37
а заполнять она должна физиков, по которым не было оплат
9 Godofsin
 
05.04.13
11:38
(6) гений =) Не видя, ошибки сразу нашел причину =)
10 zzerro
 
05.04.13
11:41
Обработка устаналивает результат расчета = 0, для всех строк табличной чати Начисления, в которых указан вид расчета с кодом "00000" и наименованием "Наименование" и если число оплаченых дней/часов = 0. Потом записывает и перерасчитывает документ.
11 Tanis
 
05.04.13
11:48
Спасибо!
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан