Есть запрос:
SELECT
ж.iddoc [План :Документ]
, ж.iddocdef [План_вид :ВидДокумента]
, ж.date [ДатаПлан :Дата]
, пс.lineno [НомерСтроки]
, пс.Продукция [Прод :Справочник.Номенклатура]
, пс.Спецификация [Спецификация :Неопределенный]
, пс.Конкретизация [Конкретизация :Справочник]
, пс.Количество
, жс.iddoc [Сопр :Документ]
, жс.iddocdef [Сопр_вид :ВидДокумента]
, жс.date [ДатаСопр :Дата]
, с.Количество [Кол :Число]
FROM [Журнал] ж
LEFT JOIN [Документ.План] ш ON ш.iddoc = ж.iddoc
LEFT JOIN [ДокументСтроки.План] пс ON пс.iddoc = ж.iddoc
LEFT JOIN [Журнал] жс ON пс.iddoc = SUBSTR(жс.ДокументОснование,5,9) AND жс.iddocdef = :ВидДокумента.СопроводительныйЛист
LEFT JOIN [Документ.СопроводительныйЛист] с ON с.iddoc = жс.iddoc AND пс.Продукция = с.Изделие AND SUBSTR(пс.Конкретизация, 5, 9) = с.Конфекция AND SUBSTR(пс.Спецификация, 3, 13) = с.Спецификация
WHERE ж.iddocdef = :ВидДокумента.План AND ж.closed = 1
Он дает, например, такие строки:
План | НомерСтроки | Сопр | Кол |
п1 | 1 | с1 | 10 |
п1 | 1 | с2 | |
п1 | 2 | с1 | |
п1 | 2 | с2 | 20 |
п1 | 3 | с1 | |
п1 | 3 | с2 | |
Хотелось бы получить следующее:
План | НомерСтроки | Сопр | Кол |
п1 | 1 | с1 | 10 |
п1 | 2 | с2 | 20 |
п1 | 3 | | |
Смысл:
в ПУБ есть документ План, добавлен самописный док СопрЛист.
Листы создаются к строке плана на основании плана.
Цель:
Получить список выданных сопроводительных плана (в примере к третьей строке сопр. еще не выдан).