D365 X++ 顧客月次締め請求書更新エラー解決方法 - select forupdate 句の使用
"D365 X++ 顧客月次締め請求書更新エラー解決方法 - select forupdate 句の使用"\n\nこのエラーは、更新する前にconsInvoiceのデータを選択していないために発生します。\n\n解決方法は、更新する前にデータを選択することです。select forupdate ステートメントを使用して、更新するデータを選択できます。例:\n\nCustVendConsInvoice consInvoiceForUpdate;\nselect forupdate consInvoiceForUpdate where consInvoiceForUpdate.RecId == consInvoice.RecId;\nconsInvoiceForUpdate.Status = CustVendConsInvoiceStatus_JP::Confirmed;\nconsInvoiceForUpdate.CustVendConsInvoice_JP::setInvoiceAmount();\n\n// 更新するその他のフィールド\nconsInvoiceForUpdate.update();\n\n注意:select forupdate ステートメントは、ttsbegin の前に実行する必要があります。これにより、選択したデータがトランザクション内でロックされます。\n\nまた、更新する前に consInvoice が null でないことを確認して、null 参照エラーを防ぐ必要があります。以下のコードを使用して確認できます。\n\nif (consInvoice)\n{\n\t// 更新コード\n}\nelse\n{\n\tthrow error("ConsInvoice is null");\n}\n\n上記の方法で、consInvoiceを更新する前に、更新対象のデータを正しく選択することで、エラーを解決できるはずです。
原文地址: https://www.cveoy.top/t/topic/qdrZ 著作权归作者所有。请勿转载和采集!