Имя: Пароль:
1C
1С v8
Номер строки из двух табличных частей в запросе
0 AnisaL
 
27.09.18
14:01
Добрый день!
Подскажите, пож-ста, в документе 2 таб части: работы и товары; в каждой своя нумерация. Как написать запрос, чтобы в одну таблицу вывести строки этих двух таб частей, при этом чтобы номер строки продолжился ?
1 Cyberhawk
 
27.09.18
14:02
Объединить + постобработка
2 Cyberhawk
 
27.09.18
14:02
Ну или сначала максимум по номеру строки выбираешь в ВТ, далее прибавляешь его
3 AnisaL
 
27.09.18
14:03
(1) а какая постобработка? в запросе?
4 AnisaL
 
27.09.18
14:06
(1) не в запросе значит
5 Cyberhawk
 
27.09.18
14:07
Постобработка результата запроса. Кодом.
6 AnisaL
 
27.09.18
14:11
(5) понятно, спасибо
7 AnisaL
 
27.09.18
14:19
(5) а объединить как, как левое соединение?
8 Mankubus
 
27.09.18
14:24
(7) нет. для объединения есть ОБЪЕДИНЕНИЕ
9 AnisaL
 
27.09.18
14:27
(8) ок спасибо
10 AnisaL
 
27.09.18
15:33
А можно как-то сделать, чтобы, после объединения сохранился порядок строк, как в документе?
11 AnisaL
 
27.09.18
15:34
(10) + после объединения таблиц в одну, получилось, что строки выводятся без порядка
12 AnisaL
 
27.09.18
15:39
(11) + номера строк не как в документе
13 Cyberhawk
 
27.09.18
15:49
Упорядочить по двум полям: номер строки ТЧ документа 1 и номер строки Тч документа 2
14 AnisaL
 
27.09.18
15:52
(13) + документ то один же
15 azernot
 
27.09.18
15:59
ВЫБРАТЬ
    Товары.НомерСтроки КАК НомерСтроки,
    Товары.Номенклатура КАК Номенклатура,
    Товары.Количество КАК Количество
ИЗ
    Документ.ТоварыРаботы.Товары КАК Товары
ГДЕ
    Товары.Ссылка = &Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ЕСТЬNULL(МаксимальныйНомерТЧТовары.НомерСтроки, 0) + Работы.НомерСтроки,
    Работы.Работа,
    Работы.Количество
ИЗ
    Документ.ТоварыРаботы.Работы КАК Работы
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            МАКСИМУМ(Товары.НомерСтроки) КАК НомерСтроки
        ИЗ
            Документ.ТоварыРаботы.Товары КАК Товары
        ГДЕ
            Товары.Ссылка = &Ссылка) КАК МаксимальныйНомерТЧТовары
        ПО (ИСТИНА)
ГДЕ
    Работы.Ссылка = &Ссылка
16 AnisaL
 
27.09.18
16:07
(15) спасибо большое, попробую
17 AnisaL
 
27.09.18
16:24
(15) спасибо большое, получилось!
18 azernot
 
27.09.18
16:38
(17) Это решение тебе подсказывали в (2)
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший