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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.05.2006, 15:18   #1  
Aslan is offline
Aslan
Участник
 
98 / 10 (1) +
Регистрация: 23.08.2005
Адрес: Астана
Как передать временную таблицу
Необходимо из класса передать временную таблицу в MenuItem_output
и далее в отчёт..учитывая что при вызове класса и отчёта вызываются
отдельные диалоги.....
Старый 22.05.2006, 15:25   #2  
MironovI is offline
MironovI
Участник
 
724 / 77 (4) ++++
Регистрация: 30.05.2005
Учитывая что таблица живет в области видимости класса - то можно наверное через args.caller().getTable() - где getTable - метод класса, возвращающий таблицу.
Старый 22.05.2006, 15:25   #3  
Aslan is offline
Aslan
Участник
 
98 / 10 (1) +
Регистрация: 23.08.2005
Адрес: Астана
и сразу отмечу
object = this.args.caller();
table = object.getTable();

не помогает....
Старый 22.05.2006, 15:31   #4  
mit is offline
mit
Участник
Аватар для mit
 
386 / 36 (2) +++
Регистрация: 15.01.2003
Адрес: Moscow
PHP код:
    Args   args;
    ;
    
args = new Args();
    
args.record(tmpTable); 
и уже дальше передаете в отчет,
либо забираете отчетом из класса (должен на классе прописан метод, возвращающий вашу табл.) что то вроде
PHP код:
tmpTable parmtmpTable(tmpTable_tmpTable tmpTable)
{
    ;
    
tmpTable _tmpTable;
    return 
tmpTable;

Старый 22.05.2006, 15:33   #5  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Запаковать в map, например:
PHP код:
    Map tmpMap = new Map(Types::StringTypes::Container);

    while 
select tmpTable
    
{
        
tmpMap.insert(tmpTable.RecId, [...]);
    }

    return 
tmpMap.pack(); 
и аналогично распаковать на другой стороне.

Такие ухищрения необходимы только при передаче таблицы с клиента на сервер и наоборот.
За это сообщение автора поблагодарили: Кирен (1).
Старый 22.05.2006, 15:33   #6  
gaenar is offline
gaenar
Участник
 
151 / 63 (3) ++++
Регистрация: 26.03.2005
вот пример, пользуйте

(все совпадения имён классов являются случайными и не имеют отношение к какой-либо консалтинговой конторе )
Вложения
Тип файла: zip TableTmpTutorial.zip (2.9 Кб, 266 просмотров)
__________________
Умные тоже наступают на грабли, но только для того, чтобы поднять их с земли не нагибаясь.
Старый 22.05.2006, 15:34   #7  
MironovI is offline
MironovI
Участник
 
724 / 77 (4) ++++
Регистрация: 30.05.2005
Цитата:
Сообщение от Aslan
и сразу отмечу
object = this.args.caller();
table = object.getTable();

не помогает....
и не поможет, надо table.setTmpData(object.getTable());
Старый 22.05.2006, 19:39   #8  
Aslan is offline
Aslan
Участник
 
98 / 10 (1) +
Регистрация: 23.08.2005
Адрес: Астана
Дело в том что передать таблицу можно непосредственно в отчёт...
Но отчёт должен вызываться из SysReportRun, так как необходим диалог для выбора полей.Надо сохранить данные во временной таблице при выводе диалога отчёта.
Старый 22.05.2006, 20:01   #9  
Sada is offline
Sada
Программатор
Аватар для Sada
 
1,450 / 153 (8) ++++++
Регистрация: 29.03.2005
Адрес: Толи Барнаул, толи Москва
Ээээ...может я сейчас скажу глупость, но почему бы не оставить её обычной таблицей в таком случае и не чистить её в самом начале вызова класса???
Я понимаю, что это криво, но на начало (как временный вариант) поможет...

С уважением - Sada...
Старый 23.05.2006, 00:41   #10  
_AnK_ is offline
_AnK_
Участник
Аватар для _AnK_
Ex AND Project
 
160 / 31 (2) +++
Регистрация: 03.11.2005
Адрес: СПб
Цитата:
Сообщение от Sada
Ээээ...может я сейчас скажу глупость, но почему бы не оставить её обычной таблицей в таком случае и не чистить её в самом начале вызова класса???
В однопользовательском режиме даже будет работать
Старый 23.05.2006, 06:40   #11  
Aslan is offline
Aslan
Участник
 
98 / 10 (1) +
Регистрация: 23.08.2005
Адрес: Астана
Получается что упаковать таблицу никак нельзя?
Старый 23.05.2006, 09:03   #12  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,318 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Не вдаваясь в подробности - насколько сложно модифицировать исходный код, чтобы устранить проблему просто ее не создавая - хочется спросить - а чем плох совет EVGL http://www.axforum.info/forums/showt...416#post104416?
__________________
Возможно сделать все. Вопрос времени
Старый 23.05.2006, 16:59   #13  
Berg is offline
Berg
Участник
 
7 / 10 (1) +
Регистрация: 20.01.2006
Цитата:
Сообщение от _AnK_
В однопользовательском режиме даже будет работать
Добавить поле идентифицирующее сессию...
Старый 23.05.2006, 17:26   #14  
Aslan is offline
Aslan
Участник
 
98 / 10 (1) +
Регистрация: 23.08.2005
Адрес: Астана
Проблему решил, посредством цепочки :
Класс -> отчёт -> диалог отчёта ->метод fetch отчёта -> Класс (заполнение временной таблицы class.gettable) ->send на отчёте.
Старый 23.05.2006, 17:31   #15  
mit is offline
mit
Участник
Аватар для mit
 
386 / 36 (2) +++
Регистрация: 15.01.2003
Адрес: Moscow
ну, все верно, только обычно это делается в методе инит отчета. в нем же инициируются все остальные переменные, участвующие в формировании отчета
Старый 23.05.2006, 17:34   #16  
_AnK_ is offline
_AnK_
Участник
Аватар для _AnK_
Ex AND Project
 
160 / 31 (2) +++
Регистрация: 03.11.2005
Адрес: СПб
Цитата:
Сообщение от Berg
Добавить поле идентифицирующее сессию...
Может проще разобраться с временными таблицами?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Передать временную таблицу из формы в класс Eldar9x DAX: Программирование 26 20.06.2008 19:09
Два DataSource на одну временную таблицу mou DAX: Программирование 4 22.03.2008 11:00
импорт текст.файла во временную таблицу fialka DAX: Программирование 5 07.02.2007 15:42
создать и передать временную таблицу kitty DAX: Программирование 11 13.07.2006 14:40
Как при вызове класса передать в него таблицу? ArturK DAX: Программирование 7 09.04.2004 12:15

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

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

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