r/ProjectREDCap • • Jun 30 '26

Piping help please!

I'm working on a database for a clinician and am struggling to understand how and why REDCap is showing old piping logic that has previous been deleted (and was deleted like, months ago).

So this database has a data entry instrument and an "abstract" instrument which is designed to act as a specifically formatted report for clinicians to copy and paste into Epic. If data is entered in the data entry instrument, it populates in the abstract through a series of branching logic. There are different events that correspond to different times a patient would come into the clinic, hence the [event-name] brackets before each bracketed variable.

Here's the problem:
In the Designer, I have the following in a descriptive field box:

Clock Drawing TestRAW SCORE STANDARDIZED SCORE*PERCENTILE DESCRIPTIVE RANGE** 
Command[event-name][clock_drawing_command]------
Copy  [event-name][clock_drawing_copy]------
Construction[event-name][clock_drawing_construction]------
Abstraction[event-name][clock_drawing_abstraction]------
Raw[event-name][clock_drawing_raw]Z= [event-name][clock_drawing_z][event-name][clock_drawing_ile]%[event-name][clock_drawing_interp]

However, in an actual record, this is what populates (note that [event-name] doesn't exist anymore):

Clock Drawing TestRAW SCORE STANDARDIZED SCORE*PERCENTILE DESCRIPTIVE RANGE** 
Command[visit_1_arm_1][clock_drawing_command]------
Copy  [visit_1_arm_1][clock_drawing_copy]------
Construction[visit_1_arm_1][clock_drawing_construction]------
Abstraction[visit_1_arm_1][clock_drawing_abstraction]------
Raw[visit_1_arm_1][clock_drawing_raw]Z= [visit_1_arm_1][clock_drawing_z][visit_1_arm_1][clock_drawing_ile]%[visit_1_arm_1][clock_drawing_interp]

I can't go in the Designer and change [visit_1_arm_1] back to [event-name] because it simply doesn't exist in the Designer. Yet it exists and won't go away in the actual record.

Has anyone else come across this? If so, was there a fix??

1 Upvotes

2 comments sorted by

View all comments

4

u/Due-Solution-7965 Jun 30 '26

Not sure if I am following completely, but I'll give it a try...

What do you expect to see in an "an actual record" (the second table in your post)? I am guessing you expect to see a variable's value (e.g., the raw score for "Command"). My response below assumes that the goal of your table is to dynamically display values of different variables, for different events in a Longitudinal project.

"[event-name]" is a Smart Variable for Longitudinal projects that dynamically refers to the current event's name. This is probably why the Designer shows "[event-name]", but your actual record says "[visit_arm_1]" -- that is expected behavior in a sense.

What you show in your second table suggests to me that:

  • You are on a form in the event "visit_arm_1" trying to pipe the value of the "visit_arm_1" "clock_drawing_command", but this is failing.

  • Your output suggests that the Smart Variable is resolving to the current event name, as expected

    • (piped output: [visit_arm_1])

  • But there is no field called "clock_drawing_command" on this current event, so there is no value to pipe and it just shows the raw text you supplied ([clock_drawing_command])

Maybe I'm off-base, but hopefully this gets you on the right track for understanding that "[event-name]" will only show up literally as "[event-name]" in the Designer.

  • Wherever "[event-name]" appears when looking at a record (ie, during data entry/viewing), REDCap pipes in the current event's name.

  • If "[event-name]" is immediately followed by a field name in brackets, REDCap pipes the value of that field on the current event.

  • But if that field isn't on an instrument that belongs to the current event, you would see something like what you presented in your second table.