Показать сообщение отдельно
Старый 28.09.2010, 14:58   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от fed Посмотреть сообщение
Кстати мне очень непонятно как fieldUpdate==relative будет работать в версиях начиная с 3.0...
хм... быстро обозрел

в ax2009 действительно сильно заморочено. И надо разбираться.
в ax3.0 был метод класса LedgerVoucherBalancesList.write()

X++:
private void write()
{
    LedgerBalancesMap  ledgerBalancesLocal = ledgerBalances.data();
    ;
    ttsbegin;

    this.forUpdate(ledgerBalancesLocal);

    if (!ledgerBalancesLocal)
    {
        ledgerBalancesLocal.LedgerAccount   = ledgerBalances.LedgerAccount;
        ledgerBalancesLocal.TransDate       = ledgerBalances.TransDate;
        ledgerBalancesLocal.PeriodCode      = ledgerBalances.PeriodCode;
        ledgerBalancesLocal.LedgerSystemGeneratedUltimo = ledgerBalances.LedgerSystemGeneratedUltimo;
        ledgerBalancesLocal.LedgerBalancesVariant = variant;
    }

    ledgerBalancesLocal.DebitMST        += ledgerBalances.DebitMST;
    ledgerBalancesLocal.CreditMST       += ledgerBalances.CreditMST;
    ledgerBalancesLocal.DebitOPRMST     += ledgerBalances.DebitOPRMST;
    ledgerBalancesLocal.CreditOPRMST    += ledgerBalances.CreditOPRMST;
    ledgerBalancesLocal.DebitTaxMST     += ledgerBalances.DebitTaxMST;
    ledgerBalancesLocal.CreditTaxMST    += ledgerBalances.CreditTaxMST;

    ledgerBalancesLocal.DebitMSTSecond      += ledgerBalances.DebitMSTSecond;
    ledgerBalancesLocal.CreditMSTSecond     += ledgerBalances.CreditMSTSecond;
    ledgerBalancesLocal.DebitOPRMSTSecond   += ledgerBalances.DebitOPRMSTSecond;
    ledgerBalancesLocal.CreditOPRMSTSecond  += ledgerBalances.CreditOPRMSTSecond;
    ledgerBalancesLocal.DebitTaxMSTSecond   += ledgerBalances.DebitTaxMSTSecond;
    ledgerBalancesLocal.CreditTaxMSTSecond  += ledgerBalances.CreditTaxMSTSecond;

    LedgerBalancesLocal.LedgerQty += ledgerBalances.LedgerQty;

    ledgerBalancesLocal.write();

    ttscommit;
}
Увидев его я сильно засомневался в свойстве Relative.
Интересно. Ночером.
__________________
полезное на axForum, github, vk, coub.