I’m setting up a new web request that should update existing records if the ID exists in the runtime table. But for some reason this is not happening. Is this a bug or something I’m misunderstanding
Webrequest is setup to update existing based on the field RecId1 if it does not exists it should be added to the datasource.
But every time I trigger the action to run the web request a new record with the same RecId1 value is created
I had a similar case, but I’m not sure if you have the same issue as I had.
- Do you use the web request in a service?
- Is the invoice lines (temp) a cardinality one datasource?
- How do the logs look like? Do you get an error message there?
The workaround that I used was to have a datasource to map in the request, and another datasource that you update with the update action node after the web request was send.
- The web request is not in a service
- Invoice lines is a cardinality many datasource
- No error messages
I have used the same setup as this in another web request and another datasource. So would really like to understand why it is not working as expected now. Instead of making a more complex solution
I just tried a similar setup, and it works as expected by adding new object to the data source, and updating the mapped properties on the existing objects (“existing” defined by the Mapping Property).
Have you included the RecId1 in the Property Mapping list as well (it needs to be).
If so: Could you try to set up the Action Node once more (disabling the old one), just to see if there is old fun stored in the metadata of the action node?
I was a bit quick on my last test. The new action node did not solve anything. I still get the same result of duplicate records.
Have you cheched the data type received in the web request vs what’s stored? Maybe you receice recid as a string and it is saved as integer in the existing record, or vice versa.
You are correct It was set up as a string , should be int. Thanks
@kristian - I’m trying to set up a similar “add to existing” for a new data source, but then I notice that the INT fields are greyed out and not able to be selected as a mapping property. I guess this is a bug?
For the case we discussed above, I changed the property from string to int and therefore it is already selected in the mapping property, and it works as expected.
Workaround for me is to set this field as a int, select it in the mapping property and change it again to int.
Yes, I believe it should also work / be possible to set up for integers. Registering a challenge on that one!