Как во внешней обработке перебрать строки в ее Табличной части?
Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
По теме из базы знаний
- Всякие полезности
- Пример переноса справочников, документов и движений через Эксель и "Конвертацию данных 2" из оптовой учетной системы 1С 7.7 Комплексной 4.2 и розничной учетной системы Рарус Торговый комплекс -> в 1С 8.3 ЕРП 2.4 (расширение и дополнительные реквизиты)
- Не спеша, эффективно и правильно – путь разработки. Часть 3. Практика
- Нестандартное использование СКД
- Процессор 1С – групповая обработка данных
Найденные решения
(9) ivnik, как всегда проблема не там, где ищете ))
Процедура Перегрузка()
НовДок = Документы.РегистрацияРазовыхНачисленийРаботниковОрганизаций.СоздатьДокумент();
НовДок.Организация=ЭлементыФормы.Организация.Значение;
НовДок.ПериодРегистрации=ПериодРегистрации;
Для Каждого ТекСтрока Из Доплаты Цикл // заполним табличную часть документа, из ТаблицыЗначений
Если ТекСтрока.СуммаПоОкладу > 0 Тогда
НС=НовДок.ОсновныеНачисления.Добавить();
НС.Авторасчет=Истина;
НС.Сотрудник = ТекСтрока.Сотрудник;
НС.ВидРасчета = ВР1;
НС.ПодразделениеОрганизации = ТекСтрока.Сотрудник.ПодразделениеОрганизации;
НС.Показатель1 = ТекСтрока.СуммаПоОкладу;
НС.Результат = ТекСтрока.СуммаПоОкладу;
НС.ДатаНачала = ТекСтрока.ДатаНачала;
НС.ДатаНачалаСобытия = ТекСтрока.ДатаНачала;
НС.ДатаОкончания = ТекСтрока.ДатаОкончания;
НС.ОплаченоДнейЧасов = ТекСтрока.ОтрабДней;
НС.НормаДней = ТекСтрока.ОтрабДней;
КонецЕсли;
КонецЦикла;
НовДок.ПолучитьФорму().Открыть();
КонецПроцедуры
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Это я уже пробовал, не работает ни так ни так. Если написать:
Для Каждого Строка из ТабличнаяЧасть Цикл
КонецЦикла;
то выдает ошибку на "ТабличнаяЧасть", а если написать:
Для Каждого Строка из ЭлементыФормы.ТабличнаяЧасть Цикл
КонецЦикла;
тогда что-то не понятное: в таблице одна строка, а на выходе их почему-то 15 одинаковых!!! И почему 15 тоже не могу понять?
Для Каждого Строка из ТабличнаяЧасть Цикл
КонецЦикла;
то выдает ошибку на "ТабличнаяЧасть", а если написать:
Для Каждого Строка из ЭлементыФормы.ТабличнаяЧасть Цикл
КонецЦикла;
тогда что-то не понятное: в таблице одна строка, а на выходе их почему-то 15 одинаковых!!! И почему 15 тоже не могу понять?
Форма обычная!
Код в студию:
Код в студию:
Процедура Перегрузка()
НовДок = Документы.РегистрацияРазовыхНачисленийРаботниковОрганизаций.СоздатьДокумент();
НовДок.Организация=ЭлементыФормы.Организация.Значение;
НовДок.ПериодРегистрации=ПериодРегистрации;
Для Каждого ТекСтрока Из Доплаты Цикл // заполним табличную часть документа, из ТаблицыЗначений
Если ЭлементыФормы.Доплаты.ТекущиеДанные.СуммаПоОкладу > 0 Тогда
НС=НовДок.ОсновныеНачисления.Добавить();
НС.Авторасчет=Истина;
НС.Сотрудник = ЭлементыФормы.Доплаты.ТекущиеДанные.Сотрудник;
НС.ВидРасчета = ЭлементыФормы.ВР1.Значение;
НС.ПодразделениеОрганизации = ЭлементыФормы.Доплаты.ТекущиеДанные.Сотрудник.ПодразделениеОрганизации;
НС.Показатель1 = ЭлементыФормы.Доплаты.ТекущиеДанные.СуммаПоОкладу;
НС.Результат = ЭлементыФормы.Доплаты.ТекущиеДанные.СуммаПоОкладу;
НС.ДатаНачала = ЭлементыФормы.Доплаты.ТекущиеДанные.ДатаНачала;
НС.ДатаНачалаСобытия = ЭлементыФормы.Доплаты.ТекущиеДанные.ДатаНачала;
НС.ДатаОкончания = ЭлементыФормы.Доплаты.ТекущиеДанные.ДатаОкончания;
НС.ОплаченоДнейЧасов = ЭлементыФормы.Доплаты.ТекущиеДанные.ОтрабДней;
НС.НормаДней = ЭлементыФормы.Доплаты.ТекущиеДанные.ОтрабДней;
КонецЕсли;
КонецЦикла;
НовДок.ПолучитьФорму().Открыть();
КонецПроцедуры
Показать
(9) ivnik, как всегда проблема не там, где ищете ))
Процедура Перегрузка()
НовДок = Документы.РегистрацияРазовыхНачисленийРаботниковОрганизаций.СоздатьДокумент();
НовДок.Организация=ЭлементыФормы.Организация.Значение;
НовДок.ПериодРегистрации=ПериодРегистрации;
Для Каждого ТекСтрока Из Доплаты Цикл // заполним табличную часть документа, из ТаблицыЗначений
Если ТекСтрока.СуммаПоОкладу > 0 Тогда
НС=НовДок.ОсновныеНачисления.Добавить();
НС.Авторасчет=Истина;
НС.Сотрудник = ТекСтрока.Сотрудник;
НС.ВидРасчета = ВР1;
НС.ПодразделениеОрганизации = ТекСтрока.Сотрудник.ПодразделениеОрганизации;
НС.Показатель1 = ТекСтрока.СуммаПоОкладу;
НС.Результат = ТекСтрока.СуммаПоОкладу;
НС.ДатаНачала = ТекСтрока.ДатаНачала;
НС.ДатаНачалаСобытия = ТекСтрока.ДатаНачала;
НС.ДатаОкончания = ТекСтрока.ДатаОкончания;
НС.ОплаченоДнейЧасов = ТекСтрока.ОтрабДней;
НС.НормаДней = ТекСтрока.ОтрабДней;
КонецЕсли;
КонецЦикла;
НовДок.ПолучитьФорму().Открыть();
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот