05.08.2008, 07:11 | #1 |
китайский стажер
|
FormListItem.stateChecked() еще раз :(
Да, была такая тема уже. Но все равно не работает
Помогите пожалуйста! Вот код: X++: public void buildUtilElementsTypeList() { FormListItem formListItem; int idx=0, i=0; SysDictEnum SysDictEnum; boolean checked; str UtilTypeLabel; ; SysDictEnum = new SysDictEnum(EnumNum(UtilElementType)); UtilElementsTypes.deleteAll(); while (i <=enumcnt(UtilElementType) ) { UtilTypeLabel= SysDictEnum.index2Label(i); formListItem = new FormListItem(UtilTypeLabel,i); formListItem.idx(i); select firstonly tmptable where tmptable.UtilElementType == i; if (tmptable) checked = true; else checked = false; idx = UtilElementsTypes.addItem(formListItem); formListItem = UtilElementsTypes.getItem(idx); formListItem.stateChecked(checked); UtilElementsTypes.setItem(formListItem); i++; } }
__________________
Может быть выйдет, а может не-е-е-ет... Новая песня вместо штиблет.. |
|
05.08.2008, 13:05 | #2 |
MCTS
|
А как сохраняется временная таблица от открытия до открытия?
Последний раз редактировалось altap; 05.08.2008 в 13:58. |
|
05.08.2008, 14:03 | #3 |
Участник
|
X++: while (i < enumcnt(utilElementType) )
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0 |
|
05.08.2008, 14:09 | #4 |
MCTS
|
а поле tmptable.UtilElementType - имеет тип Enum UtilElementType?
если - да, то На правах предположения: следует учесть, что перечисление может не иметь элемента с EnumValue 0, да и эти EnumValue в перечислении могут не идти сплошным множеством. Это я про выражение X++: tmptable.UtilElementType == i возможно правильнее было-бы что-то типа: X++: tmptable.UtilElementType == SysDictEnum.index2Value(i) Последний раз редактировалось altap; 05.08.2008 в 14:11. |
|
05.08.2008, 14:33 | #5 |
Участник
|
мне кажется, даже если писать
X++: tmptable.UtilElementType == SysDictEnum.index2Value(i) X++: UtilTypeLabel= SysDictEnum.index2Label(i) сооветственно надо проверять в цикле, существует ли такое значение enum-а , равное i |
|
05.08.2008, 14:56 | #6 |
MCTS
|
|
|
|
За это сообщение автора поблагодарили: Qaz Qwerty (1). |
05.08.2008, 15:03 | #7 |
Участник
|
|
|
05.08.2008, 21:55 | #8 |
китайский стажер
|
Таблица временно не временная, а обычная.
Вот как это выглядит: 1 шаг - открыли форму и отметили элементы: 2 шаг сохранили в таблице отмеченные значения: 3 шаг снова открыли форму и пытаемся отметить существующие в таблице значения: Вот такая беда.
__________________
Может быть выйдет, а может не-е-е-ет... Новая песня вместо штиблет.. |
|
05.08.2008, 22:07 | #9 |
китайский стажер
|
MSDN about DictEnum:
Name - ReqDate Label - @SYS18075 ("Requirement date") FeatureKey - ReqSchedAction EnumValue - 0 Index - First (Index = 0) - Position in AOT
__________________
Может быть выйдет, а может не-е-е-ет... Новая песня вместо штиблет.. |
|
05.08.2008, 22:12 | #10 |
китайский стажер
|
Цитата:
Сообщение от altap
следует учесть, что перечисление может не иметь элемента с EnumValue 0, да и эти EnumValue в перечислении могут не идти сплошным множеством. Это я про выражение
X++: tmptable.UtilElementType == i возможно правильнее было-бы что-то типа: X++: tmptable.UtilElementType == SysDictEnum.index2Value(i)
__________________
Может быть выйдет, а может не-е-е-ет... Новая песня вместо штиблет.. |
|