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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.12.2011, 23:51   #1  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Не разносятся верно складские журналы
Прошу подсказать возможные причины следующего.

Разношу складской журнал типа Перенос, апдейтятся все нужные таблицы (InventTrans и так далее), но в LwdgerTrans операция не фиксируется. Счета у складов с которого (Счёт ГК) и на который переношу (Корр. счёт) разные.

Спасибо.

Последний раз редактировалось Cardagant; 27.12.2011 в 23:56.
Старый 28.12.2011, 00:01   #2  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от Cardagant Посмотреть сообщение
Прошу подсказать возможные причины следующего.

Разношу складской журнал типа Перенос, апдейтятся все нужные таблицы (InventTrans и так далее), но в LwdgerTrans операция не фиксируется. Счета у складов с которого (Счёт ГК) и на который переношу (Корр. счёт) разные.

Спасибо.
Какая версия аксатпы?
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 00:02   #3  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Версия: DAX 2009
Старый 28.12.2011, 00:18   #4  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Разноску запасов настроили (Управление запасами \ Настройка \ Разноска \ Разноска)?
Там на форме на вкладке Запасы необходимо сделать настройки для Расхода, Прихода, Внутрихолдинговые расчеты с клиентами, Внутрихолдинговые расчеты с поставщиками.

P.S. вот тут об одном приколе на эту тему писал...
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 00:25   #5  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Да, все настройки в форме Управление запасами \ Настройка \ Разноска \ Разноска сделаны верно.
Старый 28.12.2011, 00:41   #6  
gene is offline
gene
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
76 / 93 (4) ++++
Регистрация: 21.07.2006
Адрес: Москва
Цитата:
Сообщение от Cardagant Посмотреть сообщение
Разношу складской журнал типа Перенос, апдейтятся все нужные таблицы (InventTrans и так далее), но в LwdgerTrans операция не фиксируется. Счета у складов с которого (Счёт ГК) и на который переношу (Корр. счёт) разные.
Что означает "счета у складов"? В стандартной функциональности счета разноски движений номенклатуры не зависят от складов. У вас сделаны какие-то модификации?
В стандартной функциональности разноска в ГК будет выполняться только в случае, если при переносе изменяется сайт или, при использовании российских профилей учета, изменяется профиль учета. Еще есть зависимость от российского параметра: Управление запасами\ Настройка\ Параметры\ Разное\ Финансовая разноска\ Журналы переноса и заказы на перемещение. В последних ролапах AX2009 эта логика еще докручивалась, чтобы учитывать счета разноски, соответствующие профилям учета. Если у вас есть модификации разноски в зависимости от складов, они тоже должны быть вписаны в эту логику.
В общем, чтобы понять логику и от чего она зависит, смотрите метод класса InventMov_Jour_Transfer.mustBeBookedFinancially(), из него все должно быть очевидно.
За это сообщение автора поблагодарили: lev (5).
Старый 28.12.2011, 00:47   #7  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от gene Посмотреть сообщение
Что означает "счета у складов"? В стандартной функциональности счета разноски движений номенклатуры не зависят от складов. У вас сделаны какие-то модификации?
В стандартной функциональности разноска в ГК будет выполняться только в случае, если при переносе изменяется сайт или, при использовании российских профилей учета, изменяется профиль учета. Еще есть зависимость от российского параметра: Управление запасами\ Настройка\ Параметры\ Разное\ Финансовая разноска\ Журналы переноса и заказы на перемещение. В последних ролапах AX2009 эта логика еще докручивалась, чтобы учитывать счета разноски, соответствующие профилям учета. Если у вас есть модификации разноски в зависимости от складов, они тоже должны быть вписаны в эту логику.
В общем, чтобы понять логику и от чего она зависит, смотрите метод класса InventMov_Jour_Transfer.mustBeBookedFinancially(), из него все должно быть очевидно.
Ага, поддерживаю (немного меня опередили ). В первую очередь поверить галку "Журналы переноса и заказы на перемещение" в параметрах запасов, скорее всего она у вас не стоит. Перевод конечно у поля не ахти, если не читать HelpText, который пишется внизу формы при вставании на поле, трудно понять его предназначение
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 00:59   #8  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Цитата:
Сообщение от gene Посмотреть сообщение
Что означает "счета у складов"? В стандартной функциональности счета разноски движений номенклатуры не зависят от складов. У вас сделаны какие-то модификации?
Счета подбираются с учётом складской аналитики, а также аналитики профиля учёта, Владельца, номенклатуры и Номера производственного заказа. Это имелось ввиду.

