‎2010 Dec 09 8:44 AM
Hello Frineds,
I am currentlystudying ALV . I did one program where am getting one error called " Different no of parameters in FORM and PERFORM",
&----
*& Report ZVIJ_ALV1
*&
&----
*&
*&
&----
REPORT ZVIJ_ALV1.
tables : vbak , vbpa .
types : begin of ls_vbak,
vbeln type vbeln,
erdat type erdat,
vbtyp type vbtyp,
vkorg type vkorg,
vtweg type vtweg,
spart type spart,
VKGRP type vkgrp,
VKBUR type VKBUR,
end of ls_vbak.
types : BEGIN OF ls_vbpa,
vbeln TYPE vbeln,
posnr TYPE posnr,
parvw TYPE parvw,
kunnr TYPE kunnr,
END OF ls_vbpa.
types : BEGIN OF ls_final,
vbeln TYPE vbak-vbeln,
erdat TYPE vbak-erdat,
vkorg TYPE vbak-vkorg,
vbtyp TYPE vbak-vbtyp,
vtweg TYPE vbak-vtweg,
spart TYPE vbak-spart,
vkgrp TYPE vbak-vkgrp,
vkbur TYPE vbak-vkbur,
posnr TYPE vbpa-posnr,
parvw TYPE vbpa-parvw,
kunnr TYPE vbpa-kunnr,
END OF ls_final.
types : BEGIN OF ls_kna1,
kunnr TYPE kunnr,
name1 TYPE name1,
stras TYPE stras,
ort01 TYPE ort01,
regio TYPE regio,
pstlz TYPE pstlz,
telf1 TYPE telf1,
telfx TYPE telfx,
END OF ls_kna1.
*Work area and internal table declaration.
DATA: lt_kna1 TYPE TABLE OF ls_kna1,
wa_kna1 TYPE ls_kna1.
DATA : lt_vbak TYPE TABLE OF ls_vbak ,
wa_vbak TYPE ls_vbak.
DATA : lt_vbpa TYPE TABLE OF ls_vbpa,
wa_vbpa TYPE ls_vbpa.
DATA: lt_final TYPE TABLE OF ls_final ,
wa_final TYPE ls_final.
selection-screen begin of block vijay with frame title text-001.
SELECT-OPTIONS : s_vbeln FOR vbak-vbeln ,
s_erdat FOR vbak-erdat .
PARAMETERS : s_vkorg TYPE vbak-vkorg ,
variant TYPE disvariant-variant.
selection-screen end of block vijay.
SELECT vbeln erdat vbtyp vkorg vtweg spart vkgrp vkbur FROM vbak
INTO CORRESPONDING FIELDS OF TABLE lt_vbak .
SELECT vbeln kunnr FROM vbpa
INTO CORRESPONDING FIELDS OF TABLE lt_vbpa
FOR ALL ENTRIES IN lt_vbak WHERE vbeln = lt_vbak-vbeln
AND posnr = '000000'
AND parvw = 'AG'.
LOOP AT lt_vbak INTO wa_vbak .
wa_final-vbeln = wa_vbak-vbeln.
wa_final-erdat = wa_vbak-erdat.
wa_final-vkorg = wa_vbak-vkorg.
wa_final-vbtyp = wa_vbak-vbtyp.
wa_final-vtweg = wa_vbak-vtweg.
wa_final-spart = wa_vbak-spart.
wa_final-vkgrp = wa_vbak-vkgrp.
wa_final-vkbur = wa_vbak-vkbur.
READ TABLE lt_vbpa INTO wa_vbpa WITH KEY vbeln = wa_vbak-vbeln.
wa_final-posnr = wa_vbpa-posnr.
wa_final-parvw = wa_vbpa-parvw.
wa_final-kunnr = wa_vbpa-kunnr.
APPEND wa_final TO lt_final.
ENDLOOP.
type-pools : slis.
data : it_fcat type slis_t_fieldcat_alv,
wa_fcat type slis_fieldcat_alv.
wa_fcat-fieldname = 'VBELN'.
wa_fcat-seltext_m = 'Sales document number'.
wa_fcat-col_pos = 1.
wa_fcat-emphasize = 'C500' .
wa_fcat-hotspot = 'X'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
wa_fcat-fieldname = 'ERDAT'.
wa_fcat-seltext_m = ' document creation date'.
wa_fcat-col_pos = 2.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
wa_fcat-fieldname = 'VBTYP'.
wa_fcat-seltext_m = 'Document category'.
wa_fcat-col_pos = 3.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
wa_fcat-fieldname = 'VKORG'.
wa_fcat-seltext_m = 'Sales organization'.
wa_fcat-col_pos = 4.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
wa_fcat-fieldname = 'VTWEG'.
wa_fcat-seltext_m = 'DISTRIBUTION CHANNEL'.
wa_fcat-col_pos = 5.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
wa_fcat-fieldname = 'SPART'.
wa_fcat-seltext_m = 'DIVISION'.
wa_fcat-col_pos = 6.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
wa_fcat-fieldname = 'VKGRP'.
wa_fcat-seltext_m = 'SALES GROUP'.
wa_fcat-col_pos = 7.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
wa_fcat-fieldname = 'VKBUR'.
wa_fcat-seltext_m = 'Sales Office'.
wa_fcat-col_pos = 8.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
wa_fcat-fieldname = 'KUNNR'.
wa_fcat-seltext_m = 'cutomer number'.
wa_fcat-col_pos = 9.
wa_fcat-emphasize = 'C311' .
wa_fcat-hotspot = 'X'.
APPEND wa_fcat TO it_fcat.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = 'sy-repid '
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = ' '
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT =
IT_FIELDCAT = it_fcat
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS =
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
I_HTML_HEIGHT_TOP = 0
I_HTML_HEIGHT_END = 0
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
IR_SALV_FULLSCREEN_ADAPTER =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = lt_final
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
.
" form display_popup.
tables : kna1.
TYPES: BEGIN OF ls_kna11,
kunnr TYPE kunnr,
name1 type name1,
stras type stras,
ort01 TYPE ort01,
regio type regio,
pstlz type pstlz,
telf1 type telf1,
telfx type telfx,
END OF ls_kna11.
data: lt_kna11 TYPE TABLE OF ls_kna11,
wa_kna11 type ls_kna11.
SELECT kunnr name1 stras ort01 regio pstlz telf1 telfx from kna1 UP TO 10
rows into CORRESPONDING FIELDS OF TABLE lt_kna11 ." where kunnr = kna1-kunnr .
DATA: wa_layout type slis_layout_alv,
i_fieldcat TYPE slis_t_fieldcat_alv ,
wa_fieldcat TYPE slis_fieldcat_alv.
perform fieldcat using :
'1' 'KUNNR''customer no' ,
'2' 'NAME1''name',
'3' 'STRAS''street no',
'4' 'ORT01' 'city',
'5''REGIO''county',
'6' 'PSTLZ' 'postal code',
'7' 'TELF1' 'Tel No',
'8' 'PSTFX' 'fax no'.
wa_layout-zebra = 'X'.
wa_layout-colwidth_optimize = 'X'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = 'sy-repid '
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = ' '
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT = wa_layout
IT_FIELDCAT = i_fieldcat
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS =
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
I_HTML_HEIGHT_TOP = 0
I_HTML_HEIGHT_END = 0
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
IR_SALV_FULLSCREEN_ADAPTER =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = lt_kna11
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 fieldcat using value(p_0055)
value(p_0056)
value(p_0057).
wa_fieldcat-col_pos = p_0055.
wa_fieldcat-fieldname = p_0056.
wa_fieldcat-seltext_m = p_0057.
append wa_fieldcat to i_fieldcat.
endform.
Please halp me out.
Thank You ,
Vijay
‎2010 Dec 09 9:05 AM
You need to pass the basic ABAP studying to resolve this issue, nothing to do with ALV.
‎2010 Dec 09 9:05 AM
You need to pass the basic ABAP studying to resolve this issue, nothing to do with ALV.
‎2010 Dec 09 9:15 AM
Hi,
Check this code -->
PERFORM fieldcat USING :
'1' 'KUNNR' 'customer no',
'2' 'NAME1' 'name',
'3' 'STRAS' 'street no',
'4' 'ORT01' 'city',
'5' 'REGIO' 'county',
'6' 'PSTLZ' 'postal code',
'7' 'TELF1' 'Tel No',
'8' 'PSTFX' 'fax no'.
Keep space between the parameters .
Regards,
Madhukar Shetty
‎2010 Dec 09 9:31 AM
Moderator message: these forums cannot replace ABAP training, please search for available documentation, use meaningful subject lines, only post relevant code parts to preserve formatting.