*&---------------------------------------------------------------------* *& Report ZTEST *& *&---------------------------------------------------------------------* *& *& create by 沖擊波 2008.10.06 *&---------------------------------------------------------------------*
REPORT ztest.
DATA num(16) TYPE p DECIMALS 0 .
DATA temp1 TYPE i . DATA temp2 TYPE i . DATA temp3 TYPE i . DATA temp4 TYPE i .
DATA tempq TYPE i . DATA tempw TYPE i . DATA tempe TYPE i . DATA tempr TYPE i .
DATA temp(16) TYPE p DECIMALS 0 . DATA tempii TYPE i . **** num = 123456789123 . **** ************************************************* temp = num .
temp1 = temp DIV 1000000000 . temp = temp MOD 1000000000 .
temp2 = temp DIV 1000000 . temp = temp MOD 1000000 .
temp3 = temp DIV 1000 . temp = temp MOD 1000 .
temp4 = temp . ******************************************************** IF temp1 <> 0 . tempii = temp1 .
tempw = tempii DIV 100 . tempii = tempii MOD 100 .
tempe = tempii DIV 10 . tempii = tempii MOD 10 .
tempr = tempii . ********************* IF tempw <> 0 . tempii = tempw . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE. WRITE 'hundred' . ENDIF . *********************
tempii = tempe . CASE tempii. WHEN 1 . tempii = temp1 MOD 100.
CASE tempii.
WHEN 11 . WRITE 'eleven' . WHEN 12 . WRITE 'twelve' . WHEN 13 . WRITE 'thirteen' . WHEN 14 . WRITE 'fourteen' . WHEN 15 . WRITE 'fifteen' . WHEN 16 . WRITE 'sixteen' . WHEN 17 . WRITE 'seventeen' . WHEN 18 . WRITE 'eighteen' . WHEN 19 . WRITE 'nineteen' .
ENDCASE.
WHEN 0 .
IF tempr <> 0 . WRITE 'and'. tempr = tempii . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE.
ENDIF .
WHEN 2 . WRITE 'twenty' . WHEN 3 . WRITE 'thirty' . WHEN 4 . WRITE 'fourty' . WHEN 5 . WRITE 'fifty' . WHEN 6 . WRITE 'sixty' . WHEN 7 . WRITE 'seventy' . WHEN 8 . WRITE 'eighty' . WHEN 9 . WRITE 'ninty' . ENDCASE.
*********************** IF tempr <> 0 and tempe <> 0. tempii = tempr . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE.
ENDIF .
***********************
write 'billion' . write / . ENDIF .
*************************************************************** IF temp2 <> 0 . WRITE 'and' . tempii = temp2 .
tempw = tempii DIV 100 . tempii = tempii mod 100 .
tempe = tempii DIV 10 . tempii = tempii mod 10 .
tempr = tempii . ********************* IF tempw <> 0 . tempii = tempw . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE. WRITE 'hundred' . ENDIF . *********************
tempii = tempe . CASE tempii. WHEN 1 . tempii = temp2 mod 100 .
CASE tempii.
WHEN 11 . WRITE 'eleven' . WHEN 12 . WRITE 'twelve' . WHEN 13 . WRITE 'thirteen' . WHEN 14 . WRITE 'fourteen' . WHEN 15 . WRITE 'fifteen' . WHEN 16 . WRITE 'sixteen' . WHEN 17 . WRITE 'seventeen' . WHEN 18 . WRITE 'eighteen' . WHEN 19 . WRITE 'nineteen' .
ENDCASE.
WHEN 0 .
IF tempr <> 0 . WRITE 'and' . tempr = tempii . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE.
ENDIF .
WHEN 2 . WRITE 'twenty' . WHEN 3 . WRITE 'thirty' . WHEN 4 . WRITE 'fourty' . WHEN 5 . WRITE 'fifty' . WHEN 6 . WRITE 'sixty' . WHEN 7 . WRITE 'seventy' . WHEN 8 . WRITE 'eighty' . WHEN 9 . WRITE 'ninty' . ENDCASE.
*********************** IF tempr <> 0 and tempe <> 0. tempii = tempr . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE.
ENDIF .
*********************** write 'million' . write / . ENDIF .
*************************************************************** IF temp3 <> 0 . WRITE 'and' . tempii = temp3 .
tempw = tempii DIV 100 . tempii = tempii mod 100 .
tempe = tempii DIV 10 . tempii = tempii mod 10 .
tempr = tempii . ********************* IF tempw <> 0 . tempii = tempw . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE. WRITE 'hundred' . ENDIF . *********************
tempii = tempe . CASE tempii. WHEN 1 . tempii = temp3 mod 100 .
CASE tempii.
WHEN 11 . WRITE 'eleven' . WHEN 12 . WRITE 'twelve' . WHEN 13 . WRITE 'thirteen' . WHEN 14 . WRITE 'fourteen' . WHEN 15 . WRITE 'fifteen' . WHEN 16 . WRITE 'sixteen' . WHEN 17 . WRITE 'seventeen' . WHEN 18 . WRITE 'eighteen' . WHEN 19 . WRITE 'nineteen' .
ENDCASE.
WHEN 0 .
IF tempr <> 0 . WRITE 'and' . tempr = tempii . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE.
ENDIF .
WHEN 2 . WRITE 'twenty' . WHEN 3 . WRITE 'thirty' . WHEN 4 . WRITE 'fourty' . WHEN 5 . WRITE 'fifty' . WHEN 6 . WRITE 'sixty' . WHEN 7 . WRITE 'seventy' . WHEN 8 . WRITE 'eighty' . WHEN 9 . WRITE 'ninty' . ENDCASE.
*********************** IF tempr <> 0 and tempe <> 0. tempii = tempr . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE.
ENDIF .
*********************** write 'thound' . write / .
ENDIF .
***************************************************************
IF temp4 <> 0 . WRITE 'and' . tempii = temp4 .
tempw = tempii DIV 100 . tempii = tempii mod 100 .
tempe = tempii DIV 10 . tempii = tempii mod 10 .
tempr = tempii . ********************* IF tempw <> 0 . tempii = tempw . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE. WRITE 'hundred' . ENDIF . *********************
tempii = tempe . CASE tempii. WHEN 1 . tempii = temp2 mod 100.
CASE tempii.
WHEN 11 . WRITE 'eleven' . WHEN 12 . WRITE 'twelve' . WHEN 13 . WRITE 'thirteen' . WHEN 14 . WRITE 'fourteen' . WHEN 15 . WRITE 'fifteen' . WHEN 16 . WRITE 'sixteen' . WHEN 17 . WRITE 'seventeen' . WHEN 18 . WRITE 'eighteen' . WHEN 19 . WRITE 'nineteen' .
ENDCASE.
WHEN 0 .
IF tempr <> 0 . WRITE 'and' . tempr = tempii . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE.
ENDIF .
WHEN 2 . WRITE 'twenty' . WHEN 3 . WRITE 'thirty' . WHEN 4 . WRITE 'fourty' . WHEN 5 . WRITE 'fifty' . WHEN 6 . WRITE 'sixty' . WHEN 7 . WRITE 'seventy' . WHEN 8 . WRITE 'eighty' . WHEN 9 . WRITE 'ninty' . ENDCASE.
*********************** IF tempr <> 0 and tempe <> 0. tempii = tempr . CASE tempii.
WHEN 1 . WRITE 'one' . WHEN 2 . WRITE 'two' . WHEN 3 . WRITE 'three' . WHEN 4 . WRITE 'four' . WHEN 5 . WRITE 'five' . WHEN 6 . WRITE 'six' . WHEN 7 . WRITE 'seven' . WHEN 8 . WRITE 'eight' . WHEN 9 . WRITE 'nine' . ENDCASE.
ENDIF .
***********************
ENDIF .
***************************************************************