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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.03.2017, 13:44   #1  
Morpheus is offline
Morpheus
Участник
Аватар для Morpheus
Соотечественники
 
602 / 167 (7) ++++++
Регистрация: 30.03.2005
Адрес: Київ-København-Düsseldorf
Неверная аналитика в проводках ГК по накладным расходам при разноске счета для заказа на покупку AX 2012 R2 CU7
Описанная в заглавии проблема появляется если накладные расходы (записи таблицы MarkupTrans) привязаны к шапке заказа на покупку (записи таблицы PurchTable) и пользователь изменяет в шапке закупки финансовые аналитики (поле PurchTable.DefaultDimension). При этом в появляющемся диалоге пользователь подтверждает копирование новой финансовой аналитики на строки заказа на покупку. Новая финансовая аналитика успешно копируется на строки закупки, но, к сожалению, при просмотре "распределений" в диалоге разноски инвойса можно увидеть, что для накладных расходов будет использована "старая" финансовая аналитика.

Проблему решил следующей модификацией метода PurchTableType.updateDistribution()

X++:
public void updateDistribution()
{
    // Моя модификация -->
    MarkupTrans markupTrans;
    // Моя модификация <--
    
    if (purchTable.DiscPercent != 0 || purchTable.SourceDocumentLine != 0)
    {
        if (SourceDocumentLine::find(purchTable.SourceDocumentLine).AccountingStatus == SourceDocumentLineAccountingStatus::Completed)
        {
            SourceDocumentProcessorFacade::submitSourceDocumentLineImplementation(purchTable, false, SourceDocumentLineAccountingStatus::FullyDistributed);
        }
        else
        {
            SourceDocumentProcessorFacade::submitSourceDocumentLineImplementation(purchTable, purchTable.SourceDocumentLine ? false : true);
        }
    }
    
    // Моя модификация -->
    while select SourceDocumentLine 
            from markupTrans
           where markupTrans.TransRecId   == purchTable.RecId
              && markupTrans.TransTableId == purchTable.TableId
    {
        if (markupTrans.SourceDocumentLine)
        {
            if (SourceDocumentLine::find(markupTrans.SourceDocumentLine).AccountingStatus == SourceDocumentLineAccountingStatus::Completed)
            {
                SourceDocumentProcessorFacade::submitSourceDocumentLineImplementation(markupTrans, false, SourceDocumentLineAccountingStatus::FullyDistributed);
            }
            else
            {
                SourceDocumentProcessorFacade::submitSourceDocumentLineImplementation(markupTrans, true);
            }
        }
    }
    // Моя модификация <--
}
За это сообщение автора поблагодарили: plumbum (2).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Исправление ошибки: пустые поля SubledgerVoucher и SubledgerVoucherDataAreaId в таблице GeneralJournalEntry во время разноски инвойса для заказа на покупку (AX 2012 R2 CU7) Morpheus DAX: Программирование 1 07.11.2015 23:14
axsa: Microsoft Dynamics AX 2012 Data Import/Export Framework standalone version for AX 2012 R2 without installing full CU7 Blog bot DAX Blogs 0 04.12.2013 04:13
mfp: AX 2012 R2 CU7 has been released! Blog bot DAX Blogs 14 26.11.2013 12:12
emeadaxsupport: AX Content: How to install CU7 for Microsoft Dynamics AX 2012 R2 Blog bot DAX Blogs 0 12.11.2013 01:12
Dynamics AX Sustained Engineering: Announcing Compatibility Certification of App-V 5.0 and TFS 2012 with Dynamics AX 2012 CU5 and Dynamics AX 2012 R2 CU1 Blog bot DAX Blogs 0 01.06.2013 04:38

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

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

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