Имя: Пароль:
1C
1С v8
8.2. УФ. Куда писать условие в зависимости от отбора?
0 Надежда25
 
20.05.13
14:35
1с8.2. Управляемая форма. Есть отчет на СКД. Надо, в зависимости от отбора, сделанного пользователем, некоторым полям присвоить Null. Как перехватить отбор, где это писать?
1 Надежда25
 
20.05.13
14:46
Условное оформление не подходит, так как оно меняет только внешний вид, а мне надо вывести значение другого поля в зависимости от отбора. То есть вопрос: как перехватить отбор пользователя?
2 mickey1cx
 
20.05.13
14:54
Насколько я понял, тебе стоит в самом запросе накладывать условие в этом поле, например:

ВЫБОР
   КОГДА &ПараметрОтбора = 0 ТОГДА NULL
   КОГДА &ПараметрОтбора = 1 ТОГДА 0
   КОГДА &ПараметрОтбора = 2 ТОГДА 1
   ИНАЧЕ -1
КОНЕЦ    
3 Надежда25
 
20.05.13
15:03
У меня в документе есть реквизиты типа Строка: Январь, февраль, Март, Апрель, ..., Декабрь. В зависимости от введенного значения поля "ДатаПоследнейПоверки" при сохранении документа полям Январь, ..., Декабрь присваиваются строковые значения. При проведении документа все это записывается в регистр сведений.
В отчете, если пользователь выбрал один месяц, надо другие месяцы вывести пустыми и по значению отбора выбрать из справочника некоторое значение для поля ПереченьМероприятий.
Параметров у меня в отчете нет. Пользователь делает отбор: Январь Заполнено.
4 HEKPOH
 
20.05.13
15:18
а если "фивраль" напишет?
5 Надежда25
 
20.05.13
15:23
Нет, стандартный отбор в СКД. Пользователь может выбрать поля из списка.
6 Aprobator
 
20.05.13
15:27
(3) странно как то сделано. Можно было принцип с ЗУПа содрать - тип дата, всегда начало месяца. Или уж делать 12 реквизитов с типом булево.
7 Надежда25
 
20.05.13
15:32
В реквизитах Январь, ..., Декабрь у меня буквенные обозначения: "К", "О", "Т" и ничего. По этой же причине не получилось использовать Перечисление.
8 vicof
 
20.05.13
15:33
(1)(3) Неправильная архитектура. Да и без фотки не взлетит.
9 Aprobator
 
20.05.13
15:35
(7) не вижу помех для использования перечисления.
Вообще, имхо, тут немного странно сделано. Первый раз вижу, чтобы отбор влиял не на данные, а на их представление при выводе.
10 Aprobator
 
20.05.13
15:36
А сам отбор пользователя можно перехватить в модуле объекта в событии ПриКомпоновкеРезультата.
11 Надежда25
 
20.05.13
15:39
(8) См. (7). Уже все обдумала. Документ - регистр все хорошо работает. А вот в отчете некоторые проблемы.
(9) На данные и влияет. Например, при выборе Январь мне надо обнулить Февраль, ..., Декабрь.
(10) А можно пример?
12 Defender aka LINN
 
20.05.13
15:40
Жесть какая...
Если пользователь установил отбор по месяцу, то остальные вообще показываться не должны, нахрена что-то там где-то менять?

Ну и что делать, если пользователь врубит какой-нибудь экзотический отбор типа "Месяц = Февраль ИЛИ Пятка = левая задняя"?
13 tushich
 
20.05.13
15:42
(1) а вычисляемые поля? А макеты? + не отбор, а параметр и все просто становится)
14 Надежда25
 
20.05.13
15:48
(12) Все тут логично. Если пользователь хочет просмотреть только Январь, то все остальные месяцы ему не нужны. А в форме они представлены все. Пусть выводятся пустыми. Через вычисляеме поля пробовала, но получается такое длинное условие - ужас. Вот и хочется сделать попроще.
Про параметр не очень понятно, разве ему можно присваивать разные значения?
15 Defender aka LINN
 
20.05.13
15:57
(14) В какой еще форме?
16 Надежда25
 
20.05.13
15:58
В отчете, в печатной форме.
17 Defender aka LINN
 
20.05.13
16:02
(16) Еще раз, на пальцах: если пользователь ставит отбор, ему СКД то, что отбору не удовлетворяет, НЕ ПОКАЖЕТ. Сама, без ваших костылей.
В общем, как обычно, налицо изобретенное решение через задницу и отсутствие даже мыслей о том, что можно сделать иначе.
18 Надежда25
 
20.05.13
16:12
Может, я не совсем ясно объяснила задачу. Уже все варианты были продуманы, так что можно и повежливее.
В отчете среди прочих есть поля и их значения:
Январь Февраль Март Апрель Май
О               К          Т
Если в выборе стоит Январь - надо, чтобы значения полей Март и Май были пустыми.
19 Надежда25
 
20.05.13
16:14
Сдвинулось. В Феврале и Апреле значения были пустыми.
20 Defender aka LINN
 
20.05.13
16:49
(18) Типа, сейчас стало понятно, ага... Кто такие О, К и Т?
21 Mitriy
 
20.05.13
16:53
млин... как же я туп...
22 Надежда25
 
20.05.13
16:55
(20) Буквенное обозначение вида ремонта, тип - Строка.