AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.01.2004, 14:19   #1  
bucken is offline
bucken
Участник
Аватар для bucken
 
259 / 12 (1) ++
Регистрация: 04.09.2003
Адрес: Москва
Проблема с pack методом
1. Пишет такаую ошибку
"Неправильный тип элемента в вызове ConIns"
это происходит в вызове pack метода.

2. Код:
PHP код:
 class m_CommissionFeeDialog extends RunBaseReport
{

    
TransDate       fromDate;
    
TransDate       toDate;
    
int             numRep;
    
Percent         rewardPercent;
    
boolean         forCommitent;
    
boolean         isNSPExist;          

    
#define.CurrentVersion(1)
    #localmacro.CurrentList
        
fromDate,
        
toDate,
        
forCommitent,                  //bucken                 
        
isNSPExist                       //bucken 13/12/04 
    #endmacro

PHP код:
public container pack()
{
    return [
#CurrentVersion, #CurrentList] + [super()];

PHP код:
public boolean unpack(container packedClass)
{
    
container       _base;
    
boolean         _ret;
    
Integer         _version    conPeek(packedClass,1);

    switch (
_version)
    {
        case 
#CurrentVersion:
            
[_version#CurrentList, _base] = packedClass;
            
_ret super(_base);
            break;
       default:
            
_ret false;
    }
    return 
_ret;

3. Где ошибка.

P.S. В акспатпу перезаходил. )
__________________
Уточните значение слов и вы избавите человечество от половины его заблуждений. (Рене Декарт) / Axapta 2.5
Старый 14.01.2004, 14:55   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Re: Проблема с pack методом
super уже возвратил контейнер. Поэтому контейнер в контейнер упаковывать не надо.

Вместо
Цитата:
Изначально опубликовано bucken
PHP код:
public container pack()
{
    return [
#CurrentVersion, #CurrentList] + [super()];

надо писать

Цитата:
Изначально опубликовано bucken
PHP код:
public container pack()
{
    return [
#CurrentVersion, #CurrentList] + super();

Не проверял. Но по-моему так.
Старый 14.01.2004, 14:55   #3  
Garic is offline
Garic
NavAx
Аватар для Garic
NavAx Club
 
393 / 63 (3) ++++
Регистрация: 23.07.2002
Адрес: Москва
Именно для этого предназначено
#define.CurrentVersion(1)

Когда изменяете параметры, изменяйте версию.
__________________
С уважением, Игорь Ласийчук.
Старый 14.01.2004, 15:12   #4  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
to muzzy: + [super()] не приводит к тому, что результат дополнительно упаковывается в контейнер.
to garic: согласно вопросу проблема не в методе unpack(), а в методе pack(). CurrentVersion тут не при чем, хотя замечание верное.

Признаться, кроме критики, своих идей нет, кроме того, чтобы перекомпилировать все к чертовой бабушке.
За это сообщение автора поблагодарили: valentino (1).
Старый 14.01.2004, 15:34   #5  
bucken is offline
bucken
Участник
Аватар для bucken
 
259 / 12 (1) ++
Регистрация: 04.09.2003
Адрес: Москва
гораздо печальнее....
1) когда вручную прошел и откомпилил каждый метод класса - все заработало.
(Хотя уже несколько раз входил перезаходил в аксапту).
ну это грабли какие-то на мой взгляд....
2) По поводу упаковки контейнер в контейнер - да нет, так там и должно быть.
3) Да параметры добавлял. Но номер версии остался прежним.
__________________
Уточните значение слов и вы избавите человечество от половины его заблуждений. (Рене Декарт) / Axapta 2.5
Старый 14.01.2004, 15:40   #6  
bucken is offline
bucken
Участник
Аватар для bucken
 
259 / 12 (1) ++
Регистрация: 04.09.2003
Адрес: Москва
))))))))))))))))
to EVGL:
Цитата:
Признаться, кроме критики, своих идей нет, кроме того, чтобы перекомпилировать все к чертовой бабушке.
Оно самое и помогло. Какое совпадение. ))))))))))))))))))))))))))
Спасибо всем.
__________________
Уточните значение слов и вы избавите человечество от половины его заблуждений. (Рене Декарт) / Axapta 2.5
Старый 18.04.2007, 12:42   #7  
valentino is offline
valentino
Участник
Аватар для valentino
 
33 / 11 (1) +
Регистрация: 14.02.2007
to EVGL - спасибо!
Действительно, перекомпиляция классов SysQueryEdit, SysQueryForm - устраняет проблему!
За это сообщение автора поблагодарили: wojzeh (1).
Теги
ax2.5

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Dynamics AX Sustained Engineering: Microsoft Dynamics AX 2009 Service Pack 1 Released Blog bot DAX Blogs 5 21.11.2008 17:00
проблема с display методом kitty DAX: Программирование 6 29.11.2007 19:24
Проблема с EDIT методом и гридом Delfins DAX: Программирование 1 23.01.2007 21:36
Проблема с Edit методом PavelSR DAX: Программирование 12 09.06.2006 10:55

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:42.