Как скопировать значение описания поиска в другое поле?

У меня есть сетка под названием myGrid. Столбец A myGrid представляет собой поиск, который показывает 2 значения: код и описание. Я хочу скопировать описание выбранного элемента во второй столбец myGrid.

Как лучше всего это сделать?


person stighy    schedule 17.07.2012    source источник


Ответы (2)


Я сталкивался с этим несколько раз назад, и решение, которое я нашел, немного сложное, но работает нормально. Мне пришлось создать форму с нуля, которая в настоящее время используется в поиске. При вызове формы в методе lookup() не забудьте указать в аргументах «элемент».

В методе инициализации новой формы используйте element.selectMode(YourTable.Code), чтобы указать, какое поле будет выбрано. Переопределите метод closeSelect() новой формы и заставьте его вызывать метод parm, расположенный в вызывающей форме. Этот метод parm установит поле YourTable.Description текущей записи. Отправьте Description, связанный с записью из YourTable, выбранной пользователем в поиске.

Новая форма должна быть окном типа Popup со скрытой панелью инструментов, которая всегда находится сверху. Его источник данных должен быть YourTable.

Вызовите новую форму из метода поиска (или, что лучше, из метода на уровне таблицы, вызываемого из метода поиска), используя ClassFactory.formRunClass(args).

person Max    schedule 17.07.2012

Я нашел «простое» решение: мне нужно просто переопределить метод modifieldfield.

person stighy    schedule 17.07.2012
comment
Если ограничение PK установлено в поле «Код», оно работает безупречно, но если у вас может быть несколько строк с одинаковым значением в полях «Код», но с разным описанием (т. е. если ограничение PK установлено в обоих полях), это не сработает. - person Max; 17.07.2012