Compare Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
Data-Area Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Date Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
Adding or Subtracting Dates ........................... 431
Calculating Durations between Dates ..................... 431
Unexpected Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
Declarative Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
File Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Indicator-Setting Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
Information Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
Initialization Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
Memory Management Operations ......................... 436
Message Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
Move Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
Moving Character, Graphic, and Numeric Data ................ 438
Moving Date-Time Data ............................. 439
Examples of Converting a Character Field to a Date Field ........ 441
Move Zone Operations ............................... 443
String Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
Structured Programming Operations ........................ 445
Subroutine Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
Coding Subroutines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
Subroutine Coding Examples ......................... 449
Test Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
Chapter 23. Operation Codes Detail ...................... 451
ACQ (Acquire) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
ADD (Add) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
ADDDUR (Add Duration) .............................. 454
ALLOC (Allocate Storage) .............................. 456
ANDxx (And) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
BEGSR (Beginning of Subroutine) ......................... 458
BITOFF (Set Bits Off) ................................ 459
BITON (Set Bits On) ................................. 460
CABxx (Compare and Branch) ........................... 462
CALL (Call a Program) ............................... 464
CALLB (Call a Bound Procedure) ......................... 465
CALLP (Call a Prototyped Procedure or Program) ................ 466
CASxx (Conditionally Invoke Subroutine) ..................... 469
CAT (Concatenate Two Strings) .......................... 471
CHAIN (Random Retrieval from a File) ...................... 474
CHECK (Check Characters) ............................ 477
CHECKR (Check Reverse) ............................. 480
CLEAR (Clear) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
CLOSE (Close Files) ................................. 487
COMMIT (Commit) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
COMP (Compare) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
DEALLOC (Free Storage) .............................. 490
DEFINE (Field Definition) .............................. 492
*LIKE DEFINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
*DTAARA DEFINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
DELETE (Delete Record) .............................. 496
DIV (Divide) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
DO (Do) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
xvi ILE RPG for AS/400 Reference