-

FILE_SEEK

Type Function block
Description Moves the current file pointer to a new position.

Assign the valid handle of the file to be processed to the Handle input. This handle is created when the file is opened with the FILE_OPEN function block.
Write the relative offset to be used to move the file pointer to the Position input. Enter the reference to be used to move the pointer at the Mode input (see description of the Mode input).

Activate the function block on a rising edge at the Execute input. Execution of the function block is complete when the Done output is set to 1. If an error occurred during execution, the value at the Error output = 1. ErrorID indicates the number of the cause of the error.
Notes
  • The status of the Done, Error, and ErrorID outputs are maintained until a falling edge is detected at the Execute input.

    Do not reset the Execute input until the FB is finished by setting the Done state. Resetting the Execute input will result in resetting the outputs. In fast task cycle times, the asynchronous operation may not be completed and will result with a combination of unexpected output values.
    => Proceed with following file operations or reset the input only after the Done state has been reached.

  • Specifying a position beyond the end of file is possible. If the position is written, the gap between the end of file and the current writing position is filled with zeros.
  • Function blocks have to be instantiated. The instance name of the function block has to be declared in the 'Variables' table of the POU where the FB is going to be used. The instance name must be unique within the POU.
Parameters Inputs

Execute

Handle

Position

Mode

Outputs

Done

Error

ErrorID