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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.06.2002, 09:44   #1  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Работа с номерными сериями.
Понадобилась возможность работать с номерными сериями из кода прогораммы, а именно - я програмно создаю новую закупку, при этом в соответствии с настроенной номерной серией ей должен присваиваться Id.

В результате экспериментов, я дошел до такого варианта:

PHP код:
    NumberSequenceReference _numberSecuenceReference;
    
NumberSequenceTable _numberSequenceTable;
    
PurchId    tmpPurchId;
    
PurchTable oldTbl;
    
str mask;
    
int ps;
    ;

    
super();


// ....................................................

//  a) Получаю новый номер закупки
    
_numberSecuenceReference purchParameters::numRefPurchId();
    
_numberSequenceTable NumberSequenceTable::find(_numberSecuenceReference.NumberSequence,true);

//  б) Составляю Id
    
mask _numberSequenceTable.Mask;
    
ps strscan(mask,'#'1strlen(mask));
    
tmpPurchId substr(mask,1,ps-1) + strrep('0',strlen(mask)-ps-2) + int2str(_numberSequenceTable.NextRec);

//  в) Увеличиваю счетчик в номерной серии
    
_numberSequenceTable.NextRec++;
    
_numberSequenceTable.update();

//----------------------------------------------------------------------------------------------------

    
oldTbl.PurchId tmpPurchId;
// .................................................... 
Не уверен, что делаю правильно, так как:

- пункт б) выглядит коряво. Наверное есть класси метод, который делает то же самое, но в общем случае, но я его не нашел.

- пункт в) - интуиция подсказывает мне, что должен быть метод, возвращающий очередной номер серии и увеличивающий его на единицу. Причем все это в одной транзакции. Конечно это могу делать и я, причем в транзакции, но неужели такого метода действительно нет ,
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Доступ к меню "Работа с документами" Kuat DAX: Администрирование 4 16.11.2007 17:07
Совместная работа заказчика и исполнителя в разных или одном слое? Кузин Владимир В. DAX: Программирование 6 08.08.2006 10:02
Проблема с номерными сериями soin DAX: Функционал 13 27.07.2004 15:36

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

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

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