ABAP dump when running an ALV report in a portal
Hi,
I have an ABAP report created in SAP R/3 4.7. Am using the ALV function module REUSE_ALV_GRID_DISPLAY to display the output. The programs runs correctly when run in R/3 using the SAP GUI.
When the report is run in the portal, I get a runtime error 'MESSAGE_TYPE_X'.
Please let me know if anybody has faced such issues.
I checked the OSS note 702732 which talks about increasing the threshold value of the start parameter. But this is not agreed by the BASIS team.
Thanks,
Best regards,
Ajith
The ST22 error log is as follows:
What happened?
The current application program detected a situation which really
should not occur. Therefore, a termination with a short dump was
triggered on purpose by the key word MESSAGE (type X).
What can you do?
Print out the error message (using the "Print" function)
and make a note of the actions and input that caused the
error.
To resolve the problem, contact your SAP system administrator.
You can use transaction ST22 (ABAP Dump Analysis) to view and administer
termination messages, especially those beyond their normal deletion
date.
Error analysis
Short text of error message:
Data volume (84.550.400 bytes) is too large. (abap/alvgrid/size_nodod_mb
Technical information about the message:
Diagnosis
You tried to send a data record to the front-end that contains
84.550.400 bytes. However, the data volume is restricted to
52.428.800 bytes.
System Response
The running application program was terminated with a runtime
error.
Procedure
Restrict the data selection if possible or contact your system
administrator.
Procedure for System Administration
You can set the maximum size of these data volumes using the kernel
parameter 'abap/alvgrid/size_nodod_mb' (in megabytes).
Message classe...... "S>"
Number.............. 890
Variable 1.......... "84.550.400"
Variable 2.......... "52.428.800"
Variable 3.......... " "
Variable 4.......... " "
How to correct the error
Probably the only way to eliminate the error is to correct the program.
You may able to find an interim solution to the problem
in the SAP note system. If you have access to the note system yourself,
use the following search criteria:
"MESSAGE_TYPE_X" C
"SAPLAWRT" or "LAWRTU22"
"ITS_CHECK_ALV_DATA_SIZE"
If you cannot solve the problem yourself, please send the
following documents to SAP:
1. A hard copy print describing the problem.
To obtain this, select the "Print" function on the current screen.
2. A suitable hardcopy prinout of the system log.
To obtain this, call the system log with Transaction SM21
and select the "Print" function to print out the relevant
part.
3. If the programs are your own programs or modified SAP programs,
supply the source code.
To do this, you can either use the "PRINT" command in the editor or
print the programs using the report RSINCL00.
4. Details regarding the conditions under which the error occurred
or which actions and input led to the error.
Information on where terminated
The termination occurred in the ABAP program "SAPLAWRT" in
"ITS_CHECK_ALV_DATA_SIZE".
The main program was "Z_BW_RECON_INV_RPT ".
The termination occurred in line 25 of the source code of the (Include)
program "LAWRTU22"
of the source code of program "LAWRTU22" (when calling the editor 250).
Source code extract
000010 FUNCTION ITS_CHECK_ALV_DATA_SIZE.
000020 *"
000030 ""Lokale Schnittstelle:
000040 *" IMPORTING
000050 *" REFERENCE(DATA_TABLE) TYPE TABLE
000060 *"
000070
000080 data n type i.
000090 data currsize type i.
000100 statics maxsize type i.
000110 data par_value(56).
000120 if maxsize is initial.
000130 sy-subrc = 0.
000140 CALL 'C_SAPGPARAM' ID 'NAME' FIELD 'abap/alvgrid/size_nodod_MB'
000150 id 'VALUE' field par_value.
000160 if sy-subrc ne 0.
000170 maxsize = 52428800. " Default 50 MB
000180 else.
000190 maxsize = 1048576 * par_value.
000200 endif.
000210 endif.
000220 describe table data_table lines n.
000230 currsize = sy-tfill * sy-tleng.
000240 if currsize gt maxsize.
> message x890(s>) with currsize maxsize.
000260 endif.
000270 ENDFUNCTION.
HI,
This is a Memory problem.
System is allocated with a Max Memory of 50 MB,(see the dump code, in the last it is hardcoded in the std code)
The data of your report is coming around 83 MB.
Restrict your selection criteria of the Object and run the same report and see. it will work.
Regards,
Anji
Similar Messages
-
ABAP Dump when running S_ALR_87100205 (RFHABU00N)
Hi,
We are implementing New GL for a company code in Turkey. When I trying to run the report RFHABU00N for non-leading ledger, I am getting an abap dump because the program is not able to report the output for non-leading ledger documents. The report outputs correct information when executed for the leading ledger.
has any one else faced this issue in the past and if so how was it resolved.
We are currently on SAP ECC 6.04.
Thanks,
NitinHi,
What is the dump message exactly? Anyway, for execution of this report for non-leading ledger, please, consult the following notes:
1883338 - RFHABU00N Long runtimes and termination
1965855 - RFHABU00/RFHABU00N: General Ledger View
1965562 - SAPDBBRF: Fiscal year not correctly delimited for non-leading ledgers
1939154 - RFHABU00N: Documents from non-leading ledgers ignored
Regards,
Eli -
Dump when exporting an ALV to excel at Portal
Hi there,
I am getting a dump ( Exception condition "CNTL_ERROR" raised) when exporting an ALV to an excel document.
I've done the following:
1 - Create an ALV report at SAP R3 (with option export to excel);
2 - Create a SAP transaction iview to show the ALV report at portal;
3 - At portal, I am trying to export the ALV to excel.
Isn't this correct?
How can I get throught this problem. I really need to export this ALV to excel.
Thanks and best regards,
Vasco BrandãHi,
if it should not dump then it_output_alv-gehalt_eff this should be of type C. is it type char.
and can you show the fieldcat of the field <b>gehalt_eff</b>, that might causing the problem. though you changed the type.
Regards
vijay -
Running the alv report in background and sending it thro email
hi,
i have to run the alv report in background and send the output through emailHi
Many a times there is a requirement to display ALV Grid (not ALV List) in the background Job. I have checked the SDN Forum for the same and it has been mentioned that ALV Grid cannot be displayed in Background, but the list output of ALV is possible. So user wont have the actual Grid interface but the List interface.
There is a workaround to display ALV Grid in Background Job. The only restriction is you cant schedule the job through SM36. You need to execute the transaction of the report program, fill in the selection screen data and hit Execute.
The job would be executed in background. User will be able to see the Job Log and Job Status after executing the program. User doesnt have to go to SM37 to view the job status/log. Once the Job Status is changed to COMPLETED, user can click on DISPLAY SPOOL to view the ALV Grid.
Limitations:
Cant schedulea background job
The session should be active until the background job is completed. If the session is closed, then user wont be able to check the output in ALV Grid. User would be able to check the output through spool or SM37
Advantages:
If the spool width is greater than 255 characters, then the entire width could be seen in the output because the output is directed to an ALV Grid and not to spool
Interface of ALV Grid is available instead of ALV List even though its a background job.
Program wont give the TIME OUT error
Steps Required:
1. Once you execute the program, the following screen would be displayed
2. Click Display Job Status to check the Status of the Background Job
3. Click on Display the Job Log to check the Log
4. Click on Display Job Status to check the Job Status
5. Click on DISPLAY SPOOL to check the spool content once the Job Status is changed to COMPLETED. Output is displayed in ALV Grid
Programs:
1. Two different programs needs to be created
ZPROGRAM_ONE: This is the 1st program, where the selection screen and all the data validations would be done. Error handling for invalid data should be done in this program.
Once the data validation is done, this program would call the 2nd program ZPROGEAM_TWO. Build the logic to display ALV Grid in this program. The logic will only display ALV in foreground and it wont be reflected in the spool.
ZPROGRAM_TWO: This program would fetch all the data and do all the processing. If you want the spool output along with ALV Grid output, then build the logic in this program to display ALV Grid.
*& Report ZPROGRAM_ONE *
REPORT zprogram_one .
PRASHANT PATIL
TABLES : mara,
tsp01.
type-pools:slis.
TYPES : BEGIN OF t_mara,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
laeda TYPE mara-laeda,
END OF t_mara.
DATA : i_mara TYPE STANDARD TABLE OF t_mara,
wa_mara TYPE t_mara,
wa_index TYPE indx, " For Index details
wa_index_key TYPE indx-srtfd VALUE 'PRG_ONE',
i_jobsteplist TYPE STANDARD TABLE OF tbtcstep, " For spool number
wa_params TYPE pri_params, " To Get Print Parameters
wa_jobhead TYPE tbtcjob, " To know the status of job
wa_jobsteplist TYPE tbtcstep, " To know the spool
w_jobname TYPE tbtco-jobname, " Job name for bckgrnd job
w_jobcount TYPE tbtco-jobcount, " Unique id for bckgrd job
w_path TYPE string, " Upload path
w_lsind TYPE sy-lsind, " Index
wa_seltab TYPE rsparams,
i_seltab TYPE STANDARD TABLE OF rsparams,
wa_index1 TYPE indx, " For Index details
wa_index_key1 TYPE indx-srtfd VALUE 'PRG_TWO',
i_fieldcat TYPE slis_t_fieldcat_alv,
wa_fieldcat LIKE LINE OF i_fieldcat.
CONSTANTS DECLARATION *
CONSTANTS :
c_a(1) TYPE c VALUE 'A',
c_m(1) TYPE c VALUE 'M',
c_l(1) TYPE c VALUE 'L',
c_c(1) TYPE c VALUE 'C',
c_zfdr(4) TYPE c VALUE 'ZFDR',
c_x(1) TYPE c VALUE 'X',
c_locl(4) TYPE c VALUE 'LOCL', " Destination is LOCAL
c_f(1) TYPE c VALUE 'F', " Job Status - Failed
c_s(1) TYPE c VALUE 'S',
c_p(1) TYPE c VALUE 'P'.
SELECTION SCREEN PARAMETERS
SELECT-OPTIONS : s_matnr FOR mara-matnr.
START-OF-SELECTION.
Before the export, fill the data fields before CLUSTR
wa_index-aedat = sy-datum.
wa_index-usera = sy-uname.
EXPORT s_matnr
TO DATABASE indx(st) FROM wa_index ID wa_index_key.
To Open the Job for background processing
PERFORM open_job.
To get the print parameters
PERFORM get_print_parameters.
Submit the job in background
PERFORM job_submit.
Close the background job
PERFORM job_close.
This is the output screen with the buttons ********
Create 3 buttons DISPLAY SPOOL, STATUS, JOBLOG
SET PF-STATUS 'ZS001'.
WRITE: / 'The program is submitted in Background'.
WRITE: / 'Press DISPLAY SPOOL to see the spool'.
WRITE: / 'Press STATUS to see the status of the background'.
AT USER-COMMAND.
If user presses the 'BACK' button
IF sy-ucomm = 'BAK'.
IF wa_jobhead-status = c_f OR
wa_jobhead-status = c_a.
LEAVE TO SCREEN 0.
ENDIF.
ENDIF.
If the user presses the 'DISPLAY SPOOL' Button
IF sy-ucomm = 'DISPLAY'.
PERFORM display_spool.
ENDIF.
If the user presses the 'JOB STATUS' Button
IF sy-ucomm = 'STATUS'.
PERFORM display_status.
ENDIF.
If the user presses the 'JOB LOG' Button
IF sy-ucomm = 'JOBLOG'.
PERFORM display_job_log.
ENDIF.
*& Form open_job
text
--> p1 text
<-- p2 text
FORM open_job .
This is to Create a new job which is to be submitted in background to
process sales order/delivery/invoice
Here we would get a unique id ( Jobcount ) which identifies our job
along with the job name which we have assigned to our job
CONCATENATE sy-uname
sy-datum
sy-uzeit
INTO w_jobname . " Assign unique jobname
CALL FUNCTION 'JOB_OPEN'
EXPORTING
DELANFREP = ' '
JOBGROUP = ' '
jobname = w_jobname
SDLSTRTDT = NO_DATE
SDLSTRTTM = NO_TIME
JOBCLASS =
IMPORTING
jobcount = w_jobcount
CHANGING
RET =
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. " open_job
*& Form get_print_parameters
text
--> p1 text
<-- p2 text
FORM get_print_parameters .
DATA : l_valid TYPE c.
This is to get the Print Parameters for the job which is to be
submitted in background to process sales order/delivery/invoice
CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING
ARCHIVE_ID = C_CHAR_UNKNOWN
ARCHIVE_INFO = C_CHAR_UNKNOWN
ARCHIVE_MODE = C_CHAR_UNKNOWN
ARCHIVE_TEXT = C_CHAR_UNKNOWN
AR_OBJECT = C_CHAR_UNKNOWN
ARCHIVE_REPORT = C_CHAR_UNKNOWN
AUTHORITY = C_CHAR_UNKNOWN
COPIES = C_NUM3_UNKNOWN
COVER_PAGE = C_CHAR_UNKNOWN
DATA_SET = C_CHAR_UNKNOWN
DEPARTMENT = C_CHAR_UNKNOWN
destination = c_locl " LOCL
EXPIRATION = C_NUM1_UNKNOWN
immediately = space
IN_ARCHIVE_PARAMETERS = ' '
IN_PARAMETERS = ' '
LAYOUT = C_CHAR_UNKNOWN
LINE_COUNT = C_INT_UNKNOWN
LINE_SIZE = C_INT_UNKNOWN
LIST_NAME = C_CHAR_UNKNOWN
LIST_TEXT = C_CHAR_UNKNOWN
MODE = ' '
new_list_id = c_x
PROTECT_LIST = C_CHAR_UNKNOWN
no_dialog = c_x
RECEIVER = C_CHAR_UNKNOWN
RELEASE = C_CHAR_UNKNOWN
REPORT = C_CHAR_UNKNOWN
SAP_COVER_PAGE = C_CHAR_UNKNOWN
HOST_COVER_PAGE = C_CHAR_UNKNOWN
PRIORITY = C_NUM1_UNKNOWN
SAP_OBJECT = C_CHAR_UNKNOWN
TYPE = C_CHAR_UNKNOWN
user = sy-uname
USE_OLD_LAYOUT = ' '
UC_DISPLAY_MODE = C_CHAR_UNKNOWN
DRAFT = C_CHAR_UNKNOWN
ABAP_LIST = ' '
USE_ARCHIVENAME_DEF = ' '
DEFAULT_SPOOL_SIZE = C_CHAR_UNKNOWN
PO_FAX_STORE = ' '
NO_FRAMES = C_CHAR_UNKNOWN
IMPORTING
OUT_ARCHIVE_PARAMETERS =
out_parameters = wa_params
valid = l_valid
EXCEPTIONS
archive_info_not_found = 1
invalid_print_params = 2
invalid_archive_params = 3
OTHERS = 4
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. " get_print_parameters
*& Form job_submit
text
--> p1 text
<-- p2 text
FORM job_submit .
The job which we have created & the unique id ( jobcount ) which we
have got identifies our job. Hence those parameters are passed along
with the name of the background program "ZPROGRAM_TWO"
The job is submitted in background.
CALL FUNCTION 'JOB_SUBMIT'
EXPORTING
ARCPARAMS =
authcknam = sy-uname
COMMANDNAME = ' '
OPERATINGSYSTEM = ' '
EXTPGM_NAME = ' '
EXTPGM_PARAM = ' '
EXTPGM_SET_TRACE_ON = ' '
EXTPGM_STDERR_IN_JOBLOG = 'X'
EXTPGM_STDOUT_IN_JOBLOG = 'X'
EXTPGM_SYSTEM = ' '
EXTPGM_RFCDEST = ' '
EXTPGM_WAIT_FOR_TERMINATION = 'X'
jobcount = w_jobcount
jobname = w_jobname
LANGUAGE = SY-LANGU
priparams = wa_params
report = 'ZPROGRAM_TWO'
VARIANT = ' '
IMPORTING
STEP_NUMBER =
EXCEPTIONS
bad_priparams = 1
bad_xpgflags = 2
invalid_jobdata = 3
jobname_missing = 4
job_notex = 5
job_submit_failed = 6
lock_failed = 7
program_missing = 8
prog_abap_and_extpg_set = 9
OTHERS = 10
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. " job_submit
*& Form job_close
text
--> p1 text
<-- p2 text
FORM job_close .
Once the job is submitted in background then the job is closed
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
AT_OPMODE = ' '
AT_OPMODE_PERIODIC = ' '
CALENDAR_ID = ' '
EVENT_ID = ' '
EVENT_PARAM = ' '
EVENT_PERIODIC = ' '
jobcount = w_jobcount
jobname = w_jobname
LASTSTRTDT = NO_DATE
LASTSTRTTM = NO_TIME
PRDDAYS = 0
PRDHOURS = 0
PRDMINS = 0
PRDMONTHS = 0
PRDWEEKS = 0
PREDJOB_CHECKSTAT = ' '
PRED_JOBCOUNT = ' '
PRED_JOBNAME = ' '
SDLSTRTDT = NO_DATE
SDLSTRTTM = NO_TIME
STARTDATE_RESTRICTION = BTC_PROCESS_ALWAYS
strtimmed = c_x
TARGETSYSTEM = ' '
START_ON_WORKDAY_NOT_BEFORE = SY-DATUM
START_ON_WORKDAY_NR = 0
WORKDAY_COUNT_DIRECTION = 0
RECIPIENT_OBJ =
TARGETSERVER = ' '
DONT_RELEASE = ' '
TARGETGROUP = ' '
DIRECT_START =
IMPORTING
JOB_WAS_RELEASED =
CHANGING
RET =
EXCEPTIONS
cant_start_immediate = 1
invalid_startdate = 2
jobname_missing = 3
job_close_failed = 4
job_nosteps = 5
job_notex = 6
lock_failed = 7
invalid_target = 8
OTHERS = 9
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. " job_close
*& Form display_spool
text
--> p1 text
<-- p2 text
FORM display_spool .
To Read the Job to get the spool details
DATA : l_rqident TYPE tsp01-rqident, " Spool Number
l_spoolno TYPE tsp01_sp0r-rqid_char.
CLEAR : l_rqident,
w_lsind,
wa_jobsteplist.
REFRESH : i_jobsteplist.
SET PF-STATUS 'ZAR02'.
Get the Spool Number
CALL FUNCTION 'BP_JOB_READ'
EXPORTING
job_read_jobcount = w_jobcount
job_read_jobname = w_jobname
job_read_opcode = '20'
JOB_STEP_NUMBER =
IMPORTING
job_read_jobhead = wa_jobhead
TABLES
job_read_steplist = i_jobsteplist
CHANGING
RET =
EXCEPTIONS
invalid_opcode = 1
job_doesnt_exist = 2
job_doesnt_have_steps = 3
OTHERS = 4
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Read the Job Step list to get the spool number
READ TABLE i_jobsteplist INTO wa_jobsteplist INDEX 1.
CHECK wa_jobsteplist-listident <> space.
Spool Number
l_rqident = wa_jobsteplist-listident.
MOVE l_rqident TO l_spoolno.
Check the spool in TSP01
SELECT SINGLE * FROM tsp01 WHERE rqident = l_rqident.
IF sy-subrc = 0.
LEAVE TO LIST-PROCESSING.
CALL FUNCTION 'RSPO_R_RDELETE_SPOOLREQ'
EXPORTING
spoolid = l_spoolno
IMPORTING
RC =
STATUS =
PERFORM show_alv.
ENDIF.
w_lsind = sy-lsind.
IF sy-lsind GE 19.
sy-lsind = 1.
ENDIF.
ENDFORM. " display_spool
*& Form show_alv
text
--> p1 text
<-- p2 text
FORM show_alv .
Before the import, fill the data fields before CLUSTR.
wa_index1-aedat = sy-datum.
wa_index1-usera = sy-uname.
To Import the selection screen data from Calling Program
IMPORT i_mara
FROM DATABASE indx(st) ID wa_index_key1 TO wa_index1.
FREE MEMORY ID wa_index_key1.
This prepares the field-catalog for ALV.
PERFORM prepare_fieldcatalog.
This displays the output in ALV format .
PERFORM display_alv.
ENDFORM. " show_alv
*& Form display_status
text
--> p1 text
<-- p2 text
FORM display_status .
To Display the STATUS of the JOB which is exectued in background
CLEAR : wa_jobsteplist.
REFRESH : i_jobsteplist.
WRITE:/ 'DISPLAYING JOB STATUS'.
CALL FUNCTION 'BP_JOB_READ'
EXPORTING
job_read_jobcount = w_jobcount
job_read_jobname = w_jobname
job_read_opcode = '20'
JOB_STEP_NUMBER =
IMPORTING
job_read_jobhead = wa_jobhead
TABLES
job_read_steplist = i_jobsteplist
CHANGING
RET =
EXCEPTIONS
invalid_opcode = 1
job_doesnt_exist = 2
job_doesnt_have_steps = 3
OTHERS = 4
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
To Display the status text as per the status type
CASE wa_jobhead-status.
WHEN 'S'. WRITE: / 'Scheduled'.
WHEN 'R'. WRITE: / 'Released'.
WHEN 'F'. WRITE: / 'Completed'.
WHEN 'A'. WRITE: / 'Cancelled'.
WHEN OTHERS.
ENDCASE.
IF sy-lsind GE 19.
sy-lsind = 1.
ENDIF.
ENDFORM. " display_status
*& Form display_job_log
text
--> p1 text
<-- p2 text
FORM display_job_log .
To display the log of the background program
LEAVE TO LIST-PROCESSING.
CALL FUNCTION 'BP_JOBLOG_SHOW_SM37B'
EXPORTING
client = sy-mandt
jobcount = w_jobcount
joblogid = ' '
jobname = w_jobname
EXCEPTIONS
error_reading_jobdata = 1
error_reading_joblog_data = 2
jobcount_missing = 3
joblog_does_not_exist = 4
joblog_is_empty = 5
joblog_show_canceled = 6
jobname_missing = 7
job_does_not_exist = 8
no_joblog_there_yet = 9
no_show_privilege_given = 10
OTHERS = 11.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. " display_job_log
*& Form prepare_fieldcatalog
text
--> p1 text
<-- p2 text
FORM prepare_fieldcatalog .
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'MATNR'.
wa_fieldcat-tabname = 'I_MARA'.
wa_fieldcat-reptext_ddic = 'Material no.'.
wa_fieldcat-outputlen = '18'.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'ERSDA'.
wa_fieldcat-tabname = 'I_MARA'.
wa_fieldcat-reptext_ddic = 'Creation date'.
wa_fieldcat-outputlen = '10'.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'ERNAM'.
wa_fieldcat-tabname = 'I_MARA'.
wa_fieldcat-reptext_ddic = 'Name of Person'.
wa_fieldcat-outputlen = '10'.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'LAEDA'.
wa_fieldcat-tabname = 'I_MARA'.
wa_fieldcat-reptext_ddic = ' Last Change'.
wa_fieldcat-outputlen = '10'.
APPEND wa_fieldcat TO i_fieldcat.
ENDFORM. " prepare_fieldcatalog
*& Form display_alv
text
--> p1 text
<-- p2 text
FORM display_alv .
Call ABAP List Viewer (ALV)
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
it_fieldcat = i_fieldcat
tables
t_outtab = i_mara.
ENDFORM. " display_alv
ZPROGRAM_TWO: This is the 2nd program which would be called from program ZPROGRAM_ONE.
*& Report ZPROGRAM_TWO *
REPORT zprogram_two .
PRASHANT PATIL
TABLES : mara.
TYPE-POOLS:slis.
TYPES : BEGIN OF t_mara,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
laeda TYPE mara-laeda,
END OF t_mara.
DATA : i_mara TYPE STANDARD TABLE OF t_mara,
wa_mara TYPE t_mara,
wa_index TYPE indx, " For Index details
wa_index_key TYPE indx-srtfd VALUE 'PRG_ONE',
wa_index1 TYPE indx, " For Index details
wa_index_key1 TYPE indx-srtfd VALUE 'PRG_TWO',
i_fieldcat TYPE slis_t_fieldcat_alv,
wa_fieldcat LIKE LINE OF i_fieldcat.
SELECT-OPTIONS : s_matnr FOR mara-matnr.
Before the import, fill the data fields before CLUSTR.
wa_index-aedat = sy-datum.
wa_index-usera = sy-uname.
To Import the selection screen data from Calling Program
IMPORT s_matnr
FROM DATABASE indx(st) ID wa_index_key TO wa_index.
FREE MEMORY ID wa_index_key.
SELECT matnr
ersda
ernam
laeda
FROM mara
INTO TABLE i_mara
WHERE matnr IN s_matnr.
PERFORM prepare_fieldcatalog.
PERFORM display_alv.
Before the export, fill the data fields before CLUSTR
wa_index1-aedat = sy-datum.
wa_index1-usera = sy-uname.
EXPORT i_mara
TO DATABASE indx(st) FROM wa_index1 ID wa_index_key1.
*& Form prepare_fieldcatalog
text
--> p1 text
<-- p2 text
FORM prepare_fieldcatalog .
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'MATNR'.
wa_fieldcat-tabname = 'I_MARA'.
wa_fieldcat-outputlen = '18'.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'ERSDA'.
wa_fieldcat-tabname = 'I_MARA'.
wa_fieldcat-outputlen = '10'.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'ERNAM'.
wa_fieldcat-tabname = 'I_MARA'.
wa_fieldcat-outputlen = '10'.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-fieldname = 'LAEDA'.
wa_fieldcat-tabname = 'I_MARA'.
wa_fieldcat-outputlen = '10'.
APPEND wa_fieldcat TO i_fieldcat.
ENDFORM. " prepare_fieldcatalog
*& Form display_alv
text
--> p1 text
<-- p2 text
FORM display_alv .
Call ABAP List Viewer (ALV)
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
it_fieldcat = i_fieldcat
TABLES
t_outtab = i_mara.
ENDFORM. " display_alv
its possible to display ALV Grid using OO ALV. Following code can be used instead of FM.
In the PBO, add following code
SET PF-STATUS 'ZSTAT'.
If program is executed in background
CALL METHOD cl_gui_alv_grid=>offline
RECEIVING
e_offline = off.
IF off IS INITIAL.
IF container1 IS INITIAL.
CREATE OBJECT container1
EXPORTING
container_name = 'CC_ALV1' .
ENDIF.
ENDIF.
CREATE OBJECT g_grid1
EXPORTING
i_parent = container1.
CALL METHOD g_grid1->set_table_for_first_display
EXPORTING
I_BUFFER_ACTIVE =
I_BYPASSING_BUFFER =
I_CONSISTENCY_CHECK =
I_STRUCTURE_NAME =
IS_VARIANT =
i_save = 'A'
i_default = ' '
is_layout =
is_print =
IT_SPECIAL_GROUPS =
it_toolbar_excluding =
IT_HYPERLINK =
IT_ALV_GRAPHICS =
IT_EXCEPT_QINFO =
CHANGING
it_outtab = i_output
it_fieldcatalog = i_fieldcatalog
IT_SORT =
IT_FILTER =
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Reward points if useful
Regards
Anji -
ABAP dump while running the tcode MIGO
Hi All,
I am getting the abap dump while running the tcode MIGO when I searched I got two relevant sap notes but our functional team said that its not applicable in our case.
Please find the details of ST22 analysis-:
Runtime Errors MESSAGE_TYPE_X
Date and Time 17.04.2009 13:18:45
Short text
The current application triggered a termination with a short dump.
What happened?
The current application program detected a situation which really
should not occur. Therefore, a termination with a short dump was
triggered on purpose by the key word MESSAGE (type X).
Error analysis
Short text of error message:
No RFC destination is defined for SAP Global Trade Services
Long text of error message:
Technical information about the message:
Message class....... "/SAPSLL/PLUGINR3"
Number.............. 002
Variable 1.......... " "
Variable 2.......... " "
Variable 3.......... " "
Variable 4.......... " "
How to correct the error
Probably the only way to eliminate the error is to correct the program.
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"MESSAGE_TYPE_X" " "
"SAPLMBWL" or "LMBWLU21"
"MB_POST_GOODS_MOVEMENT"
SAP Notes i have reffered 1098491, 1041122
Currently we are running on SAP_APPL 600 0007 SAPKH60007
Regards,
PrashantHi Rohit,
This particular note is valid for
Support
Packages Release Package
Name
PI 2004_1_46B SAPKIPZI38
PI 2004_1_46C SAPKIPZI48
PI 2004_1_470 SAPKIPZI58
PI 2004_1_500 SAPKIPZI68
Our system is running on PI_BASIS 2006_1_700 0005 SAPKIPYM05
Pls suggest.
Regards,
Prashant -
Supress Background Print parameters when user executes ALV report by F9
Hi friends,
How can we Supress Background Print parameters pop-up, when user executes ALV report by F9
or by navigation from selection screen -i.e; Program ->>Execute in Background.
Please guide me
Thanks in Advance,
GaneshSorry,
i need to supress the POP-UP which asks for background Print Parameters in the ALV report. when i press F9 in a selection - screen of a Tcode
as we supress Pop-up for a smartform or script by passing the Print Parameters
This 'RS_SET_SELSCREEN_STATUS' excludes the commands(say F9 function code) in report
I think we need to set the Print paramters in the Program
please guide me
Thanks,
Ganesh -
Getting the MDX query select error when running a webi report on BI query
Getting the following error when running a webi report on BI query :
A database error occured. The database error text is: The MDX query SELECT { [Measures].[D8JBFK099LLUVNLO7JY49FJKU] } ON COLUMNS , NON EMPTY [ZCOMPCODE].[LEVEL01].MEMBERS ON ROWS FROM [ZTEST_CUB/REP_20100723200521] failed to execute with the error Unknown error. (WIS 10901).
I have gone through many threads related to this error. But not able find the steps to follow for resoultion.
Please help in this regard.
Thanks,
JeethenderThe Fix Pack is also for Client Tools--it is a separate download. Please see the text below for ADAPT01255422
ADAPT01255422
Description:
Web Intelligence generates an incorrect MDX statement when a characteristic and a prompt are used.
The following database error happens: "The MDX query ... failed to execute with the error
Unknown error (WIS 10901)."
New Behavior:
This problem is resolved.
This information is also available in the Fixed Issues document for any Fix Pack greater than 2.2. -
Win 7 automation error when running crystal 10 reports
I am getting automation and memory type errors when running crystal 10 reports through a VB6 application on WIN 7 32 bit PC...
does not happen on all win7 PCs, in fact, the reporting will work for a time and then errors, but once getting the errors, seems like the reports will not run again.Honestly, not a clue. I've never even thought of putting CR 10 (designer or runtime) on WIN 7. Now I assume this is not CR 10.5 (bundles with .NET 2008).
See [this|https://wiki.sdn.sap.com/wiki/pages/viewpage.action?pageId=56787567] wiki.
Ludek -
How to ensure FundCenter selection = blank when running FM drilldown report
How to ensure blank value in the "Funds Center" selection parameter when running FM drilldown report 2FMB40* (Assigned Funds Report)?
We tried to save a report variant with protected blank value in the "&0FICTR" variable (hierarchy node), and we also used FMEV to turn-off default value for this variable. However, during report execution it still takes value from the user parameter "FIS".
To prevent the system from using "FIS", we can only save the report variant with Funds Center = * (or the top-most node). Unfortunately, these would give different extraction results which we do not want.
Any advice how to get round this?Referring SAP Note 390953, I don't know how to apply the solution of "using generic symbol # as an initial value"....
(1) I tried to save a report variant with # in the Funds Center field, but got error message "no matching funds center found" and couldn't proceed.
(2) I also tried tcode FMEV to set the variables &0FICTR, &0FICTRA ... with default value # (in table TKESV), yet still got no effect ... as user parameter "FIS" was adopted during report execution.
Any further suggestion please? -
Error has occurred when running internal order report
Error has occurred when running internal order report. Last month also used this report without any error.
Error #01: [ASE Error SQL422]Too many nested expressions or logical operators to compile. Try splitting query or limiting ANDs and ORs.
Error #02: SQL Error: 422
Error #03: An error occurred while reading the data; Navigation is possible.
Please guide me to solve this issue.Please just say how you removed the CC version and did you remove the Preferences from Hidden User>Library??
https://helpx.adobe.com/lightroom/kb/preference-file-locations-lightroom-41.html
In here??
Sorry I'm trying to help but please answer the questions specifically... thanks. -
Short dump when running EWA report
Dear Expert,
I got error dump when generating EWA report: OBJECTS_OBJREF_NOT_ASSIGNED_NO
What happened?
Error in the ABAP Application Program
The current ABAP program "CL_GUI_GP=====================CP" had to be
terminated because it has
come across a statement that unfortunately cannot be executed.
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not
caught in
procedure "IF_GRAPHIC_PROXY~EXPORT" "(METHOD)", nor was it propagated by a
RAISING clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
You attempted to use a 'NULL' object reference (points to 'nothing')
access a component.
An object reference must point to an object (an instance of a class)
before it can be used to access components.
Either the reference was never set or it was set to 'NULL' using the
CLEAR statement.
Missing RAISING Clause in Interface
Program CL_GUI_GP=====================CP
Include CL_GUI_GP=====================CM017
Row 1
Module type (METHOD)
Module Name IF_GRAPHIC_PROXY~EXPORT
Trigger Location of Exception
Program CL_GUI_GP=====================CP
Include CL_GUI_GP=====================CM017
Row 19
Module type (METHOD)
Module Name IF_GRAPHIC_PROXY~EXPORT
Please advise asap since we need the report immediately.
Thank you in advance,
RudiHi,
[This note|https://websmp109.sap-ag.de/~form/handler?_APP=01100107900000000342&_EVENT=REDIR&_NNUM=944541&_NLANG=E] will solve your problem.
feel free to revert back.
--Ragu -
Short dump when exporting the ALV grid report in to spread sheet
HI,
I am facing a problem when downloading ALV grid report in to spread sheet LIST>EXPORT>LOCAL FILE -->SPREADSHEET.
in shotdump the cursor shows : "assign cline+cbegin(clength) to <field_cont>."
In SAP internal table LIST,in the first record the value of the filed LENG is 0. when i have changed this value ex:10 etc it is coming properly.
Kindly help me
NagendraIs this a standard SAP report, or your own? Can you tell what your report does, if it is a custom ALV report?
-
Program giving dump when run in background
Hi All,
I have an ALV report in which I am using REUSE_ALV_GRID_DISPLAY.
The report works perfectly in foreground. But when I execute in background I am getting dump.
Dump details are given below.
ShrtText
Unable to fulfil request for 134217728 bytes of memory space.
What happened?
Each transaction requires some main memory space to process
application data. If the operating system cannot provide any more
space, the transaction is terminated.
What can you do?
Try to find out (e.g. by targetted data selection) whether the
transaction will run with less main memory.
If there is a temporary bottleneck, execute the transaction again
If the error persists, ask your system administrator to check the
following profile parameters:
o ztta/roll_area (1.000.000 - 15.000.000)
Classic roll area per user and internal mode
usual amount of roll area per user and internal mode
o ztta/roll_extension (10.000.000 - 500.000.000)
Amount of memory per user in extended memory (EM)
o abap/heap_area_total (100.000.000 - 1.500.000.000)
Amount of memory (malloc) for all users of an application
server. If several background processes are running on
one server, temporary bottlenecks may occur.
Of course, the amount of memory (in bytes) must also be
available on the machine (main memory or file system swap).
Caution:
The operating system must be set up so that there is also
enough memory for each process. Usually, the maximum address
space is too small.
Ask your hardware manufacturer or your competence center
about this.
In this case, consult your hardware vendor
abap/heap_area_dia: (10.000.000 - 1.000.000.000)
Restriction of memory allocated to the heap with malloc
for each dialog process.
Parameters for background processes:
abap/heap_area_nondia: (10.000.000 - 1.000.000.000)
Restriction of memory allocated to the heap with malloc
for each background process.
Other memory-relevant parameters are:
em/initial_size_MB: (35-1200)
Extended memory area from which all users of an
application server can satisfy their memory requirement.
Make a note of the actions and input which caused the error.
To resolve the problem, contact your SAP system administrator.
You can use transaction ST22 (ABAP Dump Analysis) to view and administer
termination messages, especially those beyond their normal deletion
date.
Error analysis
More main memory area was requested.
However, all the available space has been used up.
Possible reasons:
- Many (large) internal tables.
- Many (large) programs active.
- Deep nesting of subroutines with a lot of local data.
Can you please help on this ?Hi,
Check you code properly.
The dump is because of an infinite loop which is running when you run the program in background and it is keeping appending or inserting the same table.
Check teh same.
regards,
Ankur Parab -
Short dump while filtering an ALV report
Hi ,
I have an ALV report which gives me short dump when I filter any of the 'P' type field. I tried to implement sap note 839839 in debug mode but in vain. Should I implement this note first and then check the chnage?
the short dump error "..........
Error in ASSIGN: Memory protection error.
The current program "SAPLSSEL " uses the ASSIGN statement.
However, the offset of the segment (20208) plus the length (69)
is greater than the length of the segment (20264).
This is not allowed.
If the error is in one of your own ABAP programs or an SAP program that
you have modified, try to correct it.
Reduce the offset and/or length that you are using.
If the error occurred in a non-modified SAP program, you may be
able to find a solution in the SAP note system.
If you have access to the note system yourself, use the following
search criteria:
"ASSIGN_OFFSET+LENGTH_TOOLARGE"
"SAPLSSEL " or "LSSELFDI "
"FILL_DYN_FROM_FIELD_SEL" ........."
I appreciate ur inputs.
thanks in advance,
regards,
shanHi Guys,
I found the answer. I had to define all P type fields with eaxact length of 16 . Its working fine.
thanks for all your help.
regards,
shan -
Hi All,
I have a z-report which displays a ALV report. when I run this in background it gets canceled. when i see the log , it has dump and dump is as shown below.
A RAISE statement in the program "CL_GUI_CONTROL================CP" raised the exception condition "CNTL_ERROR".
Since the exception was not intercepted by a superior
program, processing was terminated.
What could be the problem, suggest me a solution if i have to add some code into my program or is it an application error which can be solved by SAP Notes.
Regards
Divakar Goud,Are you using GUI_UPLOAD or GUI_DOWNLOAD in the report then they will not work there.
Use OPEN DATASET instead to read or write.
Also, check weather there is a Container for OO ALV on the Report then use Docking Containe when SY_BATCH = 'X'.
If its an normal ALV then Change the GRID to LIST layout for Backgroud. Its not that we cannot display grid in background we can do that but we require some layout handling there.
ALV Grid in background job?
Regards,
Amit
Reward all helpful replies.
Maybe you are looking for
-
IPod isn't recognized by windows or itunes
Recently my ipod ran into some problems. Sometimes when I plug it into USB it says that the USB Device Not Recognized in a bubble on the bottom of the screen. Other times it will connect but will not open up itunes and won't show up in my computer an
-
I just downloaded my firt TV shows from i-tunes and even though it said "sync complete"- my shows are not there- any trick to this?? Thanks
-
Oracle Workflow timeout issue ....
Hey Guys , Happy new year to you all. I have a issue facing in in our custom oracle Workflow. Here are details : The workflow custom process has handled in such way that after five days of the notificaiton generation if its unattended then it will ti
-
Strange Box Around Flash IN PC I.E.
My flash files have strange boxes around them when viewed on a PC using internet explorer. You have to click on the file before you can access the buttons. Using I.E. 6.2. I am baffled. Please help.
-
Regarding alv by using classes
Hi Friends, Im Facing one problem. i.e my requirement is to display some fields by using alv grid.(using classes). here im displaying vbeln and exti1(truck Number) .when i click on vbeln it's need to be call the transaction VT02N . And other situat