|
Флажок с тремя значениями "Да", "Нет", "Неопределено" | ☑ | ||
---|---|---|---|---|
0
zelenprog
07.09.23
✎
17:02
|
Добрый день!
Делаю обработку по проверке справочника. Пользователи с помощью обработки будут проверять элементы справочника, и по результатам проверки устанавливать флажок - удовлетворяет ли элемент необходимым условиям или нет. Обработка просто показывает список элементов справочника, отобранных для проверки и еще не проверенных. Для хранения флажка, чтобы не менять основную конфигурацию, я сделал Расширение и Регистр сведений в расширении. Не могу определиться с типом значения флажка. По идее тип флажка должен быть "Булево". Однако, пока пользователь не проверил элемент, у этого флажка должно быть значение "Неопределено". Если установить тип "Булево", 1С-ка не дает использовать значение "Неопределено". Она считает пустое значение флажка в регистре как "Ложь". Как лучше сделать? Какой тип выбрать для флажка? И как его правильно отображать пользователю, чтобы пользователь тоже понимал, что есть три значения "Да", "Нет", "" (неопределено). |
|||
1
yopQua
07.09.23
✎
17:06
|
Число?
|
|||
2
unbred
07.09.23
✎
17:06
|
(0) что тебе мешает спросить у регистра- есть ли запись, и если нет- тогда проверять?
|
|||
3
yopQua
07.09.23
✎
17:09
|
собственно помоему логику можно упростить - элемент не соответствует, пока не будет доказано обратное (установлена галка). Неопределено тогда не нужно.
|
|||
4
AlexeyKh
07.09.23
✎
17:09
|
делайте строкой (выбор из списка значений) уж куда понятнее будет для пользователя
"Выбрать" "Обработать" "ХЗ" "ДаНуЕЕ" "Отложить" и тд. |
|||
5
yopQua
07.09.23
✎
17:10
|
а можно два флажка Обработан и Соответствует
|
|||
6
yopQua
07.09.23
✎
17:10
|
на любой вкус в общем решения есть
|
|||
7
zelenprog
07.09.23
✎
17:12
|
(3) "Неопределено" нужно обязательно.
"Неопределено" - это признак того, что с элементом еще не "поработали", то есть не проверили. "Да", "Нет" - это результат проверки, который говорит о том, что его проверили. Пользователь должен видеть все три значения, чтобы понимать "состояние" проверки элемента справочника. |
|||
8
zelenprog
07.09.23
✎
17:12
|
(5) Как-то громоздко получается
|
|||
9
Ногаминебить
07.09.23
✎
17:16
|
Так написали же выше. Нет записи в регистре - это и есть неопределено.
|
|||
10
PR
07.09.23
✎
17:16
|
(8) Ну сделай перечисление Булево со значениями Да и Нет
|
|||
11
Ногаминебить
07.09.23
✎
17:18
|
Видеть же пользователь скорее всего будет результат запроса, объединяющий регистр со справочником. Вот в этот результат и вывести Да/Нет/Неопределено(через естьнулл).
|
|||
12
zelenprog
07.09.23
✎
17:28
|
(11) Как в этом случае вывести пользователю "Неопределено" и работать с ним?
Если сделать в ТЧ обычный флажок, то по этому флажку нифига не понятно. Если сделать полем ввода, в которое выводить одно из трех значений (Да/Нет/Неопределено), то как пользователь будет редактировать это поле? |
|||
13
Ногаминебить
07.09.23
✎
17:31
|
(12) Пользователь не может и не должен редактировать это поле. Это ж результат запроса, а не реквизит. Он должен выполнять какие-то действия, результатом которых станет появление в регистре сведений записи с установленным значением булевого реквизита.
|
|||
14
Prog111
07.09.23
✎
18:00
|
Перечисление с тремя вариантами. И тумблер для выбора.
|
|||
15
Ногаминебить
07.09.23
✎
18:06
|
И в регистр предварительно занести по всем элементам справочника записи с третьим значением этого перечисления, а потом еще при появлении нового элемента не забывать ее добавлять? "Как-то громоздко получается." :)
|
|||
16
Garykom
гуру
07.09.23
✎
19:58
|
(0) Два флажка сделай
|
|||
17
Garykom
гуру
07.09.23
✎
19:59
|
(16)+ Хотя Обработано лучше не просто булево а Кем добавить
Т.е. Пользователя записывать, если обработано |
|||
18
Bigbro
07.09.23
✎
20:02
|
булево заполнено тогда данет не заполнено - неопределено*?
|
|||
19
MWWRuza
гуру
07.09.23
✎
21:39
|
(0) И как его правильно отображать пользователю, чтобы пользователь тоже понимал, что есть три значения "Да", "Нет", "" (неопределено).
Храните как хотите, вариантов куча, а пользователю можно просто не показывать этот флажок, делать его не видимым, пока не проверен. Хотя, этот вариант для ТЧ не пойдет, просто на форме - да, не проверено - нет флажка, проверили - появился, с соответствующим состоянием. Но, в ТЧ надо что-то по другому придумывать. |
|||
20
RomaH
naïve
08.09.23
✎
04:47
|
я делал через перечисление
Да/Нет/Не знаю |
|||
21
zelenprog
08.09.23
✎
09:02
|
(13) >> Пользователь не может и не должен редактировать это поле. Это ж результат запроса, а не реквизит. Он должен выполнять какие-то действия, результатом которых станет появление в регистре сведений записи с установленным значением булевого реквизита.
Пользователь должен редактировать это поле. Он проверяет соответствие элемента справочника некоторым требованиям, и потом явно (сам ручками) указывает флажок соответствия "Да" или "Нет". Дальнейшая логика работы с этим элементом зависит от значения этого флажка: если "Да" - выполняем алгоритм (1), если "Нет" - выполняем алгоритм (2), если "Неопределено" - ничего не делаем и ждем пока пользователь определится. |
|||
22
zelenprog
08.09.23
✎
09:03
|
(19) >> Но, в ТЧ надо что-то по другому придумывать.
Кстати... Напомню, что "проверка" справочника выполняется в форме, которая отображает список этих элементов. Этот список формируется при открытии формы с помощью запроса по справочнику с левым соединением по регистру проверки. Просто некоторые решения, которые предлагались выше, они в списке не будут работать. Например: (14) >> Перечисление с тремя вариантами. И тумблер для выбора. Как тумблер реализовать в списке? |
|||
23
zelenprog
08.09.23
✎
09:03
|
(16),(17)
Да, наверно придется делать два флажка. |
|||
24
zelenprog
08.09.23
✎
09:05
|
(18) >> булево заполнено тогда данет не заполнено - неопределено*?
Как понять, что реквизит в регистре не заполнен? |
|||
25
Donkey_hot
08.09.23
✎
09:10
|
(24) Напомните, а чем флажок с тремя состояниями не устраивает?
|
|||
26
zelenprog
08.09.23
✎
09:13
|
(25) >> чем флажок с тремя состояниями не устраивает?
До конца не ясен способ реализации такого флажка. 1) Какой тип использовать для этого флажка? Перечислением с тремя значениями? 2) Как отображать в списке? Полем ввода? 3) Как менять значение этого флажка в списке? |
|||
27
Donkey_hot
08.09.23
✎
09:14
|
(26) Расширение поля формы для поля флажка (Form field extension for a check box field)
ТриСостояния (ThreeState) Доступен, начиная с версии 8.2. Использование: Чтение и запись. Описание: Тип: Булево. Содержит признак того, что флажок может иметь три возможных состояния. При этом типом редактируемого значения является Число. Истина - состояние разрешено. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |