|
Запрос в запросе | ☑ | ||
---|---|---|---|---|
0
PitNN
26.04.12
✎
10:16
|
Добрый день, друзья.
Подскажите с такой штукой, а то сам не могу придумать. Суть в следующем. Есть таблица ячейки которой содержат в себе инструкцию на языке запросов, например: "Выбор когда истина тогда 1 иначе 0 как Флаг,". Как можно и можно ли вообще внутри одного запроса получить эти инструкции и при этом чтобы они выполнились? |
|||
1
Ненавижу 1С
гуру
26.04.12
✎
10:17
|
с помощью одного запроса склеить другой и выполнить его, можно
|
|||
2
butterbean
26.04.12
✎
10:17
|
типа запрос к тексту запроса?? не взлетит
|
|||
3
Maxus43
26.04.12
✎
10:20
|
динамически формировать текст запроса тока
|
|||
4
izekia
26.04.12
✎
10:21
|
(1) текст запроса как в запросе склеить?
|
|||
5
Ненавижу 1С
гуру
26.04.12
✎
10:21
|
(4) зачем в запросе? обход результата запроса
|
|||
6
Wobland
26.04.12
✎
10:22
|
(4) запрос, рожающий запрос? оригинально
|
|||
7
skiller3000
26.04.12
✎
10:22
|
да, смотря к чему идет обращение, если просто собрать в запросе, то склеить текст и обход по ячейкам
|
|||
8
izekia
26.04.12
✎
10:28
|
(5) в запросе его нет, он у выборки)
(6) это к (0) мне такое не надо |
|||
9
Ненавижу 1С
гуру
26.04.12
✎
10:31
|
(8) ты всё понял, хватит поясничать ))
|
|||
10
PitNN
26.04.12
✎
10:32
|
И как же его, простите, склеить?
Что бы было более понятно опишу ситуацию. Есть таблицы "ТипыЦен" и "ПравилаРасчета" У таблицы ТипыЦен колонки: "НомерСтроки", "Цена1", "Цена2", "Цена3" У таблицы ПравилаРасчета колонки: "НомерСтроки", "Правило" Предположим вторая таблица содержит 2 строки: 1; "Выбор Когда ТипыЦен.Цена1 > ТипыЦен.Цена2 Тогда ТипыЦен.Цена1+ТипыЦен.Цена2 Иначе ТипыЦен.Цена3 КАК Результат" 2; "Выбор Когда ТипыЦен.Цена3 < 0 Тогда ТипыЦен.Цена1-ТипыЦен.Цена3 Иначе ТипыЦен.Цена2 КАК Результат" Как получить третью таблицу, которая будет содержать номер строки и результат расчета? |
|||
11
Ненавижу 1С
гуру
26.04.12
✎
10:34
|
(10) ты сначала покажи как ты из этих данных сам без компьютера напишешь текст запроса
|
|||
12
butterbean
26.04.12
✎
10:34
|
(10) запросы в цикле по строкам
|
|||
13
izekia
26.04.12
✎
10:35
|
(9) да тема тупая, чем еще заняться?)
|
|||
14
izekia
26.04.12
✎
10:35
|
пойду поработаю
|
|||
15
PitNN
26.04.12
✎
10:38
|
(11) Не понял вопроса
(12) В цикле это на крайний случай. Интересует можно ли получить результат одним запросом? |
|||
16
butterbean
26.04.12
✎
10:40
|
(15) текст запроса "внутри" запроса нельзя обработать, имхо конечно
|
|||
17
izekia
26.04.12
✎
10:44
|
в 1С это точно нельзя сделать в запросе и вообще подобный шаблон не для скл, как мне кажется
|
|||
18
Ненавижу 1С
гуру
26.04.12
✎
10:45
|
(15) ок, в (10) ты показал данные, что ты хочешь получить в итоге на конкретных значениях?
|
|||
19
PitNN
26.04.12
✎
10:46
|
Ясно. Нельзя, значит. Всем спасибо
|
|||
20
PitNN
26.04.12
✎
10:50
|
(18) У тебя есть видение как это можно реализовать?
ТипыЦен содержит: НомерСтроки;Цена1;Цена2;Цена3 1; 5; 7; 9; 2; 2; 8; -4; Результирующая таблица: НомерСтроки;Результат 1; 9; 2; -6; |
|||
21
PitNN
26.04.12
✎
10:51
|
(20) Ошибка. Вторая строка "6"
|
|||
22
Ненавижу 1С
гуру
26.04.12
✎
10:52
|
(20) посмотрим, а почему для первой строки данных ты применил первую строку правил, а не вторую?
|
|||
23
Ненавижу 1С
гуру
26.04.12
✎
10:52
|
+(22) а для второй второе?
|
|||
24
PitNN
26.04.12
✎
10:55
|
Потому что таблица "ПравилаРасчета" содержит колонку "НомерСтроки" по которой идет связь с таблицей цен
|
|||
25
Ненавижу 1С
гуру
26.04.12
✎
11:07
|
(24) делаем запрос к таблице правил и строим следующую бешеную конструкцию:
ВЫБОР КОГДА НомерСтроки=1 ТОГДА Выбор Когда ТипыЦен.Цена1 > ТипыЦен.Цена2 Тогда ТипыЦен.Цена1+ТипыЦен.Цена2 Иначе ТипыЦен.Цена3 КАК Результат //правило 1 строки КОГДА НомерСтроки=2 ТОГДА Выбор Когда ТипыЦен.Цена3 < 0 Тогда ТипыЦен.Цена1-ТипыЦен.Цена3 Иначе ТипыЦен.Цена2 КАК Результат ... КОНЕЦ КАК Результат натравливаем полученный текст запроса на таблицу ТипыЦен |
|||
26
PitNN
26.04.12
✎
11:27
|
спасибо за помощь
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |