|
![]() |
#1 |
Участник
|
Можно ли динамически добавлять поля в грид?
Пытаюсь сделать так:
void clicked() { FormStringControl fscl; ; super(); fscl = Grid.addControl(FormControlType::String, "ItemGroupId"); fscl.dataSource(InventTable_ds); fscl.dataField(fieldnum(InventTable, ItemGroupId)); InventTable_ds.executeQuery(); } Колонка появилась но данных нет. |
|
![]() |
#2 |
Участник
|
Попробуйте addDataField вместо addControl
|
|
![]() |
#3 |
MCITP
|
И скорее всего это нужно делать не по клику на кнопку, а в init-е формы
|
|
![]() |
#4 |
Участник
|
Может ограничиться созданием нескольких гридов и показом их по мере нужды?
|
|
![]() |
#5 |
Участник
|
|
|
![]() |
#6 |
Administrator
|
Добавление поля в грид - операция более трудоемкая (для системы), нежели скрытие/показ поля.
Если Вы хотите именно добавить поле - то посмотрите форму и класс SysTableBrowser (обозреватель таблиц) - там происходит именно добавление полей (так как Вам надо) Однако, я бы рекомендовал не делать таблицу а-ля Excel. Сделать-то Вы сделаете. Только в следующий раз пользователи могут захотеть большего - а технически может случиться облом. Поэтому - можно просто добавить 2 поля: Значение аналитики и Название дилера. И сделать комбобоксы-фильтры, чтобы можно было посмотреть остатки в разрезе дилеров/аналитик. При этом будет работать стандартный фильтр по Ctrl+F3
__________________
Возможно сделать все. Вопрос времени |
|
![]() |
#7 |
Участник
|
Дело в том что дилеров больше 200 и на грид их всех добавлять само по себе трудоёмко а тем более если меняется их наличие то каждый раз прийдётся дёргать форму разработчику а это не есть хорошо :-)
|
|
![]() |
#8 |
Участник
|
Цитата:
А для пользователей предлагаемый вами вариант не тудоемок? ![]() |
|
![]() |
#9 |
Участник
|
|
|
![]() |
#10 |
Участник
|
Поставить до 200 галочек? Просто?!
|
|
![]() |
#11 |
Участник
|
Почему сразу 200? Обычно нужно до 20. Хотя 200 тоже можно (Специальной кнопкой отметить все и убрать ненужные)
Последний раз редактировалось Beast-L; 22.01.2008 в 17:57. |
|
![]() |
#12 |
Участник
|
Трудоёмко 200 (дилеров всего до 200) имелось ввиду если добавить их при создании формы, а потом скрывать ненужные. Менеджеры по закупкам одновременно работают только максимум с двадцатью но желательно иметь возможность работать и с большым количеством.
Хотят приблизительно так: |
|
![]() |
#13 |
Участник
|
Цитата:
А зачем добавлять 200 дилеров при создании, если нужно только 20? А большее количество - это сколько? меньше 200? меньше 100? меньше 50? меньше 25? |
|
![]() |
#14 |
Участник
|
со всеми дилерами никто не работает
до 20 использует один менеджер закупок другие до 20 использует второй менеджер закупок и т.д. а большее - больше 20 (желательно произвольное колличество выбранных для работы из всех возможных) Последний раз редактировалось Beast-L; 23.01.2008 в 17:38. |
|
![]() |
#15 |
Участник
|
Цитата:
Я тормоз? Чувствую что чего-то не понимаю. Цитата:
Вы сами пробовали работать с произвольным количеством? Пробовали печатать отчет, содержащий хотя бы 50 колонок? Ведь Аксапта масштабирует такие отчеты до микротекста... Ну, не может быть произвольного количества. По причинам физического ограничения зрения пользователей. Ну, попробуйте же сами. Зачем над пользователями то издеваться? Из ФИЗИЧЕСКОГО ограничения неизбежно следует, что существует некоторое максимальное число колонок, когда пользователь еще может удобно и нормально работать. Опыт подсказывает, что это очень небольшое число колонок - 10-20, максимум 30. А это значит, что вы как программист должны предусмотреть специальные случаи отображения большего числа колонок. Или переделать интерфейс так, чтобы и при большом числе данных было удобно с ними работать. Еще раз повторю свою мысль и закончу свое участие в этой ветке, пожалуй.
|
|
![]() |
#16 |
Участник
|
В эксель не прокатывает так как колонку "к отгрузке" заполнять должен сам пользователь.
Пользователи сейчас работают как раз с простынёй и хотят чтобы этой кучи колонок не было а были только нужные на данный момент. Сколько они выберут ? А если им захочеться больше? Или что ещё хуже действительно нужно будет. Например сделаю 20 им понадобиться 21. Может и не часто нужно будет но помоему раза достаточно. Кроме того даже просто с точки зрения спортивного интереса хочеться знать можно ли такое сделать. Лично мне было бы удобно работать с двумя гридами, но так они не хотят. Последний раз редактировалось Beast-L; 23.01.2008 в 18:14. |
|
![]() |
#17 |
Участник
|
почему просто не вывести все в эксель?
|
|
![]() |
#18 |
Участник
|
|
|
![]() |
#19 |
Участник
|
X++: ... "к отгрузке" ... это видимо: сформировать портянку, расставить значения, по кнопке ОК сформировать заказы Последний раз редактировалось ice; 23.01.2008 в 18:17. |
|
![]() |
#20 |
Участник
|
Да имменно так. Я как бы изначально спрашивал только про добавление колонки, и уточнение было ни к чему.
|
|