Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 16:23

Объединение дублей в табличной части

Автор СарбуковМихаил, 26 мая 2017, 14:30

0 Пользователей и 1 гость просматривают эту тему.

СарбуковМихаил

Здравствуйте,уважаемые товарищи программисты. Вкратце опишу ситуацию: у меня есть таблица - реестр документов, свернутая по требуемым полям:
ТЧ.Свернуть("НомерЗаявки, НомерЗаказа, Организация, Контрагент,СтавкаНДС","Сумма, СуммаНДС");

Мне надо что бы для каждой пары Организация+Контрагент создавалась платежка. Подскажите пожалуйста, каким образом это можно осуществить.

ilyay

Можно запросом "выбрать Различные Организация, Контрагент" - данные либо из базы по ссылке, либо через параметр. Если чисто программно, тогда можно отсортировать по этим двум полям, а дальше в цикле тривиально проверять, что эта строка отличается от предыдущей.

alex0402

Для каждого тСтрока Из ТЧ Цикл

    НовыйДокумент = Документы.Имя.СоздатьНовыйДокумент();
    НовыйДокумент.Заполнить(тСтрока);
    //НовыйДокумент.ИмяРеквизита = .... дозаполнить
    НовыйДокумент.Записать();

КонецЦикла
Спасибо за Сказать спасибо

LexaK

запрос работает с данными, записанными на сервере или в него таблицу опять же надо передавать
и то и другое не оптимально в вашем случае.

план действий такой

1.делаете копию вашей ТЧ только по колонкам Организация и контрагент
2.сворачиваете ее, как вы писали выше
3.обходите эту таблицу по строчкам в цикле (Для Каждого ... Из ...)
4.заполняете структуру с полями Организация и Контрагент
5.в вашей ТЧ находите строки по структуре ТЧ.НайтиСтроки(Структура...)
6.на основании найденных строк, формируете документ(ы)

всего строчек 10-15 кода

если помогло нажмите: Спасибо!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск