Имя: Пароль:
1C
1С v8
Как Таблицу значений преобразовать в другой вид
0 Гуслица
 
26.05.17
20:38
Как Таблицу значений  - так сказать переложить строки в столбцы

Есть ТаблицаЗначений - ТЗ1 в таком виде:

ЛС / Счетчик / Показания /
01 /В201     / 100       /
01 /В231     / 400       /
02 /В211     / 50        /
03 /В241     / 60        /


Вопрос:
Как его преобразовать в другой вид:
ЛС / Счетчик1 / Показания1 /Счетчик2 / Показания2 /
01 / В201     /100         / В231    / 400        /
02 / В211     / 50         /         /            /
03 / В241     /60          /         /            /
1 Лефмихалыч
 
26.05.17
20:42
зачем это делать в запросе? Сделай ИТОГИ ПО ЛицевойСчет и делай это при обходе.
2 Гуслица
 
26.05.17
20:45
(1) да ты прав, но таблица уже получена и дальше с ней нужно работать
3 Лефмихалыч
 
26.05.17
20:48
ВЫБРАТЬ
  Т.ЛицевойСчет,
  Максимум(Т.Счетчик) как Счетчик
ПОМЕСТИТЬ ВТ1
ИЗ ИсходнаяТаблица КАК Т
СГРУППИРОВАТЬ ПО Т.ЛицевойСчет;
Выбрать
ВТ1.ЛицевойСчет,
ВТ1.Счетчик,
Т.Счетчик как Счетчик2
ПОМЕСТИТЬ ВТ2
ИЗ ВТ1
ЛЕВОЕ СОЕДИНЕНИЕ ИсходнаяТаблица как Т
ПО ВТ1.ЛицевойСчет = Т.ЛицевойСчет и ВТ1.Счетчик <> Т.Счетчик;
ВЫБРАТЬ
ВТ1.ЛицевойСчет
ВТ1.Счетчик,
Т1.Показания,
Вт1.Счетчик2,
Т2.Показания
ЛЕВОЕ СОЕДИНЕНИЕ ИсходнаяТаблица как Т1
ПО ВТ1.ЛицевойСчет = Т1.ЛицевойСчет и ВТ1.Счетчик = Т1.Счетчик
ЛЕВОЕ Соединение ИсходнаяТаблица как Т2
ПО ВТ1.ЛицевойСчет = Т2.ЛицевойСчет и ВТ1.Счетчик2=Т2.Счетчик
4 Лефмихалыч
 
26.05.17
20:49
но это тупо, громоздко и бессмысленно
5 Юрий Лазаренко
 
26.05.17
21:15
СКД должна справиться
6 корум
 
26.05.17
22:08
Классический пример "поворот матрицы".

Навскидку из гугля

http://www.programmersforum.ru/showthread.php?t=35450
7 Franchiser
 
гуру
27.05.17
01:07
использовать внешнюю компоненту
8 Смотрящий
 
27.05.17
08:11
(6) +1. Транспонировать ее и все
9 МихаилМ
 
27.05.17
10:09