![]() |
#1 |
Участник
|
Ax3. Определение нахождения активной ячейки
Есть форма с Grid.
В Grid колонки 1, 2,3,4,5...N Задача - заставить работать так: 1. встать на ячейку 2. нажать на нее (ячейка не активизируется, а предлагается мини-выбор с пункутами) 3. выбрать пункт ----- и далее вопрос---- 4. определить на какой ячейки (строка, колонка) стоял пользователь 5. идти по колонкам всех строк Grid направо и узнать какая колонка заполнена: ее строка, колонка, значение (Id колонок идут в разнобой) Например, У меня 2 строки со значениями 1строка 1,2,0,4 2строка 5,6,0,0 Я хочу, активизировав значение 6 на 2 строке, узнать первое не 0 значение из колонок справа (идя слева направо от 6). Если не встретиться, то выдать ошибку. Не могу понять какими методами надо пользоваться в ds. |
|
![]() |
#2 |
Гость
|
вы что делаете?
вы что с аксаптой делаете? |
|
![]() |
#3 |
Участник
|
Вы уверены что вам нужен именно Grid? Т.е. помимо написанного вами вы хотите поддерживать также сортировку, фильтрацию, редактирование данных, со всеми вытекающими? Просто для исключительных вещей , таких как ваша задача? есть хороший контрол - Table.
|
|
![]() |
#4 |
Moderator
|
Цитата:
Arahnid, как думаете, Ваша задача может быть в принципе решена средствами Excel ? |
|
![]() |
#5 |
Участник
|
какое задание!? конкретный пример...
походу пока глюкинатор.. |
|
![]() |
#6 |
Участник
|
Сейчас задача решена в Excel. VBA ее по щелчку пальцев решает.
Просто хочу перенести ее в Аксапту. Да я понимаю, бзик на грани фантастики. Недавно осваивала раскрашивание, оно не получилось, т.к. Аксапта только с громадным трудом может работать с раскрашиванием ячеек. Теперь вот решила это попробывать. У меня есть табличка. На основе нее форма. В таблице есть строки,о которых я сказала, и в примитиве задача, которую я описала. Последний раз редактировалось Arahnid; 04.03.2010 в 16:07. |
|
![]() |
#7 |
Moderator
|
|
|
![]() |
#8 |
Участник
|
Если значения "однородные", то моё решение задачи такое:
1) создать тип на подобие "Dimension" 2) поставить размер массива такой, какой нужно 3) на Грид поставить авто-группу с етим полем [оно будет массив и будут Н-полей] 4) валидация происходит по строчно или как угодно X++: boolean checkLine(table, currentIdx) { for (idx = 1; idx < currentIdx; idx++ ) { if (table.field[idx] == '') return false; } return true; } |
|
![]() |
#9 |
Участник
|
От массива отказалась, т.к. его нельзя использовать в расширенных запросах.
А Spreadsheet по веткам форума применяется к Excel, а как это могло бы помочь с работой в Аксапте не ясно. |
|
![]() |
#10 |
Участник
|
... ActiveX контроль...
вот тебе и поможет. почему нельзя использовать в запросах? ведь дименсии работают... |
|
![]() |
#11 |
Moderator
|
??
Spreadsheet - это ActiveX, который может быть контролом формы Аксапты, т.е. на форме у вас может быть "маленький Excel" - с цветом, сортировкой, формулами, реакцией на события и т.п. Например, в таком стиле: http://www.axforum.info/forums/blog.php?b=26 (посмотрите сразу там вторую картинку) Последний раз редактировалось Gustav; 04.03.2010 в 17:02. |
|
![]() |
#12 |
Участник
|
Решение куда круче задачи, но большое спасибо попробую изучить эту возможность.
|
|
![]() |
#13 |
Участник
|
К сожалению - не всегда
![]() |
|
Теги |
grid, spreadsheet, table control |
|
![]() |
||||
Тема | Ответов | |||
Ax3: Workflow и Axapta | 0 | |||
axcoder: AxPath pugin for Tabax which works with Ax3, Ax4, Ax2009 | 0 | |||
Определение ставки НДС (Ax3.0) | 1 | |||
ячейки приемки | 12 | |||
Буферные ячейки на складе - зачем? | 16 |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|