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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.05.2007, 12:01   #1  
rusalaudinov is offline
rusalaudinov
Участник
 
91 / 36 (2) +++
Регистрация: 24.05.2007
ты хочешь сказать что надо написать:void clicked(){ReportRun.QueryRun().Prompt();}
Старый 30.05.2007, 09:22   #2  
Andrux is offline
Andrux
Участник
Axapta Retail User
 
263 / 17 (1) ++
Регистрация: 29.05.2007
м да, вот это Вы все меня ободрили, можно сразу идти вешаться?
Старый 30.05.2007, 09:44   #3  
Andrux is offline
Andrux
Участник
Axapta Retail User
 
263 / 17 (1) ++
Регистрация: 29.05.2007
тогда буду вопросы задавать, я еще жить хочу . уважаемые эксперты и не очень вот такой первый вопрос знаю просто, но не могу сделать. Есть форма. Нужно, чтобы при создании новой записи, появлялась новая форма. По нажатию ок - данные сохранялись, при нажатии отмена - нет. Я делаю так:
1. Перекрываю метод датасорса главной формы create():

X++:
void create(boolean _append = false)
{
   if (salesForm.create()) // в классе реализована
            super(_append);
}
---------------------------
// salesForm.create()
X++:
boolean create()
{
    Args            _args = new Args();
    FormRun          CreateSales;
;
   _args.name(formstr(CreateSales));
    _args.caller(this);
    CreateSales = ClassFactory.formRunClass(_args);
    CreateSales.init();
    CreateSales.run();
    CreateSales.wait();
        if (CreateSales.closedOk())
        return true;
    else
        return false;
}
нормально формачка появилась

2. Перекрываю метод init() вызываемой формы:
X++:
public void init()
{
    super();
      if (!element.args().caller())
    {
        throw error("@SYS22539");
    }
    salesForm = element.args().caller();
}
3. Перекрываю методы write() и validatewrite() датасорса вызываемой формы
X++:
public boolean validateWrite()
{
    boolean ret;
  if (!element.closedOK())
       return true;
    ret = super();
    return ret;
}
 
public void write()
{
    //super();
    if (!element.closedOK())
       return;
   try
    {
        ttsbegin;
        SalesTable.insert();
        ttscommit;
    }
        catch(Exception::error)
    {
        SalesTable.recid = 0;
        element.close();
        throw Exception::error;
    }
    SalesTable_ds.research();
    SalesTable_ds.refresh();
    salesForm.newSalesId(salesTable.salesId);
}
4. Перекрываю метод canclose() вызываемой формы
X++:
boolean  canClose()
{;
    if (element.closedOk() && !salesTable_ds.validateWrite())
    {
        return false;
    }
    salesTable_ds.write();
    if (!element.closedOk())
    {
        return true;
    }
    return super();
}
и не работает нифига не сохраняет данные
Старый 30.05.2007, 10:12   #4  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 438 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Иногда бывает полезно перекрыть метолы insert, update, write на интересующей таблице и поставить точки останова. А вообще за один трэйс в Axapte разработчикам системы надо по медали дать. Великая вещь.
За это сообщение автора поблагодарили: Red Stranger (1).
Старый 30.05.2007, 10:23   #5  
Lemming is offline
Lemming
Участник
Аватар для Lemming
 
1,144 / 343 (14) ++++++
Регистрация: 20.04.2004
Адрес: Москва, Чайнатаун в Люблино
Записей в блоге: 10
!
Andrux рекомендую сформулировать вопрос в терминах человеко-ориентированной логики и задать его в новой ветке. Вряд ли кто-то будет за Вас отлаживать часть Вашего кода

p.s. Если я правильно понял, речь идет о форме SalesTable. Так вот, там уже реализован вызов диалога перед созданием новой записи. Посмотрите как это работает в стандарте.
Старый 30.05.2007, 10:26   #6  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 438 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Цитата:
Сообщение от Lemming Посмотреть сообщение
p.s. Если я правильно понял, речь идет о форме SalesTable. Так вот, там уже реализован вызов диалога перед созданием новой записи. Посмотрите как это работает в стандарте.
Правильно, если он есть. Я сам два раза в неделю раньше туда лазил.
Старый 30.05.2007, 10:23   #7  
Andrux is offline
Andrux
Участник
Axapta Retail User
 
263 / 17 (1) ++
Регистрация: 29.05.2007
Неее. я сдаваться не собираюсь. Буду разбираться.
Так что, все написано правильно? а че не работает тогда
Старый 30.05.2007, 10:34   #8  
Andrux is offline
Andrux
Участник
Axapta Retail User
 
