How to Access a BPM container variable in XI graphical  message mapping

Hello XI BPM and Mapping experts,
is it possible to access a BPM container variable from an graphical mapping?
If yes, how ?
We need this for the following scenario:
IDOC to BPM.
BPM  transforms and sends transformed IDOC to fileadapter
If both steps are successful  a STATUS.SYSTAT01 IDOC should be send back to SAP-ISU with status 06.
If one of these steps fails  the status in the SYSTAT01 should be set to 05. (Exception branch of block)
We want to avoid to write 2 mapping programs for mapping the SYSTAT01.
Instead we would like to use a BPM Container Variable which contains the status.
In the mapping for the SYSTAT01 we want to use this Container Variable.
Is this possible?
Thanks for soon answers.
Regards Marlies

Hi Marlies,
   Is not possible to acces a BPM container variable from graphical mapping. For other hand, you can to use runtime variables for this purpose.
   You could create an abstract interface with a message type having a single node with the required value and using this message in other mapping.
Best regards
Ivá

Similar Messages

  • Accessing a BPM Container Variable Inside A Mapping

    Hi
    Is It possible to access a BPM container variable (Simple type say a String )in a Mapping (message mapping). This mapping  is present in the same BPM itself. Is it possible to access the variable in the mapping.
    My basic objective is i need to read and update values between My message mapping and Bpm container simple type variable. I read a value  from BPM variable and then update this variable and again write it back to the BPM container variable and then again read it in a loop . Is it possible to do this exchange.

    Hi,
    The only way is to do with mapping. Totally you need to add your conatiner values into message and then thru mapping you can access.
    Using Container Operation-Append
    http://help.sap.com/saphelp_nw04/helpdata/en/59/e1283f2bbad036e10000000a114084/content.htm
    Regards,
    Moorthy

  • Accessing container variables from ccBPM in Message Mapping?

    Hello Friends,
    I have created a ccBPM and require to send response messages to the sending system at different points as the message proceeds from one state to another. I do not want to create multiple message mapping stating different status in every message mapping. The message mapping remains the same only the status is changing. So I am thinking if I can access container elements in ccBPM at message mapping then I should be able to use only one message mapping.  Is it possible at all?
    Let me know if you have other solutions. Let me know if I am not clear?
    Thanks & Regards,
    Anand Patil

    Hi Abhishek,
    Your suggestion to use Parameterized Mapping did solve my issue. I was looking something like this. Thanks.
    Now I have only one Message Mapping and it is used in multiple places. Thanks a lot
    Best regards,
    Anand Patil

  • How to access a JAVA Script variable in JSP Code

    How to access a JAVA Script variable in JSP Code. I have been unable todo this.
    Plz Suggest a way.
    Thanks
    Soumya

    try to do this code
    String s=request.getParameter("javascriptvariablename");

  • How to access the parent class variable or object in java

    Hi Gurus,
    I encounter an issue when try to refer to parent class variable or object instance in java.
    The issue is when the child class reside in different location from the parent class as shown below.
    - ClassA and ClassB are reside in xxx.oracle.apps.inv.mo.server;
    - Derived is reside in xxx.oracle.apps.inv.mo.server.test;
    Let say ClassA and ClassB are the base / seeded class and can not be modified. How can i refer to the variable or object instance of ClassA and ClassB inside Derived class.
    package xxx.oracle.apps.inv.mo.server;
    public class ClassA {
        public int i=10;
    package xxx.oracle.apps.inv.mo.server;
    public class ClassB extends ClassA{
        int i=20;   
    package xxx.oracle.apps.inv.mo.server.test;
    import xxx.oracle.apps.inv.mo.server.ClassA;
    import xxx.oracle.apps.inv.mo.server.ClassB;
    public class Derived extends ClassB {
        int i=30;
        public Derived() {
           System.out.println(this.i);                  // this will print 30
           System.out.println(((ClassB)this).i);  // error, but this will print 20 if Derived class located in the same location as ClassB
           System.out.println(((ClassA)this).i);  // error, but this will print 20 if Derived class located in the same location as ClassA
        public static void main(String[] args) { 
            Derived d = new Derived(); 
    Many thanks in advance,
    Fendy

    Hi ,
    You cannot  access the controller attribute instead create an instance of the controller class and access the attribute in the set method
    OR create a static method X in the controller class and store the value in that method. and you can access the attribute by 
    Call method class=>X
    OR if the attribute is static you can access by classname=>attribute.
    Regards,
    Gangadhar.S
    Edited by: gangadhar rao on Mar 10, 2011 6:56 AM

  • Get BPM Container Variable?

    Is it possible to get the value of a BPM simple type container variable at Mapping time?

    Hi Ruben,
    you can use a trick:
    - datatype: extend the source container with one field (your simple type)
    - datatype: make all fields optional (0-1 or 0-unbounded)
    - process: create a new multiline container from this type
    - tranformation: fill the one line container with simple type
    - container operation: append to multiline
    - tranformation: fill the one line container with your message
    - container operation: append to multiline
    - transformation: merge the multiline to single-line
    - transformation: Now you have the value of your simple type in an additional field
    Regards,
    Udo

  • How we can use Business Contained Variable

    Hi All,
    I want to use Business Contained Variables which is already using in other BW report, can any body tell me navigation Part.
    Thanks & regards
    Premansh Gupta

    Hi,
    you said that the same variable is already being used in other queries?
    where are you searching for variable list?
    after opening the Query,find the characteristic in the left window (from dimension tree) and expend it and expand 'charateristic value variables'..here you will find all the variables associated with the char.
    what is the characteristic? and whats the variable you are looking for?

  • How to use the variables used in the message mapping

    Hi ,
    In the message mapping we can declare variables in the JAVA section , these variables could be used across the mapping .
    I have tried using it but I am unable to retrieve the values assigned to the variables in one UDF into the another UDF .
    Please guide me how to use the variables declared in the JAVA section in the message mapping .
    Thanks
    Anita Yadav

    Anita,
    I have worked on the Global variables and i found no issues. Make sure that the variable is declared in the Declaration Section and then initlaized in the Initialization section.
    If you declare a variable in the Declaration Section ,
    int i;
    then in any udf you can use if directly. No need to re declare  the variable in the UDF. If you do this, then it becomes a local variable.
    Regards,
    Bhavesh

  • Access current system or target system ID in message mapping

    Hi.
    I have a requirement to map three different constant values to Sales Org field, depending on whether the system is D, Q or Prod.
    This needs to be done in the message mapping section of the Interface along with all the other mapping logic.
    Is there any way how we can access the current system ID or the Target system ID (XI is communicating with target, in this case, ECC, using RFC receiver Communication channel)?
    Please help.
    Thanks.
    Anuradha.

    Hi,
    The key element would be :-
    System.getProperty("SAPSYSTEMNAME");
    Use this in UDF to get System Name ... and then on basis of systemname do whatever you want to perform.
    Regards
    Prabhat Sharma

  • How to access an object's variable from native code

    i am passing an object in a native method.i have to change the value of the object's variable.how do i access the variable of object and assign it new value from c++ code.when i try to access it i get a message that the variable must have a class/sruct/union type.
    pl. help.

    I'll tell You if You send me the structure of this object in Java. And a name of field what are You thinking about.
    Maciek

  • How to use an BPM Instance Variable in JSP page

    Hi All,
    I am using the JSP Presentation, but i don't know how to use an Instance variable in JSP page, that instance already declared in the process. And Can u explain the syntax that to include the JS file into jsp page
    Regards
    Vasu.
    Edited by bpmvasu at 04/03/2007 10:43 PM

    Hi Mariano,
    I'm using JSP presentation too. In "Interactive Component Call" active i'm using "Use JSP presentation", but i only can define one instance variable, i need to add more instance variables. In "Advanced" option of this task, i have the argument mapping .. but i don't understand how to use it.
    I have a instance variable called "genders" of the type String[Int] (Associative Array) and i'm mapping this instance variable in "Arguments Show In" option of the advanced option of JSP presentation. In JSP presentation i have the code:
    <select <f:fieldName att="person.gender"/>>
                   <c:forEach var="gender" begin="0" items="${genders}" varStatus="status">
                        <c:choose>
                             <c:when test="${person.gender == gender}">
                                  <option value="<c:out value="${gender}"/>" selected="true"><c:out value="${gender}"/></option>
                             </c:when>
                             <c:otherwise>
                                  <option value="<c:out value="${gender}"/>"><c:out value="${gender}"/></option>
                             </c:otherwise>
                        </c:choose>
                   </c:forEach>
              </select>And in my screenflow i have the code:
    genders[0] = "Male"
    genders[1] = "Female"But when i run my application, i have the error: "The task could not be successfully executed. Reason: 'java.lang.ClassCastException: java.lang.Integer'."
    What's the problem?

  • How to access TestStand Event and variables from external application?

    Hi all
    The test system was built by TestStand, now there is a new requirement to filter the test report without change the sequence file. The task must be done without any impact to previous software system, so I decide to write a tool by VC++.
    My idea is to deal with the reports after every UUT loop, but I need to monitor the UUT loop status by VC++, if an unit is tested, pass or fail, raise a event and pass to VC++ application. In a word, I would like to access TestStand internal event and variables.
    Anyone has ideal on this case? ActiveX or something.
    thanks .
    Rexxar
    *The best Chinese farmer*

    paulbin,
    While sharing variables via COM or DCOM is certaintly possible, I don't think you need to go down that route.  I think that there is probably an easier way to limit your report.  In your Configuration menu, under the Report Options item, there is a field at the top that will allow you to filter what steps go into your report.
    This will not affect any sequence file you may have already created, all it does is change a few options in the ReportOptions.ini file in the <TestStand>\cfg directory.
    This is a much simpler option than trying to write a program to interface with a running TestStand engine.
    Josh W.
    Certified TestStand Architect
    Formerly blue

  • How can I use loop in graphical message mapping

    The source input XML is like:
    <bookstore>
      <book>
           <item1>xxx</item1>
           <item2>yyy</item2>
      </book>
      <book>
            <item1>zzz</item1>
           <item2>www</item2> 
    </book>
    </bookstore>
    I want to create an output XML like
    <output>
       <item>
            <item1>xxx</item1>
             <item2>yyy</item2>
        </item>
       <item>
            <item1>xxx</item1>
             <item2>www</item2>
        </item>
       <item>
            <item1>zzz</item1>
             <item2>www</item2>
        </item>
       <item>
            <item1>xxx</item1>
             <item2>yyy</item2>
        </item>
    </output>
    That means I want to do permutation and combination for all <item1> <item2> under <book>.
    Of course I can write a customer function to do it, but I want to basically use the buildin functions to do the graphical message mapping for this.
    Any idea?  thank you.

    well, I'm not very clear of those 2 English words
    What I want is to list all possible combination of item1 and item2 (and in fact, we have item3, item4, ....etc).
    example
    input: 
    <item>
              <item1> 111 </item1>
              <item2> 222 </item2>
              <item3> 333 </item3>
    </item>
    <item>
              <item1> aaa </item1>
              <item2> bbb </item2>
              <item3> ccc </item3>
    </item>
    I want to get
    <item><Item1>111>/item1> <item2>222</item2> <item3>333</item3> </item>
    <item><Item1>111>/item1> <item2>222</item2> <item3>ccc</item3> </item>
    <item><Item1>111>/item1> <item2>bbb</item2> <item3>333</item3> </item>
    <item><Item1>111>/item1> <item2>bbb</item2> <item3>ccc</item3> </item>
    <item><Item1>aaa>/item1> <item2>222</item2> <item3>333</item3> </item>
    <item><Item1>aaa>/item1> <item2>222</item2> <item3>ccc</item3> </item>
    <item><Item1>aaa>/item1> <item2>bbb</item2> <item3>333</item3> </item>
    <item><Item1>aaa>/item1> <item2>bbb</item2> <item3>ccc</item3> </item>

  • How to read container variable in UDF

    Hello expert,
    I have created a container variable(var_callerId) in an integrationprocess.
    In a mapping I want to read the container variable with an UDF.
    Can anyone send me the code for the UDF please ?
    I can't find the solution in any post message / blog.
    Thx for your help!
    Best regards,
    Juergen

    Hi navneet,
    thanks for your fast reply.
    Let me explain why I wanted to use container variables:
    (Perhaps there is a better way to fix the requirement)
    I've following IP
    Message Interface (input)
    <getData>
    <callerInfo>
    <callerID>SYSA</callerID>
    <SessionID>43545455545355</SessionID>
    <number>3434344334</number>
    </callerInfo>
    </getData>
    Then I have a mapping (<number>) to call a webservice.
    I get the data from the webservice.
    At last I will send the data back to the business System.
    But I need the both tags from the input interface (SessionID, callerID) again, to send it back.
    I tried a mapping  to map sessionID and callerID from the input interface  to the output interface, but it doesn't work.
    So I thought I can store the sessionID and callerID in a container variable and in a mapping I will get it back with an UDF.
    I think there should be a possiblility to get the stored value from the container variable inside the IP. But I don't find any solution.
    I don't understand your solution with the global container. How can I access to the container variable(IP).
    Thx for your help
    Best regards
    Juergen

  • How to access BPM 11g payload or process varibles in ADF task flow

    I am trying to view/edit data in a UI tied to a database using a foreign key, requestId. The foreign key comes from a BPM process where it is passed into the task flow, from a human task. The foreign key comes from process variables or payload values. I know I can simply load the payload in BPM with data from the tables, but I'm looking for a better solution to leverage ADF Business components to view and edit the data directly in the UI.
    The BPM process uses a web service to kick off the process. The web services takes a primary key as a parameter to reference a column in the database table. The database is pre-populated with content and a primary key reference. The first activity is a user activity. I want the task flow behind the user activity to accept this primary key and use it to locate the desired row in the database so views associated with database bounded ADF Business Components can work to present the data in the UI.
    I've tried two approaches to the problem. The first uses the operation setCurrentRowWithKeyValue. The other modifies the SQL where clause, used by the ADFbc Iterator, to only return a row for the given requestId. Both approaches fail to work because I don't know how to access the BPM payload or data variables coming into the task flow. Here's the snipet of code I used to try to set the row using setCurrentRowWithKey value:
    public String setRequestId() {
    FacesContext context = FacesContext.getCurrentInstance();
    Object requestObj = context.getApplication().evaluateExpressionGet(
    context, "#{bindings.RequestId.inputValue}", Number.class);
    if (requestObj== null)
    return null;
    Number requestId;
    requestId = (Number)requestObj;
    DCIteratorBinding itr = (DCIteratorBinding)
    getBindings().get ("PatfRequestHdrView1");
    itr.setCurrentRowWithKeyValue(requestId.toString() );
    return null;
    I haven't gotten very far with the second approach, modified SQL where clause, since I don't know Groovy. I think I need something like:
    adf.object.viewObj.RequestId. But there isn't a viewObject associated with BPM data, so I'm sure this particular expression won't work.
    Any help you can give me is very appreciated.
    Regards,
    Mark

    The first thing I want the task flow to do is display a page with a form showing the values from the database. This is why I tried to call the method first. If I add the setCurrentRowWithKey to the form as a button, I can get the form to load the data, but it's a two step process, requiring the user to click a button. The method approach throws the following exceptioin
    oracle.adf.controller.activity.ActivityLogicException: ADFC-02013: The ADF Controller cannot find metadata for activity '/WEB-INF/ApproveTravel_TaskFlow.xml#ApproveTravel_TaskFlow@setTravelRecord'.
         at oracle.adfinternal.controller.util.Utils.createAndLogActivityLogicException(Utils.java:230)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.doRouting(ControlFlowEngine.java:927)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.doRouting(ControlFlowEngine.java:777)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.routeFromActivity(ControlFlowEngine.java:551)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.performControlFlow(ControlFlowEngine.java:147)
         at oracle.adfinternal.controller.application.NavigationHandlerImpl.handleAdfcNavigation(NavigationHandlerImpl.java:109)
         at oracle.adfinternal.controller.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:78)
         at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:130)
         at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
         at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
         at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:698)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:285)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.share.http.ServletADFFilter.doFilter(ServletADFFilter.java:62)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:2

Maybe you are looking for

  • IPhoto will not open any more

    I posted 7 photo galleries via iPhoto this morning. I've been attempting to open iPhoto to make a change to a title of one photo. The app. dumps on me and I report it to Apple, but I'm getting no response. I also tried to reload iPhoto to no avail. A

  • ADF Faces Components: How to fix position of af:panelPage facets

    I have several jsp pages, each of which has af:panelPage component to which I included menuGlobal, appCopyright, appPrivacy, appAbout. What I don't like about those pages is that above-mentioned facets keep moving up and down depending on contents i

  • Render (both for preview and export) takes forever

    I'm running Premiere Elements 12.0 (really 12.1) in a MacBook Pro Retina running 10.10.1 (14B25) It has quad Core i7 each 2.7 gH,  NVIDIA GeForce GT 650M 1024 MB, 16 GB of ram, and a 750GB SSD disk. There are no other applications running on the comp

  • Stacks within stacks?

    Not so much a question... but why isn't this a feature? Many times I route a handful of things into a bus (or track stack) only to end up routing that bus and maybe a few other into a semi'master' bus. It would be awesome if I could have that master

  • Nokia 5800 Is hanged...?

    Now i am using nokia 580. when i try to install antivirus,(i think) it corrept my phone files, so i could not work with my mobile... when i switch on that,its on... its works upto nokia welcome screen... after that it display blank white screen.. so