|
Конвертация 2.0 Данные регистра сведений в документы | ☑ | ||
---|---|---|---|---|
0
Veronikin
24.09.20
✎
13:35
|
Подскажите, что я не так делаю?
Нужно из одинаковых конфигураций приемник и источник перегрузить данные - срез последних по регистру сведений в документ. В ПВД для этого документа ставлю произвольный алгоритм, отключить правило, выбирать одним запросом. В перед обработкой формирую ВыборкуДанных - таблица значений с колонками - реквизиты шапки и тч (в колонки с названием тч передаю таблицу значений, куда будет нужно ее загрузить). При загрузке у меня формируется документ только по данным первой строки выборки. Как обработать остальные строки? |
|||
1
Ёпрст
24.09.20
✎
13:37
|
Нам отсюда не видно твоё пвд и что ты там кодом написал
|
|||
2
ДенисЧ
24.09.20
✎
13:37
|
Какую ТЧ передал, такой документ и создаётся
|
|||
3
Veronikin
24.09.20
✎
15:26
|
(1) ПВД, перед обработкой:
ДатаРеорганизации = Константы.ДатаРеорганизации.Получить(); ВыборкаДанных = Новый ТаблицаЗначений; ВыборкаДанных.Колонки.Добавить("Организация"); ВыборкаДанных.Колонки.Добавить("ПодразделениеОрганизации"); ВыборкаДанных.Колонки.Добавить("Комментарий"); ВыборкаДанных.Колонки.Добавить("Ответственный"); ВыборкаДанных.Колонки.Добавить("КраткийСоставДокумента"); ВыборкаДанных.Колонки.Добавить("ОсновныеНачисления"); ВыборкаДанных.Колонки.Добавить("ДополнительныеНачисления"); ВыборкаДанных.Колонки.Добавить("ОсновныеНачисленияНакладные"); ВыборкаДанных.Колонки.Добавить("ДополнительныеНачисленияНакладные"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.Период, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.Регистратор КАК Регистратор, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.НомерСтроки, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.Активность, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.Сотрудник, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.Организация КАК Организация, | &НаДату КАК ДатаНачала, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.ВидРасчета, | ВЫБОР | КОГДА ТИПЗНАЧЕНИЯ(РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.ВидРасчета) = ТИП(ПланВидовРасчета.ОсновныеНачисленияОрганизаций) | ТОГДА ИСТИНА | ИНАЧЕ ЛОЖЬ | КОНЕЦ КАК Основной, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.ДокументОснование, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.НаправлениеЗатрат, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.ПодразделениеОрганизации КАК Подразделение, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.ВидПодразделения, | ВЫБОР | КОГДА РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.ПодразделениеОрганизации = ЗНАЧЕНИЕ(Справочник.ПодразделенияОрганизаций.ПустаяССылка) | ТОГДА РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.ВидПодразделения | ИНАЧЕ РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.ПодразделениеОрганизации | КОНЕЦ КАК ПодразделениеОрганизации, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.УдалитьФизЛицо, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.УдалитьПриказ, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.СпособОтраженияВБухучете, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.КодДоходаЕСН, | РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних.ОтнесениеРасходовКДеятельностиЕНВД |ИЗ | РегистрСведений.РеглУчетПлановыхНачисленийРаботниковОрганизаций.СрезПоследних(&НаДату,Организация = &Организация) КАК РеглУчетПлановыхНачисленийРаботниковОрганизацийСрезПоследних | |УПОРЯДОЧИТЬ ПО | Подразделение |ИТОГИ ПО | Организация, | ПодразделениеОрганизации"; Запрос.УстановитьПараметр("НаДату",КонецДня(ДатаРеорганизации)); Запрос.УстановитьПараметр("Организация",Параметры.Организация); ТаблицаОсновныеНачисления = Запрос.Выполнить().Выгрузить().СкопироватьКолонки(); ТаблицаДополнительныеНачисления = Запрос.Выполнить().Выгрузить().СкопироватьКолонки(); ТаблицаОсновныеНачисленияНакладные = Запрос.Выполнить().Выгрузить().СкопироватьКолонки(); ТаблицаДополнительныеНачисленияНакладные = Запрос.Выполнить().Выгрузить().СкопироватьКолонки(); ВыборкаПоОрганизациям = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Организация"); Пока ВыборкаПоОрганизациям.Следующий() Цикл Сообщить(ВыборкаПоОрганизациям.Организация); ВыборкаПоПодразделениям = ВыборкаПоОрганизациям.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "ПодразделениеОрганизации"); Пока ВыборкаПоПодразделениям.Следующий() Цикл Сообщить(ВыборкаПоПодразделениям.ПодразделениеОрганизации); НоваяЗапись = ВыборкаДанных.Добавить(); НоваяЗапись.Организация = ВыборкаПоПодразделениям.Организация; НоваяЗапись.ПодразделениеОрганизации = ВыборкаПоПодразделениям.ПодразделениеОрганизации; НоваяЗапись.Комментарий= ""; ТаблицаОсновныеНачисления.Очистить(); ТаблицаДополнительныеНачисления.Очистить(); ТаблицаОсновныеНачисленияНакладные.Очистить(); ТаблицаДополнительныеНачисленияНакладные.Очистить(); ВыборкаНачисления = ВыборкаПоПодразделениям.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, ""); Пока ВыборкаНачисления.Следующий() Цикл Если ВыборкаНачисления.Основной и ВыборкаНачисления.НаправлениеЗатрат = Перечисления.НазначениеСтатейЗатрат.Основные Тогда НоваяСтрока = ТаблицаОсновныеНачисления.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаНачисления); ИначеЕсли ВыборкаНачисления.Основной и Не ВыборкаНачисления.НаправлениеЗатрат = Перечисления.НазначениеСтатейЗатрат.Основные Тогда НоваяСтрока = ТаблицаОсновныеНачисленияНакладные.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаНачисления); ИначеЕсли НЕ ВыборкаНачисления.Основной и ВыборкаНачисления.НаправлениеЗатрат = Перечисления.НазначениеСтатейЗатрат.Основные Тогда НоваяСтрока = ТаблицаДополнительныеНачисления.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаНачисления); Иначе НоваяСтрока = ТаблицаДополнительныеНачисленияНакладные.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаНачисления); КонецЕсли; КонецЦикла; НоваяЗапись.ОсновныеНачисления = ТаблицаОсновныеНачисления.Скопировать(); НоваяЗапись.ДополнительныеНачисления = ТаблицаДополнительныеНачисления.Скопировать(); НоваяЗапись.ОсновныеНачисленияНакладные = ТаблицаОсновныеНачисления.Скопировать(); НоваяЗапись.ДополнительныеНачисленияНакладные = ТаблицаДополнительныеНачисления.Скопировать(); ВыгрузитьПоПравилу(,,НоваяЗапись,,"ВводСведенийОРеглУчетеНачисленийПодразделений"); КонецЦикла; КонецЦикла; Сообщить(ВыборкаДанных.Количество()); |
|||
4
Veronikin
24.09.20
✎
15:27
|
(1) Для ПКО конвертацию свойст поставила получить из внешних данных
|
|||
5
Йохохо
24.09.20
✎
15:45
|
ВыборкаНачисления = ВыборкаПоПодразделениям.Выбрать();
так? |
|||
6
Veronikin
24.09.20
✎
16:47
|
(5) Сама таблица правильно формируется, не выгружаются строки со 2ой в файл
|
|||
7
Ёпрст
24.09.20
✎
16:52
|
(6) дык передавай не НоваяЗапись, а всю табличку целиком в конце всех твоих циклов
|
|||
8
Veronikin
24.09.20
✎
18:24
|
(7) Проблема была в том, что при загрузке стоял поиск по номеру и дате, дата была одинаковая, а номер присваивался уже после записи. Добавила поиск по комментарию - все заработало.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |