Monday, 5 January 2015

MOVE_STATEMENT_CONVERSION_RULES


REPORT  ZA_DEMO_MOVE_ASSIGNSTMTS.

DATA : V_CHAR(40) TYPE C,
      V_PAK(16) TYPE DECIMALS 14 ,
      V_DATE TYPE D,
      V_TIME TYPE T,
      V_NUM(30) TYPE N,
V_HEXA(30) TYPE X.

* V_CHAR = '+534312.121431434'.
* WRITE  V_CHAR.
*SKIP.
**FROM CHATACTER TYPE TO  PACKED TYPE.
*MOVE  V_CHAR TO V_PAK.
** V_PAK = '+12345678901234567.1234567890123446456'.
*WRITE V_PAK.
*NOTE: THE CONVERSION OF TYPE C TO P ---> ACCEPTS ONLY NUMBER OF DIGITS DECLARED AND ONE DECIMAL POINT AND A SIGN AND ANY BLANK CONVERTS TO ZERO.
*V_CHAR = '19890531' .
*MOVE V_CHAR TO V_DATE.
*WRITE V_DATE.
*
*V_CHAR = '66789' .
*MOVE V_CHAR  TO V_TIME.
*WRITE V_TIME.
*V_CHAR = '9871' .
*MOVE V_CHAR TO V_NUM.
*WRITE V_NUM.
*NOTE RIGHT JUSTIFIED.

*V_CHAR = 'ABCDEF0123456789' .
*MOVE V_CHAR TO V_HEXA.
*WRITE V_HEXA.

*NOTE LEFT JUSTIFIED.
* V_PAK = '-12345678901234567.12345678901234567890'.
*  WRITE V_PAK.
* MOVE  V_PAK TO V_CHAR.
* WRITE V_CHAR.

V_DATE = ''.
MOVE V_DATE TO V_PAK.
WRITE V_PAK.

Thursday, 1 January 2015

RETRIEVING A CHARACTER FROM STRING

DATA : V_STRING1(20) TYPE C,
       V_STR(20) TYPE C,
       V_LEN TYPE I,
      K TYPE I.

V_STRING1 = 'HI_MY_FRIEND'.
V_LEN = STRLEN( V_STRING1 ).
V_LEN = V_LEN - 1.

 V_STR = V_STRING1+V_LEN(1).

WRITE : V_STR.
*NOTE : 1.STRLEN( V_STRING1 ) SYNTAX SHOULD BE SAME AS ABOVE.
*       2.V_STRING1+V_LEN(1). FOR GETTING OR RETREVING OR ACCESSING A CHARACTER FROM  STRING THE SYNTAX MUST BE SAME AS ABOVE NO-GAPS.