Assign one complex element from payload issue in 11g BPEL

Upgraded BPEL 10.1.3.4 to 11g (11.1.1.3.0) and I know the compiler is stricter and all, but I haven't been able to get this working. The requirement is loop through the elements of a payload in a while loop and "do something" with each. Here is a sample of the element structure:
- <ns2:costCenter>
<ns2:costCenterNo>683-01-I/4.3.8.8.04/990000</ns2:costCenterNo>
<ns2:costCenterName>683-01-I/4.3.8.8.04/990000</ns2:costCenterName>
<ns2:level1>683-01-I</ns2:level1>
<ns2:level3>990000</ns2:level3>
<ns2:address />
<ns2:city />
<ns2:state />
<ns2:zip />
</ns2:costCenter>
- <ns2:costCenter>
<ns2:costCenterNo>683-01-I/4.3.8.8.06/990000</ns2:costCenterNo>
<ns2:costCenterName>683-01-I/4.3.8.8.06/990000</ns2:costCenterName>
<ns2:level1>683-01-I</ns2:level1>
<ns2:level3>990000</ns2:level3>
<ns2:address />
<ns2:city />
<ns2:state />
<ns2:zip />
</ns2:costCenter>
I want to pick out one "costCenter" structure at a time. Here is the Assign code that worked in 10.1.3.4:
<assign name="GetCurrentCostCenter">
<copy>
<from expression="bpws:getVariableData('GetAsentinelCostCenters_FindCostCenter_OutputVariable','FindCostCenterResponse','/ns1:FindCostCenterResponse/ns1:costCenter')[bpws:getVariableData('LoopInd')]"/>
<to variable="CurrentCostCenter"
part="FindCostCenterResponse"
query="/ns1:FindCostCenterResponse/ns1:costCenter"/>
</copy>
</assign>
I thought I found the solution when I came acorss the 11g samples and in particular "bpel-102-AssignActivities". I tried the CopyList, which ends up copying over ALL the costCenter elements and "ignores" the LoopInd variable. I tried the simple assign, but get the error about result returns too many nodes:
"XPath query string returns multiple nodes. The assign activity part and query are returning multiple nodes. The assign activity part and query named in the error message returned multiple nodes. It should return single node. According to BPEL4WS specification 1.1 section 14.3, the assign activity part and query named in the error message should not return multiple nodes. Verify the part and xpath query named in the error message at line number 160 in the BPEL source."
I think I've tried every combination that I can think of. I've resulted to posting here in case someone has a similar requirement and has it working in 11g.
Thanks!

Thanks for the prompt suggestions. Both gave me a compile error and I couldn't deploy either. I might try rolling back to 11.1.1.2.0, since I found a similar post for this issue with version 11.1.1.3.0. This process has been running on 10.1.3.4 in production for a year now, so this Assign definitely worked before. I don't know what else I can try.
The Assign works when I hard-code the position, however I get the same CostCeter "/1.6.1.0.01/" assigned every time it goes through the loop, as expected. This has to be a bug in 11.1.1.3.0, it isn't picking up/interpreting the LoopInd variable properly.
<assign name="GetCurrentCostCenter">
<copy>
<from expression="bpws:getVariableData('GetAsentinelCostCenters_FindCostCenter_OutputVariable','FindCostCenterResponse','/ns1:FindCostCenterResponse/ns1:costCenter[1]')"/>
<to variable="CurrentCostCenter"
part="FindCostCenterResponse"
query="/ns1:FindCostCenterResponse/ns1:costCenter"/>
</copy>
</assign>
<?xml version="1.0" encoding="UTF-8" ?>
- <CurrentCostCenter>
- <part name="FindCostCenterResponse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <FindCostCenterResponse xmlns="http://www.asentinel.com/asentinelws/schemas/invord">
- <ns2:costCenter xmlns:ns2="http://www.asentinel.com/asentinelws/schemas/invord">
<ns2:costCenterNo>/1.6.1.0.01/</ns2:costCenterNo>
<ns2:costCenterName>/1.6.1.0.01/</ns2:costCenterName>
<ns2:level1 />
<ns2:level3 />
<ns2:address />
<ns2:city />
<ns2:state />
<ns2:zip />
</ns2:costCenter>
- <ns2:costCenter xmlns:ns2="http://www.asentinel.com/asentinelws/schemas/invord">
<ns2:costCenterNo>/1.6.8.0.01/</ns2:costCenterNo>
<ns2:costCenterName>1.6.8.0.01</ns2:costCenterName>
<ns2:level1 />
<ns2:level3 />
<ns2:address />
<ns2:city />
<ns2:state />
<ns2:zip />
</ns2:costCenter>
....

Similar Messages

  • User Task: Missing elements from payload

    I have created a user task that sends an array of 'people'. The user can select the people they want and reject the rest by removing / setting blank values.
    I have checked that the payload is being set as an array, but the JSP screen for the task only displays a single element for that array.
    When the user completes the task, the entire array is sent back, so I am guessing that this is a problem with the JSP knowing there is more than one element.
    Is there a way I can add the JSP code to access further elements?
    The payload type is defined in my process .wsdl file.
    Thanks,
    Dan

    You can edit the generated JSP to make it do whatever you like. We did this to handle arrays as well, but it proved to be pretty painful.

  • How to assign two complex type data in message payload

    Hi ,
    In my xsd file two complex type data is there ,
    but when i am trying to add these in message type request and response payload , i can add only one payload,
    is it any way to add 2 complex types in message types request and response payloads.
    Regards
    janardhan

    Each request and response has but a single payload. You can change the element of the payload to a single complex type from your XSD, but that's it. You can't assign more than one element to the request (or response) payload. Someone please correct me if I'm wrong.

  • Level One WBS Element as Acct Assignment Element

    Dear Friend's
    My user have created one project, In that there are various levels WBS Elements.
    Normally we never tick Level One WBS Element as a Acct Assignment Element.But User have made Level One WBS Element as Acct Assg Element and then Project is Released.So now I can't remove that tick because that field is Grayed out or Freezed.
    Now i wanted to Remove or Undo Release status and then I have to remove Acct Assg Element Tick.
    Pls guide me on this issue.
    Thanks in Advance.
    Regards,
    Sandeep N.Theurkar

    Hello,
             I had not seen this problem before. So i checked it in my system. But i didn't see this
    happening for me.
             I think once system status is in REL (released) status you cannot reverse it. According to me Acct.
    assignment field become gray only when posting is made against that WBS and not after release.
    Pls check it and inform.
    Regards,
    Ashish Kulkarni

  • I try to create an html for IPad. The html page contains an element overlapping a video, now it works as for view but the focus is still with video. This denies the event of overlapping element from occuring. Can please anyone help to solve this issue?

    I try to create an html for IPad. The html page contains an element overlapping a video, now it works as for view but the focus is still with video. This denies the event of overlapping element from occuring. Can please anyone help to solve this issue?

    Hello,
    '''Try Firefox Safe Mode''' to see if the problem goes away. Safe Mode is a troubleshooting mode, which disables most add-ons.
    ''(If you're not using it, switch to the Default theme.)''
    * On Windows you can open Firefox 4.0+ in Safe Mode by holding the '''Shift''' key when you open the Firefox desktop or Start menu shortcut.
    * On Mac you can open Firefox 4.0+ in Safe Mode by holding the '''option''' key while starting Firefox.
    * On Linux you can open Firefox 4.0+ in Safe Mode by quitting Firefox and then going to your Terminal and running: firefox -safe-mode (you may need to specify the Firefox installation path e.g. /usr/lib/firefox)
    * Or open the Help menu and click on the '''Restart with Add-ons Disabled...''' menu item while Firefox is running.
    [[Image:FirefoxSafeMode|width=520]]
    ''Once you get the pop-up, just select "'Start in Safe Mode"''
    [[Image:Safe Mode Fx 15 - Win]]
    '''''If the issue is not present in Firefox Safe Mode''''', your problem is probably caused by an extension, and you need to figure out which one. Please follow the [[Troubleshooting extensions and themes]] article for that.
    ''To exit the Firefox Safe Mode, just close Firefox and wait a few seconds before opening Firefox for normal use again.''
    ''When you figure out what's causing your issues, please let us know. It might help other users who have the same problem.''
    Thank you.

  • How to retrieve elements from 3 different xml file in one url

    Hi all,
    Could anyone please let me how can we retrieve elements from 3 different xml file in one url?
    i just can only do it with one file only, any help would very appreciate.
    Thank in advance
    Jim

    Hi Philip
    Thanks for replying me.
    I tried on that way, In my mdx query i am using one slice attribute (i.e [Customer].[Gender].allmembers) in rows so getting error "The  Hierarchy already appears in Axis1".
    SELECT
    {[Measures].[Internet Sales Amount] } ON 0,
    NON EMPTY
    {[Customer].[Gender].allmembers } ON 1 -- Used
    FROM
    [Adventure Works]
    WHERE
    [Customer].[Gender].&[M]
    ,[Product].[Size Range].[(All)]
    ,[Customer].[Country].[All Customers]
    [Customer].[Gender].[All Customers]
    ,[Product].[Size Range].&[XL]
    ,[Customer].[Country].[All Customers]
    [Customer].[Gender].[All Customers]
    ,[Product].[Size Range].[(All)]
    ,[Customer].[Country].&[Australia]
    Can you provide alternate ways to get resolved.
    Thanks in advance

  • How to get the Output File Name as One of the Field Value From Payload

    Hi All,
    I want to get the Output file name as one of the Field value from payload.
    Example:
    Source XML
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:MT_TEST xmlns:ns0="http://sample.com">
    - <Header>
      <NAME>Bopanna</NAME>
      </Header>
      </ns0:MT_TEST>
    I want to get the Output file name as " Bopanna.xml"
    Please suggest me on this.
    Regards
    Bopanna

    Hi,
    There are couple of links already available for this. Just for info see the below details,
    The Output file name could be used from the field value of payload. For this you need to use the UDF DynamicFile name with below code,
    //       Description: Function to create dynamic Filename
    DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File" , "FileName");
    conf.put(key,a);
    return "";
    DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File" , "FileName");
    conf.put(key,a);
    return "";
    With this udf map it with the MessageType as
    (File Name field from Payload) > DynamicFileConfiguration>MTReceiver
    Thanks
    Swarup

  • How to create an array in one field and have another field display certain elements from that array?

    I am making a form in Acrobat XI pro.
    In one text field, I created an array of several elements. I want other text fields to display certain elements from that array. For instance, one field should display the 3rd element, another field should display the 13th element, etc.
    The Javascript for making the array is very long, and so I don't want to have to re-calculate the array every single time (in order to reduce rendering time when I open the form on an iPad). This is why I'd like to only have to create the array once, and simply refer to it throughout the form.

    What code are you using to update the array currently? Are you completely rebuiding it when an element changes, or just changing specific elements for certain fields? I'm still not sure what exactly you are trying to do, but something like this in a document level script will create your array:
    var myArray;
    // Call 'updateArray' to initialize array
    updateArray();
    function updateArray() {
         // Code here to create/update array
         myArray = new Array();
         myArray[0] = "Value 1";
         myArray[1] = "Value 2";
         myArray[2] = "Value 3";
    Then, for each field that needs to update this array, you can add a call to 'updateArray()' in the appropriate event. This will rebuild the array completely; if you just want to update specific elements, then you can access them directly.

  • How to copy elements from one JList to another JList?

    I have 2 JLists. availableList and selectedList.
    String availableData [] = {"A","B","C","D","E","F"};
    JList availableList = new JList(availableData);
    JList selectedList = new JList();
    Now on 'Copy >>>' action I want the elements from availableList to be copied to selectedList (elements in the first JList should not be removed.)
    on actionPerformed I used: selectedList.setListData(availableList.getSelectedValues()) but it is adding only one element at a time.
    Can anyone help me in solving this problem? I want the elements from availableList to be copied to selevtedList and the duplicate should not happen. No need to sort the selectedList. just adding one by one.
    Thanks in Advance!
    Edited by: DeepakKotla on Oct 9, 2007 5:25 PM

    You might want to use a model to make it easier to add and transfer data
    like using DefaultListModel.

  • How assign 7 cost centers to one cost element.

    hi
    how assign 7 cost centers to one cost element.
    Ex: FUEL can use 10 departments.  how to assign this cost centers to one cost element.
    Thank you.
    Ashok kumar

    Hi Anil,
    At the time of posting fuel expenses you need to have 10 line items for each seperate cost center    or
    You can post to a one cost center inturn you can use Distribution or Assessment for re allocating to other cost centers.
    Regards,
    Murali

  • Transfer photoshop elements from one computer to another

    I want to transfer my photoshop elements from my macbook to my imac. What is the quickest and easiest way of going about this. I also don't want to loose any of my files.

    Deactivating the program from one computer and then activating it on another is easy -- though how you do it depends on which version of the program you're using.
    But you seem to have something else going on. What do you mean by "I don't want to loose any of my files"?
    Are you also trying to move all of your image files from one computer to another? That's also easy using the Mac Migration Assistant.
    http://support.apple.com/kb/HT4413
    And if you've got any more specific questions, you may want to post them to the Photoshop Elements forum rather than to the Premiere Elements forum.

  • Asset Master to be assigned to more than one WBS element

    Hi Guys
    I have a scenario in which a Asset should be assigned to more than one Project, i.e. WBS Element.
    Is it possible by any way to assign a asset to more than one WBS element.
    Warm Regards
    Bala

    Hi Vijay Kumar
    Your right, but my situation is different.
    Take an example, i have server in a software company, that will be used for more than one project. In this case the asset number is the same as the same asset is used for different project at a given point of time
    Warm Regards
    Bala

  • Creating complex folder from one Simple Folder

    I have one simple folder (test) which is like one large table in the database. I want to create 5 complex folders from this "TEST" folder and be able to create joins, drill, sorts, conditions etc., and also calculate some items to help users with what they want.
    I need to know how possible it is to do this and would I run into problems in future.
    Actually am I better off splitting the table in the database into five tables so that I would have five simple folders instead of One simple folder.
    I need an answer please.
    Thank you.

    Hi,
    If your folder contains only 1 table then how you can create a join.If you wants this folder to split you can do what ever you want except joining from other table in a work book,
    better create a view at database and join the tables in that view then you can go ahead with the business area.
    (OR)
    take two tables in the business area and join them together but there should be constraints in both the tables.
    If your problem is not yet solved please give the detail question what actually you needs.
    Regards,
    Moin

  • Snippet to start one an element and prevent another from starting

    I need help. I need a snippet to start one an element and prevent another from starting. they are at the same place in the timeline and need to be there for other elements. but right now when I click one the other plays also how do I stop one from playing when the other is clicked?

    I need it to show. its a header and a footer that move in and out. but they need to stay on the same timeline in order for the side controls that move in and out from the side. because when they play they move the header in and out. lol did you get that? Thanks for the comment.

  • COPA - Multiple Sales Order with one wbs element.  COPA does not reference

    COPA - Multiple Sales Order with one wbs element.  COPA does not reference of reference of sales order.
    Hi All
    Currently we are in process of implementation of project related to Club Service for one of the client.
    Concept of this project is - there is "X" company engaged in supporting the different shared services for their client e.g. Client IBM - Shared Support Services of IBM is
    u2022     IDM
    u2022     Software Installation
    u2022     Help Desk
    u2022     Maintenance
    Co.. "X' is performing these services for IBM.    So for Co. "X" - IBM is one engagement. Like this way Co. X is performing such activities for many companies e.g. microsoft, HP, ABN AMRO etc.
    Objective - Get the consolidate report from COPA (Customer wise/services wise/sales order wise e.g. IBM/HelpDesk/10002/10).
    We propose a solution to create a project for each engagement and with WBS element. Each WBS element of different services e.g.
    Project IBM Inc.  100.100
    WBS Element    100.100.IDM 
    WBS Element    100.100.SoftIns
    WBS Element    100.100.HelpDesk
    WBS Element    100.100.Maintainance
    For this engagement (IBM), we are creating a sales order with line items (for services) and account assignment is WBS element.  In a sales order, there may be two lines for one services.   In a particular period, there are many such sales orders for this engagement... Milestone billing/period billing is used depending upon the services rendered.
    Now Cost Object will be WBS Element. So cost and revenue will posted to WBS and from this it goes to COPA.  In a month of May 2009 two - sales order is booked with three different line items with account assignment is WBS element.
    Sales Order Line Item No.....Item                  Account Assignment                      Revenue
    10000          100     IDM      100.100.IDM              1000
    10000          200     HELPDESK      100.100.HelpDesk              2000
    10000          100     Maintenance      100.100.Maintainance         3000
    Another Sales order booked with two different line items
    10000          100      IDM     100.100.IDM          3000
    10000          200      HELPDESK     100.100.HelpDesk          4000
    Cost will be booked directly against WBS element.
    In sales order level, there is no profitability segment, as cost object is WBS element.
    Billing, revenue will be posted directly to wbs element, from this revenue and cost of sales goes to COPA.
    Now in COPA,
    1.There is only one line for WBS element ex. 100.100.IDM with revenue 4000 (combing both the sales order)
    2.There is only one line for WBS element ex. 100.100.HelpDesk with revenue 6000 (combing both the sales order)
    3.There is only one line for WBS element ex. 100.100.Maintainance with revenue 4000
    In above case 1 & 2 we will not have reference of sales order and sales order line item in COPA table. There is only one line for this.  So we can not have reporting to sales order level.
    Is there any way by this the reference of sales order and sales order line will come in COPA for case 1 & 2.
    Please help in this issue.
    Regards
    Abhay Dev
    Ph:- 91-22-67782229
    Cell:- 91-9819175185

    Hi,
    For these case (multiple materials with different characteristics); have you consider going to next level of WBS Elements. Meaning; lets say currently you are assigning WBS "Engineering (which is a level 2 WBS)" to all the items in SO. Instead under "Engineering" create 2 or 3 level 3 WBS Elements as E1, E2 etc and assign them 1:1 to your sales order line items. This would eliminate the exit as welll as complex development option. And also will let you get all the data in COPA and in turn you can pull to BW as well for reporting. Just a thought.
    Regards
    Sreekanth

Maybe you are looking for

  • Lost pdf viewing ability

    By accident I deleted my Applications folder . I reinstalled it from backup. Now when I use Safari and click on a site with a PDF, Safari won't open the PDF in the Safari window. I reinstalled Adobe and downloaded the Safari application, then reinsta

  • Non Apple applications fails to launch

    Hello, Today, when I launched MS Word or other non-apple application (like Indesign 2), I've got the following error : The application "Word" could not be launched because of a shared library error: "5<Microsoft Word><CarbonLib><CFMPriv_LaunchService

  • Link to download firmware s

    I understand i need to download these softwares before i can update my at&t Lumia 1520 to denim. Is there a link to download firmware : 02061.00074.14273.33019 and firmware 1028.3562.1407.1001 Solved! Go to Solution.

  • No luck with JAR's

    Im having no luck with packaging my app as a JAR at all, just a massive headache. Im using eclipse to develop the app in and have tried to export the app to a JAR and have added the correct main class (CustomCell). When I execute the JAR file I get t

  • Question on SORT function

    Hi, I have a select statement as below: SELECT * FROM ZOUT_CRRS_BRRS INTO i_crrs      WHERE ZCBASOFDAT =  idat-t_ZOUMASDT      AND ZCBRDTVF <= idat-t_ZOUMASDT      AND ZCBRDTVT > idat-t_ZOUMASDT. Then I would like to sort the records in i_crrs 1) Fir