|
Параметр СКД и условие компоновки данных. Как сделать параметр не обязательным? | ☑ | ||
---|---|---|---|---|
0
Нуф-Нуф
25.04.13
✎
14:16
|
Доброго дня. Имеет УПП последнего релиза и типовой отчет Анализ точки заказа.
Результат запроса в СКД является таблица, содержащая информацию о том, какой товар требуется заказать, какой рекомендуется, какой не требуется. Вот поле, которое отвечает за это: ВЫБОР КОГДА ВложенныйЗапрос.МинимальныйСтраховойЗапас > 0 И ВложенныйЗапрос.МинимальныйСтраховойЗапас > ВложенныйЗапрос.Остаток ТОГДА 0 КОГДА ВложенныйЗапрос.ЗначениеТочкиЗаказа > 0 И ВложенныйЗапрос.ЗначениеТочкиЗаказа > ВложенныйЗапрос.Остаток ТОГДА 1 ИНАЧЕ 2 КОНЕЦ Так же это поле выбрано компоновке данных и соответственно в запросе имеем следующий код: {ГДЕ (ВЫБОР КОГДА ВложенныйЗапрос.МинимальныйСтраховойЗапас > 0 И ВложенныйЗапрос.МинимальныйСтраховойЗапас > ВложенныйЗапрос.Остаток ТОГДА 0 КОГДА ВложенныйЗапрос.ЗначениеТочкиЗаказа > 0 И ВложенныйЗапрос.ЗначениеТочкиЗаказа > ВложенныйЗапрос.Остаток ТОГДА 1 ИНАЧЕ 2 КОНЕЦ) КАК Состояние, ... } Однако поле "Состояние" не попадает на закладку Параметры. Если же добавить этот параметр вручную - то он никак не влияет на результат компоновки. Как сделать "Состояние" параметром? Это необходимо для того, чтобы указать допустимые значения параметра (0,1,2 с представлениями "требуется" и т.п.) Если "Состояние" сделать отбором - то в качестве значений придется указывать конкретные числа - 0,1 или 2. А хочется список выбора... Для отбора конечно немного помогает указание допустимых значений (и их представления) для поля компоновки "Состояние", и в пользовательском интерфейсе значение отбора можно выбрать из списка. НО в случае вида сравнения "В списке" - в качестве значения опять же можно выбрать только 0,1 или 2... Как состояние сделать параметром? |
|||
1
toypaul
гуру
25.04.13
✎
14:24
|
твое выражение = &Состояние
или что? |
|||
2
olegves
25.04.13
✎
14:26
|
(0) сделай Состояние перечислением - и выбирай, что нужно
|
|||
3
Никола_
Питерский 25.04.13
✎
14:26
|
С группируй значения в списке и буит тебе счастье. Параметром не сделаешь.
|
|||
4
Никола_
Питерский 25.04.13
✎
14:27
|
В отборе добавь группу или и запихай туда значения поле можно даже равенством.
|
|||
5
toypaul
гуру
25.04.13
✎
14:28
|
{где твое выражение = &Состояние}
а так будет необязательный. то есть если Состояние незаполнен, то условие не будет применяться. |
|||
6
Никола_
Питерский 25.04.13
✎
14:29
|
(5) Да у него состояние это поле. Ему не это нужно.
|
|||
7
Aprobator
25.04.13
✎
14:33
|
(0) а зачем его делать в данном случае параметром? Отбор то, чем не катит?
|
|||
8
toypaul
гуру
25.04.13
✎
14:35
|
(7) в тексе сообщений написано. зачем второй раз повторять :)
|
|||
9
Aprobator
25.04.13
✎
14:37
|
(8) не дочитал )
|
|||
10
Нуф-Нуф
25.04.13
✎
14:48
|
(1) если я сделаю жестко = &Состояние, тогда это будет вор-первых обязательный (без его указания не сформировать) параметр, а во-вторых нельзя будет выбрать несколько значений.
|
|||
11
Нуф-Нуф
25.04.13
✎
14:48
|
(2) править конфу только для этого - не вариант имхо
|
|||
12
Нуф-Нуф
25.04.13
✎
14:49
|
(5) в сабже так и сделано. однако поле не появляется в параметрах
|
|||
13
Никола_
Питерский 25.04.13
✎
14:52
|
(12) В отборе можно группировать условия или это не помогает ?
|
|||
14
Aprobator
25.04.13
✎
14:53
|
небось автозаполнение стоит
|
|||
15
Aprobator
25.04.13
✎
14:53
|
(13) упс. Кстати, нарисовать отбор и задать его представление не катит?
|
|||
16
Aprobator
25.04.13
✎
14:54
|
а пользователь, чтобы тупо по представлению галочки ставил, какой отбор юзать.
|
|||
17
Нуф-Нуф
25.04.13
✎
14:55
|
(13) в отборе можно группировать условия, но пока не догнал как это мне поможет...
|
|||
18
Нуф-Нуф
25.04.13
✎
14:56
|
(15) (16) хм... наверно вариант... возьму на заметку...
но все равно хочется "красивее" |
|||
19
Никола_
Питерский 25.04.13
✎
14:56
|
(17) Ты же говоришь что можно наложить условие, но только на конкретное значение на пример 1 или 2 и т.д.
Ну так сделай нужные значения и засунь их в группу ИЛИ и получится у тебя нечто похожее на "В СПИСКЕ" |
|||
20
Aprobator
25.04.13
✎
15:00
|
красивее - быстрей добавить реквизит отчета. Поле выбора нарисовать ручками на форме. И в модуле отчета в Событии ПриКомпоновкеРезультата тупо подставить значение отбора в зависимости от выбора на форме.
|
|||
21
Defender aka LINN
25.04.13
✎
15:01
|
А после того, как добавил в запрос
вкладку "Отбор" открывал вообще? |
|||
22
Эмбеддер
25.04.13
✎
15:01
|
на закладке наборы данных в списке полей есть колонки "Тип значения" и "Доступные значения" - не подойдет?
|
|||
23
Aprobator
25.04.13
✎
15:01
|
(21) ему не отбор, а именно параметр нужен ) Читай до конца, я на эти грабли наступал уже.
|
|||
24
Aprobator
25.04.13
✎
15:02
|
(20) млин, реквизит формы нафиг не нужен. Реально нарисовать параметр ручками. Остальное все в Событии ПриКомпоновке результата. Возни минут 15.
|
|||
25
Эмбеддер
25.04.13
✎
15:03
|
(22) + проверил, нормально будет работать так
|
|||
26
Нуф-Нуф
25.04.13
✎
15:09
|
(22) такое уже делал, в сабже описал, что подходит только частично, так как как только выставишь вид сравнения "в списке", то в значениях опять же можно будет указывать только числа
|
|||
27
Нуф-Нуф
25.04.13
✎
15:10
|
(21) а что на закладке отборы? доступные поля отбора есть, но в отбор я не выношу
|
|||
28
Нуф-Нуф
25.04.13
✎
15:11
|
пока что самым красивым вижу способ - добавить собственный параметр, и в обработчике "при компоновке результата" подставлять значение этого параметра в значение отбора
|
|||
29
Aprobator
25.04.13
✎
15:15
|
(28) с тя пузырь на идею )
|
|||
30
Нуф-Нуф
25.04.13
✎
15:30
|
:)
|
|||
31
Нуф-Нуф
25.04.13
✎
15:33
|
но у (28) свой минус. так как это параметр - я не смогу выбирать тип сравнения. я смогу выбирать только доступен список значений или нет, а точнее - я смогу установить галку "доступен список значений" и мне всегда придется указывать значения параметра через список, даже если буду указывать только одно значение
|
|||
32
Нуф-Нуф
25.04.13
✎
15:34
|
ну где же вы БОГИ СКД?
|
|||
33
Defender aka LINN
25.04.13
✎
15:46
|
(32) Оставь отбором и не полощи моск.
Открою тайну: вместо 0,1,2 можно использовать строки. |
|||
34
toypaul
гуру
25.04.13
✎
15:52
|
бред какой-то
вот это (ВЫБОР КОГДА ВложенныйЗапрос.МинимальныйСтраховойЗапас > 0 И ВложенныйЗапрос.МинимальныйСтраховойЗапас > ВложенныйЗапрос.Остаток ТОГДА 0 КОГДА ВложенныйЗапрос.ЗначениеТочкиЗаказа > 0 И ВложенныйЗапрос.ЗначениеТочкиЗаказа > ВложенныйЗапрос.Остаток ТОГДА 1 ИНАЧЕ 2 КОНЕЦ) КАК Состояние и вот это (ВЫБОР КОГДА ВложенныйЗапрос.МинимальныйСтраховойЗапас > 0 И ВложенныйЗапрос.МинимальныйСтраховойЗапас > ВложенныйЗапрос.Остаток ТОГДА 0 КОГДА ВложенныйЗапрос.ЗначениеТочкиЗаказа > 0 И ВложенныйЗапрос.ЗначениеТочкиЗаказа > ВложенныйЗапрос.Остаток ТОГДА 1 ИНАЧЕ 2 КОНЕЦ) = &Состояние есть разница? |
|||
35
Defender aka LINN
25.04.13
✎
15:53
|
(34) Есть
|
|||
36
Эмбеддер
25.04.13
✎
15:54
|
конфигурацию можно править? может перечисление сделать?
|
|||
37
Нуф-Нуф
25.04.13
✎
16:23
|
(33) раскрой тайну, как можно использовать строки?
|
|||
38
Нуф-Нуф
25.04.13
✎
16:23
|
(36) это совсем грубо для отчета имхо
|
|||
39
Aprobator
25.04.13
✎
16:26
|
(37) ljcnegyst pyfxtybz c ghtlcnfdktybzvb )
|
|||
40
Aprobator
25.04.13
✎
16:26
|
(37) доступные значения с представлениями.
|
|||
41
Aprobator
25.04.13
✎
16:28
|
(31) так поставь сразу список значений, какая хрен разница то?
|
|||
42
Aprobator
25.04.13
✎
16:28
|
ты еще там бантик на форме нарисуй ))
|
|||
43
Aprobator
25.04.13
✎
16:31
|
кстати, параметр с доступными значениями с представлениями и в коде, что то наподобие (34) тока скобки там фигурные правильно поставить.
|
|||
44
Нуф-Нуф
25.04.13
✎
16:36
|
пока единственный адекватный вариант "добавить собственный параметр, и в обработчике "при компоновке результата" подставлять значение этого параметра в значение отбора" (хотя не самый удобный).
какие еще варианты остались? |
|||
45
Defender aka LINN
25.04.13
✎
16:41
|
|
|||
46
Нуф-Нуф
25.04.13
✎
16:47
|
(45) и ты эти слова при установке отбора писать будешь?
|
|||
47
Defender aka LINN
25.04.13
✎
16:48
|
(46) Я их пропишу в доступные значения. Ты - не знаю.
|
|||
48
Нуф-Нуф
25.04.13
✎
16:54
|
(47) блин, да я писал уже про это. я прописывал в доступные значения 0,1 и 2, и там же указал представления их значений (как "требуется", "не требуется"...)
|
|||
49
Эмбеддер
25.04.13
✎
16:56
|
выходит, что нет решения - такого, как тебе надо
|
|||
50
Нуф-Нуф
25.04.13
✎
16:56
|
+(48) и при установке отбора у меня есть возможность выбрать эти доступные значения по словам (по представлениям).
НО! если в отборе установить вид сравнения "в списке", то при установке значений отбора в этом самом списке - СКД забьет на доступные значения и их представления, и будет просить ввести конкретное значение отбора (в моем случае цифру), а в твоем случае текст типа "Куита какаята". это я писал еще в сабже |
|||
51
Aprobator
25.04.13
✎
17:16
|
из за 3-х возможных состояний список городить, вот это точно "Куита какая то".
|
|||
52
Нуф-Нуф
25.04.13
✎
17:24
|
(51) а сколько нужно для списка?
|
|||
53
Aprobator
25.04.13
✎
17:24
|
(52) справочник )
|
|||
54
calmius
25.04.13
✎
20:07
|
(0) Решение в том, чтобы приравнять отбор настройки СКД изменяемому пользователем параметру. Для этого в поле отбора "Правое значение" нужно нажать на кнопку очистки, при выборе типа данных выбрать "Поле компоновки данных", а затем в качестве поля выбрать параметр СКД. Отбор в доступные пользователю настройки включать не нужно, а параметр с представлениями - наоборот.
|
|||
55
Эмбеддер
26.04.13
✎
04:31
|
(54) при этом пользователь сможет регулировать вид отбора или всегда будет "равно"?
|
|||
56
Defender aka LINN
26.04.13
✎
06:22
|
(48) Вот ты тугой... Открой глаза до щелчка и посмотри на (45) и потом на (47)
|
|||
57
Эмбеддер
26.04.13
✎
07:28
|
(56) подтверждаю, работает даже со сравнением "в списке", а не только "равно". Нуф-Нуф вчера писал, что так не работает, я поверил и проверять не стал
|
|||
58
Aprobator
26.04.13
✎
08:45
|
(56) а млин, вот для чего значения строкой в запросе строкой прописывать то! Надо будет взять себе на заметку. Может пригодится когда.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |