AXForum  
Go Back   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Forgotten Your Password?
Register Forum Rules FAQ Members List Today's Posts Search

 
 
Thread Tools Search this Thread Display Modes
Old 06.10.2004, 13:05   #1  
Oz is offline
Oz
Участник
Oz's Avatar
 
293 / 51 (2) ++++
Join Date: 22.08.2002
Location: Москва
Возврат по закупке с накладными расходами через немедленное получение
Уважаемые коллеги!

У нас стоит Axapta 3.0 SP3
У меня юзеры провели накладную по закупке с накладными расходами. Выяснилось, что товар в строке был не тот. Решили сторнировать через возврат, причем используя ввод отрицательного количества в поле "Немедленное получение". Как бы была надежда, что в этом случае правильно сторнируется проводка по накладным расходам.
Увы, провести в этом случае накладную не удалось: система выдала ошибку "Объект LedgerBondTransObject_RU не инициализирован". При детальном рассморении вопроса выяснилось, что ошибка происходит на участке коде метода MarkupAdjustment \ adjustCreditNote:
PHP Code:
currencyBondLog conNull();
bondLog ledgerBondClient.currentLog();
for (
1<= conlen(bondLog); i++)
{
       if (
ledgerBondClient.bondTransObject(conPeek(currencyBondLogi)).ledgerTransObject().parmCurrencyCode() == currencyCode)
        {
            
currencyBondLog += conPeek(currencyBondLogi);
        }

на строке
PHP Code:
if (ledgerBondClient.bondTransObject(conPeek(currencyBondLogi)).ledgerTransObject().parmCurrencyCode() == currencyCode
проблема в том, что метод bondTransObject должен вернуть объект класса LedgerBondTransObject_RU по переданному индексу (conPeek(currencyBondLog, i)). Очевидно по вышеуказанному коду, что этот индекс для i==1 может быть только 0.
У ledgerBondClient запрошенного объекта с индексом 0 не оказалось.
В этом нет ничего удивительного, если учесть, что добавление объекта класса LedgerBondTransObject_RU происходит ТОЛЬКО в методе LedgerBondTransList_RU \ add, код которого приведен ниже:
PHP Code:
public boolean add(LedgerBondTransObject_RU _bondTransObject)
{
    
boolean ret true;

    if (! 
_bondTransObject.vrefId())
    {
        
error(Error::wrongUseOfFunction(funcName()));
        return 
false;
    }
    
ret transMap.insert(_bondTransObject.vrefId(), _bondTransObject);
    
lastVrefId _bondTransObject.vrefId();

    return 
ret;

_bondTransObject.vrefId() и есть тот самый индекс, по которому впоследствии и происходит поиск этого объекта в коллекции LedgerBondTransList_RU.
Обратите внимание, что судя по коду, индекс добавляемого объекта НЕ МОЖЕТ БЫТЬ НУЛЕВЫМ!
То есть, исходя из этого, приведенный код метода MarkupAdjustment \ adjustCreditNote не будет работать ни при каких обстоятельствах!
Итак, то ли лыжи не едут, то ли я... чего то не понимаю. Может застрелиться?

Коллеги! Может кто нибудь сталкивался с такой проблемой и даже смог ее обойти?
Или мне забить на указанный в начале поста способ возврата товара и попробовать другие (новую строку с отрицательным количеством, например), начхав на то, что проводку по накладным расходам при этом сторнировать нормально придется вручную?

Заранее благодарен!
__________________
Здесь могла быть Ваша реклама!
Old 06.10.2004, 13:20   #2  
linney is offline
linney
Участник
linney's Avatar
 
175 / 12 (1) ++
Join Date: 11.12.2002
Location: Киев
Воспроизводится
Ошибка воспроизводится - уже хорошо.

Но все-таки возврат сделать можно!!!
Я удалил накладной расход в закупке совсем
и провел немедленное получение с "-"

По проводкам видно, что накладные расходы сторнируются
Old 06.10.2004, 13:31   #3  
Oz is offline
Oz
Участник
Oz's Avatar
 
293 / 51 (2) ++++
Join Date: 22.08.2002
Location: Москва
И действтельно, если удалить накладные расходы из строки - все проходит, правда сторнирование накладных расходов прошло немного не так, как хотелось: получилась не обратная проводка, а проводка суммы накладных расходов с товаров на складе на счет, указанный как "Себестоимость по кредит-ноте" в разноске товара по закупке.
Собственно такая картина происходит и при обновлении вновь созданной строки с отрицательным количеством.
Ну что ж, видимо не судьба...
__________________
Здесь могла быть Ваша реклама!
Old 11.10.2004, 10:08   #4  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Join Date: 10.06.2002
Location: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Quote:
Изначально опубликовано Oz
...
И действтельно, если удалить накладные расходы из строки - все проходит, правда сторнирование накладных расходов прошло немного не так, как хотелось: получилась не обратная проводка, а проводка суммы накладных расходов с товаров на складе на счет, указанный как "Себестоимость по кредит-ноте" в разноске товара по закупке.
...
На самом деле накладные расходы не были сторнированы. А та сумма, которая списалась на счет "Себестоимость по кредит-ноте" всего лишь означает разницу между списываемой со счета учета запасов суммой по "накладной"/кредит-ноте и средневзвешенной себестоимостью, которая была рассчитана на момент разноски "накладной".

Раньше накладные расходы, которые относятся на себестоимость, в 3.0 вообще не сторнировались. Толи в сп2, толи в сп3 эту багу поправили (в 2.5, кстати, это работало). Я проверил в международной версии сп3 — накладные расходы сторнируются отлично. А вот почему в сп3 СНГ возникает ошибка, вы можете попробовать поинтересоваться у локализаторов, пользуясь случаем, что они в последнее время уделяют форуму много внимания.
__________________
С уважением,
glibs®
Old 11.10.2004, 14:06   #5  
bio_unit is offline
bio_unit
Участник
bio_unit's Avatar
Сотрудники компании GMCS
Ex AND Project
 
119 / 77 (3) ++++
Join Date: 21.04.2004
Эта ошибка исправлена в SP3HF2
т.е. нужно загрузить HotFix2 на SP3

RU-369-3-THBV
VSA7827288
VSA7862397
При разнесении накладных расходов на накладную возврата поставщику выдается ошибка.
 

Similar Threads
Thread Thread Starter Forum Replies Last Post
сторнирование накладной по закупке с накладными расходами bes DAX: Функционал 9 13.02.2015 17:29
Немедленное получение Benq DAX: Функционал 3 17.03.2008 13:27
Возврат товара поставщику через 76 счет tolstjak DAX: Функционал 1 27.01.2005 15:32
Тип "потребление по закупке (возврат)" asdf DAX: Функционал 8 08.12.2004 16:36
Не сторнируются проводки по накладной с накладными расходами visual DAX: Функционал 2 10.11.2004 13:34

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Рейтинг@Mail.ru
All times are GMT +3. The time now is 15:40.
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Contacts E-mail, Advertising.