Z* Program Modification
Dear All,
We are doing the OS/DB Migrartion in rehearsal pahase 1 -> Windows 2003/SQL2000 SAP 4.6C with (4.6D kernel)
We have some add on programs, So we want to modify middle of the systax of the Z* program like change IP address and hostname etc.
We already set the Prd client to change below.
Client Independent Object changes -> Changes to repository and cross-Client Customizing allowed
Please let me know how to modify the program.
Thanks
Malai
Hi Matt,
Thank you very mcuh..
Yes we are currently changing at the rehearsal server1.
1.Please confirm the below steps is ok to do.
Se38->ZXXB0100_TMP-> Change -> Slect the line to change and click "Replace" button to modify.
2.IN rehearsal pahase 2.
we are planning to use the Rehearsal 1 system as dev system temporarily. In this case can we use the Same SID for Dev and PRD system.
If yes is it possible to send the transport request between two system with same SID ?.
Dev System SID is : FFP & Prd system SID is: FFP
Thanks
Malai
Similar Messages
-
hello experts
I have the following ALV report, (ZBB Program) <b>Material Document Listing Report</b>
Currently this report let us drill down to some transaction where we would see standard costs(Drill down fields are Customer and Mterial number) Now, we would like to create
a similar Report (ZBBn) that will not let us drill down to any transaction where we would see standard costs. we would like to make this avaialable to sales administrative assistants,
The Report should display the fields with no drill down features, Please check ZBB program below, i would appreciate if anybody could modify the program in such a way it is executable. Please highlight the chaged code.
Thanks in adavance
Mohan
Global data declaration
TYPE-POOLS: slis.
TABLES:
msku , " Special Stocks with Customer
makt , " Material Descriptions
mara , " General Material Data
lfa1,
mbew , " Material Valuation
ser01 , " Document Header for Serial Numbers for Delivery
lips , " SD document: Delivery: Item data
vbak , " Sales Document: Header Data
likp , " SD Document: Delivery Header Data
t001w , " Plants/Branches
kna1 , " General Data in Customer Master
eqbs , " Serial Number Stock Segment
bhdgd , " Common data area batch heading routine
objk , " Plant Maintenance Object List
mkpf,
vbpa,
vbap,
pa0001,
mseg,
ekbe," CH03+
t157e," CH05+
vbfa,
t156t,
tbsgt," VS01+
ekpo," VS01
ekko," CH06+
eket," CH06+
marc." CH07+
data z_equnr like equi-equnr." CH06+
SELECTION-SCREEN: BEGIN OF BLOCK dba WITH FRAME TITLE text-001.
SELECT-OPTIONS s_matnr FOR mseg-matnr MEMORY ID mat.
SELECT-OPTIONS s_werks FOR mseg-werks MEMORY ID wrk.
SELECT-OPTIONS s_lgort FOR mseg-lgort MEMORY ID lag.
SELECT-OPTIONS s_charg FOR mseg-charg MEMORY ID cha.
SELECT-OPTIONS s_lifnr FOR mseg-lifnr MEMORY ID lif.
SELECT-OPTIONS s_kunnr FOR mseg-kunnr MEMORY ID kun.
SELECT-OPTIONS s_bwart FOR mseg-bwart MEMORY ID bwa.
SELECT-OPTIONS s_sobkz FOR mseg-sobkz.
SELECT-OPTIONS s_aufnr FOR mseg-aufnr." CH04+
SELECTION-SCREEN END OF BLOCK dba.
SELECTION-SCREEN BEGIN OF BLOCK mkpf WITH FRAME TITLE text-002.
SELECT-OPTIONS s_budat FOR mkpf-budat.
SELECT-OPTIONS s_usnam FOR mkpf-usnam MEMORY ID usr.
SELECT-OPTIONS s_vgart FOR mkpf-vgart.
SELECT-OPTIONS s_xblnr FOR mkpf-xblnr.
SELECTION-SCREEN END OF BLOCK mkpf.
PARAMETERS: p_vari LIKE disvariant-variant.
TYPES : BEGIN OF i_material_doc,
mblnr TYPE mseg-mblnr,
urzei TYPE mseg-urzei,
mjahr TYPE mseg-mjahr,
gjahr TYPE bkpf-gjahr,
lgort TYPE mseg-lgort,
matnr TYPE msku-matnr,
usnam TYPE mkpf-usnam,
xblnr TYPE mkpf-xblnr,
werks TYPE mseg-werks,
belnr TYPE bkpf-belnr,
beln2 TYPE bkpf-belnr,
vgart TYPE mkpf-vgart,
bwart TYPE mseg-bwart,
charg TYPE mseg-charg,
sernr TYPE equi-sernr,
shkzg TYPE mseg-shkzg,
erdat TYPE vbak-erdat,
shday TYPE zalv-shday,
budat TYPE mkpf-budat,
exdat TYPE zalv-exdat,
stprs TYPE mbew-stprs,
kdauf TYPE mseg-kdauf,
ebeln TYPE mseg-ebeln,
maktx TYPE makt-maktx,
kunnr TYPE msku-kunnr,
lifnr TYPE mseg-lifnr,
soname TYPE zalv-soname,
vdname TYPE zalv-shname,
sobkz TYPE msku-sobkz,
dmbtr TYPE mseg-dmbtr,
menge TYPE mseg-menge,
ebelp TYPE mseg-ebelp," CH02+
bualt TYPE mseg-bualt," CH02+
erfmg TYPE mseg-erfmg," CH03+
waers TYPE mseg-waers," CH03+
unit_amt TYPE mseg-bualt," CH03+
unit_amt_lc TYPE mseg-bualt," CH03+
aufnr TYPE mseg-aufnr," CH04+
btext TYPE t156t-btext," EC01+
bezei TYPE tbsgt-bezei," VS01+
grund TYPE mseg-grund," CH05+
grtxt TYPE t157e-grtxt," CH05+
issdt type sy-datum," CH06+
ekgrp type ekko-ekgrp," CH06+
eindt type eket-eindt," CH06+
END OF i_material_doc.
DATA:gt_fieldcat TYPE slis_t_fieldcat_alv.
DATA: i_object_numbers TYPE objk OCCURS 0 WITH HEADER LINE.
DATA: gt_material_doc TYPE i_material_doc OCCURS 0 WITH HEADER LINE.
DATA: i_material_doca TYPE i_material_doc OCCURS 0 WITH HEADER LINE.
DATA: BEGIN OF i_serial OCCURS 0,
mblnr TYPE mseg-mblnr,
zeile TYPE mseg-zeile,
gjahr TYPE mseg-gjahr,
matnr TYPE msku-matnr,
b_werk TYPE mseg-werks,
b_charge TYPE mseg-charg,
kunnr TYPE msku-kunnr,
kunwe TYPE msku-kunnr,
objnr TYPE equi-objnr,
sernr TYPE equi-sernr,
END OF i_serial.
DATA: g_repid LIKE sy-repid,
g_count LIKE sy-tabix,
g_record_found(1) TYPE c,
g_total_kulab LIKE mseg-menge,
g_item LIKE lips-posnr,
g_delivery LIKE lips-vbeln,
g_delivery_item LIKE lips-posnr,
g_indicator LIKE scal-indicator,
g_calender_id LIKE scal-fcalid,
g_15days LIKE sy-index,
g_datum LIKE sy-datum,
l_account(1),
g_expected_date LIKE sy-datum.
DATA: g_save(1) TYPE c,
g_exit(1) TYPE c,
gx_variant LIKE disvariant,
g_variant LIKE disvariant.
DATA : BEGIN OF i_account_document OCCURS 0,
belnr TYPE bkpf-belnr,
gjahr TYPE bkpf-gjahr,
END OF i_account_document.
Initialization fieldcatalog
INITIALIZATION.
g_repid = sy-repid.
g_save = 'A'.
PERFORM variant_init.
Get default variant
gx_variant = g_variant.
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
i_save = g_save
CHANGING
cs_variant = gx_variant
EXCEPTIONS
not_found = 2.
IF sy-subrc = 0.
p_vari = gx_variant-variant.
ENDIF.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_vari.
PERFORM f4_for_variant.
AT SELECTION-SCREEN.
PERFORM pai_of_selection_screen.
PERFORM auth_check. "<------ AUTH CHECK
CALL FUNCTION 'MMIM_ENTRYCHECK_MAIN'
TABLES
it_matnr = s_matnr
it_werks = s_werks
it_kunnr = s_kunnr.
START-OF-SELECTION.
SELECT SINGLE * FROM t001w WHERE werks IN s_werks.
IF sy-subrc EQ 0.
g_calender_id = t001w-fabkl.
ENDIF.
Data selection
PERFORM select_data TABLES gt_material_doc.
PERFORM fieldcat_init USING gt_fieldcat[].
END-OF-SELECTION.
Display list
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_user_command = 'USER_COMMAND'
i_callback_program = g_repid
it_fieldcat = gt_fieldcat[]
is_variant = g_variant
i_save = g_save
TABLES
t_outtab = gt_material_doc.
FORM select_data TABLES i_material_doc LIKE gt_material_doc[].
DATA: l_status LIKE risa0-statusline,
l_zeile LIKE vbfa-posnn,
l_uepos LIKE vbap-uepos,
l_awkey LIKE bkpf-awkey,
l_record_not_found(1).
Read Material Docs For the Selection
SELECT DISTINCT hxblnr dmblnr durzei hmjahr dmatnr dwerks
dkunnr dlifnr dcharg dshkzg dmenge dbwart
hbudat dshkzg dlgort dsobkz h~usnam
hvgart dkdauf d~ebeln
debelp dbualt " CH02+
derfmg ddmbtr d~waers" CH03+
d~aufnr" CH04+
d~grund" CH05+
FROM mkpf AS h INNER JOIN mseg AS d
ON hmandt = dmandt
AND hmblnr = dmblnr
AND hmjahr = dmjahr
APPENDING CORRESPONDING FIELDS OF TABLE i_material_doc
WHERE d~matnr IN s_matnr
AND d~werks IN s_werks
AND h~budat IN s_budat
AND h~vgart IN s_vgart
AND h~xblnr IN s_xblnr
AND h~usnam IN s_usnam
AND d~lgort IN s_lgort
AND d~sobkz IN s_sobkz
AND d~charg IN s_charg
AND d~lifnr IN s_lifnr
AND d~kunnr IN s_kunnr
AND d~bwart IN s_bwart
AND d~aufnr IN s_aufnr." CH04+
SORT i_material_doc BY mblnr urzei.
Read Material Document to help in accessing the Serial Number
SELECT hmatnr hsernr dmblnr dmjahr d~zeile
FROM ser03 AS d INNER JOIN objk AS h
ON hobknr = dobknr
APPENDING CORRESPONDING FIELDS OF TABLE i_serial
FOR ALL ENTRIES IN i_material_doc
WHERE h~matnr = i_material_doc-matnr
AND d~mblnr = i_material_doc-mblnr
AND d~werk = i_material_doc-werks
AND d~zeile = i_material_doc-urzei
AND h~objvw = 'S'
AND h~taser = 'SER03'.
SORT i_serial BY mblnr zeile.
LOOP AT i_material_doc.
CLEAR: l_record_not_found.
CONCATENATE i_material_doc-mblnr i_material_doc-mjahr INTO l_awkey.
CLEAR: i_account_document[].
SELECT belnr gjahr INTO TABLE i_account_document
FROM bkpf
WHERE awtyp EQ 'MKPF'
AND awkey EQ l_awkey.
READ TABLE i_account_document INDEX 1.
IF sy-subrc EQ 0.
MOVE: i_account_document-belnr TO i_material_doc-belnr.
ENDIF.
READ TABLE i_account_document INDEX 2.
IF sy-subrc EQ 0.
MOVE: i_account_document-belnr TO i_material_doc-beln2.
l_account = 'X'.
ENDIF.
i_material_doca = i_material_doc.
CLEAR: i_material_doca-sernr.
LOOP AT i_serial WHERE mblnr = i_material_doc-mblnr
AND zeile = i_material_doc-urzei.
MOVE: i_serial-sernr TO i_material_doca-sernr.
MOVE '1.000' TO i_material_doca-menge.
*Begin CH06 Get Issuing date from classification
select single equnr
into z_equnr
from equi
where sernr = i_material_doca-sernr
and matnr = i_material_doca-matnr.
perform get_class_data using
z_equnr
'ISSUING_DATE'
i_material_doca-issdt.
clear z_equnr.
*End CH06
APPEND i_material_doca.
l_record_not_found = 'X'.
ENDLOOP.
IF l_record_not_found EQ space.
APPEND i_material_doca.
ENDIF.
ENDLOOP.
CLEAR: i_material_doc[].
DELETE i_material_doca WHERE menge EQ 0
AND erfmg EQ 0." CH03+
LOOP AT i_material_doca.
i_material_doca-unit_amt = " CH03+
i_material_doca-bualt / i_material_doca-erfmg." CH03+
i_material_doca-unit_amt_lc = " CH03+
i_material_doca-dmbtr / i_material_doca-erfmg." CH03+
IF i_material_doca-shkzg EQ 'H'.
MULTIPLY i_material_doca-menge BY -1.
MULTIPLY i_material_doca-erfmg BY -1." CH03+
MULTIPLY i_material_doca-bualt BY -1." CH03+
MULTIPLY i_material_doca-dmbtr BY -1." CH03+
MULTIPLY i_material_doca-unit_amt BY -1." CH03+
MULTIPLY i_material_doca-unit_amt_lc BY -1." CH03+
ENDIF.
*CH04 Show unit amts instead of total amts when SN's are displyed
*individually
IF i_material_doca-erfmg <> i_material_doca-menge " CH04+
AND i_material_doca-sernr <> ''" CH04+
AND i_material_doca-menge = 1." CH04+
i_material_doca-bualt = i_material_doca-unit_amt." CH04+
i_material_doca-dmbtr = i_material_doca-unit_amt_lc. " CH04+
ENDIF." CH04+
Read Reason for movement
SELECT SINGLE * FROM t157e WHERE bwart = i_material_doca-bwart" CH05+
AND grund = i_material_doca-grund" CH05+
AND spras = 'EN'." CH05+
i_material_doca-grtxt = t157e-grtxt." CH05+
Read Customer Name
CLEAR: kna1, i_material_doca-soname.
SELECT SINGLE name1 INTO i_material_doca-soname
FROM kna1 WHERE kunnr EQ i_material_doca-kunnr.
CLEAR: i_material_doca-maktx.
SELECT SINGLE maktx INTO i_material_doca-maktx
FROM makt WHERE spras EQ sy-langu
AND matnr EQ i_material_doca-matnr.
Read Vendor Name
CLEAR: kna1, i_material_doca-vdname.
SELECT SINGLE name1 INTO i_material_doca-vdname
FROM lfa1 WHERE lifnr EQ i_material_doca-lifnr.
PO item reason for order VS01+
CLEAR: ekpo, i_material_doca-bezei." VS01+
IF NOT i_material_doca-ebeln IS INITIAL." VS01+
SELECT SINGLE * FROM ekpo " VS01+
WHERE ebeln EQ i_material_doca-ebeln" VS01+
AND ebelp EQ i_material_doca-ebelp " VS01+
AND bsgru NE ' ' " VS01+
AND loekz EQ ' '. " VS01+
IF sy-subrc EQ 0." VS01+
SELECT SINGLE bezei INTO i_material_doca-bezei" VS01+
FROM tbsgt WHERE spras EQ sy-langu " VS01+
AND bsgru EQ ekpo-bsgru." VS01+
ENDIF." VS01+
ENDIF." VS01+
*CH07 Removed lines, getting Buyer code from Marc instead
Read PO header for Buyer Code
CLEAR: ekko, i_material_doca-ekgrp." CH06+
IF NOT i_material_doca-ebeln IS INITIAL." CH06+
SELECT single ekgrp into i_material_doca-ekgrp" CH06+
FROM ekko " CH06+
WHERE ebeln EQ i_material_doca-ebeln." CH06+
ENDIF." CH06+
CLEAR: marc, i_material_doca-ekgrp." CH07+
SELECT single ekgrp into i_material_doca-ekgrp" CH07+
FROM marc " CH07+
WHERE matnr EQ i_material_doca-matnr " CH07+
AND werks EQ i_material_doca-werks." CH07+
Read PO schedule line for delivery dt
CLEAR: eket, i_material_doca-eindt." CH06+
IF NOT i_material_doca-ebeln IS INITIAL." CH06+
SELECT single eindt into i_material_doca-eindt" CH06+
FROM eket " CH06+
WHERE ebeln EQ i_material_doca-ebeln" CH06+
AND ebelp EQ i_material_doca-ebelp." CH06+
ENDIF." CH06+
APPEND i_material_doca TO i_material_doc.
ENDLOOP.
LOOP AT i_material_doc.
SELECT SINGLE btext FROM t156t INTO i_material_doc-btext
WHERE bwart = i_material_doc-bwart AND spras = 'EN'.
MODIFY i_material_doc.
CLEAR: i_material_doc.
ENDLOOP.
ENDFORM. " FORM
Initialization fieldcatalog
FORM fieldcat_init
USING rt_fieldcat TYPE slis_t_fieldcat_alv.
DATA: ls_fieldcat TYPE slis_fieldcat_alv.
DATA: pos TYPE i VALUE 1.
IF sy-langu = 'E'.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'WERKS'.
ls_fieldcat-seltext_s = 'Plant '.
ls_fieldcat-seltext_m = 'Plant'.
ls_fieldcat-seltext_l = 'Plant'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'LGORT'.
ls_fieldcat-seltext_s = 'Storage Loc'.
ls_fieldcat-seltext_m = 'Storage Loc'.
ls_fieldcat-seltext_l = 'Storage Loc'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'BWART'.
ls_fieldcat-seltext_s = 'Mov Type'.
ls_fieldcat-seltext_m = 'Mov Type'.
ls_fieldcat-seltext_l = 'Movement Type'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'BTEXT'.
ls_fieldcat-seltext_s = 'Text-Mov Type'.
ls_fieldcat-seltext_m = 'Text-Mov Type'.
ls_fieldcat-seltext_l = 'Text-Movement Type'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'XBLNR'.
ls_fieldcat-seltext_s = 'Ref Doc'.
ls_fieldcat-seltext_m = 'Reference Doc'.
ls_fieldcat-seltext_l = 'Reference Doc Number'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'BUDAT'.
ls_fieldcat-seltext_s = 'Posting Date'.
ls_fieldcat-seltext_m = 'Posting Date'.
ls_fieldcat-seltext_l = 'Posting Date'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'SOBKZ'.
ls_fieldcat-seltext_s = 'Special Stock'.
ls_fieldcat-seltext_m = 'Special Stock'.
ls_fieldcat-seltext_l = 'Special Stock'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'MBLNR'.
ls_fieldcat-seltext_s = 'Material Doc'.
ls_fieldcat-seltext_m = 'Material Doc'.
ls_fieldcat-seltext_l = 'Material Doc Number'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'URZEI'.
ls_fieldcat-seltext_s = 'Item'.
ls_fieldcat-seltext_m = 'Item'.
ls_fieldcat-seltext_l = 'Material Document Item'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'MATNR'.
ls_fieldcat-seltext_s = 'Material'.
ls_fieldcat-seltext_m = 'Material No'.
ls_fieldcat-seltext_l = 'Material Numner'.
ls_fieldcat-seltext_l = 'Material Number'." CH01+
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'MAKTX'.
ls_fieldcat-seltext_s = 'Description'.
ls_fieldcat-seltext_m = 'Material Description'.
ls_fieldcat-seltext_l = 'Material Description'.
ls_fieldcat-no_out = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'USNAM'.
ls_fieldcat-seltext_s = 'User'.
ls_fieldcat-seltext_m = 'Created By'.
ls_fieldcat-seltext_l = 'Created By'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'CHARG'.
ls_fieldcat-seltext_s = 'Batch'.
ls_fieldcat-seltext_m = 'Batch No'.
ls_fieldcat-seltext_l = 'Batch Number'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'KUNNR'.
ls_fieldcat-seltext_s = 'Customer'.
ls_fieldcat-seltext_m = 'Customer'.
ls_fieldcat-seltext_l = 'Customer'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'SONAME'.
ls_fieldcat-seltext_s = 'Customer Name '.
ls_fieldcat-seltext_m = 'Customer Name'.
ls_fieldcat-seltext_l = 'Customer Name'.
ls_fieldcat-no_out = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'LIFNR'.
ls_fieldcat-seltext_s = 'Vendor'.
ls_fieldcat-seltext_m = 'Vendor'.
ls_fieldcat-seltext_l = 'Vendor'..
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'VDNAME'.
ls_fieldcat-seltext_s = 'Vendor Name '.
ls_fieldcat-seltext_m = 'Vendor Name'.
ls_fieldcat-seltext_l = 'Vendor Name'.
ls_fieldcat-no_out = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'SERNR'.
ls_fieldcat-ref_fieldname = 'SERNR'.
ls_fieldcat-outputlen = '18'.
ls_fieldcat-seltext_s = 'Serial Number'.
ls_fieldcat-seltext_m = 'Serial Number'.
ls_fieldcat-seltext_l = 'Serial Number'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'BELNR'.
ls_fieldcat-seltext_s = 'Account Doc'.
ls_fieldcat-seltext_m = 'Accounting Doc'.
ls_fieldcat-seltext_l = 'Accounting Document'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
IF l_account = 'X'.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'BELN2'.
ls_fieldcat-seltext_s = 'Account Doc2'.
ls_fieldcat-seltext_m = 'Accounting Doc2'.
ls_fieldcat-seltext_l = 'Accounting Document2'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
ENDIF.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'KDAUF'.
ls_fieldcat-seltext_s = 'Sales Order'.
ls_fieldcat-seltext_m = 'Sales Order '.
ls_fieldcat-seltext_l = 'Sales Order Number'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'EBELN'.
ls_fieldcat-seltext_s = 'Purchase Ord'.
ls_fieldcat-seltext_m = 'Purchase Order '.
ls_fieldcat-seltext_l = 'Purchase Order Number'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1." CH02+
ls_fieldcat-col_pos = pos." CH02+
ls_fieldcat-fieldname = 'EBELP'." CH02+
ls_fieldcat-seltext_s = 'PO Line'." CH02+
ls_fieldcat-seltext_m = 'PO Line'." CH02+
ls_fieldcat-seltext_l = 'PO Line'." CH02+
APPEND ls_fieldcat TO rt_fieldcat." CH02+
CLEAR ls_fieldcat." CH02+
pos = pos + 1." CH02+
ls_fieldcat-col_pos = pos." CH02+
ls_fieldcat-fieldname = 'BUALT'." CH02+
ls_fieldcat-seltext_s = 'Amount'." CH02+
ls_fieldcat-seltext_m = 'Amount'." CH02+
ls_fieldcat-seltext_l = 'Amount'." CH02+
ls_fieldcat-do_sum = 'X'." CH02+
ls_fieldcat-no_out = 'X'." CH03+
APPEND ls_fieldcat TO rt_fieldcat." CH02+
CLEAR ls_fieldcat." CH02+
pos = pos + 1." CH03+
ls_fieldcat-col_pos = pos." CH03+
ls_fieldcat-fieldname = 'DMBTR'." CH03+
ls_fieldcat-seltext_s = 'Amt LC'." CH03+
ls_fieldcat-seltext_m = 'Amt LCurr'." CH03+
ls_fieldcat-seltext_l = 'Amt Local Curr'." CH03+
ls_fieldcat-do_sum = 'X'." CH03+
ls_fieldcat-no_out = 'X'." CH03+
APPEND ls_fieldcat TO rt_fieldcat." CH03+
CLEAR ls_fieldcat." CH03+
pos = pos + 1." CH03+
ls_fieldcat-col_pos = pos." CH03+
ls_fieldcat-fieldname = 'UNIT_AMT'." CH03+
ls_fieldcat-seltext_s = 'Unit Amt'." CH03+
ls_fieldcat-seltext_m = 'Unit Amt'." CH03+
ls_fieldcat-seltext_l = 'Unit Amount'." CH03+
ls_fieldcat-do_sum = 'X'." CH03+
ls_fieldcat-no_out = 'X'." CH03+
APPEND ls_fieldcat TO rt_fieldcat." CH03+
CLEAR ls_fieldcat." CH03+
pos = pos + 1." CH03+
ls_fieldcat-col_pos = pos." CH03+
ls_fieldcat-fieldname = 'UNIT_AMT_LC'." CH03+
ls_fieldcat-seltext_s = 'Unit Amt LC'." CH03+
ls_fieldcat-seltext_m = 'Unit Amt LC'." CH03+
ls_fieldcat-seltext_l = 'Unit Amount LC'." CH03+
ls_fieldcat-do_sum = 'X'." CH03+
ls_fieldcat-no_out = 'X'." CH03+
APPEND ls_fieldcat TO rt_fieldcat." CH03+
CLEAR ls_fieldcat." CH03+
pos = pos + 1." CH03+
ls_fieldcat-col_pos = pos." CH03+
ls_fieldcat-fieldname = 'WAERS'." CH03+
ls_fieldcat-seltext_s = 'Curr'." CH03+
ls_fieldcat-seltext_m = 'Currency'." CH03+
ls_fieldcat-seltext_l = 'Currency'." CH03+
ls_fieldcat-do_sum = 'X'." CH03+
ls_fieldcat-no_out = 'X'." CH03+
APPEND ls_fieldcat TO rt_fieldcat." CH03+
CLEAR ls_fieldcat." CH03+
pos = pos + 1." CH03+
ls_fieldcat-col_pos = pos." CH03+
ls_fieldcat-fieldname = 'ERFMG'." CH03+
ls_fieldcat-seltext_s = 'Qty UnE'." CH03+
ls_fieldcat-seltext_m = 'Qty in UnE'." CH03+
ls_fieldcat-seltext_l = 'Qty in Unit Entry'." CH03+
ls_fieldcat-do_sum = 'X'." CH03+
ls_fieldcat-no_out = 'X'." CH03+
APPEND ls_fieldcat TO rt_fieldcat." CH03+
CLEAR ls_fieldcat." CH03+
pos = pos + 1." CH04+
ls_fieldcat-col_pos = pos." CH04+
ls_fieldcat-fieldname = 'AUFNR'." CH04+
ls_fieldcat-seltext_s = 'Order'." CH04+
ls_fieldcat-seltext_m = 'Work Order'." CH04+
ls_fieldcat-seltext_l = 'Work Order'." CH04+
ls_fieldcat-do_sum = 'X'." CH04+
ls_fieldcat-no_out = 'X'." CH04+
APPEND ls_fieldcat TO rt_fieldcat." CH04+
CLEAR ls_fieldcat." CH04+
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'MENGE'.
ls_fieldcat-seltext_s = 'Inventory'.
ls_fieldcat-seltext_m = 'Inventory'.
ls_fieldcat-seltext_l = 'Inventory'.
ls_fieldcat-do_sum = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1." VS01+
ls_fieldcat-col_pos = pos." VS01+
ls_fieldcat-fieldname = 'BEZEI'." VS01+
ls_fieldcat-seltext_s = 'PO Reason for Order'." VS01+
ls_fieldcat-seltext_m = 'PO Reason for Order'." VS01+
ls_fieldcat-seltext_l = 'PO Reason for Order'." VS01+
APPEND ls_fieldcat TO rt_fieldcat." VS01+
CLEAR ls_fieldcat." VS01+
pos = pos + 1." CH05+
ls_fieldcat-col_pos = pos." CH05+
ls_fieldcat-fieldname = 'GRUND'." CH05+
ls_fieldcat-seltext_s = 'Reason Cd'." CH05+
ls_fieldcat-seltext_m = 'Reason Code'." CH05+
ls_fieldcat-seltext_l = 'Reason for Movement Cd'." CH05+
APPEND ls_fieldcat TO rt_fieldcat." CH05+
CLEAR ls_fieldcat." CH05+
pos = pos + 1." CH05+
ls_fieldcat-col_pos = pos." CH05+
ls_fieldcat-fieldname = 'GRTXT'." CH05+
ls_fieldcat-seltext_s = 'Reason Desc'." CH05+
ls_fieldcat-seltext_m = 'Reason Desc'." CH05+
ls_fieldcat-seltext_l = 'Reason for Movement Desc'." CH05+
APPEND ls_fieldcat TO rt_fieldcat." CH05+
CLEAR ls_fieldcat." CH05+
pos = pos + 1." CH06+
ls_fieldcat-col_pos = pos." CH06+
ls_fieldcat-fieldname = 'ISSDT'." CH06+
ls_fieldcat-seltext_s = 'Issuing Dt'." CH06+
ls_fieldcat-seltext_m = 'Issuing Date'." CH06+
ls_fieldcat-seltext_l = 'Issuing Date'." CH06+
APPEND ls_fieldcat TO rt_fieldcat." CH06+
CLEAR ls_fieldcat." CH06+
pos = pos + 1." CH06+
ls_fieldcat-col_pos = pos." CH06+
ls_fieldcat-fieldname = 'EKGRP'." CH06+
ls_fieldcat-seltext_s = 'Buyer'." CH06+
ls_fieldcat-seltext_m = 'Buyer Cd'." CH06+
ls_fieldcat-seltext_l = 'Buyer Cd'." CH06+
APPEND ls_fieldcat TO rt_fieldcat." CH06+
CLEAR ls_fieldcat." CH06+
pos = pos + 1." CH06+
ls_fieldcat-col_pos = pos." CH06+
ls_fieldcat-fieldname = 'EINDT'." CH06+
ls_fieldcat-seltext_s = 'Deliv Dt'." CH06+
ls_fieldcat-seltext_m = 'Delivery Dt'." CH06+
ls_fieldcat-seltext_l = 'Delivery Date'." CH06+
APPEND ls_fieldcat TO rt_fieldcat." CH06+
CLEAR ls_fieldcat." CH06+
ENDIF.
*Espanol
IF sy-langu = 'S'.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'WERKS'.
ls_fieldcat-seltext_s = 'Centro '.
ls_fieldcat-seltext_m = 'Centro'.
ls_fieldcat-seltext_l = 'Centro'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'LGORT'.
ls_fieldcat-seltext_s = 'Almacén'.
ls_fieldcat-seltext_m = 'Almacén'.
ls_fieldcat-seltext_l = 'Almacén'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'BWART'.
ls_fieldcat-seltext_s = 'Clase de movimiento'.
ls_fieldcat-seltext_m = 'Clase de movimiento'.
ls_fieldcat-seltext_l = 'Clase de movimiento'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'BTEXT'.
ls_fieldcat-seltext_s = 'Texto-movimiento'.
ls_fieldcat-seltext_m = 'Texto-movimiento'.
ls_fieldcat-seltext_l = 'Texto-movimiento'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'XBLNR'.
ls_fieldcat-seltext_s = 'Documento de referencia'.
ls_fieldcat-seltext_m = 'Documento de referencia'.
ls_fieldcat-seltext_l = 'Documento de referencia'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'BUDAT'.
ls_fieldcat-seltext_s = 'Fijación De la Fecha '.
ls_fieldcat-seltext_m = 'Fijación De la Fecha '.
ls_fieldcat-seltext_l = 'Fijación De la Fecha '.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'SOBKZ'.
ls_fieldcat-seltext_s = 'Stock especial'.
ls_fieldcat-seltext_m = 'Stock especial'.
ls_fieldcat-seltext_l = 'Stock especial'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'MBLNR'.
ls_fieldcat-seltext_s = 'Documento Material '.
ls_fieldcat-seltext_m = 'Documento Material '.
ls_fieldcat-seltext_l = 'Documento Material '.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'URZEI'.
ls_fieldcat-seltext_s = 'Artículo '.
ls_fieldcat-seltext_m = 'Artículo '.
ls_fieldcat-seltext_l = 'Artículo Material'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'MATNR'.
ls_fieldcat-seltext_s = 'Materiales'.
ls_fieldcat-seltext_m = 'Materiales'.
ls_fieldcat-seltext_l = 'Material Numner'.
ls_fieldcat-seltext_l = 'Materiales'." CH01+
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'MAKTX'.
ls_fieldcat-seltext_s = 'Descripción Material '.
ls_fieldcat-seltext_m = 'Descripción Material '.
ls_fieldcat-seltext_l = 'Descripción Material '.
ls_fieldcat-no_out = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'USNAM'.
ls_fieldcat-seltext_s = 'Usuario'.
ls_fieldcat-seltext_m = 'Creado Cerca'.
ls_fieldcat-seltext_l = 'Creado Cerca'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'CHARG'.
ls_fieldcat-seltext_s = 'Lote'.
ls_fieldcat-seltext_m = 'Lote'.
ls_fieldcat-seltext_l = 'Lote'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'KUNNR'.
ls_fieldcat-seltext_s = 'Cliente'.
ls_fieldcat-seltext_m = 'Cliente'.
ls_fieldcat-seltext_l = 'Cliente'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'SONAME'.
ls_fieldcat-seltext_s = 'Nombre de Cliente'.
ls_fieldcat-seltext_m = 'Nombre de Cliente'.
ls_fieldcat-seltext_l = 'Nombre de Cliente'.
ls_fieldcat-no_out = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'LIFNR'.
ls_fieldcat-seltext_s = 'Proveedor'.
ls_fieldcat-seltext_m = 'Proveedor'.
ls_fieldcat-seltext_l = 'Proveedor'..
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'VDNAME'.
ls_fieldcat-seltext_s = 'Nombre de Proveedor'.
ls_fieldcat-seltext_m = 'Nombre de Proveedor'.
ls_fieldcat-seltext_l = 'Nombre de Proveedor'.
ls_fieldcat-no_out = 'X'.
APPEND ls_fieldcat TO rt_fieldcat.
CLEAR ls_fieldcat.
pos = pos + 1.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldHi
If i can understand correctly, i guess you can acheive the same by commenting the below highlighted line. Please check for the same.
*& Form USER_COMMAND
FORM user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield.
CASE r_ucomm.
WHEN '&IC1'.
<b>*PERFORM display_sales_order USING r_ucomm</b>rs_selfield.
ENDCASE.
ENDFORM.
Also i guess you can use the same program, and place an authorization check for ppl to see or not see the later data.
Hope this can help you.
Kind Regards
Eswar -
Standard program modification logs
Hi,
Is there any way/transaction we can view or store logs from a modified standard program ?
Something like the version management in the abap editor but it must display all the standard program that has been modified .
The purpose is to easily keep track of all the changes, in case of system refresh/update.
Thank you.version management will report changes for ALL ABAP objects, including those in SAP namespace. is that what you're asking for?
-
Module pool program modifications
hi All,
i want to modify a screen out of three screens in a modulepool program.
Example:
there are 3 screens 100,200,300.
i want to modify in the 300 screen.
in the main program the 300 screen is called like
if sy-subrc = 0.
call screen t019w-winnr
starting at t019w-spvon t019w-zlvon
ending at t019w-spbis t019w-zlbis.
else.
i had already modified the changes required in 300 screen but not able to get the exact changes required.Hi,
I think the third is a modal dialogue box. That is not a problem to show changes you made.
Can you give me some clear idea about how the third screen has called?
Regards,
Dhanunjaya Reddy -
my code currently is this
public class Stars
// Prints a triangle shape using asterisks (stars)
public static void main (String[] args)
final int MAX_ROWS = 10;
//when the number of rows is less than 10 (the max number of rows) then add another row
for (int row = 1; row <= MAX_ROWS; row++)
//if the number of stars is greater than the rows, substract a star
for (int star = 10; star >= row; star--)
System.out.print ("*");
System.out.println();
}this gives an output that looks like this
now i also need to find a way to make codes so that the outputs are these
*(this next one is supposed to look like a diamond)
*Message was edited by:
Chiptar
Message was edited by:
Chiptarit just has to be hardcoded
and our teacher told us to use resources such as internet forums because she wants us to study and understand the code and not just waste time struggling with it. (dont ask why she didn't just give us the code then -_-") -
the following program modification has to be done such that it takes input from the application server and not from the presentation server.
*& Report ZFI_OPENITEM5 *
REPORT ZFI_OPENITEM5 no standard page heading .
DATA : BEGIN OF t_bdcdata OCCURS 0.
INCLUDE STRUCTURE bdcdata.
DATA : END OF t_bdcdata.
DATA: BEGIN OF t_msgtab OCCURS 0.
INCLUDE STRUCTURE bdcmsgcoll.
DATA: END OF t_msgtab.
DATA: BEGIN OF ITAB OCCURS 0,
BLDAT LIKE BKPF-BLDAT,
BLART LIKE BKPF-BLART,
BUKRS LIKE BKPF-BUKRS,
BUDAT LIKE BKPF-BUDAT,
MONAT LIKE BKPF-MONAT,
WAERS LIKE BKPF-WAERS,
NEWBS LIKE RF05A-NEWBS,
NEWKO LIKE RF05A-NEWKO,
WRBTR LIKE BSEG-WRBTR,
ZTERM LIKE BSEG-ZTERM,
ZFBDT LIKE BSEG-ZFBDT,
VALUT LIKE BSEG-VALUT,
PRCTR LIKE COBL-PRCTR,
END OF ITAB.
End generated data section ***
uploading the file
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = 'C:\BDC1.txt'
filetype = 'ASC'
has_field_separator = 'X'
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
CHECK_BOM = ' '
IMPORTING
FILELENGTH =
HEADER =
TABLES
data_tab = 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.
LOOP AT ITAB.
PERFORM bdc_dynpro USING 'SAPMSSY0' '0120'.
PERFORM bdc_field USING 'BDC_CURSOR' '09/65'.
PERFORM bdc_field USING 'BDC_OKCODE' '=PICK'.
PERFORM bdc_dynpro USING 'SAPMF05A' '100'.
PERFORM bdc_field USING 'BDC_CURSOR' 'RF05A-NEWKO'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
PERFORM bdc_field USING 'BKPF-BLDAT' ITAB-BLDAT.
PERFORM bdc_field USING 'BKPF-BLART' ITAB-BLART.
PERFORM bdc_field USING 'BKPF-BUKRS' ITAB-BUKRS.
PERFORM bdc_field USING 'BKPF-BUDAT' ITAB-BUDAT.
PERFORM bdc_field USING 'BKPF-MONAT' ITAB-MONAT.
PERFORM bdc_field USING 'BKPF-WAERS' ITAB-WAERS.
PERFORM bdc_field USING 'RF05A-NEWBS' ITAB-NEWBS.
PERFORM bdc_field USING 'RF05A-NEWKO' ITAB-NEWKO.
PERFORM bdc_dynpro USING 'SAPMF05A' '302'.
PERFORM bdc_field USING 'BDC_CURSOR' 'BSEG-ZFBDT'.
PERFORM bdc_field USING 'BDC_OKCODE' '=ZK'.
PERFORM bdc_field USING 'BSEG-WRBTR' ITAB-WRBTR.
PERFORM bdc_field USING 'BSEG-ZTERM' ITAB-ZTERM.
PERFORM bdc_field USING 'BSEG-ZFBDT' ITAB-ZFBDT.
PERFORM bdc_dynpro USING 'SAPMSSY0' '0120'.
PERFORM bdc_field USING 'BDC_CURSOR' '04/05'.
PERFORM bdc_field USING 'BDC_OKCODE' '=PICK'.
PERFORM bdc_dynpro USING 'SAPMF05A' '0332'.
PERFORM bdc_field USING 'BDC_CURSOR' 'RF05A-NEWKO'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
PERFORM bdc_field USING 'RF05A-NEWBS' ITAB-NEWBS.
PERFORM bdc_field USING 'RF05A-NEWKO' ITAB-NEWKO.
PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING 'BDC_CURSOR' 'BSEG-WRBTR'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
PERFORM bdc_field USING 'BSEG-WRBTR' ITAB-WRBTR.
PERFORM bdc_field USING 'BSEG-VALUT' ITAB-VALUT.
PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
PERFORM bdc_field USING 'BDC_CURSOR' 'COBL-PRCTR'.
PERFORM bdc_field USING 'BDC_OKCODE' '=ENTE'.
PERFORM bdc_field USING 'COBL-PRCTR' ITAB-PRCTR.
PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING 'BDC_CURSOR' 'BSEG-WRBTR'.
PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.
PERFORM bdc_field USING 'BSEG-WRBTR' ITAB-WRBTR.
PERFORM bdc_field USING 'BSEG-VALUT' ITAB-VALUT.
PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
PERFORM bdc_field USING 'BDC_CURSOR' 'COBL-PRCTR'.
PERFORM bdc_field USING 'BDC_OKCODE' '=ENTE'.
PERFORM bdc_field USING 'COBL-PRCTR' ITAB-PRCTR.
PERFORM bdc_transaction USING 'F-02'.
ENDLOOP.
PERFORM display_msg.
bdc_dynpro *
FORM bdc_dynpro USING program dynpro.
t_bdcdata-program = program.
t_bdcdata-dynpro = dynpro.
t_bdcdata-dynbegin = 'X'.
APPEND t_bdcdata.
CLEAR t_bdcdata.
ENDFORM. "BDC_DYNPRO
bdc_field *
FORM bdc_field USING fnam fval.
t_bdcdata-fnam = fnam.
t_bdcdata-fval = fval.
APPEND t_bdcdata.
CLEAR t_bdcdata.
ENDFORM. "BDC_FIELD
*& Form bdc_transaction
FORM bdc_transaction USING trans.
CALL TRANSACTION trans
USING t_bdcdata
MODE 'E'
MESSAGES INTO t_msgtab.
ENDFORM. " bdc_transaction
*& Form display_msg
form display_msg .
LOOP AT t_msgtab.
WRITE: / t_msgtab-msgtyp,
t_msgtab-msgv1.
ENDLOOP.
ENDFORM. " display_msgHi ,
To read data from the application server you need to use the
OPEN DATASET statement .
Please check the help on it and try to implemnet in your program in place of GUI_UPLOAD function.
Regards
Arun -
List of modifiable programs & reports in a productive system
Hi everyone,
I am trying to determine what objects are modifiable in a system set as productive. I have identified about 50 users who are assigned authorization object S_DEVELOP (activity=02 & auth group=DEBUG) in the production system. However the SAP consultant says that this is not an issue because program modification is not allowed in a system which is set as productive. This makes sense but is it true?
Is there a report or a table which can list system objects that are currently modifiable? From another forum a user suggested I check table OBJH. This was an excellent tip, however OBJH does not list ABAP programs or reports - just tables, views, etc. Any help will be greatly appreciated.
Thanks,
MartinHi Martin,
These settings are done at client level. Each client can be configured with below options
We can also view client details from SALE->sending and receiving systems->logical systems->assign client to logical system.
<b>Client Role</b>
Customizing
Test
Production
Demo etc..
<b>Changes and Transport for client-specific objects</b>
options are :
Changes without automatic recording
Automatic recording of changes
No changes allowed
Changes w/o automatic recording, no transport allowed
<b>Cross-Client Objects changes</b>
Options are :
Changes to repository and cross-client customizing allowed.
No changes to cross-client customizing objects
No changes to repository objects
No changes to repository and cross-client customzing objs.
And I don't think production system/client is allowed to do any changes to reports or dictionary objects. These must have to come from development system via quality system to production.
Regards
Manohar -
Java Programming @ SAP - the poor cousin?
Hi!
Recently I' ve started a kind of poll in the Java forums asking if someone knew any enhancement possibilities for java-side development at SAP mentioning the ABAP customer exits, BADIs, customer includes and enhancement spots as example.
Guess how many answer I received - from WDJ, Java Programming, NWDI and NW Java from: None! All the gurus who usually bubble over with wisdom remained wondrous silent. I also run over help pages searching for some hints regarding this - in my opinion fundamental - questions, with the same result.
Has really nobody at SAP spent a thought about one of the most precious features SAP offers its customers - the possibility to enhance delivered standard-programs and thereby adapt them to their needs without modification?
How are we as Java programmers then supposed to stand the mistrustful glances of our ABAP collegues who wonder why there has been so much noise about this Java thing in the recent years. Thinking about the disadvantages a developer working with Java at SAP has to bear compared to his ABAP collegue - no direct data access, no comfortable debugging possibilities, lots of standalone tools with strange UIs (SDM Remote GUI, Visual Admin - only to name the least glorious ones - he to manage and - last, not least - no chance to enhance SAP Standard programs modification free I have to agree upon one ABAPers opinion on Java: "The hype is over!".
Regards from a very pessimistic Java Developer
Thomas
PS: Does anybody know a way to unbureaucraticly swap a Java certification against an ABAP one?I get the question - should I do my development in ABAP or Java - quite often. My answer has become "It Depends." I getting pretty good at those ambiguous consulting answers, aren't I.
In all seriousness I really do think the answer depends upon several things. As a company or development group you should analyze the skills that you already have in house. As you have seen the two development environments are quite close. The advantages of one over the other will continue to vary over time. ABAP will add nice features from Java and vise versa. In the end it is more important that companies leverage their skill sets and existing infrastructure (Software Lifecycle Landscape) to their maximum.
If you are already a java shop then it makes sense to continue down that development path because your developers will still be very efficient even if they have to access ERP and other SAP application logic and data via RFC or Web Services.
On the other hand, ABAP certainly isn't as dead as some people claimed it would be by now. Thanks to Web Services ABAP has more flexibility than ever before. It isn't nearly the closed box that it used to be. Also the workbench team isn't going to stop innovating either.
The next question I get is what does SAP do internally when deciding on a language to use. To a large extent they use the same criteria - what existing skill sets do I have to work with. They also look at where the data is located.
That means products like Portal aren't about to change from Java to ABAP. On the other hand ERP suite development is still heavily ABAP. The new UIs coming from ERP will primarily be done in Web Dynpro ABAP.
Even in some newer products that haven't been released yet - the UI was done in Java or Visual Composer and the backend business logic was done in ABAP. It is all about taking advantage of the unique strengths of each environment and the skill sets you have in each.
In the end I don't think Java is the poor cousin any more than ABAP is going to die. Look at NetWeaver CE and the huge investment SAP has made on top of Java Development there. At the same time our investment in Java has not come at the cost of the ABAP environment. Innovations will continue to take place there as well. I can assure you that within SAP it is the hope and goal to have two top notch development environments within NetWeaver.
Now let me share a little story with you. My background is obviously ABAP and I doubt I will ever lose my particular passion for the environment. At the same time I have done a fair bit of NetWeaver Java development in the last year and half or so. I'm not a super deep expert, but I can hold my own.
I recently had a requirement to build an MDM Application. I only had two days in which to build it. My choices were to use the Java API or the ABAP API. They are quite similar and both meet all my interface requirements. I was building a Web Dynpro UI, so the end user wouldn't be able to tell the difference. Interfacing capabilities being the same and UI output being identical - my decision came down to the environment where I personally could be most efficient. I could have completed the project in either environment. But because I knew the ABAP Programming Environment (you know the stuff that goes beyond the basic syntax - the real knowledge that lets you squeeze every last drop of performance out of an application) so well I personally could build the best application in the shorter time in ABAP.
Now someone with a different background might well have taken the Java path and done just as well. This is the advantage that SAP provides by continuing to support both ABAP and Java development. Does every feature and function of both environements line up exactly - of course not. I'm sure they never will. But do these differences keep experts in either environment from being able to make any application do amazing things - certainly not. Personally I feel less constrained in either ABAP or Java today than I have ever felt programming before. -
Hi Experts,
I am working with an object stating " SAP Std Program Modification" . I need to add four fields for the screen and i need to update the table as well to run the particular transaction effectively.
When i am searching for the exits in the package i did not find any exit [ user exit, screen exit, BADI etc..] for the transaction. So Kindly come up with different types of ideas to meet this requirement.
Folks its a kind of urgency... so revert asap... thank you....
Thanks in Advance..
PramodHi satish,
I am workig with EWM [ Extended warehouse Management ] . in that i am adding fileds for /SCWM/WAVE Transaction [ Wave Management].
Thank you for the response..
awaiting for u r further response...
Pramod -
Is there special programming needed to allow JRE applications to be cluster
We have a JRE application runing on tomcat. The vendor is claiming that they can cluster the application just by making some configuration changes.
My question is, can any JRE applicationbe clustered out of the box by just placing in a cluster environment? Or is there also special programming modifications needed so that the JRE application knows it's on a cluster and how to use it?A web-app can be clustered provided it meets certain criteria. 'Any JRE application' covers a lot more ground than just web-apps.
Basically the answer to your question is 'no'. -
Modification bracket structure is inconsistent
While doing SPAU getting this error in a standrad program "Modification bracket structure is inconsistent" , i know this error comes when there is any open bracket in the program , i know which bracket is open but the problem is there is no spce between the last closed bracket and the bracket which is inconsistent. even when i try to INSERT few lines of code it is not allowing and giving this error again, can anyone suggest what can be done to overcome this.
Sometimes the caractères ` make this problem (a lot of time when you have a Mac)
I see also a day, I have to delete the programme, to recreate it with the same text (COPY / PAST) to solve the problem
regards
Fred -
Smartform -Network printer format Issue
Hi,
I can print fine using my YPCC default printer.
But When i do through network printer FORMAT is getting Disturbed( Values are printing in next line).How can we handle this? Do we need to do some driver program modifications?
Here are the parameters in Driver program
CALL FUNCTION fm_name
EXPORTING
archive_index = toa_dara
archive_index_tab = arc_ind_tab
archive_parameters = arc_params
control_parameters = ls_control_param
mail_appl_obj = ls_recipient
mail_recipient = ls_recipient
mail_sender = ls_sender
output_options = ls_composer_param
user_settings = space
wa_itab = wa_header
IMPORTING
document_output_info = document_output_info
job_output_info = job_output_info
job_output_options = job_output_options
TABLES
wa_dep = item_itab
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4.
IF sy-subrc <> 0.
WRITE: / 'ERROR in passing vars to the smartforms '.
ENDIF.
ls_composer_param-tdnewid = space.
ls_control_param-no_dialog = 'X'.YOu need to modify the smartform not the driver program to print all lines the way you want by changing font size, reducing line length...etc..etc..
It's printing fine on the default PC printer, because, it uses windows printer driver to render the output, where as SAP network printer uses SAP printer driver to generate the printer commands, there's always difference in the output between the two drivers.
Regards
Sridhar -
Can U set breakpoint within a batch job and look at variables?
Hello friends,
I am trying to solve a problem that occurs within a program / transaction which can only be executed in background. The transaction in question is FPCOPARA and apparently this program cannot be executed in foreground.
If I understand well, we cannot set breakpoints within a background job and as a result we cannot inspect variable etc. during job execution. So the question is how to achieve the same goal within a batch job? How did you do it? As this is a standard SAP transacrtion, no program modification can be applied.
Your help is greatly appreciated.Hi......
After u have executed ur batch job..
go to sm37 >>select ur job using checkbox>>enter 'JDBG' in transaction box and press enter
now debugger will start ..initial it will go through system code..after after a while the debugger will reach to your code and den you can debug the remaining report....
all the best
regards
vivek -
Problem in the commission value
hi
can anybody help me on the below problem:
1)
Commission Agreements in Invoices:To enable Commission Agreements (Condition Type ZCA1) values to be copied from Sales Orders into the associated Invoices and Commission Credit Note.Currently Invoices reselect valid Commission Agreements upon invoice creation, i.e. Values may have changed after Sales Order creation.
2) Commissions Agreements in Sales Orders:To enable Commission Agreements (Condition Type ZCA1) values to be changed in Quotation, i.e. override Commission Agreement, by authorised users:Option 1: Bespoke transaction.Option 2: Release Strategy.Option 3: Amend manually Manual approval and exception reporting.Note If this cannot be restricted in SAP a robust manual process must be implemented
3) Commission Credit Note Financial Posting to Sales Ledger1 - Sales invoice automatically creates a Commission Credit Note.2 - Value is posted to Suspense Account GL534900 (Automatic)3 - Value is then transferred to relevant Sales Ledger Commission account (Automatic)Step 3 often fails and may be related to dates / period end closing, there is also an issue with Customer credit notes which create commission debit notes
4) Program Modification Re-create the link between the original invoice and the commission credit noteThe creation of a Sales Invoice automatically creates a PartRebSettl.Request Order (ZB3).Bespoke table ZVCOMMLINK is updated cross referencing the:· Billing Document.· Sales Document.· Accounting Document.This table is used by ABAP Query ZAQ_FI_0042.Action 1: Identify historically data to populate bespoke table.Action 2: Update bespoke table with historical data.
please help me on the above problem.i have checked in the copy control in which they are not maintaining the item category TAN in the sales document from sales document to invoice.but i dont know how then its coming in invoice if its not maintained in the copy control.Also in the automatic creation of credit memo i have to create a link between credit memo and the invoice generated
waiting for a quick reply
regards
vikasHi Mano,
I dont understand where you are giving the condition maximum value in VK11. Can you please tell me the exact place where you are giving that in VK11. Because as for my knowledge we will give that at some other place. Secondly you told that your condition is working fine with quantity but not with value. Can you explain me that in detail. Anyway just check the calculation type in condition record or in condition type controls.
Just answer the above, I will tell you the solution.
Rama Rao -
LSMW accept file from logical path?
Dear All,
Can LSMW designs for conversions accept file from logical path?
The requirement is during actual conversion execution -the conversion team can store files anywhere they want, configure logical file names/paths and use our LSMWs without needing program modifications.
Kindly let me know.
Thanks in Advance
RanjanHai KCR
Using Tcode MM01 -- Maintain the source fields are
1) mara-amtnr char(18)
2) mara-mbrsh char(1)
3) mara-mtart char(4)
4) makt-maktx char(40)
5) mara-meins char(3)
the flate file format is like this as follows
MAT991,C,COUP,Srinivas material01,Kg
MAT992,C,COUP,Srinivas material02,Kg
AMT993,C,COUP,Srinivas material03,Kg
MAT994,C,COUP,Srinivas material04,Kg
MAT995,C,COUP,Srinivas material05,Kg
goto Tcode LSMW
give Project Name
Subproject Name
object Name
Press Enter -
Press Execute Button
It gives 13 radio-Button Options
do the following 13 steps as follows
1) select radio-Button 1 and execute
Maintain Object Attributes
select Standard Batch/Direct Input
give Object -- 0020
Method -- 0000
save & Come Back
2) select radio-Button 2 and execute
Maintain Source Structures
select the source structure and got to click on create button
give source structure name & Description
save & Come Back
3) select radio-Button 3 and execute
Maintain Source Fields
select the source structure and click on create button
give
first field
field name matnr
Field Label material Number
Field Length 18
Field Type C
Second field
field name mbrsh
Field Label Industrial Sector
Field Length 1
Field Type C
Third field
field name mtart
Field Label material type
Field Length 4
Field Type C
fourth field
field name maktx
Field Label material description
Field Length 40
Field Type C
fifth field
field name meins
Field Label base unit of measurement
Field Length 3
Field Type C
save & come back
4) select radio-Button 4 and execute
Maintain Structure Relations
go to blue lines
select first blue line and click on create relationship button
select Second blue line and click on create relationship button
select Third blue line and click on create relationship button
save & come back
5) select radio-Button 5 and execute
Maintain Field Mapping and Conversion Rules
Select the Tcode and click on Rule button there you will select constant
and press continue button
give Transaction Code : MM01 and press Enter
after that
1) select MATNR field click on Source filed(this is the field mapping) select MATNR and press Enter
2) select MBRSH field click on Source filed(this is the field mapping) select MBRSH and press Enter
3) select MTART field click on Source filed(this is the field mapping) select MTART and press Enter
4) select MAKTX field click on Source filed(this is the field mapping) select MAKTX and press Enter
5) select MEINS field click on Source filed(this is the field mapping) select MEINS and press Enter
finally
save & come back
6) select radio-Button 6 and execute
Maintain Fixed Values, Translations, User-Defined Routines
Create FIXED VALUE Name & Description as MM01
Create Translations Name & Description as MM01
Create User-Defined Routines Name & Description as MM01
after that delete all the above three just created in the 6th step
FIXED VALUE --MM01
Translations --MM01
User-Defined Routines --MM01
come back
7) select radio-Button 7 and execute
Specify Files
select On the PC (Frontend) -- and click on Create button(f5)
give the path of the file like "c:\material_data.txt"
description : -
separators as select comma radiao- button
and press enter save & come back
8) select radio-Button 8 and execute
Assign Files
Save & come back
9) select radio-Button 9 and execute
Read Files
Execute
come back
come back
10) select radio-Button 10 and execute
Display Imported Data
Execute and press enter
come back
Come back
11) select radio-Button 11 and execute
Convert Data
Execute
come back
Come back
12) select radio-Button 12 and execute
Display Converted Data
Execute & come back
13) select radio-Button 13 and execute
Start Direct Input Program
select the Program
select continue button
go with via physical file
give the lock mode as 'E'
and execute
Thanks & regards
Sreenivasulu P
Maybe you are looking for
-
Cancel download method when the user cancel the download file
I have a method that download a file ("downloadLog_action()")when the user click over the comandlink component and the dialog box is opening to save the file, but how to know that the user canceled the download file to cancel all accions. This is the
-
Set the default spellcheck language to English (Australian)
When I start the browser, the spell check dictionary is always English (US) I have to change it manually every time after opening the browser. In the preferences for Display Language, I have [en-au], then [en] Has been this way for many versions - cu
-
Hi, Please could I have some expert view of where I might be going wrong with this config. I have setup a parserver view as follows: parser view testparserview secret 5 $1$KBuN$yqdkAM.2w62qoRaOq7UQU0 commands configure include access-list commands ex
-
Very First letter typed in safari does not show
I open a website and type my user ID and other info. The very first key I type does not work, Safari does not respond to the key stroke and displays nothing. If I keep pressing a key longer Safari responds and displays letters (aaaaaa) instead of a l
-
Whenever I open the application "Grapher", I get the following error: Font Conflict Several characters cannot be displayed correctly because of a conflict with the font "Symbol". I have the symbol font, but I don't know how to resolve this conflict.