MDBs and Transactions.

Ok,
I am bit confused with how exactly MDBs work with Transactions.
For example,
suppose we have a simple standalone java message producer which sends a message to a Queue. A MDB's onMessage() picks it up.
Let's say the MDB makes some updates to the database and then invokes a method on a stateless session bean which also updates a database.
By default the transaction attribute of the MDB and stateless session bean would be REQUIRED.
If the stateless session bean database update fails, I presume the MDB's database updates also get rolled back.
But, does the message get rolled back? If not when would the message be rolled back?
Does it make any difference if the MDB is a topic or a queue? Does it make any difference if the message producer is a standalone client or
a stateless session bean with it's own transactional behaviour?
Any help appreciated.
Thanks.

The general principle is: if you have a MDB which consumes a message in a transaction, and that transaction is rolled back, then the message is "rolled back". This means that it is put back on the queue or topic. It will then be delivered to the MDB again.
If your MDB calls a session bean then the two can share the same global transaction as you suggest.
Note however that the transaction which consumes the message is completely separate from any transaction which placed the message on the queue in the first place. JMS completely decouples the two steps. Once the message is added to the queue the producer is irrelevant.
Nigel

Similar Messages

  • EJB 3.0 MDB and transactions

    I'm trying to use an XA topic connection factory in my MDB, I was getting a "not supported in this release" error until I added this annotation to my MDB:
    @MessageDrivenDeployment(
    resourceAdapter = "myProviderInstance"
    But now my MDB is no longer dequeuing messages.
    I found the following in the docs (http://download-west.oracle.com/docs/cd/B31017_01/web.1013/b28221/undejdev010.htm#CCHGGHAE)
    --- BEGIN QUOTE FROM ORACLE DOCS ---
    If you use @MessageDrivenDeployment, you can configure message service options using nested @ActivationConfigProperty annotations or using @MessageDrivenDeployment attributes: @ActivationConfigProperty configuration overrides @MessageDrivenDeployment attributes.
    If you use @MessageDriven, you can configure message service options using nested @ActivationConfigProperty annotations only.
    If you configure using @MessageDrivenDeployment attributes, your application can only access a message service provider without a J2CA resource adapter. If later you decide to access your message service provider using a J2CA resource adapter, your application will fail to deploy. If you configure using nested @ActivationConfigProperty annotations, your application can access a message service provider with or without a J2CA resource adapter. Oracle recommends that if you configure using annotations, you should use the @ActivationConfigProperty approach.
    Example 2-6 shows both a @MessageDrivenDeployment and @MessageDriven annotation using @ActivationConfigProperty annotations for message service configuration. Note that the DestinationName activation configuration property in the @MessageDrivenDeployment annotation overrides that in the @MessageDriven annotation.
    Example 2-6 @MessageDriven and @MessageDrivenDeployment Annotation for a J2CA Message Service Provider
    import javax.ejb.MessageDriven;
    import oracle.j2ee.ejb.MessageDrivenDeployment;
    import javax.ejb.ActivationConfigProperty;
    import javax.jms.Message;
    import javax.jms.MessageListener;
    @MessageDriven(
    activationConfig = {
    @ActivationConfigProperty(
    propertyName="DestinationName", propertyValue="OracleASjms/MyQueue"
    @MessageDrivenDeployment(
    activationConfig = {
    @ActivationConfigProperty(
    propertyName="DestinationName", propertyValue="OracleASjms/DeployedQueue"
    @ActivationConfigProperty(
    propertyName="ResourceAdapter", propertyValue="OracleASjms"
    --- END QUOTE FROM ORACLE DOCS ---
    So, instead of specifying the resource adapter as I had above, I simply pasted the last bit of annotations from the docs into my MDB, and much to my surprise I learned that you can't have an activationConfig in a @MessageDrivenDeployment
    What's the solution?

    OK, I got a little further. Everything works now as such
    I'm using the XA topic connection factory, I'm using the resource adapter.
    BUT, when I set the transaction required attribute on the MDB, I no longer receive messages.
    No errors are logged anywhere. Any suggestions?

  • MDB and transactions

    Hello,
    I was wondering if anyone else has experienced this problem and/or can suggest a solution...btw, I'm running this on JRun4.
    I have a JMS queue that uses a database for the queue. The onMessage method for my MDB is part of a container managed transaction. My onMessage method simply inserts the message into an audit table. I then purposely change the name of the audit table so that my MDB will throw a SQLException.
    If I send a single message, a SQL exception is thrown and caught and I roll back the transaction via MessageDrivenContext.setRollbackOnly(). The stdout logs show that after the exception the transaction is rolled back and the message is resent. This sequence occurs repeatedly until I fix the column name and then the message is consumed and inserted in my audit table. This works as I expect.
    If I were to send 2 (or more) messages, the same SQL exception occurs for each message and the transaction is rolled back and the message(s) are resent. However, once I fix the table error, I find that those 2 messages were repeatedly consumed and inserted into the audit table (e.g. there were 50+ inserts). In the stdout logs it appears once the database problem is corrected each transaction that was rolled back now ends up commiting leading to repeat consumptions.
    Has anyone encountered this? I'm a bit confused as to why, since the rollbacks, resends, and commits appear to work fine when there is only a single message.
    Any suggestions? Thanks.

    This is only a guess, but I'd say that the implementation isn't using two-phase commit aware resources (XAResources) to coordinate modifications to the backend database table. If you're only using a single resource (message in your case) then it's fine to use raw JDBC and turn auto-commit off; the application or container can then use the JDBC driver commit or rollback operations to make the change to the table happen (or not). If you're doing multiple updates through the same JDBC driver within the same global transaction then this still works.
    I wonder if the implementation is somehow adding each message through a separate JDBC instance (even though to the same back end DM) and committing each prior to doing work on the next message. This commit may not be explicit. You may not even know it is going on: for example, if the back end db is Oracle, if you do a close on a JDBC connection which is running in a transaction then it will implicitly commit the transaction at that point.
    For instance:
    receive message
    get JDBC connection
    add message to table
    close JDBC connection (may be explicit or may be implicit via the container)
    <-- commit happens here in some cases
    receive message
    get JDBC connection
    add message to table
    What the implementation really should use is XADataSources and XAConnections to get XAResources that coordinate updates to the database. Or, make sure the same JDBC connection is used within the same transaction. This is more difficult to coordinate because of close.

  • MDB Distributed transaction and stored procedure rollback

    Hi All,
    I am developing an asynchronous application using MDB. My application flow is as follows:
    1. From MDB onMessage i am calling another method MEthodA that
    a. calls a simple pojo1 where I am getting a Connection on XA enable datasource1 and executing Stored Procedure1 of DatabaseSchema1. In Stored Procedure1 I have some inner savpoints and rollback. No commit is inside Stored Procedure1 .
    b. In that pojo withput commiting m closing the connection and coming back in MethodA.
    c. Again from MethodA m calling an different pojo2 where I am getting a new Connection on XA enable datasource2 and executing Stored Procedure2 of DatabaseSchema1.In this pojo also without commiting m closing the connection and coming back in MethodA. In Stored Procedure2 I have some inner savpoints and rollback. No commit is inside Stored Procedure2 .
    d. Again from MethodA m calling pojo1 where I am getting a new Connection on XA enable datasource1 and executing a diffrent function of Stored Procedure1 of DatabaseSchema1.
    Now problem is:
    I have written some Savepoint and rollback inside Stored Procedure1 and inside Stored Procedure2. But these rollback is working only in inside Stored Procedure1 not in inside Stored Procedure2 in each case.
    In ejb-jar.xml transaction attributes is Required for all methods and transaction type is Container.
    Backend is Oracle 10g and init.xa has already been run on that.
    I have tested this on Oc4J and Websphere 6.0.
    I am using XaDatasource.
    Will be very obliged if any one can give a single hint of the problem as soon as possible.
    Thanks a lot

    Hi Kent;
      You have a few choices (AFAIK) with ASE...
    1)  AutoCommit = TRUE
      - must be before connect to your DB
    2) End your PB transaction first. For example
    String ls_end    =  "END TRANSACTION"
    String ls_begin  =  "BEGIN TRANSACTION"
    EXECUTE IMMEDIATE  ls_end using SQLCA;
    <call your SP>
    EXECUTE IMMEDIATE  ls_begin using SQLCA;
    3) use a 2nd Transaction Object for the SP where its AutoCommit = TRUE
    - or -
    4) In your SP ...
    Commit Transaction
    begin transaction
        insert into mytab (pub_id) values ("9999")
    commit transaction

  • Current server is the coordinator and transaction is not found

    Hi,
    We're using Weblogic 8.1 SP3. We have a single weblogic domain and 2 clusters in it. EAR1 is deployed in cluster 1 and EAR2 is deployed in cluster 2. EAR2 is compiled and created using j2ee.jar and not weblogic.jar.
    We have a MessageDrivenBean which is CMT / Required in EAR1 calls a BMT Stateless Session Bean in EAR2.
    A new transaction is begun in the BMT SB method and commit or rollback is called based on exception. A RuntimeException is thrown back to the MDB in case the transaction is rolled back in Bean Managed SB.
    Sometimes from the Bean Managed SB the following exception is thrown:
    javax.transaction.TransactionRolledbackException: Current server is the coordinator and transaction is not found. It was probably rolled back and forgotten already.
         at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:108)
         at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:284)
         at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:244)
         at com.oakgrovesystems.reactor.frontDesk.EJBFrontDeskBean_1gq9kv_EOImpl_813_WLStub.handleRequest(Unknown Source)
         at com.oakgrovesystems.reactor.requests.ReactorRequest.send(ReactorRequest.java:212)
         at com.oakgrovesystems.reactor.client.EJBReactorProxy.sendRequest(EJBReactorProxy.java:44)
         at com.oakgrovesystems.reactor.client.AbstractReactorProxy.handleRequest(AbstractReactorProxy.java:52)
         at sun.reflect.GeneratedMethodAccessor153.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at tavant.bpm.client.proxy.DynamicFailoverReactorProxy.invoke(DynamicFailoverReactorProxy.java:84)
         at $Proxy11.handleRequest(Unknown Source)
         at tavant.bpm.client.ProcessHome.handleRequest(ProcessHome.java:298)
         at tavant.bpm.client.ProcessHome.startProcess(ProcessHome.java:87)
         at tavant.bpm.client.processor.CreateWorkflowInstance.startProcess(CreateWorkflowInstance.java:70)
         at tavant.bpm.client.processor.CreateWorkflowInstance.invoke(CreateWorkflowInstance.java:51)
         at tavant.bpm.ejb.AsynchronousProcessorMessageBean.onMessage(AsynchronousProcessorMessageBean.java:58)
         at weblogic.ejb20.internal.MDListener.execute(MDListener.java:370)
         at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:262)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2678)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:2598)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
    This is not consistently reproducible though it happens when server is heavily loaded. When this exception occurs, the transaction in the BMT Session Bean is actually getting committed! The message gets redelivered from the MDB.
    What could be the problem?
    Regards
    Sandhya

    I'm seeing a similiar problem on our servers recently and thought I would add my problem as well. We are using Weblogic 8.1; don't know which SP is in production. We have an EAR file with an SB EJB that puts messages in a queue. The EAR is deployed in a cluster along with the queues. The errors below occurred in 3 of the 4 WLS instances in our cluster. This happened during a peak period and lasted for several seconds in Production.
    ###<Jul 1, 2005 11:18:12 AM EDT> <Warning> <RMI> <exsdxtxeax1x.prod.xxxx.xxx> <ems-04> <ExecuteThread: '12' for queue: 'web
    logic.kernel.Default'> <<WLS Kernel>> <> <BEA-080006> <Failed to associate the transaction context with the response while marshall
    ing an exception to the client:
    javax.transaction.TransactionRolledbackException: Current server is the coordinator and transaction is not found. It was probably
    rolled back and forgotten already..
    javax.transaction.TransactionRolledbackException: Current server is the coordinator and transaction is not found. It was probably
    rolled back and forgotten already.
    at weblogic.transaction.internal.TransactionManagerImpl.sendResponse(Ljava.lang.Object;)Ljava.lang.Object;(TransactionManag
    erImpl.java:1438)
    at weblogic.rmi.internal.BasicServerRef.associateTxContext(Lweblogic.rmi.spi.InboundRequest;Lweblogic.rmi.spi.OutboundRespo
    nse;)V(BasicServerRef.java:490)
    at weblogic.rmi.internal.BasicServerRef.postInvoke(Lweblogic.rmi.extensions.server.RuntimeMethodDescriptor;Lweblogic.rmi.sp
    i.InboundRequest;Lweblogic.rmi.spi.OutboundResponse;Ljava.lang.Throwable;)V(Optimized Method)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(Lweblogic.rmi.spi.InboundRequest;)V(Optimized Method)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(Lweblogic.kernel.ExecuteThread;)V(Optimized Method)
    at weblogic.kernel.ExecuteThread.execute(Lweblogic.kernel.ExecuteRequest;)V(Optimized Method)
    at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:178)
    at java.lang.Thread.startThreadFromVM(Ljava.lang.Thread;)V(Unknown Source)
    >

  • MDB and XA

     

              Thanks for your help Tom,
              It turns out I didn't have a transaction. Took a while to track it down...thanks
              again...
              Tom Barnes <[email protected]> wrote:
              >Hi Allen,
              >
              >Your JDBC configuration looks correct, but I may be wrong. I suggest
              >posting to the JDBC newsgroup for confirmation. It might be
              >helpful if you post your MDB xml descriptors.
              >
              >Is your JDBC call embedded directly in the MDB, or does the MDB invoke
              >it through another EJB or RMI class?
              >
              >It seems like there may be no transaction even though you set required?
              >To see if the current thread is infected with a live transaction, you
              >can insert some trace code:
              >Call weblogic.transaction.TxHelper.getTransaction() to get the current
              >transaction, then call weblogic.transaction.Transaction.getStatusAsString()
              >to
              >see its status.
              >
              >
              >Tom
              >
              >Allen Miller wrote:
              >
              >> I have a transaction 'required' mdb that essentially instantiates a
              >class that
              >> does database updates. I get the exception below. It appears the database
              >operations
              >> are not running as part of the mdb's transaction.
              >>
              >> I've configured the weblogic supplied oracle xa driver and tx datasourse
              >per the
              >> doc (as I understand it). The code snippet retrieving the datasource
              >and the config.xml
              >> definitions follow the exception message below.
              >>
              >> weblogic 6.1 on win2000
              >>
              >> any ideas???
              >>
              >> SQL operations are not allowed with no global transaction by default
              >for XA drivers.
              >> If the XA driver supports performing SQL operations with no global
              >transaction,
              >> explicitly allow it by setting "SupportsLocalTransaction" JDBC connection
              >pool
              >> property to true. In this case, also remember to complete the local
              >transaction
              >> before using the connection again for global transaction, else a XAER_OUTSIDE
              >> XAException may result. To complete a local transaction, you can either
              >set auto
              >> commit to true or call Connection.commit().
              >>
              >> Context ctx = new InitialContext();
              >> javax.sql.DataSource ds = (javax.sql.DataSource)
              >ctx.lookup ("jdbc/" + "ListenPointReporterConnectionsDs");
              >> return ds.getConnection();
              >>
              >> <JDBCConnectionPool CapacityIncrement="1"
              >> DriverName="weblogic.jdbc.oci.xa.XADataSource"
              >> InitialCapacity="2" LoginDelaySeconds="1" MaxCapacity="15"
              >> Name="PlatformListenPointReporterConnections"
              >> Properties="user=allen;password=allen;dataSourceName=PlatformListenPointReporterConnections;server=alcatraz;serverName=alcatraz"
              >> ShrinkPeriodMinutes="30" ShrinkingEnabled="true"
              >> Targets="listenpointServer" TestConnectionsOnRelease="true"
              >> TestConnectionsOnReserve="true" TestTableName="LP_USER_V"/>
              >>
              >> <JDBCTxDataSource EnableTwoPhaseCommit="true"
              >> JNDIName="jdbc/ListenPointReporterConnectionsDs"
              >> Name="ListenPointReporterConnectionsDs"
              >> PoolName="PlatformListenPointReporterConnections" Targets="listenpointServer"/>
              >
              

  • MDB container transaction

              Hi,
              I had a MDB running quite happily to check for database changes. Because the MDB
              deleted entries form a log table when it had read them I added a container managed
              transaction for the onMessage function. Now I keep getting a Warning message:
              Message Driven Bean 'UpdateCheck' is transacted but the provider defined in the
              ejb is not transacted. Provider should be transacted if onMessage method in MDB
              is transacted.
              I cannot find out what the "Provider" referred to is. I have used the default
              ConnectionFactory - do I need to create my own to enable transactions?
              Peter.
              

    The provider in this case is JMS, and for whatever reason it is not capable of using
              transactions.
              If you are using WL JMS, just don't specify a
              ConnectionFactory inside the descriptor files so that the MDB uses the
              default WL MDB connection factory. If you insist on specifying a connection
              factory, ensure it is one that has "user transactions enabled".
              If you are not using WL JMS, that is whole new ball of wax. Look for
              the white-paper on integrating foreign JMS providers on dev2dev.bea.com
              for answers.
              Tom
              Peter Hughes wrote:
              > Hi,
              > I had a MDB running quite happily to check for database changes. Because the MDB
              > deleted entries form a log table when it had read them I added a container managed
              > transaction for the onMessage function. Now I keep getting a Warning message:
              >
              > Message Driven Bean 'UpdateCheck' is transacted but the provider defined in the
              > ejb is not transacted. Provider should be transacted if onMessage method in MDB
              > is transacted.
              >
              > I cannot find out what the "Provider" referred to is. I have used the default
              > ConnectionFactory - do I need to create my own to enable transactions?
              >
              > Peter.
              

  • Problems with an MDB and OJMS

    I have a problem with MDBs and OJMS/AQ. onMessage() method fires well when a message is enqueued, but it is never dequeued. Messages are well received by MDB, but they remain on AQ table without dequeue. Can anybody help me? Thanks

    This is bug: Contaner managed transactions do not work with MDBs in OC4J 9.0.3. Either switch to BMT, or use the 10.0.3 preview on OTN.
    The bug is fixed in the 9.0.4 production version which is expected "real soon now".
    HTH
    -Doug

  • Diff B/W master data and transaction data

    Hi all,
    What is the main Diff B/W master data and transaction data.  give me some example ?
    Thanks in Advance
    Krish...

    hi krish,
    MASTER Data is the data that exists in the organization like employee details, material master, customer master, vendor master etc. These are generally created once.
    Master data are distributed throughout the company, they are often not standardised and often redundant. As a result it is very costly to offer efficient customer service, keep track of supply chains and make strategic decisions. With SAP Master Data Management (SAP MDM) these important business data from across the company can be brought together, harmonised and made accessible to all staff and business partners. As a key component of SAP NetWeaver, SAP MDM ensures data integrity via all IT systems.
    Regardless of the industry, companies often work with different ERP and Legacy systems. The result: the business processes are based on information about customers, partners and products which is displayed in different ways in the systems. If the data are recorded manually, there are more inconsistencies: some data sets are entered several times, others cannot be retrieved by all divisions of the company.
    As corporate applications are becoming increasingly complex and produce ever greater amounts of data, the problem is intensified further. Nevertheless, your employees must work with the inconsistent data and make decisions on this basis. The lack of standardised master data easily leads to wrong decisions, which restrict efficiency and threaten customer satisfaction and profitability.
    In a word: in order to save costs and ensure your company’s success it is necessary to consolidate master data about customers, partners and products, make them available to all employees beyond system boundaries and use attributes valid company-wide for the purpose of description.
    TRASNACTION Data - These are the business documents that you create using the master data - Purchase orders, sales orders etc
    http://help.sap.com/saphelp_nw2004s/helpdata/en/9d/193e4045796913e10000000a1550b0/content.htm
    Regards,
    GNK.

  • Remote and Transactional Cube

    Dear Friends,
    How a Basic Cube differs from a Transactional and Remote Cube ?
    A Small Example-  Cube Carries the Transaction data of Customer ,Material, Sales details ( characteristics) and price, Quantity and Revenue (keyfigures) .
    When do we Really have to Change or to Create the Other Cubes to hold those Data ?
    What is the Exact Purpose that a Scenario Needs the Remote and Transactional Cube ?
    I hope Remote Cube Can be created with "Infoservices" and "Source system" . What is the demand for both these options?
    Thanks well in advance ,
    Ramesh

    hi,
    Remotecbue will have  only structure and It does't hold any data.
    and it is used to bring live data to BW ..At the time of reporting only the data fetches from the source system. So it takes more time to execute.
    it will not hav update rules...
    Transactional InfoCubes are used only in conjunction with SEM. The data from this kind of InfoCube is accessed transactionally, meaning data is written to the InfoCube (possibly by several users at the same time) and reread as soon as possible. Basic InfoCubes are not suitable for this. You should use Basic InfoCubes for read-only access (for example, when reading reference data).
    Rfer
    http://help.sap.com/saphelp_bw33/helpdata/en/39/100c38e15711d4b2d90050da4c74dc/frameset.htm
    thanks
    (Assign points if useful..)

  • Downloding the SAP master data and transaction data to a flat file

    Hello All,
    Is there any SAP standard method or transaction to download the SAP master data and transaction data to flat file.
    With out using ABAP development, SAP had provided any tool or method to download the SAP system master and transaction data to flat file.
    Thanks,
    Feroz.

    hi
    as of now up to my knowledge no.

  • Connection failover and transaction failover

    Connection failover and transaction failover
    I need to know more about a behavior in a RAC cluster. When a node goes down that is executing one of my transaction through JDBC , does the connection and transaction failover to a new node without me needing to restart tran or reconnect ?
    Please provide some insight
    Thanks

    Transactions are NOT automatically rolled back. The application must do this otherwise the session will get disconnected.
    If you code TAF, all sessions will failover to the backup connection. You can specify that select statements are automatically re-executed after the failover. Insert/update/delete transactions must be explicitly rolled back and resubmitted by the application.
    IF you are using an ORacle Connection pool, the connection pool will automatically cleanup connections to the failed instance, abort inflight transactions. The application will either retry or it will propagate the error to the end user.
    See the whitepaper on the OTN RAC page (otn.oracle.com/rac) Workload Management with Oracle RAC for more information.

  • Can i display My application iview and transaction iview in single page ?

    Hi,
    I am new in web dynpro and portal. i am doing one approval application through web dynpro. Now i need to attache sap inbox to application. For that some budy suggested me about transaction view. So my questions are as folloes.
    1.> How i attached my application to iview ?
    2.> How i created Transaction  iview ?
    3.> Can i attache my application iview with transaction iview if it is possible then how ?
    4.> Can i display My application iview and transaction iview in single page ?
    Please guide me in this procesure.
    Regards,
    Gurprit Bhatia

    Hi Gurprit,
    1.> How i attached my application to iview ?
           You can attach your application to web Dynpro IView, for this login into portal, in the Content Management tab right click on a folder, then New --> IView. Select WD java Application. Select your application and create an Iview.
    2.> How i created Transaction iview ?
           Similarly, instead of selecting WD java Application, select iView template, you will get a list of available templates, and in this you will find template for Transaction Iview, in this template define the Tx for which you want to create the template.
    3.> Can i attache my application iview with transaction iview if it is possible then how ?
          No, I dont think you can attach your application to transaction Iview. but, you can attach both IViews on single page.
    4.> Can i display My application iview and transaction iview in single page ?
          Yes, you can attach  both IViews on single page. Again in Content Management tab, crate a PAGE; Then right click on created IViews and select  add IView to Page ßß: Delta Link.
    Hope this helps.
    Regards,
    Amit

  • How to use ale/idocs in sap crm to transfer master and transactional data

    hi all,
    I am working on sap crm7.0 ehp1. I want to transfer my master and transactional data from crm development system to crm quality system here through idocs. I am aware of basic ale settings and successfully transfe the ztable data through idocs. But i am not able to find any proper step by step procedure for maste and transactional data in sap crm. Also sap ecc tcode NACE is not available here.
    pls help..
    regards,
    kavita chaudhary

    Kavita,
    In CRM, Exchange Interface (XIF) ALE/IDOC is available to transfer master and transaction data. You can go through the following link for set up.
    Basic Data exchange set up for ALE IDocs - Wiki - SCN Wiki
    You can extend the standard XIF IDOCs using Transaction BDFg as well.
    Thanks,
    Ravi

  • What are the settings master data and transaction data from r/3 to in APO.

    Hi all,
    Can u suggest me ,I need to conform in apo what are the setting when transfering master data and transaction data from r/3 to APO.
    frm
    babu

    Hi
    The data get transfered from R3 to APO via CIF which is SAP standard.
    Please find enclosed herewith the link which will provide you detail information regarding it.
    http://help.sap.com/saphelp_scm41/helpdata/en/9b/954d3baf755b67e10000000a114084/frameset.htm
    Please let us know if it helps you. Please also let us know if you have any more specific question.
    Thanks
    Amol

Maybe you are looking for

  • Is Snow Leopard compatible with Canon camera software?

    Since I loaded Snow Leo some time ago, now the Canon Camera Window software gives me 'failed to initialize program', so that I can't download pics from the PowerShot A1000 IS. With Leopard, it worked the first time and fine. I have upgraded from the

  • Need advise: Is the MBA right for me?

    I currently have a MB, I am thiniking about the MBA but don't know if it would work for me. Here is what I would have to be able to do (every day) with the MBA: - Access internet and email (WIFI or verizon USB card) -Use iChat and Skype -Have paralle

  • Good settings for HD to SD downconversions

    I have been doing some experimenting with settings to mimick downconversion outputs that match Kona 3 downconversions and UKON downconversions. I have not quite nailed the right combination of settings yet though. I was wondering what people use? I k

  • Numbers for Ipad

    I cannot import a file due the number of formulas that the file have. This file it´s one of my principal files, so is very important to me.

  • How do I remove an "incompatible" extension? They have no "Remove" button.

    I've been using 5.0.1 for long enough that I'm not missing the two extensions that aren't compatible with it. In "Add-ons Manager" (about:addons), most have a "Remove" button. But the bottom two, shown stripy, and headed "![name of extension] is inco