I'm trying to understand why ever time I save a particular custom record type, I get an error screen saying "An unexpected SuiteScript error has occurred", and nothing else. It started happening suddenly. I turned off all known applicable scripts and workflows. There's nothing recorded in script logs, and the message doesn't even point to anything. I can delete a record just fine, and I seem to be able to create records just fine. But it doesn't seem to allow some editing. Here's a general operation breakdown:
DELETE ===> success, no error
CREATE ===> success, error
EDIT ===> failure, error
XEDIT ===> success, error
I'd disable every script and workflow in the system, but there are too many, and a total of only 6 were set to be applied to the record type. I've pretty much exhausted what I know to look for, so if anyone knows anything else I could check, that would be appreciated.
Search for "Scripted Records" in the search bar. In the "scripts" drop-down menu, select "all". Now you can filter on the "record" column, click on any script that applies to your custom record. Here you will see all scripts that relate to your custom record. Check in the "status" column for any "Released" scripts.
Related
While adding fields, I am facing issue that I am not able to open my table if there is new field added. it shows error like this:
Whenever a field is added, it shows an error like this:
when I check the event viewer, it shows this error:
Full error code :
Can anyone help me with this issue?
It looks like SalesTable is not properly sync'd. This type of error usually just means you need to compile & sync the entire environment to get things "working" better.
Remove your custom fields, compile the table, right click on the table, and synchronize and verify first you can successfully synchronize the individual table. If you can sync it, then sync your entire data dictionary to ensure everything is sync'd up...if one table is off (in this way), it can mean there are other tables as well.
You can choose to try and add fields and see if it works, but I would just start with a full system compile & sync.
Note: Your infolog screenshots cut off the error message. When asking a question, make sure to include the actual error messages and redact personal information. Your event viewer screenshot is also cut off...same thing.
Identify that the ID in SQL is not match with the Table name at AOT .
I've been having many problems inserting a Purchase Order using the API because it often responds with errors which are vague or don't identify the cause correctly. We have quite a few customizations for the site involved, so to narrow down the issue, I created a new clean Acumatica ERP installation (v17.210.0034) to work with, with no endpoint extensions, and installed the SalesDemo data in both.
Even with clean installation sites like this, I'm still getting vague errors when trying to insert a PO. For example, I followed the steps below, using Postman to call the API:
Login: POST to url = "http://localhost/Acu172100034/entity/auth/login, with JSON credentials in the body. Response = success.
GET a PO: url = http://localhost/Acu172100034/entity/Default/17.200.001/PurchaseOrder/RO/PO000696?$expand=Details,ShippingInstructions. Response = JSON data for the PO
I copied the JSON in the GET response above and pasted it into a new PUT request body. I removed all "id", "rowNumber", "custom" and "files" fields. I removed the "OrderNbr" field in the header and detail rows since it is an auto-number field for a PO.
I attempt to insert a new PO using the modified JSON with a PUT: url = http://localhost/Acu172100034/entity/Default/17.200.001/PurchaseOrder,
The error response includes: "PX.Data.PXException: Error: 'Branch' cannot be empty.\r\nError: 'Ship To' cannot be empty.\r\nError: 'Location' cannot be found in the system.\r\n ---> PX.Data.PXOuterException: Error: Inserting 'Purchase Order' record raised at least one error. Please review the errors."
There is a BranchID specified on the PO Line, there is a Location specified on the PO header, and there is a ShipTo specified on the ShippingInstructions. The Location does exist. This error is obviously vague and misleading. Only by trial and error did I determine that I needed to change Hold from true to false to get past this error. I assume this is because there's some validation or rule which disallows an insert or update while on hold? After changing Hold to false and attempting an insert with a PUT again, I then get an error: "PX.Data.PXException: Error: An error occurred during processing of the field InventoryID: Object reference not set to an instance of an object.. ---> System.NullReferenceException: Object reference not set to an instance of an object." and the call stack includes POOrderEntry.POLine_ExpenseAcctID_FieldDefaulting and POOrderEntry.POLine_LineType_FieldUpdated event handlers.
There is an InventoryID on the PO Line, and the inventory item exists, so it looks like these event handlers are throwing errors for some reason when LineType is being set, but I'm guessing. Any ideas how to get this simple API insert to work?
Update (2/23/19): I modified the JSON for insert a bit more by changing the detail item Completed to "false", and the PO header Hold to "true", and the Status to "On Hold". The error mentioned above now changes to "Error: 'UOM' cannot be empty.\r\nError: 'Account' cannot be empty.\r\nError: 'Sub.' cannot be empty.". The UOM is not empty, Account is empty, and SubAccount is empty; but Account and SubAccount are not required fields for a PO Line.
After more trial and error, I was able to insert a PO by additionally changing the JSON being inserted by removing the two fields "QtyOnReceipts" and "ReceivedAmount". Can you see why the errors I'm receiving in the response in no way helps to find the cause of the error? I still don't even know why removing these fields resolved the error. The most reliable way to perform an API insert is probably -- as KRichardson suggested -- always insert first with only the minimum required fields, then perform an update with the rest. Or, perform a LOT of testing with trial and error to determine what fields and values allow for a successful insert. If I were to change or add field values in the JSON, or use JSON from a different record, I have no real confidence that the changes I made to get it to work will always work.
I am loading, doing some changes, and saving a Sales Order. I do this on approve and everything works. I do this on edit (when the status is changed to Pending Approval) and it throws the above error:
"An error occurred while processing item options."
Now I have commented out the setting of 2 fields I was setting. It still throws the error.
The only thing that comes up in SuiteAnswers doesn't really make sense to this situation.
This ended up being caused by something else in my code that I didn't think mattered.
When status is changed to Pending Approval, I delete a record where there is a Custom field that references it on the SO line. I was deleting it, setting some values, and then saving the record. When i took the delete out, it worked. So I ended up pushing the id of the record to delete into an array and then looping over that AFTER I saved the record and it worked
I've workflow application using 8 xpages. It was working fine upto this moment and all of sudden when saving new document for any xpage, it started giving the following error:
Unexpected runtime error
The runtime has encountered an unexpected error.
Error source
Page Name:/XpNew.xsp
Exception
Error saving data source document1
Could not save the document 44F2A NotesException: Notes error: You cannot update or delete the document(s) since you are not listed as an allowable Author for this document
Even though I've manager access to the database. It is also weird that it started giving error on test and production server. I also ran compact with -c and still the same issue.
Ran Fixup and still same issue.
In this situation, since it appears to be a core Notes exception and not anything at the XSP layer, I'd look into ACLs first. Are you manager by way of being in a group? And if so, has that group changed in any way recently, or is it specified in a secondary Directory referenced via Directory Assistance? I've had situations where the HTTP task just sort of "forgets" group membership from a secondary Directory until I restart it.
Another potential source of trouble could be the "Maximum Internet name and password" field on the database's ACL's Advanced tab - if that's set to Author, it will override whatever your real access is.
As a troubleshooting step, I'd make an XPage with this in a computed text item:
database.queryAccess(session.getEffectiveUserName());
That should return your numeric access level. Additionally, to check on the first paragraph's theory, you could add a Form or Page with a computed value of:
#UserNamesList
That will give you a list of all effective names, groups, and roles for the current user in the current database.
There was a Authors field on Notes form with value #Username which was returning value in hierarchical form as First Name/Company.
Changed the formula to #Name([Canonicalize];#UserName) and Maximum access Level thru web kept default editor. This resolve the issue. Now it is saving documents without any issue.
Thanks everybody for help
I have a SharePoint list filtered by "key Filters", when I change the value in "Dashboard" view, and click on "Stop editing", it is giving me an error message below
Unable to render data. if the problem persists, contact your system administrator. Correlation ID: xxxxxxxxxxxxxxxxx
It was working till last one hour, I was trying to create different views.
Try to add a connection to your database for "AUTORITE NT\IUSR"
First time I had this error it saved me.
But now, i'm facing this issue again and can't find a solution. So if you find another one, let us know ;)
Edit: Incredible... I just set CustomError to "Off" instead of "RemoteOnly", had same error. After Reboot server it starts working..
Just do an iisreset and try again