2016-08-04 39 views
0

我已經按照用戶的要求在一個AX實例中寫了一個簡單的一條記錄刪除操作作業,另一個實例被卡住並打開。但是該記錄未被刪除。在Axapta 2009中刪除操作不成功

try 
    { 
    ttsbegin; 
    select fotupdate tableBuffer where tableBuffer.recid == 5457735: 

    tableBuffer.delete(); 
    ttscommit; 
    } 
catch (exception::error) 
{ 
    info("Delete operation cancelled."); 
} 

tableBuffer的delete()功能與代碼重寫super()後,已刪除的記錄存儲在另一個表。

我已經成功完成了相同的操作,但是今天沒有像現在這樣的場景(在一個實例中執行,而另一個實例被卡住)。

請提出可能的原因,因爲我發現記錄仍然存在於sql server和AX中。

謝謝。

+0

大概是記錄已被鎖定另一個卡住的實例?另一方面,我猜'fotupdate'是一個錯字?另外請注意,請不要隱藏空例外的例外情況。順便說一句,你是否調試過,如果程序通過'delete'方法成功運行? –

+0

'forupdate'不是一個錯字我知道一個更新操作並不要求既不是一個事務塊,它是由別人寫的工作,我也不想在產品中改變任何東西。我編輯了代碼,在實際代碼中,catch不是空的。我上週執行了成功的刪除操作。另一個實例因批量作業設置而被卡住。請求你的見解。 – piku

+0

我正在談論'fotupdate'中的「t」。無論如何,我想你應該嘗試刪除記錄,當沒有批處理作業正在運行,並沒有其他用戶正在使用該系統。 –

回答