Как табличную часть документа свернуть в одну строку

1. Hunta 16.03.15 16:11 Сейчас в теме
Здравствуйте!
Подскажите пожалуйста как можно свернуть в типовых правилах обмена ТиС 9.2 -> Бухгалтерия 3.0
табличную часть документа, чтобы не таскать номенклатуру.
Грубо говоря чтобы табличная часть в Бух 3.0 выглядела:
Товар Сумма

Заранее большое спасибо!
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. GunnyBear 3 16.03.15 17:00 Сейчас в теме
в правилах конвертации объекта, в обработчике после загрузке сверни таб часть по своему усмотрению
3. Hunta 16.03.15 18:11 Сейчас в теме
(2) GunnyBear, в том то и проблема не знаю как.
Не могли бы привести рабочий кусок кода по свертке строк?
4. Hunta 16.03.15 18:50 Сейчас в теме
Помогите пожалуйста! Хотелось бы самому освоить конвертацию.
Ещё заметил не встают проводки в документе Поступление Товаров и Услуг. В торговле проводки заполнены.
5. nipil 16.03.15 19:22 Сейчас в теме
Правильно сформулированный вопрос это 80% ответа.

табличная часть в Бух 3.0

Какая?
6. Hunta 16.03.15 20:36 Сейчас в теме
Ок(5) nipil, ок сейчас попробую более подробно описать вопрос.
В Бух 3.0 документ Поступление Товаров и Услуг все реквизиты в шапке заполняются, кроме Способа зачета аванса. Надо открывать по ссылке окно и отмечать флажок к примеру "Авто".
Табличная часть "Товары" заполнена товарами из ТиС 9.2, столбцы тоже заполнены, кроме "Счет учета" и "Счет НДС".
Как можно свернуть табличную часть "Товары"? И чтобы заполнялись "Счет Учета".

Сразу прошу прощения на чайниковские вопросы, буду очень благодарен за помощь.
8. nipil 16.03.15 23:36 Сейчас в теме
(6) Hunta,
И чтобы заполнялись "Счет Учета"

1. Каким значением?
В БП СчетУчета заполняется значением из РегистраСведений.СчетаУчетаНоменклатуры при выборе номенклатуры.

свернуть в одну строку

2. Какое значение должно быть в колонке "Товары"?

в правилах конвертации объекта, в обработчике после загрузке сверни таб часть по своему усмотрению

ПКО_ПоступлениеТоваровУслуг_ПослеЗагрузкиОбъекта
// ПКО_ПоступлениеТоваровУслуг_ПослеЗагрузкиОбъекта
// НаименованиеТовараДляПодстановки = "##Свернуто Из УТ";
// ТоварДляПодстановки = Справочники.Номенклатура.НайтиПоНаименованию(НаименованиеТовараДляПодстановки );
// Если ТоварДляПодстановки.Пустая() Тогда
//     ТоварДляПодстановки = Справочники.Номенклатура.СоздатьЭлемент();
//     ТоварДляПодстановки.Наименование = НаименованиеТовараДляПодстановки;
//     ТоварДляПодстановки.Записать();
// КонецЕсли; 
// Параметры.Вставить("УстановленныйТоварДляПодстановки",ТоварДляПодстановки);
// 
// УстановленныйСчетУчета = <Код для установки требуемого значения>
// Например
// УстановленныйСчетУчета = ПланыСчетов.Хозрасчетный.ТоварыНаСкладах;
//
// Параметры.Вставить("УстановленныйСчетУчета",УстановленныйСчетУчета );

ТабличнаяЧастьТовары = Объект.Товары;
Если ТабличнаяЧастьТовары.Количество() <> 0 Тогда
     ТабличнаяЧастьТовары.Свернуть("СчетУчета","Сумма");
     ТабличнаяЧастьТовары[0].Товар = // <Значение из пункта 2>; // Или Параметры.УстановленныйТоварДляПодстановки
     ТабличнаяЧастьТовары[0].СчетУчета = // <Значение из пункта 1>; // Или Параметры.УстановленныйСчетУчета
КонецЕсли;
Показать


Должно получится
9. Hunta 17.03.15 12:43 Сейчас в теме
(8) nipil, спасибо большое за развернутый ответ.
2. Какое значение должно быть в колонке "Товары"?

 ТабличнаяЧастьТовары.Свернуть("СчетУчета","Сумма");


