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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.03.2005, 15:59   #1  
max_woody_ru is offline
max_woody_ru
Участник
 
61 / 11 (1) +
Регистрация: 27.10.2004
Адрес: Москва
И снова unpack
Имеется класс. Вот все, что в нем есть:
PHP код:
class RO_Test extends SalesReport_Invoice_RU
{
}

public 
identifiername lastValueElementName()
{
    return 
reportstr(SalesPurchInvoice_RU);
}

protected 
boolean showDialog()
{
    return 
true;
}

public static 
void main(Args _args)
{
    
RO_Test      launcher = new RO_Test();
    ;

    if (
launcher.prompt())
    {
        
launcher.run();
    }

При запуске в двухуровневой конфигурации все работает. На трехуровневой - первый раз отрабатывает, второй - валится на unpack предка. Что сделано неправильно?

Чтобы не лазить по дереву объектов:
RunBaseReport
SalesPurchReport_RU
SalesPurchReport_Invoice_RU
SalesReport_Invoice_RU
RO_Test

pack и unpack есть только в RunBaseReport.

Валится - значит убивает клиентское приложение. Совсем
__________________
C уважением, Максим
Старый 04.03.2005, 16:08   #2  
mit is offline
mit
Участник
Аватар для mit
 
386 / 36 (2) +++
Регистрация: 15.01.2003
Адрес: Moscow
Посмотрите, где запускается класс и где его предок скорее всего один на сервере - другой на клиенте. Запускайте все в одном месте
Старый 04.03.2005, 16:10   #3  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Кэш удалите.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 04.03.2005, 16:11   #4  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Временная таблица, имхо....
Старый 04.03.2005, 16:12   #5  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
2mit
Они все будут на сервере создаваться, так как у SalesPurchReport_RU стоит RunOn = Server, а менять его в потомках нельзя.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 04.03.2005, 16:17   #6  
mit is offline
mit
Участник
Аватар для mit
 
386 / 36 (2) +++
Регистрация: 15.01.2003
Адрес: Moscow
у нас такое было, решилось именно так. предок закускался на сервере, класс отчета на клиенте.
Старый 04.03.2005, 16:18   #7  
max_woody_ru is offline
max_woody_ru
Участник
 
61 / 11 (1) +
Регистрация: 27.10.2004
Адрес: Москва
Кэш... не помогает
__________________
C уважением, Максим
Старый 04.03.2005, 16:23   #8  
max_woody_ru is offline
max_woody_ru
Участник
 
61 / 11 (1) +
Регистрация: 27.10.2004
Адрес: Москва
Нет, увы, все запускается на сервере
__________________
C уважением, Максим
Старый 04.03.2005, 16:25   #9  
mit is offline
mit
Участник
Аватар для mit
 
386 / 36 (2) +++
Регистрация: 15.01.2003
Адрес: Moscow
еще одно уточнение, какие нибудь переменные в
#localmacro.CurrentList
...
#endmacro
складываете?
Старый 04.03.2005, 16:27   #10  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Инкрементная компиляция, перезапуск AOS?

В коде проблемы, по-моему, нет.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 04.03.2005, 16:28   #11  
max_woody_ru is offline
max_woody_ru
Участник
 
61 / 11 (1) +
Регистрация: 27.10.2004
Адрес: Москва
Нет, не складываю. ВСЕ, что есть в классе, я написал. Больше нет _ни_байта_

Но: есть подвижки. Все начинает работать, если убить данные _по_отчету_. Так что класс сам по себе не при чем
__________________
C уважением, Максим
Старый 04.03.2005, 16:35   #12  
mit is offline
mit
Участник
Аватар для mit
 
386 / 36 (2) +++
Регистрация: 15.01.2003
Адрес: Moscow
Попробуйте в classDeclaration
Вставить такой код.
PHP код:
    int   tempInt;


    
#define.CurrentVersion(1)
    #localmacro.CurrentList
           
tempInt
    
#endmacro 
т.е. объявить переменную и упаковать. Иногда пользовался - помогает
Старый 04.03.2005, 16:35   #13  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Кстати, ошибку-то какую выдает?
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 04.03.2005, 16:37   #14  
max_woody_ru is offline
max_woody_ru
Участник
 
61 / 11 (1) +
Регистрация: 27.10.2004
Адрес: Москва
2 mit не помогает
2 Maxim Gorbunov никакую - клиент слетает и все
__________________
C уважением, Максим
Старый 04.03.2005, 16:40   #15  
mit is offline
mit
Участник
Аватар для mit
 
386 / 36 (2) +++
Регистрация: 15.01.2003
Адрес: Moscow
заполните переменную tempInt значением и перед запуском далите данные по отчету
Старый 04.03.2005, 16:42   #16  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Кстати, класс запускается и на клиенте и на сервере. Прошу прощения, в первый раз не обратил внимание на то, что showDialog у Вас true возвращает.

max_woody_ru, а дебаггером удается строку определить, которая к ошибке приводит? И стек вызовов, если можно, покажите, пожалуйста.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 04.03.2005, 16:54   #17  
max_woody_ru is offline
max_woody_ru
Участник
 
61 / 11 (1) +
Регистрация: 27.10.2004
Адрес: Москва
(C) \Classes\SalesPurchReport_RU\newQueryRun - line 4
(S) \Classes\SalesPurchReport_RU\makeQueryRun - line 5
(S) \Classes\RunBaseReport\unpack - line 32
(S) \Classes\xSysLastValue\getLast - line 16
(S) \Classes\RunBase\getLast - line 9
(S) \Classes\RunBaseBatch\getLast - line 3
(S) \Classes\RunBase\promptPrim - line 8
(S) \Classes\RunBase\prompt - line 10
(S) \Classes\RunBaseBatch\prompt - line 3
(S) \Classes\RunBaseReport\prompt - line 13
(C) \Classes\RO_Test\main - line 8

PHP код:
//solution for client reports W98
client static QueryRun newQueryRun(ReportRun _reportRun)
{
    return new 
QueryRun(_reportRun);  // Вот здесь все и валится

__________________
C уважением, Максим
Старый 04.03.2005, 17:07   #18  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Да. Там, видимо, работает код, который должен работать только для W98.

Попробуйте метод makeQueryRun() поправить. Например так:

PHP код:
#define.Win98Platform(1)
public void makeQueryRun()
{
    ;
    if (
conpeek(WinAPI::getOSVersion(), 3) > #Win98Platform)
        
queryRun = new QueryRun(reportRun);
    else
        
queryRun SalesPurchReport_RU::newQueryRun(reportRun);
    
// ...

__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 04.03.2005, 17:19   #19  
max_woody_ru is offline
max_woody_ru
Участник
 
61 / 11 (1) +
Регистрация: 27.10.2004
Адрес: Москва
Я сделал пока проще. Возможно, что и неправильно, но клиентов на Win98 у нас нет
PHP код:
client server static QueryRun newQueryRun(ReportRun _reportRun)
{
    return new 
QueryRun(_reportRun);  // Здесь больше не валится и работает нормально

Сейчас еще проверю метод Maxim Gorbunov
__________________
C уважением, Максим
Старый 04.03.2005, 17:22   #20  
max_woody_ru is offline
max_woody_ru
Участник
 
61 / 11 (1) +
Регистрация: 27.10.2004
Адрес: Москва
Работает тоже. Так и оставлю. Ибо правильней. Всем спасибо за помощь, Maxim Gorbunov - отдельное
__________________
C уважением, Максим
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
следуюший затык pack/unpack Varmen DAX: Программирование 20 27.02.2009 14:58
Ошибка в методах unpack pack Arahnid DAX: Программирование 13 25.02.2009 00:50
Как работают Pack и UnPack ? moid DAX: База знаний и проекты 4 05.03.2007 15:16
снова COM Connector _A_ DAX: Прочие вопросы 11 02.09.2005 16:38
Как удалить сохраненные данные методов pack()/unpack() ? djoker DAX: Программирование 23 04.10.2004 17:33

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 07:35.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.