Idoc to modify oreder
Hi everybody.
We use the idoc ORDERS05 with message type ORDE to create a order.
Next we can receive a modification of this order in another idoc ORDERS05. Anyboydy knows which message type can I use to modify the order???
Regards
Hi Paul.
Thanks so much for your help.
I want to modify the order field VBAK-FAKSD. This field don´t travel in the idoc. The field is filled with a value and I have to change it to initial. I think I´ll have to use the user-exits EXIT_SAPLVEDB_001 or EXIT_SAPLVEDB_001 to solve that.
But, If I wanted to modify a field that exist in the segment E1EDK01 how would I should fill the segment E1EDK01in the idoc??
Only with this new value or all the fields in E1EDK01 have to be filled???
Then I only had to send two segments, E1EDK01 and E1EDK01 , didnt it???
Thank u so much.
Regardas
Similar Messages
-
Good afternoon:
Does anybody know how to send in an idoc only the modified data?
Thanks in advance.
regardsHi,
From what I understand,I think you are trying to modify a segemnt with some data.
I also assume that you are working in an include.
Anyway,to do the modification what you can do is loop at the edidd section of the idoc.Then when the segment name is the segment name where you want modification,fill the data in the work area of the segment and then modify the idoc edidd section.
To understand it better please see the piece of code below.
loop at edidd into lw_edidd.
lv_index = sy-index.
when lw_eiddd-segnam = <your segment name>.
lw_segment = lw_edidd-sdata.
clear lw_segment.
lw_segment-f1 = value.
lw_segment-f2 = value.
and so on.
move segment name to <work are type edidd-segnam>.
move lw_segment to <work are type edidd-sdata>.
modify edidd from work are type edidd
index lv_index
transporting segnam sdata.
endloop.
Hope it will bw useful.
Thanks,
Sandeep. -
Idoc error - Modify or delete Source List - any ideas experts PLZ?
Hi experts,
I create a source list record by using Idoc with segments E1EORDH and E1EORDM
the source list record is correctly created in database
<u>=> the problem is when I try to modify or delete this source list record</u>
<b>Error message (always the same) : Please reconcile source list</b>
I try to use different codes is msgfn but it dont work
I think this message appear may be cause the source list record already exist..... and I want to modify or delete it, but it dont work
Please, help me experts
Thank you in advanceHi there,
I am also currently encountering this same message and not sure what is wrong.
Does anyone have any idea or resolution?
Thank you.
Cheers, -
User eixt for modifying inbound idoc (delins) not working
hi all,
Inbound IDoc DELINS.DELFOR02 is sent from customer to vendor to create forecast delivery schedule lines (VA32). E1EDP16-WMENG has the delivery quantity and it is mapped to VBEP-WMENG.
I need modify E1EDP16-WMENG accordingly (based on some business rules) and this change should also be reflected to VBEP_WMENG.
I tried to modify the idoc_data in user exits: EXIT_SAPLVED4_002, userexit_zuordnen_idocs. During debug, I can see the idoc is modified, but the final forecast delivery is not updated (VA33).
Anyone can help?
Thanks!
Regards
HuiHi Sandip,
Inside userexit_zuordnen_idocs, i updated the table idoc_data_1 (I changed the delivery quantities of the schedule lines), but it dosen't work. In Va33, the delivery quantities are not changed.
Any other input?
Thanks!
Regards,
Hui -
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. -
Difference between client system and logical system
Hi all
Can any one explain about the client system and logical system??
When this message type will comes in to picture at the time idoc processing??
Thanks and Regards
Arun Josephhi Arun,
I am giving the complete info on idoc.pls chk once.then ur issue will be solved.ok
and to know the diffrence between client and logical system very keenly go thru this link
https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=abouttheclientsystemandlogicalsystem&adv=false&sortby=cm_rnd_rankvalue
IDOC Administration
Step 1: Tcode: WE 46
Setting the Global Parameter for IDOC Interface
Step 2: Maintaing a Logical System
Path: From the ALE Customizing in IMG, choose Sending and Recieving Systems,
Logical Systems, Define Logical systems
Go to Spro transaction
Step 3: Allocating Logical systems to the Client
Path: From the ALE Customizing in IMG, choose Sending and Recieving Systems,
Logical Systems, Assign Client to Logical systems
Go to Spro transaction
Step 4: Setting up an RFC destination
Tcode: SM 59
Path: From the ALE Customizing in IMG, choose Communication, Define RFC
Destination
You can also do the Advanced Settings in the RFC Destination
Step 5: The PORT definition
TCode: WE 21
Path: From the ALE Customizing in IMG, choose Sending and Recieving Systems,
Systems in Network, Asynchronous Processing, Assign Ports, Define Port
Step 6: Generating Partner Profiles
TCode: BD 82
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, PArtner Profiles and Time of Processing, Generate Partner Profiles
Step 7: Distributing the Model
TCode: BD 64
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, Maintain Distribution Model and Distribute Views
Technques for Distributing the Master Data:
Technique 1: The Push Approach
Executing the Process:
TCode: BD 10
Path: from the ALE Main Menu, choose Material Data Distribution, Cross
Application, Material, Send
Technique 2: The Change Pointer Technique
Enable Change Pointers Globally
TCode: BD 61
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, MAster Data distribution, Replication of Modified Data, Activate
Change Pointers
Enable Change Pointers Globally
TCode: BD 50
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, MAster Data distribution, Replication of Modified Data, Activate
Change Pointers for Message Type
Specify the Fields for which Change Pointers are to be written
TCode: BD 52
Path: From the ALE main Menu, Choose ALE Development, IDOCs, Change , Define
Change-Relevant Fields
How the Classification system works:
Creating a Class Type
TCode: O1 CL(it is CAPITAL O)
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, MAster Data distribution,Distribution using Object Classes, Maintain Class Types
Maintaing Status for the Class Types:
TCode: O1 CL(it is CAPITAL O)
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, MAster Data distribution,Distribution using Object Classes, Maintain Class Types
Maintaing Classification Status:
TCode: O1 CL(it is CAPITAL O)
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, MAster Data distribution,Distribution using Object Classes, Maintain Class Types
Maintaing Classes:
TCode: CL 01 (it is zero)
TCode: O1 CL(it is CAPITAL O)
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, MAster Data distribution,Distribution using Object Classes, Maintain Classes
Allocating classes to the Logical Syatems
TCode: BD 68
TCode: O1 CL(it is CAPITAL O)
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, MAster Data distribution,Distribution using Object Classes, Assign classes
to Logical systems
Filering at the IDOC level:
Identify the Filter Object:
TCode: BD 59
Path: From the ALE main Menu, Choose ALE Development, IDOCs,Data Filtering, Assign Filter Objects
Type to IDOC Field
Modify the Distribution model
How Segment Filtering Works:
Configuration:
Configring the segment-filtering technique is a one-step process.Just specify the segments to be filtered
TCode: BD 56
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, MAster Data distribution,Scope of the Data for Distribution, Filter IDOC Segments
The Reduced IDOC Type:
The reduced IDOC type allows to get down to the field level and specify the fields a recieving system does not need.
The System still needs the fields, but this has no effect on the recieving system because each field has a null value,
represented by a forward slash(/) in the field.
TCode: BD 53
Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
Process, MAster Data distribution,Scope of the Data for Distribution, Message Reduction,
Create Reduced Message Type
IDOC:
Complete Documentaion on any IDOC using TCode: WE 60
IDOC Display Tool: TCode: WE 02 or WE 05
IDOC DEfinition components:
Segment Components:
1. Segment Type (E1, Z1)
2. Segment Definition(E2, Z2)
3. Segment Documentation(E3, Z3)
E- SAP Defined
z- Custom Defined
IDOC runtime componets:
control Record:
Data Record:
Staus Record:
First Create the Segments using TCode: WE 31
and then create the IDOC using TCode: We3 30
first release the segments and then IDOC.
Creating a new Basic IDOC Type:
STEP 1: Analyze the Data:
STEP 2: Create Data Elements:
STEP 3: Create Segments:
STEP 4: Create Basic IDOC Type:
1. Execute TCode: WE 30
2. Select the Create new option and enter a description for your basic IDOC type
3. click the IDOC name, and click the create icon.
Enter the segment type and its attributes.
4. Keep on adding the segments as in step 3.
5. Save the basic IDOC type
Step 5: Release the Segment Type and Basic IDOC Type
STEP 6: Transport the Segments and Basic IDOC Type
Extending a Basic IDOC type:
STEP 1: Analyze the Data:
STEP 2: Create Custom Segments:
STEP 3: Create the IDOC Type:
STEP 4: Release the custom Segment and IDOC Extension
Develop the function module for fteching the Data and then inserting the data into IDOC using
EDIDD(for control Record) and EDIDC table(for DATA Record)
Configuring the Systen for IDOCs
Configure an Outboubd Process that uses Message Control
Step 1: Create a new Message Type
TCode: We 81
Path: From the Area menu of EDI, choose Development, IDOC Type/ Message
Step 2: link the IDOC type to the Message Type
TCode: We 82
Path: From the Area menu of EDI, choose Development, IDOC Type/ Message
Step 3: Create a new Process Code
TCode: We 41
Path: From the Area menu of EDI, choose Control,Outbound Process COde
Step 4: Create or Change a Partner Profile
TCode: We 41
Path: From the Area menu of EDI, choose IDOC,Partner Profile
Configure an Outboubd Process for Stand-Alone Programs
1. Create a new message type
2. Link the IDOC type to the Message Type
3. Add the message to the ALE Distribution Model(use BD 64)
4. Create or change the Partner Profile
go through the following site to have screen shots.
http://www.****************/Tutorials/ALE/ALEMainPage.htm
thanks
karthik
reward me points if usefull -
RBDMIDOC Program with User Exit?
Hi....
I am a bit puzzle and hope someone could assist me with this please.
I am trying to work on a functional specification to layout an interface between SAP and our outsourced provider. Given that, I've created a reduced message type off HRMD_A06, calling it ZHRMDA06_ORG and change pointers being active.
From my understanding, if I run RBDMIDOC it will extract what is in the change pointers and create an IDOC structure with the data. I need to somehow after that structure is created to go back and add segments or sub-segments to it.
For example:
IF E1PLOGI.OTYPE='S'
IF E1PITYP.INFTY='1001' AND E1PITYP.SUBTY='A003'
If it detect this in the IDOC segment, I will need to find the chief of the org unit this position belongs to and create the E1PITYP.INFTY='1001' and E1PITYP.SUBTY='A002' to that chief position.
Using that as one of the data maniplulation example, I do have other data needing to be added to the segment / sub-segments as well. Like creating a whole new E1PLOGI, etc.
How do I go about doing so?
DO I...
A) Do it as part of the RBDMIDOC extraction run (i.e. modify a function module associated with it)
- OR -
B) Do it as a program that runs after the RBDMIDOC extract run and automatically go in to that IDOC to modify it.
One thing to note is that I will be creating multiple reduced message types against HRMD_A06, one per interface i am dealing with for outbound transfer to XI.
So I could have a ZHRMDA06_ORG and ZHRMDA06_ORG2 and both could share the same infotype tracking from change pointers.
So which ever method used, I would need the ability from the user exit or function module to signify that piece of code is for a particular message type extraction.
Thank you much in advance. Much Appreciated....I was looking at the RH_MASTER_IDOC_DISTRIBUTE_HRMD originally, but it only seems to be triggered via the PFAL. I need something to trigger via RBDMIDOC.
From what I gathered yesterday...
P633 from the book "ALE, EDI, and IDOC Technologies for SAP", I could use MASTERIDOC_CREATE_SMD_<Message_Type> and that is used during the RBDMIDOC.
I am not sure if that is still valid on the ECC 5.0 system or not. I look at the RBDMIDOC code and I don't see where it specify it will use these function modules. -
Modify BP in CRM using Idoc type BUPA_INBOUND_MAIN_SAVE_M03
Hi,
I want to modify(add) a new role to an existing BP in CRM.
I am using the Idoc type BUPA_INBOUND_MAIN_SAVE_M03 for the same.
The problem that I am facing is that even though I am wanting to modify the BP, whenever this IDoc is posted the existing roles (seen in table BUT100) for the BP get deleted and the new role is added through the interface.
Please can anyone assist me as what is going missing in the filling the segments.
Regards,
Taher
the segment structure is as below.
BUPA_INBOUND_MAIN_SAVE_M03
E101BUS_EI_EXTERN
E101BUS_EI_HEADER
E101BUS_EI_INSTANCE
E101BUS_EI_CENTRAL_DATA
E101BUS_EI_ROLES
E101BUS_EI_BUPA_ROLES
E101BUS_EI_ROLE_DATA
E101BUS_EI_ROLE_DATA_XHi,
I figured out the solution to this.
Get the existing roles for the BP using the FM BAPI_BUPA_ROLES_GET.
Append the existing roles along with the new role that is required to be added.
the task type should be I (Insert).
When the Idoc is posted the existing roles do not get overwritten and the new role is added.
Regards,
taher -
IDOC HRMD_A Client Has Status 'Not Modifiable'
Hi all,
I'm working with the HRMD_A07 Idoc.
The status is green, but the data are not loaded in the system.
It is possible that this situation is related to the status of the system that is 'Not Modifiable' ?
If I create a record in the PA30 I'm getting an error message about the status 'Not Modifiable' of the system, but at the end I manage to save the data.
thxHi Gabriel
For this u have 2 solution
1. Temporary
Every time you need to open client using SCC4 & SE06. After that u have to close the client.
2. Permanent
You have to talk to your ABAPer to have a customized Tcode for the REAJINDX.
Regards
Abhishek Tiwari -
Hi all,
My requirement is all ready existing idoc is their add to the new segments.Where is see the existing idoc and how modified it.
requirement:
Invoice is created in R/3 the outbound idoc is created. The idoc details contain the PO Order Number, PO Line Number, Shipment Number, etc., along with serial number detail has to be added. For serial number detail additional segment has to be created and added to existing idoc.
Create the new segment for serial number and add to the existing idoc. u201CIDOC BasicType:INVOIC02 and IDOC Message Type: INVOIC u201C .
please help me.
sreddy.
Edited by: SReddy on Sep 8, 2008 7:06 AMHi,
Refer to the following link,
[How to extend an existing IDOC!;
Regards
Natasha Garg -
This Question is related to IDOC , that how to modify the existing IDoc
hi All,
am getting some problem that ,
i have created the IDOC for sales orders by using (ORDERS), so i was able to create IDOC,but my requrement is to modify the exising IDOC.
how i can go through?.
what are the F.M to use?Hi,
Check the FM being used for inbound posting for your message type. See if there is a user exit available for you to update data contained in the IDoc.
If there isn't any, then you might have make a copy of the existing inbound processing FM and modify code to address your requirements. This will involve setting up your Z* FM for inbound posting (rather than system's standard FM) through configuration. For more details on how make these settings, take a look at http://www.sapgenie.com/sapgenie/docs/ale_whitepaper.doc.
Regards -
Idoc problem: I canu00B4t modify Header text before sales order is created
We are generating Sales order with Idoc :ORDERS01 (Inbound), and we´d like modify some text in E1EDKT1 AND E1EDKT2 segments, at header level.
We are using EXIT_SAPLVEDA_011 with this coding:
data: v_e1edkt1 like e1edkt1,
v_e1edkt2 like e1edkt2,
v_index like sy-tabix.
segment E1EDKT1----
read table dedidd with key segnam = 'E1EDKT1'.
if sy-subrc eq 0.
v_index = sy-tabix.
v_e1edkt1 = dedidd-sdata.
v_e1edkt1-tdid = '001'.
v_e1edkt1-tsspras = 'EN'.
v_e1edkt1-tsspras_iso = 'E'.
v_e1edkt1-tdobject = 'VBBK'.
dedidd-sdata = v_e1edkt1.
modify dedidd index v_index.
segment:E1EDKT2----
read table dedidd with key segnam = 'E1EDKT2'.
if sy-subrc eq 0.
v_index = sy-tabix.
v_e1edkt2 = dedidd-sdata.
v_e1edkt2-tdline = 'FIXED TEXT BLA BLA BLA '.
v_e1edkt2-tdformat = '*'.
dedidd-sdata = v_e1edkt2.
modify dedidd index v_index.
endif.
endif.
but Nothing .. I'm not able to modify the text when the Sales ordes is created.
Are we modifying the right structure ?? or do we need to flagear some variable ??
any suggestion ???Ok!. I moved the coding to EXIT_SAPLVEDA_001:
if segment-segnam = 'E1EDKT1'.
V_puntero = sy-tabix.
V_E1EDKT1 = segment-sdata.
V_E1EDKT1-TDID ='003'.
V_E1EDKT1-TSSPRAS ='EN'.
V_E1EDKT1-TSSPRAS_ISO ='E'.
V_E1EDKT1-TDOBJECT ='VBBK'.
segment-sdata = V_E1EDKT1.
endif.
if segment-segnam = 'E1EDKT2'.
V_puntero = sy-tabix.
V_E1EDKT2 = segment-sdata.
V_E1EDKT2-TDLINE ='FIXED TEXT BLA BLA BLA..'.
V_E1EDKT2-TDFORMAT ='*'.
segment-sdata = V_E1EDKT2.
endif.
It´s not working .! .
I have a suspect with TDID ='003', if I check the Sap table: STXH-TDID , that ID is char 4. -
Modifying a message in error segment of an idoc
Hi,
I want to modify the error message that is getting displayed in the error segment of an idoc. It is coming form a standard message class and while debugging it was found that the control is going into a standard function which is used for generating a tranfer order . Is it possible to modify the message ? I know the mesaage class(Standard) and the mesaage number as well.Hi ,
Try this.
You may be using a structure to populate the idoc status. Check that structure, there will be an option to give the message class and message number.
Regards,
Sharin. -
IDOC capturing the old data from Vendor master instead of modified data
Hello Friends,
Could you please guide me on the below issue ?
Vendor master was changed with the address being modified at 1300 system time. => change log shows as 1300
Payment run and IDOC generation ( RFFOEDI1 ) was executed at 1400 system time. => IDOC created time as 1400
but , Still the IDOC captured the old vendor master address data onto the IDOC .
this is very strange to me and no idea how this can happen.
thanks
Raghu V
Edited by: Raghunandan Vasudevarao on Jan 27, 2011 11:29 AMModerator message: I am sorry but I had to remove the "correct answer" as it was not correct.
It is well possible to remove the purchasing view via archiving, since archiving of vendor masters is divided into 3 activities: archiving purchasing view, archiving company code views, archiving general data.
Of course there are preconditions: you cannot archive purchasing data view if you had already created orders. In that case you have to archive the orders first.
See the network graphic, in SARA enter object FI_ACCPAYB, then click the icon for network.
In that particular case you would even create inconsistencies if you delete a table entry.
And before you delete table entries you should in general know about the relationship of tables.
Just thinking that a vendor master is LFA1, LFB1 and LFM1 is much to short. Goto DB15, enter FI_ACCPAYB (this is the archiving object) in the lower part and see how much tables are returned. These are all tables that can have data if you maintain a vendor master.
Now check all those tables if they have a relation to LFM1 and if they contain data
what will happen if you delete the vendor despite of existing orders? you probably get a dump when you access the purchase order. -
Modify existing data using LSMW IDoc method
Hi experts,
I am trying to transfer activity data from R/3 system to CRM using Idoc LSMW method.
It working fine that LSMW creates new activities in CRM system, & there is a check in the conversion code that if the activity we are trying to transfer exists in CRM system it will skip that transaction.
Now the requirement is that we don't want to skip, if the activity is already present in CRM system than it should modify the existing.
IDOC used : CRMXIF_ORDER_SAVE_M02
Msg type used: CRMXIF_ORDER_SAVE
Note:
LSMW will not create activities in the system; SXDA data transfer workbench will be used to process the data in CRM system. SXDA project has following two steps:
- Merge files u2013 This step uses a custom function module to merge one or more than one files and creates a file which is required for LSMW.
- Convert the data u2013 This step uses LSMW as the conversion method
- Load the data u2013 This step uses the IDoc object interface
Now the doubt is that if i remove the check than it will create an another activity with same activity no. or modify the existing one, or is there another way to modify the existing activity in CRM system?
Waiting for a qiuck response.
Thanks
d_marcoHI,
Thanks for your quick valuable response.
I have a doubt, we are transferring activities from R/3 system to CRM system, & these activities are maintained in R/3 application system in the form of text files
Now the question is if the text file contains 10 activities( transactions) with there header, partner & item details & from these 10 activities some are new & some are already present in CRM system, than will it be possible to create the new ones & update the existing ones withe single LSMW project run.
I think that we can put a check in the conversion code where transaction begins that if the particular activity( transaction) already present in CRM system than set a flag as "U" to update, if activities are new than set it as "I" to insert & than pass this flag in the conversion rule to the field "OBJECT_TASK" of IDOC structure
or
we need to maintain text files as for update or insert separately but not for mixed task of update/insert.
Will this update/insert process also work's if we are using a copy of standard IDOC type with some custom segments & custom fields.
Thanks
d_marco
Maybe you are looking for
-
Error while trying to deploy the fusion order aplication
i've succeded tu install the schemas, to deploy the store front module , and when i try to deploy the aplication i encounter one error :( this is my "build.properties" edited file: # Global build property set for SOA fusion order demo # # > author: c
-
Return of scrap from vendor Sub contracting
Dear gurus Pls advice me on how to map this scenario we are sending two raw materials to subcontractor for a semi finished product. during the process scrap is also generated which is of value to the organization and they need to receive it from the
-
How to read Chinese Characters in iTunes?
Hi all, Is there anyone who can enlighten me on how I can read chinese characters in iTunes? I have quite a number of Chinese songs that I wish to be played in iTunes, but I noticed that it does not read the chinese song titles and had small rectangl
-
How do I create a group email list on my Blackberry Tablet? Iggy
-
Network Magic can't even solve it's own licensing problem?
What's the deal with NM and Cisco? So I try and install NM and it reports it can't connect to it's own licensing server.. Brilliant. Then I try to open a ticket and it tells me I need to download the .2 version of the app and does not open the ticke