ORDERS IDOC and Error Notification Workitem in Customer Exit
Within customer exit EXIT_SAPLEINM_011 (ZXM06U33) I'm raising an exception exactly as described in note 132905. Here's my coding:
elseif l_ebeln is initial.
MESSAGE ID 'ZPIIODC'
TYPE 'm'
NUMBER '001'
WITH dekko-ebeln
RAISING ERROR_MESSAGE_RECEIVED.
endif.
endif.
An error message is being posted to the NAST log and I can see it in the purchase order from which the IDOC was triggered however no notification workitem is being produced (while note 132905 says it actually will). Anyone got an idea? Thanks in advance!!!
Cheers,
Andy
Hi Andy,
* If sales order item was not found, don't send IDoc
IF l_ebeln is initial.
sy-msgid = 'ZPIIODC'.
sy-msgty = 'E'.
sy-msgno = '001'.
CALL FUNCTION 'MESSAGE_TEXT_BUILD'
EXPORTING
msgid = 'ZPIIODC'
msgnr = '001'
msgv1 = DEKKO-EBELN
IMPORTING
message_text_output = sy-msgv1.
RAISE data_not_relevant_for_sending.
Regards,
Prabhudas
Similar Messages
-
Blogs and How-to Guide on Customer-exit
Hi All,
There are many threads on the same.. But all points to help.sap or some other brief Document.
Could someone please give the links of some detail step by step blog on Customer-Exit( either Function Module or Screen or Menu Exit) or some How-to Guide for the same ?Hi,
check this useful links:
[Enhancements and Modifications|http://wiki.sdn.sap.com/wiki/display/ABAP/EnhancementsandModifications-BADI%2CEnhancementFramework%2CUserExits%2C+BTE]
[Customer Exit (CMOD)|https://wiki.sdn.sap.com/wiki/display/ABAP/CustomerExits(CMOD)]
[Blog:How many exit routines are active in your SAP ERP system?|/people/andrea.olivieri/blog/2009/05/22/how-many-exit-routines-are-active-in-your-sap-erp-system]
Hope this help.
Ciao.
Andrea -
Purchase Order IDoc Output Error
I'm having a problem creating IDoc output for a vender PO. I have the vender setup in WE20 with outbound parameters:
Partn.funct. VN
Message Type: ORDERS
Basic Type: ORDERS05
Application: EF
Message Type: NEU
Process Code: ME10
In the PO Output conditions I'm using the Doc.type/Purch.Org/CoCode/Vender key.
When I create a PO and go in to the message screen Output type NEU appears, Medium: EDI, PartFunc: VN, Partner: vend#, Lang: EN <b>When I try and save I receive an error message indicating that I can not enter a partner function for output NEU.</b>
I think I have everything configured correctly. Any suggestions on how to resolve would be appreciated.
Thanks!Check the configuration of Message Control using transaction NACE.
Also check the Condition Records you have created for the output type.
For details refer to
http://help.sap.com/saphelp_erp2005/helpdata/en/c8/19887b43b111d1896f0000e8322d00/frameset.htm
Also, try to create a test idoc using the transaction WE19.
Hope this helps. -
Problems gifting playlist - order randomized and Error 1008
I can purchase music fine, so I know my account is indeed working.
But when I try to gift a playlist via the iTunes Store, 2 errors keep occuring:
1. Track order gets randomized. (Not that it'd matter, but I don't have shuffle checked.) Each time I try clicking the "Give Playlist" button, the list opens in the Store in a different random track order, numbered incorrectly. It's only an issue because these tracks need to play in order.
2. More important, I can't finalize the purchase. I get all the way to the last screen, after entering my password, but when I finally click "Buy Gift" I get this error popup:
"*We could not complete your iTunes Store request. An unknown error occurred (1008). There was an error in the iTunes Store.* Please try again later."
This has been happening all day -- even though I can purchase songs for myself just fine.
What should I do? This is time sensitive. I'm doing this through iTunes rather than burning a CD and giving it away because I feel strongly about paying for music. Bummer not to have any info on this.
Thanks for any help!Well at least we're not alone. I just sent a support request to Apple. Not sure if it makes any difference, but maybe if everyone does it'd be of use? http://www.apple.com/support/itunes/contact.html?form=el&topic=Express%20Lane%20 inquiry
BTW, does anyone know why the playlist order gets randomly changed when I try to gift a playlist? It's confounding, I keep having to cancel and try again until, randomly, the order is right -- which can take quite a while with 5 tracks! -
BAPI/FM Help Needed for PM Work Order Update and Notification create
Hi,
I am using BAPI - BAPI_ALM_ORDER_MAINTAIN to update the work order details and create notifications for the object list but i am getting errors in doing that.
IWO_BAPI 203 -Changing the execution factor in the BAPI is not supported
And i have to create notifications to each object in the object list. This BAPI is not supporting that.
So i used another BAPI BAPI_ALM_NOTIF_CREATE to create notification and passed the order number , counter etc to it but in the order it is creating a new row for that equipment and linking the notification to it.
Need some help on these.Dear
1. If you want a Notification mandatory to be created for Order using IW31 you can once make this happen by User Status in Order , i would suggest if you are doing implementation better Use Order Types which has got Notification integrated in it .
Check Order type PM05 in Ideas server you have PM05 Order with notification fields integrated , which created notification in Background when order is Created or released.
2.For Work Order B --> Notification A , Not Allowing I donot have any idea check whether is there any User exit from experts or ask ur Abaper
Regards,
Edited by: Srinivas Narayana Gowda on Jun 11, 2009 1:10 PM -
Retrive open order and open delivery value x custome
Hi,
how can i obtain a list of open order value and open delivery value per customer?
10x
byeCheck the following code which give details of pending orders & values and it can be modified as per ur requirement.
REPORT ZPEND_ORDER no standard page heading line-size 255.
*& Purpose : Details of Sale order having pending deliveries *
*& ( For Rake order handling ) *
tables : vbak, vbap, likp, lips, kna1, vbuk, vbpa, vepvg, vbfa, vbup.
data : pend_qty like vbap-kwmeng,
dlv_qty like vbap-kwmeng,
ord_qty like vbap-kwmeng.
data: begin of itab_vbak occurs 0,
vbeln like vbak-vbeln, "sales order no
audat like vbak-audat, " created date
auart like vbak-auart, " Sales Document Type
vkorg like vbak-vkorg, "Sales Organization
vtweg like vbak-vtweg, " distribution channel
spart like vbak-spart, " Division
vkgrp like vbak-vkgrp, " Sales group
vkbur like vbak-vkbur, " Sales office
kunnr like vbak-kunnr, " sold to party
kunag like vbak-kunnr, " ship to party
cust like vbak-kunnr, " sold to party
ship like kna1-name1, " ship to party
city like kna1-ort01, " ship to party location
deliv like likp-vbeln, " delivery
matnr like vbap-matnr,
arktx like vbap-arktx, " mat description
kwmeng like vbap-kwmeng,
kbmeng like vbap-kbmeng,
fkrel like vbap-matnr,
vstel like vbap-vstel,
route like vbap-route,
chln_no like likp-xabln,
grn_no like likp-bolnr,
truck_no like likp-traid,
dlv_dt like vbfa-erdat, "dlvy date
ord_qty like vbap-kwmeng,
dlvd_qty like vbap-kwmeng,
pend_qty like vbap-kwmeng,
kzwi5 like vbap-kzwi5,
posnr like vbap-posnr,
end of itab_vbak.
data posnr like vbap-posnr.
*FOR ALV DISPLAY
type-pools: slis.
constants: formname_top_of_page type slis_formname value 'TOP_OF_PAGE'.
*Data Decelararion for alv display
data: i_fieldtab type slis_t_fieldcat_alv,
i_heading type slis_t_listheader,
i_layout type slis_layout_alv,
i_sort type slis_t_sortinfo_alv,
i_print type slis_print_alv,
i_events type slis_t_event,
i_repname like sy-repid,
f2code like sy-ucomm value '&ETA',
i_save(1) type c,
i_exit(1) type c,
i_variant like disvariant,
h_text(50).
start-of-selection.
selection-screen skip 1.
selection-screen begin of block v1 with frame title text-001.
selection-screen skip 1.
select-options:
ord_no for vepvg-vbeln,
audat for vbak-audat obligatory,
matnr for vbap-matnr,
spart for vbap-spart obligatory,
vstel for vepvg-vstel obligatory,
sale_org for vbak-vkorg obligatory,
sale_off for vbak-vkbur.
selection-screen skip 1.
check box for ALV display
parameters p_alv as checkbox.
selection-screen end of block v1.
selection-screen skip 1.
data: ftab(72) occurs 5 with header line.
refresh ftab.
ftab = 'VBELN'. append ftab.
refresh itab_vbak.
initialization.
i_repname = sy-repid.
start-of-selection.
select vbeln audat vkorg vtweg spart vkbur kunnr from vbak
into
(itab_vbak-vbeln, itab_vbak-audat,
vbak-vkorg, vbak-vtweg, vbak-spart,
itab_vbak-vkbur, itab_vbak-kunnr)
where vbeln in ord_no
and audat in audat
and vbtyp = 'C'
and vkorg in sale_org
and spart in spart
and vkbur in sale_off.
if sy-subrc = 0.
select posnr kwmeng kbmeng matnr arktx "added for mat description
fkrel vstel route kzwi5 spart
from vbap into corresponding fields of itab_vbak
where vbeln = itab_vbak-vbeln .
check ( itab_vbak-fkrel = 'A' or "Delivery-related billing document
itab_vbak-fkrel = 'D' ) "Relevant for pro forma
and itab_vbak-vstel in vstel
and itab_vbak-matnr in matnr
and itab_vbak-spart in spart.
select single * from vbup where vbeln = itab_vbak-vbeln
and posnr = itab_vbak-posnr.
check vbup-gbsta ne 'C'.
dlv_qty = 0.
select single kunnr from vbpa into itab_vbak-kunnr
where vbeln = itab_vbak-vbeln
and parvw = 'WE'.
select single name1 ort01 from kna1 into
(itab_vbak-cust, itab_vbak-city)
where kunnr = itab_vbak-kunnr.
in case of partially processed sale order get delivery details
clear : dlv_qty, itab_vbak-dlv_dt, itab_vbak-dlvd_qty, itab_vbak-chln_no,
itab_vbak-grn_no, itab_vbak-truck_no.
if vbup-gbsta eq 'B'. "partially processed
dlv_qty = 0.
get details from delivery
select vbfavbeln vbfarfmng vbfavbtyp_n vbfaerdat
into (vbfa-vbeln, vbfa-rfmng, vbfa-vbtyp_n, vbfa-erdat)
from vbfa
where vbelv = itab_vbak-vbeln
and posnv = itab_vbak-posnr.
check vbfa-vbtyp_n = 'J'.
clear : dlv_qty, itab_vbak-dlv_dt, itab_vbak-dlvd_qty, itab_vbak-chln_no,
itab_vbak-grn_no, itab_vbak-truck_no.
select single erdat xabln bolnr traid kunag
into (itab_vbak-dlv_dt, itab_vbak-chln_no, itab_vbak-grn_no,
itab_vbak-truck_no, itab_vbak-kunag)
from likp
where vbeln = vbfa-vbeln.
if sy-subrc = 0.
dlv_qty = dlv_qty + vbfa-rfmng.
itab_vbak-dlv_dt = vbfa-erdat.
itab_vbak-dlvd_qty = dlv_qty.
itab_vbak-deliv = vbfa-vbeln.
endif.
append itab_vbak.
endselect.
elseif vbup-gbsta eq 'A'.
for unprocessed sale order
ship to party details
itab_vbak-kunag = itab_vbak-kunnr.
itab_vbak-ship = itab_vbak-cust.
append itab_vbak.
endif.
endselect.
endif.
clear itab_vbak.
endselect.
loop at itab_vbak.
clear with change in document / item no
on change of itab_vbak-vbeln or itab_vbak-posnr.
clear: dlv_qty,ord_qty,pend_qty.
endon.
at new posnr.
In case full qty not delivered
if itab_vbak-kwmeng > itab_vbak-dlvd_qty.
select single vbpa~kunnr into vbpa-kunnr
from vbpa
where vbeln = itab_vbak-vbeln
and posnr = itab_vbak-posnr
and parvw = 'WE'.
if sy-subrc eq 0.
itab_vbak-kunag = vbpa-kunnr.
select single name1 ort01 from kna1 into
(itab_vbak-ship, itab_vbak-city)
where kunnr = itab_vbak-kunag.
if sy-subrc ne 0.
select single vbpa~kunnr into vbpa-kunnr
from vbpa
where vbeln = itab_vbak-vbeln
and parvw = 'WE'.
itab_vbak-kunag = vbpa-kunnr.
if sy-subrc ne 0 and p_alv ne 'X'.
write :/ 'vbpadetls' , itab_vbak-vbeln, itab_vbak-posnr, itab_vbak-vbeln.
endif.
endif.
endif.
endif.
itab_vbak-ord_qty = itab_vbak-kwmeng.
Delivered Qty & Pending qty
dlv_qty = dlv_qty + itab_vbak-dlvd_qty.
itab_vbak-pend_qty = itab_vbak-kwmeng - dlv_qty.
modify itab_vbak transporting kunag ship city dlvd_qty ord_qty pend_qty .
endat.
endloop.
end-of-selection.
sort itab_vbak by vbeln posnr audat kunnr matnr.
if p_alv ne 'X'.
loop at itab_vbak.
select single kna1name1 kna1ort01
into
(kna1-name1, kna1-ort01)
from kna1
where kunnr = itab_vbak-kunnr.
pend_qty = itab_vbak-ord_qty - itab_vbak-dlvd_qty.
format color col_normal.
write : /01(10) itab_vbak-vbeln,
12(10) itab_vbak-audat,
24(8) itab_vbak-kunag no-zero,
34(6) itab_vbak-posnr no-zero,
42(10) itab_vbak-matnr no-zero,
54(15) itab_vbak-arktx,
72(25) itab_vbak-ship,
100(15) itab_vbak-city,
118(8) itab_vbak-ord_qty,
128(10) itab_vbak-route,
140(10) itab_vbak-dlv_dt,
152(10) itab_vbak-dlvd_qty,
164(10) itab_vbak-chln_no,
176(10) itab_vbak-grn_no,
188(10) itab_vbak-truck_no,
200(10) itab_vbak-pend_qty,
218(15) itab_vbak-kzwi5 left-justified.
format reset.
at end of audat.
sum.
pend_qty = itab_vbak-ord_qty - itab_vbak-dlvd_qty.
format color col_background.
write: /118(8) itab_vbak-ord_qty,
152(10) itab_vbak-dlvd_qty,
200(10) pend_qty,
218 itab_vbak-kzwi5 left-justified.
format reset.
endat.
at last.
sum.
pend_qty = itab_vbak-ord_qty - itab_vbak-dlvd_qty.
format color col_total.
write : /5 'Grand Total : '.
write: /118(8) itab_vbak-ord_qty,
152(10) itab_vbak-dlvd_qty,
200(10) pend_qty,
218 itab_vbak-kzwi5 left-justified.
format reset.
endat.
endloop.
else.
for ALV Display
i_repname = sy-repid.
perform fieldcat using i_fieldtab[].
perform eventtab using i_events[].
perform comment using i_heading[].
perform call_alv.
perform build_layout using i_layout.
endif.
top-of-page.
if p_alv ne 'X'.
format color col_heading.
write: /01 'Ord No',
12 'Ord Date',
24 'Sold to Party',
34 'Item No',
42 'Mat No',
54 'Mat Descp',
72 'Ship to Party',
100 'City',
118 'Qty',
128 'Route',
140 'Dlv Date',
152 'Dlv Qty',
164 'Challan No',
176 'GRN No',
188 'Truck No',
200 'Pend Qty',
218 'Total Value'.
format reset.
endif.
*& Form fieldcat
text
-->P_I_FIELDTAB[] text
form fieldcat using p_fieldtab type slis_t_fieldcat_alv.
data: l_fieldcat type slis_fieldcat_alv.
clear l_fieldcat.
l_fieldcat-tabname = 'ITAB_VBAK'.
l_fieldcat-fix_column = 'X'.
l_fieldcat-no_out = ' '.
l_fieldcat-fieldname = 'VKBUR'.
l_fieldcat-outputlen = 6.
l_fieldcat-seltext_l = 'Sales Office'.
l_fieldcat-no_zero = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'VSTEL'.
l_fieldcat-outputlen = 5.
l_fieldcat-seltext_l = 'Shipping Point'.
l_fieldcat-no_zero = ' '.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'VBELN'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Order No.'.
l_fieldcat-no_zero = 'X'.
l_fieldcat-hotspot = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'AUDAT'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Doc Date'.
l_fieldcat-hotspot = ''.
l_fieldcat-no_zero = ' '.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'POSNR'.
l_fieldcat-outputlen = 5.
l_fieldcat-seltext_l = 'Item'.
l_fieldcat-no_zero = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'MATNR'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Material No'.
l_fieldcat-no_zero = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'ARKTX'.
l_fieldcat-outputlen = 15.
l_fieldcat-seltext_l = 'Mat. Description'.
l_fieldcat-no_zero = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'KUNNR'.
l_fieldcat-outputlen = 8.
l_fieldcat-seltext_l = 'Sold to Party'.
l_fieldcat-no_zero = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'CUST'.
l_fieldcat-outputlen = 15.
l_fieldcat-seltext_l = 'Sold to Party Descp.'.
l_fieldcat-no_zero = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'KUNAG'.
l_fieldcat-outputlen = 8.
l_fieldcat-seltext_l = 'Ship to Party'.
l_fieldcat-no_zero = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'SHIP'.
l_fieldcat-outputlen = 15.
l_fieldcat-seltext_l = 'Ship to Party Descp'.
l_fieldcat-no_zero = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'CITY'.
l_fieldcat-outputlen = 13.
l_fieldcat-seltext_l = 'City'.
l_fieldcat-no_zero = ' '.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'DELIV'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Delivery No.'.
l_fieldcat-no_zero = 'X'.
l_fieldcat-hotspot = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'ORD_QTY'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Qty'.
l_fieldcat-no_zero = ' '.
l_fieldcat-hotspot = ' '.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'ROUTE'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Route'.
l_fieldcat-no_zero = 'X'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'DLV_DT'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Delivered date'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'DLVD_QTY'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Delivered Qty'.
l_fieldcat-no_zero = ' '.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'CHLN_NO'.
l_fieldcat-outputlen = 15.
l_fieldcat-seltext_l = 'Challan No'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'GRN_NO'.
l_fieldcat-outputlen = 15.
l_fieldcat-seltext_l = 'GR Number'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'TRUCK_NO'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Truck No'.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'PEND_QTY'.
l_fieldcat-outputlen = 10.
l_fieldcat-seltext_l = 'Pending Qty'.
l_fieldcat-no_zero = ' '.
append l_fieldcat to p_fieldtab.
l_fieldcat-fieldname = 'KZWI5'.
l_fieldcat-outputlen = 13.
l_fieldcat-seltext_l = 'Value'.
append l_fieldcat to p_fieldtab.
clear l_fieldcat.
endform. " FIELDCAT
*& Form EVENTTAB
text
-->P_I_EVENTS[] text
form eventtab using p_events type slis_t_event.
data: ls_event type slis_alv_event.
call function 'REUSE_ALV_EVENTS_GET'
exporting
i_list_type = 0
importing
et_events = p_events.
read table p_events with key name = slis_ev_top_of_page
into ls_event.
if sy-subrc = 0.
move formname_top_of_page to ls_event-form.
append ls_event to p_events.
endif.
endform. " EVENTTAB
*& Form BUILD_LAYOUT
text
-->P_LAYOUT text
form build_layout using p_layout type slis_layout_alv.
p_layout-f2code = f2code.
p_layout-zebra = 'X'.
p_layout-detail_popup = 'X'.
endform. " BUILD_LAYOUT
*& Form COMMENT
text
-->P_I_HEADING[] text
form comment using p_i_heading type slis_t_listheader.
data: hline type slis_listheader,
text(60) type c,
sep(20) type c.
clear: hline, text.
hline-typ = 'H'.
write : 'Pending Sale Order Details' to hline-info.
append hline to i_heading.
endform. " COMMENT
*& Form TOP_OF_PAGE
text
form top_of_page.
call function 'REUSE_ALV_COMMENTARY_WRITE'
exporting
it_list_commentary = i_heading
i_logo = 'ALV_REPORT'.
endform. " TOP_OF_PAGE
*& Form call_alv
text
--> p1 text
<-- p2 text
form call_alv .
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_interface_check = ' '
i_buffer_active = ' '
i_callback_program = i_repname
i_callback_pf_status_set = ' '
i_callback_user_command = 'FRM_ALV_USER_COMMAND'
i_structure_name = 'ITAB_VBAK'
i_background_id = ' '
is_layout = i_layout
it_fieldcat = i_fieldtab
it_sort = i_sort[]
i_default = 'X'
i_save = 'A'
is_variant = i_variant
it_events = i_events[]
is_print = i_print
tables
t_outtab = itab_vbak.
if sy-subrc <> 0.
write: 'SY-SUBRC: ', sy-subrc, 'REUSE_ALV_LIST_DISPLAY'.
endif.
endform. " call_alv
*& Form frm_alv_user_command
text
-->UCOMM text
-->SELFIELD text
form frm_alv_user_command using ucomm like sy-ucomm
selfield type slis_selfield.
case ucomm.
when '&IC1'.
if selfield-tabname = 'ITAB_VBAK'.
if selfield-fieldname = 'VBELN'.
read table itab_vbak index selfield-tabindex.
if sy-subrc = 0.
set parameter id 'AUN' field itab_vbak-vbeln.
call transaction 'VA03' and skip first screen.
endif.
elseif selfield-fieldname = 'DELIV'.
read table itab_vbak index selfield-tabindex.
if sy-subrc = 0.
set parameter id 'VL' field itab_vbak-deliv.
call transaction 'VL03N' and skip first screen.
endif.
endif.
endif.
endcase.
endform. "frm_alv_user_command -
Split outbound ORDERS idoc to different ports
Hi All,
I was wondering whether it is possible to split an outbound ORDERS idoc and have it directed to two different ports based on document type? Client requires normal PO's to be written to one XML while STO's be written to a seperate file. Look forward to your responses.
Regards,
JohnHi,
These are the exits available for Outbound ORDERS idoc.
1. ORDERS Purchase order / order MM06E001 EXIT_SAPLEINM_001 Customer enhancements
for control
record: purchasing
document, outbound
2. ORDERS Purchase order / order MM06E001 EXIT_SAPLEINM_002 Customer enhancements
to data segments,
purchasing
document, outbound
3.ORDERS Purchase order / order MM06E001 EXIT_SAPLEINM_011 Final customer enhancement
EDI purchase
order outbound
You should create the project before implementing the exits. So that the break point is going to stop over there.
Check this link to know how to find BADI -
http://www.sap-img.com/abap/how-to-find-bapi-for-particular-transaction-in-sap.htm
In your case this BADI is there for the given program. -
Generating purchase order idoc, when a sales order is created
Hi folks,
we need to send purchase order idoc from SAP to some external system. Once sales order is created, it should automatically generate the purchase order idoc and send to the external system....Any document showing step by step configuration to do so? I have basic knowldege of ALE and IDOC...please suggest me the configuration steps in detail...
Thanks in advance,
Shyam.Hi,
1. Configure the IDoc with message type ORDERS and basic IDoc type as ORDERS05 (You have to follow common step-by-step approach)
2. Configure Message Control to automatically generate IDoc whenever a Sales Order is created. (I mean output type)
So whenever a Sales Order is created, output type will generate an IDoc.
Hope this information is useful.
Regards,
AK -
PRICING Procedure in SAP for an Incomming Sales Order IDOC
Hi Friends,
Here is a situation what we have and what we intend to do.
We would be getting a Sales Order IDOC and when it hits the SAP..it comes with
-Material, Qty and Price per material
-Total Freight
-Total Tax
i.e the Pricing conditions are not maintained in SAP at all..we would just get the IDOC externally and the SAP needs to read the material, Qty at line item,
take the total freight as it comes, and total Tax as it comes in the Idoc.
My thoughts were to have all the Conditons PR00 (ZR00), KF00 (ZF00), UTXJ (ZTXJ) . ZR00 to set as Manual condition. ZF00 as header Freight and Manual condition, ZTXJ as header condition and Manual.
I therefore was trying to figure out the best way to set the pricing procedure.
Please let me know if I am on right track if not which is the way I need to set.
Thank you
RaviHI Ravi,
I think your issue is solved now...so for the benefit of SDN members....can you share the solution..as I am also working on the same requirement !!
Thanks in advance
Mayank -
Hierchies and hierchies node with customer exit?
hi friends,
what scenerio we use hierchies and hierchies node variable with customer exit ?
Thanking u
suneel.Hierarchy variables represent hierarchies. You can use them wherever
hierarchies can be selected.
Hierarchy node variables represent a node in a hierarchy. You can use them as
an alternative to hierarchy nodes as fixed values for restricting a characteristic.
If you use a hierarchy node variable, you can make selections by hierarchy
node when you use the query.
The Customer Exit processing type for variables enables you to determine
values for variables by means of a function module exit. The function
module used is EXIT_SAPLRRS0_001.
You create a project in transaction CMOD by selecting the SAP
enhancement RSR00001 and assigning this to the enhancement project.
Activate the project.
WHEN 'HIERARCHY'. " Hierarchy variable
CLEAR L_S_RANGE.
L_S_RANGE-LOW = 'MY HIERARCHY'. " hierarchy name
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
APPEND L_S_RANGE TO E_T_RANGE.
-> Only dependents of hierarchy 'MY HIERARCHY'
WHEN 'HNODE'. " Hierarchy node variable
CLEAR L_S_RANGE.
L_S_RANGE-LOW = 'DEPT1'. " Node name
L_S_RANGE-HIGH = '0HIER_NODE'. " InfoObject
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
APPEND L_S_RANGE TO E_T_RANGE.
-> Node 'DEPT1', that cannot be posted to
WHEN 'HNODEVAL'. " Hierarchy node variable
CLEAR L_S_RANGE.
L_S_RANGE-LOW = 'LEAVE1'. " node name (node is a leaf)
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
APPEND L_S_RANGE TO E_T_RANGE.
-> Node 'LEAVE1' (leaf)
Regards
Naga -
Help needed in writting Customer exit - ABAP Code
Hi Friends,
I have a scenario in one of the query and need to write a customer exit for the same. Here is the scenario:
I am using one input variable XXX to get input from user which feeds value to one of the charateristic lets say "CHAR1" in query. I have one more characteristic "CHAR2" which has to get the value from the same variable XXX. This is not allowed in BI7.0 as the variable is Hierarchy Node type. It gives error that "Variable XXX is used for two different characteristics."
So i need to create one more vaiable YYY which will get the value from XXX and then YYY will feed value to CHAR2. I would appreciate if some one could tell me step by step how to write customer exit and give me the piece of ABAP code i need to write in my case.
Your help will be appreciated in terms of points.
Thanks,
manmitHi Arun,
1. What should CHAR2 take - Hierarchy node variable or something else ?
--> CHAR2 is a simple charateristic
2. In your scenario - why have CHAR1 and CHAR2 ? why not have the user enter values against CHAR2 ??
--> We dont want user to enter two input as the input values for both Chars are same.
3. Did you try using a replacement path variable with the CHAR2 variable taking values from Variable on CHAR1 ?
--> In BI7.0 replacement path variable only take values from Query results. So not able to do the same.
Thanks -
Using variable values form parametrized URL in Customer Exit in i_step = 1
Hello BW experts,
I call a parametrized URL to a Web Template that has a Query with the variable VAR1:
http://XXX?...&CMD=LDOC&template_id=TEMP1&VAR_NAME_1=VAR1&VAR_VALUE_EXT_1=2006
Then I try to access the value of VAR1 in i_step = 1 in the Customer Exit for BEx variables in order to determine the value for a customer exit variable VAR2:
WHEN 'VAR2'.
IF i_step = 1.
READ TABLE i_t_var_range INTO var_range
WITH KEY vnam = 'VAR1'.
fl_var_range-sign = 'I'.
fl_var_range-opt = 'EQ'.
fl_var_range-low = *some operation with var_range
APPEND fl_var_range TO e_t_range.
ENDIF.
The problem is that VAR1 contains either the default values (if the variable is set to have default variables) or is empty (if there are no default variables defined). It does not retrieve the value in the URL in the Customer Exit, but displays it correctly in the variable screen.
Is there any way I can acces the URL parameter in the Customer Exit?
Thanks for any answers in advance.
MichaelGili,
thanks for your answer. The problem was, though, that the first value determines the behavior of the variable screen by setting the value of a customer exit variable.
My goal was to have two variable screens. In the first a date is chosen and in the second a node of a time-dependant hierarchy is chosen. If one enters the date in the same screen as the hierarchy, the valid hierarchy for the date is not displayed.
I solved the problem now in following way:
<b>1. Saving the value in SAP Memory as a parameter.</b> The parameter has to be defined in SE80. A Dummy Web Template with a query on the same Infoprovider with just the two InfoObjects (Year/Month) displays a variable screen for Month/Year. In addition there is a Dummy Customer Exit variable that is needed in order to pass the variable values (month/year) into SAP Memory. Using JavaScript in the Dummy WebTemplate the second Web Template with the actual query is called without displaying anything else than the variable screen.
WHEN 'DUMMY_CUSTOMEREXIT_VAR'.
data: w_date like sy-datum
IF i_step = 2.
READ TABLE i_t_var_range INTO var_range
WITH KEY vnam = 'VAR1'.
do your peration
i.e. w_date(4)+2 = var_range-low.
w_date(6)+2 = var_range-high.
SET PARAMETER ID 'ZBW_PARA1' FIELD w_date.
ENDIF.
<b>2. Retrieving the value from SAP Memory</b> Before displaying the variable screen, the chosen date is retrieved from SAP Memory and used to set the date for a customer exit variable for the hierarchy validity date.
WHEN 'VAR2'.
IF i_step = 1.
GET PARAMETER ID 'ZBW_PARA1' FIELD w_date.
do some operation with
APPEND fl_var_range TO e_t_range.
ENDIF.
It is quite a comlex construct, but it works.... -
Regarding Customer exit - ABAP Code
Hi Friends,
I have a scenario in one of the query and need to write a customer exit for the same. Here is the scenario:
I am using one input variable XXX to get input from user which feeds value to one of the charateristic lets say "CHAR1" in query. I have one more characteristic "CHAR2" which has to get the value from the same variable XXX. This is not allowed in BI7.0 as the variable is Hierarchy Node type. It gives error that "Variable XXX is used for two different characteristics."
So i need to create one more vaiable YYY which will get the value from XXX and then YYY will feed value to CHAR2. I would appreciate if some one could tell me step by step how to write customer exit and give me the piece of ABAP code i need to write in my case.
Your help will be appreciated in terms of points.
Thanks,Hi Manmit,
The following link can guide you on how to write customer exits (this has example as well)
[http://help.sap.com/saphelp_nw70/helpdata/EN/61/579b3c494d8e15e10000000a114084/frameset.htm]
Hope this helps.
Cheers,
Sumit -
Hi ,
I need to support a Bex report and need to understand the existing custome exit they have for a variable.
Eg : in the BEx Query, i see they have created a custom variable and used that to automatically get the current month and populate the query.
I went to BEx change mode and variable Display/change mode but that just gives the details that it is the custome exit and technical n
Can you please tel me the steps to get to the code level behind it to understand the logic ?
Thanks.Hi Chris,
to get the what they have written,
goto T-code SE38 >>>> Give program name ZXRSRU01 click enter
It will open a new window which has all the customer exit codes
For ex:
case i_vnam.
when 'VAR1'.
SOME LOGIC
WHEN 'VAR2'.
SOME LOGIC
WHEN 'VARN'.
SOME LOGIC.
END CASE.
Here var1 var2 and .. varn are the customer exit variables {techical names].
When ever user run the query which contains the customer exit it will trigger the above include program and it will trigger respected when logic.
Do debugging through T-code RSRT [ give query name [execute + debug } } in order to understand the logic step by step.
Note : you can also use the
T-code CMOD> project >> enhancement RSR00001>>> EXIT_SAPLRRS0_001>>>ZXRSRU01
to check / to change the customer exit program.
Regards,
Ranganath -
Customer Exit EXIT_SAPLCORF_005
Hi,
I'm trying to use the customer-exit EXIT_SAPLCORF_005 to modify a service order after saving some order confirmations using transaction IW41.
The customer-exit or better the coding in include ZXCOFU05 is called, but currently I've no idea how to modify the appropriate service order (given in structure/table caufvd_tab) that way it gets saved to database.
Why do I want the service order to get saved to database this way? That's because our BW will import the order's PMCO data only when it gets triggered from a service order modification.
Basically this means when sbdy. adds some order confirmations (which means a new PMCO record is created) the order itself is not changed at all, hence, the BW trigger is not fired and the new PMCO data is not imported into BW.
Is it possible to change an service order from within customer-exit EXIT_SAPLCORF_005 this way so it acts like a modified document from within transaction IW32? Or perhaps anybody knows about a better place or better way to get this new PMCO records into the BW.Sean,
Have a look [here|http://www.sapfans.com/forums/viewtopic.php?p=648307] under the Confirmations section
PeteA
[www.pjas.com]
Maybe you are looking for
-
Java 7.20 rev 2(OSX): crash when selecting "Finder" menu
Hi, since javagui 7.20 (rev 0, 1 and 2) sometimes when I chose its menu in the finder top bar it crashes. Is it a known bug? This is console log: 06/05/10 10.58.29 [0x0-0x5b05b].com.sap.platin[923] Invalid memory access of location 0x18 rip=0
-
Mass approval of Leave tasks..
Dear Team, Is it possible to Approve all leave requests at a single go. If it is Possible, What needs to be done at WORKFLOW Part and What needs to be done at EP Part. Please specicy both coding and configuration part of them. Please help. Thanks a l
-
Dynamically loading client proxy no longer works
I've got several instances where we need to dynamically load/initialize a WebService client proxy using a URL classloader all within an Applet. The need for the classloader and dynamic loading is due to the seperate jars holding different system modu
-
Installation stuck after restart
Downloaded Yosemite, ran the install, restarted when asked to, and now the computer has been stuck on the grey apple screen with a progress bar frozen at about 50% for the last 45 minutes. I hear intermittant activity happening with the hard drive, b
-
Is it possible to install Windows in MacBook Air?
I want to purchase a MacBook Air as I want to get experienced with Lion and just want to take feel of Mac. But yet I am expereicned with Windows only so will it be possible to install Windows (Dual Boot/Virtual Machine) in MacBook Air?