![]() |
![]() |
![]() |
|
использование ЗНАЧЕНИЕ в запросе | ☑ | ||
---|---|---|---|---|
0
EugeneK
23.10.09
✎
22:17
|
С пятницей товарищи. А мне вот после пива не спиться, задачку решаю.
Есть такой чудесный оператор в запросе как ЗНАЧЕНИЕ, т.е. можно использовать его так Значение (Справочник.СтатьиЗатрат.Товар), а вот как получить значение Константы ? Значение (Константа.ВалютаРегламентированногоУчета) не прокатывает. |
|||
1
Mitriy
23.10.09
✎
22:26
|
никак
только параметром |
|||
2
EugeneK
23.10.09
✎
22:36
|
(1) очень жаль, недороботочка
выкрутился таким способом : КОГДА КвотаОбороты.Договор.Валюта В (ВЫБРАТЬ Константы.ВалютаРегламентированногоУчета ИЗ Константы КАК Константы) |
|||
3
Mort
23.10.09
✎
23:04
|
Константы обычная таблица, делай внутренним соединением.
|
|||
4
Дарлок
23.10.09
✎
23:16
|
мдя... жесть, если константы могут менять во время работы... столько бреда приходиться программистам писать
|
|||
5
Дарлок
23.10.09
✎
23:17
|
а все почему ...
а потому что глупость неискоренима |
|||
6
EugeneK
23.10.09
✎
23:20
|
(4) лично у меня, контанта ВалютаРегламентированногоУчета не меняется уже лет незнаю сколько. вообще не менялась. А если и поменяется - все гуд, отчет по прежнему будет верно показывать, для текущей валюты.
(3) как в условие делать внутреннее соединение ? |
|||
7
Armando
23.10.09
✎
23:23
|
(6) покажи весь запрос. не факт, что внутреннее соединение тебе подойдет.
|
|||
8
EugeneK
23.10.09
✎
23:26
|
ВЫБРАТЬ
КвотаОбороты.Номенклатура КАК Номенклатура, КвотаОбороты.КоличествоПриход КАК КолвоКПродаже, ВЫБОР КОГДА КвотаОбороты.Договор = &Сделка ТОГДА ВЫБОР КОГДА (НЕ КвотаОбороты.Договор.Валюта В (ВЫБРАТЬ Константы.ВалютаРегламентированногоУчета ИЗ Константы КАК Константы)) ТОГДА КвотаОбороты.СуммаПриход * &Курс ИНАЧЕ КвотаОбороты.СуммаПриход КОНЕЦ КОНЕЦ КАК СуммаКПродаже, ВЫБОР КОГДА КвотаОбороты.Договор.ДоговорПродажиЭкспорт = &Сделка ТОГДА 0 ИНАЧЕ КвотаОбороты.КоличествоРасход КОНЕЦ КАК КолвоПродано, ВЫБОР КОГДА (НЕ КвотаОбороты.Договор.Валюта В (ВЫБРАТЬ Константы.ВалютаРегламентированногоУчета ИЗ Константы КАК Константы)) ТОГДА КвотаОбороты.СуммаРасход * &Курс ИНАЧЕ КвотаОбороты.СуммаРасход КОНЕЦ КАК Оплачено, NULL КАК КолвоКуплено, NULL КАК СуммаКуплено, NULL КАК СтатьяЗатрат, NULL КАК Затраты, КвотаОбороты.Регистратор, КвотаОбороты.Регистратор.Дата КАК Дата, ВЫБОР КОГДА КвотаОбороты.Договор = &Сделка ТОГДА ВЫБОР КОГДА (НЕ КвотаОбороты.Договор.Валюта В (ВЫБРАТЬ Константы.ВалютаРегламентированногоУчета ИЗ Константы КАК Константы)) ТОГДА КвотаОбороты.Договор.ЦенаСНДС * &Курс ИНАЧЕ КвотаОбороты.Договор.ЦенаСНДС КОНЕЦ КОНЕЦ КАК ЦенаПродажи, КвотаОбороты.Регистратор.ДоходОтНДС КАК ДоходОтНДС ИЗ РегистрНакопления.Квота.Обороты(, , Регистратор, ) КАК КвотаОбороты, КурсВалюты КАК КурсВалюты, ДокументыСделки КАК ДокументыСделки ГДЕ КвотаОбороты.Договор.Проведен = ИСТИНА И КвотаОбороты.Договор В (ДокументыСделки.ДогПродажи) |
|||
9
Mort
23.10.09
✎
23:26
|
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ |Проекты.Ссылка |ИЗ |Справочник.Проекты КАК Проекты |ВНУТРЕННЕЕ СОЕДИНЕНИЕ Константы КАК Константы |ПО Проекты.Наименование = Константы.Жесть"; Допустим у меня есть строковая константа "Жесть"(ничо больше в голову не пришло). Я получаю ссылки на проекты которые называются как значение в этой константе. |
|||
10
Armando
23.10.09
✎
23:48
|
(8) используй параметр
|
|||
11
EugeneK
23.10.09
✎
23:55
|
(10) нехочу и немогу. этот отчет будет дорабатываться, где в итоге и Сделка будет как вариант из списка, соответственно валюта должна расчитыватся для текущей сделки
|
|||
12
Mort
23.10.09
✎
23:57
|
(11) Да ну
|
|||
13
EugeneK
24.10.09
✎
00:21
|
(12) ну да. будет у меня таблица с 10 договоров с разными валютами, что в параметре передавать ?
|
|||
14
Дарлок
24.10.09
✎
01:28
|
мрак... пристрелите его.
|
|||
15
EugeneK
24.10.09
✎
08:58
|
(14) ты лучше что-то дельное скажи, подскажи, а не ...
|
|||
16
Armando
24.10.09
✎
13:53
|
Нифига не понял. Причем сдесь "10 договоров с разными валютами", если в константе содержится только одна(!) валюта? Именно ее надо передавать в параметре.
|
|||
17
Defender aka LINN
24.10.09
✎
14:18
|
(16) А нахрена параметр, если константы - таблица?
|
|||
18
Rie
24.10.09
✎
14:25
|
(13) Константы.ВалютаРегламентированногоУчета.Получить() в параметре передать.
И сравнивать не через В, а через =. |
|||
19
Armando
24.10.09
✎
15:19
|
(17) Точно, ступил. Можно просто:
КвотаОбороты.Договор.Валюта = Константы.ВалютаРегламентированногоУчета |
|||
20
EugeneK
24.10.09
✎
15:21
|
(19) согласен, протупил :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |