I’ve created a dataport that pulls order information in from a text file. I’ve been testing the file, and although it tests fine when I have a single customer I’m importing records for, it gives me the error in the below picture when I’m trying to pull in orders from more than one customer. “The following C/AL functions can be used only to a limited degree during write transactions (because one or more tables will be locked). Form.RunModal() is not allowed in write transactions. CodeUnit.Run() is allowed in write transactions only if the return value is not used. For example, ‘OK := CodeUnit.Run()’ is not allowed. Report.RunModal() is allowed in write transactions only if ‘RequestForm = FALSE’. For example, ‘Report.RunModal(…,FALSE)’ is allowed. Dataport.RunModal() is allowed in write transactions only if ‘RequestForm = FALSE’. For example, ‘Dataport.RunModal(…,FALSE)’ is allowed. Use the COMMIT function to save the changes before this call, or structure the code differently.” I’m only writing to two tables (Sales Header and Sales Comment Line). I’ve tried using explicit COMMIT statements, but I’ve still gotten the same error. I wondered if the customer table might be locked or something, but I’ve tried it after-hours here without any success. Does anyone have any ideas?
Thomas, You might want to check if any of the code you use to validate the incoming information is trying to show a confirmation dialog, such as the Credit Limit/Overdue Balance check.
I think the Credit Limit Warning for the customer is trying to pop up. There is a way around, but I can not remember it …
I just got the same error message under the same conditions (importing customer information) a few days ago… [;)] You can deactivate the credit limit warning in (sorry, translation from the German version) Customer&Sales->Setup->“Customer & Sales Setup”. There is a dropdown option list for the Credit Limit Warning.
The credit limit warning was it. Thanks for your help.