|
Как в запросе проверить есть ли реквизит в регистраторе или нет? | ☑ | ||
---|---|---|---|---|
0
Shur1cIT
29.03.13
✎
14:27
|
до этого случая ставил проверку
ВЫБОР КОГДА ТИПЗНАЧЕНИЯ(ДвиженияДенежныхСредств.Регистратор) = ТИП(Документ.ПриходныйКассовыйОрдер) ИЛИ ТИПЗНАЧЕНИЯ(ДвиженияДенежныхСредств.Регистратор) = ТИП(Документ.РасходныйКассовыйОрдер) ТОГДА ДвиженияДенежныхСредств.Регистратор.Основание ИНАЧЕ ДвиженияДенежныхСредств.Регистратор.НазначениеПлатежа КОНЕЦ Но в данном случае регистраторов слишком много надо именно как-то проверить наличие реквизита |
|||
1
shamannk
29.03.13
✎
15:02
|
Проверяй в коде и меняй запрос.
|
|||
2
alexkr
29.03.13
✎
15:04
|
(1) ??? молодой человек, извольте изьяснится
|
|||
3
rs_trade
29.03.13
✎
15:05
|
(2) Динамический запрос.
|
|||
4
alexkr
29.03.13
✎
15:06
|
что есть динамический запрос я понимаю, но вопрос не о том, как запрос построить, а о том как в самом запросе проверить есть ли в регистратора определенной строки нужный реквизит
|
|||
5
rs_trade
29.03.13
✎
15:08
|
(4) никак.
|
|||
6
shamannk
29.03.13
✎
15:08
|
Если свойствоесть Тогда
Запрос = "А" Иначе Запроса = "Б" КонецЕсли. Можно и куски менять Заменить() |
|||
7
unkairosed
29.03.13
✎
15:10
|
Запрос.Текст =
"ВЫБРАТЬ | ВЫБОР | КОГДА ТИПЗНАЧЕНИЯ(ИмяРегистраОбороты.Регистратор) В (&Типы) | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ КАК Результат |ИЗ | РегистрНакопления.ИмяРегистра.Обороты(, , Регистратор, ) КАК ИмяРегистраОбороты"; Типы = Новый Массив; Типы.Добавить(Тип("ДокументСсылка.ИмяДокумента")); Запрос.УстановитьПараметр("Типы", Типы); |
|||
8
hhhh
29.03.13
✎
15:10
|
(2) так например
ДвиженияДенежныхСредств.Регистратор.Основание ЕСТЬ NULL |
|||
9
RomaH
naïve
29.03.13
✎
15:11
|
(0) а зачем проверять?
|
|||
10
rs_trade
29.03.13
✎
15:11
|
(8) Так надо проверить наличие реквизита Основание
|
|||
11
kosts
29.03.13
✎
15:11
|
Можно конечно "*" поставить, но что это даст...
|
|||
12
DimGan
29.03.13
✎
15:12
|
ЕстьNULL(ДвиженияДенежныхСредств.Регистратор.Основание, "Нету")
|
|||
13
RomaH
naïve
29.03.13
✎
15:12
|
если нужны несколько разных реквизитов в одно поле запроса
- объединение? |
|||
14
RomaH
naïve
29.03.13
✎
15:12
|
(10) зачем?
|
|||
15
rs_trade
29.03.13
✎
15:14
|
(14) у автора спроси. он это хочет.
|
|||
16
Shur1cIT
29.03.13
✎
15:16
|
В спасибо понял в параметр список видов документа кидаю
|
|||
17
alexkr
29.03.13
✎
15:17
|
(6) речь идет о том случае, когда в регистра несколько разных регистраторов, и все они в запросе должны обрабатываться, и в одно и то же поле беруться значения разных реквизитов.
(7) вот скорее всего такой вариант наиболее правильный. Но все равно приходится сравнивать списки типов документов, а проверить наличие реквизита походу никак... |
|||
18
RomaH
naïve
29.03.13
✎
15:21
|
ВЫБРАТЬ
Регистратор.Основание1 Из... ГДЕ Не Регистратор.Основание1 ЕСТЬ NULL ОБЪЕДИНИТЬ Регистратор.Основание2 ИЗ ... ГДЕ Не Регистратор.Основание2 ЕСТЬ NULL |
|||
19
Defender aka LINN
29.03.13
✎
15:40
|
(18) ППЦ. Захерачить кучу запросов вместо одного - это сильно. ВнушаетЪ.
(17) Дык если реквизиты разные - тут как хочешь извернись, а писать придется. |
|||
20
alexkr
29.03.13
✎
15:55
|
(19) увы
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |