Skip to main content
March 11, 2026
Question

Rule Input passing issue.

  • March 11, 2026
  • 5 replies
  • 0 views

There is an Interface C which has parent as B and B has parent as A. Now I am passing via rule input from C it is working in B but not in A.

The value gets refreshed at A interface automatically. 

FYI the rule input data types are same for all 3 interfaces A, B and C.

    5 replies

    shubhama926776
    March 12, 2026

    If ri! Resets to null:
    A has a local! variable overwriting the rule input on refresh. -> Remove/fix that reassignment.
    Never receives the value :
    B is not forwarding the rule input to A. -> In A, explicitly bind ri!value: ri!value when calling B.

    ri! don't auto-propagate - each level must explicitly pass them.

    harshas2775
    March 12, 2026

    Pass the rule inputs from A to B using keyword syntax and similarly from B to C. The refresh variable definition at A might be hindering the value reflection between the three interfaces. So dont use a!refreshVariable in interface A but have the keyword syntax take care of sync between all variables. 

    stefanhelzle0001
    March 13, 2026

    Check my blog post for connecting data flows in interfaces.

    appian.rocks/.../

    mikes0011
    Brainy
    March 16, 2026

    Are you experiencing this behavior in the Interface Designer or just in a User Input Task?

    FWIW there is basically no limit to the number of parent/child levels that values can be referenced across, but the configuration has to be correct and may sometimes get tripped up due to factors more complex than a 1-sentence description of the issue.  Any additional details (and/or screenshots or code snippets of your configuration across the various levels) would be helpful if the prior replies haven't already helped you solve it.

    nandhakums961772
    March 17, 2026

    Values normally move from Parent to Child. So when C changes a value and sends it to B, B gets the updated value correctly. But A will not automatically get that updated value unless B explicitly sends it back to A using a save. A still has its own original local value. Since that local value is not updated when B or C changes it, A keeps showing the old value or resets during refresh. To make the updated value reach A, B must save the changed value back to A explicitly.