Searching for a multiple-value returning popup.

Is there a possibility to return multiple values from the popup LOV?
That means for example, when I pick an employee on the popup, I want empno,empname, and sal to be returned, each in its textbox.
Thank you, Ivica.

Hi Ivica,
What you want to do can be done but is a bit involved, combining JavaScript and PL/SQL.
If you do not have a workaround send me an email and I will send you an example.
I would put an example on the discussion group but there are so many HTML tags that it will probably not display properly.
Regards Michael.

Similar Messages

  • XML parser for fatching multiple values from XML

    Hi,
    In my scenirio i have to facth multiple values from XML file and then set in to Table in webdynpro...
    Fo example my xml has values like...
    <xml>
         <item>
              <item1>
                   <quantity>
                        100
                   </quantity>
                   <price>
                        50
                   </price>
              </item1>
              <item2>
                   <quantity>
                        200
                   </quantity>
                   <price>
                        20
                   </price>
              </item2>
              <item3>
                   <quantity>
                        300
                   </quantity>
                   <price>
                        10
                   </price>
              </item3>
         </item>
    </xml>
    then i have to fcath those quantity and price and set in to table...
    How to do taht in webdynpro and does any one have parser code for retriving multiple values...

    Hi,
    1) You need to use JDOM parser.
    2) The code for parsing XML using JDOM parser is readily available if you search on google.
    3) You will have to check the attribute during every parsing and then if attribute is quantity you can fetch the corresponding tags.
    4) Something similar to this:
    org.jdom.Document document = parser.build(file);
                    org.jdom.Element rootElement = document.getRootElement();
                    org.jdom.Element childElement = rootElement.getChild("file");
                    Element xmlElement = childElement.getChild("item");
                    if (xmlElement != null) {
                        List itemElementsList = xmlElement.getChildren("item1");
                        if (itemElementsList != null) {
                            Iterator iterator3 = itemElementsList.iterator();
                            while (iterator3.hasNext()) {
                                //For each group get quantity
                                Element itemElement = (Element) iterator3.next();
                                List quantityElementsList =
                                        itemElement.getChildren("quantity");
                                if (quantityElementsList != null) {
                                    Iterator iterator2 =
                                            quantityElementsList.iterator();
                                    while (iterator2.hasNext()) {
    // Your code                                                                               
    You might need to make some changes as per your rquirement. Just use this sample to understand how you need to parse the xml
    Hope it helps.
    Regards.
    Rajat
    Edited by: Rajat Jain on Jan 22, 2009 9:51 AM

  • Simple Question: How to search for a date value in SELECT

    Probabily a simple question, but in a SELECT statement, how do you do a search for a date value in the WHERE clause?
    example:
    Select * From Example
    Where date = 01/01/2001
    I know its not as simple as that, but what change has to occur to make it do what that example implies?
    Thanks In Advance.

    If you want to avoid the conversion part(to_date) you will need to specify the date in the format as ur nls date format.so the same query might not work if you change ur nls date format.
    so it is advisable to give it in general format.
    ie where date_col=to_date(01-01-2000,'dd-mm-yyyy')

  • TS1424 How do you fix a R6025 pure virtual function call error?  When I try to search for music, iTunes freezes & returns this message.

    How do you fix a R6025 pure virtual function call error?  When I try to search for music, iTunes freezes & returns this message.

    For general advice see Troubleshooting issues with iTunes for Windows updates.
    The steps in the second box are a guide to removing everything related to iTunes and then rebuilding it which is often a good starting point unless the symptoms indicate a more specific approach. Review the other boxes and the list of support documents further down page in case one of them applies.
    Your library should be unaffected by these steps but there is backup and recovery advice elsewhere in the user tip.
    tt2

  • Help to search for a string value and return the index in the arraylist

    Hello,
    I just start java programming for the last three weeks and I cannot find a solution for this problem. I have the following List with string and integer value as shown below:
    List<Empl> list= new ArrayList<Empl>();
         list.add(new Empl(1,"Jim", "Balu",88);
         list.add(new Empl(3,"Bob", "Howards",2);
         list.add(new Empl(2,"Chris", "Hup",8);
    I have no problem of sorting this arraylist either by firstname or lastname. However, I cannot think of a way to search for a firstname or lastname and returing the whole row. I do not want to use index since I am asking user to enter the name to search. Here is my code to search for an empl based on index.
    System.out.print("Please enter index to search or (q)uit: ");
              String ans = sc.next();
              System.out.println();
              int ians = Integer(ans);
              if (ans.equalsIgnoreCase("q"))
                        choice = "n";
              else
              System.out.println("index " + list.get(ians)); //this will print out the whole row based on the index
    Since the user will never seen the contents of the arraylist, is there a way that I can search by string last/first name and will get the index location in int if the result is met?
    Please advice and thank you.
    Bob.

    user11191663 wrote:
    Since the user will never seen the contents of the arraylist, is there a way that I can search by string last/first name and will get the index location in int if the result is met?Another possibility is to set up an ArrayList for each thing you want to search on and then every time you add an employee, add the piece of data you want as well, viz:
    Empl e = new Empl(1,"Jim", "Balu",88);
    list.add(e);
    firstNames.add(e.firstName());As long as you always add them in the same order, the indexes will match, so you could do something like
    ians = firstNames.indexOf(nameToFind);to return the index of the name, if it's there (if not, it will return -1).
    I wouldn't recommend this as standard practise, but it should be OK for the level you're at.
    NOTE: indexOf() returns the index of the FIRST matching item. You may want to think about what you want to do if there are more than 1.
    Winston

  • Search for a word and return all the  lines (row) from the text file..

    Hi all,
    I need a help on how to search a string from the text file and returns all the lines (rows) where the searched string are found. I have included the code, it finds the indexof the string but it does not return the entire line. I would appreciate your any help.
    public class SearchWord
         public static void main(String[] args){
         //Search String
         String searchText = "man";
         //File to search (in same directory as .class file)
         String fileName = "C:\\Workspace\\MyFile.txt";
         //StringBuilder allows to create a string by concatinating
         //multiple strings efficiently.
         StringBuilder sb =
         new StringBuilder();
         try {
         //Create the buffered input stream, which reads
         //from a file input stream
         BufferedInputStream bIn =
         new BufferedInputStream(
         new FileInputStream(fileName));
         //Holds the position of the last byte we have read
         int pos = 0;
         //Holds #of available bytes in our stream
         //(which is the file)
         int avl = bIn.available();
         //Read as long as we have something
         while ( avl != 0 ) {
         //Holds the bytes which we read
         byte[] buffer = new byte[avl];
         //Read from the file to the buffer
         // starting from <pos>, <avl> bytes.
         bIn.read(buffer, pos, avl);
         //Update the last read byte position
         pos += avl;
         //Create a new string from byte[] we read
         String strTemp =
         new String(buffer);
         //Append the string to the string builder
         sb.append(strTemp);
         //Get the next available set of bytes
         avl = bIn.available();
         catch(IOException ex) {
         ex.printStackTrace();
         //Get the concatinated string from string builder
         String fileText = sb.toString();
         int indexVal = fileText.indexOf(searchText);
         //Displays the index location in the file for a given text.
         // -1 if not found
         if (indexVal == -1)
              System.out.println("No values found");
         else
              System.out.println("Search for: " + searchText);     }
    }

    Hi, you can use servlet class and use this method to get the whole line of searched string. You can override the HttpServlet to treat that class as servlet.
    public class ReportAction extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    //write your whole logic.
    BufferedReader br = new BufferedReader(new FileReader("your file name"));
    String line = "";
    while(line = br.readLine() != null) {
        if(line.contains("your search string")) {
            System.out.println("The whole line, row is :"+line);
    }

  • Search Help and Multiple Value Selection?

    Hello
    Is it possible to select more than one entry in a search help popup? If so, what do I have to do in the context attribute to be able to handle multiple return values from the search help popup?
    Regards,
      Mathias

    hi matthias.....
           you cannot select multiple lines in a search help. because... you are going to return to only one field... else what you can do is. have a small button which acts as a search help and pop up a window which has  a table in it. so you can select multiple values.
    ---regards,
       alex b justin

  • Check for the multiple values of the order type in if cond. in user exit

    Hi all,
    I have the exisitng code like this.
    IF AUFK-AUART = C_STAT_1000.
        RETAIL = C_RETAIL_X.
      ELSE.
        SEARCH W_SYST_STAT FOR 'SETC'.
        IF SY-SUBRC <> 0.
          ERR_MSG-MSGID = 'ZP'.
          ERR_MSG-MSGTY = 'E'.
          ERR_MSG-MSGNO = '017'.
          ERR_MSG-MSGV1 = DETAILS-RAUFNR.
          APPEND ERR_MSG.
          EXIT.
        ENDIF.
      ENDIF.
    In the above code, the order type aufk-auart is checked for a single value '1000'.
    How do i include the logic tocheck if aufk auart for multple values in tha if condition.
    It can be multiple values of whihc i do not have the detail.
    Regs,
    SuryaD.

    Hi all,
    I have the sample code with me.
    Hope this helps someone who is looking for the usage of this Function module.'K_HIERARCHY_TABLES_READ'
    DATA:
        l_set_node_tab  LIKE grpobjects OCCURS 0 WITH HEADER LINE,
        l_set_val_tab   LIKE grpvalues  OCCURS 0 WITH HEADER LINE,
        l_info          LIKE grphinfo,
        l_overrite      LIKE sy-datar,
        l_set_class(4) TYPE c,
        l_set_id(34) TYPE c,
        l_set_kokrs LIKE  sethier-kokrs,
        lr_auart TYPE RANGE OF auart,
        lr_auart-line LIKE LINE OF lr_auart.
      CONSTANTS:lc_set(3) TYPE c VALUE 'SET',
                  lc_id(22) TYPE c VALUE '0000Z-GPMRCMI-EXC-CUST',
                  lc_i      TYPE c VALUE 'I',
                  lc_bt(2)  TYPE c VALUE 'BT'.
      CLEAR:
          l_set_node_tab,
          l_set_node_tab[],
          l_set_val_tab,
          l_set_val_tab[].
      l_set_class = lc_set.
      l_set_id    = lc_id.
      CALL FUNCTION 'K_HIERARCHY_TABLES_READ'
           EXPORTING
                e_class                     = l_set_class
                e_setid                     = l_set_id
                e_kokrs                     = l_set_kokrs
                e_mandt                     = sy-mandt
           TABLES
                t_nodes                     = l_set_node_tab
                t_values                    = l_set_val_tab
           CHANGING
                c_info                      = l_info
                c_overwrite                 = l_overrite
           EXCEPTIONS
                no_controlling_area         = 1
                no_chart_of_account         = 2
                different_controlling_areas = 3
                different_chart_of_accounts = 4
                set_not_found               = 5
                illegal_field_replacement   = 6
                illegal_table_replacement   = 7
                fm_raise                    = 8
                convert_error               = 9
                no_overwrite_standard_hier  = 10
                no_bukrs_for_kokrs          = 11
                OTHERS                      = 12.
      IF sy-subrc = 0.
        CLEAR : lr_auart.
        REFRESH lr_auart.
    create internal set table
        LOOP AT l_set_val_tab.
          lr_auart-line-low      = l_set_val_tab-vfrom.
          lr_auart-line-high     = l_set_val_tab-vto.
          lr_auart-line-sign     = lc_i.
          lr_auart-line-option   = lc_bt.
          APPEND lr_auart-line to lr_auart.
          CLEAR lr_auart-line.
        ENDLOOP.
      ENDIF.

  • Search for a Multilingual value in MDM using JAVA API

    Good day,
    Could you kindly assist.
    I am trying to search for a field in MDM, from Portal using JAVA API. I do retrieve the value in English, but the problem is when I am trying to retrieve it in other languages. Please see sample code:
         private Search getSearch(MDMConnection mdmconnection,String value, TableId tableid){
              Search search =null;
              FieldSearchDimension fielddimension=null;
              TextSearchConstraint textcontrain=null;
              RepositorySchema reposchema =mdmconnection.reposchema;          
                                               if(value!=null)
                   search= new Search(tableid);
                   fielddimension=new FieldSearchDimension(reposchema.getFieldId("ATTR_VAL_ABBR","TEXT_VALUE"));
                   textcontrain=new TextSearchConstraint(value,TextSearchConstraint.EQUALS);
                   search.addSearchItem(fielddimension,textcontrain);
                   search.setComparisonOperator(Search.AND_OPERATOR);
              return search;
    Thank you in advance.
    Regards,
    Simni

    Hi ,
    Mdm- Multilingual value in MDM using JAVA API:
    you can check the first point as its reagrdign youisue related pdf and soloutions for your question.
    1.  http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b0e8aedc-cdfe-2c10-6d90-bea2994455c5?QuickLink=index&overridelayout=true
    2.  http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b0e8aedc-cdfe-2c10-6d90-bea2994455c5?QuickLink=index&overridelayout=true
    Hope this information helps you in solving the  issue!!
    Thanks&Regards
    AswinChandraGirmaji

  • Searching for a file and returning location?

    Hello,
    Using flex 4, and creating an AIR desktop app for windows only, can you have a function search for a known file name and return the location?
    I cannot find anything about this, only an example for mac.

    HI Bethany,
    This may work in Numbers for iOS:
    Table 1 is your data table, with an index column (K) added.
    Your appointments for one specific date are shown on Table 2.
    Table 1 contains one formula, entered in K2 and filled down the rest of that column.
    K2: =IFERROR(IF(MATCH(Table 2 :: $B$1,B2:J2,0),MAX($K$1:K1)+1,""),"")
    The formula creates a serial number for each row containing the search date entered in Tble 2::B1, and leaves other rows 'blank'.
    Table 2 contains one formula, entered in B2 and filled right:
    B2: =IF(COLUMN()-1>MAX(Table 1 :: $K),"",OFFSET(Table 1 :: $A$1,COLUMN()-1,0))
    You will need a column for each potential appointment. The table as shown has a maximum of four. Add columns for more.
    Regards,
    Barry

  • Search Array with multiple values

    Hello,
    I've been helped with the prototype below by blemmo (thanks).
    It allows me to search my array using one property == a
    value.
    Now, I'd like to use it to:
    if ((prop1 == val1) &&(prop2 == val2) &&
    (prop3 == val3) {
    // search array for all values in array with the values of
    val1, val2 and val3
    Also, a way to search if one of the prop and val's are blank,
    ie...
    ((prop1 == val1) &&(prop2 == val2) && (prop3
    == val3)
    where prop2 and val2 are "undefined"
    so the search will only search for the prop and val that are
    not "undefined"
    make since? Don't know where to start.
    help and thanks in advance.

    it is an array like this.. but with more properties... also,
    is it better to use XML to load large arrays or is it ok to use
    actionscript in the file.
    which is faster to load? say if I had an array of 150
    elements?
    myArray = [{myname:"bob", county:"skagit", city:"Sedro
    Woolley", id:1,
    pic:"1.jpg",pic1:"2.jpg",pic2:"3.jpg",pic3:"4.jpg"},
    {myname:"bob", county:"skagit", city:"Sedro Woolley", id:1,
    pic:"1.jpg",pic1:"2.jpg",pic2:"3.jpg",pic3:"4.jpg"

  • SIngle row output for a multiple values

    Create table test_table ( metric_name varchar2(30), dt date, value number) ;
    insert into test_table values ('METRIC_1', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 10) ;
    insert into test_table values ('METRIC_1', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 20) ;
    insert into test_table values ('METRIC_1', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 30) ;
    insert into test_table values ('METRIC_2', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 11) ;
    insert into test_table values ('METRIC_2', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 22) ;
    insert into test_table values ('METRIC_2', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 33) ;
    commit;
    alter session set nls_date_format='mm/dd/yyyy hh24:mi:ss' ;
    SQL> select * from test_table ;
    METRIC_NAME                    DT                       VALUE
    METRIC_1                       12/31/2013 08:00:00         10
    METRIC_1                       12/31/2013 09:00:00         20
    METRIC_1                       12/31/2013 10:00:00         30
    METRIC_2                       12/31/2013 08:00:00         11
    METRIC_2                       12/31/2013 09:00:00         22
    METRIC_2                       12/31/2013 10:00:00         33
    But I need output in following format:
    METRIC_NAME   12/31/2013 08:00:00        12/31/2013 09:00:00        12/31/2013 10:00:00       
    METRIC_1                   10                                     20                                  30
    METRIC_2                    11                                    22                                  33
    -Thanks

    Hi,
    943750 wrote:
    Create table test_table ( metric_name varchar2(30), dt date, value number) ;
    insert into test_table values ('METRIC_1', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 10) ;
    insert into test_table values ('METRIC_1', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 20) ;
    insert into test_table values ('METRIC_1', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 30) ;
    insert into test_table values ('METRIC_2', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 11) ;
    insert into test_table values ('METRIC_2', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 22) ;
    insert into test_table values ('METRIC_2', to_date('12/31/2013 08:00:00','mm/dd/yyyy hh24:mi:ss'), 33) ;
    commit;
    alter session set nls_date_format='mm/dd/yyyy hh24:mi:ss' ;
    SQL> select * from test_table ;
    METRIC_NAME                    DT                       VALUE
    METRIC_1                       12/31/2013 08:00:00         10
    METRIC_1                       12/31/2013 09:00:00         20
    METRIC_1                       12/31/2013 10:00:00         30
    METRIC_2                       12/31/2013 08:00:00         11
    METRIC_2                       12/31/2013 09:00:00         22
    METRIC_2                       12/31/2013 10:00:00         33
    But I need output in following format:
    METRIC_NAME   12/31/2013 08:00:00        12/31/2013 09:00:00        12/31/2013 10:00:00   
    METRIC_1                   10                                     20                                  30
    METRIC_2                    11                                    22                                  33
    -Thanks
    All the dts INSERTed were 08:00:00; why are some displayed as 09:00:00 or 10:00:00?  I assume there are typos in the INSERT statements, and the results above are correct.
    Taking data from 1 column on N rows, and displaying it as N columns on 1 row is called Pivoting.  Search for "pivot" for details.
    If you know the exact dts for which you want to check, you can do something like this:
    SELECT    *
    FROM      test_table
    PIVOT     (    MIN (value)
              FOR  dt  IN ( TO_DATE ('12/31/2013 08:00:00', 'mm/dd/yyyy hh24:mi:ss')  AS hr_08
                          , TO_DATE ('12/31/2013 09:00:00', 'mm/dd/yyyy hh24:mi:ss')  AS hr_09
                          , TO_DATE ('12/31/2013 10:00:00', 'mm/dd/yyyy hh24:mi:ss')  AS hr_10                  )
    ORDER BY  metric_name
    I hope this answers your question.
    If not, post  a little sample data (CREATE TABLE and INSERT statements, relevant columns only) for all tables involved, and also post the results you want from that data.
    Point out where the query above is giving the wrong results, and explain, using specific examples, how you get the correct results from the given data in those places.  If you changed the query at all, post your code.
    Always say which version of Oracle you're using (e.g., 11.2.0.2.0).
    See the forum FAQ: https://forums.oracle.com/message/9362002

  • Search for mail on server returns error

    When searching for mail on the server i receive the error Cannot get mail. The connection to the server failed. All other mail functions work.

    Not that it helps, but I'm having the same issue on iPad and iPhone. Happened around the same time. My server admin admits that they applied one patch for Microsoft Activesync, but since the Blackberries work that couldn't be the problem.
    My account verifies fine. Opening the mail window results in the error message.

  • How to search for an incremented value

    Hi,
    We are using Oracle Enterprise DB in which we have two tables
    first table returns id as:
    select id from Table1 where state IN (4,7);
    output:
    145623
    145896
    147102
    we need to search in another table Table2 for Title and pass one incremented value from the output of above query.
    i.e. we need to search Table2 for Title and paas value 145624,145897, 147103... and so  on.
    Please suggest how can we achieve this.
    TIA,
    Bob

    Hi Manik,
    we are using oracle Database 11g release 2 enterprise edition.
    currently table 1 contains 500 rows and table 2 contains 2000 rows, but this no. will increase by significant amount with time.
    Table1 contains Group_Id and Table2 contains Title and the relation between Table1 and Table2 is through Instance_Id but the instance id present in table2 is incremented value by 1 of what present in table1.
    Table1 has many columns but i need to query for below columns:
    COMPOSITE_INSTANCE_ID - NUMBER
    GROUP_ID - VARCHAR2(1000 BYTE)
    COMPONENT_STATE - NUMBER
    search Query for Table1 is
    select composite_instance_id, group_id from mediator_instance where component_state IN (4,7)
    this query gives below output:
    145623 - 36313337343339353732313335373033
    145896 - 32313636333434306131303739313134
    147102 - 32313736313631313737303339353038
    Table2 contains below column which i need to search. ID in table 2 is related to table1 in such a way that the id present in table2 is one incremented value of the composite_instance_id present in table1.
    ID - NUMBER
    TITLE - NVARCHAR2(100 CHAR)
    sample value:
    ID               Title
    145624       1-1234
    145897       1-5268  
    147103             
    My output should contain:
    Group_id and Title (here group_id is from table1 and title is from table2)
    36313337343339353732313335373033     1-1234
    32313636333434306131303739313134     1-5268
    32313736313631313737303339353038     1-8965

  • XMLAttribute unable to handle multiple values returning from a query

    Hi Guys,
    I have to design the format of the data returning from a query in XML. For this i have used xmlelement and xmlattribute
    the query goes like this
    SELECT '<?xml version="1.0" ?>'||' '||XMLELEMENT("imageData",
    XMLATTRIBUTES(LI.GROUPNO as "imageName", 'PNG'as "imageType", '2.0' as "version", 'com.snapon.sbs' as "xmlns"),
    XMLELEMENT("callouts",
    XMLATTRIBUTES('roundedRectangle' as "shape"),
    XMLELEMENT("callout",
    XMLATTRIBUTES((SELECT IO.PNC_KEYNO FROM PFEALIOCR IO WHERE IO.BASECATALOGNO = LI.BASECATALOGNO AND LI.GROUPNO = IO.GROUPNO) as "label"),
    XMLELEMENT("point",
    XMLATTRIBUTES((SELECT IO.COORDINATESX1 FROM PFEALIOCR IO WHERE IO.BASECATALOGNO = LI.BASECATALOGNO AND LI.GROUPNO = IO.GROUPNO) as "x",(SELECT IO.COORDINATESY1 FROM PFEALIOCR IO WHERE IO.BASECATALOGNO = LI.BASECATALOGNO AND LI.GROUPNO = IO.GROUPNO) as "y")))))
    FROM PFEALIGIL LI
    WHERE LI.DELETEFLAG <> 'D'
    here he logic is the one groupno from pfealigil and the corresponding pnc_keyno that are related to groupno are fetched here. but here since multiple pnc_keyno are returning xmlattributes is unable to handle. I want to design the xml in this format
    <?xml version="1.0" ?>
    <imageData imageName="ISDH0001104"
    imageType="PNG" version="2.0" xmlns="com.snapon.sbs">
    <callouts shape="roundedRectangle">
    <callout label="182">
    <point x="289" y="68"/>
    </callout>
    <callout label="247"<point x="430" y="83"/>
    </callout>
    <callout label="122"><point x="546" y="331"/>
    </callout>
    <callout label="249"><point x="402" y="429"/>
    </callout>
    <callout label="248"><point x="392" y="463"/>
    </callout>
    <callout label="182"><point x="228" y="416"/>
    </callout>
    <callout label="1"><point x="364" y="737"/>
    </callout>
    <callout label="14"><point x="494" y="980"/>
    </callout>
    <callout label="168"><point x="671" y="910"/>
    </callout>
    <callout label="15"><point x="779" y="848"/>
    </callout>
    <callout label="1"><point x="805" y="343"/>
    </callout>
    </callouts>
    </imageData>
    like here one image name all those pnc_keyno that are valid should come in this way as above. Please let me know if anything is unclear to you

    apexStarter wrote:
    Data model goes like thisYou mentioned two tables in your first post, but I guess it's just a matter of joining them to get the above resultset?
    In this case you can do it like this :
    SQL> WITH sample_data AS (
      2    SELECT '91-921' groupno, '1125AE' pnc_keyno, 000000127 coordinatesx1, 000000730 coordinatesy1 FROM dual UNION ALL
      3    SELECT '91-921', '18642F', 000000513, 000000891 FROM dual UNION ALL
      4    SELECT '91-921', '18643D', 000000620, 000000844 FROM dual UNION ALL
      5    SELECT '91-921', '18649E', 000000561, 000000688 FROM dual UNION ALL
      6    SELECT '91-921', '18668B', 000000620, 000000864 FROM dual UNION ALL
      7    SELECT '91-921', '92101A', 000000587, 000000591 FROM dual UNION ALL
      8    SELECT '91-921', '92102A', 000000587, 000000571 FROM dual UNION ALL
      9    SELECT '91-924', '1243BD', 000000617, 000000889 FROM dual
    10  )
    11  SELECT XMLRoot(
    12           XMLElement("imageData",
    13             XMLAttributes(
    14               groupno as "imageName"
    15             , 'PNG'as "imageType"
    16             , '2.0' as "version"
    17             , 'com.snapon.sbs' as "xmlns"
    18             )
    19           , XMLElement("callouts",
    20               XMLAttributes('roundedRectangle' as "shape")
    21             , XMLAgg(
    22                 XMLElement("callout",
    23                   XMLAttributes(pnc_keyno as "label")
    24                 , XMLElement("point",
    25                     XMLAttributes(
    26                       coordinatesx1 as "x"
    27                     , coordinatesy1 as "y"
    28                     )
    29                   )
    30                 )
    31               )
    32             )
    33           )
    34         , version '1.0'
    35         )
    36  FROM sample_data
    37  GROUP BY groupno
    38  ;
    XMLROOT(XMLELEMENT("IMAGEDATA",XMLATTRIBUTES(GROUPNOAS"IMAGENAME",'PNG'AS"IMAGETYPE",'2.0'AS"VERSION",'COM.SNAPON.SBS'AS
    <?xml version="1.0"?>
    <imageData imageName="91-921" imageType="PNG" version="2.0" xmlns="com.snapon.sbs">
      <callouts shape="roundedRectangle">
        <callout label="1125AE">
          <point x="127" y="730"/>
        </callout>
        <callout label="92102A">
          <point x="587" y="571"/>
        </callout>
        <callout label="92101A">
          <point x="587" y="591"/>
        </callout>
        <callout label="18668B">
          <point x="620" y="864"/>
        </callout>
        <callout label="18649E">
          <point x="561" y="688"/>
        </callout>
        <callout label="18643D">
          <point x="620" y="844"/>
        </callout>
        <callout label="18642F">
          <point x="513" y="891"/>
        </callout>
      </callouts>
    </imageData>
    <?xml version="1.0"?>
    <imageData imageName="91-924" imageType="PNG" version="2.0" xmlns="com.snapon.sbs">
      <callouts shape="roundedRectangle">
        <callout label="1243BD">
          <point x="617" y="889"/>
        </callout>
      </callouts>
    </imageData>

Maybe you are looking for