• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Отображение значения поля Checkbox

  • Автор темы Yukas
  • Дата начала
Статус
Закрыто для дальнейших ответов.
Y

Yukas

Всем добрый день!

Простите за уж совсем простой вопрос... :)
Есть поле типа checkbox. Значения в нем, к примеру, такие:
арбуз|1
дыня|2
тыква|3
кабачок|4
Так вот при открытии формы на чтение это поле скрываю, а в <computed value> хочу отобразить это поле, но отображаются алиасы этого поля, а как мне вычислить текстовое значение на собаках?

Спасибо.
 
O

Omh

Ручками.
Автоматом из элиаса литерарное значение не получить.

-----------------------
Как варианты:
Можно, например делать рядом computed поле, которе будет вычислять значение по формуле.
Можно вычислять на уровне колонки view.

Можно сделать целую систему:
1. наверху (текстовое) поле (пусть будет Selections) вида
Код:
"Lit1|Alias1"
"Lit2|Alias2"
"Lit3|Alias3"
2. Видимое поле (checkbox) со значениями поля из Selections (тут будут алиасы)
3. Спрятаное поле, которое вычисляет литературные значения из 2-х вышеприведённых полей.

Достоинство такой системы в том, что вся выборка только в одном месте.
Но мне такая вещь кажется немного громоздкой.
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
Всем добрый день!

Простите за уж совсем простой вопрос... :)
Есть поле типа checkbox. Значения в нем, к примеру, такие:
арбуз|1
дыня|2
тыква|3
кабачок|4

Так вот при открытии формы на чтение отображаются алиасы этого поля,
а как мне вычислить текстовое значение на собаках?

Спасибо.
заведи эти значения в базу как какие-нить системные документики а потом выбирай через @DbColumn
 
T

TIA

Установите галку "Allow keyword synonims", тогда в режиме чтения будут отображаться текстовые значения. Но если варианты вычисляемые, то вычисляться они будут при каждом открытии документа.
 
Y

Yukas

Так галка "Allow keyword synonims" стоит... А отобразить хочется именно рядом через computed tex
Была какая-то простая формула... но сейчас уже не помню, вот и ступор.
 
T

TIA

Так галка "Allow keyword synonims" стоит... А отобразить хочется именно рядом через computed tex
Была какая-то простая формула... но сейчас уже не помню, вот и ступор
Хитрец. Изначально так вопрос не стоял. Тогда используйте вариант Omh.
 
N

nvyush

Всем добрый день!

Простите за уж совсем простой вопрос... :)
Есть поле типа checkbox. Значения в нем, к примеру, такие:
арбуз|1
дыня|2
тыква|3
кабачок|4
Так вот при открытии формы на чтение это поле скрываю, а в <computed value> хочу отобразить это поле, но отображаются алиасы этого поля, а как мне вычислить текстовое значение на собаках?

Спасибо.

Создаем профильный документ, напр. SysProfile. В нём текстовое многозначное поле, напр. List1. В поле перечислены значения арбуз|1 и т.д. Создаём вычисляемое поле $List1 (для видов) с формулой:
FindList := @Implode(@Word(@GetField("List1"); "|"; 2); "\":\"");
ReplaceList := @Implode(@Word(@GetField("List1"); "|"; 1); "\":\"");
"@Replace(" + "List1" + "; \"" + FindList + "\";\"" + ReplaceList + "\");";

В форме документа для выбора значений в нужном поле указываем в качестве источника формулу @GetProfileField("SysProfile"; "List1"). (Как получить из списка нужные значения/алиасы не расписываю - на свой вкус).
В видах для нужного столбца на первой вкладке включаем галку User definable и указываем имя профиля SysProfile, на последней вкладке в качестве программируемого имени указываем $List1, формула столбца - @UserName.
Достоинства - можно настраивать списки не меняя дизайна.
Недостатки - спросить у гуру.
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
ох огороды городите!
проще всего @DbColumn в выбор значений для checkbox
И DbLookup для <computed value>
Особенно удобно если параметры вдруг будут добавляться.

а если количество значений checkbox ограничено и не большое - то для <computed value> пользуй обычный @if
 
N

nvyush

ох огороды городите!
проще всего @DbColumn в выбор значений для checkbox
И DbLookup для <computed value>
Особенно удобно если параметры вдруг будут добавляться.

Согласен, но научите, плз, как в видах отображать АРБУЗ вместо 1, не используя профильные документы и не кодируя жестко в формуле столбца. Вопрос так не стоял, но обычно встает, когда дело доходит до отображения доков в видах.
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Какие @DbColumn и @DbLookup? Причем здесь они? Есть значения, есть синонимы. Задача в том, чтобы определить значение, зная синоним.
Всё делается через одно дополнительное поле, как Omh написал.
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
Какие @DbColumn и @DbLookup? Причем здесь они? Есть значения, есть синонимы. Задача в том, чтобы определить значение, зная синоним.
Всё делается через одно дополнительное поле, как Omh написал.
У меня реализовано таким образом.
+ всего этого - не надо лазить в код. вся настройка проходит из интерфейса пользователя
 
N

nvyush

Какие @DbColumn и @DbLookup? Причем здесь они? Есть значения, есть синонимы. Задача в том, чтобы определить значение, зная синоним.
Всё делается через одно дополнительное поле, как Omh написал.

Правильно, но ИМХО, значение в это поле лучше подставлять из профильного дока, чтоб дизайн не ломать при обновлении списка.
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
конечно придется повозиться с алгоритмами... сделать их гибкими и "готовыми" к новым параметрам.
При большом желании для каждого параметра можно предусмотреть использование @-формулы или lotus-скрипта.
В общем все зависит от того что пишут и какая задача

Medevic
Прошу прощения, а где хранить синонимы их значения?
 
N

nvyush

Хранить в CFD-поле.

Это хорошо для данных типа
Мужской|1
Женский|2

Если же список значений может меняться/настраиваться, то лучше хранить данные либо в настроечных документах, либо в профильных, в зависимости от задачи. Я предпочитаю профильные.
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
А если не может меняться/настраиваться, то зачем нам профильные документы? :)
Из условия не понятно могут ли меняться данные. Да и задача в другом.
 
N

nvyush

А если не может меняться/настраиваться, то зачем нам профильные документы? :)
Из условия не понятно могут ли меняться данные. Да и задача в другом.

А по теме задачи есть подсказка в одном из моих предыдущих постов (правда для столбца вида).
Пусть есть CheckBox.
Размещаем на форме скрытое поле со списком значений $List1 (CFD или из профиля - на вкус). У CheckBox'a источник - формула $List1.
Для вычисляемого текста пишем формулу:
FindList := @Word($List1; "|"; 2);
ReplaceList := @Word($List1; "|"; 1);
@Replace(CheckBox; FindList; ReplaceList);
 
Y

Yukas

Ух ты.... сколько способов.
Скорее всего подходит вариант Omh, т.к. значений в поле не очень много и они не добавляются.
Всем огромное спасибо, за помощь!
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!