padded with pad characters (or truncated) on the right as needed. The default pad character is a blank.
The option controls the counting rule. Ycounts SO and SI within mixed strings as one each. Ndoes not
count the SO and SI and is the default.
Here are some EBCDIC examples:
DBLEFT('ab<.A.B>',4) -> 'ab<.A>'
DBLEFT('ab<.A.B>',3) -> 'ab '
DBLEFT('ab<.A.B>',4,'x','Y') -> 'abxx'
DBLEFT('ab<.A.B>',3,'x','Y') -> 'abx'
DBLEFT('ab<.A.B>',8,'<.P>') -> 'ab<.A.B.P>'
DBLEFT('ab<.A.B>',9,'<.P>') -> 'ab<.A.B.P> '
DBLEFT('ab<.A.B>',8,'<.P>','Y') -> 'ab<.A.B>'
DBLEFT('ab<.A.B>',9,'<.P>','Y') -> 'ab<.A.B> '
DBRIGHT
 DBRIGHT(string,length
,
pad ,option
) 
returns a string of length length containing the rightmost length characters of string. The string returned is
padded with pad characters (or truncated) on the left as needed. The default pad character is a blank.
The option controls the counting rule. Ycounts SO and SI within mixed strings as one each. Ndoes not
count the SO and SI and is the default.
Here are some EBCDIC examples:
DBRIGHT('ab<.A.B>',4) -> '<.A.B>'
DBRIGHT('ab<.A.B>',3) -> ' <.B>'
DBRIGHT('ab<.A.B>',5,'x','Y') -> 'x<.B>'
DBRIGHT('ab<.A.B>',10,'x','Y') -> 'xxab<.A.B>'
DBRIGHT('ab<.A.B>',8,'<.P>') -> '<.P>ab<.A.B>'
DBRIGHT('ab<.A.B>',9,'<.P>') -> ' <.P>ab<.A.B>'
DBRIGHT('ab<.A.B>',8,'<.P>','Y') -> 'ab<.A.B>'
DBRIGHT('ab<.A.B>',11,'<.P>','Y') -> ' ab<.A.B>'
DBRIGHT('ab<.A.B>',12,'<.P>','Y') -> '<.P>ab<.A.B>'
DBRLEFT
 DBRLEFT(string,length
,option
) 
returns the remainder from the DBLEFT function of string.Iflength is greater than the length of string,
returns a null string.
The option controls the counting rule. Ycounts SO and SI within mixed strings as one each. Ndoes not
count the SO and SI and is the default.
Here are some EBCDIC examples:
DBRLEFT('ab<.A.B>',4) -> '<.B>'
DBRLEFT('ab<.A.B>',3) -> '<.A.B>'
DBRLEFT('ab<.A.B>',4,'Y') -> '<.A.B>'
DBRLEFT('ab<.A.B>',3,'Y') -> '<.A.B>'
DBRLEFT('ab<.A.B>',8) -> ''
DBRLEFT('ab<.A.B>',9,'Y') -> ''
DBRRIGHT
406 CICS TS for VSE/ESA: REXX Guide