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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.10.2013, 08:34   #1  
dech is offline
dech
Участник
Аватар для dech
Самостоятельные клиенты AX
 
650 / 352 (13) ++++++
Регистрация: 25.06.2009
Адрес: Омск
Записей в блоге: 3
Цитата:
Сообщение от jonny Посмотреть сообщение
Непонятность в том что код стандартный, запись выбирается на обновление внутри проводки. Код с копии переносили на рабочую (мало ли), пересоздание индексов, компиляцию делали. Из-за чего то еще может быть глюк?
Покажите, пожалуйста, код метода PurchFormLetter.insertJournal(), там должна начинаться транзакция. Также, сделайте инкрементную компиляцию этого класса.
__________________
// no comments
За это сообщение автора поблагодарили: jonny (2).
Старый 18.10.2013, 11:56   #2  
jonny is offline
jonny
Участник
Аватар для jonny
Самостоятельные клиенты AX
 
217 / 124 (5) +++++
Регистрация: 10.02.2006
Адрес: СПб-Екб-?
Вот код PurchFormLetter.insertJournal(), модификаций никаких.

X++:
protected void  insertJournal()
{
    // <GEEU>
    NumberSeq  registerNumSeqCode;

    // </GEEU>
    try
    {
        ttsbegin;

        numberSeq                           = this.allocateNumAndVoucher();
        [number, internalNumber, voucher]   = this.getNumAndVoucher();
        // <GEEU>

        if (purchParmTable.DocRegister_LT)
        {
            registerNumSeqCode = NumberSeq::newGetNumFromCode(LtInvoiceAutoNumberingTable::find(ltDocNumberingCode).NumberSequenceCode);
            number = registerNumSeqCode.num();
        }
        // </GEEU>

        if (!this.updateNow())
            throw error(strfmt("@SYS21533"));

        this.postUpdate();

        this.interCompanyPost();

        TransactionLog::create(this.transactionLogType(),this.transactionLogTxt());

        if (updateSalesLines  &&  updateSalesLinesQuery)
            this.updateSalesTable(updateSalesLinesQuery);
        ttscommit;

        if (numberSeq)
            numberSeq.used();

        // <GEEU>
        if (registerNumSeqCode)
        {
            registerNumSeqCode.used();
        }

        // </GEEU>
        this.createPayment();
    }
    catch(Exception::Error)
    {
        ttsabort;
        throw error("@SYS93835");
    }
}
Инкриментная компиляция тоже не спасла.
Старый 18.10.2013, 12:18   #3  
dech is offline
dech
Участник
Аватар для dech
Самостоятельные клиенты AX
 
650 / 352 (13) ++++++
Регистрация: 25.06.2009
Адрес: Омск
Записей в блоге: 3
Ну тогда смотрите проблему в методе updateNow().
Там purchLine должен выбираться для обновления.
Смотрите такую строчку:
X++:
purchLine = this.getPurchLine(purchParmLine, true);
Обратите внимание, что второй параметр должен быть установлен в true.
__________________
// no comments

Последний раз редактировалось dech; 18.10.2013 в 12:23.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Непонятная ошибка при установке 2009 AOS'а на Windows 7 CDR DAX: Администрирование 12 12.10.2014 19:51
Need help ошибка Неправильный тип индекса массива. Evgeniy2020 DAX: Администрирование 3 05.11.2013 03:13
Непонятная ошибка при постинге andriy_s DAX: Функционал 1 17.06.2010 09:40
Ошибка в логе при установке клиента AX 2009 sao DAX: Администрирование 9 04.02.2010 11:56
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

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

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

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