Technical data

Table Of Contents
SFCs/SFBs for Transferring Data Records
System Software for S7-300/400 System and Standard Functions - Volume 1/2
A5E00709327-01
7-15
Using Old S7-300 FMs and CPs with Data Record Numbers > 1
If you want to read out a data record with a number higher than 1 from an old
S7-300 FM or old S7-300 CP using SFC 59 "RD_REC," remember the following
points:
If the destination area is larger than the actual length of the required data
record, no data are entered in RECORD.
RET_VAL has the value W#16#80B1.
If the destination area is smaller than the actual length of the required data
record, the CPU reads as many bytes beginning at the start of the record as are
specified in the length information of RECORD and enters this number of bytes
in RECORD.
RET_VAL has the value 0.
If the length specified in RECORD is the same as the actual length of the
required data record, the CPU reads the data record and enters it in RECORD.
RET_VAL has the value 0.
Error Information
The "real" error information (error codes W#16#8xyz) in the following table can be
divided into two classes:
Temporary errors (error codes W#16#80A2 to 80A4, 80Cx):
With this type of error, it is possible that the error will be eliminated without you
taking any action, in other words, it is advisable to call the SFC again (if
necessary, more than once).
An example of a temporary error is when required resources are currently being
used (W#16#80C3).
Permanent errors (error codes W#16#809x, 80A1, 80Bx, 80Dx):
This type of error will not be eliminated without you taking action. Calling the
SFC again will only be successful after the error has been eliminated. An
example of a permanent error is entering the wrong length in RECORD
(W#16#80B1).
Note
If you transfer data records to a DPV1 slave with SFC 58 "WR_REC" or if you fetch
data records from a DPV1 slave with SFC 59 "RD_REC" and if this DPV1 slave
operates in DPV1 mode, the DP Master evaluates the error information it received
from the Slave as follows:
If the error information lies within the range from W#16#8000 to W#16#80FF or
W#16#F000 to W#16#FFFF the DP master passes the error information to the
SFC. If it lies out of this range, the CPU passes the value W#16#80A2 to the SFC
and suspends the slave.
For a description of the error information received from DPV1-Slaves, see
Receiving an Interrupt with SFB 54 "RALRM" STATUS[3].
Error information for SFC 58 "WR_REC" and SFC 59 "RD_REC."