23.01.2013, 13:11 | #1 |
Участник
|
Здравствуйте, господа программисты.
Прошу помощи. Есть таблица с полем Код Менеджера. Есть карточная форма на основании этой таблицы. Необходимо сделать так, чтобы выбор менеджера в форме происходил не стандартным способом с помощью установки свойств lookup и TableRelation, а чтобы TextBox работал как ComboBox. Чтобы выбор Менеджера происходил не "проваливанием" в списочкую форму Сотрудники, а выбором из выпадающего списка, который бы заполнялся динамически в момент запуска формы. Нужно это для того, чтобы пользователям было удобно работать на тачскрине. Я хотела было попробовать динамически сформировать свойство OptionString контрола TextBox, но до него из C/AL редактора не достучаться. Пробовала сформировать темповую таблицу со списком менеджеров и подсунуть её в свойство SourceExpr контрола TextBox. Тоже не получилось. Выдает ошибку. Поискала на форуме, ничего не нашла, кроме того, что использование сторонних ActiveX компонентов крайне проблематично. Может решение на поверхности, но я не вижу. Поделитесь мыслями, если есть. Заранее спасибо. |
|
23.01.2013, 13:42 | #2 |
Участник
|
Ой, досадная ошибка в названии темы.
Конечно же: ВОзможно ли динамическое формирование свойства OptionString контрола TextBox? Прошу прощения... |
|
23.01.2013, 14:59 | #3 |
Участник
|
Есть очень извращенный способ.
Создать табличку с единственным полем и определить набор значений в поле Option Value, например [0000],[1111],[2222],[3333] и т.д. При запуске формы которая должна отображать значение этого поля с нужными значениями, делать выгрузку объекта BLOB Reference в текстовой файл, заменять например [0000] на АААААА, [1111] на ББББББ и т.д. После чего снова загружать этот изменный файл в BLOB поле Объекта.
__________________
Want to believe... |
|
23.01.2013, 15:47 | #4 |
Участник
|
Цитата:
Сообщение от DA_NEAL
Есть очень извращенный способ.
Создать табличку с единственным полем и определить набор значений в поле Option Value, например [0000],[1111],[2222],[3333] и т.д. При запуске формы которая должна отображать значение этого поля с нужными значениями, делать выгрузку объекта BLOB Reference в текстовой файл, заменять например [0000] на АААААА, [1111] на ББББББ и т.д. После чего снова загружать этот изменный файл в BLOB поле Объекта. |
|
23.01.2013, 15:58 | #5 |
Участник
|
Можно написать свой OCX и использовать на форме. Кажется начиная с 5 такая штука работает.
Есть еще strmenu - позволяет делать динамический радиобатон с кнопками ок и отмена. |
|
23.01.2013, 16:49 | #6 |
Участник
|
Может попробуете DIALOG.STRMENU на триггере Lookup поля, если подойдет ))?
Location = record Location MyOptionString = text 1024 PHP код:
__________________
--------------------------------------------------------------------------------------------- "Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица |
|
23.01.2013, 22:44 | #7 |
Участник
|
Цитата:
Сообщение от captain
Может попробуете DIALOG.STRMENU на триггере Lookup поля, если подойдет ))?
Location = record Location MyOptionString = text 1024 PHP код:
Как здорово, что в NAV2013 у текстовых переменных отпало ограничение в 1024! |
|
23.01.2013, 23:14 | #8 |
Участник
|
Цитата:
Сообщение от DA_NEAL
Есть очень извращенный способ.
Создать табличку с единственным полем и определить набор значений в поле Option Value, например [0000],[1111],[2222],[3333] и т.д. При запуске формы которая должна отображать значение этого поля с нужными значениями, делать выгрузку объекта BLOB Reference в текстовой файл, заменять например [0000] на АААААА, [1111] на ББББББ и т.д. После чего снова загружать этот изменный файл в BLOB поле Объекта. А по теме: 1. не понятно, что за клиент - классический или ролеориентированный. Или вообще web. 2. если на планшете / ноуте с тачем / RDP открывается какой бы то ни было клиент Нав, то не проблема работать с лукап формами. Не очень удобно, но можно Динамический список от InTacto тоже вариант - не разворачивает форму на весь экран, но работает только если менеджеров 5-10. Иначе при 40-100 менеджеров он на экран не поместится. Т.е. трудозатраты на изобретение динамического выпадающего списка совершенно не сопоставимы с мнимым удобством от его использования. А как быть с полями дат, которые на яблочной продукции превращаются в крутилки гггг.мм.дд ? тоже изобретать ? Проще web клиент написать с использованием WS на серверной части имхо. А я бы еще ништяков захотел типа "вводишь первые буквы фамилии менеджера, а он тебе выпадающий список автоматом фильтрует" ) |
|
24.01.2013, 00:43 | #9 |
Участник
|
Если код менеджера совпадает по длине со словом "Козел", то 204,8 "Козла" на 1024 в выпадающем списке.Полагаю, что их намного меньше.))
С уважением.
__________________
--------------------------------------------------------------------------------------------- "Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица |
|
24.01.2013, 10:33 | #10 |
Участник
|
Огромное спасибо всем кто откликнулся!
Цитата:
Сообщение от max_hl
А по теме:
1. не понятно, что за клиент - классический или ролеориентированный. Или вообще web. Динамический список от InTacto тоже вариант - не разворачивает форму на весь экран, но работает только если менеджеров 5-10. Иначе при 40-100 менеджеров он на экран не поместится. А как быть с полями дат, которые на яблочной продукции превращаются в крутилки гггг.мм.дд ? тоже изобретать ? Проще web клиент написать с использованием WS на серверной части имхо. Менеджеров не больше 10 чел. А "Динамический список от InTacto " - это имеется в виду "strmenu - позволяет делать динамический радиобатон с кнопками ок и отмена." ? Я правильно поняла? Или что-то другое? Цитата:
Сообщение от captain
Может попробуете DIALOG.STRMENU на триггере Lookup поля, если подойдет ))?
Location = record Location MyOptionString = text 1024 PHP код:
Цитата:
Ещё раз всем большое спасибо! |
|
24.01.2013, 20:32 | #11 |
Участник
|
Цитата:
Динамический список от InTacto тоже вариант - не разворачивает форму на весь экран, но работает только если менеджеров 5-10. Иначе при 40-100 менеджеров он на экран не поместится.
Видимо про OCX мысли были.. Но у ТС клиент 5, так что не годится вариант. При таком кол-ве менеджеров вариант с STRMENU возможен. |
|
25.01.2013, 07:51 | #12 |
Участник
|
Цитата:
Сообщение от digol
lookup и TableRelation, а чтобы TextBox работал как ComboBox.
Чтобы выбор Менеджера происходил не "проваливанием" в списочкую форму Сотрудники, а выбором из выпадающего списка, который бы заполнялся динамически в момент запуска формы. Нужно это для того, чтобы пользователям было удобно работать на тачскрине. Я хотела было попробовать динамически сформировать свойство OptionString контрола TextBox, но до него из C/AL редактора не достучаться. Пробовала сформировать темповую таблицу со списком менеджеров и подсунуть её в свойство SourceExpr контрола TextBox. Тоже не получилось. Выдает ошибку. Поискала на форуме, ничего не нашла, кроме того, что использование сторонних ActiveX компонентов крайне проблематично. Я бы посоветовал подумать об веб-интерфейсах или смене платформы с Навижна, если удобство работы с тачкскрином основное требование. |
|
25.01.2013, 10:07 | #13 |
Участник
|
Следующей задачей для вас будут скорее всего древообразные списки и календарик
Забыл, еще калькулятор. |
|
25.01.2013, 11:49 | #14 |
Участник
|
Цитата:
Сообщение от rmv
Возможно ценой невероятных усилий Вы все-таки введете источник данных в option одной формы. Однако за одним контролом потянутся другие, вместо одной формы попросят переделать все... Если ли смысл использовать интерфейсы Навижна?
Я бы посоветовал подумать об веб-интерфейсах или смене платформы с Навижна, если удобство работы с тачкскрином основное требование. Если очень хочется можно перейти на 2009-й. Там в ролеорнтированном интерфейсе выпадающие списки. Но там будут свои проблемы ) |
|
25.01.2013, 19:09 | #15 |
Участник
|
|
|
26.01.2013, 00:58 | #16 |
Участник
|
Цитата:
Всех новшеств не перечислишь, инфы полно и в partner source и вообще в инете. |
|
26.01.2013, 16:55 | #17 |
Участник
|
..
Цитата:
От души советую переходить не на 2009, а сразу 2013! В 2013-м и кое-какие баги 2009-го исправили, и новых примочек добавилось, прога стала быстрее и зрелой. А главное: программа стала по настоящему ролеориентированной!
Всех новшеств не перечислишь, инфы полно и в partner source и вообще в инете. Поддерживаю. А иначе не все смогут перестроить мышление. Нав 2009 - окончание поддержки 2014.
__________________
--------------------------------------------------------------------------------------------- "Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица |
|
28.01.2013, 10:29 | #18 |
Участник
|
В общем, я поняла, что ничего путного пока не выйдет.
Вариант с STRMENU не подошел. Ещё раз всем спасибо. |
|
31.01.2013, 12:55 | #19 |
Участник
|
Цитата:
Сообщение от captain
..
Цитата:
От души советую переходить не на 2009, а сразу 2013! В 2013-м и кое-какие баги 2009-го исправили, и новых примочек добавилось, прога стала быстрее и зрелой. А главное: программа стала по настоящему ролеориентированной!
Всех новшеств не перечислишь, инфы полно и в partner source и вообще в инете. Поддерживаю. А иначе не все смогут перестроить мышление. Нав 2009 - окончание поддержки 2014. Когда сотни человек годами работают в классическом клиенте, когда годами разрабатывались достаточно специфические формы на временных талицах, куча отчетов наподобие счет-фактуры или ТОРГ-12, боюсь представить себе сколько Report'ов, которые используются в учете, коррекции себестоимости.. Я к тому, что все нужно делать постепенно и мышление менять тоже - сначала переход на ролиориентированный клиент, затем на web. Да и ресурсы нужны нешуточные. Была бы типовая платформа - другое дело. А вообще, читая багфикс по 2013 Наву как-то не возникает желания менять версию клиента.. И главное, уважаемые, где локализованный клиент ? З.Ы. Я клиент, а не партнер, доступа к ps нет. |
|