Имя: Пароль:
1C
1С v8
Необходимо свернуть Таблицу Значений
,
0 ХорошийОтвет
 
02.07.18
21:54
Имеется следующая таблица
Контрагент  Контактное лицо
ИП 1        Смирнов
ИП 1        Григорьев
ИП 1        Иванов
ИП 2        Андропов
ИП 2        Бегунов


Вот что необходимо получить на выходе
Контрагент  Контактное лицо
ИП 1        Смирнов
ИП 2        Андропов

Как её свернуть по контрагенту?
1 runoff_runoff
 
02.07.18
22:21
без цикла не обойтись
2 runoff_runoff
 
02.07.18
22:21
если 7.7
3 МихаилМ
 
02.07.18
22:21
необходимая табла =  следующая таблица.СкопироватьКолонки();  
текКонтент = неопределено
для каждого стр из следующая таблица цикл
если стр.Контрагент  <> текКонтент тогда
  ЗаполнитьЗначенияСвойств(необходимая табла.Добавить,Стр);

  текКонтент = стр.Контрагент
конецесли;
конеццикла;
4 ssh2006
 
02.07.18
22:24
Т2 = Т1.Свернуть("Контрагент");
Для Каждого ТекСтрока Из Т2 Цикл

    НайденныеСтроки = Т1.НайтиСтроки(Новый Структура("Контрагент", ТекСтрока.Контрагент));
    Для Индекс = 1 По НайденныеСтроки.ВГраница() Цикл
        Т1.УдалитьСтроку(НайденныеСтроки[Индекс]);
    КонецЦикла

КонецЦикла;
5 ssh2006
 
02.07.18
22:26
**
Т2 = Т1.Скопировать(,"Контрагент");
Т2.Свернуть("Контрагент");
6 Сияющий в темноте
 
02.07.18
22:42
Хороша свертка,взяли первый,а остальные пушистому домашнему животному под хвост?
7 ShAV
 
03.07.18
00:07
(6) о том же мысль промелькнула
8 PR
 
03.07.18
00:10
(0) Не свернуть, а обрезать
9 ХорошийОтвет
 
03.07.18
00:32
(4) Спасибо, помогло.
10 Chameleon1980
 
03.07.18
02:54
а запросом не пойдет чель?
11 Chameleon1980
 
03.07.18
02:54
ИМХО эелегантнее
12 Chameleon1980
 
03.07.18
02:56
хотя тоже обход. ну и  4 пойдет
13 mistеr
 
03.07.18
08:37
(11) Что элегантного в напряжении сети и скуля почем зря?
14 Мандалай
 
03.07.18
08:50
Напрягать скуль кошернее клиента
15 mistеr
 
03.07.18
09:05
(14) Это надо было делать, пока данные были там. А теперь цже поздно.
16 Малыш Джон
 
03.07.18
09:07
(15) кстати, да, это самый элегантный способ - получать таблицу сразу в нужном виде)
17 novichok79
 
03.07.18
09:12
(0) если запросом, то выбрать из таблицы контактных лиц контрагентов минимум ссылки и сгруппировать это дело по владельцу, но не гарантируется очередность, т. к. будет взято самое древнее КЛ, вне зависимости от ФИО. если ТЗ, то (3)
18 СвинТуз
 
03.07.18
09:19
мКоличество=тз.Количество()+1;
Контра=Неопределено; Пред=Неопределено;
Для ии=0 По мКоличество Цикл

    Инд=мКоличество-ии;
    Если тз[Инд].Контрагент<>Контра Тогда
        Контра=тз[Инд].Контрагент;
        Пред=инд;
    Иначе
        Если Пред<>Неопределено Тогда
            тз.Удалить(Пред);
        КонецЕсли;
    КонецЕсли;
КонецЦикла;
19 Eiffil123
 
03.07.18
09:56
(14) уже 2018 год. Весь код работы с таблицами значений на сервере давно крутится.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан