How can I efficiently read the entire array (or at least an entire zone with all its heaters) from my Siemens PLC without manually defining nodes for each variable?

I'm new to Node-RED and Siemens PLCs, and I'm using the node-red-contrib-s7 node to communicate with my PLC. Currently, I can successfully read and write data to individual records in a data block.

Problem :

I don't want to create a separate node for every variable because:

  1. More records will be added in the future. (New zones or added heaters to a zone etc)
  2. There are already many records, making it inefficient to manage
    manually.

Data Structure:

I have an array called zones, where:

  1. Each zone is a struct containing multiple heaters.
  2. Each heater also has associated data (e.g., temperature).

Goal:

I want to read the entire array or at least an entire zone at once.

Ideally, the data should be structured as a JSON object, where each zone contains all its heaters and their respective data.

This data will be used to display a real-time dashboard showing:

  1. The current temperature in each zone.
  2. The status of each heater.

Issue:

The node-red-contrib-s7 node doesn't seem to support reading entire structs, objects, or arrays at once. I haven't found a way to loop through the zones efficiently within Node-RED.

Question:

How can I efficiently read the entire array (or at least an entire zone with all its heaters) from my Siemens PLC without manually defining nodes for each variable?

Any suggestions or best practices would be greatly appreciated!