Спасибо вам за советы. Завтра посмотрю подробнее места, указанные вами.
Старый 28.12.2011, 00:59   #9  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Ещё хочется добавить.
Если вы используете складскую аналитику "Профиль учета", то посмотрите вот эту тему (ссылка дана сразу на нужное сообщение от fed), она поможет вам избежать проблем с задвоением InventTransPosting'ов, при рпзноске переносов.
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 16:45   #10  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Посмотрел согласно вашим советам места в системе, всё верно. Так что здесь что-то ещё не так...
Старый 28.12.2011, 16:50   #11  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от Cardagant Посмотреть сообщение
Посмотрел согласно вашим советам места в системе, всё верно. Так что здесь что-то ещё не так...
А у вас метод mustBeBookedFinancially() класса InventMov_Jour_Transfer модифицирован?
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 16:55   #12  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Цитата:
Сообщение от lev Посмотреть сообщение
А у вас метод mustBeBookedFinancially() класса InventMov_Jour_Transfer модифицирован?
Прошу прощения, каким образом он должен быть модифицирован?
Старый 28.12.2011, 17:01   #13  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Вот код этого метода в системе:

X++:
boolean  mustBeBookedFinancially()
{
    InventDim   inventDimTo;
    InventDim   inventDimFrom;
    ;
    if (CompanyInfo::features_W() == CRSEFeatures_W::RU && !InventParameters::find().EnableTransferFinancialPosting_RU)
    {
        inventDimFrom = inventJournalTrans.inventDim();
        inventDimTo = inventJournalTrans.toInventDim();
        if (inventDimFrom.InventProfileId_RU == inventDimTo.InventProfileId_RU)
        {
            return false;
        }
    }

        if (InventParameters::find().InventPosting_ZTR)
    {
        if (this.accountBalanceSheet() == this.accountOperations())/* || this.accountOperations() && this.storno_RU()*/)//!!storno_RU
            return false;
        return true;
    }
    else if (!InventParameters::find().EnableTransferFinancialPosting_RU)
    {
        return false;
    }
   
    if (inventJournalTrans.InventTransId == inventJournalTrans.ToInventTransId || !inventJournalTrans.ToInventTransId)
        return false;

    if (!super())
        return false;

    inventDimFrom = inventJournalTrans.inventDim();
    inventDimTo = inventJournalTrans.toInventDim();

    if (CompanyInfo::features_W() == CRSEFeatures_W::RU && inventDimFrom.InventProfileId_RU != inventDimTo.InventProfileId_RU)
    {
        return true;
    }

    if (inventDimFrom.InventSiteId != inventDimTo.InventSiteId)
    {
        return true;
    }

    if (!InventDim::isInventDimEqualItemDim(this.dimGroupId(), inventDimFrom, inventDimTo))
    {
        return true;
    }

    return false;
}
Старый 28.12.2011, 17:08   #14  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от Cardagant Посмотреть сообщение
Прошу прощения, каким образом он должен быть модифицирован?
как раз он НЕ должен быть модифицирован
т.е. в стандартной системе, при наличии выше описанных в теме настроек, проводки по переносам создаются (вчера вечером протестил).
если у Вас проводки не создаются, значит скорее всего в системе были какие либо доработки. Проверка на возможность формирования фин операций в системе выполняется в указанном методе (mustBeBookedFinancially()).
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 17:14   #15  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Цитата:
Сообщение от lev Посмотреть сообщение
как раз он НЕ должен быть модифицирован
т.е. в стандартной системе, при наличии выше описанных в теме настроек, проводки по переносам создаются (вчера вечером протестил).
если у Вас проводки не создаются, значит скорее всего в системе были какие либо доработки. Проверка на возможность формирования фин операций в системе выполняется в указанном методе (mustBeBookedFinancially()).
Дебажил разноску, и этот метод в частности, интересный момент: метод выдаёт истину, то есть по логике разрешает создавать фин. операцию, но фин. операция не создаётся.


Такой вопрос ещё, быть может подскажете где происходит инициализация сумм для разноски журнала Перенос?
Старый 28.12.2011, 17:15   #16  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от Cardagant Посмотреть сообщение
Вот код этого метода в системе:

