Programs for alv block and hierarchy list
hi abapers,
can anyone pls mail me the simple program to get an idea of block and hierarchy list.
my mail id is <u>[email protected]</u>
HI
go through below links
http://www.sapgenie.com/abap/controls/alvgrid.htm
http://www.sapfans.com/forums/viewtopic.php?t=58286
http://www.sapfans.com/forums/viewtopic.php?t=76490
http://www.sapfans.com/forums/viewtopic.php?t=20591
http://www.sapfans.com/forums/viewtopic.php?t=66305
Reward points if help full
Regards
Suresh.D
Similar Messages
-
Report program for alv grid in hierarchial manner
I have a requirement where I need to display values in hierarchial fashion. can anyone send me some sample program for the same.
thanks,
hema sundar.hi, chk this.
Check this code. this might help in solving your problem.
>********************************************************************
This report displays data from SAP tables (like SE16) *
FM : REUSE_ALV_GRID_DISPLAY
DATA:
g_mandt TYPE mandt.
SELECTION-SCREEN :
BEGIN OF LINE, COMMENT 6(33) v_1 FOR FIELD p_table. "#EC NEEDED
PARAMETERS p_table TYPE dd03l-tabname OBLIGATORY MEMORY ID dtb.
SELECTION-SCREEN : END OF LINE, SKIP.
SELECTION-SCREEN :
BEGIN OF LINE, COMMENT 6(30) v_2 FOR FIELD s_mandt. "#EC NEEDED
SELECT-OPTIONS s_mandt FOR g_mandt DEFAULT sy-mandt
MATCHCODE OBJECT ddsef4clnt.
SELECTION-SCREEN : END OF LINE, SKIP.
SELECTION-SCREEN :
SKIP , BEGIN OF LINE, COMMENT 6(33) v_3 FOR FIELD p_max. "#EC NEEDED
PARAMETERS p_max(3) TYPE n DEFAULT '200' OBLIGATORY.
SELECTION-SCREEN END OF LINE.
AT SELECTION-SCREEN.
PERFORM f_check_table.
INITIALIZATION.
v_1 = 'Table'.
v_2 = 'Client'.
v_3 = 'Maximum of records'.
START-OF-SELECTION.
PERFORM f_display_data.
Form F_DISPLAY_DATA
FORM f_display_data.
TYPE-POOLS: slis. " ALV Global Types
DATA:
lp_table TYPE REF TO data, " Pointer to dynamic table
ls_layout TYPE slis_layout_alv,
lt_fieldcat TYPE slis_t_fieldcat_alv.
FIELD-SYMBOLS :
<lt_data> TYPE STANDARD TABLE. " Data to display
Create internal table
CREATE DATA lp_table TYPE STANDARD TABLE OF (p_table)
WITH NON-UNIQUE DEFAULT KEY.
ASSIGN lp_table->* TO <lt_data>.
Field MANDT exists ?
SELECT SINGLE tabname
INTO p_table
FROM dd03l
WHERE tabname = p_table
AND fieldname = 'MANDT'
AND as4local = 'A'
AND as4vers = '0000'
AND position = '0001'
AND rollname = 'MANDT'.
IF sy-subrc EQ 0.
Read data
SELECT * UP TO p_max ROWS
FROM (p_table) CLIENT SPECIFIED
INTO CORRESPONDING FIELDS OF TABLE <lt_data>
WHERE mandt IN s_mandt
ORDER BY PRIMARY KEY.
ELSE.
Field CLIENT exists ?
SELECT SINGLE tabname
INTO p_table
FROM dd03l
WHERE tabname = p_table
AND fieldname = 'CLIENT'
AND as4local = 'A'
AND as4vers = '0000'
AND position = '0001'
AND rollname = 'MANDT'.
IF sy-subrc EQ 0.
Read data
SELECT * UP TO p_max ROWS
FROM (p_table) CLIENT SPECIFIED
INTO CORRESPONDING FIELDS OF TABLE <lt_data>
WHERE client IN s_mandt
ORDER BY PRIMARY KEY.
ELSE.
Read data
SELECT * UP TO p_max ROWS
FROM (p_table)
INTO CORRESPONDING FIELDS OF TABLE <lt_data>
ORDER BY PRIMARY KEY.
ENDIF.
ENDIF.
IF <lt_data>[] IS INITIAL.
No table entries found for specified key
MESSAGE i429(mo).
EXIT.
ENDIF.
Build Field catalog
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = p_table
i_client_never_display = ''
CHANGING
ct_fieldcat = lt_fieldcat
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.
ls_layout-zebra = 'X'.
ls_layout-colwidth_optimize = 'X'.
Display ALV List
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
is_layout = ls_layout
it_fieldcat = lt_fieldcat
TABLES
t_outtab = <lt_data>.
ENDFORM. " F_DISPLAY_DATA
Form F_CHECK_TABLE
FORM f_check_table.
DATA :
l_tabclass TYPE tabclass, " Table category
l_viewclass TYPE viewclass. " View Type
Read table category
SELECT SINGLE tabclass viewclass
INTO (l_tabclass, l_viewclass)
FROM dd02l
WHERE tabname = p_table
AND as4local = 'A'
AND as4vers = '0000'.
IF sy-subrc NE 0.
Table & is not active in the Dictionary
MESSAGE e402(mo) WITH p_table.
ELSEIF l_tabclass = 'INTTAB'.
& is a structure, not a table
MESSAGE e403(mo) WITH p_table.
ELSEIF l_tabclass = 'VIEW' AND l_viewclass NE 'D'.
Only use views of type "Maintenance view"
MESSAGE e309(sv).
ENDIF.
ENDFORM. " F_CHECK_TABLE
with regards,
madhavi. -
Hi Experts,
wht is the use of blocked and hierarchial ALV's.
In which situations are they used? Can u provide any material
Thank Youhi,
<b>Block ALV</b> means more than one list in one screen.
Means u can have many list in one screen at a time.
Like this,
TYPE-POOLS : slis.
TABLES : mara,
makt.
SELECT-OPTIONS : mat FOR mara-matnr.
DATA : BEGIN OF itab OCCURS 0,
matnr LIKE mara-matnr,
maktx LIKE makt-maktx,
matkl LIKE mara-matkl,
mtart LIKE mara-mtart,
END OF itab.
DATA : BEGIN OF itab1 OCCURS 0,
mtart LIKE mara-mtart,
count TYPE i,
END OF itab1.
DATA : BEGIN OF itab1_col OCCURS 0,
mtart LIKE mara-mtart,
count TYPE i,
END OF itab1_col.
DATA : t_fcat1 TYPE slis_t_fieldcat_alv,
t_fcat2 TYPE slis_t_fieldcat_alv,
wa_fcat TYPE slis_fieldcat_alv,
t_eve TYPE slis_t_event,
wa_eve TYPE slis_alv_event,
t_layout TYPE slis_layout_alv.
DATA : v_repid LIKE sy-repid,
t_mat LIKE mara-matnr.
DEFINE create_fcat.
clear wa_fcat.
wa_fcat-fieldname = &1.
wa_fcat-seltext_l = &2.
wa_fcat-outputlen = &3.
append wa_fcat to t_fcat1.
END-OF-DEFINITION.
START-OF-SELECTION.
PERFORM get_data.
PERFORM dis_data.
*& Form get_data
text
FORM get_data.
SELECT amatnr bmaktx amtart amatkl INTO CORRESPONDING FIELDS OF TABLE itab
FROM mara AS a INNER JOIN makt AS b ON
amatnr = bmatnr
WHERE a~matnr IN mat.
LOOP AT itab.
itab1-mtart = itab-mtart.
itab1-count = 1.
APPEND itab1.
ENDLOOP.
SORT itab1 BY mtart.
LOOP AT itab1.
MOVE-CORRESPONDING itab1 TO itab1_col.
COLLECT itab1_col.
ENDLOOP.
ENDFORM. "get_data
*& Form dis_data
text
FORM dis_data.
v_repid = sy-repid.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'
EXPORTING
i_callback_program = v_repid.
REFRESH t_fcat1.
CLEAR t_fcat1.
REFRESH t_eve.
wa_eve-name = 'TOP_OF_PAGE'.
wa_eve-form = 'TOP_OF_PAGE1'.
APPEND wa_eve TO t_eve.
create_fcat:
'MATNR' 'Material' '10',
'MAKTX' 'Material Description' '40',
'MTART' 'Type' '10',
'MATKL' 'Group' '10'.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'
EXPORTING
is_layout = t_layout
it_fieldcat = t_fcat1
i_tabname = 'ITAB'
it_events = t_eve
TABLES
t_outtab = itab.
REFRESH t_fcat1.
CLEAR t_fcat1.
REFRESH t_eve.
wa_eve-name = 'TOP_OF_PAGE'.
wa_eve-form = 'TOP_OF_PAGE2'.
APPEND wa_eve TO t_eve.
create_fcat:
'MTART' 'Type' '10',
'COUNT' 'Total' '5'.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'
EXPORTING
is_layout = t_layout
it_fieldcat = t_fcat1
i_tabname = 'ITAB1_COL'
it_events = t_eve
TABLES
t_outtab = itab1_col.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'.
ENDFORM. "dis_data
*& Form top_of_page1
text
FORM top_of_page1.
FORMAT COLOR COL_POSITIVE.
WRITE:/ 'First Block'.
FORMAT COLOR OFF.
ENDFORM. "top_of_page
*& Form top_of_page2
text
FORM top_of_page2.
FORMAT COLOR COL_NEGATIVE.
WRITE /5 'Second Block'.
FORMAT COLOR OFF.
ENDFORM. "top_of_page
In <b>hierarchical ALV</b> hierarchy will create,
Like This,
TYPE-POOLS : slis.
TABLES : mseg.
DATA : BEGIN OF itab_head OCCURS 0,
matnr LIKE mseg-matnr,
werks LIKE mseg-werks,
END OF itab_head.
DATA : BEGIN OF itab_item OCCURS 0,
matnr LIKE mseg-matnr,
werks LIKE mseg-werks,
mblnr LIKE mseg-mblnr,
menge LIKE mseg-menge,
END OF itab_item.
DATA : t_fcat TYPE slis_t_fieldcat_alv,
key_info TYPE slis_keyinfo_alv,
t_eve TYPE slis_t_event,
gt_subtot TYPE slis_t_sortinfo_alv,
subtot LIKE LINE OF gt_subtot,
t_listhead TYPE slis_t_listheader,
st_line TYPE slis_listheader.
DATA : t_mtdoc LIKE mseg-mblnr.
SELECT-OPTIONS : mat FOR mseg-matnr.
INITIALIZATION.
PERFORM build_cat USING t_fcat.
PERFORM build_eve.
START-OF-SELECTION.
PERFORM get_data.
PERFORM dis_data.
*& Form build_cat
text
-->TEMP_FCAT text
FORM build_cat USING temp_fcat TYPE slis_t_fieldcat_alv.
DATA : wa_fcat TYPE slis_fieldcat_alv.
wa_fcat-tabname = 'ITAB_HEAD'.
wa_fcat-fieldname = 'MATNR'.
wa_fcat-seltext_m = 'Material'.
APPEND wa_fcat TO temp_fcat.
CLEAR wa_fcat.
wa_fcat-tabname = 'ITAB_HEAD'.
wa_fcat-fieldname = 'WERKS'.
wa_fcat-seltext_m = 'Plant'.
APPEND wa_fcat TO temp_fcat.
CLEAR wa_fcat.
wa_fcat-tabname = 'ITAB_ITEM'.
wa_fcat-fieldname = 'MBLNR'.
wa_fcat-seltext_m = 'Material Doc.'.
APPEND wa_fcat TO temp_fcat.
CLEAR wa_fcat.
wa_fcat-tabname = 'ITAB_ITEM'.
wa_fcat-fieldname = 'MENGE'.
wa_fcat-seltext_m = 'Quantity'.
wa_fcat-do_sum = 'Y'.
APPEND wa_fcat TO temp_fcat.
CLEAR wa_fcat.
subtot-spos = 1.
subtot-fieldname = 'MATNR'.
subtot-tabname = 'ITAB_HEAD'.
subtot-up = 'X'.
subtot-group = 'X'.
subtot-subtot = 'X'.
subtot-expa = 'X'.
APPEND subtot TO gt_subtot.
ENDFORM. "build_cat
*& Form build_eve
text
FORM build_eve.
DATA : wa_eve TYPE slis_alv_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.
READ TABLE t_eve INTO wa_eve WITH KEY name = 'TOP_OF_PAGE'.
IF sy-subrc = 0.
wa_eve-form = 'TOP_OF_PAGE'.
MODIFY t_eve FROM wa_eve INDEX sy-tabix.
ENDIF.
ENDFORM. "build_eve
*& Form get_data
text
FORM get_data.
SELECT matnr werks mblnr menge FROM mseg INTO CORRESPONDING FIELDS OF TABLE itab_item
WHERE matnr IN mat.
ENDFORM. "get_data
*& Form dis_data
text
FORM dis_data.
key_info-header01 = 'MATNR'.
key_info-item01 = 'MATNR'.
key_info-header02 = 'WERKS'.
key_info-item02 = 'WERKS'.
REFRESH itab_head.
LOOP AT itab_item.
ON CHANGE OF itab_item-matnr OR itab_item-werks.
MOVE-CORRESPONDING itab_item TO itab_head.
APPEND itab_head.
ENDON.
ENDLOOP.
CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
EXPORTING
i_callback_program = 'ZHEIRALV_PRDS'
i_callback_user_command = 'USER_COMMAND'
it_fieldcat = t_fcat
it_sort = gt_subtot
it_events = t_eve[]
i_tabname_header = 'ITAB_HEAD'
i_tabname_item = 'ITAB_ITEM'
is_keyinfo = key_info
TABLES
t_outtab_header = itab_head
t_outtab_item = itab_item
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. "dis_data
*& Form top_of_page
text
FORM top_of_page.
CLEAR st_line.
st_line-typ = 'H'.
st_line-info = 'Dhwani Shah'.
APPEND st_line TO t_listhead.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = t_listhead
I_LOGO =
I_END_OF_LIST_GRID =
I_ALV_FORM =
ENDFORM. "top_of_page
reward if useful. -
Need a perfect example program for ALV GRID LIST
first hi to all,i am new to this community.i am still in learning process of SAP.one of my friend suggeted this community and i think this is the perfect place to learn and excel my skill in SAP.so my requirement is a perfect example program for ALV GRID LIST DISPLAY.while i am trying another program,the sysntax is ok but i am not getting any output and it is not showing any error also.hope i will get an answer asap.thank you.
Check [OO ALV Guide Simple|http://wiki.sdn.sap.com/wiki/display/ABAP/OBJECTORIENTEDALV+Guide] and [Easy Reference to ALV|http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e8a1d690-0201-0010-b7ad-d9719a415907]
-
Send some sample program for ALV reports
Hi all ,
send some sample program for ALV reports for learing purpose
tahnks.Hi ,
Resource Master
Program YPPCRR *
Program type Report Program *
Title Resource Master Dara for Updation *
Author Naga Raju *
Requested By Balaji *
Date Written 24.05.2007 *
Specification Id F2-DP-FS-2-0002 *
Transport Request *
On-line Documentation
Description
This Program updates the Location Mater through the Transaction
/SAPAPO/LOC3 Based on the User Selection
Update
Reset
No Action
Output
ALV List output of the main Program
ALV List output of the Error Log
REPORT YPPCRR NO STANDARD PAGE HEADING
LINE-SIZE 120
LINE-COUNT 62(4)
MESSAGE-ID yap..
Global data
Include where all the data declarations are coded.
INCLUDE YPPCRR_data.
*Initialization
INITIALIZATION.
perform init_variant.
Constants
CONSTANTS: c_formname_top_of_page TYPE slis_formname
VALUE 'F_TOP_OF_PAGE'.
Selection-Screen
SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-040.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS:p_prs RADIOBUTTON GROUP ztyp USER-COMMAND ucom DEFAULT 'X'.
SELECTION-SCREEN COMMENT 3(28) text-003.
position 40.
parameters: p_file1 TYPE rlgrap-filename.
SELECTION-SCREEN END OF LINE.
skip 5.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_aps RADIOBUTTON GROUP ztyp.
SELECTION-SCREEN COMMENT 3(28) text-004.
position 40.
parameters: p_file2 type rlgrap-filename.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b1.
AT SELECTION-SCREEN .
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file1.
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
program_name = syst-repid
DYNPRO_NUMBER = SYST-DYNNR
field_name = p_file1
STATIC = ' '
MASK = ' '
CHANGING
file_name = p_file1
EXCEPTIONS
MASK_TOO_LONG = 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.
START-OF-SELECTION.
if p_prs = 'X'.
PERFORM f_read_datum1 TABLES t_res_head
USING p_file1
CHANGING w_subrc.
elseif p_aps = 'X'.
PERFORM f_read_datum2 TABLES t_res_head
USING p_file2
CHANGING w_subrc.
endif.
IF w_subrc = 0.
Validations
PERFORM VALIDATION.
PERFORM display_alv.
IF SY-UCOMM = '&F03'
or SY-UCOMM = '&F12'
or SY-UCOMM = '&F15'.
LEAVE LIST-PROCESSING.
ELSE.
ENDIF.
ELSE.
Message s100 with text-002.
ENDIF.
END-OF-SELECTION.
Forms part*
INCLUDE YPPCRR_forms.
*& Include YPPCRR_DATA
Type-Pools
TYPE-POOLS: slis.
*TYPES
DATA: BEGIN OF tl_res_head.
INCLUDE STRUCTURE ypp_res_head.
DATA: END OF tl_res_head.
DATA: BEGIN OF tl_res_head_val.
INCLUDE STRUCTURE ypp_resv.
DATA: END OF tl_res_head_val.
DATA : BEGIN OF ty_errlog ,
counter type i,
type(2) ,
name(10) TYPE c,
vrsioid(22) TYPE c,
restype TYPE c,
message(80) TYPE c,
END OF ty_errlog.
Global Variables
DATA : gc_flag(1) TYPE c,
w_val_err_flag(1) type c.
DATA: w_filename TYPE rlgrap-filename,
w_subrc TYPE sy-subrc,
w_t_res_head TYPE slis_t_fieldcat_alv,
wa_t_res_head TYPE slis_fieldcat_alv.
DATA : wa_date(10) TYPE c,
wa_time(10) TYPE c,
wa_title(40) TYPE c,
wa_type(4) TYPE c .
DATA: BAPI_RUN_YES_NO TYPE C.
*Structure
*INTERNAL TABLES USED BY ALV
DATA:
it_fieldcat_alv TYPE slis_t_fieldcat_alv,
IT_FIELDCAT_ALV_ERR TYPE SLIS_T_FIELDCAT_ALV,
it_status TYPE slis_formname VALUE 'F_MAIN',
it_user_command TYPE slis_formname VALUE 'F_USER_COMMAND',
it_events TYPE slis_t_event,
it_event_exit TYPE slis_t_event_exit,
it_list_comments TYPE slis_t_listheader,
it_excluding TYPE slis_t_extab,
it_sort TYPE slis_t_sortinfo_alv.
*Internal Table Declarations
DATA : BEGIN OF t_imex OCCURS 0 ,
string(256) TYPE c,
END OF t_imex.
DATA : fcode TYPE TABLE OF sy-ucomm.
DATA : fcode_bdc TYPE TABLE OF sy-ucomm.
DATA : fcode_error TYPE TABLE OF sy-ucomm.
DATA : fcode_final TYPE TABLE OF sy-ucomm.
STRUCTURE and WORKARES
*Internal Table Declarations
DATA : t_res_head like tl_res_head occurs 0 WITH HEADER LINE.
DATA : t_res_head_val like tl_res_head_val occurs 0 with header line.
data :l_res_head LIKE LINE OF t_res_head.
DATA : w_file TYPE string.
*DATA : wa_vrsioid(22) type c,
wa_locno(20) type c,
wa_calendar(2) type c,
wa_planner(3) type c.
DATA: T_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE.
DATA: RESOURCE_HEAD LIKE BAPI10004RESHEAD OCCURS 0 WITH HEADER LINE,
RESOURCE_HEAD_X LIKE BAPI10004RESHEADX OCCURS 0 WITH HEADER LINE,
RESOURCE_TEXT LIKE BAPI10004RESTEXT OCCURS 0 WITH HEADER LINE,
RESOURCE_TEXT_X LIKE BAPI10004RESTEXTX OCCURS 0 WITH HEADER LINE.
data : t_errlog like ty_errlog occurs 0 with header line.
DATA : wk_lines TYPE i,
wk_errlines TYPE i,
wk_count TYPE i.
DATA: g_tabname TYPE slis_tabname VALUE 'T_RES_HEAD'.
Variables to be used by ALV
DATA:
wk_variant LIKE disvariant,
wx_variant LIKE disvariant,
wk_variant_save(1) TYPE c,
wk_exit(1) TYPE c,
wk_repid LIKE sy-repid,
wk_user_specific(1) TYPE c,
wk_callback_ucomm TYPE slis_formname,
wk_callback_status TYPE slis_formname,
wk_callback_status1 TYPE slis_formname,
wk_print TYPE slis_print_alv,
wk_layout TYPE slis_layout_alv,
wk_html_top_of_page TYPE slis_formname,
wk_fieldcat_alv LIKE LINE OF it_fieldcat_alv,
wk_excluding LIKE LINE OF it_excluding,
wk_events LIKE LINE OF it_events,
wk_event_exit LIKE LINE OF it_event_exit,
wk_list_comments LIKE LINE OF it_list_comments,
wk_list1_comments LIKE LINE OF it_list_comments,
wk_list2_comments LIKE LINE OF it_list_comments,
wk_sort LIKE LINE OF it_sort.
*DATA :gc_delete_flag(1).
*& Include YAPOLOC_FORMS
FORM display_alv .
PERFORM f_fieldcat_build.
PERFORM f_event_build.
PERFORM f_exclude_build.
PERFORM f_print_build.
PERFORM f_layout_build.
PERFORM f_display_data.
ENDFORM. " display_alv
*& Form f_fieldcat_build
text
FORM f_fieldcat_build .
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = wk_repid
i_structure_name = 'YPP_RESV'
i_inclname = wk_repid
CHANGING
ct_fieldcat = it_fieldcat_alv.
ENDFORM. " F_FIELDCAT_BUILD
*& Form F_EVENT_BUILD
text
> p1 text* < p2 text
FORM f_event_build .
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = it_events.
READ TABLE it_events WITH KEY
name = slis_ev_top_of_page INTO wk_events.
IF sy-subrc = 0.
MOVE c_formname_top_of_page TO wk_events-form.
MODIFY it_events FROM wk_events INDEX sy-tabix.
ENDIF.
ENDFORM. " F_EVENT_BUILD
*& Form F_EXCLUDE_BUILD
text
--> p1 text
<-- p2 text
FORM f_exclude_build .
wk_excluding = '&GRAPH'. "Graphic
APPEND wk_excluding TO it_excluding.
ENDFORM. " F_EXCLUDE_BUILD
*& Form F_PRINT_BUILD
text
--> p1 text
<-- p2 text
FORM f_print_build .
wk_print-no_print_listinfos = 'X'.
ENDFORM. " F_PRINT_BUILD
*& Form F_LAYOUT_BUILD
text
--> p1 text
<-- p2 text
FORM f_layout_build .
wk_layout-zebra = 'X'.
WK_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
wk_layout-detail_popup = 'X'.
wk_layout-detail_initial_lines = 'X'.
wk_layout-detail_titlebar = 'Details '.
ENDFORM. " F_LAYOUT_BUILD
*& Form F_DISPLAY_DATA
text
--> p1 text
<-- p2 text
FORM f_display_data .
wk_callback_ucomm = 'CALLBACK_UCOMM'.
IF sy-ucomm = 'UPD' OR sy-ucomm = space .
wk_callback_status = 'CALLBACK_STATUS'.
ENDIF.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_background_id = 'SIWB_WALLPAPER'
i_callback_program = wk_repid
i_callback_html_top_of_page = 'HTML_TOP_OF_PAGE'
i_callback_pf_status_set = wk_callback_status
i_callback_user_command = wk_callback_ucomm
it_sort = it_sort
i_default = 'X'
i_save = 'A'
is_variant = wk_variant
is_layout = wk_layout
it_fieldcat = it_fieldcat_alv
it_events = it_events
it_event_exit = it_event_exit
it_excluding = it_excluding
is_print = wk_print
TABLES
t_outtab = t_res_head_val.
ENDFORM. " F_DISPLAY_DATA
ALV for Error Log
*& Form display_alv_ERR
text
--> p1 text
<-- p2 text
FORM display_alv_err .
PERFORM f_fieldcat_build_err.
PERFORM f_event_build_err.
PERFORM f_exclude_build_err.
PERFORM f_print_build_err.
PERFORM f_layout_build_err.
PERFORM f_display_data_err.
ENDFORM. " display_alv_ERR
*& Form F_FIELDCAT_BUILD_err
text
--> p1 text
<-- p2 text
FORM f_fieldcat_build_err .
BREAK-POINT.
REFRESH it_fieldcat_alv.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = wk_repid
i_internal_tabname = 'TY_ERRLOG'
i_structure_name = 'YPP_ERR_LOG'
i_inclname = wk_repid
CHANGING
ct_fieldcat = it_fieldcat_alv_err.
LOOP AT it_fieldcat_alv INTO wk_fieldcat_alv.
CASE wk_fieldcat_alv-fieldname.
WHEN 'COUNTER'.
wk_fieldcat_alv-seltext_s = text-023.
wk_fieldcat_alv-seltext_m = text-023.
wk_fieldcat_alv-seltext_l = text-023.
wk_fieldcat_alv-reptext_ddic = text-023.
wk_fieldcat_alv-edit = 'X'.
WHEN 'TYPE'.
wk_fieldcat_alv-seltext_s = text-009.
wk_fieldcat_alv-seltext_m = text-009.
wk_fieldcat_alv-seltext_l = text-009.
wk_fieldcat_alv-reptext_ddic = text-009.
wk_fieldcat_alv-edit = 'X'.
WHEN 'NAME'.
wk_fieldcat_alv-seltext_s = text-010.
wk_fieldcat_alv-seltext_m = text-010.
wk_fieldcat_alv-seltext_l = text-010.
wk_fieldcat_alv-reptext_ddic = text-010.
wk_fieldcat_alv-edit = 'X'.
WHEN 'VRSIOID'.
wk_fieldcat_alv-seltext_s = text-011.
wk_fieldcat_alv-seltext_m = text-011.
wk_fieldcat_alv-seltext_l = text-011.
wk_fieldcat_alv-reptext_ddic = text-011.
wk_fieldcat_alv-edit = 'X'.
WHEN 'RESTYPE'.
wk_fieldcat_alv-seltext_s = text-012.
wk_fieldcat_alv-seltext_m = text-012.
wk_fieldcat_alv-seltext_l = text-012.
wk_fieldcat_alv-reptext_ddic = text-012.
wk_fieldcat_alv-edit = 'X'.
WHEN 'MESSAGE'.
wk_fieldcat_alv-seltext_s = text-013.
wk_fieldcat_alv-seltext_m = text-013.
wk_fieldcat_alv-seltext_l = text-013.
wk_fieldcat_alv-reptext_ddic = text-013.
wk_fieldcat_alv-edit = 'X'.
WHEN OTHERS.
ENDCASE.
MODIFY it_fieldcat_alv FROM wk_fieldcat_alv.
ENDLOOP.
ENDFORM. " F_FIELDCAT_BUILD_err
*& Form F_EVENT_BUILD_err
text
--> p1 text
<-- p2 text
FORM f_event_build_err .
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = it_events.
READ TABLE it_events WITH KEY name = slis_ev_top_of_page
INTO wk_events.
IF sy-subrc = 0.
MOVE c_formname_top_of_page TO wk_events-form.
MODIFY it_events FROM wk_events INDEX sy-tabix.
ENDIF.
ENDFORM. " F_EVENT_BUILD_err
*& Form F_EXCLUDE_BUILD_err
text
--> p1 text
<-- p2 text
FORM f_exclude_build_err .
wk_excluding = '&GRAPH'. "Graphic
APPEND wk_excluding TO it_excluding.
ENDFORM. " F_EXCLUDE_BUILD_err
*& Form F_PRINT_BUILD_err
text
--> p1 text
<-- p2 text
FORM f_print_build_err .
wk_print-no_print_listinfos = 'X'.
ENDFORM. " F_PRINT_BUILD_err
*& Form F_LAYOUT_BUILD_err
text
--> p1 text
<-- p2 text
FORM f_layout_build_err .
wk_layout-zebra = 'X'.
WK_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
wk_layout-detail_popup = 'X'.
wk_layout-detail_initial_lines = 'X'.
wk_layout-detail_titlebar = 'Details '.
ENDFORM. " F_LAYOUT_BUILD_err
*& Form F_DISPLAY_DATA_err
text
--> p1 text
<-- p2 text
FORM f_display_data_err .
wk_callback_ucomm = 'CALLBACK_UCOMM'.
IF SY-UCOMM ne '&F03'.
wk_callback_status = 'CALLBACK_STATUS'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_background_id = 'SIWB_WALLPAPER'
i_callback_program = wk_repid
i_callback_pf_status_set = wk_callback_status
i_callback_user_command = wk_callback_ucomm
it_sort = it_sort
i_default = 'X'
i_save = 'A'
is_variant = wk_variant
is_layout = wk_layout
it_fieldcat = it_fieldcat_alv_err
it_events = it_events
it_event_exit = it_event_exit
it_excluding = it_excluding
is_print = wk_print
TABLES
t_outtab = t_errlog.
KEEP EERRLOG BUTTON
SET PF-STATUS 'ZSTANDARD' EXCLUDING 'UPD' IMMEDIATELY.
ENDFORM. "f_display_data_err
**& Form F_TOP_OF_PAGE
text
FORM f_top_of_page.
CLEAR: it_list_comments[],
wk_list_comments,
wk_list1_comments,
wk_list2_comments.
wk_list_comments-typ = 'H'. "H=Header,S=Selection, A=Action
wk_list_comments-key = ''.
CASE sy-ucomm.
WHEN ''.
wk_list_comments-info = text-030.
WHEN 'UPD'.
IF t_errlog[] IS INITIAL.
wk_list_comments-info = text-031.
ELSE.
wk_list_comments-info = text-032.
ENDIF.
WHEN 'ERRLOG'.
wk_list_comments-info = text-032.
WHEN '&F03'.
wk_list_comments-info = text-031.
WHEN '&F15'.
wk_list_comments-info = text-031.
WHEN '&F12'.
wk_list_comments-info = text-031.
ENDCASE.
APPEND wk_list_comments TO it_list_comments.
WRITE sy-datum TO wa_date.
WRITE sy-uzeit TO wa_time.
wk_list_comments-typ = 'S'. "H=Header, S=Selection, A=Action
wk_list_comments-key = ''.
wk_list_comments-info = 'User:'.
wk_list1_comments-info = sy-uname.
CONCATENATE wk_list_comments wk_list1_comments
INTO wk_list2_comments.
APPEND wk_list2_comments TO it_list_comments.
wk_list_comments-typ = 'S'. "H=Header, S=Selection, A=Action
wk_list_comments-key = ''.
wk_list_comments-info = ' Run Date : '.
wk_list1_comments-info = wa_date.
CONCATENATE wk_list_comments wk_list1_comments
INTO wk_list2_comments .
APPEND wk_list2_comments TO it_list_comments.
wk_list_comments-typ = 'S'. "H=Header, S=Selection, A=Action
wk_list_comments-key = ''.
wk_list_comments-info = 'Run Time : '.
wk_list1_comments-info = wa_time.
CONCATENATE wk_list_comments wk_list1_comments
INTO wk_list2_comments .
APPEND wk_list2_comments TO it_list_comments.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
I_LOGO = 'ENJOYSAP_LOGO'
it_list_commentary = it_list_comments.
ENDFORM. "F_TOP_OF_PAGE
FORM USER_COMMAND_SAMPLE *
--> UCOMM *
--> SELFIELD *
FORM callback_ucomm USING ucomm LIKE sy-ucomm
selfield TYPE slis_selfield.
DATA: v_langu(2) ,
v_loctype TYPE /sapapo/c_loctype.
data err_flg(1).
IF bapi_run_yes_no IS INITIAL.
CASE sy-ucomm.
WHEN 'UPD'.
bapi_run_yes_no = 'X'.
LOOP AT t_res_head_val WHERE val_err_msg EQ space.
v_langu = 'EN'.
refresh tables
REFRESH : resource_head ,
resource_head_x ,
resource_text ,
resource_text_x,
t_return.
CLEAR : resource_head ,
resource_head_x ,
resource_text ,
resource_text_x,
t_return .
resource_head-resource = t_res_head-name .
resource_head-restype = t_res_head-restype.
resource_head-location = t_res_head-locno.
CLEAR : v_loctype .
SELECT SINGLE loctype FROM /sapapo/loc CLIENT SPECIFIED
INTO v_loctype
WHERE mandt = sy-mandt
AND locno = t_res_head-locno.
resource_head-loctype = v_loctype.
resource_head-calendar = t_res_head-calendar.
resource_head-type = t_res_head-type.
IF t_res_head-type = '03'.
resource_head-dimension_bucket = t_res_head-dimension_bucket.
ELSE.
resource_head-dimension_bucket = space.
ENDIF.
APPEND resource_head.
CLEAR resource_head.
resource_head_x-resource = t_res_head-name.
resource_head_x-restype = 'X'.
resource_head_x-location = 'X'.
resource_head_x-loctype = 'X'.
resource_head_x-calendar = 'X'.
resource_head_x-type = 'X'.
IF t_res_head-type = '03'.
resource_head_x-dimension_bucket = 'X'.
ELSE.
resource_head_x-dimension_bucket = space.
ENDIF.
APPEND resource_head_x.
CLEAR resource_head_x.
resource_text-resource = t_res_head-name.
resource_text-langu = v_langu.
resource_text-res_short_text = t_res_head-text.
APPEND resource_text.
CLEAR resource_text.
resource_text_x-resource = t_res_head-name.
resource_text_x-langu = v_langu.
resource_text_x-res_short_text = 'X'.
APPEND resource_text_x.
CLEAR resource_text_x.
call bapi
CALL FUNCTION 'BAPI_RSSRVAPS_SAVEMULTI_30A'
EXPORTING
logical_system = 'AD2CLNT200'
business_system_group = 'BSG001'
commit_control = 'E'
NO_CREATE = ' '
TABLES
resource_head = resource_head
resource_head_x = resource_head_x
resource_text = resource_text
resource_text_x = resource_text_x
return = t_return.
IF sy-subrc = 0.
LOOP AT t_return WHERE type = 'E'
OR type = 'A'.
MOVE t_res_head_val-counter TO t_errlog-counter.
MOVE t_res_head_val-type TO t_errlog-type.
MOVE t_res_head_val-name TO t_errlog-name.
MOVE t_res_head_val-vrsioid TO t_errlog-vrsioid.
MOVE t_res_head_val-restype TO t_errlog-restype.
MOVE t_return-message TO t_errlog-message.
APPEND t_errlog.
CLEAR t_errlog..
ENDLOOP.
IF not t_errlog[] is initial..
IF sy-subrc = 0.
ERROR POP UP
MESSAGE text-007 type 'I'.
ELSE.
err_flg = 'X'.
SUCC POP UP
MESSAGE text-008 type 'I'.
ENDIF.
ELSE. "NE 0
LOOP AT t_return WHERE type = 'E'
OR type = 'A'.
MOVE t_res_head_val-counter TO t_errlog-counter.
MOVE t_res_head_val-type TO t_errlog-type.
MOVE t_res_head_val-name TO t_errlog-name.
MOVE t_res_head_val-vrsioid TO t_errlog-vrsioid.
MOVE t_res_head_val-restype TO t_errlog-restype.
MOVE t_return-message TO t_errlog-message.
APPEND t_errlog.
CLEAR t_errlog..
ENDLOOP.
IF sy-subrc = 0.
ELSE.
MOVE t_res_head_val-counter TO t_errlog-counter.
MOVE t_res_head_val-type TO t_errlog-type.
MOVE t_res_head_val-name TO t_errlog-name.
MOVE t_res_head_val-vrsioid TO t_errlog-vrsioid.
MOVE t_res_head_val-restype TO t_errlog-restype.
MOVE 'Error in Creation' TO t_errlog-message.
APPEND t_errlog.
CLEAR t_errlog..
ENDIF.
ENDIF.
ENDLOOP.
gc_flag = 'X'.
REFRESH fcode.
if err_flg = 'X'.
MESSAGE text-008 type 'I'.
endif.
ENDCASE.
ENDIF.
IF NOT t_errlog[] IS INITIAL.
wk_list_comments-info = text-032.
APPEND wk_list_comments TO it_list_comments.
APPEND 'UPD' TO fcode_error.
APPEND 'ERRLOG' TO fcode_error.
SET PF-STATUS 'ZSTANDARD' EXCLUDING fcode_error.
PERFORM display_alv_err.
ELSE.
ENDIF.
ENDFORM. "CALLBACK_UCOMM=
*& Form CALLBACK_STATUS
text
-->RT_EXTAB text
FORM callback_status USING rt_extab TYPE slis_t_extab.
IF bapi_run_yes_no IS NOT INITIAL .
IF t_errlog[] IS INITIAL.
REFRESH fcode.
APPEND 'UPD' TO fcode.
APPEND 'ERRLOG' TO fcode.
SET PF-STATUS 'ZSTANDARD' EXCLUDING 'ERRLOG'.
SET PF-STATUS 'ZSTANDARD' EXCLUDING fcode IMMEDIATELY .
ENDIF.
ELSE.
SET PF-STATUS 'ZSTANDARD' EXCLUDING 'ERRLOG' IMMEDIATELY .
ENDIF.
ENDFORM. "CALLBACK_STATUS
*& Form CALLBACK_STATUS1
text
-->RT_EXTAB text
FORM callback_status1 USING rt_extab TYPE slis_t_extab.
SET PF-STATUS 'ZSTANDARD' EXCLUDING 'UPD'.
ENDFORM. " CALLBACK_STATUS
*& Form CALLBACK_STATUS2
text
-->RT_EXTAB text
FORM callback_status2 USING rt_extab TYPE slis_t_extab.
REFRESH fcode_final.
IF sy-ucomm NE '&F03'.
APPEND 'UPD' TO fcode_final.
APPEND 'ERRLOG' TO fcode_final.
SET PF-STATUS 'ZSTANDARD' EXCLUDING fcode_final.
ELSE.
SET PF-STATUS 'ZSTANDARD' EXCLUDING 'UPD'.
ENDIF.
ENDFORM. "CALLBACK_STATUS2
*& Form callback_ucomm_E
text
-->UCOMM text
-->SELFIELD text
FORM callback_ucomm_e USING ucomm LIKE sy-ucomm
selfield TYPE slis_selfield.
CASE sy-ucomm.
WHEN 'ERRLOG' .
PERFORM display_alv_err.
WHEN '&F03'.
SET PF-STATUS 'ZSTANDARD' EXCLUDING 'UPD' IMMEDIATELY .
PERFORM display_alv .
ENDCASE.
ENDFORM. "CALLBACK_UCOMM=
*& Form init_variant
text
--> p1 text
<-- p2 text
FORM init_variant .
CLEAR: wk_variant.
wk_repid = sy-repid.
wk_variant-report = wk_repid.
wk_variant-username = sy-uname.
wk_variant_save = 'A'. "All types
ENDFORM. " init_variant
*& Form f_read_datum1
text
-->P_T_RES_HEAD text
-->P_P_FILE1 text
<--P_W_SUBRC text
FORM f_read_datum1 TABLES p_t_res_head STRUCTURE ypp_res_head
USING p_p_file1
CHANGING p_w_subrc.
DATA : iexcel LIKE zexcel_read OCCURS 0 WITH HEADER LINE.
CLEAR p_w_subrc.
CALL FUNCTION 'ZALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
filename = p_p_file1
i_begin_col = 1
i_begin_row = 1
i_end_col = 62
i_end_row = 50000
TABLES
intern = iexcel
EXCEPTIONS
inconsistent_parameters = 1
upload_ole = 2
OTHERS = 3.
IF sy-subrc <> 0.
p_w_subrc = 0 .
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
LOOP AT iexcel WHERE row > 2.
IF iexcel-col = '0001'.
p_t_res_head-type = iexcel-value.
ENDIF.
IF iexcel-col = '0002'.
p_t_res_head-name = iexcel-value.
ENDIF.
IF iexcel-col = '0003'.
p_t_res_head-vrsioid = iexcel-value.
ENDIF.
IF iexcel-col = '0004'.
p_t_res_head-restype = iexcel-value.
ENDIF.
IF iexcel-col = '0005'.
p_t_res_head-locno = iexcel-value.
ENDIF.
IF iexcel-col = '0006'.
p_t_res_head-tzone = iexcel-value.
ENDIF.
IF iexcel-col = '0007'.
p_t_res_head-calendar = iexcel-value.
ENDIF.
IF iexcel-col = '0008'.
p_t_res_head-planner = iexcel-value.
ENDIF.
IF iexcel-col = '0009'.
p_t_res_h -
What is the Std Program for IDOC Blocking ?
Hi friends,
Tell me standard program for IDOC blocking.
Thanks and Regards..
naveenHi,
You have to write a program to do this:
tables: edidc.
data: idoc_status like EDI_DS occurs 0 with header line.
parameter: docnum like edidc-docnum.
idoc_status-logdat = sy-datum.
idoc_status-logtim = sy-uzeit.
idoc_status-status = '59'.
append idoc_status.
call function 'EDI_DOCUMENT_OPEN_FOR_PROCESS'
exporting
document_number = docnum.
importing
idoc_control = edidc
exceptions
others = 4.
CALL FUNCTION 'EDI_DOCUMENT_STATUS_SET'
EXPORTING
DOCUMENT_NUMBER = docnum
IDOC_STATUS = IDOC_STATUS.
IMPORTING
IDOC_CONTROL =
EXCEPTIONS
DOCUMENT_NUMBER_INVALID = 1
OTHER_FIELDS_INVALID = 2
STATUS_INVALID = 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.
CALL FUNCTION 'EDI_DOCUMENT_CLOSE_PROCESS'
EXPORTING
DOCUMENT_NUMBER = docnum
BACKGROUND = NO_BACKGROUND
NO_DEQUEUE = ' '
IMPORTING
IDOC_CONTROL =
EXCEPTIONS
DOCUMENT_NOT_OPEN = 1
FAILURE_IN_DB_WRITE = 2
PARAMETER_ERROR = 3
STATUS_SET_MISSING = 4
OTHERS = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
regards
Aveek -
Automatic Payment program for Bank bills and Bill of Exchange.
Helllo Sapients,
I need to configure Automatic Payment Program for Bank bills and Bill of Exchange. This configuration is for Europe, where Bank bills are very common.
Can someone advise me or send me the configuration steps for the same.
Thank you
NamanYes, as long you have an open item on the customer account that needs paying.
In F110 you see vendor_and_customer in the parameter screen.
Hth
Hein -
Is there a way to increase the font size for the "songs" and "artists" lists in the "music" app for iPad 2 (iOS 5)? It is smaller than the previous version.
falkner09 wrote:
is there really no fix for this?
It would depend on your definition of "Fix"
Your iPod touch running OS 4.2 has a ZOOM feature which will enable you to see the screen more clearly.
To turn Zoom on or off got to:
Settings > General > Accessibility > Zoom and tap the Zoom On/Off switch.
_To Zoom in or out_:
Double-tap the screen with three fingers. By default, the screen is magnified 200 percent. If you manually change the magnification (by using the tap-and-drag gesture, described below), iPod touch automatically returns to that magnification when you zoom in by double-tapping with three fingers.
Increase magnification: With three fingers, tap and drag toward the top of the screen (to increase magnification) or toward the bottom of the screen (to decrease magnification). The tap-and-drag gesture is similar to a double-tap, except you don’t lift your fingers on the second tap—instead, drag your fingers on the screen. Once you start dragging, you can drag with a single finger.
_Move around the screen_:
When zoomed in, drag or flick the screen with three fingers. Once you start dragging, you can drag with a single finger so that you can see more of the screen. Hold a single finger near the edge of the display to pan to that side of the screen image. Move your finger closer to the edge to pan more quickly. When you open a new screen, Zoom always goes to the top-middle of the screen.
_Large Text_:
Large Text lets you make the text larger in alerts, and in Calendar, Contacts, Mail, Messages, and Notes. You can choose 20-point, 24-point, 32-point, 40-point, 48-point, or 56-point text.
Set the text size: In Settings, choose General > Accessibility, tap Large Text, then tap the text size you want.
I hope this has helped a little - other than this option I think it pretty much is what it is.
BTW - This information can be found on page 208 of the iPod Touch iOS 4.2 Users Guide.
Best wishes..
Ricky -
Do you know any program for 3d modeling and rendering for Mac?
Do you know any program for 3d modeling and rendering for Mac?
I use MegaPov for 3D-rendering. MegaPov is a Mac version of the free PovRay, a photrealistic renderer. It is perfect, if you like to write animation scripts to program elaborate animations and shading.
If you prefer a GUI to a scripting language you may consider Blender; it is also free.
Rather expensive, but with an elaborate GUI are Maya and Cinema 4D; both are available for the mac. -
I cannot open my photoshop. Its asking me for a serial number, which I already have. However, it will not accept my serial number. I've had this program for 5 years and this has never happened.
If your Creative Suite version is #3 through 6, you might try running the CS Cleaner Tools in preparation for a re-install.
Use the CC Cleaner Tool to solve installation problems | CC, CS3-CS6
If you have a legacy version, it may be that the activation servers for your product are no longer available.
Nancy O. -
Hi experts,
im trying to build an alv report with block, and after some hours i finally get how it works but the report has 5 blocks .. and 1 header for all the report...and 1 title for each block
the thing is that for each block theres are their events.. so if i use the TOP OF PAGE that good for each block title, but how can i put a general HEADER for all the report
its something like this
Report 0001 DATE
title 1(top of page)
alv_list1
title 2(top of page)
alv_list2
title 3(top of page)
alv_list3
so... guys im kinda a noobie in alvs so i apreciated any ideas...
thans in advancethx darek,
but im working with alv LIST blocks .. and each block has top of page and top of list...
im looking for a top of list , for say, of all the report, of all the blocks...
anyone?
thanks in advance -
Excel download for ALV Block report (List- export- spreadsheet)
Dear friends,
I want to download the output into Excel...
I am using all SAP standards and using the ALV Block list
Ex: List->export->local file.. is anable from here i can download to excell .....but the same there is anothere option : List->export->spreadsheet...( this one inactive.)
I want to activate the List->export->spreadsheet option.
how to do this???
Thanks,
Sridhar.hi Sridhar,
there is already an option to download in spreadsheet format when saving to local file...then why do you want to activate List->export->spreadsheet ????
regards,
madhu -
BDC upload program for inoftypes 14 and 168
Hi All,
I am uploading IT 14 and 168 through a single BDC program. i am opening the bdc session using
BDC_OPEN_GROUP before bdc recording. my requirement is to upload IT 168 only when uploading
of IT 14 is successful. For this i am using the message table of the first upload(for IT14). if the message
type is 'S'(success) then i am uploading IT168 else i am moving it to an error internal table. Please suugest
wthr this logic is fine. Also where should i call BDC_CLOSE_GROUP. currently i am calling it after the
PERFORM for upload of infotype 168 but it is giving error "unable to open BDC_CLOSE_GROUP".
Can anyone suggest me the solution through some sample code.
i am attaching here my code for your reference.
REPORT ZUSAHR_IN_BN_E_014_168 NO STANDARD PAGE HEADING
LINE-COUNT 65 LINE-SIZE 132.
*=======================================================================
TYPE-POOLS
*=======================================================================
TYPE-POOLS: slis,
truxs.
*=======================================================================
TABLES
*=======================================================================
TABLES: pernr.
*=======================================================================
INFOTYPES
*=======================================================================
INFOTYPES: 0000, "Action
0014, "Recurring payement/deductions
0168. "Insurance plan
*=======================================================================
TYPES
*=======================================================================
TYPES : BEGIN OF t_0014_0168,
num(20) type c, "Number
actcode(1) type c, "action code
lgart LIKE p0014-lgart, "Wage Type
betrg LIKE q0014-betrg, "Amount
betrg(14) type c, "Amount
bplan LIKE p0168-bplan, "Benefit plan
bcovr like p0168-bcovr, "Insurance Option
END OF t_0014_0168,
BEGIN OF t_pernr,
pernr LIKE p0002-pernr, "personnel number
perid like p0002-perid, "SSN
END OF t_pernr,
BEGIN OF errmsg,
pernr LIKE p0014-pernr, "personnel number
messg(85), " message text
END OF errmsg,
BEGIN OF succmsg,
pernr LIKE p0014-pernr, "personnel number
messg(85), " message text
END OF succmsg.
*=======================================================================
INTERNAL TABLES
*=======================================================================
DATA : i_itab TYPE STANDARD TABLE OF t_0014_0168,
i_pernr TYPE STANDARD TABLE OF t_pernr,
i_bdcitab TYPE STANDARD TABLE OF bdcdata ,
i_bdcmsgcoll TYPE STANDARD TABLE OF bdcmsgcoll,
i_errmsg TYPE STANDARD TABLE OF errmsg,
i_succmsg TYPE STANDARD TABLE OF succmsg.
*=======================================================================
RANGES
*=======================================================================
*=======================================================================
DATA DECLARATION
*=======================================================================
DATA : messg(85).
*=======================================================================
GLOBAL WORKAREAS
*=======================================================================
DATA : wa_itab TYPE t_0014_0168,
wa_pernr TYPE t_pernr,
wa_bdcitab TYPE bdcdata ,
wa_bdcmsgcoll TYPE bdcmsgcoll,
wa_errmsg TYPE errmsg,
wa_succmsg TYPE succmsg.
*=======================================================================
GLOBAL VARIABLES
*=======================================================================
DATA : g_n1 TYPE sy-dbcnt.
*=======================================================================
GLOBAL CONSTANTS
*=======================================================================
DATA : g_x TYPE c VALUE 'X',
g_asc TYPE char10 VALUE 'ASC',
g_xls(3) TYPE c VALUE 'XLS',
g_f TYPE c VALUE 'F',
g_1 TYPE c VALUE '1',
g_0 TYPE c VALUE '0',
g_u TYPE c VALUE 'U',
g_int(3) TYPE c VALUE 'INT',
g_raw(3) TYPE c VALUE 'RAW',
G_A(1) TYPE C VALUE 'A',
G_C(1) TYPE C VALUE 'C',
G_D(1) TYPE C VALUE 'D'.
*=======================================================================
SELECTION-SCREEN
*=======================================================================
*Block for Additional selection
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS : p_check TYPE char1 DEFAULT 'X', "check box for test run
p_file1 TYPE rlgrap-filename OBLIGATORY, " upload file
p_file2 TYPE rlgrap-filename OBLIGATORY, " succ emp
p_file3 TYPE rlgrap-filename OBLIGATORY. " err emp
SELECTION-SCREEN END OF BLOCK b1.
*=======================================================================
AT SELECTION-SCREEN
*=======================================================================
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file1.
PERFORM sub_file_intake.
*=======================================================================
START-OF-SELECTION
*=======================================================================
START-OF-SELECTION.
PERFORM sub_data_upload.
PERFORM GET_PERNR_SSN.
*=======================================================================
END-OF-SELECTION
*=======================================================================
END-OF-SELECTION.
*> upload the data using BDC
PERFORM sub_bdc_upload.
*> To display the contents of the input file for test run
IF p_check = space.
PERFORM sub_output.
ELSE.
*> To display in the messages after uploading the input file
PERFORM sub_output_messages.
ENDIF.
*& Form sub_file_intake
F4 on filename to accept file
--> p1 text
<-- p2 text
FORM sub_file_intake .
To provide F4 Functionality for file path
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
program_name = syst-repid
CHANGING
file_name = p_file1
EXCEPTIONS
mask_too_long = 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. " sub_file_intake
*& Form SUB_DATA_UPLOAD
Upload the input file and perform the checkings.
--> p1 text
<-- p2 text
FORM SUB_DATA_UPLOAD .
*> local variable for filename
DATA : l_file1 TYPE string.
*> assign value for file1.
l_file1 = p_file1.
*> function to upload the input file
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = l_file1
filetype = g_asc
has_field_separator = g_x
TABLES
data_tab = i_itab
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17.
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. " SUB_DATA_UPLOAD
*& Form sub_output
if program is on test run mode then display records
FORM sub_output .
*> Count the number of employee to be processed
CLEAR g_n1.
DESCRIBE TABLE i_itab LINES g_n1.
IF g_n1 NE 0.
*> if program is in test run mode then display
LOOP AT i_itab INTO wa_itab.
WRITE: / wa_itab-num,
wa_itab-lgart,
wa_itab-betrg,
wa_itab-bplan,
wa_itab-bcovr.
ENDLOOP.
ENDIF.
ENDFORM. " sub_output
*& Form sub_bdc_upload
bdc upload
FORM sub_bdc_upload .
*> Count the number of employee to be processed
CLEAR g_n1.
DESCRIBE TABLE i_itab LINES g_n1.
IF g_n1 NE 0.
PERFORM sub_open_group.
PERFORM sub_bdc_sessions.
PERFORM sub_close_group.
ELSE.
MESSAGE e003(zmsg) WITH text-021.
ENDIF.
ENDFORM. " sub_bdc_upload
*& Form sub_open_group
bdc_open_group
FORM sub_open_group .
*> group name
DATA : c_group LIKE apqi-groupid .
c_group = text-001.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
client = sy-mandt
group = c_group
holddate = sy-datum
keep = g_x
user = sy-uname
prog = sy-cprog
EXCEPTIONS
client_invalid = 1
destination_invalid = 2
group_invalid = 3
group_is_locked = 4
holddate_invalid = 5
internal_error = 6
queue_error = 7
running = 8
system_lock_error = 9
user_invalid = 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. " sub_open_group
*& Form sub_close_group
Close the BDC Session
FORM sub_close_group .
CALL FUNCTION 'BDC_CLOSE_GROUP'
EXCEPTIONS
not_open = 1
queue_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.
ENDFORM. " sub_close_group
*& Form sub_bdc_sessions
BDC Sessions
FORM sub_bdc_sessions .
*> Local Constants
DATA: l_ctumode LIKE ctu_params-dismode VALUE 'A',
l_cupdate LIKE ctu_params-updmode VALUE 'S',
l_startdate(10) type c,
l_enddate(10) type c,
l_tcode(4) TYPE c VALUE 'PA30',
l_info(2) TYPE c VALUE '14'.
LOOP AT i_itab INTO wa_itab.
perform bdc_dynpro using 'SAPMP50A' '1000'.
IF wa_itab-actcode = G_A.
perform bdc_field using 'BDC_OKCODE'
'=INS'.
ELSEIF wa_itab-actcode = G_D.
perform bdc_field using 'BDC_OKCODE'
'=DEL'.
ELSEIF wa_itab-actcode = G_C.
perform bdc_field using 'BDC_OKCODE'
'=MOD'.
ENDIF.
perform bdc_field using 'RP50G-PERNR' wa_itab-num.
perform bdc_field using 'RP50G-TIMR6'
'X'.
perform bdc_field using 'BDC_CURSOR'
'RP50G-CHOIC'.
perform bdc_field using 'RP50G-CHOIC' l_info.
perform bdc_dynpro using 'MP001400' '2010'.
perform bdc_field using 'BDC_CURSOR'
'Q0014-BETRG'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'P0014-BEGDA'
'03/18/2008'.
perform bdc_field using 'P0014-ENDDA'
'12/31/9999'.
perform bdc_field using 'P0014-LGART' wa_itab-lgart.
perform bdc_field using 'Q0014-BETRG' wa_itab-betrg.
perform bdc_field using 'Q0014-BETRG'
wa_itab-betrg.
' 248'.
perform bdc_field using 'P0014-BETRG' wa_itab-betrg.
perform bdc_field using 'P0014-WAERS'
'USD'.
perform bdc_dynpro using 'MP001400' '2010'.
perform bdc_field using 'BDC_CURSOR'
'P0014-BEGDA'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0014-BEGDA'
'03/18/2008'.
perform bdc_field using 'P0014-ENDDA'
'12/31/9999'.
perform bdc_field using 'P0014-LGART' wa_itab-lgart.
perform bdc_field using 'Q0014-BETRG' wa_itab-betrg.
perform bdc_field using 'P0014-BETRG' wa_itab-betrg.
perform bdc_field using 'P0014-WAERS'
'USD'.
*> refresh the message tab
REFRESH i_bdcmsgcoll.
CALL TRANSACTION l_tcode USING i_bdcitab
MODE l_ctumode
UPDATE l_cupdate
MESSAGES INTO i_bdcmsgcoll.
*> refresh the bdc data tab
REFRESH i_bdcitab.
*> store the message for this pernr
PERFORM sub_build_messages.
ENDLOOP.
ENDFORM. " sub_bdc_sessions
Start new screen *
FORM bdc_dynpro USING program dynpro.
CLEAR wa_bdcitab.
wa_bdcitab-program = program.
wa_bdcitab-dynpro = dynpro.
wa_bdcitab-dynbegin = g_x.
APPEND wa_bdcitab TO i_bdcitab.
ENDFORM. "BDC_DYNPRO
Insert field *
FORM bdc_field USING fnam fval.
IF fval <> space.
CLEAR wa_bdcitab.
wa_bdcitab-fnam = fnam.
wa_bdcitab-fval = fval.
APPEND wa_bdcitab TO i_bdcitab.
ENDIF.
ENDFORM. "BDC_FIELD
*& Form sub_build_messages
Generate the messages
FORM sub_build_messages .
*> Local Constants
DATA : l_s TYPE c VALUE 'S'.
LOOP AT i_bdcmsgcoll INTO wa_bdcmsgcoll.
*> generate the message
CALL FUNCTION 'MESSAGE_TEXT_BUILD'
EXPORTING
msgid = wa_bdcmsgcoll-msgid
msgnr = wa_bdcmsgcoll-msgnr
msgv1 = wa_bdcmsgcoll-msgv1
msgv2 = wa_bdcmsgcoll-msgv2
msgv3 = wa_bdcmsgcoll-msgv3
msgv4 = wa_bdcmsgcoll-msgv4
IMPORTING
message_text_output = messg
EXCEPTIONS
OTHERS = 1.
IF sy-subrc EQ 0.
*> if message type is 'S' then store in successful table
IF wa_bdcmsgcoll-msgtyp = l_s.
MOVE wa_itab-num TO wa_succmsg-pernr.
MOVE messg TO wa_succmsg-messg.
APPEND wa_succmsg TO i_succmsg.
CLEAR wa_succmsg.
PERFORM BDC_UPLOAD_168.
ELSE.
*> if message type is 'E' then store in error table
MOVE wa_itab-num TO wa_errmsg-pernr.
MOVE messg TO wa_errmsg-messg.
APPEND wa_errmsg TO i_errmsg.
CLEAR wa_errmsg.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. " sub_build_messages
*& Form sub_output_messages
text
--> p1 text
<-- p2 text
FORM sub_output_messages .
IF p_check = g_x.
*> clear the count
CLEAR g_n1.
*> count the number of successful employees
DESCRIBE TABLE i_succmsg LINES g_n1.
IF g_n1 <> 0 .
*> download success file
PERFORM sub_succ_file.
*> display the successful employees
WRITE :/ text-002.
LOOP AT i_succmsg INTO wa_succmsg.
WRITE:/ wa_succmsg-pernr, wa_succmsg-messg.
ENDLOOP.
ENDIF.
*> clear the count
CLEAR g_n1.
*> count the number of error employees
DESCRIBE TABLE i_errmsg LINES g_n1.
IF g_n1 <> 0 .
*> download error file
PERFORM sub_err_file.
*> display the error employees
WRITE :/ text-003.
LOOP AT i_errmsg INTO wa_errmsg.
WRITE:/ wa_errmsg-pernr,wa_errmsg-messg.
ENDLOOP.
ENDIF.
ENDIF.
ENDFORM. " sub_output_messages
*& Form SUB_SUCC_FILE
text
--> p1 text
<-- p2 text
FORM sub_succ_file .
*> local variable for filename
DATA : l_file1 TYPE string.
*> assign value for file1.
l_file1 = p_file2.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
filename = l_file1
filetype = g_asc
TABLES
data_tab = i_succmsg
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
OTHERS = 22.
IF sy-subrc EQ 0.
MESSAGE s003(zmsg) WITH text-006.
ENDIF.
ENDFORM. " SUB_SUCC_FILE
*& Form SUB_ERR_FILE
text
--> p1 text
<-- p2 text
FORM sub_err_file .
*> local variable for filename
DATA : l_file1 TYPE string.
*> assign value for file1.
l_file1 = p_file3.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
filename = l_file1
filetype = g_asc
TABLES
data_tab = i_errmsg
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
OTHERS = 22.
IF sy-subrc EQ 0.
MESSAGE s003(zmsg) WITH text-007.
ENDIF.
ENDFORM. " SUB_ERR_FILE
*& Form GET_PERNR_SSN
text
--> p1 text
<-- p2 text
FORM GET_PERNR_SSN .
data : l_cnt type i.
describe table i_itab lines l_cnt.
if l_cnt ge 0.
SELECT PERNR PERID FROM PA0002 INTO table i_pernr
FOR ALL ENTRIES IN i_itab
WHERE PERID EQ i_itab-num.
IF SY-SUBRC EQ 0.
PERFORM MODIFY_TABLE.
ENDIF.
endif.
ENDFORM. " GET_PERNR_SSN
*& Form MODIFY_TABLE
text
--> p1 text
<-- p2 text
FORM MODIFY_TABLE .
LOOP AT i_itab INTO wa_itab.
READ TABLE i_pernr INTO wa_pernr WITH KEY perid = wa_itab-num.
IF SY-SUBRC EQ 0.
MOVE WA_PERNR-PERNR TO WA_ITAB-NUM.
MODIFY i_itab FROM wa_itab.
ENDIF.
ENDLOOP.
ENDFORM. " MODIFY_TABLE
*& Form BDC_UPLOAD_168
text
--> p1 text
<-- p2 text
FORM BDC_UPLOAD_168 .
PERFORM sub_open_group.
PERFORM sub_bdc_sessions_168.
PERFORM sub_close_group.
ENDFORM. " BDC_UPLOAD_168
*& Form SUB_BDC_SESSIONS_168
text
--> p1 text
<-- p2 text
FORM SUB_BDC_SESSIONS_168 .
DATA: l_ctumode LIKE ctu_params-dismode VALUE 'A',
l_cupdate LIKE ctu_params-updmode VALUE 'S',
l_sdate(10) type c,
l_edate(10) type c,
l_tcode(4) TYPE c VALUE 'PA30',
l_info(3) TYPE c VALUE '168'.
LOOP AT i_itab INTO wa_itab.
perform bdc_dynpro using 'SAPMP50A' '1000'.
IF wa_itab-actcode = G_A.
perform bdc_field using 'BDC_OKCODE'
'=INS'.
ELSEIF wa_itab-actcode = G_D.
perform bdc_field using 'BDC_OKCODE'
'=DEL'.
ELSEIF wa_itab-actcode = G_C.
perform bdc_field using 'BDC_OKCODE'
'=MOD'.
ENDIF.
perform bdc_field using 'RP50G-PERNR' wa_itab-num.
perform bdc_field using 'RP50G-TIMR6'
'X'.
perform bdc_field using 'BDC_CURSOR'
'RP50G-CHOIC'.
perform bdc_field using 'RP50G-CHOIC' l_info.
perform bdc_dynpro using 'MP016800' '2000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'P0168-BEGDA'
'03/18/2008'.
perform bdc_field using 'P0168-ENDDA'
'12/31/9999'.
perform bdc_field using 'BDC_CURSOR'
'P0168-BCOVR'.
perform bdc_field using 'P0168-BPLAN' wa_itab-bplan.
perform bdc_field using 'P0168-BCOVR' wa_itab-bcovr.
perform bdc_field using 'Q0168-CSTDT'
'03/18/2008'.
perform bdc_field using 'Q0168-EEPER'
'2'.
perform bdc_field using 'P0168-PERIO'
'2'.
perform bdc_dynpro using 'MP016800' '2000'.
perform bdc_field using 'BDC_CURSOR'
'P0168-BEGDA'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0168-BEGDA'
'03/18/2008'.
perform bdc_field using 'P0168-ENDDA'
'12/31/9999'.
perform bdc_field using 'P0168-BPLAN' wa_itab-bplan.
perform bdc_field using 'P0168-BCOVR' wa_itab-bcovr.
perform bdc_field using 'Q0168-CSTDT'
'03/18/2008'.
perform bdc_field using 'Q0168-EEPER'
'2'.
*> refresh the message tab
REFRESH i_bdcmsgcoll.
CALL TRANSACTION l_tcode USING i_bdcitab
MODE l_ctumode
UPDATE l_cupdate
MESSAGES INTO i_bdcmsgcoll.
*> refresh the bdc data tab
REFRESH i_bdcitab.
*> store the message for this pernr
PERFORM sub_build_messages_168.
ENDLOOP.
ENDFORM. " SUB_BDC_SESSIONS_168
*& Form SUB_BUILD_MESSAGES_168
text
--> p1 text
<-- p2 text
FORM SUB_BUILD_MESSAGES_168 .
*> Local Constants
DATA : l_s TYPE c VALUE 'S'.
LOOP AT i_bdcmsgcoll INTO wa_bdcmsgcoll.
*> generate the message
CALL FUNCTION 'MESSAGE_TEXT_BUILD'
EXPORTING
msgid = wa_bdcmsgcoll-msgid
msgnr = wa_bdcmsgcoll-msgnr
msgv1 = wa_bdcmsgcoll-msgv1
msgv2 = wa_bdcmsgcoll-msgv2
msgv3 = wa_bdcmsgcoll-msgv3
msgv4 = wa_bdcmsgcoll-msgv4
IMPORTING
message_text_output = messg
EXCEPTIONS
OTHERS = 1.
IF sy-subrc EQ 0.
*> if message type is 'S' then store in successful table
IF wa_bdcmsgcoll-msgtyp = l_s.
MOVE wa_itab-num TO wa_succmsg-pernr.
MOVE messg TO wa_succmsg-messg.
APPEND wa_succmsg TO i_succmsg.
CLEAR wa_succmsg.
ELSE.
*> if message type is 'E' then store in error table
MOVE wa_itab-num TO wa_errmsg-pernr.
MOVE messg TO wa_errmsg-messg.
APPEND wa_errmsg TO i_errmsg.
CLEAR wa_errmsg.
ENDIF.
ENDIF.
ENDLOOP.
Many thanks in advance!!!!
RupeshFor the IDOC perspective, you can uses CREMAS.
For the mass maintenance you still have XK99 (which also uses CREMAS internally)
True there is NO BAPI
For the BDC and the table control. Well this is not really true.
In batchinput, instead of maintaining the rows by there Number, you should select it at the first position.
OK-CODE /06 will open a selection screen SAPMF02K 2324. The result of the selection screen goes to the first line of the table control.
Of course this works only in BDC
reward points if helpful
Edited by: Alain Bacchi on Jun 18, 2008 8:48 AM -
SAP Report Painter - SAP tables for report items and hierarchy
Hello,
can you pls. help me with an information about the list of SAP tables for Report Painter, particularly the tables where the report items/positions and report hierarchy are stored?
for example, for the Report Writer report items and report hierarchy can be found in T8* tables.
What are these tables for Report Painter?
thank you in advance for any info.
Regards,
Jasminka
Edited by: Jasminka Vlahovic on Dec 29, 2010 8:53 PMHi Jasminika ,
Could you please share with me those tables names where report items and hierarchy are saved
Regards
Neeraj -
I would like to get the program for (9012,9233 and 9101)
Hi all,
Now i have bought
the controller (9012) cRIO,
the module (9233)
the chassis (9101) .
i would like to get a supporting program for those device to be able to use them up (configuration and compile them up together to be able to use) .As I want to test some of my application using these device.Where can i get that program properbly.Thank you for your support.
With best regards ,
KitHi Kit,
I understand your question now and I can point you to some usefull resources. First, you mentioned the three components, the chassis (which contains the FPGA), the ReamTime controller and the module. You also of course have your PC which is what the user will interface with to perhaps view the data on a graph. You will need to create a new FPGA project and you will have several key components in that project:
1) a VI on your FPGA target that is programmed to do I/O from your 9233 module. This VI must be created and then deployed and compiled onto the FPGA (this is like programming the chassis)
2) a VI on your RT controller that will use a DMA fifo to get the data from the FPGA. You may also have some signal processing or some other logic on this VI. This VI must be deployed to the RT controller
3) a VI on your host computer that will read data from the controller, probably save it to a disk and display it on a graph.
I would reccamend looking at a few resources to help you get started:
1) FPGA Design, Development and Programming Tutorial
2) Getting Started with the FPGA Module from the LabVIEW help files
3) LabVIEW FPGA Module On-Line Tutorial, this is a video tutorial that will be helpful
4) Use the LabVIEW example finder (in LabVIEW go to help»Find Examples) and under the "search tab" type in 9233. Open the 9233 getting started project that will populate in the list of available examples for the 9233. This project will serve as a starting point for your cRIO system programming.
I hope this helps. Thanks and have a great day.
Stephen S.
National Instruments
1 Test is worth 1000 expert opinions
Maybe you are looking for
-
Bank Account at Supplier Site Level in R12
Hi, I have a requirement to create bank account at supplier site level. This is part of the conversion. I have been testing with the below code DECLARE l_extbank_rec iby_ext_bankacct_pub.extbankacct_rec_type; l_vendor_site_id NUMBER (10) := 704; l_pa
-
Setup interval on Import and Syndication server in 7.1
Hello Experts: I am upgrading MDM from 5.5 to 7.1; I am having issues with Import Server picking up files from Ready folder, and Syndication Server creating the files on Ready Folder. 1. I checked Console, and both ports, Inbound and Outbound, are s
-
MC.1 report date format to be changed.
Hi, In MC.1 report the default formate of the date is MM.YYYY is this format cn be chaned to DD.MM.YYYY based on the posting date. I want to see the MC.1 report based on the posting dates. Kindly help me.
-
-cvs, -git, -snv... is really a good naming convention?
The unstable packages have the name of their relative stable one with added in suffix the concurrent version system installed. I think it is a bad convention since it mixes implementer choices with the the concept of lastest unstable version. I think
-
How to integrate custom infotype in IMG
Hi, I am working on ESS MSS consultant and having a doubt on how the process will take place to embed custom Infotype to Personal Information application at IMG level. I mean how the communication flow will take place between these two? If anybody ha