The pragmas are evaluated in the CFC, FBD, and LD graphical editors, causing the order of inputs/outputs of the affected function block to be displayed as specified. You program the order by assigning the names of the inputs/outputs to the attribute in the desired order.
Syntax
{attribute 'pin_presentation_order_inputs' := '<First_Input_Name>, (<Next_Input_Name>, )* ( *, )? (<Next_Input_Name>,)* <Last_Input_Name>'}
{attribute 'pin_presentation_order_outputs' := '<First_Output_Name>, (<Next_Output_Name>,)* ( *, )? (<Next_Output_Name>,)* <Last_Output_Name>'}
-
*The terminal character serves as a wildcard for all inputs/outputs that are not specified in the display order. If the terminal character is missing, then the missing inputs/outputs are appended at the end.
-
( ... )?The contents of the parentheses are optional.
-
( ... )*The contents of the parentheses are optional again and can therefore occur not at all, one time, or several times.
-
Insert location: First line in the declaration part of a function block.




NOTICE

This pragma is not evaluated when pragma {attribute 'pingroup' := '<Group_Name>'} is used.
Example
{attribute 'pin_presentation_order_inputs' := 'input_2,*,input_1'}
{attribute 'pin_presentation_order_outputs' := 'output_2, output_1'}
FUNCTION_BLOCK POU_BASE
VAR_INPUT
input_1 : BOOL;
input_2 : INT;
input_3 : INT;
input_4 : INT;
END_VAR
VAR_OUTPUT
output_1 : BOOL;
output_2 : INT;
output_3 : INT;
output_4 : BOOL;
END_VAR
FUNCTION_BLOCK PLC_PRG
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
pouBase_A: POU_BASE;
END_VAR
In the representation of function module instance pouBase_A, the pragmas result in the following arrangement of input and output pins:

See also