621
FX
3U
/FX
3UC
Series Programmable Controllers
Programming Manual - Basic & Applied Instruction Edition
26 Character String Control – FNC200 to FNC209
26.7 FNC206 – MIDR / Random Selection of Character Strings
21
FN
C
160-FN
C
169
R
eal
Ti
m
e
C
loc
k
C
ont
ro
l
22
FN
C
170
-F
N
C
17
9
E
xt
e
rnal
D
evi
ce
23
FN
C
180
Su
b
st.
I
n
str
. I
n
fo
24
FN
C
181-FN
C
189
O
ther
s
25
FN
C
190-FN
C
19
9
B
loc
k D
a
ta
O
per
at
io
n
26
FN
C
200-FN
C
209
C
har
act
e
r St
ring
C
ont
ro
l
27
F
N
C2
10
-F
NC
21
9
Da
ta
O
per
at
ion 3
28
FN
C
220-FN
C
24
9
Da
ta
Co
m
p
a
ris
o
n
29
FN
C
250-FN
C
269
Da
ta
T
a
b
le
O
per
at
io
n
30
FN
C
27
0-F
N
C
274
Ex
-D
ev
ic
e
In
ve
rte
r C
o
mm
s
Cautions
When handling character codes other than ASCII codes, note the following contents:
• The number of characters is handled in units of byte (8 bits). Accordingly, in the case of character codes in
which 2 bytes express 1 character such as shift JIS codes, the length of 1 character is detected as “2”.
• When extracting characters from a character string including character codes in which 2 bytes express 1
character such as shift JIS codes, consider the number of characters to be extracted in units of character
codes for 1 character.
Note that the expected character code is not given if only 1 byte is executed out of a 2-byte character code.
Errors
An operation error is caused in the following cases; The error flag M8067 turns ON, and the error code is
stored in D8067.
• When “00H” is not set within the corresponding device range after a device specified by
(error code:
K6706)
• When the value specified by
+1 exceeds the number of characters specified by
(error code:
K6706)
• When the number of characters specified by
+1 from the position specified by
exceeds the
device range specified by
(error code: K6706)
• When the number of devices after a device number specified by
is smaller than the number of
devices required to store extracted characters as many as the number specified by
+1 (that is, when
“00H” cannot be stored after all character strings and the last character) (error code: K6706)
• When
specifies a negative value (error code: K6706)
• When
+1 specifies “-2” or less (error code: K6706)
• When
+1 specifies a number larger than the number o characters specified by
(error code: K6706)
Program example
In the program example shown below, four characters are extracted from the 3rd character from the left end
of the character string data stored in D10 and later, and is stored to D0 and later when X000 turns ON.
S
1
S
2
S
1
S
2
D
D
D
S
2
S
2
S
2
S
2
S
1
31H(1)
32H(2)
46H(E)
33H(3)
31H(1)
32H(2)
46H(E)
33H(3)
X000
D0
FNC206
MIDRP
D10
END
R0
D11
D12
D13
b15---------------------b8
41H(A)
42H(B)
00H
45H(D)
“BA213ED”
D1
D2
00H
“213E”
b15----------------------b8b7-----------------------b0
D10
D0
R1
4
3
R0
3rd character
Four characters
starting from 3rd character
Extracted characters
b7-----------------------b0