Unable to take properties into a forEach() for a fv!item

Certified Associate Developer

I'm having some issues understanding how to use indexes into a forEach taking the items from a expression rule.

I'll explain my problem a little bit deeper; I'm trying to get some of the properties from the RecordType "Anomalie", i would like to use the expression rule with get me all of the anomalies linked to a specific pension by the pensionid, and get the description, the name, the action related to it. But i'm having trubles indexing these properties once I call the expression rule. When I try to use fv!item.description into the description rich text field it seems like it doesn't recognize the object as a record type. 

I pasted the code snippet for the forEach i have in the interface, does anyone had some similar issues and may give me suggestions on what to try to make it work? Thank you so much!!

(my finished product should be a card for each anomaly found linked to the record Beneficiary, each with their description, name and related action)

a!forEach(items: rule!SRI_AnomaliePensione(pensioneId: ri!record['recordType!SRI beneficiario.relationships.pensione.fields.chiavePensioneCorrente']),
expression: a!cardLayout(
contents: {
a!richTextDisplayField(
labelPosition: "COLLAPSED",
value: {
a!richTextItem(text: { "Anomalia" }, style: { "STRONG" })
}
),
a!richTextDisplayField(
labelPosition: "COLLAPSED",
value: { "Descrizione anomalia" } */should be fv!item.description/*
),

a!sideBySideLayout(
items: {
a!sideBySideItem(
item: a!tagField(
labelPosition: "COLLAPSED",
tags: {
a!tagItem(
text: "Aperta", */should be fv!item.status/*
backgroundColor: "#cc0000"
)
}
)
),
a!sideBySideItem(
item: a!buttonArrayLayout(
buttons: {
a!buttonWidget(
label: "Sana anomalia", */should be the recordActionField "sana anomalia" with identifie: fv!identifier /*
size: "SMALL",
width: "MINIMIZE",
style: "SOLID"
)
},
align: "END",
marginBelow: "NONE"
)
)
}
)
},
height: "AUTO",
style: "#efefef",
shape: "SEMI_ROUNDED",
marginBelow: "STANDARD",
borderColor: "#1155cc",
showShadow: true
))

  Discussion posts and replies are publicly visible

Parents
  • 0
    Certified Lead Developer

    Instead of using  fv!item.description use record type reference for the field description. E.g. fv!item['recordType!Anomalie.fields.description']

    If the rule rule!SRI_AnomaliePensione(pensioneId: ri!record['recordType!SRI beneficiario.relationships.pensione.fields.chiavePensioneCorrente']) returnds a record type then fv!item need to have proper record type reference for the field involved, dot (.) notation simply wont work as it is not a dictionary, cdt or list of vairant. 

  • 0
    Certified Associate Developer
    in reply to Harsha Sharma

    Thank you so much for the answer!

    I tried doing as you told me but received error like my RT anomaly.description is not of type text but Record Field, like it's not getting the value filtered by the pensionID.

    My expression rule (when giving a value to the rule input "pensionID: 7839158") returns a List of SRI anomaliepensione - 3 items. 

    Do you think i'm referencing the right object or is the construct wrong? How would you advise to build the card component for the needs explained? 

    Thank you so much for your help!!

Reply
  • 0
    Certified Associate Developer
    in reply to Harsha Sharma

    Thank you so much for the answer!

    I tried doing as you told me but received error like my RT anomaly.description is not of type text but Record Field, like it's not getting the value filtered by the pensionID.

    My expression rule (when giving a value to the rule input "pensionID: 7839158") returns a List of SRI anomaliepensione - 3 items. 

    Do you think i'm referencing the right object or is the construct wrong? How would you advise to build the card component for the needs explained? 

    Thank you so much for your help!!

Children
  • 0
    Certified Lead Developer
    in reply to francescagulinelli

    yes you need to type the record type name then fields then the field name. so it looks like a record field rather than fv!item.description. 

     fv!item[recordType!Anomalie.fields.description]

    In Interface it would look something like below with the record type icon. 

    So first configure the desctiption field properly. SImilar you need to do for 'status' as well. If you have 3 items in the record list, 3 cards should be visible as per your code.