SAP/ABAP 코드

ABAP - DATE & TIME & CURRENCY & QUANTITY

haramang 2021. 5. 24. 21:48

*&---------------------------------------------------------------------*

*& Report Z_OTHER_DATA_TYPES

*&---------------------------------------------------------------------*

*&

*&---------------------------------------------------------------------*

REPORT Z_OTHER_DATA_TYPES.

 

*                           Date and Time Fields.

 

***********************************************************************************

*Date -----------------------------------------------------------------------------\

* Date fields formant: YYYYMMDD with initial value of '00000000'

DATA MY_DATE TYPE VALUE '20120101'.

* SY-DATUM: Holds current System dates

DATA MY_DATE2 LIKE SY-DATUM.

 

 

***********************************************************************************

*Time -----------------------------------------------------------------------------\

* Time fields formant: HHMMSS with initial value of '000000'

DATA MY_TIME TYPE VALUE '111005'.

* SY_UZEIT: Holds current System time

DATA MY_TIME2 LIKE SY-UZEIT.

*

 

************************************************************************************

* Test Date & Time fields Output----------------------------------------------------

 

WRITE :/ MY_DATE,

         MY_DATE2,

         MY_TIME,

         MY_TIME2.

ULINE.

 

 

************************************************************************************

* Date Calculation------------------------------------------------------------------

 

DATA EMPL_SDATE  TYPE D.

DATA TODAYS_DATE TYPE D.

DATA LOS TYPE I.

DATA DAYS_COUNT TYPE I.

DATA FUT_DATE TYPE D.

 

EMPL_SDATE '20090515'.

TODAYS_DATE SY-DATUM.

LOS TODAYS_DATE EMPL_SDATE.

 

WRITE :/ EMPL_SDATE,

         TODAYS_DATE,

         'Difference is: 'LOS'Days'.

ULINE.

 

*********************************************

 

TODAYS_DATE SY-DATUM.

DAYS_COUNT '20'.

FUT_DATE TODAYS_DATE + DAYS_COUNT.

 

WRITE :'Future Date: 'FUT_DATE.

ULINE.

 

*********************************************

 

TODAYS_DATE SY-DATUM.

TODAYS_DATE+6(2) = '20'.

FUT_DATE TODAYS_DATE + DAYS_COUNT.

WRITE :/ SY-DATUMTODAYS_DATE.

WRITE :/ TODAYS_DATEFUT_DATE.

ULINE.

 

*********************************************

 

TODAYS_DATE SY-DATUM.

* Make the days to the first day (01) and subtract by 1, so that we can determine the last day of the previous month.

TODAYS_DATE+6(2) = '01'.

TODAYS_DATE TODAYS_DATE 1.

WRITE :/ SY-DATUMTODAYS_DATE.

ULINE.

 

 

************************************************************************************

* Time Calculation------------------------------------------------------------------

* Time differnece is calculated to seconds.

 

DATA CLOCK_IN     TYPE T.

DATA CLOCK_OUT    TYPE T.

DATA SECONDS_DIFF TYPE I.

DATA MINUTES_DIFF TYPE I.

DATA HOURS_DIFF   TYPE DECIMALs 2.

 

CLOCK_IN '073000'.

CLOCK_OUT '160000'.

SECONDS_DIFF CLOCK_OUT CLOCK_IN.

 

WRITE :'Clock in: 'CLOCK_IN'  Clock out: 'CLOCK_OUT.

WRITE :'Diffrence in seconds: 'SECONDS_DIFF.

 

MINUTES_DIFF SECONDS_DIFF / 60.

WRITE :'Diffrence in minutes: 'MINUTES_DIFF.

 

HOURS_DIFF MINUTES_DIFF / 60.

WRITE :'Diffrence in hours: 'HOURS_DIFF.

ULINE.

 

 

************************************************************************************

* Currency & Quantity Calculation---------------------------------------------------

 

TABLESZEMPLOYEES2.

DATA MY_SALARY      LIKE ZEMPLOYEES2-SALARY.

DATA MY_TAX_AMOUNT  LIKE MY_SALARY.

DATA MY_NET_PAY     LIKE MY_SALARY.

DATA TAX_PERCENT    TYPE DECIMALS 2.

 

******************************************************************************

* Currency calcuation

 

TAX_PERCENT '0.20'.

WRITE'Tax Percenetage'TAX_PERCENT.

SELECT FROM ZEMPLOYEES2.

  WRITE/ ZEMPLOYEES2-SURNAMEZEMPLOYEES2-SALARYZEMPLOYEES2-ECURRENCY.

  MY_TAX_AMOUNT TAX_PERCENT * ZEMPLOYEES2-SALARY.

  MY_NET_PAY ZEMPLOYEES2-SALARY MY_TAX_AMOUNT.

  WRITE'Tax amount'MY_TAX_AMOUNTZEMPLOYEES2-ECURRENCY,

           'Real Salary'MY_NET_PAYZEMPLOYEES2-ECURRENCY.

  SKIP.

ENDSELECT.

'SAP > ABAP 코드' 카테고리의 다른 글

ABAP - IF & CASE  (0) 2021.05.24
ABAP - BASIC SQL STATEMENT  (0) 2021.05.24
Character & String  (0) 2021.05.24
ABAP - Arithmetic  (0) 2021.05.24
ABAP - Variable / Constants  (0) 2021.05.24