WHAT IS DECIMAL DATA ERROR IN RPG IV...WHEN WILL IT HAPPENS?
Answers were Sorted based on User's Feedback
Answer / madhusudhan
For the above answer posted by Narendra, there are 19
People who told yes, but did they test this or verify.
Create a Char variable of Lenth 5 and Numeric variable of
lenth 5 and see the result .
D Num1 S 5 P 0
D Char1 S 5 A INZ('ABCDE')
C MOVE Char1 Num1
C Num1 DSPLY
Num1 will not give a Decimal Data error , instead it gives
the values Num1 = 12345. If you use eval
C EVAL Num1 = Char1
Eval will fail during compilation itself.
As per my analysis , Decimal Data error occurs when junk
values or special characters are passed to Numeric
variable. ( Ex : !, @ , #.$) . For testing Intialize the
above variable Char1 with atleast one special character and
just see the result.
This is only one example which i have given , and i heard
that during Parameter passing also this occurs , but dont
know in which scenerio , if anyone knows more on Decimal
Data error, kindly plz post.
Is This Answer Correct ? | 24 Yes | 0 No |
Answer / narendra
If you have defined any field as numeric and the value
being inserted into that field is character then system
will throw the message "decimal data error".
Is This Answer Correct ? | 31 Yes | 8 No |
Answer / priya
Decimal data error occurs primarily when numeric field receives invalid values/numbers. The same goes for the case of parameter passing.
When the file is opened by a program and the record containing the invalid data is read, you will not get an error.
But if the field containing the invalid data is read in the program, and some arithematic operation is performed with that value it gives decimal data error.
For eg by being the Factor1 of a MOVEx operation, or either factor in an ADD, SUB, DIV, MULT etc., or on the right-hand side of an EVAL, or if it is involved in a WRITE or UPDATE operation -- then it will be checked, and then the program will fail.
Is This Answer Correct ? | 3 Yes | 0 No |
Answer / arun
for abv to Mr.Madhusudhan
"Parameter passing also this occurs in cl prog"
bcoz if we pass the parameters in different formates then
it will occurs data decimal error
plz say if i am incorrect
Is This Answer Correct ? | 3 Yes | 1 No |
Answer / venkat
suppose if i declare data area with the length of 8 char
and i am receiving that data area as data structure and if i give only 7 char value. if i compile the program program will compile but if you call that program it will throw the error as decimal data error
Is This Answer Correct ? | 2 Yes | 0 No |
How do you read a subfile record which is in output mode?
what key word is used when screen is re-display?
how can I control from my cgis the cache of a remote browser?
How do you set the keywords SFLSIZ and SFLPAG if you want the subfile to dynamically expand?
how a varible can be passed to a subfile...accnt1 contain data in a data area..ie Daccnt1 uds,Daccnt2 3 overlay(accnt1:1), DNo 4 overlay(accnt1:4)..we want to transfer this dataarea value from acnt0001 to a subfile..that means to enter each record we have to incriment account no,, i normal window we can do move accnt1 account_no eval account_no=accnt1 eval no=no+1 exfmt usr_account how it possible with Subfile????????.Please do answer? (Thank you for all your answers dear friends!!)
what are the limitations of cl (compare to rpg) ?
what is sflinz and sflrna?
Is it necessary to define all formats ? Which are mandatory and which are Optional ?
What are the different ways to input data into data area?
what are the parameters required for calling ls & get command(SFTP COMMANDS) from cl progtram.... e.g call PGM(qp2shell) PARM('/qopensys/usr/bin/sh' '-c' 'sftp -b /home/mydir/tmp.txt user@host.com') Plz reply in detail...
Can be OVRDBF command mentioned after OPNQRYF command in CL?
What is the type, length of a LDA?