Суть такова, что табла ppstatus содержит три записи name ('Оформляемый', 'Корректируемый', 'Утверждённый') и хотелось бы, чтобы выбирались именно эти поля из ppstatus.
Если вы хотите, чтобы именно из ppstatus.name аля list шла выборка, то ищите quickchoice (например в настройке хозоперации вы набираете в поле счет).
Можно проще без всяких доп.таблиц - просто в главной объявляете поле с типом word.
Нумеровать каждый пункт вовсе не обязательно - просто перечисляете через ",". PickButton тоже лишний наверное.
Да хотелось бы, чтобы выборка шла по ppstatus.name. Но по QuickChoice ничего не меняется. При выборе значений Утверждённый и Корректируемый, остаётся Оформляемый.
Вообще совместное использование имени логической таблицы и атрибута LIST недопустимо - поведение интерфейса становится непредсказуемым...
Как и советовали - необходимо выбрать один из трех вариантов
а) либо поместить вычисляемую переменную типа word
б) либо поместить выч. переменную/поле лог таблицы и делать передачу параметра (т.е. описывать отработку F3 / PickButton)
в) либо делать обработку быстрого поиска квикчойз...
Знающий людей разумен.
Знающий себя просветлён.
Побеждающий людей силен.
Побеждающий самого себя могущественнен
Maverick писал(а):
а) либо поместить вычисляемую переменную типа word
б) либо поместить выч. переменную/поле лог таблицы и делать передачу параметра (т.е. описывать отработку F3 / PickButton)
в) либо делать обработку быстрого поиска квикчойз...
Сделал через QuickChoice. Работает.
По этому поводу вопрос: QuickChoice обязательно создавать в отдельном интерфейсе как в vipprogr.chm или всё можно сделать в одном и том же интерфейсе?
А об вариантах a) и б), если можно поподробней.
1) можно делать в одном файле. можно в нескольких - вопрос внутренней эстетики и эргономики кода.
2) по поводу а и б
а) Объявляете переменную на уровне вьюхи типа word. Описываете ее в скрине как элемент list. Изменения отлавливаете в событии изменения значения поля. там же можете на основании значения листа переприсвоить это значение другому полю вьюхт/таблицы или вообще вычислить значение на основании значения листа
б) Аналогично. Но вешаете обработку F3 (PickButton). по F3 передаете значение как параметр в свою ф-ю или другой интерфейс (обычно интерфейс выбора). При необходимости делаете вычисления, поиск, отбор, изменение значения листа/др.записи, присвоение.. все что угодно... возвращаете старое или новое значение листа (как заложено вашей логикой).
в случаях а и б нужно юзать в конце ресканпанель таблицы корневой
Знающий людей разумен.
Знающий себя просветлён.
Побеждающий людей силен.
Побеждающий самого себя могущественнен
1. List "превращает" целочисленное значение в строковое. Поэтому использовать этот атрибут со строковым полем, как в примере, неразумно: Атлантис, вероятно, будет пытаться преобразовать значение поля в целое число и сопоставить ему текст из своего внутреннего списка. Редактировать такое поле без извращений будет невозможно.
2. Использование атрибута pickbutton совместно с list также бессмысленно: у строки с выпадающим списком рисуется своя собственная кнопочка выбора и предусмотрена соответствующая реакция на ее нажатие.
BlazeBio, сформулируйте, пожалуйста, суть задачи, но только без привязки к конкретным вариантам ее решения (типа list или quickchoice).
Screw писал(а):
BlazeBio, сформулируйте, пожалуйста, суть задачи, но только без привязки к конкретным вариантам ее решения (типа list или quickchoice).
Суть задачи заключается в том, что есть документы по производственным планам. Они имеют три статуса: корректируемый, утверждённый и закрытый. Эти статусы хранятся в таблице ppstatus(поле name). В таблице планов pptitle хранится ссылка на ppstatus.nrec. Необходимо организовать для пользователя выбор статуса в интерфейсе, используя статусы из таблицы ppstatus.