Transaction management with DatabaseControl calls in Workshop

hej,
How can DatabaseControl calls be grouped within a transaction from a Forward method? For example, if I have the following:
protected Forward () {
<DatabaseControl>.insert1 ();
<DatabaseControl>.update1 ();
<DatabaseControl>.update2 ();
The insert1, update1, and update3 calls should be grouped together in a transaction so that if update2 fails everything gets rolled back.
Using weblogic.jdbc.db2.DB2Driver driver against DB2 8.2 (plus 2 phased commit is enabled for non-XA drivers on the DataSource object).
/ Matthew Young

Found a partial answer to my own question. Wrap a Custom Control around the DatabaseControl calls and automatically get transaction managing.
Would be cool if somebody could give a simple example or a few pointer. / Matthew

Similar Messages

  • BPEL Transaction Management from Client Caller

    Hi Guys,
    I have read many articles and postings so far on transaction management, but they all seem to relate to within the BPEL process itself. I want to know if the following is doable within BPEL and if so how to configure it.
    - I have a J2EE application that integrates with BPEL through the ITaskService (using Remote EJBs underneath the cover) - Oracle BPEL is installed on a separate machine on the OC4J container.
    - So, is there a way for the operations done to the ITaskService to participate in my J2EE application's transaction, to give you an example:
    - Begin Transaction()
    - user does something that results in updating a task's attribute
    - some other operations are being performed; if there is an exception thrown, roll back
    - End Transaction()
    Thanks very much in advance.
    Drew

    Hi Drew,
    Please refer Antony Reynold's blog:
    http://blogs.oracle.com/reynolds/2008/09/transaction_processing_in_bpel.html
    It says when the BPEL Process is invoked from a java API that has its own
    transaction context, the BPEL Process also will participate in the same
    transaction context.
    Hope this helps.
    Thanks,
    Vasanth

  • Database transaction management with MDB

    Hi all,
    I'm working on an Online Order Processing system. One of the functionalities that we've developed is mass order upload, that consists of one CSV file with a lot of orders inside.
    To have concurrent processing on the processing of an order upload file (as the orders present in file are independent of each), we've implemented a Message Driven Bean that receives an order to process in a request queue, processes the order and answers with the processed order in a response queue. The flow is like:
    1- Struts action is invoked to handle order upload.
    2- A method on a session bean is called to process the file.
    3- The session bean parses the file, separates all the order lines by origin customer (one order for each customer in the file) and sends messages to the request queue.
    4- For each order, an instance of the MDB will receive the message, process the order and send the processed order via response queue.
    5- After the Session Bean sends all the requests with the orders to process, he will wait for all the responses in the response queue until all the orders are processed and provide a valid answer, according to the whole process result, to the online user.
    My doubt is how can I manage efficiently transactions (mainly database transactions) so if inside a bunch of 200 orders processed concurrently one fails, I am able to rollback all the database transactions used by the MDB to process all the orders?
    As the failure of an order can be related to some error in the file, I want to rollback everything, give a message to the user to fix the file and allow him to upload the whole file (fixed) again.
    Any help would be appreciated.
    Regards,
    Campos

    Hi,
    1) As Of Version 4.6 C BAPIs has autocommit.ie Once you call a BAPI from anywhere before it returns it commits.So, we no need to worry about that.
    But some BAPI's doesn't in that case only we need to make COMMIT call.
    2)Transaction doesn't depend on Client object.
    3)No.
    Regards,
    Abdul Raheem .S

  • Transaction Management with ATMI or SQL

    If a system has only single database server, that is, no distribution or heterogeneity,
    application servers can use ATMI or SQL manage transations. My question is: which
    method is better? In that case, whether it is unnesseary to use the TM service
    of Tuxedo? Any comment is welcome.

    Brian:
    If you use the database's begin, commit, and rollback you must have all the database
    work related to that transaction performed in one Tuxedo service. If you use
    XA connections to the database and use the tp/tx family of function calls you
    can split a transaction across multiple servers/services and it will be tied together
    by Tuxedo.
    Sometimes this is nice. Let's say your business transaction comprises three distinct
    database operations which must be included in the same transaction. If you put
    these in different services you can get individual timings for each operation
    simply by turning on txrpt.
    hope this helps.
    mervin
    "brian luo" <[email protected]> wrote:
    >
    If a system has only single database server, that is, no distribution
    or heterogeneity,
    application servers can use ATMI or SQL manage transations. My question
    is: which
    method is better? In that case, whether it is unnesseary to use the TM
    service
    of Tuxedo? Any comment is welcome.

  • ALBPM - Transaction Management with Database

    We are using DB Objects by importing them in the Catalog.
    Now for how can we execute multiple INSERT/UPDATE/DELETE operations in a Single Transaction ?

    If you have all your update, insert and delete statements inside one automatic activity. Its considered as one transaction.

  • 11g TP2 ADF Task Flows and Transaction Management

    I'm wondering how ADF Task Flow Transaction Management works vis-a-vis database sessions and using stored procedure calls in an environment with connection pooling. I haven't written the code yet but am looking for a better understanding of how it works before I try.
    Example:
    I create a bounded adf task flow. I set the "transaction" property to "new-transaction" and the "data control scope" to "isolated".
    As the task flow is running, the user clicks buttons that navigate from page to page in the flow. Each button click posts the page back to the app server. On the app server a backing bean method in each page calls a stored procedure in a database package to modify some values in one or more tables in the database. The procedure does not commit these changes.
    Each time a backing bean makes a stored procedure call will it be in the same database session? Or will connection pooling possibly return a different database connection and therefore a different database session?
    If the transaction management feature of the adf task flows guarantees me that I will always be in the same database session then I don't have to write any extra code to make this work. Will it do that or not?

    I don't know if it is documented in the adf documentation currently available for 11g TP2 but what you ask for is a normal transaction management with connection pooling and i can't imagine it is not implemented in ADF BC layer like it is in JPA or other persistence layer.
    A transaction will always be executed in the same session. Normally your web session will stay in the same session even you start more than one transaction. You don't have to write any code to manage the session pooling. It is a good practices to customize it at the persistence layer during installation depending on your infrastructure.
    Take a look into Fusion Developer Guide ... i'm sure you will find some better explanations about this.

  • Trxn Management with Tuxedo ATMI or SQL

    Hi,
    Ours is a leading bank in Saudi Arabia with a network of 70 branches in the country.
    We have a number of heteogeneous systems for various banking operations.
    Specifically, this quaestion is regarding choosing a choice of Tuxedo ATMI or
    SQL for incorporating various business rules in retail banking, right from opening
    customer realtionship and accounts until closing the customer file.
    Given the very hectic time schedule and also the concern for long-term maintenance,
    please advise which one is right decision
    - Building the business logic in the PL/SQL procedures in
    the central ORACLE server (Branches / Departments /
    ATMs / ... will access this and iteropration of all
    these sevices have to be managed (some of these are
    XA compliant and some are not)
    or
    - building the business rules in the Tuxedo ATMI services?
    Please note that I already read another email inquiry (and reply ) from Mervin
    with the subject 'Transaction management with ATMI or SQL'.
    Adavnce thanks.
    N Dhandapani
    Saudi French Bank
    Riyadh

    Hi,
    Implementing business checks/repository in BEA Tuxedo servers seems a cleaner
    approach from architecture and maintenance point of view.
    It helps the application to maintain n-tier architecture and leave the client
    to take care of only the interface and database the data storage. All checks and
    business rules will be in the middle-layer.
    Moreover, using Tuxedo brings in some advantages like:
    *Load Balancing
    *Scalability
    *Transaction Monitoring
    *Fail-over
    *Connection Pooling
    *Easier Database Migrations (very easy if only ANSI features are used, else code
    changes mey be required)
    NOTE: Tuxedo services can be developed using ESQL/C (Pro*C for Oracle) which may
    be database specific. A database independent approach (a study/analysis may be
    required) would be to use some database library that encapsulates the calls like
    Rogue Wave.
    HTH
    Best Regards
    MS

  • Forte Transaction Management & 2PC

    Forte Transaction Management & 2PC
    The main purpose of 2PC in a distributed transaction manager is
    to enable recovery from a failure that occurs during the window
    of transaction commit processing. The Forte transaction manager was built
    with this in mind but only with respect to the "volatile" (or "in memory")
    objects that Forte manages. What this implies is that because Forte stores
    objects in memory and not persistently on disk, the requirement of recovery
    for these objects is significantly reduced (if not eliminated all together).
    Forte follows a distributed 2PC model in that tasks and messages carry
    along with them transaction identification and, during commit processing,
    every distributed participant is polled for its availability to commit
    the transaction. Applications saving persistent data to disk during a
    distributed Forte transaction need to concern themselves with the potential
    for failure during the commit processing window. Forte's prepare phase polls
    each site (confirming a communications link with each distributed participant)
    but no prepare request goes to the database primarily because (in release 1 and
    2 of forte) no database supported a general distributed two-phase commit
    (one could take issue with that in the case of Sybase, but rather than debate
    this point, suffice it to say that the general direction in the industry for
    support of this functionality was through TP monitors -- more on that later).
    Once all sites are ready to commit Forte expects that the commit will
    complete successfully. If at this moment, for example, a participating
    Sybase server terminates (with data not yet committed) while a participating
    Oracle server has already committed its unit of work, then the outcome of
    the distributed transaction is inconsistent - if no one has yet committed
    Forte will still abort the transaction. This "window of inconsistency"
    is documented in the Forte TOOL manual.
    Mission critical applications that require distributed transactions can
    address this window of inconsistency in a number of ways:
    * Utilize a TP monitor such as Encina (see below)
    * Log distributed updates in an auxiliary database table (much like a
    distributed transaction monitor's transaction-state log). This approach has
    been the traditional banking application solution prior to the commercial
    availability of products like Encina, Tuxedo, TopEnd, etc.
    This solution is somewhat complex and is usually not generic enough
    so as not to have to change code every time a new table or database
    site is introduced into the application's data model.
    * Rearrange the data model in order to eliminate the need for distributed
    transactions. This is usually only a temporary solution (with smaller
    numbers of active clients) and cannot be applied to complex legacy systems.
    With the advent of the X/Open distributed transaction architecture (the
    XA Interface) more database vendors have found that by complying with the
    XA interface they can plug their database-specific implementation of
    transaction into a globally managed transaction, with commit and abort
    processing being conducted by a central coordinator. Of course, the
    overall transaction manager coordinating the global transaction must
    itself, persistently record the state of the different distributed
    branches participating in the transaction. A significant portion of
    the functionality provided by products such as Encina, Tuxedo, TopEnd and
    OpenTP1 is to provide exactly this global transaction management.
    Rather than extend the Forte distributed transaction manager with the
    functionality necessary to manage and recover distributed transactions
    that modify data on disk, Forte has chosen to integrate with the emerging
    set of commercial transaction monitors and managers. This decision was
    built into the original design of the Forte transaction model (using XA and
    early Tuxedo white-papers as guidelines):
    * In Forte release 2 an integration with Encina was delivered.
    * In January 1997 a press release announced an integration of
    OpenTP1 with Forte for release 3.
    * The Forte engineering staff is currently investing integration
    with other transaction management products as well.
    Neil Goodman,
    Forte Development.

    You don't. ("manage" a transaction)
    There is nothing really to "manage".
    A transaction is automatically started when you make any changes to data (e.g. fire off a DML statement).
    You simply needs to issue a COMMIT or ROLLBACK when needed. A COMMIT at the end of the business transaction and not before (i.e. no committing every n number of rows). A ROLLBACK when hitting an exception or business logic error that requires the uncommitted changes to be undone.
    That in a nutshell is it. It is that simple.
    Oracle also supports creating savepoints and rolling back only some changes made thus far in the transaction.
    The only other thing to keep in mind that a DDL in Oracle issues an implicit commit. Firing off a DDL with cause any exiting uncommitted transaction to be committed.
    Transaction "logic/management" should not be made more complex than this.

  • MQSeries as a Transactional Resource Manager with Weblogic Server

              I am trying to setup the example given in the BEA white paper:
              Using MQSeries as a Transactional Resource Manager with Weblogic Server.
              Version 1.
              October 25, 2001.
              I followed the instructions given in the documents, but when i run client program
              >java MQClient t3://localhost:7001 "MQSeries test"
              I received the following exception below. Does anyone how what is the reason for
              this exception(s) and how i can solve the problem? My MQSeries Server and Weblogic
              6.1 sp2 are installed on seperate NT machines. I installed the MQSeries classes
              for java and the MQSeries classes for Java Message Service on the weblogic
              server machine.
              sending: "MQSEries test"
              Exception in thread "main" java.rmi.ServerError: A error occurred the server; ne
              sted exception is:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.rmi.ServerError: A error occurred the server; nested exception is:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              at java.lang.System.loadLibrary(System.java:820)
              at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              at java.security.AccessController.doPrivileged(Native Method)
              at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
              at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
              at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
              at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
              at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
              at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End server side stack trace
              ; nested exception is:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              at java.lang.System.loadLibrary(System.java:820)
              at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              at java.security.AccessController.doPrivileged(Native Method)
              at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
              at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
              at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
              at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
              at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
              at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End server side stack trace
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              at java.lang.System.loadLibrary(System.java:820)
              at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              at java.security.AccessController.doPrivileged(Native Method)
              at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
              at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
              at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
              at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
              at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
              at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End server side stack trace
              <<no stack trace available>>
              --------------- nested within: ------------------
              weblogic.rmi.extensions.RemoteRuntimeException - with nested exception:
              [java.rmi.ServerError: A error occurred the server; nested exception is:
                      java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.rmi.ServerError: A error occurred the server; nested exception is:
                      java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
                      at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
                      at java.lang.Runtime.loadLibrary0(Runtime.java:749)
                      at java.lang.System.loadLibrary(System.java:820)
                      at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
                      at java.security.AccessController.doPrivileged(Native Method)
                      at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
                      at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
                      at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
                      at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
                      at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
                      at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
                      at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
                      at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
                      at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
                      at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
                      at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
                      at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
                      at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
                      at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
                      at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
                      at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
                      at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
                      at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
                      at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
                      at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
                      at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
                      at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
                      at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
                      at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
                      at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
                      at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
                      at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End  server side stack trace
              ; nested exception is:
                      java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
                      at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
                      at java.lang.Runtime.loadLibrary0(Runtime.java:749)
                      at java.lang.System.loadLibrary(System.java:820)
                      at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
                      at java.security.AccessController.doPrivileged(Native Method)
                      at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
                      at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
                      at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
                      at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
                      at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
                      at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
                      at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
                      at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
                      at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
                      at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
                      at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
                      at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
                      at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
                      at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
                      at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
                      at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
                      at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
                      at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
                      at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
                      at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
                      at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
                      at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
                      at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
                      at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
                      at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
                      at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
                      at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End  server side stack trace
              at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:60)
              at $Proxy1.bridgeWLS2MQS(Unknown Source)
              at MQClient.main(MQClient.java:54)
              

    The point is that over TCPIP the MQ XA connection factory is not available.
              The MQ shared memory/JNI driver is required to access it, which limits
              access to those processes that are on the same box as the MQ q manager.
              This is an MQ series limitation.
              Douglas WF Acheson wrote:
              > Hello,
              >
              > If memory server me correct, default connection to MQ Series is through
              > JNI calls and shared memory. You have to change the protocol to TCPIP when
              > connection to the queue manager on another box (do not know much about XA
              > with MQ Series); that is when you connect to MQ Series vi JMS on another
              > box you must do something like the following:
              >
              > qcf = new MQQueueConnectionFactory() ;
              > qcf.setHostName(hostName) ;
              > qcf.setPort(port) ;
              > qcf.setTransportType(JMSC.MQJMS_TP_CLIENT_MQ_TCPIP) ;
              > qcf.setQueueManager(qManagerName) ;
              >
              > Then when you create you queues, sesions etc. you are point at the correct Q
              > manager.
              >
              > Hope this helps ...
              >
              > Douglas WF Acheson
              >
              > "Raja Mukherjee" <[email protected]> wrote in message
              > news:[email protected]...
              > > On a closer look at the original post (sorry for missing that, it was
              > early
              > > in the morning), you would not be able to use XA if your QM and WLS are in
              > > different boxes. Check on this newsgroup, there are several posts on this
              > > subject. The whitepaper, if I recall correctly, installs both MQ and WLS
              > on
              > > the sames box. This is a MQSeries limitation not WLS.
              > >
              > > .raja
              > >
              > >
              > > "ibrahim Nehme" <[email protected]> wrote in message
              > > news:[email protected]...
              > > >
              > > > I am trying to setup the example given in the BEA white paper:
              > > > Using MQSeries as a Transactional Resource Manager with Weblogic Server.
              > > > Version 1.
              > > > October 25, 2001.
              > > > I followed the instructions given in the documents, but when i run
              > client
              > > program
              > > >
              > > > >java MQClient t3://localhost:7001 "MQSeries test"
              > > > I received the following exception below. Does anyone how what is the
              > > reason for
              > > >
              > > > this exception(s) and how i can solve the problem? My MQSeries Server
              > and
              > > Weblogic
              > > > 6.1 sp2 are installed on seperate NT machines. I installed the MQSeries
              > > classes
              > > > for java and the MQSeries classes for Java Message Service on the
              > weblogic
              > > > server machine.
              > > > ---------------------------------------
              > > > sending: "MQSEries test"
              > > > Exception in thread "main" java.rmi.ServerError: A error occurred the
              > > server; ne
              > > > sted exception is:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.rmi.ServerError: A error occurred the server; nested exception is:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > > at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > > at java.lang.System.loadLibrary(System.java:820)
              > > > at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > > at java.security.AccessController.doPrivileged(Native Method)
              > > > at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > > at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > > at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > > at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > > at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > > at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > > at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > > at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > > at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > > at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > > at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > > at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > > at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > > at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > > at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > > at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > > at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End server side stack trace
              > > > ; nested exception is:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > > at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > > at java.lang.System.loadLibrary(System.java:820)
              > > > at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > > at java.security.AccessController.doPrivileged(Native Method)
              > > > at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > > at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > > at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > > at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > > at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > > at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > > at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > > at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > > at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > > at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > > at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > > at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > > at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > > at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > > at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > > at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > > at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End server side stack trace
              > > >
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > > at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > > at java.lang.System.loadLibrary(System.java:820)
              > > > at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > > at java.security.AccessController.doPrivileged(Native Method)
              > > > at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > > at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > > at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > > at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > > at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > > at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > > at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > > at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > > at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > > at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > > at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > > at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > > at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > > at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > > at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > > at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > > at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End server side stack trace
              > > >
              > > > <<no stack trace available>>
              > > > --------------- nested within: ------------------
              > > > weblogic.rmi.extensions.RemoteRuntimeException - with nested exception:
              > > > [java.rmi.ServerError: A error occurred the server; nested exception is:
              > > >         java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.rmi.ServerError: A error occurred the server; nested exception is:
              > > >         java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > >         at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > >         at java.lang.System.loadLibrary(System.java:820)
              > > >         at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > >         at java.security.AccessController.doPrivileged(Native Method)
              > > >         at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > >         at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > >         at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > >         at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > >         at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > >         at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > >         at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > >         at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > >         at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > >         at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > >         at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > >         at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > >         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > >         at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > >         at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > >         at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > >         at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > >         at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > >         at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > >         at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > >         at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > >         at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > >         at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > >         at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > >         at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > >         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > >         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End  server side stack trace
              > > > ; nested exception is:
              > > >         java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > >         at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > >         at java.lang.System.loadLibrary(System.java:820)
              > > >         at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > >         at java.security.AccessController.doPrivileged(Native Method)
              > > >         at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > >         at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > >         at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > >         at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > >         at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > >         at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > >         at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > >         at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > >         at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > >         at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > >         at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > >         at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > >         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > >         at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > >         at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > >         at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > >         at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > >         at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > >         at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > >         at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > >         at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > >         at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > >         at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > >         at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > >         at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > >         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > >         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End  server side stack trace
              > > > ]
              > > > at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:60)
              > > > at $Proxy1.bridgeWLS2MQS(Unknown Source)
              > > > at MQClient.main(MQClient.java:54)
              > >
              > >
              

  • Plz tell me BDC  CALL TRANSACTION steps with simple example

    hi,
    plz tell me the steps
    BDC  CALL TRANSACTION steps with simple example

    Hi,
    BATCH DATA COMMUNICATION
    About Data Transfer In R/3 System
    When a company decides to implement the SAP R/3 to manage business-critical data, it usually does not start from a no-data situation. Normally, a SAP R/3 project comes into replace or complement existing application.
    In the process of replacing current applications and transferring application data, two situations might occur:
    ? The first is when application data to be replaced is transferred at once, and only once.
    ? The second situation is to transfer data periodically from external systems to SAP and vice versa.
    ? There is a period of time when information has to be transferred from existing application, to SAP R/3, and often this process will be repetitive.
    The SAP system offers two primary methods for transferring data into SAP systems. From non-SAP systems or legacy system. These two methods are collectively called ?batch input? or ?batch data communication?.
    1. SESSION METHOD
    2. CALL TRANSACTION
    3. DIRECT INPUT
    Advantages offered by BATCH INPUT method:
    1. Can process large data volumes in batch.
    2. Can be planned and submitted in the background.
    3. No manual interaction is required when data is transferred.
    4. Data integrity is maintained as whatever data is transferred to the table is through transaction. Hence batch input data is submitted to all the checks and validations.
    To implement one of the supported data transfers, you must often write the program that exports the data from your non-SAP system. This program, known as a ?data transfer? program must map the data from the external system into the data structure required by the SAP batch input program.
    The batch input program must build all of the input to execute the SAP transaction.
    Two main steps are required:
    ? To build an internal table containing every screen and every field to be filled in during the execution of an SAP transaction.
    ? To pass the table to SAP for processing.
    Prerequisite for Data Transfer Program
    Writing a Data Transfer Program involves following prerequisites:
    Analyzing data from local file
    Analyzing transaction
    Analyzing transaction involves following steps:
    ? The transaction code, if you do not already know it.
    ? Which fields require input i.e., mandatory.
    ? Which fields can you allow to default to standard values.
    ? The names, types, and lengths of the fields that are used by a transaction.
    ? Screen number and Name of module pool program behind a particular transaction.
    To analyze a transaction::
    ? Start the transaction by menu or by entering the transaction code in the command box.
    (You can determine the transaction name by choosing System ? Status.)
    ? Step through the transaction, entering the data will be required for processing your batch input data.
    ? On each screen, note the program name and screen (dynpro) number.
    (dynpro = dyn + pro. Dyn = screen, pro = number)
    ? Display these by choosing System ? Status. The relevant fields are Program (dynpro) and Dynpro number. If pop-up windows occur during execution, you can get the program name and screen number by pressing F1 on any field or button on the screen.
    The technical info pop-up shows not only the field information but also the program and screen.
    ? For each field, check box, and radio button on each screen, press F1 (help) and then choose Technical Info.
    Note the following information:
    - The field name for batch input, which you?ll find in its own box.
    - The length and data type of the field. You can display this information by double clicking on the Data Element field.
    ? Find out the identification code for each function (button or menu) that you must execute to process the batch-input data (or to go to new screen).
    Place the cursor on the button or menu entry while holding down the left mouse button. Then press F1.
    In the pop-up window that follows, choose Technical info and note the code that is shown in the Function field.
    You can also run any function that is assigned to a function key by way of the function key number. To display the list of available function keys, click on the right mouse button. Note the key number that is assigned to the functions you want to run.
    Once you have program name, screen number, field name (screen field name), you can start writing.
    DATA TRANSFER program.
    Declaring internal table
    First Integral Table similar to structure like local file.
    Declaring internal table like BDCDATA
    The data from internal table is not transferred directly to database table, it has to go through transaction. You need to pass data to particular screen and to particular screen-field. Data is passed to transaction in particular format, hence there is a need for batch input structure.
    The batch input structure stores the data that is to be entered into SAP system and the actions that are necessary to process the data. The batch input structure is used by all of the batch input methods. You can use the same structure for all types of batch input, regardless of whether you are creating a session in the batch input queue or using CALL TRANSACTION.
    This structure is BDCDATA, which can contain the batch input data for only a single run of a transaction. The typical processing loop in a program is as follows:
    ? Create a BDCDATA structure
    ? Write the structure out to a session or process it with CALL TRANSACTION USING; and then
    ? Create a BDCDATA structure for the next transaction that is to be processed.
    Within a BDCDATA structure, organize the data of screens in a transaction. Each screen that is processed in the course of a transaction must be identified with a BDCDATA record. This record uses the Program, Dynpro, and Dynbegin fields of the structure.
    The screen identifier record is followed by a separate BDCDATA record for each value, to be entered into a field. These records use the FNAM and FVAL fields of the BDCDATA structure. Values to be entered in a field can be any of the following:
    ? Data that is entered into screen fields.
    ? Function codes that are entered into the command field. Such function codes execute functions in a transaction, such as Save or Enter.
    The BDCDATA structure contains the following fields:
    ? PROGRAM: Name of module pool program associated with the screen. Set this field only for the first record for the screen.
    ? DYNPRO: Screen Number. Set this field only in the first record for the screen.
    ? DYNBEGIN: Indicates the first record for the screen. Set this field to X, only for the first record for the screen. (Reset to ? ? (blank) for all other records.)
    ? FNAM: Field Name. The FNAM field is not case-sensitive.
    ? FVAL: Value for the field named in FNAM. The FVAL field is case-sensitive. Values assigned to this field are always padded on the right, if they are less than 132 characters. Values must be in character format.
    Transferring data from local file to internal table
    Data is uploaded to internal table by UPLOAD of WS_UPLOAD function.
    Population of BDCDATA
    For each record of internal table, you need to populate Internal table, which is similar to BDCDATA structure.
    All these five initial steps are necessary for any type of BDC interface.
    DATA TRANSFER program can call SESSION METHOD or CALL TRANSACTION. The initial steps for both the methods are same.
    First step for both the methods is to upload the data to internal table. From Internal Table, the data is transferred to database table by two ways i.e., Session method and Call transaction.
    SESSION METHOD
    About Session method
    In this method you transfer data from internal table to database table through sessions.
    In this method, an ABAP/4 program reads the external data that is to be entered in the SAP System and stores the data in session. A session stores the actions that are required to enter your data using normal SAP transaction i.e., Data is transferred to session which in turn transfers data to database table.
    Session is intermediate step between internal table and database table. Data along with its action is stored in session i.e., data for screen fields, to which screen it is passed, the program name behind it, and how the next screen is processed.
    When the program has finished generating the session, you can run the session to execute the SAP transactions in it. You can either explicitly start and monitor a session or have the session run in the background processing system.
    Unless session is processed, the data is not transferred to database table.
    BDC_OPEN_GROUP
    You create the session through program by BDC_OPEN_GROUP function.
    Parameters to this function are:
    ? User Name: User name
    ? Group: Name of the session
    ? Lock Date: The date on which you want to process the session.
    ? Keep: This parameter is passed as ?X? when you want to retain session after
    processing it or ? ? to delete it after processing.
    BDC_INSERT
    This function creates the session & data is transferred to Session.
    Parameters to this function are:
    ? Tcode: Transaction Name
    ? Dynprotab: BDC Data
    BDC_CLOSE_GROUP
    This function closes the BDC Group. No Parameters.
    Some additional information for session processing
    When the session is generated using the KEEP option within the BDC_OPEN_GROUP, the system always keeps the sessions in the queue, whether it has been processed successfully or not.
    However, if the session is processed, you have to delete it manually. When session processing is completed successfully while KEEP option was not set, it will be removed automatically from the session queue. Log is not removed for that session.
    If the batch-input session is terminated with errors, then it appears in the list of INCORRECT session and it can be processed again. To correct incorrect session, you can analyze the session. The Analysis function allows to determine which screen and value has produced the error. If you find small errors in data, you can correct them interactively, otherwise you need to modify batch input program, which has generated the session or many times even the data file.
    CALL TRANSACTION
    About CALL TRANSACTION
    A technique similar to SESSION method, while batch input is a two-step procedure, Call Transaction does both steps online, one after the other. In this method, you call a transaction from your program by
    Call transaction <tcode> using <BDCTAB>
    Mode <A/N/E>
    Update <S/A>
    Messages into <MSGTAB>.
    Parameter ? 1 is transaction code.
    Parameter ? 2 is name of BDCTAB table.
    Parameter ? 3 here you are specifying mode in which you execute transaction
    A is all screen mode. All the screen of transaction are displayed.
    N is no screen mode. No screen is displayed when you execute the transaction.
    E is error screen. Only those screens are displayed wherein you have error record.
    Parameter ? 4 here you are specifying update type by which database table is updated.
    S is for Synchronous update in which if you change data of one table then all the related Tables gets updated. And sy-subrc is returned i.e., sy-subrc is returned for once and all.
    A is for Asynchronous update. When you change data of one table, the sy-subrc is returned. And then updating of other affected tables takes place. So if system fails to update other tables, still sy-subrc returned is 0 (i.e., when first table gets updated).
    Parameter ? 5 when you update database table, operation is either successful or unsuccessful or operation is successful with some warning. These messages are stored in internal table, which you specify along with MESSAGE statement. This internal table should be declared like BDCMSGCOLL, a structure available in ABAP/4. It contains the following fields:
    1. Tcode: Transaction code
    2. Dyname: Batch point module name
    3. Dynumb: Batch input Dyn number
    4. Msgtyp: Batch input message type (A/E/W/I/S)
    5. Msgspra: Batch input Lang, id of message
    6. Msgid: Message id
    7. MsgvN: Message variables (N = 1 - 4)
    For each entry, which is updated in database, table message is available in BDCMSGCOLL. As BDCMSGCOLL is structure, you need to declare a internal table which can contain multiple records (unlike structure).
    Steps for CALL TRANSACTION method
    1. Internal table for the data (structure similar to your local file)
    2. BDCTAB like BDCDATA
    3. UPLOAD or WS_UPLOAD function to upload the data from local file to itab. (Considering file is local file)
    4. Loop at itab.
    Populate BDCTAB table.
    Call transaction <tcode> using <BDCTAB>
    Mode <A/N/E>
    Update <S/A>.
    Refresh BDCTAB.
    Endloop.
    (To populate BDCTAB, You need to transfer each and every field)
    The major differences between Session method and Call transaction are as follows:
    SESSION METHOD CALL TRANSACTION
    1. Data is not updated in database table unless Session is processed. Immediate updation in database table.
    2. No sy-subrc is returned. Sy-subrc is returned.
    3. Error log is created for error records. Errors need to be handled explicitly
    4. Updation in database table is always synchronous Updation in database table can be synchronous Or Asynchronous.
    Error Handling in CALL TRANSACTION
    When Session Method updates the records in database table, error records are stored in the log file. In Call transaction there is no such log file available and error record is lost unless handled. Usually you need to give report of all the error records i.e., records which are not inserted or updated in the database table. This can be done by the following method:
    Steps for the error handling in CALL TRANSACTION
    1. Internal table for the data (structure similar to your local file)
    2. BDCTAB like BDCDATA
    3. Internal table BDCMSG like BDCMSGCOLL
    4. Internal table similar to Ist internal table
    (Third and fourth steps are for error handling)
    5. UPLOAD or WS_UPLOAD function to upload the data from the local file to itab. (Considering file is local file)
    6. Loop at itab.
    Populate BDCTAB table.
    Call transaction <tr.code> using <Bdctab>
    Mode <A/N/E>
    Update <S/A>
    Messages <BDCMSG>.
    Perform check.
    Refresh BDCTAB.
    Endloop.
    7 Form check.
    IF sy-subrc <> 0. (Call transaction returns the sy-subrc if updating is not successful).
    Call function Format_message.
    (This function is called to store the message given by system and to display it along with record)
    Append itab2.
    Display the record and message.
    DIRECT INPUT
    Thanks &regards,
    Sravani

  • How Transaction Manager work with Resource Manager, like Connection pool?

    hi,
    I'm using BEA Webloigc8.1 Stateless Session Bean/DAO/Oracle stored proc.
    but I'm not quite clear how Transaction Manager work with Resource Manager, like Connection pool.
    my understanding is that, in a weblogic transaction, a stateless session bean interact with several DAOs, and for each method of DAO a connection is acquired from connection pool. I've heard that the connection will not return to pool until the transaction commits.
    My question is that, does it mean that for a weblogic transaction, multiple connections might be allocated to it? and if multiple connections are allocated, then how many oracle transactions would be started? or multiple connections share the same oracle transaction?
    I didn't feel it make sense to start multiple oracle transactions, cause deadlock might be incurred in a single weblogic transaction.
    any help appreciated!

    Xin Zhuang wrote:
    hi,
    I'm using BEA Webloigc8.1 Stateless Session Bean/DAO/Oracle stored proc.
    but I'm not quite clear how Transaction Manager work with Resource Manager, like Connection pool.
    my understanding is that, in a weblogic transaction, a stateless session bean interact with several DAOs, and for each method of DAO a connection is acquired from connection pool. I've heard that the connection will not return to pool until the transaction commits.
    My question is that, does it mean that for a weblogic transaction, multiple connections might be allocated to it? and if multiple connections are allocated, then how many oracle transactions would be started? or multiple connections share the same oracle transaction?
    I didn't feel it make sense to start multiple oracle transactions, cause deadlock might be incurred in a single weblogic transaction.
    any help appreciated!Hi. If you configure your WLS DataSource to use keep a connection for
    the duration of a tx, it will do that, and in any case there can be
    no deadlock however many connections operate for a given XA transaction.
    Here is the best coding form for DAOs or any other user-written code
    for using WebLogic DataSources. This is important for two reasons:
    1 - Thread-safety is maintained as long as the connection is a
    method-level object.
    2 - It is crucial to notify WebLogic that you are done with a connection
    ASAP, by your calling close() on it. We will then put it back in the
    pool, or keep it under the covers for your next request if it's in a
    transaction etc. The pool is optimized for quick get-use-close scenarios.
    public void one_of_my_main_JDBC_Methods()
    Connection con=null; // Must be a method level object for thread-safety
    // It will be closed by the end of the method.
    try {
    con = myDataSource.getConnection(); // Get the connection in the try
    // block, directly from the WebLogic
    // datasource
    // do all the JDBC within this try block. You can pass the
    // connection to subordinate methods, but not to anywhere
    // that thinks it can use the connection later.
    rs.close(); // close any result set asap
    stmt.close(); // then close any statement asap
    // When you're done with JDBC
    con.close(); // close the connection asap
    con = null; // nullify it so the finally knows it's done
    catch (Exception e) {
    // do whatever catch stuff you want. You don't
    // need a catch block if you don't want one...
    finally {
    // It is important to close a JDBC connection ASAP when it's not needed.
    // without fail, and regardless of exit path. Do everything in your
    // finally block in it's own try-catch-ignore so everything is done.
    try { if (con != null) con.close();} catch (Exception ignore){}
    return ret;
    }

  • Hi Team, I wuold like to know if you have any app to make Firefox OS working with cisco Call Manager 10.5. Something like Cisco Jabber for Android or iOS.

    I'm interesting on buying a Firefox Smart Phone, but
    I would like to know if are any app to install on Firefox OS smart phone in order to work with cisco call manager 10.5.
    Something like Cisco Jabber for Android o iOS.
    Thanks,

    Hi Itech,
    If Cisco Jabber has a webapp, or mobile version of their website available, you should technically be able to access it through Firefox OS.
    You may also search Firefox Marketplace for an alternative solution:
    * [https://marketplace.firefox.com/]
    - Ralph

  • Problems with a call transaction

    Hi, I'm having some problems with a call transaction and I cannot understand why. I put A in the mode, and I am seeing the dynpros and I am pressing enter it works perfectly but when I use mode N it tells me that there is not information for one of the dynpros and it doesn't work. Does anybody know the problem and how to solve it??
    Thanks in advance

    Hi,
    First of all thank you very much for your time.
    I am using FB05 and the problem is in dynpro SAPLKACB 0002, and it says that batch input data doesn't exist. Here is the code, maybe you can see what is happening
    LOOP AT t_resumen WHERE belnr = t_batch-belnr AND
                                ( contador = 3 OR contador = 4 or CONTADOR = 5 ).
          READ TABLE t_clave WITH KEY belnr = t_resumen-belnr.
          d_clave = t_clave-bschl.
          i = i + 1.
          CASE i.
            WHEN 1.
              PERFORM bdc_dynpro  USING 'SAPMF05A'    '0700'.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '/00'.
              PERFORM bdc_field   USING 'RF05A-NEWBS' t_resumen-bschl.
              PERFORM bdc_field   USING 'RF05A-NEWKO' t_resumen-hkont.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '/00'.
              PERFORM bdc_dynpro  USING 'SAPMF05A'    '0300'.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '/00'.
              j_wrbtr = t_resumen-wrbtr.
              REPLACE '.' WITH ',' INTO j_wrbtr.
              PERFORM bdc_field   USING 'BSEG-WRBTR' j_wrbtr.
              PERFORM bdc_dynpro  USING 'SAPLKACB'    '0002'.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '/00'.
            WHEN t.
              PERFORM bdc_dynpro  USING 'SAPMF05A'    '0300'.
              PERFORM bdc_field   USING 'RF05A-NEWBS'  t_resumen-bschl.
              PERFORM bdc_field   USING 'RF05A-NEWKO'  t_resumen-hkont.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '/00'.
              j_hkont = t_resumen-hkont.
              j_clave = t_resumen-bschl.
              PERFORM bdc_dynpro  USING 'SAPMF05A'    '0300'.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '=BU'.
              j_wrbtr = t_resumen-wrbtr.
              REPLACE '.' WITH ',' INTO j_wrbtr.
              PERFORM bdc_field   USING 'BSEG-WRBTR' j_wrbtr.
              PERFORM bdc_dynpro  USING 'SAPLKACB'    '0002'.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '/00'.
            WHEN OTHERS.
              PERFORM bdc_dynpro  USING 'SAPMF05A'    '0300'.
              PERFORM bdc_field   USING 'RF05A-NEWBS'  t_resumen-bschl.
              PERFORM bdc_field   USING 'RF05A-NEWKO'  t_resumen-hkont.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '/00'.
              j_hkont = t_resumen-hkont.
              j_clave = t_resumen-bschl.
              PERFORM bdc_dynpro  USING 'SAPMF05A'    '0300'.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '/00'.
              j_wrbtr = t_resumen-wrbtr.
              REPLACE '.' WITH ',' INTO j_wrbtr.
              PERFORM bdc_field   USING 'BSEG-WRBTR' j_wrbtr.
              PERFORM bdc_dynpro  USING 'SAPLKACB'    '0002'.
              PERFORM bdc_field   USING 'BDC_OKCODE'  '/00'.
          ENDCASE.
            READ TABLE t_porcentajes WITH KEY gjahr = t_resumen-zzbad
                                           zzbtd = t_resumen-zzbtd.
            IF j_hkont = t_porcentajes-cfacpr.
              PERFORM bdc_field   USING 'COBL-PRCTR' t_porcentajes-prctrfac.
              PERFORM bdc_field   USING 'COBL-ZZBTD' t_resumen-zzbtd.
              PERFORM bdc_field   USING 'COBL-ZZBAD' t_resumen-zzbad.
            ELSEIF t_resumen-hkont = t_porcentajes-cadmin.
             PERFORM bdc_field   USING 'COBL-KOSTL' '20801'.
            ELSEIF t_resumen-hkont = t_porcentajes-creca.
             PERFORM bdc_field   USING 'COBL-KOSTL' '20401'.
            ELSE.
              IF d_clave = 01 OR d_clave = 04 OR d_clave = 40 OR d_clave = 09.
                IF j_hkont >= 424001 AND j_hkont <= 424005.
                  PERFORM bdc_field   USING 'COBL-PRCTR' 'DUMMY'.
                ELSEIF j_hkont >= 424601 AND j_hkont <= 424605.
                  IF j_clave = 40.
                    PERFORM bdc_field   USING 'COBL-PRCTR' 'DUMMY'.
                  ENDIF.
                ENDIF.
              ELSEIF d_clave = 11 OR d_clave = 12 OR d_clave = 14 OR d_clave = 50.
                IF j_hkont >= 424001 AND j_hkont <= 424005.
                  PERFORM bdc_field   USING 'COBL-PRCTR' 'DUMMY'.
                ELSEIF j_hkont >= 424601 AND j_hkont <= 424605.
                  IF j_clave = 50.
                    PERFORM bdc_field   USING 'COBL-PRCTR' 'DUMMY'.
                  ENDIF.
                ENDIF.
              ENDIF.
    *Fin modificacion marzo 2007.----
              PERFORM bdc_field   USING 'COBL-ZZBTD' t_resumen-zzbtd.
              PERFORM bdc_field   USING 'COBL-ZZBAD' t_resumen-zzbad.
              PERFORM bdc_field   USING 'COBL-ZZBTT' t_resumen-zzbtt.
              PERFORM bdc_field   USING 'COBL-ZZBTU' t_resumen-zzbtu.
              PERFORM bdc_field   USING 'COBL-ZZBTS' t_resumen-zzbts.
              PERFORM bdc_field   USING 'COBL-ZZBAG' t_resumen-zzbag.
              PERFORM bdc_field   USING 'COBL-ZZBRE' t_resumen-zzbre.
              PERFORM bdc_field   USING 'COBL-ZZBC8' t_resumen-zzbc8.
              PERFORM bdc_field   USING 'COBL-ZZBC9' t_resumen-zzbc9.
            ENDIF.
        ENDLOOP.

  • Call a Transaction iView with parameters

    Hello,
    can anyone help me with the following problem:
    I'll just tried to call the transaction RECN with a transaction iView. When I test the iView it works but not with any parameters in the URL.
    I'll tried the parameters fix in the iView properties but without any result.
    Can someone tell me the correct syntax? I'll tried everything I can find in the SAP help and here in the forum.
    Have someone a how to for calling transaction iView with dynamical parameters?
    Thanks for help!
    Best regards
    Martin

    Martin,
    Have you had a look at these yet?
    http://wiki.sdn.sap.com/wiki/display/EP/StartanSAPtransactionfromaURL
    How to launch SAP transaction & pass parameters via URL
    Cheers!
    Sandeep Tudumu

  • Is it possible to integrate Nokia E62 with Cisco Call Manager 4.x?

    The Nokia E-61 can be integrated with Cisco Call manager 4.x using a Nokia Call Connect 1.0 client.
    1.Is it possible to do the same with Nokia E62.If it can be done,what would be the requirements?
    2.Is Nokia E-62 PDA a Cisco Compatible Extension device?

    Thanks a lot for the prompt reply.You are right in saying that nokia and cisco are increasing the number of models supported.Infact the E65 has already joined the club.But my point of interest is the nokia E62 in particular.This Nokia E62 device
    1) does not support WLAN interface(while E61,E65 does).
    2) It is not Cisco Commpatible extension device.(I did not find E62 in the list of Cisco Compatible extensions.chk out the attachments for more info).
    3)It is not compatible with Nokia Intellisync CAll Connect 1.0(while E61 and E65 are compatible.chk out the attachment for more info).
    I found this rather weird and i wondered if Nokia E62 can be integrated with Cisco Call manager ,especially a device which is not Cisco compatible.The only possibility i can see from your answer is that the Nokia E62 might not be SIP enabled(correct me if i am wrong here!)
    My objective is to send a message from a CUAE script to a nokia E62 device.Please excuse me if my posting is not in the right place.i would be highly grateful to you if you could give me pointers to an appropiate location where i can get my queries answered.

Maybe you are looking for

  • Saving a WORD or PDF document in the database?

    Hello, If I have a WORD document, PDF document or EXCEL document. How can I save them in the database? What type of LOB I should use. What I would like to do is have a webpage with a text box and a browse button. The user can then use the browse butt

  • How can I initialize the xScale of a xygraph with a string like '03-00010' ?

    I have two arrays. the first one is an array with decimal numbers (i.e. 0.9 ; 1.2 ; 5.0) and the second array is a string array (i.e. 03-01; 03-23; 05-001). I want to plot the pairs of values with a xygraph. How can I format the second array to scale

  • LSMW  recording issue

    Dear All, I have created a LSMW with recording method.Now I want to add some other fields to that record created. How and where can I add fields? Plz explain me Treat it as an urgent. Regards, Kumar.D

  • Why can't I install system updates?

    Hi all, I realized today that my system updates haven't actually been 'installing' for awhile. Whoops. Basically, I have a slew up updates that need to be installed, and I get a message that I need to restart my computer for this install to happen. I

  • CS4- lost 1/2 of my fonts via Suitcase Fusion trial??? HELP

    If ANYONE can please help me ... today I downloaded a trial version of Suitcase Fusion 3 to see waht is was like. I also uninstalled it today. NOW, all of my Adobe programs are missing (not pulling up) my enitre fonts list ie: basics like Myriad Pro