Having a permissions issue with SuiteTalk (SOAP), ...
# suitetalkapi
p
Having a permissions issue with SuiteTalk (SOAP), and wonder if anyone can help. I have a SOAP request that is merely updating the
memo
field on the transaction. It works just fine. Now introduce a UserEvent script that does modifications to a custom sublist on the transaction. The problem is that the UserEvent script cannot see the custom sublist & it is causing the script to fail. I have modified the problematic script so that it does a
getSublists()
to dump which sublists it can see on the transaction, and it cannot see the sublist in question.
customform
is correct, and matches the form used when performing the same action in the UI. I have granted the role we use for SOAP to another user & they can do this update OK in the UI with no errors. I saw suiteanswer 37225 regarding web services caching issues & have performed a request using another role to make sure that it isn't a caching issue. I've also tried setting the UE to execute as Administrator. The role we're using has FULL permission on transaction, FULL on all involved custom records, FULL on Lists->Custom Record Entities. I'm obviously missing a trick here, anyone got any insight as to how I can even begin to progress on this? Note that I do actually require this sublist to be accessible as part of the next bit of work, so just excluding the script from the execution context is not the solution :)
I'll add that it's a child sublist/record of transaction, I don't know if that makes a difference. Just opened a ticket to see if support has a clue
d
Hey, did you solve this? Does the custom sublist show up in the xml if you do &xml=t ?
p
Yes, it's fine in the UI. It's just when triggered via a SOAP call. Just waiting for support to sort their lives out 😄
d
Ah, ok, could be 'by design' 🙂 . I know I had a few issues using web services a couple of years back and just gave up and went with RESTlets instead. I recall one script issue where I had to create\save the record first, then load the record that was just created to update a specific field. Kind of like when you create a custom record and have to save it before you can create any fields.
p
Update: After reproducing, support have logged it as a defect
If anyone is interested, this has now been returned as a documentation bug & enhancement. "Exclusion of getSublists() / .getSublist() methods is explicitly stated in the NetSuite code. Changing this was considered in the past, but there's a significant risk of performance issues. 1) We will update suiteanswers to document this limitation. 2) The defect will be changed into an enhancement".