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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.04.2013, 16:10   #1  
Mila is offline
Mila
Участник
 
73 / 31 (2) +++
Регистрация: 21.04.2006
Создание номерной серии в DAX2012
Добрый день. Подскажите пожалуйста, что я делаю не так.
Передо мной стоит простая задача (в предыдущих версиях я ее неоднократно делала): необходимо в модуль Расчеты с клиентами добавить новую номерную серию.
1. В класс NumberSeqModuleCustomer, метод loadModule добавляю код:

datatype.parmDatatypeId(extendedtypenum(ObjectId));
datatype.parmReferenceLabel(literalStr("@SYS93408"));
datatype.parmReferenceHelp(literalStr("@SYS93408"));
datatype.parmWizardIsContinuous(true);
datatype.parmWizardIsManual(NoYes::No);
datatype.parmWizardIsChangeDownAllowed(NoYes::No);
datatype.parmWizardIsChangeUpAllowed(NoYes::No);
datatype.parmWizardHighest(999999);
datatype.addParameterType(NumberSeqParameterType::dataArea, true, false);
this.create(datatype);

2. Запускаю синхронизацию АОТ
3. Создаю на таблице CustParameters метод:

clientserverstatic NumberSequenceReference numRefObjectId()
{
return NumberSeqReference::findReference(extendedTypeNum(ObjectId));
}


4. Насколько я помню из предыдущих версий, теперь в форме Параметры модуля расчетов с клиентами, на вкладке Номерные серии должна появиться новая запись с новой номерной серией, но ее НЕТ.
В Управление организацией/Номерные серии при попытке создания новой номерной серии тоже не появляется новая номерная серия
Старый 04.04.2013, 16:13   #2  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Теперь так не получится. Надо джобик писать, чтобы появилась номерная серия. Ну чтоб не так скучно было, как в прошлых версиях. Запуск следующего кода поможет точно (он воссоздаст вообще все номерные серии):
X++:
static void NumberSeqApplicationModuleLoadAll(Args _args)
{
    NumberSeqApplicationModule::loadall();
}
А вообще вот:
Цитата:
Note In Microsoft Dynamics AX 2009, number sequence references could be initialized by restarting the Application Object Server (AOS). In Microsoft Dynamics AX 2012, the initialization of references to populate the NumberSequenceDatatype and NumberSequenceParameterType tables has moved to the initialization checklist. To initialize the newly created references, run a job that executes the LoadModule method.

You can also reinitialize all references by running a job that executes the LoadAll method in the NumberSequenceModuleSetup class. However, for reinitializing all references, you must ensure that there are no existing number sequences already defined in the system..
Using the Enhanced Number Sequence Framework in Microsoft Dynamics AX 2012 - стр. 15
http://technet.microsoft.com/en-us/l.../hh272879.aspx
За это сообщение автора поблагодарили: sukhanchik (2), Logger (1), leva (1), Mila (1), IvanS (1), farlander (1), alex55 (3), r2d2 (1).
Старый 04.04.2013, 16:21   #3  
Mila is offline
Mila
Участник
 
73 / 31 (2) +++
Регистрация: 21.04.2006
Спасибо Вам Огромное. Так и знала, что чего-то было добавлено. Столько времени потратила.
Старый 04.04.2013, 17:27   #4  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
А мне не помогал такой джоб. Приходилось читать глобальный кеш, очищать его и потом инициализировать номерные серии, иначе они просто не виделись системой. Правда, речь шла про "новый" модуль со своими сериями.
__________________
Ivanhoe as is..
Старый 04.04.2013, 17:33   #5  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Да, когда я делал номерные серии в собственном модуле, то приложение тоже сначала не видело мой новый класс. Тоже чистил кэш, перезапускал АОС и в некоторый момент все заработало. Меня вообще в AX2012 этот момент раздражает. Пишешь код, пишешь, но чтобы он заработал надо периодически в бубен стучать. Например, добавил я значение в энум, написал некий код, его использующий, потом удалил добавленное значение. А система еще долго считала, что такое значение есть. В старых версиях такого никогда не было.
Старый 04.04.2013, 18:13   #6  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Я в итоге использовал такой джоб, на двух инсталляциях срабатывало с первой попытки.
X++:
// IF 15.02.2013 KCAI_RMM
static void RMM_NumberSeqInit(Args _args)
{
    NumberSeqModuleRMM      numberSeqModuleRMM = new NumberSeqModuleRMM(); // это класс обслуживающий ваш новый модуль
    NumberSeqGlobal         numberSeqGlobal = appl.numberSeqGlobal();
    ;

    numberSeqModuleRMM.load();

    SysGlobalObjectCache::clearAllCaches();
    numberSeqGlobal.buildModulesMap();
}
__________________
Ivanhoe as is..
За это сообщение автора поблагодарили: AlGol (2), ta_and (1), sukhanchik (4), Logger (3), Ar (1), leva (1), wojzeh (1), S.Kuskov (2), arhat (1).
Теги
ax2012, number sequence, документация, номерная серия, полезное

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Принадлежит ли код определенной номерной серии? Poleax DAX: Программирование 7 23.09.2010 13:06
Создание новой номерной серии "шаг за шагом" belugin DAX: База знаний и проекты 5 01.08.2009 12:50
Пропуски в непрерывной номерной серии JBOS DAX: Функционал 0 30.07.2009 10:07
Создание новой номерной серии chanchala DAX: Программирование 3 01.06.2009 16:49
Непрерывность номерной серии YaHooka DAX: Функционал 7 30.06.2005 18:04

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

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

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