Если я правильно понял, свернется по колонке СчетУчета, одиноковые счета сгруппируются?
Может просто я это момент немного не так описал.
Я это вижу следующим образом. В Бух создается товар с Наименованием к примеру "Товар из ТИС" и при импорте этот товар подставляется в табличную часть "Товары", а сумма табличной части складывается.
Т.е. чтобы табличная часть выглядела:
"Товар из ТИС" "Сумма" "СчетУчета"
11. kasper076 105 17.03.15 15:51 Сейчас в теме
(8) nipil, номенклатура-то у него вся перенесется.
(1) Hunta, для ПКГС "Товары" документа "ПоступлениеТоваровУслуг" установи флажок "Получить из входящих данных". В обработчике "Перед выгрузкой" ПВД "ПоступлениеТоваровУслуг":
Товары = Новый ТаблицаЗначений;
Товары.Колонки.Добавить("Номенклатура");
Товары.Колонки.Добавить("Количество");
Товары.Колонки.Добавить("Сумма");

НоваяСтрока = Товары.Добавить();
НоваяСтрока.Номенклатура = Новый Структура("Код", "КодТовара");
НоваяСтрока.Количество = 0;
НоваяСтрока.Сумма = 0;

ИсходящиеДанные  = Новый Структура("Товары", Товары);

Показать

При этом у ПКО "Номенклатура" должно быть одно поле поиска "Код".
SkyHunter; +1 Ответить
12. Hunta 18.03.15 11:42 Сейчас в теме
(11) kasper076, спасибо все проделал, но при открытии в ТиС 9.2 выдает ошибку, ругается на
Товары = Новый ТаблицаЗначений;

Я так понимаю потому что это не на языке 7.7.
Если я правильно понял в условии "Перед выгрузкой" если это происходит из 7.7 то оно должно быть составлено на языке платформы 7.7 ?
Ведь я потом сохраняю не только правила, но и модуль обработки, который потом вставляю в модуль стандартной выгрузки.
Т.е. получается мне можно в условиях "Перед выгрузкой" подготовить данные на языке 7.7 ? Или все же в Конвертации все пишется на языке платформы 8 ?
Прошу не ругать сильно, по справке делаю, но там вроде все описывается для платформы 8, а именно из 7.7 в 8 пока не нашел, поэтому и такие вопросы задаю.
13. kasper076 105 18.03.15 12:12 Сейчас в теме
(12) Hunta, все верно. Приведенный пример нужно переписать в формате 7.7, т.к. эта часть выполняется при выгрузке в базе 7.7.
14. nipil 18.03.15 12:22 Сейчас в теме
(12) Hunta,
 Товары = СоздатьОбъект("ТаблицаЗначений");
Все процедуры которые выполняются на стороне Источника (V7.7)- должны быть написаны в версии кода источника.
Посмотри примеры в Справке: "Информация об обработчиках" "Обработчики "Правила конвертации группы свойств" " "Перед обработкой".
Или ответ в смежной теме
7. artfa 59 16.03.15 23:07 Сейчас в теме
Способ зачета авансов можно установить принудительно до или после загрузки объекта.
Свернуть таблицу можно в обработчика перед выгрузкой объекта и передать её в таб часть через входящие данные.
Счёта учёта можно установить по умолчанию, не помню конкретно процедуры в общих модулях БП, посмотрите типовые правила обмена, там обращение к этим процедурам запрятано глубоко в алгоритмах.
10. nipil 17.03.15 14:57 Сейчас в теме
Приведенный код - это набросок реализации алгоритма свертки ТЧ уже в базе БП.
Нет проверок на корректность и заполненность значений.

Допущения:
В файле выгрузки из УТ присутствуют необходимые данные для заполнения ТЧ документа ПоступлениеТоваровУслуг.

При заполнении документа ПоступлениеТоваровУслуг в базе БП Значения строк колонки "СчетУчета" - пустое. И соответственно после свертки все строки ТЧ заменяться одной строкой с просуммированным значением в колонке "Сумма". (Это утверждение еще не проверил. Буду на рабочем месте к ночи)

Методология в общем не правильная. Если не требуется учет номенклатуры в БП, необходимо переработать правила выгрузки таким образом, чтобы в файле выгрузки получался требуемый набор данных. Например в ПКО_ПоступлениеТоваровУслуг Изменить ПКГС_Товары ..
Свернуть таблицу можно в обработчика перед выгрузкой объекта и передать её в таб часть через входящие данные.
как вариант.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот