Во-первых я использую DROP DOWN COMBO BOX. В качестве переменной ввода STA:RankID, наполнение из RAN:RankID. Под DROP DOWN COMBO BOX вывод звания из справочника. Закладка Action, кнопка Embeds в обработка событий в поле после сгененрированного кода вставляю
ForceRefresh = True
DO RefreshWindow
и все!
Пример АПП в аттаче. По - моему нормально работает. Мало того, при массовом вводе оператор может запомнить коды званий и вводить цифрами!
(Запомнить от практики, а не заучивать!)
Такие списки просто вставлять, из ручных вставок только обновление экрана! Использую для маленьких и простых списков. Если выбор чего-то сложного - только BrowseСправочник или SelectСправочник. Например настройка набора услуг на лицевой счет для квартплаты. Надо для выбора показать услугу, соц.норму по услуге и по какому тарифу эта соц.норма, указать и цыфровые значения и краткие названия!
Информации как раз на строку по ширине экрана! Выборка в строку из трех справочников!
Или выбор услуг для какой - то обработки (10 из 20 возможных) - это 10 вызовов одного BrowseСправочник или SelectСправочник.
--
Best regards,
Чаплыгин
(Добавление)
Во-первых я использую DROP DOWN COMBO BOX.
Речь шла не об этом изрващенном контрол-шаблоне (в виде, предложенном велосипидистами он просто не подлежит использованию - ИМХО), а об FileDrop-шаблоне.
В качестве переменной ввода STA:RankID, наполнение из RAN:RankID.
В цивилизованном мире в 99% случаев делается следующее:
1. Показывается "Наименование", содержащееся в справочнике.
Причем показывается в этом же поле, а не в каком-то дополнительном!
2. Сохраняется в базе "Код", содержащийся в справочнике.
Т.е. нужно показывать в списке RAN:RankName, а сохранять (а следовательно выполнять позиционирование и прочие настроки на старте процедуры) RAN:RankID.
Пример АПП в аттаче. По - моему нормально работает.
А по моему ненормально.
Мало того, при массовом вводе оператор может запомнить коды званий и вводить цифрами!
(Запомнить от практики, а не заучивать!)
Точно! нефиг расслабляться ему! пусть учит коды!
Такие списки просто вставлять, из ручных вставок только обновление экрана!
Просто - потому что неправильно. По своей практике обратил внимание,
что зачастую простые решения очень часто неправильные
--
Best regards,
Vadym mailto:
vadim@softcreator.com
ICQ:
82308757
Речь шла не об этом изрващенном контрол-шаблоне (в виде, предложенном велосипидистами он просто не подлежит использованию - ИМХО), а об FileDrop-шаблоне.
Именно так. Combo подразумевает автоматическое дополнение справочника,
что мне совсем ни к чему.
Т.е. нужно показывать в списке RAN:RankName, а сохранять (а следовательно выполнять позиционирование и прочие настроки на старте процедуры) RAN:RankID.
Мой вопрос сформулирован лучше, чем у меня самого

Это реально сделать средствами стандартных шаблонов?
--
С.А.
(Добавление)
Пример АПП в аттаче. По - моему нормально работает.
Посмотрел, спасибо.
Работает, увы, совсем не так, как мне нужно.
Оператор не должен знать про какие-то коды, и уж тем более вводить их
вручную.
Подобную функциональность у меня сейчас обеспечивает string + trigger
lookup button, а хочется чтобы было красиво - выппадающий список и
ничего лишнего.
Вообще, вся эта возня затеяна с одной целью: понять, можно ли это
сделать стандартными шаблонами и с минимумом (а лучше - вообще без)
ембедов. Либо я что-то делаю неправильно, либо это невозможно. С
ембедами делается довольно просто, но не хочется жестко привязываться,
потому как кроме званий из справочников должно выбираться еще несколько
параметров и в разных формах. Писать для каждой ембеды - это можно сразу
удавиться.
Судя по дискуссии, стандартные clarion не позволяют такого. Жаль.
--
С.А.
То, что я пробовал делать с выпадающими списками в стандартных шаблонах, мне очень не нравилось. Но это было очень давно и последние версии от SV я не смотрел.
С уважением,
Владимир Смелик vovs@bigfoot.com
(Добавление)
Я делал для DropList из ШВС след. образом:
1) заводил лок. переменную, соотв. Locate полю в DropList'e, делал ее
в качестве Use-переменной для DropList.
2) в EMBED для NewSelection после GET...
вставлял строку принуждительноо присвоения значения Locate поля USE
переменной.
3) Значения ключевого поля записывемого из справочника, задаем в
закладке Action. Соотвественно заполяемое поле и поле справочника.
Например: в дроп листе выводится поле ENT:Title
заводим Title - лок. переменная, делаем ее USE.
в EMBED: Title=FLD5::ENT:Title
может можно как-то и подругому - но так точно работает
--
Mfg,
Anton mailto:
ustim@web.de
Я всегда делал переменную из базы (редактируемая запись базы) в качестве Use-переменной для DropList! Тогда всегда на корректировке автоматом связанные справочники готовы! Только делал дополнительное отображение рядом с полем DropList символьных наименований выбранных значений!
--
Best regards,
Чаплыгин
Что-то я не понял, как это - "рядом символьное отображение"?
Дублирование информации из дропбокса или как? Можно пример такого app/dct ?
--
С.А.
Показ на экране символьных полей из справочника, например наименование выбранного материала и единица его измерения, или что - либо еще, что лежит в справочнике и не вписывается в редактируемую базу. Только для удобства пользователя.
--
Best regards,
Чаплыгин
(Добавление)
Например: в дроп листе выводится поле ENT:Title
заводим Title - лок. переменная, делаем ее USE.
в EMBED: Title=FLD5::ENT:Title
AU> может можно как-то и подругому - но так точно работает
По другому можно сделать проще

создавать локальную переменную, совпадающую в типом целевой переменной и на входе процедуры иметь эту переменую пустой (так будет в случае не-AUTO переменной). Никаких дополнительных вставок кода не нужно.
В стандартных шаблонах нужно изголяться с присвоениями - как, пардон уже не помню (ибо задача решена один раз и давно).
Уточнение - естественно это переменная должна использоваться как USE-переменная
--
Best regards,
Vadym
То ли я тупой, то ли как, но каким образом в эту пустую переменную
попадет значение из базы? Или для присваивания нужен отдельный embed?
--
С.А.
А смотри ШВС. Там есть "Чем заполнять" и "Что заполнять".
Т.е. сам в шаблоне указываешь связываемые поля.
Что-то я не понял, как это - "рядом символьное отображение"?
Дублирование информации из дропбокса или как? Можно пример такого app/dct
?
Смею предположить, что в ДропЛисте лежит список кодов, а рядом показывается расшифровка. На всякий случай рядом с компом оператора на стене наклеены простыни с кодами справочников.
С уважением,
Владимир Смелик
Т.е. сам в шаблоне указываешь связываемые поля.
Ну так это же есть и в стандартных шаблонах в actions для file-loaded
droplist? Или нет?
В справочнике всего два поля - код и расшифровка. Оператор видит только
расшифровку. На экране.
Мне нужно, чтобы при редактировании записи в дроплисте отображалась
расшифровка соответствующая коду, имеющемуся в базе.
--
С.А.
(Добавление)
А чем не нравится когда в ДропЛисте лежит список кодов, а рядом показывается расшифровка? Если в ДропЛисте только расшифровка по - вашему лучше? Или пользователь будет меньше листать ДропЛист?
--
Best regards,
Чаплыгин
Оператору не нужны коды! Они создаются по autoincrement при формировании
справочника. Список воинских званий сравнительно невелик, да и оператор, как бы это сказать...
--
С.А.
Ну почему сразу не нравится? Просто другой подход к инетрфейсу. Как логическое развитие данного подхода могу предложить еще более простой в реализации вариант - избавить пользователя от какого-то невнятного поля наименования, а предложить ему просто вводить код в entry-поле.
И ему по-кайфу м программер не напрягается.
--
Best regards,
Vadym
Да и вообще... Должно быть четкое разделение ролей:
Поставщик данных - тот, кто порождает данные.
Кодировщик данных - тот, кто работает со всякими рубрикаторами и кодификаторами, выполняет некоторую входную проверку данных.
Оператор - тот, кто вводит уже закодированные данные.
При такой схеме оператору вообще не нужны все эти мнемонические справочники. Он набивает только цифры.
Впрочем, такая схема применялась во времена, когда были Постановщики задачи, Алгоритмисты, Программисты и
Операторы.
С уважением,
Владимир Смелик
(Добавление)
Пример из моей практики: НЕ моя программа по материалам, один из пользователей влепил болты под другим кодом с тем же названием.
Другой пользователь сделал операцию с болтами, и обратился ко мне за помощью - не сходится отчет! В программе высвечивались коды материала и я нашел причину!
Если следовать рекомендациям "НЕ показывать коды!", а только наименования - как искать причину в такой ситуации, как найти операцию с болтами под другим кодом и таким же названием?
При редактировании любой записи название будет одно и то же!
Я не рассматриваю ограничение на повтор названия - может быть ситуация, когда ограничение не допустимо или не возможно... не об этом речь! Если drop down combo box - можно вводить код, можно выбирать из списка - как кому нравится! Если пользователь часто выбирает из списка одни и те же материалы(или что то еще), он постепенно запомнит эти коды и будет их вводить сразу! Не выбирая из списка! Экономя время на набивке больших объемов данных!
И совсем не надо оклеивать стены тем, что высвечивается в ДропЛисте!
--
Best regards,
Чаплыгин
Написал: ClaList(2)