|
КАк в запросе обратиться к документам двух видов |
☑ |
0
suvolod
13.12.12
✎
08:25
|
Берем простейший запрос:
ВЫБРАТЬ
ОтчетКомитентуОПродажахТовары.Номенклатура
ИЗ
Документ.ОтчетКомитентуОПродажах.Товары КАК ОтчетКомитентуОПродажахТовары
ГДЕ
ОтчетКомитентуОПродажахТовары.Ссылка = &Ссылка
Проблема - запрос может формироваться не только по документу ОтчетОРозничныхПродажах, но и РеализацияТоваровУслуг. Названия и ТЧ, и тех полей, которые мне нужно выбрать, в этих документах совпадают. Можно каким-то образом написать универсальный вариант запроса, чтобы он выбирал данные из ТЧ Товары по любому из двух документов.
В голову приходит только проверять ТипЗнч(Док), а затем парсить текст запроса: через СтрЗаменить менять одно название документа на другое... Но, может быть, есть способ проще?
|
|
1
Галахад
гуру
13.12.12
✎
08:27
|
ВЫБРАТЬ
Док.Номенклатура
ИЗ
Документ."+ТипДок+".Товары КАК Док
ГДЕ
Док.Ссылка = &Ссылка
|
|
2
kible
13.12.12
✎
08:28
|
(0) Объединить?
|
|
3
suvolod
13.12.12
✎
08:32
|
(1) Увы, это тоже подмена, да еще такая, после которой конструктор перестанет работать
(2) Объединить - это писать дубль запроса по каждому документу (а он на самом деле не ограничивается отбором только номенклатуры), да еще подставлять в качестве ссылки некорректную (например, на подзапрос по Отчету о розничных продажах - ссылку на РТиУ)
|
|
4
Живой Ископаемый
13.12.12
✎
08:33
|
не надо писать запросы к ТЧ. для того чтобы унифицировать данные из документов имеющих разные наборы полей и ТЧ придумали регистры.
|
|
5
Повелитель
13.12.12
✎
08:33
|
ВЫБРАТЬ
ОтчетКомитентуОПродажахТовары.Номенклатура
ИЗ
Документ.ОтчетКомитентуОПродажах.Товары КАК ОтчетКомитентуОПродажахТовары
ГДЕ
ОтчетКомитентуОПродажахТовары.Ссылка = &Ссылка
Ну так же оставь, чтобы конструктор работал.
А внизу напиши.
Запрос.Текст = СтрЗаменить(Запрос.Текст,"Документ.ОтчетКомитентуОПродажах","НужныйДокумент")
|
|
6
suvolod
13.12.12
✎
08:36
|
(4). Привет, Живой ископаемый :). Запросы к ТЧ иногда нужно писать. В моем случае - чтобы проверить что количество списываемого документом товара не превышает остаток.
(5). Я это об этом способе уже упоминал в (0). ни на что не претендую... просто думал, вдруг есть способ изящнее. Вот и запостил ветку
|
|
7
suvolod
13.12.12
✎
08:46
|
ладно.. раз больше никто не пишет, значит, других вариантов нет.
|
|
8
Живой Ископаемый
13.12.12
✎
15:16
|
2(6) И что, есть шансы что при списывании товара ты можешь не знать каким документом это делаешь?
|
|