CftClub.ru
Клуб специалистов ЦФТ-Банк

Раскрывающийся список на экранной форме
На страницу Пред.  1, 2, 3  След.
 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы
Предыдущая тема :: Следующая тема  
Автор Сообщение
belyansky
Участник со стажем


Вступление в Клуб: 22.10.2007
СообщениеЧт Ноя 15, 2007 10:06    Ответить с цитатой
Полезность: Нет оценки
dnk_dz пишет:
Для того чтобы, преобразовать контрол выбора (поле с кнопкой) на форме в выпадающий список нужно выделить этот контрол (поле) и выполнить команду Правка/Преобразовать (или F5).

Спасибо! помогло! Arrow Arrow Arrow
Volod
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеЧт Апр 10, 2008 11:25   Подниму тему COMBO Ответить с цитатой
Полезность: Нет оценки
Дело в том, что в некоторых операциях в combo.caption записан ТБП, например ACC_MOVE_SET (показывается вьюха по умолчанию, если нет по умолчанию - ничего не показывает), а в некоторых - конкретное представление с конкретным полем VW_CRIT_ACC_MOVE_SET_LIST;#@#C_2, причем в controls.CRIT_ID прописан соответственно ID 18387898, а в controls.CRIT_ALIAS - алиас колонки, например C_NAME. В последнем случае возникает ситуация, - поменяли во вьюхе колонки местами, колонка C_NAME стала первой, операция работает, как прежде. Только сохраняем форму операции, CRIT_ALIAS пересчитывается и заполняется алиасом второй колонки, - операция показывает эту колонку, а не C_NAME.
Если нажать F5 на combo, в caption подставляется ТБП.
Как с этим бороться? Есть ли механизм указывать требуемую вьюху и колонку для combo, а не вьюху по умолчанию?
timochev
Эксперт


Вступление в Клуб: 02.07.2007
СообщениеЧт Апр 10, 2008 11:30   Re: Подниму тему COMBO Ответить с цитатой
Полезность: 2
Volod пишет:
Есть ли механизм указывать требуемую вьюху и колонку для combo, а не вьюху по умолчанию?

По F6 можно вывести панель представлений и там задать вьюху и поле.
Volod
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеЧт Апр 10, 2008 12:03    Ответить с цитатой
Полезность: Нет оценки
Точно, спасибо, ведь я этим пользовался, потом забыл - искал в доке по слову COMBO и не нашел.
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеПт Июл 22, 2011 13:57    Ответить с цитатой
Полезность: Нет оценки
timochev пишет:
belyansky пишет:
::[TRC].[EDIT_ABONENT] - такого элемента я не нашёл...

А что у вас за система? В ЦФТ-Банк такая операция должна быть.

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

Еще есть вариант взять тип COMBO_BOXES. В этот тип заносятся записи, а потом они используются в выпадающих списках.


Прошу прощения, сохранение значений в табличках вовсе не необходимость. Главное - вытащить значения в указанную вьюху.
Например, она может бегать по DUMMY с ограничением по количеству записей, вызывая функцию для получения значения строчки в ComboBox.
Это будет работать - проверял.
vek21
Участник со стажем


Вступление в Клуб: 20.09.2007
СообщениеСр Авг 10, 2011 12:15    Ответить с цитатой
Полезность: Нет оценки
Господа Знатоки! Попробовал сделать по образу и подобию ::[TRC].[EDIT_ABONENT], всё замечательно, но вот незадача - созданный список при выводе в экранной форме сортируется по алфавиту, а как быть, если никакой сортировки не нужно, а строки должны выходить в порядке добавления в массив строк?
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеСр Авг 10, 2011 14:44    Ответить с цитатой
Полезность: Нет оценки
vek21 пишет:
Господа Знатоки! Попробовал сделать по образу и подобию ::[TRC].[EDIT_ABONENT], всё замечательно, но вот незадача - созданный список при выводе в экранной форме сортируется по алфавиту, а как быть, если никакой сортировки не нужно, а строки должны выходить в порядке добавления в массив строк?

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


Вступление в Клуб: 20.09.2007
СообщениеЧт Авг 11, 2011 09:31    Ответить с цитатой
Полезность: Нет оценки
Нет, Алексей, ни то, ни другое не подтверждается. Запустил в SQL-Навигаторе код вьюхи - она выдала все значения массива в порядке ввода. SQL-запрос на данные массива STRING_REC тоже возвращает введённые значения в порядке ввода. Всё-таки, это в момент вывода экранной формы, похоже, значения выпадающего списка сортируются по алфавиту...
lexus
Профи


