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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.03.2004, 14:28   #1  
Mystery is offline
Mystery
Участник
 
43 / 11 (1) +
Регистрация: 28.01.2004
Спасибо всем кто помог, все прекрасно работает за одним маленьким исключением. Номера партий генерятся в какой-то странной нумерации (просто присваивается номер 201, 202... и так далее). Хотелось бы чтоб генерировался в стандартной функциональности для настроек, например дата + номер лота... Исследовал класс InventUpd_Estimated и метод updateAutoDimBatchId и взял кусок из него. Заменил вызов numberSeq.num() на inventNumGroup.buildNumber. Но у меня почемуто выдает при созданнии партии ее текущий номер, а не следующий. Может у меня в коде что-то не так? Привожу пример кода

PHP код:
void run()
{
    
InventTrans inventTransCopy;
    
NumberSeq       numberSeq NumberSeq::newGetNum(InventParameters::numRefInventBatchSerialId());
    
InventDim       masterInventDimtmpInventDim;
    
InventBatch     masterInventBatchtmpInventBatch;
    
// -->
    
inventNumGroup      inventNumGroup;
    
// <--
;

    
setPrefix(InventTransSplit::description());

    try
    {
        
ttsbegin;

        if (!
this.validate())
            throw 
error("@SYS18447");

        
select forupdate inventTransCopy
            index hint RecId
            where inventTransCopy
.recId== inventTrans.recId;

        if (!
inventTransCopy.checkIsChanged(inventTrans))
            throw 
error("@SYS18447");



        
masterInventDim inventTransCopy.inventDim();
        
masterInventBatch InventBatch::find(masterInventDim.inventBatchIdinventTransCopy.ItemId);

        
tmpInventBatch.data(masterInventBatch);
        
//tmpInventBatch.inventBatchId = numberSeq.num();
        
inventNumGroup inventNumGroup::find(inventTransCopy.inventMovement().inventTable().batchNumGroupId);
        
tmpInventBatch.inventBatchId inventNumGroup.buildNumber(inventTransCopy.inventMovement(), typeId2ExtendedTypeId(typeId(InventBatchId)));

        
tmpInventBatch.initFromInventMovement(inventTransCopy.inventMovement());
        
tmpInventBatch.prodDate inventTransCopy.purchLine().M069_prodDate;
        
tmpInventBatch.expDate inventTransCopy.purchLine().M069_expDate;
        
tmpInventBatch.insert();

        
masterInventDim.inventBatchId tmpInventBatch.inventBatchId;
        
tmpInventDim InventDim::findOrCreate(masterInventDim);

        
inventTransCopy.updateSplit(splitQty);

        
inventTransCopy.inventDimId tmpInventDim.InventDimId;
        
inventTransCopy.update();

        
updRecId inventTransCopy.recId;

        
ttscommit;
    }
    catch (
Exception::Deadlock)
    {
        
retry;
    }


Старый 18.09.2008, 16:34   #2  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
В продолжение темы про разбиение проводок..
Возникла проблема. при обработке накладной нужно разбить проводки.
нажимаю Склад - Проводки - Функции - Разбиение.
создаётся две проводки с нужным количеством.
Обрабатываю накладную.. смотрю - одна проводка. в чём может быть причина.
Подскажите пожалуйста...
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Свёртывание складских проводок tricky DAX: Программирование 3 29.03.2007 12:47
Сумма и количество складских проводок при разноске складских журналов vasiliy DAX: Программирование 0 04.08.2005 11:04
Разбиение проводок при сопоставлении по поставщикам lugachy DAX: Функционал 11 24.05.2005 17:10
Сторно складских проводок IvanHARD DAX: Функционал 8 14.03.2005 14:15
Неверное формирование проводок по Закупке (3 по Дт и 5 по Кт) mpa DAX: Функционал 2 06.04.2004 05:44

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

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

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