Technical FAQs

Ask a Question

How to run a function when a page is shown in PowerLogic SCADA v7.20; Using "On page shown" and "While page shown" properly

To run a function when you click on a page in PowerLogic SCADA v7.20 (PLS), add the function to the “Page Properties” of the current page in Citect Graphics Builder. Select the Events tab, check the On page shown box and enter the desired function in the “On page shown command” box.

If you add the function to the “While Page Shown”, the function will not run if it contains a blocking function.

For example, consider the following function where cnt1 has been defined as a Local Variable.

IF cnt1<1000THEN
// cnt1=TagRead("MyPM870\MMXU1\Hz");

Calling this function from the "While page shown command" box will work because there is no blocking function inside Test().

Alternatively, consider the following modified Cicode with TagRead added, which is blocking function:

// IF cnt1<1000 THEN
// cnt1=cnt1+1;
// END

This will NOT work and until the tag will be available from the cache, it will generate a hardware alarm (System Alarms page)--"Foreground Cicode cannot block"--and the execution of the function will be cancelled. The alarm will disappear after the code execution has stopped.

In the following screen capture of the Client Kernel, we can see that PageFG (page foreground cicode) is in the Stop state since Test() contained a blocking function.

Was this helpful?
What can we do to improve the information ?