NO_FIELDCATALOG_AVAILABLE
ERROR:EXCEPTION 'NO_FIELDCATALOG_AVAILABLE' RAISED
CAN ANYBODY HELP ME IN SOLVING THIS ERROR
REPORT YLOOKUP_FINDER_TEST.
TYPE-POOLS slis.
DATA : fcat1 TYPE slis_t_fieldcat_alv.
DATA: BEGIN OF t_display OCCURS 0,
targetname TYPE rstran-targetname,
sourcename TYPE rstran-sourcename,
tranid TYPE rstran-tranid,
routine TYPE rstran-startroutine,
line_no TYPE rsaabap-line_no,
line TYPE rsaabap-line,
END OF t_display.
DATA : input_pattern1(70) TYPE c.
DATA : input_pattern2(70) TYPE c.
DATA : same_source(30) TYPE c.
SELECTION-SCREEN BEGIN OF BLOCK b01 WITH FRAME TITLE text-004.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 6(22) text-002 FOR FIELD infoprov.
PARAMETERS infoprov LIKE input_pattern1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 6(20) text-001 FOR FIELD mdobject.
PARAMETERS: mdobject AS CHECKBOX.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 6(20) text-003 FOR FIELD pattern.
PARAMETERS: pattern AS CHECKBOX.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b01.
**Internal table declerations**************************************
TYPES: BEGIN OF t_trans_lookup_finder,
targetname TYPE rstran-targetname,
sourcename TYPE rstran-sourcename,
tranid TYPE rstran-tranid,
routine TYPE rstran-startroutine,
line_no TYPE rsaabap-line_no,
line TYPE rsaabap-line,
END OF t_trans_lookup_finder.
DATA:
i_lookup_finder TYPE STANDARD TABLE OF t_trans_lookup_finder,
wa_lookup_finder TYPE t_trans_lookup_finder,
i_trans_lookup_finder TYPE STANDARD TABLE OF t_trans_lookup_finder,
wa_trans_lookup_finder TYPE t_trans_lookup_finder,
i_trans_final TYPE STANDARD TABLE OF t_trans_lookup_finder,
wa_trans_final TYPE t_trans_lookup_finder.
DATA : i(7) TYPE n.
DATA old_cube(20) TYPE c VALUE ' '.
DATA old_source(20) TYPE c VALUE ' '.
**Selections for update rules**************************************
IF ( infoprov NE '' ).
IF ( pattern NE 'X' ).
IF ( mdobject NE 'X' ).
CONCATENATE 'from*A' infoprov '00' '' INTO input_pattern1.
ELSE.
CONCATENATE 'from*p' infoprov '' INTO input_pattern1.
ENDIF.
CONCATENATE '8' infoprov '*' INTO same_source.
SELECT DISTINCT
infocube
isource
b~updid
routine
line_no
line
INTO TABLE i_lookup_finder FROM
rsupdinfo AS a INNER JOIN rsupdrout AS b ON a~updid =
b~updid
INNER JOIN rsaabap AS c ON c~codeid =
b~codeid
WHERE
aobjvers = 'A' AND bobjvers = 'A' AND
cobjvers = 'A' AND aobjvers = 'A'
AND
b~routine GE 9000.
ELSE.
input_pattern1 = infoprov.
SELECT DISTINCT
infocube
isource
b~updid
routine
line_no
line
INTO TABLE i_lookup_finder FROM
rsupdinfo AS a INNER JOIN rsupdrout AS b ON a~updid =
b~updid
INNER JOIN rsaabap AS c ON c~codeid =
b~codeid
WHERE
aobjvers = 'A' AND bobjvers = 'A' AND
cobjvers = 'A' AND aobjvers = 'A'.
SELECT DISTINCT
targetname
sourcename
a~tranid
c~codeid
line_no
line
INTO TABLE i_trans_lookup_finder FROM
rstran AS a INNER JOIN rstransteprout AS b
ON atranid = btranid
INNER JOIN rsaabap AS c ON bcodeid = ccodeid
WHERE
aobjvers = 'A' AND bobjvers = 'A' AND
c~objvers = 'A'.
APPEND LINES OF i_trans_lookup_finder TO i_lookup_finder.
ENDIF.
**Selections for Transformations(start routine)********************
SELECT DISTINCT
targetname
sourcename
tranid
startroutine
line_no
line
INTO TABLE i_trans_lookup_finder FROM
rstran AS a INNER JOIN rsaabap AS b ON astartroutine = bcodeid
WHERE
aobjvers = 'A' AND bobjvers = 'A'.
APPEND LINES OF i_trans_lookup_finder TO i_lookup_finder.
**Selections for Transformations(End routine)**********************
SELECT DISTINCT
targetname
sourcename
tranid
endroutine
line_no
line
INTO TABLE i_trans_lookup_finder FROM
rstran AS a INNER JOIN rsaabap AS b ON aendroutine = bcodeid
WHERE
aobjvers = 'A' AND bobjvers = 'A'.
APPEND LINES OF i_trans_lookup_finder TO i_lookup_finder.
**Selections for Transformations(Expert routine)*******************
SELECT DISTINCT
targetname
sourcename
tranid
expert
line_no
line
INTO TABLE i_trans_lookup_finder FROM
rstran AS a INNER JOIN rsaabap AS b ON aexpert = bcodeid
WHERE
aobjvers = 'A' AND bobjvers = 'A'.
APPEND LINES OF i_trans_lookup_finder TO i_lookup_finder.
**Extracting records where lookup code is written******************
SORT i_lookup_finder BY targetname sourcename tranid routine line_no.
LOOP AT i_lookup_finder INTO wa_lookup_finder.
TRANSLATE wa_lookup_finder-line TO UPPER CASE.
IF ( wa_lookup_finder-line CP input_pattern1 ) AND
( wa_lookup_finder-sourcename NP same_source ).
IF ( pattern NE 'X' ).
APPEND wa_lookup_finder TO i_lookup_finder.
old_cube = wa_lookup_finder-targetname.
old_source = wa_lookup_finder-sourcename.
ELSE.
APPEND wa_lookup_finder TO i_lookup_finder.
ENDIF.
ENDIF.
ENDLOOP.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = 'YLOOKUP_FINDER_TEST'
i_internal_tabname = 'I_LOOKUP_FINDER'
i_inclname = 'YLOOKUP_FINDER_TEST'
CHANGING
ct_fieldcat = fcat1
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = 'YLOOKUP_FINDER_TEST'
it_fieldcat = fcat1
TABLES
t_outtab = i_lookup_finder
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
hi,
You have only declared the fieldcatalog but did not append the fieldcatalog as the output internal table format. Declare a work area like the fieldcatalog update the workarea with the fieldname, output length, column position for each and every field of the final internal table and append it to the fieldcatalog.
Regards,
sirisha
Similar Messages
-
Exception condition "NO_FIELDCATALOG_AVAILABLE" raised in an alv grid.
Hi.
I saw other threadhs with this problem, and in each ones somebody explained how to use the fieldcatalog.
In this case I wish to know why I can't use the structure name.
The code is at the bottom. I'm working with a rel. 4.6c.
I'm sure that when I call the method set_table_for_first_display the internal table is full.
What is wrong?
Exception condition "NO_FIELDCATALOG_AVAILABLE" raised.
A RAISE statement in the program "CL_GUI_ALV_GRID===============CP " raised the
exception
condition "NO_FIELDCATALOG_AVAILABLE".
Since the exception was not intercepted by a superior program
in the hierarchy, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
TYPES: BEGIN OF tipo_errors,
Tipo_errore(10),
chiave(8),
agagt(3),
key(7),
kunnr(6),
percinc(5),
Messaggio(100),
vbeln type VBELN,
posnr type POSNR,
agente type ZPVAGENTE,
bukrs type BUKRS,
vkorg type VKORG,
END OF tipo_errors.
DATA: alv_grid_errori TYPE STANDARD TABLE OF tipo_errors.
CALL METHOD r_alv_grid->set_table_for_first_display
EXPORTING
i_structure_name = 'TIPO_ERRORS'
CHANGING
it_outtab = alv_grid_errori
EXCEPTIONS
OTHERS = 4.So, the final answer is: "I must use the field catalog" ...
Thanks.
Regards.
Massimiliano -
Run time error "NO_FIELDCATALOG_AVAILABLE"
Hi All ,
I am getting below runtime error while runing a program Can you please help me out in this matter ,
Exception condition "NO_FIELDCATALOG_AVAILABLE" raised.
What happened?
The current ABAP/4 program encountered an unexpected
situation.
Error analysis
A RAISE statement in the program "CL_GUI_ALV_GRID===============CP " raised the
exception
condition "NO_FIELDCATALOG_AVAILABLE".
Since the exception was not intercepted by a superior program
in the hierarchy, processing was terminated.Hi Amit
Include this code and you will be fine
data: gt_fieldcat TYPE lvc_t_fcat,
CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = 'ZSTRUC' "Structure containing name of the fields
CHANGING
ct_fieldcat = gt_fieldcat.
Or
you can append values to table corresponding to lvc_s_fcat like the code below
DATA:ls_fieldcat TYPE lvc_s_fcat.
IF it_fieldcat[] IS INITIAL.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'PERNR'.
ls_fieldcat-coltext = 'Personnel.No'.
APPEND ls_fieldcat TO it_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'NACHN'.
ls_fieldcat-coltext = 'Name'.
APPEND ls_fieldcat TO it_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'INITS'.
ls_fieldcat-coltext = 'Initials'.
APPEND ls_fieldcat TO it_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'KOSTL'.
ls_fieldcat-coltext = 'Cost Centre'.
APPEND ls_fieldcat TO it_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'GSBER'.
ls_fieldcat-coltext = 'Business Area'.
APPEND ls_fieldcat TO it_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'AGE'.
ls_fieldcat-coltext = 'Age'.
APPEND ls_fieldcat TO it_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'SALARY'.
ls_fieldcat-coltext = 'Hourly Salary'.
APPEND ls_fieldcat TO it_fieldcat.
ENDIF. -
'F4_FILENAME'. USER FILE PATH
when I used the following function module for user defined file path selection
parameters: p_file like rlgrap-filename.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
IMPORTING
FILE_NAME = P_FILE.
I am getting the follwing Dump error.
Exception condition "NO_FIELDCATALOG_AVAILABLE" raised.
Could any one help me correcting problem ?Try this.
report zrich_0001.
data: ifiletable type filetable.
data: xfiletable like line of ifiletable.
data: rc type i.
parameters: p_file1 type localfile default'C:test.txt'.
at selection-screen on value-request for p_file1.
call method cl_gui_frontend_services=>file_open_dialog
EXPORTING
* WINDOW_TITLE =
* DEFAULT_EXTENSION =
* DEFAULT_FILENAME =
* FILE_FILTER =
INITIAL_DIRECTORY = 'C:'
* MULTISELECTION =
changing
file_table = ifiletable
rc = rc
* USER_ACTION =
EXCEPTIONS
FILE_OPEN_DIALOG_FAILED = 1
CNTL_ERROR = 2
ERROR_NO_GUI = 3
others = 4.
read table ifiletable into xfiletable index 1.
if sy-subrc = 0.
p_file1 = xfiletable-FILENAME.
endif.
Regards,
RIch Heilman -
Issue with the ABAP program to find BI lookups and code Patterns
Hello dears,
I'm trying to use the ABAP program LOOKUP_FINDER:
http://wiki.sdn.sap.com/wiki/display/BI/ABAPprogramtofindBIlookupsandcodePatterns
But I have the following issue:
Runtime Errors
RAISE_EXCEPTION
Short text
Exception condition "NO_FIELDCATALOG_AVAILABLE" raised.
Error analysis
A RAISE statement in the program "CL_GUI_ALV_GRID===============CP" raised the
exception
condition "NO_FIELDCATALOG_AVAILABLE".
Since the exception was not intercepted by a superior
program, processing was terminated.
Source Code Extract
Line SourceCde
1 method set_sort_criteria.
2
3 *... (1) Trace?
4 if not mr_trace is initial.
5 call method mr_trace->add_trace_item
6 exporting
7 i_trace_item = 'SET_SORT_CRITERIA'
8 ir_variant = m_cl_variant
9 it_data = mt_data
10 it_info = mt_info.
11 endif.
12
13 if m_cl_variant->mt_fieldcatalog is initial.
>>>>> raise no_fieldcatalog_available.
15 endif.
16
17 m_cl_variant->mt_sort = it_sort.
18
19 call function 'LVC_SORT_COMPLETE'
20 exporting
21 it_fieldcat = m_cl_variant->mt_fieldcatalog
22 changing
23 ct_sort = m_cl_variant->mt_sort.
24
25 endmethod.
This issue is located in the FM 'REUSE_ALV_GRID_DISPLAY' called at the end of the program.... maybe because the catalog is empty?
For your information, I called the program 'ZLOOKUP_FINDER'.
Can you help me to fix this issue?
Regards,
Vince.Hi Vince,
If a table is empty field catalog usually return no error it just display your field catalog with headers .
I think the issue is with building of field catalog .
May be some settings are missing there .
Please check FM REUSE_ALV_FIELDCATALOG_MERGE where field catalog is getting generated.
Regards,
Jaya Tiwari -
ALV grid display problem...
can you please help me tell what is missing in this program....
its giving run time error NO_FIELDCATALOG_AVAILABLE.
Also if possible give a good example for ALV grid program
TABLES: bsak.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-010.
PARAMETERS : p_bukrs TYPE bsak-bukrs,
p_augdt type bsak-augdt.
thanks!!
points willl be awarded
SELECTION-SCREEN END OF BLOCK B1.
TYPES : BEGIN OF st_bsak ,
bukrs type bsak-bukrs,
lifnr type bsak-lifnr,
augdt type bsak-augdt,
augbl type bsak-augbl,
gjahr type bsak-gjahr,
belnr type bsak-belnr,
budat type bsak-budat,
bldat type bsak-bldat,
hkont type bsak-hkont,
saknr type bsak-saknr,
zlsch type bsak-zlsch,
zlspr type bsak-zlspr,
hbkid type bsak-hbkid,
END OF st_bsak.
DATA it_bsak LIKE bsak OCCURS 0 WITH HEADER LINE.
SELECT bukrs
lifnr
augdt
augbl
gjahr
belnr
budat
bldat
hkont
saknr
zlsch
zlspr
hbkid
FROM bsak
INTO (it_bsak-bukrs,
it_bsak-lifnr,
it_bsak-augdt,
it_bsak-augbl,
it_bsak-gjahr,
it_bsak-belnr,
it_bsak-budat,
it_bsak-bldat,
it_bsak-hkont,
it_bsak-saknr,
it_bsak-zlsch,
it_bsak-zlspr,
it_bsak-hbkid) UP TO 10 ROWS "need to change it to 65000 rows
WHERE bukrs = p_bukrs.
endselect.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_STRUCTURE_NAME = 'st_bsak'
I_GRID_TITLE = 'SALES ORDER INFO'
TABLES
T_OUTTAB = it_bsak
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.hi,
try this.
*& Report ZALV_DS
REPORT zalv_ds.
TYPE-POOLS:slis.
TABLES:mara,
makt,
marc.
DATA:BEGIN OF itab OCCURS 0,
matnr LIKE mara-matnr,
maktx LIKE makt-maktx,
werks LIKE marc-werks,
rowcolor(4) TYPE c,
cellcolors TYPE lvc_t_scol,
END OF itab.
DATA:t_fcat TYPE slis_t_fieldcat_alv,
t_eve TYPE slis_t_event.
DATA : st_layout TYPE slis_layout_alv.
SELECTION-SCREEN:BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:mat FOR mara-matnr.
SELECTION-SCREEN:END OF BLOCK blk1.
INITIALIZATION.
PERFORM build_cata USING t_fcat.
PERFORM build_event.
START-OF-SELECTION.
PERFORM data_retrieval.
PERFORM display_data.
*& Form build_cata
text
-->TEMP_FCAT text
FORM build_cata USING temp_fcat TYPE slis_t_fieldcat_alv.
DATA:wa_fcat TYPE slis_fieldcat_alv.
wa_fcat-tabname = 'ITAB'.
wa_fcat-fieldname = 'MATNR'.
wa_fcat-seltext_m = 'Material'.
wa_fcat-key = 'X'.
APPEND wa_fcat TO temp_fcat.
wa_fcat-tabname = 'ITAB'.
wa_fcat-fieldname = 'MAKTX'.
wa_fcat-seltext_m = 'Description'.
wa_fcat-key = ''.
APPEND wa_fcat TO temp_fcat.
wa_fcat-tabname = 'ITAB'.
wa_fcat-fieldname = 'WERKS'.
wa_fcat-seltext_m = 'Plant'.
APPEND wa_fcat TO temp_fcat.
ENDFORM. "build_cata
*& Form build_event
text
FORM build_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = t_eve
EXCEPTIONS
list_type_wrong = 1
OTHERS = 2.
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. "build_event
*& Form data_retrieval
text
FORM data_retrieval.
SELECT maramatnr maktmaktx marc~werks INTO CORRESPONDING FIELDS OF TABLE itab
FROM mara INNER JOIN makt ON
maramatnr = maktmatnr
INNER JOIN marc ON
maramatnr = marcmatnr
WHERE mara~matnr IN mat.
SORT itab BY matnr.
DELETE ADJACENT DUPLICATES FROM itab.
ENDFORM. "data_retrieval
*& Form display_data
text
FORM display_data.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = 'ZALV_DS'
it_fieldcat = t_fcat
it_events = t_eve
TABLES
t_outtab = itab
EXCEPTIONS
program_error = 1
OTHERS = 2.
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_data -
ALV OO: how to change layout more than once using custom pushbuttons?
Hello,
I'm developing a report using ALV Class CL_GUI_ALV_GRID.
It's nearly complete. but I need to add some little feature.
I create pushbuttons on GUI Status in order to show/hide totals and to group/ungroup fields according.
I have already created and I added them into PAI of corresponding dynpro, as follows.
GROUP/UNGROUP FIELDS:
DATA: g_editable_alv1 TYPE REF TO cl_gui_alv_grid.
DATA: tb_fieldcat_1 TYPE lvc_t_fcat.
DATA: tb_sort_1 TYPE lvc_t_sort.
FIELD-SYMBOLS: <fs_fieldcat> TYPE lvc_s_fcat.
CALL METHOD g_editable_alv1->set_sort_criteria
EXPORTING
it_sort = tb_sort_1
EXCEPTIONS
no_fieldcatalog_available = 1
OTHERS = 2.
CALL METHOD g_editable_alv1->refresh_table_display
EXPORTING
i_soft_refresh = 'X'
EXCEPTIONS
finished = 1
OTHERS = 2.
When I wanto to sort and group using fields CID and PSPID_VDATU, table TB_SORT_1 is filled as follows:
SPOS FIELDNAME UP DOWN GROUP SUBTOT COMP EXPA SELTEXT
01 |CID |X | | |X | |X |
02 |PSPID_VDATU |X | | |X | |X |
SHOW/HIDE TOTALS:
I have to show/hide totals for all fields with domain name ARBEIT. In this sample I copy code to be run when I want to show totals:
LOOP AT tb_fieldcat_1 ASSIGNING <fs_fieldcat>
WHERE domname = 'ARBEIT'.
<fs_fieldcat>-do_sum = 'X'.
ENDLOOP.
CALL METHOD g_editable_alv1->set_frontend_fieldcatalog
EXPORTING
it_fieldcatalog = tb_fieldcat_1.
CALL METHOD g_editable_alv1->refresh_table_display
EXPORTING
i_soft_refresh = 'X'
EXCEPTIONS
finished = 1
OTHERS = 2.
OK, both features (and their opposite ones) works *only once*.
I mean: first time ALV is displayed according standard layout. Then I click on one of my new pusbutton and it works (ALV layouts is changed). If I click again one of my pushbutton, nothng happens.
Edit: I tried also to use CALL METHOD g_editable_alv1->refresh_table_display. (without any parameter), but nothing changed.
What should I modify in order to be able to use my pushbuttons as many times as I want?
Thank you and best regards
GuidoYour approach is ok. I think you are missing MODIFY statement when setting new fieldcatalog. Please follow my code, it works fine.
DATA: r_cust TYPE REF TO cl_gui_custom_container,
r_alv TYPE REF TO cl_gui_alv_grid.
DATA: it_fcat TYPE lvc_t_fcat WITH HEADER LINE.
DATA: it_sflight TYPE TABLE OF sflight.
DATA: it_sort TYPE lvc_t_sort WITH HEADER LINE.
"event handler class
CLASS lcl_handler DEFINITION.
PUBLIC SECTION.
CLASS-METHODS:
handle_toolbar FOR EVENT toolbar OF cl_gui_alv_grid
IMPORTING e_object e_interactive,
handle_user_command FOR EVENT user_command OF cl_gui_alv_grid
IMPORTING e_ucomm sender.
ENDCLASS. "lcl DEFINITION
CLASS lcl_handler IMPLEMENTATION.
METHOD handle_toolbar.
DATA: ls_toolbar TYPE stb_button.
MOVE:
0 TO ls_toolbar-butn_type,
'FC_BTN' TO ls_toolbar-function,
'Show/hide totals' TO ls_toolbar-text.
APPEND ls_toolbar TO e_object->mt_toolbar.
ENDMETHOD . "handle_toolbar
METHOD handle_user_command.
DATA it_fcat TYPE lvc_t_fcat.
DATA wa_fcat TYPE lvc_s_fcat.
IF e_ucomm = 'FC_BTN'.
sender->get_frontend_fieldcatalog( IMPORTING et_fieldcatalog = it_fcat ).
LOOP AT it_fcat INTO wa_fcat WHERE fieldname = 'PRICE' .
IF wa_fcat-do_sum = 'X'.
wa_fcat-do_sum = space.
ELSE.
wa_fcat-do_sum = 'X'.
ENDIF.
MODIFY it_fcat FROM wa_fcat.
ENDLOOP.
sender->set_frontend_fieldcatalog( it_fcat ).
CALL METHOD sender->refresh_table_display
EXPORTING
i_soft_refresh = 'X'.
ENDIF.
ENDMETHOD. "handle_user_command
ENDCLASS. "lcl IMPLEMENTATION
INITIALIZATION.
SELECT * FROM sflight INTO TABLE it_sflight UP TO 20 ROWS.
START-OF-SELECTION.
CALL SCREEN 100.
MODULE pbo OUTPUT.
IF r_cust IS NOT BOUND.
CREATE OBJECT r_cust
EXPORTING
container_name = 'CUSTOM_CONTAINER' .
CREATE OBJECT r_alv
EXPORTING
i_parent = r_cust.
it_sort-fieldname = 'CONNID'.
it_sort-up = 'X'.
APPEND it_sort.
CALL METHOD r_alv->set_table_for_first_display
EXPORTING
i_structure_name = 'SFLIGHT'
CHANGING
it_outtab = it_sflight.
SET HANDLER: lcl_handler=>handle_user_command FOR r_alv,
lcl_handler=>handle_toolbar FOR r_alv.
CALL METHOD r_alv->set_toolbar_interactive.
ENDIF.
ENDMODULE. "pbo OUTPUT
Regards
Marcin -
PNP_Report(Showing ABAP Dump)
hi,
i have created one ALV report(using PNP Log. database)and using standard selection screen ..
the problem i am having is in runtime it showing ABAP DUMP Error called "<b>NO_FIELDCATALOG_AVAILABLE</b>"..
and also i am not able to Apply check on the selection field of the standard selection screen...
so need help on that..plz ...i am new to PNP Stuff...
thanks in advance...thanks for response..one more problem i am having is i am applying checks on Standard selection screen...can this can be done if yes then plz suggest how...
and regarding my ABAP Dump problem if i Specify GET PERNR statement in <b>INTIALIZATION Event</b> then it ALV Report work fine..but not picking up the data from Standard Selection screen which is must..and if specify same GET PERNR in <b>Start-of-selection event</b> then it gives this ABAP DUMP <b>"NO_FIELDCATALOG_AVAILABLE"..</b>AND not PICKING up the data from selection screen..
Plz suggest any help i will be greatfull to you..
Thanks in advance.... -
Internal table structure/ALV Problem
Hello, Im new to ABAP (third day) so careful explination would be greatly appreciated.
So I'm trying to display two tables together that I've joined into an ALV. Im creating an internal table to hold the information that I want to display from the join I created.
When I call my alv set_table_for_first_display I need to specify i_structure_name. Right now im using the name of my internal table, but I dont know if im doing this right. When I run my program i get an error NO_FIELDCATALOG_AVAILABLE. After searching many other posts i think its because my internal table doesnt have a structure, but im not sure.
Here is my code, thanks in advance!:
CLASS application DEFINITION.
PUBLIC SECTION.
METHODS: constructor,
read_data IMPORTING l_DAUAT TYPE AFPO-DAUAT,
fill_list.
PRIVATE SECTION.
DATA: BEGIN OF tbljoin,
AFPO_AUFNR TYPE AFPO-AUFNR,
AFPO_DAUAT TYPE AFPO-DAUAT,
AFPO_DGLTP TYPE AFPO-DGLTP,
AFPO_DGLTS TYPE AFPO-DGLTS,
AFPO_OBJNP TYPE AFPO-OBJNP,
AFPO_XLOEK TYPE AFPO-XLOEK,
AFKO_GLTRP TYPE AFKO-GLTRP,
END OF tbljoin,
afpo_tab TYPE TABLE OF afpo,
join_tab LIKE STANDARD TABLE OF TBLJOIN,
container TYPE REF TO cl_gui_custom_container,
alv_list TYPE REF TO cl_gui_alv_grid.
ENDCLASS.
*Class Implementations
CLASS application IMPLEMENTATION.
METHOD read_data.
Select: POAUFNR PODAUAT PODGLTP PODGLTS POOBJNP POXLOEK
KO~GLTRP
FROM afpo as po INNER JOIN AFKO as KO
on POAUFNR = KOAUFNR
INTO TABLE join_tab
where dauat = l_dauat.
ENDMETHOD.
METHOD constructor.
CREATE OBJECT container
EXPORTING container_name = 'LIST_AREA'.
CREATE OBJECT alv_list
EXPORTING i_parent = container.
CALL METHOD alv_list->set_table_for_first_display
EXPORTING i_structure_name = 'JOINTAB'
CHANGING it_outtab = join_tab.
ENDMETHOD.
METHOD fill_list.
CALL METHOD alv_list->refresh_table_display.
ENDMETHOD.
ENDCLASS.
DATA: object_ref TYPE REF TO application.
*Screens Interfaces
TABLES: AFPO, AFKO.
*Processing Blocks called by the Runtime Environment *
*Event Block START-OF-SELECTION
START-OF-SELECTION.
CREATE OBJECT object_ref.
CALL SCREEN 100.
*Dialog Module PBO
MODULE status_0100 OUTPUT.
SET PF-STATUS 'SCREEN_100'.
CALL METHOD object_ref->fill_list.
ENDMODULE.
*Dialog Module PAI
MODULE user_command_0100 INPUT.
IF sy-ucomm = 'BACK' OR
sy-ucomm = 'EXIT' OR
sy-ucomm = 'CANCEL'.
LEAVE PROGRAM.
ELSE.
CALL METHOD object_ref->read_data
EXPORTING l_dauat = afpo-dauat.
ENDIF.
ENDMODULE.Hi Nathan,
Fieldcatalog has important role in ALV .U missed that one .Go through these steps.
<b>1</b>.
Define ur Fieldcatalog table like this .
DATA:
i_field TYPE lvc_t_fcat,
w_field TYPE lvc_s_fcat.
<b>2</b>.
Build like this
FORM build_fieldcatalog_tab .
DATA :pos TYPE i VALUE 1.
CLEAR: w_field,i_field[],pos.
w_field-col_pos = pos + 1.
w_field-fieldname = 'MATNR' .
w_field-tabname = 'I_MARC' .
w_field-scrtext_m = 'Material' .
APPEND w_field TO i_field.
CLEAR w_field.
w_field-col_pos = pos + 1.
w_field-fieldname = 'WERKS' .
w_field-tabname = 'I_MARC' .
w_field-scrtext_m = 'Plant' .
APPEND w_field TO i_field.
CLEAR w_field.
ENDFORM.
<b>3</b>.
Pass through this method
<b> CALL METHOD alv_grid->set_table_for_first_display</b>
EXPORTING
I_BUFFER_ACTIVE =
I_BYPASSING_BUFFER =
I_CONSISTENCY_CHECK =
i_structure_name = 'MARA'
IS_VARIANT =
I_SAVE =
I_DEFAULT = 'X'
is_layout = w_layout
IS_PRINT = w_print
IT_SPECIAL_GROUPS =
IT_TOOLBAR_EXCLUDING =
IT_HYPERLINK =
IT_ALV_GRAPHICS =
IT_EXCEPT_QINFO =
CHANGING
<b> it_outtab = i_marc</b>
<b> it_fieldcatalog = i_field</b>
IT_SORT =
IT_FILTER =
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4
<b>4</b>.
You should remove
<b>i_structure_name = 'JOINTAB'</b>
y should use this when u pass single table data display.
I hope that it helps u .
<b>Thanks,
Venkat.O</b> -
Hi all,
I want to display output using ALV tree. I havent worked on this before, So kindly provide me useful sample programs to display output using ALV tree.
Also i am creating field catalog using following code:
data : gt_fieldcatalog type lvc_t_fcat. "Fieldcatalog
get fieldcatalog
call function 'LVC_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = 'TP_OUTTAB'
CHANGING
ct_fieldcat = gt_fieldcatalog.
But its getting dumped and "NO_FIELDCATALOG_AVAILABLE" exception is raised.
Also strucure TP_OUTTAB is as:
TYPES: BEGIN OF tp_outtab,
aufnr TYPE aufk-aufnr,
txt TYPE t003p-txt,
maktx TYPE makt-maktx,
charg TYPE afpo-charg,
icon TYPE char4,
prueflos TYPE afko-prueflos, prueflos _ r TYPE icon-id,
ext_roses(5),
expt_roses TYPE icon-id,
zurl(8), "
zurl_r TYPE icon-id,
crstat_t TYPE icon-id,
crstat TYPE icon-id,
adres TYPE cochp-adres,
END OF tp_outtab.
Kindly tell me why the code is getting dumped. Seems there is some problem with structure.
Regards,
SachinHi,
try the following example.
TYPE-POOLS: SLIS.
DATA: BEGIN OF I_VBAK OCCURS 0,
VBELN LIKE VBAK-VBELN,
ERNAM LIKE VBAK-ERNAM,
ERDAT LIKE VBAK-ERDAT,
AUDAT LIKE VBAK-AUDAT,
VAR1,
END OF I_VBAK.
DATA: BEGIN OF I_VBAP OCCURS 0,
VBELN LIKE VBAP-VBELN,
POSNR LIKE VBAP-POSNR,
MATNR LIKE VBAP-MATNR,
CHARG LIKE VBAP-CHARG,
END OF I_VBAP.
DATA: FLDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
LAYOUT TYPE SLIS_LAYOUT_ALV,
KEY TYPE SLIS_KEYINFO_ALV.
DATA: IT_HEADER1 TYPE SLIS_T_LISTHEADER.
DATA: WA_HEADER1 TYPE SLIS_LISTHEADER.
DATA: IT_EVE1 TYPE SLIS_T_EVENT,
WA_EVE1 TYPE SLIS_ALV_EVENT.
SELECT VBELN ERNAM ERDAT AUDAT FROM VBAK
INTO CORRESPONDING FIELDS OF TABLE I_VBAK
UP TO 20 ROWS.
SELECT VBELN POSNR MATNR CHARG FROM VBAP
INTO CORRESPONDING FIELDS OF TABLE I_VBAP
UP TO 20 ROWS.
FLDCAT-FIELDNAME = 'VBELN'.
FLDCAT-TABNAME = 'I_VBAK'.
FLDCAT-REF_FIELDNAME = 'VBELN'.
FLDCAT-REF_TABNAME = 'VBAK'.
FLDCAT-SELTEXT_M = 'SALES DOC.'.
FLDCAT-COL_POS = 0.
FLDCAT-KEY = 'X'.
APPEND FLDCAT.
CLEAR FLDCAT.
FLDCAT-FIELDNAME = 'ERNAM'.
FLDCAT-TABNAME = 'I_VBAK'.
FLDCAT-REF_FIELDNAME = 'ERNAM'.
FLDCAT-REF_TABNAME = 'VBAK'.
FLDCAT-SELTEXT_M = 'NAME OF PERSON'.
FLDCAT-COL_POS = 1.
APPEND FLDCAT.
CLEAR FLDCAT.
FLDCAT-FIELDNAME = 'ERDAT'.
FLDCAT-TABNAME = 'I_VBAK'.
FLDCAT-REF_FIELDNAME = 'ERDAT'.
FLDCAT-REF_TABNAME = 'VBAK'.
FLDCAT-SELTEXT_M = 'RECORD DATE'.
FLDCAT-COL_POS = 2.
APPEND FLDCAT.
CLEAR FLDCAT.
FLDCAT-FIELDNAME = 'AUDAT'.
FLDCAT-TABNAME = 'I_VBAK'.
FLDCAT-REF_FIELDNAME = 'AUDAT'.
FLDCAT-REF_TABNAME = 'VBAK'.
FLDCAT-SELTEXT_M = 'DOCUMENT DATE'.
FLDCAT-COL_POS = 3.
APPEND FLDCAT.
CLEAR FLDCAT.
FLDCAT-FIELDNAME = 'POSNR'.
FLDCAT-TABNAME = 'I_VBAP'.
FLDCAT-REF_FIELDNAME = 'POSNR'.
FLDCAT-REF_TABNAME = 'VBAP'.
FLDCAT-SELTEXT_M = 'SALES DOC ITEM'.
FLDCAT-COL_POS = 4.
APPEND FLDCAT.
CLEAR FLDCAT.
FLDCAT-FIELDNAME = 'MATNR'.
FLDCAT-TABNAME = 'I_VBAP'.
FLDCAT-REF_FIELDNAME = 'MATNR'.
FLDCAT-REF_TABNAME = 'VBAP'.
FLDCAT-SELTEXT_M = 'MATERIAL NO'.
FLDCAT-COL_POS = 5.
APPEND FLDCAT.
CLEAR FLDCAT.
FLDCAT-FIELDNAME = 'CHARG'.
FLDCAT-TABNAME = 'I_VBAP'.
FLDCAT-REF_FIELDNAME = 'CHARG'.
FLDCAT-REF_TABNAME = 'VBAP'.
FLDCAT-SELTEXT_M = 'BATCH NUMBER'.
FLDCAT-COL_POS = 6.
APPEND FLDCAT.
CLEAR FLDCAT.
LAYOUT-EXPAND_FIELDNAME = 'VAR1'.
KEY-HEADER01 = 'VBELN'.
KEY-ITEM01 = 'VBELN'.
CLEAR WA_EVE1.
WA_EVE1-NAME = 'TOP_OF_PAGE'.
WA_EVE1-FORM = 'TOP-OF-PAGE1'.
APPEND WA_EVE1 TO IT_EVE1.
CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-REPID
IS_LAYOUT = LAYOUT
IT_FIELDCAT = FLDCAT[]
IT_EVENTS = IT_EVE1[]
I_TABNAME_HEADER = 'I_VBAK'
I_TABNAME_ITEM = 'I_VBAP'
IS_KEYINFO = KEY
TABLES
T_OUTTAB_HEADER = I_VBAK
T_OUTTAB_ITEM = I_VBAP
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
FORM TOP-OF-PAGE1. WA_HEADER1-TYP = 'H'.
WA_HEADER1-INFO = 'Hierarchical Display'.
APPEND WA_HEADER1 TO IT_HEADER1.
CLEAR WA_HEADER1.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = IT_HEADER1[].
REFRESH IT_HEADER1.
ENDFORM. "TOP-OF-PAGE1
Reward points,if it is useful.
Thanks,
chandu. -
Hi friends,
I am trying create a field catalog with FM for my internal table. I know I must use "Like" for my internal fields. But I have same field types in my internal. If I use like this. I cann't create field catalog with catalog merge ( I must use this FM for hide/show columns -my prev. message-)
What is your recommend to me for definiton of my internal table. How can create field catalog using REUSE_ALV_FIELDCATALOG_MERGE FM.
My internal table is :
Types : Begin Of TRapor,
Renk, "Satır Rengi
Bilesen_Kodu Like Mseg-Matnr, "Malzeme Numarası
Tanim Like Makt-Maktx, "Malzeme Kısa Metni
Batch Like Mseg-Charg, "Parti Numarası - Batch
Birim Like Mseg-Meins, "Temel ölçü birimi
Malzeme_Fire(12) Type P Decimals 2, "Teorik Malzeme Fire % si
Batch_Fire(12) Type P Decimals 2, "Teorik Batch Fire % si
OMiktar Like Mseg-Menge, "Önceki Dönem Miktar
OYuzde(12) Type P Decimals 2, "Önceki Dönem Yuzde
OTeorik Like Mseg-Menge, "Önceki Dönem Teorik
OSapma_Deger Like Mseg-Menge, "Önceki Dönem Sapma Değeri
OSapma_Oran(12) Type P Decimals 2, "Önceki Dönem Sapma Oranı
SMiktar Like Mseg-Menge, "Seçim Dönemi Miktar
SYuzde(16) Type P Decimals 2, "Seçim Dönemi Yüzde
STeorik Like Mseg-Menge, "Seçim Dönemi Teorik
SSapma_Deger Like Mseg-Menge, "Seçim Dönemi Sapma Değeri
SSapma_Oran(12) Type P Decimals 2, "Seçim Dönemi Sapma Oranı
Hareket Like Mseg-Bwart,
Isyeri Like Crhd-Arbpl,
End Of TRapor.
Data : IRapor Type Standard Table Of TRapor With Header Line.:((( It dowsn't work. What is wrong :((( I give NO_FIELDCATALOG_AVAILABLE error. When I debugging After processing merge FM my alvfc is empty (0x172)
Type-Pools : Slis.
Tables : Mseg, S226, Mara, Mkpf, Crhd, Plpo, Mkal.
Types : Begin Of TRapor,
Renk(4) Type C, "Satır Rengi
Bilesen_Kodu Like Mseg-Matnr, "Malzeme Numarası
Tanim Like Makt-Maktx, "Malzeme Kısa Metni
Batch Like Mseg-Charg, "Parti Numarası - Batch
Birim Like Mseg-Meins, "Temel ölçü birimi
Malzeme_Fire(12) Type P Decimals 2, "Teorik Malzeme Fire % si
Batch_Fire(12) Type P Decimals 2, "Teorik Batch Fire % si
OMiktar Like Mseg-Menge, "Önceki Dönem Miktar
OYuzde(12) Type P Decimals 2, "Önceki Dönem Yuzde
OTeorik Like Mseg-Menge, "Önceki Dönem Teorik
OSapma_Deger Like Mseg-Menge, "Önceki Dönem Sapma Değeri
OSapma_Oran(12) Type P Decimals 2, "Önceki Dönem Sapma Oranı
SMiktar Like Mseg-Menge, "Seçim Dönemi Miktar
SYuzde(16) Type P Decimals 2, "Seçim Dönemi Yüzde
STeorik Like Mseg-Menge, "Seçim Dönemi Teorik
SSapma_Deger Like Mseg-Menge, "Seçim Dönemi Sapma Değeri
SSapma_Oran(12) Type P Decimals 2, "Seçim Dönemi Sapma Oranı
Hareket Like Mseg-Bwart,
Isyeri Like Crhd-Arbpl,
End Of TRapor.
*Data : IRapor Type Table Of TRapor With Header Line.
Data : IRapor Type Standard Table Of TRapor With Header Line.
Data : ZRapor Type TRapor Occurs 0 With Header Line.
DATA : alvfc TYPE slis_t_fieldcat_alv.
DATA : alvwa TYPE slis_fieldcat_alv.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = sy-repid
i_internal_tabname = 'ZRAPOR'
i_inclname = sy-repid
CHANGING
ct_fieldcat = alvfc
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.
*---------------Display
LOOP AT alvfc INTO alvwa WHERE fieldname = 'BILESEN_KODU'.
alvwa-ddictxt = 'L'.
alvwa-seltext_l = 'Heading'.
alvwa-outputlen = 15.
MODIFY alvfc FROM alvwa.
ENDLOOP.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
it_fieldcat = alvfc
i_callback_program = sy-repid
i_callback_user_command = 'ITAB_USER_COMMAND'
TABLES
t_outtab = zrapor
EXCEPTIONS
program_error = 1
OTHERS = 2.
ENDFORM. " Gecici
FORM itab_user_command USING whatcomm TYPE sy-ucomm whatrow TYPE
slis_selfield.
LOOP AT alvfc INTO alvwa.
IF alvwa-fieldname = 'BUTXT'.
if alvwa-no_out = 'X'.
alvwa-no_out = ''.
else.
alvwa-no_out = 'X'.
endif.
*alvwa-no_out = 'X'.
MODIFY alvfc FROM alvwa.
ENDIF.
ENDLOOP.
*------- Field Catalogue
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = sy-repid
i_internal_tabname = 'ZRAPOR'
i_inclname = sy-repid
CHANGING
ct_fieldcat = alvfc
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.
*---------------Display
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
it_fieldcat = alvfc
i_callback_program = sy-repid
i_callback_user_command = 'ITAB_USER_COMMAND'
TABLES
t_outtab = zrapor
EXCEPTIONS
program_error = 1
OTHERS = 2.
*----------- IMPORTANT.
*----------- IMPORTANT.
whatrow-exit = 'X'.
ENDFORM. "itab_user_command -
Hi experts,
I did maked a query in SQVI. When I log in the system TR I can open the report but I couldn't open in ES. I've got a dump. You can see the following error analysis. What should I do?
"A RAISE statement in the program "CL_GUI_ALV_GRID===============CP" raised the
exception
condition "NO_FIELDCATALOG_AVAILABLE".I tested this case as well with DE and EN and I have no problem with SQVI to execute the same quickview in multiple languages.
There are several OSS notes if you search with the "NO_FIELDCATALOG_AVAILABLE"
Search yourself and see if you find a solution.
Otherwise open a message at SAP. If the languages are correct installed, then you should be able ot execute the quickview in other logon languages too.
I can even execute in in Chinese.
When I start in SQVI, then I see everything in German or english, just as it was created. then I select and execute.
And in that moment I get all selection fields in Chinese. Jut the quickview titel is still in the creation language.
and after executing the selection, all my column headers are in chinese too.
No dump. -
Query can't work in others language environment
I created a query , also linked transcation code. The query can work in english language environment , but use others language login( example 'ZH' ) ,the query can't work . meet error as below . Please help what it's happen and how to solve, thanks.
Exception condition "NO_FIELDCATALOG_AVAILABLE" raised.
错误分析
A RAISE statement in the program "CL_GUI_ALV_GRID===============CP" raised the
exception
condition "NO_FIELDCATALOG_AVAILABLE".
Since the exception was not intercepted by a superior program
in the hierarchy, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.Hi NS MENG.
You can try two ways:
1. GoTo->SE63->Translation->Logical Objects->Logical Objects.
You can also try other options available.
2. GoTo->SE41(Menu Painter)->GoTo->Translation.
You can try using some options.
Hope this helps.
Good Luck.
Harsh Dave
Maybe you are looking for
-
Hi, can I display APEXIR_NO_DATA_FOUND_MSG or APEXIR_MAX_ROW_COUNT in a text item on a page? I tried to do that but it wasn't working, I used a display only text element. Thank you! BR Lena Edited by: desguazar on 11.11.2009 01:45
-
Hi, I'm trying to create an ABAP program in the process chain. I Know how to do this, so the problem that I'm having is that I need to know <b>WHO is</b> the process chain that is call me because this same ABAP program can we caller from another
-
Java files and the Unicode!!!
how to read from a unicode(UTF) file in a java program (give me an example please)
-
Upgrade Path for migrating Essbase 7.1 to Essbase 11.1.2.1??
Can any one tell me the upgrade path (and related documents) for migrating Essbase 7.1 to Essbase 11.1.2.1??
-
I am trying to reinstall Flash in Creative Suite 3 after trialing CS4. (CS3 Flash had some DLL issues and had to be uninstalled since it wasn't working) I have uninstalled CS4 but when I go to install CS3 I get this error "Please insert Adobe Firew