Есть простой запрос:
ТекстЗП_ПЛ = "
|SELECT
| TMP.Водитель AS Водитель,
| TMP.DATE_TIME_IDDOC AS DATE_TIME_IDDOC,
| TMP.НомерСтроки AS НомерСтроки,
| TMP.Разв AS Разв,
| TMP.Автор AS [Автор $Справочник.Пользователи],
| TMP.ID AS ID,
| TMP.Документ AS Документ,
| TMP.Документ_вид AS Документ_вид,
| TMP.КвоЗак AS КвоЗак,
| TMP.СуммаЗак AS СуммаЗак,
| TMP.СтатусДок AS СтатусДок,
| TMP.ВидДок AS ВидДок,
| TMP.ДатаДок AS ДатаДок,
| TMP.Время AS Время,
| TMP.НомерДок AS НомерДок,
| TMP.Водитель AS Водитель,
| TMP._Экспедитор AS _Экспедитор,
| TMP.Улица AS Улица
|FROM(
|SELECT
| 0 AS Разв,
| 0 AS НомерСтроки,
| TPL.IDDOC+'0' AS ID,
| TPL.DATE_TIME_IDDOC AS DATE_TIME_IDDOC,
| TPL.IDDOC AS Документ,
| TPL.IDDOCDEF AS Документ_вид,
| TPL.Проведен + TPL.ПометкаНаУдаление*2+1 AS СтатусДок,
| TPL._ПредставлениеВидДок AS ВидДок,
| TPL.ДатаДок AS ДатаДок,
| TPL.ВремяДок AS Время,
| TPL.НомерДок AS НомерДок,
| Tsotr.Наименование AS Водитель,
| '' AS Улица,
| TPL._Экспедитор AS _Экспедитор,
| (SELECT
| SUM(Tzak.СуммаГРН)
| FROM Документ_Заказ AS Tzak (NOLOCK)
| WHERE
| Tzak.IDDOC IN (SELECT TPL3.Заказ FROM ДокументСтроки_ПутевойЛист AS TPL3 (NOLOCK) WHERE TPL3.IDDOC = TPL.IDDOC)
| ) AS СуммаЗак,
| (SELECT
| COUNT(Tzak.IDDOC)
| FROM Документ_Заказ AS Tzak (NOLOCK)
| WHERE
| Tzak.IDDOC IN (SELECT TPL3.Заказ FROM ДокументСтроки_ПутевойЛист AS TPL3 (NOLOCK) WHERE TPL3.IDDOC = TPL.IDDOC)
| ) AS КвоЗак,
| TPL.Автор AS Автор
|FROM
| Документ_ПутевойЛист AS TPL (NOLOCK)
| LEFT OUTER JOIN Справочник_Сотрудники AS Tsotr (NOLOCK) ON (Tsotr.ID = TPL.Водитель)
|WHERE
| TPL.DATE_TIME_IDDOC BETWEEN '20090914' AND '20090914Z'
|
|UNION ALL
|
|SELECT
| 1 AS Разв,
| TPL.НомерСтроки AS НомерСтроки,
| TPL.IDDOC+CAST(TPL.НомерСтроки AS Char(4)) AS ID,
| TPL_Sh.DATE_TIME_IDDOC AS DATE_TIME_IDDOC,
| T_Zak.IDDOC AS Документ,
| T_Zak.IDDOCDEF AS Документ_вид,
| T_Zak.Проведен + T_Zak.ПометкаНаУдаление*2 + 1 AS СтатусДок,
| T_Zak._ПредставлениеВидДок AS ВидДок,
| T_Zak.ДатаДок AS ДатаДок,
| T_Zak.ВремяДок AS Время,
| T_Zak.НомерДок AS НомерДок,
| Tsotr.Наименование AS Водитель,
| TUl.Наименование AS Улица,
| TPL_Sh._Экспедитор AS _Экспедитор,
| (SELECT
| SUM(Tzak.СуммаГРН)
| FROM Документ_Заказ AS Tzak (NOLOCK)
| WHERE
| Tzak.IDDOC = TPL.Заказ
| ) AS СуммаЗак,
| 1 AS КвоЗак,
| TPL_Sh.Автор AS Автор
|FROM
| ДокументСтроки_ПутевойЛист AS TPL (NOLOCK)
| INNER JOIN Документ_ПутевойЛист AS TPL_Sh (NOLOCK) ON (TPL_Sh.IDDOC = TPL.IDDOC)
| LEFT OUTER JOIN Справочник_Сотрудники AS Tsotr (NOLOCK) ON (Tsotr.ID = TPL_Sh.Водитель)
| INNER JOIN Документ_Заказ AS T_Zak (NOLOCK) ON (T_Zak.IDDOC = TPL.Заказ)
| LEFT OUTER JOIN Справочник_Доставка_Улица AS TUl (NOLOCK) ON (TUl.ID = T_Zak.Улица)
|WHERE
| TPL_Sh.DATE_TIME_IDDOC BETWEEN '20090914' AND '20090914Z'
| AND TPL.IDDOC = ' 2SAD '
|) AS TMP";
Вроде все хорошо но есть глюк в том, что в колонках ТП данные перепутываются местами.