Expression-based record type is not showing the correct summary view for record list items

Certified Lead Developer

I made an expression-based record type and have looked at documentation online. My expression returns a DataSubset, but when I go to the record list and select any item, the summary view always passes information for the first item (for example, record list A, B, C. I click on C, the summary view for A comes up. I click on B, the summary view for A comes up.). My record list correctly shows the list of items and their corresponding fields, which makes me wonder why the rf! values are not being passed into the Interface rule for the summary view. However, the record list also does not sort by the sorting parameters that I define, no matter which field I choose to sort on.

I have tried creating the DataSubset using todatasubset(), 'type!DataSubset'(), and a!datasubset(), but I do not believe that is the issue. 

I have also checked to see which rf! values were passed into the summary view, and it always passes the rf! values of the first item (single item, not an array).

Does anyone have any insight to this issue? (Appian 17.1)

  Discussion posts and replies are publicly visible

Parents
  • When user select any items, then you get the value on rp!id

    local!queryCondition: index(
    	  ri!query,
    	  "logicalExpression|filter|search",
    	  null
    	),
    
        local!SelectedIdentifier: 
    	                   if(
    						  and(
    							index(
    							  local!queryCondition,
    							  "field",
    							  null
    							) = "rp!id",
    							index(
    							  local!queryCondition,
    							  "operator",
    							  null
    							) = "="
    						  ),
    						  index(
    							local!queryCondition,
    							"value",
    							null
    						  ),
    						  null
    						)

    here in the above code you get the selected identifier on the local!SelectedIdentifier

    just you need to add an additional check

     

    if(

       isnull(local!SelectedIdentifier),

       <get all Data>,

        <get the data based on the identifier >

    )

     

Reply
  • When user select any items, then you get the value on rp!id

    local!queryCondition: index(
    	  ri!query,
    	  "logicalExpression|filter|search",
    	  null
    	),
    
        local!SelectedIdentifier: 
    	                   if(
    						  and(
    							index(
    							  local!queryCondition,
    							  "field",
    							  null
    							) = "rp!id",
    							index(
    							  local!queryCondition,
    							  "operator",
    							  null
    							) = "="
    						  ),
    						  index(
    							local!queryCondition,
    							"value",
    							null
    						  ),
    						  null
    						)

    here in the above code you get the selected identifier on the local!SelectedIdentifier

    just you need to add an additional check

     

    if(

       isnull(local!SelectedIdentifier),

       <get all Data>,

        <get the data based on the identifier >

    )

     

Children