|   |   | 
| 
 | Флажок с тремя значениями "Да", "Нет", "Неопределено" | ☑ | ||
|---|---|---|---|---|
| 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. Использование: Чтение и запись. Описание: Тип: Булево. Содержит признак того, что флажок может иметь три возможных состояния. При этом типом редактируемого значения является Число. Истина - состояние разрешено. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |