5.x
перечисление
Технические вопросы

BPM. Как добавить перечисление?

BPM 5.2 On-Site.
Как вывести перечисление на форму?

1. Создаю объекты типа Перечисление, например, Возраст со значениями Молодой, Средний и Пожилой.
2. Добавляю в объект Контакт это перечисление.
3. Вывожу на страницу редактирования контакта. Выводить пробовал и через элемент выпадающего списка и через переключатель - не отображает данных.

Что я делаю не так?

Нравится

8 комментариев

С перечислениями там не все так просто, я бы их не использовала. Лучше создайте отдельную таблицу, заполните ее тремя значениями, создайте поле типа справочник и скажите ему, чтобы отображался как выпадающий список, там есть такой режим.

А как сделать выбор один из нескольких вариантов (переключатель) вместо списка?

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

Пример кода где-нибудь можно посмотреть?

В 5.4 PeriodicitySettingsPage. Только там скорее всего булевое поле и два радиобаттона для него.

вопрос сейчас очень актуальный, на скрине видно что я хочу сделать: http://joxi.ru/a9SfUxjKTJBIH7UgTy0

пробовл связать эти radiobutton с ценым значением и строковым в базе - не сохраняет и не отображает значения

Здравствуйте, Илья.

Как ранее говорила Ольга, пример работы с "radio-button'ами" есть в процессе страницы PeriodicitySettingsPage:

[csharp]
if (Page.OnceRadioButton.Checked && onceEdit.IsNull) {
var clientId = onceEdit.ClientID;
var messagePanelMessage = string.Format(ValueIsEmpty.Value, "{" + clientId + "}");
baseMessagePanel.AddMessage(clientId, Warning, messagePanelMessage, MessageType.Warning);
isDataCorrect = false;
}
if (startDateTimeEdit.IsNull) {
var clientId = startDateTimeEdit.ClientID;
var messagePanelMessage = string.Format(ValueIsEmpty.Value, "{" + clientId + "}");
baseMessagePanel.AddMessage(clientId, Warning, messagePanelMessage, MessageType.Warning);
isDataCorrect = false;
}
if (Page.CustomRadioButton.Checked) {
if (customFromEdit.IsNull) {
var clientId = customFromEdit.ClientID;
var messagePanelMessage = string.Format(ValueIsEmpty.Value, "{" + clientId + "}");
baseMessagePanel.AddMessage(clientId, Warning, messagePanelMessage, MessageType.Warning);
isDataCorrect = false;
}
if (customTillEdit.IsNull) {
var clientId = customTillEdit.ClientID;
var messagePanelMessage = string.Format(ValueIsEmpty.Value, "{" + clientId + "}");
baseMessagePanel.AddMessage(clientId, Warning, messagePanelMessage, MessageType.Warning);
isDataCorrect = false;
}
.......
}
[/csharp]

Показать все комментарии