|
Временные таблицы | ☑ | ||
---|---|---|---|---|
0
3axap_4
02.07.13
✎
17:01
|
Добрый!
Имеется запрос (отбирающим поля документов типа ссылка) в котором по мере выполнения создаются временные таблицы, на одном из этапов нужно посчитать количество записей в табличной части документа, конструктор ругается о том что нельзя работать с полями нескольких вложенных таблиц. Как дальше жить? что посоветуете? |
|||
1
Fragster
гуру
02.07.13
✎
17:04
|
не юзать основную таблицу, юзать таблицу табличной части
|
|||
2
Fragster
гуру
02.07.13
✎
17:04
|
временный таблицы не причем
|
|||
3
3axap_4
02.07.13
✎
17:07
|
(2) в смысле? например есть документ Счет у него табличная часть "Товары", в первом пакете я отобрал Ссылку на документ, в следующем мне нужно проверить количество записей в таблице "Товары" я пытаюсь сделать обращение вида "ВремТабл.Ссылка.Товары" и получаю ерор
|
|||
4
Maxus43
02.07.13
✎
17:10
|
(3)
ВЫБРАТЬ ПлатежноеПоручениеИсходящее.Ссылка ПОМЕСТИТЬ втДокументы ИЗ Документ.ПлатежноеПоручениеИсходящее КАК ПлатежноеПоручениеИсходящее ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ втДокументы.Ссылка, КОЛИЧЕСТВО(ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.Ссылка) КАК Количество ИЗ втДокументы КАК втДокументы ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПлатежноеПоручениеИсходящее.РасшифровкаПлатежа КАК ПлатежноеПоручениеИсходящееРасшифровкаПлатежа ПО втДокументы.Ссылка = ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.Ссылка СГРУППИРОВАТЬ ПО втДокументы.Ссылка |
|||
5
3axap_4
02.07.13
✎
17:12
|
(4) проблема осложняется тем что запрос формируется динамически и включает в себя 20 типов документов, из которых меня интересует табличная часть только одного
|
|||
6
3axap_4
02.07.13
✎
17:13
|
ссылки документов 20 типов дописываются друг за другом используя соответственно "ОБЪЕДИНИТЬ ВСЕ" на остальные типы документов я уже наложил условия затык приключился с попыткой обработать табл часть...
|
|||
7
Maxus43
02.07.13
✎
17:14
|
ну ОБЪЕДЕНИТЬ ВСЁ
и свой запрос с количеством по нужному доку подсунь. я хз что за задача |
|||
8
3axap_4
02.07.13
✎
17:21
|
(7) так разное количество полей же, табличные части не у всех есть, да и тягать не нужные значения... другого пути нет?
|
|||
9
Maxus43
02.07.13
✎
17:23
|
(8) я говорю что только к своему нужному доку приделай подсчет, а не ко всем. Полей разное - конечно, а как ты хочешь видеть результат вобще?
|
|||
10
3axap_4
02.07.13
✎
17:25
|
(9) результат это набор ссылок на документы которые не прошли условия отбора
|
|||
11
hhhh
02.07.13
✎
17:25
|
(8) лучше наоборот берите. Табличную часть, а ней берите ссылку на документ
Тавары.Ссылка |
|||
12
Maxus43
02.07.13
✎
17:26
|
(10) при чем тут таб часть?
короче, у тебя в ОБЪЕДЕНИТЬ ВСЁ запросы к разным докам, кот мешает (4) впихнуть туда, + не тягать в общую выборку тогда поле количсетво а просто условие ИМЕЮЩИЕ использовать |
|||
13
3axap_4
02.07.13
✎
17:31
|
(12) в (4) формируется временная таблица вложенный запрос неполучится сделать с временной таблицей
|
|||
14
Maxus43
02.07.13
✎
17:32
|
(13) к временной таблице присоедини вложенный потом... в чем проблема?
|
|||
15
3axap_4
02.07.13
✎
17:33
|
(14) кажется понял о чем ты сейчас попробую
|
|||
16
3axap_4
03.07.13
✎
09:36
|
(14) Сделал следс образом
|; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Табл.Ссылка |ПОМЕСТИТЬ ТаблицаПроведенных |ИЗ | Табл КАК Табл | ЛЕВОЕ СОЕДИНЕНИЕ Документ.НужныйДокумент.ТабЧасть КАК НужныйДокументТабЧасть | ПО (ВЫБОР | КОГДА Табл.Ссылка ССЫЛКА Документ.НужныйДокумент | ТОГДА НужныйДокументТабЧасть.Ссылка = Табл.Ссылка | И НужныйДокументТабЧасть.НомерСтроки = 1 | ИНАЧЕ ЛОЖЬ | КОНЕЦ) | |ГДЕ | ВЫБОР ............Список условий для других типов документов | КОГДА Табл.Ссылка ССЫЛКА Документ.НужныйДокумент | ТОГДА Табл.Ссылка.ОтражатьВУчете | И НЕ (НужныйДокументТабЧасть.Ссылка ЕСТЬ NULL) ...................... | Конец |СГРУППИРОВАТЬ ПО | Табл.Ссылка теперь проблема, при условии на ЕСТЬNULL запрос просто зависает прбывал и просто в секции ГДЕ разместить после ВЫБОРА, результат один, убираешь ЕСТЬNULL работает но нужно же проверить количество.... что делать? |
|||
17
cw014
03.07.13
✎
10:03
|
Странный запрос. При этом выбираются только значения из "Табл.Ссылка"...
А так не пробовал? ВЫБРАТЬ НужныйДокументТабЧасть.Ссылка КАК Ссылка, НужныйДокументТабЧасть.* ИЗ Документ.НужныйДокумент.ТабЧасть КАК НужныйДокументТабЧасть ГДЕ НужныйДокументТабЧасть.Ссылка В (ВЫБРАТЬ Табл.Ссылка ИЗ Табл КАК Табл) И НужныйДокументТабЧасть.НомерСтроки = 1 |
|||
18
3axap_4
03.07.13
✎
10:07
|
(17) мне требуется просто проверить пустая таб часть или нет сама информация из документа мне не нужна, это часть запроса итог - формирование временной таблицы состоящей из ссылок документов нескольких типов которые проидут по условиям которые описаны в секции ВЫБОР КОГДА
|
|||
19
cw014
03.07.13
✎
10:10
|
(18) ЛЕВОЕ СОЕДИНЕНИЕ при наличии ГДЕ автоматом превращается во ВНУТРЕННЕЕ
|
|||
20
3axap_4
03.07.13
✎
10:16
|
(19) А так пойдет?
ВЫБРАТЬ Табл.Ссылка ИЗ Табл КАК Табл ГДЕ НужныйДокументТабЧасть.Ссылка В (ВЫБРАТЬ НужныйДокументТабЧасть.Ссылка КАК Ссылка ИЗ Документ.НужныйДокумент.ТабЧасть КАК НужныйДокументТабЧасть) И НужныйДокументТабЧасть.НомерСтроки = 1 |
|||
21
3axap_4
03.07.13
✎
11:57
|
Сделал в запросе формирования первой временной таблицы доп условие на нужный документ которое сразу отбирает нужные ссылки по функции ИМЕЮЩИЕ
Все ок спасибо всем кто пытался помочь!! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |