Hi,
I have a very strange issue with a RecordType and a Process. So I would have 2 questions :
1/ My recordType is based on a simple table Category(#categoryId, name, isActive, fkIconId, orderNo) and the corresponding ProstgreSQL table contains a Primary Key with SERIAL on the "categoryId" field.
I've created a new RecordAction to call a process, and the RecordAction passes the rv!record to the process.{ myRecord: rv!record}
I've created an Interface with a RecordType based Grid, to try my recordAction :but when I click on the button on a grid row, the process is launched with the bad parameters :
Example1 : Click on row(categoryId=4, name="CAR", isActive=true, orderNo=2) => but in the process instance I see this log : changed to {categoryId=2, name=BICYCLE}
Example2 : Click on row(categoryId=2, name="BICYCLE", isActive=true, orderNo=4)=> but in the process instance I see this log : changed to {categoryId=4, name=CAR}
It is exaclty like if the RecordType Identifier was synced with the OrderNo, and not the CategoryId field.
So I've made many vérifications :- the table has a categoryId PK- in the list field of the RecordType, the CategoryId is correctly set as PK- when I pass rv!record or rv!identifier from RecordAction to the process, I can verify that the OrderNo is taken (not the CategoryId)- I've created a new RecordType from scratch to make the same test, but same result observed
My first question is Why ? What am I missing please ?
2/ When I debug my process I can see such a LOG : {categoryId=4, name=CAR}In the process instance logs, why the pv!myRecord (parameter) display me only 2 fields ? (I don't see neither isActive, fkIconId, neither OrderNo fields)
Thanks by advance
Discussion posts and replies are publicly visible
Hicedric01 Can you post your record type object snap shots, or error snap shots it would be easy to understand
done
When using rv!record to pass data to a record action, Appian tries to analyze the process start form to identify which fields to query. I covered this in a recent blog post and the risks attached.
https://appian.rocks/2024/01/16/partially-populated-records/
Thank you Stefan, but why Appian does not simply take the primary key of the table ? In my case, the process does not have any Start form, it is just a record action called by an interface.
I've read your blog post but it does not explain me why my Identifier has used another field.
Don't have I any other way to set the Identifier I want ?
I've found a work around to deal with my issue : not use fv!identifier anymore in my Interface when specifying the RecordAction.I use this : fv!row[recordType.Category.field.categoryId]
and this works fine.But it seems to me very strange to not be able to keep using fv!identifier.