X++:
boolean  mustBeBookedFinancially()
{
    InventDim   inventDimTo;
    InventDim   inventDimFrom;
    ;
    if (CompanyInfo::features_W() == CRSEFeatures_W::RU && !InventParameters::find().EnableTransferFinancialPosting_RU)
    {
        inventDimFrom = inventJournalTrans.inventDim();
        inventDimTo = inventJournalTrans.toInventDim();
        if (inventDimFrom.InventProfileId_RU == inventDimTo.InventProfileId_RU)
        {
            return false;
        }
    }

        if (InventParameters::find().InventPosting_ZTR)
    {
        if (this.accountBalanceSheet() == this.accountOperations())/* || this.accountOperations() && this.storno_RU()*/)//!!storno_RU
            return false;
        return true;
    }
    else if (!InventParameters::find().EnableTransferFinancialPosting_RU)
    {
        return false;
    }
   
    if (inventJournalTrans.InventTransId == inventJournalTrans.ToInventTransId || !inventJournalTrans.ToInventTransId)
        return false;

    if (!super())
        return false;

    inventDimFrom = inventJournalTrans.inventDim();
    inventDimTo = inventJournalTrans.toInventDim();

    if (CompanyInfo::features_W() == CRSEFeatures_W::RU && inventDimFrom.InventProfileId_RU != inventDimTo.InventProfileId_RU)
    {
        return true;
    }

    if (inventDimFrom.InventSiteId != inventDimTo.InventSiteId)
    {
        return true;
    }

    if (!InventDim::isInventDimEqualItemDim(this.dimGroupId(), inventDimFrom, inventDimTo))
    {
        return true;
    }

    return false;
}
вот этих строк в стандарте нет:
X++:
if (InventParameters::find().InventPosting_ZTR)
    {
        if (this.accountBalanceSheet() == this.accountOperations())/* || this.accountOperations() && this.storno_RU()*/)//!!storno_RU
            return false;
        return true;
    }
    else if (!InventParameters::find().EnableTransferFinancialPosting_RU)
    {
        return false;
    }
1. Что за поле "InventPosting_ZTR" в параметра запасов?
2. И ещё разок на всякий случай спрошу, в параметрах галка "Журнал переноса и заказ на перемещение" (EnableTransferFinancialPosting_RU) стоит?
3. Ещё нужно разобраться, что у Вас возвращают методы this.accountBalanceSheet() и this.accountOperations(), может быть в них ещё что то дописано.

В общем нужно воспользоваться дебагером и потрассировать разноску журнала переноса.
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 17:17   #17  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от Cardagant Посмотреть сообщение
Дебажил разноску, и этот метод в частности, интересный момент: метод выдаёт истину, то есть по логике разрешает создавать фин. операцию, но фин. операция не создаётся.
ага, значит метод mustBeBookedFinancially() возвращает истину? а дальше разноску дебажили?
может у вас какие то ещё проверки написаны не только в этом методе?
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 17:19   #18  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от lev Посмотреть сообщение
вот этих строк в стандарте нет:
X++:
if (InventParameters::find().InventPosting_ZTR)
    {
        if (this.accountBalanceSheet() == this.accountOperations())/* || this.accountOperations() && this.storno_RU()*/)//!!storno_RU
            return false;
        return true;
    }
    else if (!InventParameters::find().EnableTransferFinancialPosting_RU)
    {
        return false;
    }
поправлю сам себя, нет на Ax2009 RU5, может в RU7 появились...
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 17:23   #19  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от Cardagant Посмотреть сообщение
Такой вопрос ещё, быть может подскажете где происходит инициализация сумм для разноски журнала Перенос?
на сколько я знаю, это цена последней закупки, но тут я сомневаюсь...
надеюсь народ, кто точно знает, либо подтвердит, мои предположения, либо напишет как есть на самом деле.
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 28.12.2011, 17:23   #20  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Цитата:
Сообщение от lev Посмотреть сообщение
ага, значит метод mustBeBookedFinancially() возвращает истину? а дальше разноску дебажили?
может у вас какие то ещё проверки написаны не только в этом методе?
При дебаге было видно, что AmountMST и AmountCur, CostAmount нулевые, хотя определены параметры количество и цена в строке журнала. Возможно, суммы некорректно передаются в ваучер?

Последний раз редактировалось Cardagant; 28.12.2011 в 17:31.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Складские журналы Andrux DAX: Функционал 4 21.10.2011 17:12
Складские журналы, перемещение в гриде стрелками курсора coolibin DAX: Программирование 8 20.11.2008 19:37
Фотозагадка - складские журналы mpa DAX: Прочие вопросы 10 06.10.2005 12:56
Складские журналы Проводка, Прибыль\Убыток Serg DAX: Функционал 1 29.12.2003 19:17
Опция печати - складские журналы ??? Swetik DAX: Функционал 6 04.06.2003 13:15

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

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

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