UserExit - EXIT_SAPLVEDF_002 / Include ZXEDFU02
Hi,
I had used this include to populate my custom segment. Its working perfectly in Development. But when moved to Quality the code does not work, I process the billing document using transaction VF02. But works fine in Debug mode in Quality. It is some what goofy.
I am not sure why the Idoc get populated correctly(with custom segment) when processed in debug mode but not in regular process(custom segment is missing). I have checked all the Transport logs. The enhancement and project everything is active.
It looks like simple thing I am missing.
But could not figure out whether its something to do with Basis or not?
If anyone had the similar situation before please suggest me.
Thanks!
Raja
Hi Raja,
As your program seems to be running fine in the debug mode in Quality there certainly seems to be a problem in the population of IDOC segment.Check out whether the custom segment that you have mentioned is actually included into the IDOC structure and check whether the custom segment is in the released state.As you have mentioned even if the project and the exit is active and your custom segment is not released then it would not work when transported further.Get back if you still have a problem.
Cheers
Nishanth
Similar Messages
-
Finding userexit using include name
Hi,
can anyone tell me how to find out userexit using the include name.
very urgent...
Regards,
Amalhi
Re: How to find an EXIT with the Include name ?
if helpful, reward
Sathish.R -
Extend Idoc INVOICE02 - User exit ZXEDFU02
Hi All,
I am trying to extend a standard Idoc <b>INVOICE02</b> with custom segment. I am trying to implement enhancement LVEDF001 and FM EXIT_SAPLVEDF_002. But when I try to insert a program logic into program ZXEDFU02 it complains Statement not accessible I am not sure what I am doing wrong here. Have anyone used this enhancement and any ideas?
Sample code will be very helpful, since this is the first time I am working on Idoc enhancement. Thank in advance.
Regards,
TimSaple Code:
INCLUDE ZXEDFU02 *
data: ls_ka1 like e1edka1,
ls_edidd like edidd,
l_lines type i.
describe table int_edidd lines l_lines.
check l_lines ne 0.
read table int_edidd into ls_edidd index l_lines.
check ls_edidd-segnam eq 'E1EDKA1' and
ls_edidd-sdata(2) eq 'RS'.
ls_ka1-parvw = 'ZC'.
case xvbdkr-bukrs.
when '1000'.
ls_ka1-lifnr = '41010005823845840'.
when others.
exit.
endcase.
ls_edidd-sdata = ls_ka1.
append ls_edidd to int_edidd. -
Restricting user exit ZXEDFU02 to one customer in WE20
I'm new to SAP. I've just written a code in user exit 002 (include zxedfu02) for the bill-to party invoice IDOC generation (FUNCTION IDOC_OUTPUT_INVOIC). My code is working perfectly. The only problem is I would like to restrict the use of this user exit to only one of my customers. From my understanding once I've programmed the user exit, every IDOC that is generated using IDOC_OUTPUT_INVOIC will perform my user exit, however I would like to be only executed for one partner. How do I do this?
If possible, please post a step by step solution to my problem, I would really appreciate your help.
Thanks in advance.
Edited by: mrisad on Jul 29, 2010 4:21 PMHello Mrisad,
As per your input, your exit function module EXIT_SAPLVEDF_002 contains CONTROL_RECORD_OUT as the import parameter.
Within your include please check the value of the following(which are the reciver related values) in the debugging mode.On top of your current code you can add this check, and include ur current code within this check.
RCVPOR
RCVPRT
RCVPRN
RCVSAD
RCVSMN
RCVSNA
RCVSCA
RCVSDF
RCVSLF
RCVLAD
Hope this will help you..
Regards,
Antony Thomas -
New include proram -user exit- sales order
hi
i have to create a new screen which has to be displayed as a pop up
from the user exit "<u>userexit_save_document_prepare"</u> which is present in MV45AFZZ
the processing logic for the screen should be written in include program which is to be included in the specified userexit.
the include program which i created while syntax checking shows
"include <u>prg-name</u> is not accesible".
why this is occuring.
Another question is whether can i write the modules for pbo,pai and the subroutines i.e form & end-form all in the include program which iam creating.
It is showing incorrect nesting. write end-form for the form before moduele.
whether i have to write PBO,PAI,subroutines in independent include programs.
Please give reply ASAP.in that case then
call like this
perform check (in program).
<b>what i am thinking is THIS program in Update Mode may be bcos of that.</b>
Regards
prabhu
Message was edited by:
Prabhu Peram -
Adding lines to segment of Idoc in User Exit ZXEDFU02
Hi!
do I need to maintain Idoc in WE30 if I need to add some lines to one segment in User Exit ZXEDFU02?
Here is my sample code placed in ZXEDFU02 for adding a line, but it is not making an effect:
WHEN 'E1EDP01'.
CLEAR E1EDP26.
E1EDP26-QUALF = '003'.
E1EDP26-BETRG = 777.
or maybe it depends on Idoc that I use in We19?
For example, if Idoc that I use in WE19 for testing my User Exit does not has qualifier 003 in segment E1EDP26... could it be a reason?
Will reward,
Mindaugas.Hi,
Saple Code:
INCLUDE ZXEDFU02 *
data: ls_ka1 like e1edka1,
ls_edidd like edidd,
l_lines type i.
describe table int_edidd lines l_lines.
check l_lines ne 0.
read table int_edidd into ls_edidd index l_lines.
check ls_edidd-segnam eq 'E1EDKA1' and
ls_edidd-sdata(2) eq 'RS'.
ls_ka1-parvw = 'ZC'.
case xvbdkr-bukrs.
when '1000'.
ls_ka1-lifnr = '41010005823845840'.
when others.
exit.
endcase.
ls_edidd-sdata = ls_ka1.
append ls_edidd to int_edidd.
Regards -
Update was terminated in VF02.
I have added two segments to the Invoice
idoc INVOIC02 .
In the user exit EXIT_SAPLVEDF_002 , inside
Include ZXEDFU02 , i have another include
by name include yxedfu02_us. inside this I
have added the code to populate the two
added segments for E1EDK01.
Now i am facing a problem in creating or
changing a billing document in VF01/VF02.
I am entering data for output.
I navigate to HEADER- OUTPUT in vf02.
There i am giving YU10 (for EDI output).
first problem is this YU10 is displayed
with yellow status icon.
secondly , when i save and come out and go
into vf02 again for the same billing
document it shows "Update was terminated".
I went to Sm13 and found the error.
<b>In the include where i have added the code , they have used a table INT_EDIDD. It
shows an error while i check the include.
it says INT_EDIDD does not exist as table or data. but if i double click on
INT_EDIDD, it navigates to the userexit function module EXIT_SAPLVEDF_002 table declaration INT_EDIDD structure EDIDD.</b>I dont know where it goes wrong.
Kindly help me in solving the problem.
thanks in advance.
suki.Hi,
The table INT_EDIDD will only be recognized within the outer include zxedfu02.
To access this from a subroutine in another include you must pass it to the subroutine using the tables statement.
Darren -
Customer Material Infomation Missing
**Hello Friends,**
**We have a scenario where we create Delivery without Referance to an Order and in the Invoice we see that Customer Material Information is not getting copied.In the Billing i see that it is taking referance from VBAP Table but in our case we don't have any referance to a Sales Order so it is not getting copied there. Is there any way we can make the changes in the copy control to make it appear in the Invoice as the Customer Material Information is already available in the Deliery document. This information is very vital for us as the Invoice Idocs should carry Customer Material Information which is not happening currently.*
Customer Material Information can be seen in the Invoice Item Tab -PO Data.
Thanks in advance for your help
SunilThe field on the invoice item PO data tab is VBAP-KDMAT. It is a view to a non-existent sales order, so you cannot populate it with data on your type of invoice.
HOWEVERu2026u2026you really need the CMIR data on the Idoc, right?
So use an invoice IDoc user exit to insert the appropriate segment.
My particular favorite exit for such things is INCLUDE ZXEDFU02, which is found in function module EXIT_SAPLVEDF_002.
An Idoc type INVOIC02 should carry the customeru2019s material number in an E1EDP19 segment with qualifier QUALF=001. Set up your exit to test for the existence of such a segment. If it is not found, then query table KNMT for the KDMAT that you want and insert the new E1EDP19 segment at the appropriate index. -
Best way to customize IDOC INVOIC02 (outbound)
Hello,
I want to customize the IDOC type INVOIC02 (outbound). Customize means:
- remove segments
- change some values
I tried different ways to achive this, but it does not work as needed. What I tried:
- IDOC extension: can not be used, because I can not remove segments
- IDOC view: not possible for INVOIC02 (see sapnote 185445)
- new IDOC type: I created a new IDOC type and copied all needed segments from INVOIC02. Now I want to use the existing function IDOC_OUTPUT_INVOIC, but it does not work. The IDOC gets status 26 (Syntax error, E1EDK17 does not exist). I do not want to rewrite the existing function. I think this would be the worst.
- new idea (not tried yet): use the existing INVOIC02 and change, remove segments in the user-exit.
Can someone help me and maybe give me hint?
Thanks, best regards
AndreasHi Sasidhar,
I am using EXIT_SAPLVEDF_002 now and it works like a charm. Thanks!
This is my coding right now (maybe it helps someone reading this):
*& Include ZXEDFU02 *
*separate by partner
CASE control_record_out-rcvprn.
* Special customer
WHEN '0000123456'.
* get segment
CASE int_edidd-segnam.
* delete segments
WHEN 'E1EDK17' OR
'E1EDK23' OR
'E1EDK28' OR
'E1EDK29' OR
'E1EDK14' OR
'E1EDP03' OR
'E1EDPA1' OR
'E1EDP28' OR
'E1EDP08' OR
'E1EDP30'.
DELETE TABLE int_edidd.
ENDCASE.
ENDCASE .
Regards,
Andreas -
How to get the contract number selected on VA01.
Hello Experts,
While creating a sales order a contract number is selected.
ie to which contract this SO is being created.
We get a ALV list with list of contract number and we select one.
But no where this contract number is displayed.
I have a placed a input/output box on additional tab header leve of VA01.
I need to display the contract number selected by the user for that sales order on to that box.
and this should happened the moment the user copies the contract number from the ALV list
any functon exit or badi's which could be used to get the value.
right now iam using the include MV45AFZZ
I know the table getting used.
Thanks in advance.
Regards,
RanjithYou can put your code into the MOVE_FIELD_TO_VBAP userexit in include MV45AFZZ. The contract information is stored on item level (VBAP) in fields WKTNR (contract number) and WKTPS (contract item). If you can have more than one contract in a sales order you should display that information on item level rather than header level, if you always reference one contract only per sales order header should be fine.
Hope that helps,
Michael -
PROBLEM IN BDC FOR WHILE CREATING PGI
Hi All,
I am using BDC program to Create PGI automatically from custom development program for CASHTILL . In Vl02n there is one Custom development screen '9999', it will be called when press POSTGOODSISSUE button in VL02n. I am filling this screen also Using BDC. This custom screen is called in USEREXIT SAPMV50A include mv50afz1 in USEREXIT_SAVE_DOCUMENT_PREPARE. This code will update one Custome Table.
Problem is when i run BDC it's updatting the custom table,but it's not creating PGI,but when i run the secondtime my BDC program it's creating PGI. Please help me why i am getting this error? I pasted my code here,
REPORT YVL.
DATA T_CODE(10) TYPE C VALUE 'VL02N'.
DATA: T_BDCDATA TYPE STANDARD TABLE OF BDCDATA WITH HEADER LINE.
DATA: h_bdcdata TYPE STANDARD TABLE OF BDCDATA WITH HEADER LINE.
DATA : L_DATE(10) TYPE C,
L_DATE1(10) TYPE C.
CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'
EXPORTING
DATE_INTERNAL = SY-DATUM
IMPORTING
DATE_EXTERNAL = L_DATE1
EXCEPTIONS
DATE_INTERNAL_IS_INVALID = 1
OTHERS = 2.
perform bdc_dynpro using 'SAPMV50A' '4004'.
perform bdc_field using 'BDC_CURSOR'
'LIKP-VBELN'.
perform bdc_field using 'BDC_OKCODE'
'=WABU_T'.
perform bdc_field using 'LIKP-VBELN'
'80003504'.
perform bdc_dynpro using 'SAPLZSD_PROOF_DELIV' '9999'.
perform bdc_field using 'BDC_CURSOR'
'ZSD_PROOF_DELIV-NAME_LAST'.
perform bdc_field using 'ZSD_PROOF_DELIV-NAME_FIRST'
'cash'.
perform bdc_field using 'ZSD_PROOF_DELIV-NAME_LAST'
'sales'.
perform bdc_field using 'ZSD_PROOF_DELIV-YSDATE'
L_DATE1.
perform bdc_field using 'ZSD_PROOF_DELIV-YSTIME'
'11:14:01'.
perform bdc_field using 'BDC_OKCODE'
'=WABU_T'.
COMMIT WORK.
CALL TRANSACTION T_CODE USING t_bdcdata.
FORM bdc_dynpro USING program dynpro.
CLEAR h_bdcdata.
h_bdcdata-program = program.
h_bdcdata-dynpro = dynpro.
h_bdcdata-dynbegin = 'X'.
APPEND h_bdcdata TO t_bdcdata.
ENDFORM. "BDC_DYNPRO
FORM bdc_field USING fnam fval.
CLEAR h_bdcdata.
h_bdcdata-fnam = fnam.
h_bdcdata-fval = fval.
APPEND h_bdcdata TO t_bdcdata.
ENDFORM. "BDC_FIELDAt first, I would suggest you try with VL02 Tcode rather doing for enjoy transactions.
Updation of Z table should be sync with your PGI transaction. Here the INSERT/UPDATE should in PERFORM ON COMMIT so the both transaction and Z table will be in sync.
what is the error you are getting for first time execution? Do you need commit work before call transaction?
Regds
Manohar -
Problem about extended IDOC(urgent)
Hi experts,
i have idoctype,extended idoc,and one include.. i need modify that according to the requirement.. here i will give the idoctype and extended idoc type and include program .. please help me where exactly i need to do the change and what are the steps required for the requirement..
Exact Requirement: Modify the program which populates the idoctype invoice02 and extension zinvoice02 , if netvalue is zero(vbrp-netwr = 0) then populate the idoc segment E1EDP01.E1EDP26 , BETRG WITH QUALF = # 011' WITH ZERO VALUE. curently segment is not populated.
Please help me in this and explain the steps required for this.
idoctype:invoice02
extended idoc:zinvoice02
include:ZXEDFU02
Here i am giving the include program
CASE dobject-kschl.
WHEN 'ZGRI' OR 'ZGDF' OR 'ZGRN' OR 'ZGAE'.
t_int_edidd[] = int_edidd[].
t_xtvbdpr[] = xtvbdpr[].
ta_xvbdkr = xvbdkr.
CASE int_edidd-segnam.
WHEN 'E1EDK01'.
ta_e1edk01 = int_edidd-sdata.
PERFORM get_shipment_data.
PERFORM get_route_data.
int_edidd[] = t_int_edidd[].
WHEN 'E1EDP01'.
Update segment E1EDP01
1. Update field E1EDP01-PSTYP
2. Accumulated net weight & quantity of batch split items against
E1EDP01 segment of the main invoice item.
ta_e1edp01 = int_edidd-sdata.
i_tabix = sy-tabix.
CLEAR: ta_e1edp02. "DIAG01+
PERFORM update_segment_e1edp01.
MOVE ta_e1edp01 TO t_int_edidd-sdata.
MODIFY t_int_edidd INDEX i_tabix TRANSPORTING sdata.
Populate segment Z1EDP08
Fields: ZZDESPACTY_A, ZZACTYUOM
PERFORM validate_segment USING control_record_out-idoctp
control_record_out-cimtyp
'Z1EDP08'
CHANGING n_subrc.
CHECK n_subrc EQ 0.
PERFORM calc_invoice_item_zzdespacty_a. "DIAG02+
int_edidd[] = t_int_edidd[]. "DIAG02+
WHEN 'E1EDP02'. "DIAG01+
IF int_edidd-sdata(3) = '016'. "DIAG01+
ta_e1edp02 = int_edidd-sdata. "DIAG01+
ENDIF. "DIAG01+
WHEN 'E1EDP19'.
Populate segment Z1EDL24
Fields: Material Characteristics or Material Class '001'.
PERFORM validate_segment USING control_record_out-idoctp
control_record_out-cimtyp
'Z1EDL24'
CHANGING n_subrc.
IF n_subrc EQ 0.
ta_e1edp19 = int_edidd-sdata.
CASE ta_e1edp19-qualf.
WHEN '002'.
PERFORM get_mat_characteristic USING ta_e1edp19-idtnr.
PERFORM fill_segment_z1edl24.
int_edidd[] = t_int_edidd[].
WHEN OTHERS.
ENDCASE.
ENDIF.
WHEN 'E1EDP26'.
Populate segment E1EDP26
Fields: BETRG
i_tabix = sy-tabix.
ta_e1edp26 = int_edidd-sdata.
IF ta_e1edp26-qualf = '001'. "Gross Price which is always present
PERFORM fill_segment_e1edp26.
int_edidd[] = t_int_edidd[].
ENDIF.
WHEN 'E1EDP08'.
Populate Segment Z1EDL37 *
Fields: Bespoke fields from Handling Unit (VEKP)
PERFORM validate_segment USING control_record_out-idoctp
control_record_out-cimtyp
'Z1EDL37'
CHANGING n_subrc.
CHECK n_subrc EQ 0.
ta_e1edp08 = int_edidd-sdata.
PERFORM fill_segment_z1edl37.
Populate Segment Z1EDP08 *
Fields: Total Despatch Activity *
PERFORM validate_segment USING control_record_out-idoctp
control_record_out-cimtyp
'Z1EDP08'
CHANGING n_subrc.
CHECK n_subrc EQ 0.
PERFORM calc_invoice_item_acty_total.
int_edidd[] = t_int_edidd[].
WHEN OTHERS.
ENDCASE.
WHEN 'ZGDW'.
Line above added line below removed - Assyst 73789
WHEN 'ZGIN'.
t_int_edidd[] = int_edidd[].
t_xtvbdpr[] = xtvbdpr[].
ta_xvbdkr = xvbdkr.
CASE int_edidd-segnam.
Start SU02
WHEN 'E1EDK01'.
ta_e1edk01 = int_edidd-sdata.
i_tabix = sy-tabix.
Get the conversion factor
PERFORM modify_exchange_rate.
MOVE ta_e1edk01 TO t_int_edidd-sdata.
MODIFY t_int_edidd INDEX i_tabix TRANSPORTING sdata.
int_edidd[] = t_int_edidd[].
End SU02
*************************************************************SAM01 START
WHEN 'E1EDP02'.
Populate segment Z1EDP02
Fields: Reason code for sales order
ta_e1edp02 = int_edidd-sdata.
CASE ta_e1edp02-qualf.
WHEN '002'.
PERFORM fill_segment_z1edp02.
PERFORM append_int_edidd TABLES t_int_edidd
USING 'Z1EDP02'
ta_z1edp02.
int_edidd[] = t_int_edidd[].
WHEN OTHERS.
ENDCASE.
***************************************************************SAM01 END
ENDCASE.
Start of JvdM01
WHEN 'ZGII'. "JvdM01
t_int_edidd[] = int_edidd[].
t_xtvbdpr[] = xtvbdpr[].
ta_xvbdkr = xvbdkr.
CASE int_edidd-segnam.
WHEN 'E1EDK01'.
Populate segment Z1EDKSH and Z1REM_STE_CDE
Fields: Shipment Number for Invoice
Reason code for sales order
ta_e1edk01 = int_edidd-sdata.
PERFORM fill_segment_z1edksh_ds.
PERFORM append_int_edidd TABLES t_int_edidd
USING 'Z1EDKSH'
ta_z1edksh.
PERFORM fill_segment_z1rem_ste_cde.
PERFORM append_int_edidd TABLES t_int_edidd
USING 'Z1REM_STE_CDE'
ta_z1rem_ste_cde.
int_edidd[] = t_int_edidd[].
WHEN 'E1EDKA1'.
Populate segment Z1EDKA1
Fields: Customer Account Group
ta_e1edka1 = int_edidd-sdata.
CASE ta_e1edka1-parvw.
WHEN 'RE'. "Bill To Party
PERFORM fill_segment_z1edka1.
PERFORM append_int_edidd TABLES t_int_edidd
USING 'Z1EDKA1'
ta_Z1EDKA1.
int_edidd[] = t_int_edidd[].
ENDCASE.
WHEN 'E1EDP01'.
Read segment E1EDP01 for use later "JVDM02
ta_e1edp01 = int_edidd-sdata.
WHEN 'E1EDP02'.
Populate segment Z1EDP02
Fields: Reason code for sales order
ta_e1edp02 = int_edidd-sdata.
CASE ta_e1edp02-qualf.
WHEN '002'.
PERFORM fill_segment_z1edp02.
PERFORM append_int_edidd TABLES t_int_edidd
USING 'Z1EDP02'
ta_z1edp02.
int_edidd[] = t_int_edidd[].
WHEN OTHERS.
ENDCASE.
WHEN 'E1EDP19'.
Populate segment Z1EDL24 and Z1EDP01 "JVDM02
Fields: Pack Size Activity for Material
Total Activity for Invoice Item
ta_e1edp19 = int_edidd-sdata.
CASE ta_e1edp19-qualf.
WHEN '002'.
PERFORM fill_segm_z1edl24_and_z1edp01.
PERFORM append_int_edidd TABLES t_int_edidd
USING 'Z1EDL24'
ta_z1edl24.
PERFORM append_int_edidd TABLES t_int_edidd
USING 'Z1EDP01'
ta_z1edp01.
int_edidd[] = t_int_edidd[].
WHEN OTHERS.
ENDCASE.
ENDCASE.
End JvdM01
ENDCASE.
Start SU02 Code Comment for implementing IR 340
**mpc01 - start of insert
start assyst 73789
*IF dobject-kschl = 'ZGDW'."amersham invoices
**IF dobject-kschl = 'ZGIN'."amersham invoices
end assyst 73789
CASE int_edidd-segnam.
for the organisation data header
WHEN 'E1EDK14'.
MOVE int_edidd-sdata TO ta_e2edk14.
where is qualifying organisation = 003 (delivering company code).
IF ta_e2edk14-qualf = '003' AND ta_e2edk14-orgid NE space.
SELECT SINGLE waers
INTO t001-waers
FROM t001
WHERE bukrs = ta_e2edk14-orgid.
IF sy-subrc = 0.
t_int_edidd[] = int_edidd[].
get the billing date for the invoice
LOOP AT t_int_edidd WHERE segnam = 'E1EDK02'.
MOVE t_int_edidd-sdata TO ta_e1edk02.
IF ta_e1edk02-qualf = '009'."billing date
w_fkdat = ta_e1edk02-datum.
EXIT.
ENDIF.
ENDLOOP.
if no invoice date use current date
IF w_fkdat IS INITIAL.
w_fkdat = sy-datum.
ENDIF.
change the general document header
LOOP AT t_int_edidd WHERE segnam = 'E1EDK01'.
i_tabix = sy-tabix.
MOVE t_int_edidd-sdata TO ta_e1edk01.
set the field to the default currency code for the company
ta_e1edk01-hwaer = t001-waers.
if the default value equals the idoc currency then exit
IF t001-waers = ta_e1edk01-curcy.
EXIT.
ENDIF.
get the exchange rates
SELECT *
INTO TABLE t_tcurr
FROM tcurr
WHERE kurst = 'NYB1' " SU01
WHERE KURST = 'GEBU' " SU01
AND fcurr = ta_e1edk01-curcy
AND tcurr = t001-waers.
IF sy-subrc NE 0."no values found
error the idoc
MESSAGE e400(vf) WITH c_exchange_rate_error
RAISING error_message_received.
EXIT.
ENDIF.
LOOP AT t_tcurr.
convert to date from inverted date to normal date format.
CALL FUNCTION 'CONVERSION_EXIT_INVDT_OUTPUT'
EXPORTING
input = t_tcurr-gdatu
IMPORTING
output = w_datum.
CONCATENATE w_datum+6(4)
w_datum+3(2)
w_datum(2)
INTO t_tcurr-datum.
MODIFY t_tcurr.
ENDLOOP.
sort the exchange rates with the newest first.
SORT t_tcurr BY datum DESCENDING.
read the first value in the table ie the newest.
LOOP AT t_tcurr WHERE datum <= w_fkdat.
EXIT.
ENDLOOP.
IF sy-subrc NE 0."no values found
error the idoc
MESSAGE e400(vf) WITH c_exchange_rate_error
RAISING error_message_received.
EXIT.
ENDIF.
Start SU01
Get the Exchange rate from the function module and populate
E1EDK01 TABLE
w_fcurr = ta_e1edk01-curcy.
call function 'CONVERT_TO_LOCAL_CURRENCY'
exporting
date = w_fkdat
foreign_amount = '0'
foreign_currency = w_fcurr
local_currency = t001-waers
type_of_rate = 'GEBU'
importing
exchange_rate = t_tcurr-ukurs
exceptions
no_rate_found = 1
overflow = 2
no_factors_found = 3
no_spread_found = 4
derived_2_times = 5
others = 6.
End SU01
ta_e1edk01-wkurs = t_tcurr-ukurs.
change the header data in segment
MOVE ta_e1edk01 TO t_int_edidd-sdata.
update the current idoc segment
MODIFY t_int_edidd INDEX i_tabix TRANSPORTING sdata.
EXIT.
ENDLOOP.
update all of the idoc segments
int_edidd[] = t_int_edidd[].
ENDIF.
ENDIF.
ENDCASE.
*ENDIF.
**mpc01 - end of insert
End SU02 Code Comment for implementing IR 340Hi Venu,
Try with this code.
If vbrp-netwr = 0.
<b> WHEN 'E1EDP26.
CASE ta_e1edp26-qualf.
ta_e1edp26 = int_edidd-sdata.
WHEN '011'.
PERFORM append_int_edidd TABLES t_int_edidd
USING 'e1edp26'
ta_e1edp26.
int_edidd[] = t_int_edidd[].
ENDCASE.</b>
ENDIF.
Thanks
Manju. -
How to handle table control in PO change
Hi All,
R/3 is sending PO details and Vendor is using third party front end to access the PO.He has changed the PO and these changes need to be reflected in the PO. Data is coming from external sytem to R/3 through IDOC. I need to handle the changes in the PO at the ITEM level. It has the table control. I don't know about table control. Kindly help me inorder to update the PO for a particular tab in PO item(ME22N).
I have checked the process code : ORDH and FM: MPN30_IDOC_INPUT_ORDCAD
Regards
Kannaiah
Rewards for helpful answersHi Ravikanth,
Thanks for the reply.
I checked the PO item for the fields which need to be updated. I am unable to find some fields in the FM which i had mentioned. Shall I need to use any Userexit or include for this. If yes, can you tell me the user exit for this. I have checked the following exits: AMPL0001
LMEDR001
LMELA002
LMELA010
LMEQR001
LMEXF001
LWSUS001
M06B0001
M06B0002
M06B0003
M06B0004
M06B0005
M06E0004
M06E0005
ME590001
MEETA001
MEFLD004
MELAB001
MEQUERY1
MEVME001
MM06E001
MM06E003
MM06E004
MM06E005
MM06E007
MM06E008
MM06E009
MM06E010
MMAL0001
MMAL0002
MMAL0003
MMDA0001
MMFAB001
MRFLB001 -
Cancellation of Billing document
Hi,
We cancel the invoice in VF11 with reference to the invoice/billing document.
Now the invoice is created on for ex: 01.01.2009 but the client will cancel the invoice on 02.02.2009.
Can we make any settings so that the invoice is cancelled on 01.01.2009.
If we cancel system will take sy-datum as cancel date otherwise we can enter the bill date in Vf11 at the header and cancel also.
But can we make any settings so that cancellation also will be done at the same date as of invoice.
ie if invoice is created on 01.01.2009 if we cancel on 02.02.2009 the cancelled billing document should automatically have bill date 01.01.2009 and accounting data also need to be posted on 01.01.2009.
Is there any standard functionality or User exit where we can implement the same.
regardsHello Saju,
As far as I know, the standard system behaviour is that the billing date
(VBRK-FKDAT) of the invoice cancellation is always taken directly from the original document.
Do you have your own coding in following copy control?
In the level of invoice type (Transaction VOFA), every invoice type has
its own cancellation type.
==> VOFA 'Billing: Document Types' for example: billing type F2 invoice
Cancell.billing type 'S1' Invoice Cancellation
Copying requirements ' ' < Here
Or have you made use of userexit "USEREXIT_FILL_XKOMK1" (Include RV60BFZA) to make VBRK-FKDAT=sy-datum ?
Please refer to note 112385 for some information.
Regards,
Alex -
Node variable in query - Processing type customer exit?
We are on NW 2004S. I created a hierarchy for an info-object along with several nodes and child nodes.
I also created a node variable in a query for this info-object. I have the following questions with regards to using node variables in a query.
1) Can I use a node variable with processing type 'Customer Exit". My objective is to set the value of the node variable in the user exit.
2) If answer to first question is "Yes", how would I code the node value in the user-exit - Example code or some pointers to that effect.
I really appreciate your thoughts on this issue.
Thanks,
SanjayHi Sanjay,
As far as I'm aware this hasn't changed in NW2004s, (in any case it still works), so:
1)Yes you can, no difference with other type variables.
2)In userexit EXIT_SAPLRRS0_001 (include ZXRSRU01).
There's different options depending on at which stage you want to change it:
http://help.sap.com/saphelp_nw2004s/helpdata/en/f1/0a56f5e09411d2acb90000e829fbfe/frameset.htm
If you do a forum search on above technical names I think you'll find plenty of coding samples, but if you want something more specific, I'd be happy to help you out.
Regards,
Pieter
Maybe you are looking for
-
After updating my iphone 3G and my ipotouch 3G with ios5, the apple remote controls (the white and the aluminium one) doesn´t react when iphone or ipod are docked at the universal dock. The remote controls both still work with my Macbook, therefore i
-
How to compile .java - .CAP?
Hi everyone, I have a lot of problem to compile my java file and to create my .CAP file. In consequence, I thinked that I will be perfect to create a tutorial, but firstly I need to learn :) PreCondicions -We have Windows SO ("posteriori" I will try
-
Hi Guru, i would like to know the assembly Process with CIN details. please give the details regarding the above. Thanks BR siva
-
I was wondering if i switch websites do i need to re apply for a new rss feed. Or does it just change over??
-
Folder icon with question mark?
I turned my computer on yesterday and it wasn't powering on as usual. First the grey-blue screen stays on forever and then this flashing folder icon appears with a question mark. I am not able to log on or start up any operations. please help!