263 / 17 (1) ++
Регистрация: 29.05.2007
да, да, именно та. Там SalesTable и SalesCreateOrder. но у меня ума не хватает еще понять все . вроде все так делаю а не работает
Старый 30.05.2007, 14:30   #9  
Andrux is offline
Andrux
Участник
Axapta Retail User
 
263 / 17 (1) ++
Регистрация: 29.05.2007
не получается
Старый 29.05.2007, 12:06   #10  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Если в вашей форме инициализируется ReportRun, то да
__________________
Axapta v.3.0 sp5 kr2
Старый 29.05.2007, 12:09   #11  
rusalaudinov is offline
rusalaudinov
Участник
 
91 / 36 (2) +++
Регистрация: 24.05.2007
как это в форме инициализируется репортран. у меня помоему ничего не инициализируется. просто есть форма, на которую добавлена кнопка. и есть совершенно не связанный с формой отчет. как же мне сделать?
Старый 29.05.2007, 12:14   #12  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,821 / 402 (17) +++++++
Регистрация: 23.03.2006
создай MenuItem (Output) для твоего отчета. и мышкой перенеси его на форму, автоматически создастся кнопка. если нужно укажи на ней datasource.
Старый 29.05.2007, 12:10   #13  
rusalaudinov is offline
rusalaudinov
Участник
 
91 / 36 (2) +++
Регистрация: 24.05.2007
ПАМАГИТЕ!!!
Старый 29.05.2007, 12:12   #14  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Вы бы задачу описали не в стиле - хочу что бы все, тогда и ответы были бы более содержательными.
Вы отчет хотите показать, предварительно выдав форму настройки запроса?
__________________
Axapta v.3.0 sp5 kr2
Старый 29.05.2007, 12:13   #15  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Может вот так подойдет?

X++:
void clicked()
{
    Args        args = new Args(reportStr(Cust));
    ReportRun   report = classFactory.reportRunClass(args);
    ;
    report.query().interactive(true);
    report.run();

    super();
}
Старый 29.05.2007, 12:15   #16  
rusalaudinov is offline
rusalaudinov
Участник
 
91 / 36 (2) +++
Регистрация: 24.05.2007
да, я хочу, чтоб по нажатю кнопки появлялась та самая стандартная форма запроса, после нее само собой появляся бы отчет. у меня есть сформированный отчет. есть форма с кнопкой баттон. вопрос. что нужно написать в методе кликед. _._,_,_,_,_,_, Разве непонятно объясняю?
Старый 29.05.2007, 12:19   #17  
rusalaudinov is offline
rusalaudinov
Участник
 
91 / 36 (2) +++
Регистрация: 24.05.2007
ага, здорово. только появляется. не мой отчет. как сделать мой?
Старый 29.05.2007, 12:20   #18  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Эээ. Ну, указать название Вашего отчета, к примеру
Вместо Cust
За это сообщение автора поблагодарили: rusalaudinov (1).
Старый 29.05.2007, 12:24   #19  
rusalaudinov is offline
rusalaudinov
Участник
 
91 / 36 (2) +++
Регистрация: 24.05.2007
Я ВЫРАЖАЮ МЕГАРЕСПЕКТ ЭТОМУ ВЕЛИЧАЙШЕМУ ЧЕЛОВЕКУ!!!
Старый 29.05.2007, 18:09   #20  
Andrux is offline
Andrux
Участник
Axapta Retail User
 
263 / 17 (1) ++
Регистрация: 29.05.2007
Народ помогите!!!!!!! Начал работать в аксапте, понял, что вообще не соображаю. Не могу разобраться. книжку еременко прочитал, и проектики поделал, получилось. А когда реальные задачи встали, тут пришел пипец. Пробовал посмотреть что написано в репозитории - ваще темный лес, я в ужасе, где можно информацию по программированию в аксапте найти? ваще в инете нет ничего.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
12 способов поиска ответов на вопросы Роман Кошелев DAX: База знаний и проекты 9 27.03.2008 12:20
aEremenko: Ответы на вопросы индийского коллеги Blog bot DAX Blogs 0 29.04.2007 00:24
kolesov: SOA: дополнительные вопросы Blog bot DAX Blogs 0 04.12.2006 17:10
Вопросы для сдачи экзамена по CRM на русском Alex-bs DAX: Прочие вопросы 1 06.02.2006 16:42
Некоторые вопросы внедрения приложений. Часть 2 Михаил Ковалев DAX: Прочие вопросы 0 27.05.2002 10:43

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

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

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