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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.01.2011, 11:09   #17  
AvrDen is offline
AvrDen
Участник
 
134 / 26 (1) +++
Регистрация: 04.08.2005
Адрес: Усть-Каменогорск
Изменили код Classes\SalesFormLetter\postUpdate
X++:
protected void  postUpdate()
{
    SalesParmTable  localSalesParmTable;
    ParmId          parmIdPrev;
    SalesId         salesIdPrev;
    ;

    ttsbegin;

    localSalesParmTable = this.setForUpdateSalesParmTable();

    localSalesParmTable.StartDateTime = startDateTimeTable;
    localSalesParmTable.EndDateTime   = DateTimeUtil::newDateTime(systemdateget(),timenow(),DateTimeUtil::getUserPreferredTimeZone());

    localSalesParmTable.updateParmJobStatusExecuted();

    salesParmLine.clear();
    // Sales totals are nulled in order to force a recalculation of the sales totals
    // which are then stored in the SalesTable.estimate field for utilization during credit limit check
    salesTotals = null;

    recordListSalesParmLine.first(salesParmLine);
    while (salesParmLine)
    {
        if (salesParmLine.OrigSalesId != salesIdPrev || salesParmLine.ParmId != parmIdPrev)
        {
            //counting number of SalesOrders we deal with
            if (salesParmLine.OrigSalesId != salesIdPrev)
            {
                ++numberOfRecords;
            }
            //  13.01.2011 AVRDV -->
            /*
            salesTable = salesParmLine.salesTable(true);
            if (salesTable)
            {
                salesTable.updateDocumentStatus(this.documentStatus());
                salesTable.updateBackStatus();
                this.updateSalesType();
                this.createBackorderLines();
                salesTable.updateDeadline(salesParmUpdate.RespiteDate);

                if (salesTable.SalesId != salesParmTable.SalesId)
                {
                    // If this is not the primary sales order in the summary order,
                    // void the credit card preauthorization that may exist as it is no longer valid
                    this.voidCreditCardPreauthorize();
                }
            }
            */
            //  13.01.2011 AVRDV <--
            localSalesParmTable = salesParmLine.salesParmTable(true);
            if (localSalesParmTable)
            {
                localSalesParmTable.updateParmJobStatusExecuted();
            }
        }

        salesIdPrev = salesParmLine.OrigSalesId;
        parmIdPrev  = salesParmLine.ParmId;

        if (!recordListSalesParmLine.next(salesParmLine))
            break;
    }
    //   13.01.2011 AVRDV -->
    salesTable = SalesTable::find(salesIdPrev,true);
    if (salesTable)
    {
        salesTable.updateDocumentStatus(this.documentStatus());
        salesTable.updateBackStatus();
        this.updateSalesType();
        this.createBackorderLines();
        salesTable.updateDeadline(salesParmUpdate.RespiteDate);

        if (salesTable.SalesId != salesParmTable.SalesId)
        {
            // If this is not the primary sales order in the summary order,
            // void the credit card preauthorization that may exist as it is no longer valid
            this.voidCreditCardPreauthorize();
        }
    }
    //   13.01.2011 AVRDV <--

    ttscommit;
}
В результате получили обработку заказа на 2500 строк 10 минут, вместо 20 минут.
Теги
как правильно

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Создание производственного заказа программно ena_ax DAX: Программирование 7 23.09.2011 11:38
Цены в строке заказа меняются при изменении шапки заказа s.alex DAX: Функционал 8 14.04.2009 11:27
Статус "Отменено" в строках заказа oleg61858 DAX: База знаний и проекты 12 16.10.2007 23:28
Цена на дату создания заказа/закупки George Nordic DAX: Функционал 2 29.06.2005 15:56
Сообщение по обработке строк заказа... Venera DAX: Функционал 5 21.06.2004 13:51

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

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

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