EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Re: Dynamically refresh CSS BOY runtime OPI
From: Zhang Yuliang <[email protected]>
To: "Kasemir, Kay" <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Sat, 16 Jan 2016 14:14:24 +0800
Hi Kay,

The reason of refreshing BOY OPI dynamically is I found that BOY runtime OPI can not update my C# type EPICS PV's access rights. 
For example, 1) if the PV' access right is r+w, run the OPI and it can change the PV's value using 'Text Input' widget;  2)if the PV's access right is readonly, run the OPI and  re-change PV's access right to r+w, PV's value can not be changed using 'Text Input' unless refresh OPI once.

Yuliang


> -----原始邮件-----
> 发件人: "Kasemir, Kay" <[email protected]>
> 发送时间: 2016年1月15日 星期五
> 收件人: "[email protected]" <[email protected]>
> 抄送: "[email protected]" <[email protected]>
> 主题: Re: Dynamically refresh CSS BOY runtime OPI
> 
> Hi:
> 
> Maybe reconsider your use case.
> BOY (EDM, MEDM, ..) work best if you use them as originally intended:
> 1) Add suitable widget
> 2) Set PV name
> Done.
> 
> In BOY, you can use scripts to handle some very special cases, but the portability of scripts cannot be guaranteed through updates of the software and will certainly be slower than using any of the built-in functionality.
> If you want a circle that changes color, don’t use a circle with rule or script but instead use the LED widget.
> If you want a text that changes content, don’t use a Label w/ rule/script but instead use a TextUpdate widget.
> To change displays, use buttons that allow operators to open related displays.
> 
> If absolutely have to create a video game:
> Use a linking container, and set the “opi_file” property of that one in a script based on your PV.
> --> PV will determine what’s displayed inside the linking container.
> Like this:
> 
> # Script for LinkingContainer that shows either A.opi or B.opi
> #
> # pvs[0]: PV like sim://sine that changes positive/negative
> from org.csstudio.opibuilder.scriptUtil import PVUtil
> if PVUtil.getDouble(pvs[0]) > 0:
>    widget.setPropertyValue("opi_file", "A.opi")
> else:
>    widget.setPropertyValue("opi_file", "B.opi")
> 
> 
> -Kay
> 
> > Hi all,
> > 
> > Here is my question:
> > I want to refresh BOY runtime OPI dynamically according to a state PV, i.e. if the value of state PV changes, the  OPI can be refreshed once automaticlly(same as click F5). How to use embeded java script to do this?
> > 
> > Regards,
> > 
> > Yuliang Zhang
> 




Replies:
Re: Dynamically refresh CSS BOY runtime OPI Andrew Johnson
References:
Dynamically refresh CSS BOY runtime OPI Zhang Yuliang
RE: Dynamically refresh CSS BOY runtime OPI Mazanec Tomáš
RE: Dynamically refresh CSS BOY runtime OPI will.rogers
Re: Dynamically refresh CSS BOY runtime OPI Kasemir, Kay

Navigate by Date:
Prev: Re: VxWorks 6.9 Andrew Johnson
Next: Re: Keithley 7001 Scanner Support Mathew Rippa
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Dynamically refresh CSS BOY runtime OPI Kasemir, Kay
Next: Re: Dynamically refresh CSS BOY runtime OPI Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 15 Jul 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·