Вступление в Клуб: 28.09.2007
СообщениеЧт Авг 11, 2011 10:45    Ответить с цитатой
Полезность: Нет оценки
там же еще сам Навигатор может добавлять сортировку.
В свойствах вьюхи, закладка Флаги - "Не использовать сортировку".
vek21
Участник со стажем


Вступление в Клуб: 20.09.2007
СообщениеЧт Авг 11, 2011 11:52    Ответить с цитатой
Полезность: Нет оценки
Поставил. Не помогло...(((((
kit83rd
Участник со стажем


Вступление в Клуб: 05.02.2010
СообщениеЧт Авг 11, 2011 14:47    Ответить с цитатой
Полезность: Нет оценки
Combo.SortOrder As Integer

Свойство имеет смысл только для контрола "Поле со списком".
Устанавливает и возвращает порядок сортировки данных в выпадающем списке. Возможные значения:
• 0 – сортировка по возрастанию;
• 1 – сортировка по убыванию;
• 2 – использовать сортировку, определенную в представлении.
vek21
Участник со стажем


Вступление в Клуб: 20.09.2007
СообщениеЧт Авг 11, 2011 16:40    Ответить с цитатой
Полезность: Нет оценки
И вот ведь что поразительно, Евгений: не помогает даже это! Shocked
Причем, устанавливаю в клиент-скрипте Combo.SortOrder = 1 и вижу - сортировка выпадающего списка на экранной форме становится обратной, то есть в принципе SortOrder работает, но если установить SortOrder = 2, то сортировка по алфавиту всё равно остаётся! При этом если просто сделать select из вьюхи "Полный список" в структуре STRING_REC, то видно, что вьюха возвращает введённые значения не по алфавиту, а в порядке ввода!..
ssa774
Профи


Вступление в Клуб: 30.11.2007
СообщениеЧт Сен 13, 2012 13:06    Ответить с цитатой
Полезность: Нет оценки
Коллеги, а как быть, если доступа нет?
Посмотрела операцию TRC.[EDIT_ABONENT]. У пользователей, запускающих операцию должен быть доступ к представлению Стркутуры - Строка - Полный список.
Можно ли как-то организовать выпадающий список на форме, чтобы не заморачиваться с доступом к конкретному типу/представлению?
Мне нужно на форме изменения депозита юрика из выпадающего списка выбрать одно значение и потом это значение записать в свойства договора.
Можно, конечно, и дать доступ к представлению. Но проблема в следующем: дают доступ тем же группам, которые могут добавлять/изменять депозитные договоры. А если потом список этих групп поменялся, допустим, еще кого-то пустили договоры править. И эти новые люди не увидят содержимого списка. Как бы так извернуться, чтобы представление было видно всем.
kai
Профи


Вступление в Клуб: 16.08.2012
СообщениеВт Сен 18, 2012 17:54    Ответить с цитатой
Полезность: Нет оценки
ssa774,

Вы спрашиваете, можно ли иметь доступ к какому-то объекту, не получив его. Нет, нельзя.
Представление должно быть и оно (не должно, но лучше чтобы) было выбрано для использования у ссылки/массива на экранной форме.
Лучше создайте вариант с требуемым, но минимальным набором колонок.
Чтобы не раздавать доступ пользователям на тип, у представления отключите проверку доступа к типу.
Чтобы пользователи не видели его в списке ЦФТ-Навигатора, поставьте галочку "Доступно только в операциях".

"...чтобы представление было видно всем...", найдите многочисленную группу (/роль) и раздайте доступ этой группе (/роли) пользователей.
danzki
Участник - экстремал


Вступление в Клуб: 30.09.2010
СообщениеПн Мар 27, 2017 17:33    Ответить с цитатой
Полезность: Нет оценки
Снова об этих списках.

Есть Конструктор ТБП с таким списком на форме.
Открывается быстро. В списке - то, что хочу.

Есть Редактор ТБП, который наследует форму, все Переменные и Параметры от Конструктора.

Тело
Код:

   v_this ref [TBP];
begin
   if this is not null then
      v_this := this;
      &BASE$SETVARS;
      v_this := &BASE$EXECUTE(v_this);
   end if;
end;


Проверка
Код:

   v_this ref [TBP];
begin
   if this is not null then
      v_this := this;
      &BASE$SETVARS;
      &BASE$VALIDATE(v_this);
      &BASE$GETVARS;
   end if;
end;


Редактор долго открывается. В загрузке в Комбо боксе все содержимое таблицы Z#STRING_REC

Подскажите что не так с передачей параметров?
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы Часовой пояс: GMT + 3
На страницу Пред.  1, 2, 3  След.
Страница 2 из 3

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru