Hi,
If you’re talking about N*M*Z waveforms, it can depend on how big N, M and Z are. If there’s not too many then you can put multiple waveforms on one screen (depending on waveform size and update rate). Or, you could have a common screen
having a single waveform on it, and you can open that via buttons which pass macros in to define the PV name.
If you really need a menu to select N, then M, then Z, then one option would be to construct the PV name on the IOC database side, then set an INP link in a subarray (which can point to any of the waveforms defined by N, M and Z). Then
the screen only has to contain a single high level PV for the subarray record. That would avoid CS-Studio scripts, although it would be possible in a client script I think that would be the least preferable solution long term (for example, you may have to
update the script periodically, or re-write it for new clients).
Cheers,
Matt
From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of
Manoussakis, Adamandios via Tech-talk
Sent: Thursday, January 14, 2021 5:29 PM
To: EPICS tech-talk <tech-talk at aps.anl.gov>
Subject: [EXTERNAL] CS-Studio (Phoebus) Dynamic Population of PVs in GUI
Hello All,
I was curious what the best way to go about populating our GUIs in CS Studio when we are dealing with multiple PVs that share a common attributes. Such as
Device1:Subdevice1:Signal1
Device1:Subdevice1:Signal2
Device1:Subdevice2:Signal1
Device1:Subdevice2:Signal2
And so forth for N devices M Subdevices Z Signals
I was thinking to use macros that pull from drop down menus which would then populate the correct PVs for say specific waveforms.
Dropdown menu to select Device #, Dropdown menu to select subdevice # and then populate the PV waveforms for the correct subset I selected.
I only just started to use CS Studio and I think this seems possible but wasn’t completely sure. I also saw that I could write some python scripting and have it run in CS Studio to parse out and place the correct PVs depending on drop
down selections but wanted to check in first and see how people have been using it.
Thanks