‎2005 Jun 28 7:14 AM
I have still problem with this FM.
In 4.6B it works, but in 620 it generates SHORTDUMP.
i declared TA as
DATA: BEGIN OF TA.
INCLUDE STRUCTURE RSLGSEL.
DATA: END OF TA.
DATA : BEGIN OF AUDIT_SELECT.
INCLUDE STRUCTURE RSAUSEL.
DATA : END OF AUDIT_SELECT.
DATA: FILE_NO LIKE RSLGETAB-FILE_NO.
DATA : BEGIN OF ENTRIESTAB OCCURS 500.
INCLUDE STRUCTURE RSLGETAB.
DATA: END OF ENTRIESTAB.
DATA: BEGIN OF AUDIT_FILE_STAT OCCURS 100.
INCLUDE STRUCTURE RSAUFINFO.
DATA: END OF AUDIT_FILE_STAT.
CALL FUNCTION 'RSAU_SELINFO_INIT'
CHANGING
AUDIT_SELECTION = AUDIT_SELECT.
TA-WHICHLOG = 'L'.
FILE_NO = 1.
Here while debugging i found AUDIT_SELECT storing "Non-Char like structure"
does any structure here is not matching the below FM.
CALL FUNCTION RSAU READ_FILE
EXPORTING
SELECTION = TA
SELECTION_AUDIT = AUDIT_SELECT
FILE_NO_OLD = FILE_NO
TABLES
SYSLOG_IN_TABLE = ENTRIESTAB
AUDIT_FILE_STAT = AUDIT_FILE_STAT.
After execting this FM, Shortdump occurs. Pls correct me if my declaration is wrong anywhere..
ambichan
‎2005 Jun 28 7:25 AM
can you look up st22 and tell us the dump message, that will tell us what exactly is going wrong.
mostly it will be a type conflict stuff but the dump analysis will tell you exactly whats the problem.
Regards
Raja
‎2005 Jun 28 7:30 AM
<b>Runtime errors CALL_FUNCTION_CONFLICT_LENG
Exception CX_SY_DYN_CALL_ILLEGAL_TYPE</b>
Type conflict when calling a function module (field length).
<b>----
What happened?
-
</b>
Error in ABAP application program.
The current ABAP program "ZREADAUDLOG1" had to be terminated because one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
The function module was called incorrectly.
<b>----
Error analysis
-
</b>
An exception occurred. This exception will be dealt with in more detail
below. The exception, assigned to the class <b>'CX_SY_DYN_CALL_ILLEGAL_TYPE'</b>, was
not caught, which
led to a runtime error. The reason for this exception is:
The call to the function module <b>"RSAU_READ_FILE"</b> is incorrect:
In the function module interface, you can specify only
fields of a specific type and length under "SYSLOG_IN_TABLE".
Although the currently specified field
"ENTRIESTAB" is the correct type, its length is incorrect.
‎2005 Jun 28 7:31 AM
Hi,
look at se37 (table parameter has changed in 6.2)
SYSLOG_IN_TABLE LIKE RSAUETAB2
and you've "like rslgetab" in your 4.6 Program
regards Andreas
‎2005 Jun 28 7:41 AM
the last line in the error analysis (which you posted) clearly tells you the problem.
Regards
Raja
‎2005 Jun 28 7:41 AM
Great Andreas...big applause from myside..
I was breaking my head from yesterday for this...
Thanks a lot..
BTW, dont we have any way to make program to work in both 4.6B and 620,I gues we could not..unless we create seperate one..for each .
am i right..pls correct me if i am wrong..
ambichan
‎2005 Jun 28 7:44 AM
this is the problem with using FM's which are not released! We have to modify our code to suit the changes in FM. But released FM's wont change at all.
Regards
Raja
‎2005 Jun 28 7:48 AM
Hi ambi,
The only thing , i do in some prg. to diffe btwn
4.6 and 6.2 is to enquire sy-SAPRL in connection with
the commands "create data" or "generate subroutine.."
-soli deo gloria-
Andreas
‎2005 Jun 28 7:51 AM
Hey Andreas.
This is what i am expecting...could you pls give me an sample..for this..
would be great..
I have now two things to be changed in 4.6C and 6.2.
1.Open dataset statement needs ENCODING DEFAULT option for 6.2.
2.This internal table change for FM.
Could you pls give me the code if you have...would be great help.
ambichan