About Function Block Diagram Online Editing

Use the Function Block Editor to build and modify function block routines. To make an online change, start a pending edit from within the routine.
Online edits in function block programming are defined as any change that affects the underlying neutral text that is downloaded to the controller. In other words, any modification to a routine, from actual changes to the logic, to modifications such as changing sheet descriptions, pin visibility, or block locations, is considered an online edit. This information is stored in the controller to allow the function block diagram to be reconstructed upon upload.
Routine-level editing is necessary because of the complex nature of the function block language and its execution. A single modification to the logic can have a large effect. For example, assigning a new tag to an Input Data Element Reference that is wired to 3 blocks affects all four language elements. Similarly, repositioning a single wire from one block to another block, changes the data flow of the function block diagram, potentially altering the order in which the blocks execute.
Each function block routine in the online edit state has up to three views:
  • Original view - This view option is available when there are pending edits and/or test edits for a routine, but the view displays the original version of the routine. This view displays the original routine image from the controller before editing. This view is read-only.
  • Pending Edits view - This view displays pending edits to a routine. Initially, before editing, this view’s content is identical to the Original view. The pending edits view is stored in the workstation database and is not downloaded to the controller until the pending edits are accepted. The pending edits view represents the workstation’s local image of the routine edits, and is visible only to the person performing those edits.
  • Test Edits view - This view is created when a pending edit is accepted and the controller is in Run mode. This view is stored in the controller and in the offline workstation, and is viewable by all workstations. However, this view does not necessarily indicate that the routine in the view is the one that is running on the controller. This routine is running on the controller only when the online edit state is Test; otherwise, the original version of the routine is running. A green border around the view of a routine indicates the version of the routine which is currently running. The Test Edits view always represents the test routine image in the controller. The Test Edits view is read-only.
    ATTENTION:
    Switching between the Test and Untest online edit state switches control between the versions of the routine shown in the Test Edits view and the Original view. For example, when switching control from the Original view to the Test Edits view, the values of any blocks in the Test Edits view are initially in the same state they were left in by the logic in the Original view. Make sure to add initialization logic where appropriate to allow blocks to start controlling the process correctly when they are activated by testing and untesting edits.
ATTENTION:
Changing parameter values in a block configuration dialog box changes the values in all views of the routine. For example, changing a block parameter value in the Test Edits view also changes the value of that block parameter in the Original view, even if the Original view is the version of the routine actually running in the controller.
ATTENTION:
After block wiring is deleted, a test of the edits shows that the block parameters remain at the value dictated by the original wiring. For example, a BAND block with four wired inputs exists in the original version of the routine, and an online edit deletes the fourth input. If the fourth input is cleared by a wired value in the original version of the routine when it enters the Test Edit state, then the fourth input remains cleared even though ia wire is no longer connected. In this example, the BAND block always remains false until the value of the fourth input is changed to set from the block properties dialog box or in the Tag Editor.
ATTENTION:
When an offline controller file is downloaded to the controller, any pending edits present in the offline controller file are assembled and become active.
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.