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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.10.2009, 09:38   #1  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
365 / 542 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
? Таблица VendSettlement свойство OccEnabled = No
Попробуйте у таблицы VendSettlement свойство OccEnabled выставить в No. Только учтите, что время обновления данных по данной таблице увеличится, но ошибка по идее должна пропасть.
__________________
Sergey Nefedov
За это сообщение автора поблагодарили: driller (1), Silphidae (1).
Старый 21.10.2009, 09:49   #2  
Silphidae is offline
Silphidae
Участник
 
96 / 15 (1) ++
Регистрация: 17.11.2008
Спасибо, SRF
Установка указанного свойства в No решила проблему. А можно спросить, что это свойство определяет?
Старый 21.10.2009, 09:57   #3  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
365 / 542 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Цитата:
Сообщение от Silphidae Посмотреть сообщение
А можно спросить, что это свойство определяет?
Почитайте вот эту тему aEremenko: Излучая оптимизм
__________________
Sergey Nefedov
За это сообщение автора поблагодарили: lev (2).
Старый 21.10.2009, 11:17   #4  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Цитата:
Сообщение от SRF Посмотреть сообщение
.оптимизм.[/URL]
Ну и каким образом это повлияло на ситуацию с ошибкой на вставке, я что-то не совсем понимаю?
__________________
Zhirenkov Vitaly
Старый 01.03.2010, 10:28   #5  
Silphidae is offline
Silphidae
Участник
 
96 / 15 (1) ++
Регистрация: 17.11.2008
История с этой проблемой получила продолжение:
Установка свойства OccEnabled в 0 на VendSettlement с недавнего времени стала вешать АХ наглухо (оставляли расчет на ночь - с тем же результатом), хотя, ранее это помогало.
В то время как OccEnabled == 1 выдает ошибку, указанную в первом посте этого топика.
Т.о. в любом случае не удается произвести расчет.
Прошу, подскажите, пожалуйста, как это побороть.
Старый 19.03.2010, 11:22   #6  
ena_ax is offline
ena_ax
Участник
 
254 / 46 (2) +++
Регистрация: 06.12.2006
Наткнулся на эту проблему. При анализе определил следующее: в методе recalcFutureRealizedExchAdj класса CustVendExchAdjustment_W
есть выборка
X++:
***************************************
while select  forupdate custVendSettlement
        where custVendSettlement.SettleAmountCur                    &&
              custVendSettlement.TransRecId == _custVendTrans.RecId &&
              custVendSettlement.TransDate > _postingDate           &&
              custVendSettlement.CanBeReversed
        join forupdate custVendSettlementOffset
            where custVendSettlementOffset.TransRecId  == custVendSettlement.OffsetRecId &&
                  custVendSettlementOffset.OffsetRecId == custVendSettlement.TransRecId  &&
                  custVendSettlementOffset.TransDate   == custVendSettlement.TransDate   &&
                  custVendSettlementOffset.CanBeReversed
{
*************************************************
}
    {
в моем понимании данный запрос всегда должен обрабатывать Одну строку (проверял на своих данных).
Но в некотрых случаях в недрах происходит добавление строки в таблицу сопоставлений и выборка идет по более чем одной строке. В результате получаем сообщение об ошибке, так как одна строка сопоставления Update несколько раз.
Сам Update происходит в методе reverseSettlement класса CustVendReversePosting.

X++:
public void reverseSettlement()
{
    // create reverse custVendSettlement for the original settled
    CustVendSettlement  reverseCustVendSettlement = custVendSettlement.data();
    ;
    reverseCustVendSettlement.CanBeReversed       = NoYes::No;
    reverseCustVendSettlement.SettleAmountCur     = - custVendSettlement.SettleAmountCur;
    reverseCustVendSettlement.SettleAmountMST     = - custVendSettlement.SettleAmountMST;
    reverseCustVendSettlement.UtilizedCashDisc    = - custVendSettlement.UtilizedCashDisc;
    reverseCustVendSettlement.ExchAdjustment      = - custVendSettlement.ExchAdjustment;
    if (isConfigurationkeyEnabled(configurationkeynum(ReverseSettlementDatePrinciple_RU)))
    {
        reverseCustVendSettlement.TransDate       = transactionDate;
    }
    custVendSettlement.CanBeReversed              = NoYes::No;
    reverseCustVendSettlement.insert();
    if (custVendSettlement.TransDate != transactionDate)
    {
        custVendSettlement.ReversedRecId_RU        = reverseCustVendSettlement.RecId;
        reverseCustVendSettlement.ReversedRecId_RU = custVendSettlement.RecId;
        reverseCustVendSettlement.ReverseTrans_RU  = NoYes::Yes;
        reverseCustVendSettlement.update();
    }
    [COLOR=red]custVendSettlement.update();[/COLOR]
[COLOR=red][/COLOR]}

Для исправление поставил firstonly (пока в тестовой базе).

Как считаете корректно ли такое исправление? Может кто по другому решил данную проблему.

Последний раз редактировалось ena_ax; 19.03.2010 в 11:33.
Теги
конфликт обновления, курсовая разница

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка в логе при установке клиента AX 2009 sao DAX: Администрирование 9 04.02.2010 11:56
Ошибка в формате числа. 36AC DAX: Программирование 7 19.10.2006 10:04
НДС с курсовых разниц Ann DAX: Функционал 7 26.10.2004 15:10
Отмена курсовых разниц AndSoft DAX: Функционал 11 17.08.2004 15:34
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 00:25.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.