I have two process variable that is CDT type.
I need to if any of the process variable is null then related to that process variable entity data not executed.
Like this:
= {
if( a!isnotnullorempty(pv!dependencies),
null,
a!entityData(
entity: cons!DSE_COMMUNITIES,
data: pv!communityAllocation )
),
entity: cons!DSE_DEPENDENCIES,
data: pv!dependencies ) )}
But it gives error:
An error occurred while trying to write to the data store [Tables]. No values have been written. Details: org.hibernate.PropertyValueException: not-null property references a null or transient value DependenciesDT21866.projectid (APNX-1-4208-004)
Please, anyone suggest........
Discussion posts and replies are publicly visible
If you don't have anything to write for a particular Entity entry, you will need to set that list item to EMPTY SET ( {} ), because NULL() actually carries a value and will cause the node to error.
This makes some assumptions into the validity of your null checks. The second null check (for pv!dependencies) seemed backwards so I switched to the opposite rule (since you wouldn't be writing pv!dependencies if it's actually empty).
{ if( a!isNotNullOrEmpty(pv!dependencies), {}, /* null, */ a!entityData( entity: cons!DSE_COMMUNITIES, data: pv!communityAllocation ) ), if( a!isNullOrEmpty(pv!dependencies), /* note, switching the null check rule used here */ {}, /* null, */ a!entityData( entity: cons!DSE_DEPENDENCIES, data: pv!dependencies ) ) }
Thanks for reply.
By putting empty set with your code, it still gives same error as above..
Care to show the values of the PVs?