Getting null values from nodes using DOMParser

Hi
I'm having problems retrieving the values from an XML doc.
I'm using the DOMParser, but instead of retrieving the values
from the nodes, I just get null.
Code fragment :
DOMParser parser = new DOMParser();
parser.parse(url);
XMLDocument doc = parser.getDocument();
NodeList nl = doc.getElementsByTagName("*");
Node n;
iNode = nl.getLength();
for (int i=0; i<iNode; i++)
n = nl.item(i);
String szNodeName = n.getNodeName();
System.out.print(szNodeName+ " (" );
System.out.print(n.getNodeValue()+")");
System.out.println();
The result is
course (null)
Name (null)
All the node names are correct, but the node values are NOT
displayed.
Any idea ?
Rodrigo
null

According to the DOM Level 1 spec, the "value" of an ELEMENT node
is null and the getNodeValue() method will always return null for
an ELEMENT type node. You have to get the TEXT children of an
element and then use the getNodeValue() method in the text nodes.
Oracle XML Team
Rodrigo Loureiro (guest) wrote:
: Hi
: I'm having problems retrieving the values from an XML doc.
: I'm using the DOMParser, but instead of retrieving the values
: from the nodes, I just get null.
: Code fragment :
: DOMParser parser = new DOMParser();
: parser.parse(url);
: XMLDocument doc = parser.getDocument();
: NodeList nl = doc.getElementsByTagName("*");
: Node n;
: iNode = nl.getLength();
: for (int i=0; i<iNode; i++)
: n = nl.item(i);
: String szNodeName = n.getNodeName();
: System.out.print(szNodeName+ " (" );
: System.out.print(n.getNodeValue()+")");
: System.out.println();
: The result is
: course (null)
: Name (null)
: All the node names are correct, but the node values are NOT
: displayed.
: Any idea ?
: Rodrigo
Oracle XML Team
http://technet.oracle.com
Oracle Technology Network
null

Similar Messages

  • How to get ProxyEnable value from registry using Windows

    Hi,
    I have developed a webservice which check for a new version of software. Webservice works fine if the user does not use a proxy otherwise it raises an error "connection timeout....".
    I have found a lot of examples how to read a proxy from windows registry. It works fine. I have a problem with getting value for ProxyEnable. ProxyEnable is REG_DWORD type and I always get null.
    Best regards,
    Primoz

    Hi,
    I have found the solution. I put the solution into my blog. You can read more about that at http://javanus.com/blogs/?p=73.
    I hope this will help someone.
    Regards,
    Primoz

  • Getting null values from array

    I have set up an array which is supposed to take the values of a recordset. Only problem is when I display them on the page, I get a list of 'null' instead of the data.
    I'm trying to list first and last name (fname_ul & lname_ul in DB)
    Here's my code:
    <% // Here I'm getting the amt of rows returned
    int count=1;
    while(rs.next()) {
    count++;
    %>
    <%
    int k = count;
    int i = 0;
    String[] fname = new String[k]; // here i'm trying to initialize the string arrays;
    String[] lname = new String[k];
    while (rs.next()) {
    fname[i] = rs.getString("fname_ul"); // here i'm trying to put data into the array;
    lname[i] = rs.getString("lname_ul");
    i++;
    %>
    <table>
    <% for (i=0; i < k; i++) { %>  // and finally here i'm trying to display the array;
    <tr>
         <td><%=fname%></td>
         <td><%=lname[i]%></td>
         <td><%=i%></td> // just something to make sure the rows are counting.
    </tr>
    <% } %>
    </table>
    my result is like this:
    null null 0
    null null 1
    null null 18 // this is correct in that there are 19 rows in the resultset.
    So, why isn't the data from the recordset going into the array??? Thanks for any help out there. Oh, those comments up there, they're not in the actual code, just to explain here.

    I have set up an array which is supposed to take the
    values of a recordset. Only problem is when I display
    them on the page, I get a list of 'null' instead of
    the data.
    I'm trying to list first and last name (fname_ul &
    lname_ul in DB)
    Here's my code:
    <% // Here I'm getting the amt of rows returned
    int count=1;
    while(rs.next()) {
    count++;
    %>
    <%
    int k = count;
    int i = 0;
    String[] fname = new String[k]; // here i'm trying
    to initialize the string arrays;
    String[] lname = new String[k];
    while (rs.next()) {
    fname[i] = rs.getString("fname_ul"); // here i'm
    trying to put data into the array;
    lname[i] = rs.getString("lname_ul");
    i++;
    %>Well, in the first while-loop, you already loop through all the result set, so in the second while-loop, all you get is a null value.
    Also, the way you put the data into the array is not right. I didn't see any array indices. Instead of using arrays, you can consider using Vector, so you don't need to know the number of rows in advance.

  • Servlet only gets null values from mobile

    OK, i'm doing a project for college which involves inputting data into an application on a mobile device, sending them to a servlet and updating a database. I've got my mobile app working and sending but the servlet is only receiving null values for it. I'll post the code for d servlet and see if anyone can figure out whats wrong. The problem might not even be the servlet so i'll post part of the mobile app as well. The problem could well be when i'm buffering the content on the mobile to a string. Anyway, any help appreciated, thanks.
    The Servletimport java.io.IOException;
    import java.io.PrintWriter;
    import java.sql.*;
    import java.util.logging.*;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    public class ThisServlet extends HttpServlet
        protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
            response.setContentType("text/html;charset=UTF-8");
            PrintWriter out = response.getWriter();
            try {
                out.println("<html>");
                out.println("<head>");
                out.println("<title>ThisServlet</title>"); 
                out.println("</head>");
                out.println("<body>");
                out.println("<h1>Servlet at " + request.getContextPath () + "</h1>");
                out.println("</body>");
                out.println("</html>");
            } finally {
                out.close();
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
            processRequest(request, response);
        @Override
        public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
            String connectionURL = "jdbc:mysql://localhost:3306/database";
            Connection connection = null;
            Statement stmt = null;
            ResultSet rs = null;
            res.setContentType("text/html");
            PrintWriter out = res.getWriter();
            String MobileNumber = req.getParameter("user");
            String field1 = req.getParameter("h1");
            String field2 = req.getParameter("h2");
            String field3 = req.getParameter("h3");
            try {
                // Load the database driver
                Class.forName("com.mysql.jdbc.Driver");
                // Get a Connection to the database
                connection = DriverManager.getConnection(connectionURL, "root", "root");
                try {
                    stmt = connection.createStatement();
                } catch (SQLException ex) {
                    Logger.getLogger(ThisServlet.class.getName()).log(Level.SEVERE, null, ex);
                rs = stmt.executeQuery("SELECT UserID FROM User WHERE MobileNumber = '" + MobileNumber + "'");
                while (rs.next()) {
                    String UserID = rs.getString("UserID");
                    String insert = "INSERT INTO newTable(UserID, One, Two, Three) VALUES (?,?,?,?)";
                    PreparedStatement pst = connection.prepareStatement(insert);
                    pst.setString(1, UserID);
                    pst.setString(2, field1);
                    pst.setString(3, field2);
                    pst.setString(4, field3);
                    pst.executeUpdate();
                    pst.close();
            catch(ClassNotFoundException e){
                System.out.println(e.toString());
            catch(SQLException e){
                System.out.println(e.toString());
            catch (Exception e){
                System.out.println(e.toString());
            finally {
                // Always close the database connection.
                try {
                    if (connection != null) connection.close();
                    System.out.print("closing db connection ... \n");
                catch (SQLException ignored){
                    out.println(ignored);
        @Override
        public String getServletInfo() {
            return "Short description";
    }The Mobile App (only part where putting the content together to send)
    buffer.append("user="+mobileNumber).append("?h1="+field1)
                        .append("?h2="+field2).append("?h3="+field3);
                content = buffer.toString();
    sendToServer(url, content);

    For sure you would have to do following on your mobile:
    buffer.append("?user="+mobileNumber).append("&h1="+field1)
                        .append("&h2="+field2).append("&h3="+field3);
                content = buffer.toString();
    sendToServer(url, content);'?' - is a delimiter of GET parameters and '&' - is a delimiter between GET parameters
    Edited by: ivanovpv on 30.04.2009 10:57

  • Get Field Values from Table using Java api

    I am using the example java code "RetrieveLimitedRecords" that can be found at :
    https://help.sap.com/javadocs/MDM71/current/API/index.html
    The code give the expected result and retrieves the record count for the main table
    Now I want to get the values of the fields for one record
    I added the lines:
    Record[] records = recordResultSet.getRecords() ;
    FieldId[] fields = records[0].getFields();
    System.out.println ("Field Length = "+fields.length);
    and the output is::
    Field Length = 0
    How can I get the fields of the record and read their values?
    Thanks
    Nicolas

    Assuming you want every field, the equivalent of "SELECT *" in SQL, you can use the RepositorySchema object to get a TableSchema, and with that get all FieldIds for the table.
    If your RepositorySchema variable is rs it would be something along the lines of:
    TableSchema mainTableSchema = rs.getTableSchema(mainTableId);
    ResultDefinition rd = new ResultDefinition(mainTableId);
    rd.setSelectFields(mainTableSchema.getFieldIds());
    Hope this helps,
    Greg

  • Getting null values from resources in jar

    My application uses a lot of icons, i have bundled these icons in a jar file which is there in the classpath.
    I am using these Icons from my class statically; i mean to say all the icons are initialized as final static.
    and when i run the application it give me null pointer exception.
    Same thing if i remove static i am not getting the nullpointer exception.
    Nas.

    Then don't use static then! Why you have to make these fields static?

  • Midlet gets null values from servlet

    hey,
    based on one of the source code examples on the java.sun.com website i made a midlet/servlet application. the midlet is sending a product id to the servlet, the servlet queries the database and shows the productinformation, the midlet reads the servlet output and displays it on his midlet form
    when i invoke the servlet in my browser: http://localhost:8080/Magazijn/query?product=1 then everything works fine (i see: Product Name : Deur). when the midlet is invoking the servlet i see Product Name : null
    after hours of searching the only thing i could come up with is that the servlet isn't passing the string retrieved from the resultset to the midlet
    the strange thing is that when i papss a normal string, for instance:
    String test = "test";
    out.println(test);
    that he shows this correct both in my browser and midlet
    when i do this:
    prodName = resutl.getString("name");
    out.println(prodName);
    i see "Deur" in my browser, but i see "null" in my midlet
    anyone can help me?
    here's the servlet source:
    import java.io.*;
    import java.sql.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.util.Date;
    public class Magazijn extends HttpServlet {
    public void doGet(HttpServletRequest request,
              HttpServletResponse response)
                        throws IOException, ServletException {
              doPost(request,response);
    public void doPost(HttpServletRequest request,
              HttpServletResponse response)
                        throws IOException, ServletException {
         String url="jdbc:mysql://localhost/test?user=root&password=root";
         Connection con = null;
         Statement stmt;
         ResultSet rs;
         String query;
         int prodId;
         String prodNaam;
         String prodPlaats;
         String prodAantal;
         response.setContentType("text/plain");
         PrintWriter out = response.getWriter();
         BufferedReader br = request.getReader();
         String buf = br.readLine();
         try {
                   //laden van de mysql driver
                   Class.forName("com.mysql.jdbc.Driver");
                   //maken van connectie met database
                   con = DriverManager.getConnection (url, "root", "root");     
                   //aanmaken van statement object
                   stmt = con.createStatement();
                   //nakijken welke naam we zoeken van product
                   String prod = request.getParameter("product");
                   //uitvoeren van query en die opvangen in een resultset
                   query = "SELECT * from onderdelen where id="+prod;
                   ResultSet result = stmt.executeQuery(query);
                   result.next();
                   prodId = result.getInt("id");
                   prodNaam = result.getString("naam");
                   prodPlaats = result.getString("plaats");
                   prodAantal = result.getString("aantal");
              out.println(new Date());
              out.println("");
                   out.println("Product ID: "+prodId);
                   out.println("Productnaam: "+prodNaam);
                   out.println("Plaats: "+prodPlaats);
                   out.println("Aantal: "+prodAantal);
              catch(ClassNotFoundException e) {
                   out.println("Could not load database driver: " + e.getMessage());
              catch(SQLException e) {
                   out.println("SQLException caught: " + e.getMessage());
              finally {
                   //sluiten database connectie
                   try {
                        if (con != null) con.close();
                   catch (SQLException e) {}
    here's the midlet source:
    import javax.microedition.rms.*;
    import javax.microedition.lcdui.*;
    import javax.microedition.midlet.*;
    import javax.microedition.io.*;
    import java.io.*;
    import java.util.Vector;
    public class MagazijnMidlet extends MIDlet implements CommandListener {
    Display display = null;
    List menu = null;
    TextBox input = null;
    String prodid = null;
    String url = "http://localhost:8080/Magazijn/query";
    static final Command backCommand = new Command("Terug", Command.BACK, 0);
    static final Command submitCommand = new Command("Verstuur", Command.OK, 2);
    static final Command exitCommand = new Command("Afsluiten", Command.STOP, 3);
    String currentMenu = null;
    public MagazijnMidlet() { }
    public void startApp() throws MIDletStateChangeException {
    display = Display.getDisplay(this);
    menu = new List("Maak uw keuze", Choice.IMPLICIT);
    menu.append("Opvragen product gegevens", null);
    menu.addCommand(exitCommand);
    menu.setCommandListener(this);
    mainMenu();
    public void pauseApp() { }
    public void destroyApp(boolean unconditional) {
    notifyDestroyed();
    void mainMenu() {
    display.setCurrent(menu);
    //Vraag om productnummer op te geven
    public void askProdid() {
    input = new TextBox("Geef Productnummer:","", 5, TextField.ANY);
    input.addCommand(submitCommand);
    input.addCommand(backCommand);
    input.setCommandListener(this);
    input.setString("");
    display.setCurrent(input);
    //Maken connectie midlet + verwerking
    void invokeServlet(String url) throws IOException {
    HttpConnection c = null;
    InputStream is = null;
    OutputStream os = null;
    StringBuffer b = new StringBuffer();
    TextBox t = null;
    try {
    c = (HttpConnection)Connector.open(url);
    c.setRequestMethod(HttpConnection.POST);
    c.setRequestProperty("IF-Modified-Since",
         "20 Jan 2001 16:19:14 GMT");
    c.setRequestProperty("User-Agent",
         "Profile/MIDP-1.0 Configuration/CLDC-1.0");
    c.setRequestProperty("Content-Language", "en-CA");
    // send request to the servlet.
    os = c.openOutputStream();
    String str = "product="+prodid;
    byte postmsg[] = str.getBytes();
    System.out.println("Length: "+str.getBytes());
    for(int i=0;i<postmsg.length;i++) {
    os.write(postmsg);
    // or you can easily do:
    //os.write(("product="+prodid).getBytes());
    os.flush();
    // receive response and display it in a textbox.
    is = c.openInputStream();
    int ch;
    while((ch = is.read()) != -1) {
    b.append((char) ch);
    System.out.print((char)ch);
    Form formProdGeg = new Form ("Gegevens product");
    StringItem infoItem = new StringItem("",b.toString());
    formProdGeg.append (infoItem);
    formProdGeg.addCommand (backCommand);
    formProdGeg.setCommandListener (this);
    display.setCurrent (formProdGeg);
    } finally {
    if(is!= null) {
    is.close();
    if(os != null) {
    os.close();
    if(c != null) {
    c.close();
    display.setCurrent(t);
    // event handler
    public void commandAction(Command c, Displayable d) {
    String label = c.getLabel();
    if(label.equals("Afsluiten")) {
    destroyApp(true);
    } else if (label.equals("Terug")) {
    mainMenu();
    } else if (label.equals("Verstuur")) {
    prodid = input.getString();
    try {
    invokeServlet(url);
    }catch(IOException e) {}
    } else {
    askProdid();
    tia
    lee

    Hi,
    first for some efficeincy, in your place your connection to the database in the init() method so you can have on instance of the connection.
    in your midlet place the ui initialization in its constructor
    ok, Why dont you try the query in the url
    i.e http://localhost:8080/Magazijn/query=";
    then as you input the product id without setting requests
    c = (HttpConnection)Connector.open(url+productid);
    i think it will work properly
    tell me what happens with you

  • Null values returned when using request.getParameters(

    I have a html form which allows the user to choose options and select a file to upload. When I use method=Post I get null values returned. When I use method=Get I get my parameter values fine.. but I get an error.
    "Posted content type isn't multipart/form-data"
    I would like to know why I am getting null values returned when using Post. I am using the following to get the values from the name=value passed to the servlet.
    String strIndustry = request.getParameter("frmIndustry");
              String strCompany = request.getParameter("frmCompany");
              String strCollabType = request.getParameter("frmCollaboration");
    I have another form where the user can search information in a database that works just fine w/ either Get or Post
    Or perhaps I am using oreilly MultipartRequest incorrectly??? but I copied it directly from another discussion.. ???
    any thoughts
    Thanks

    taybon:
    you could do it like this. in this case, you submit your form with the parameters (industry, company, collaboration), and upload your file at the same time. and in the target servlet, you can build your MultipartRequest object like this:
    MultipartRequest multi = new MultipartRequest(request, temp_location, 50 * 1024);where variable temp_location stands for a temporatory diretory for file uploading.
    and then you get your parameters, so you can build the directory with them. and after that, you can move your file to that directory using File.renameTo();
    but as i've suggested in my previous posting, i just recommend you upload your file in a separate form. and then you can perform an oridianry doPost form submit with those parameters. or you may have problems with the file uploading. (this is just my personal experiences with Multipart).
    there is one other thing i'd like to mention, file.renameTo() won't work if you need to move files to a network drive in windows. it won't work if you move files across file systems in unix.
    Song xiaofei
    Developer Technical Support
    Sun Microsystems
    http://www.sun.com/developers/support

  • How to get string value from database table using Visual Studio 2005?

    Hi,
    Im developing plugin in illustrator cs3 using visual studio 2005. I need to get the values eneterd in database. Im able to get the integer values. But while getting string values it is returning empty value.
    Im using the below code to get the values from database table
    bool Table::Get(char* FieldName,int& FieldValue)
        try
            _variant_t  vtValue;
            vtValue = m_Rec->Fields->GetItem(FieldName)->GetValue();
            FieldValue=vtValue.intVal;
        CATCHERRGET
        sprintf(m_ErrStr,"Success");
        return 1;
    Im using the below code to get the values.
    AIErr getProjects()
        char buf[5000];
        int i;   
        std::string  catName;
        ::CoInitialize(NULL);
        Database db;
        Table tbl;
        errno_t err;
        err = fopen(&file,"c:\\DBResult.txt","w");
        fprintf(file, "Before Connection Established\n");
        //MessageBox(NULL,CnnStr,"Connection String",0);
        if(!db.Open(g->username,g->password,CnnStr))
            db.GetErrorErrStr(ErrStr);
            fprintf(file,"Error: %s\n",ErrStr);
        fprintf(file, "After Connection Established\n");
    if(!db.Execute("select ProjectID,ProjectName from projectsample",tbl))
            db.GetErrorErrStr(ErrStr);
            fprintf(file,"Error: %s\n",ErrStr);
        int ProjectID;
        int UserID;
        int ProjectTitle;
        char ProjectName[ProjectNameSize];
        if(!tbl.ISEOF())
            tbl.MoveFirst();
        ProjectArrCnt=0;
        for(i=0;i<128;i++)
            buf[i]='\0';
            int j=0;
        while(!tbl.ISEOF())
            if(tbl.Get("ProjectID",ProjectID))
                fprintf(file,"Project ID: %d ",ProjectID);
                ProjectInfo[ProjectArrCnt].ProjectID = ProjectID;
                sprintf(buf,"%d",ProjectID);
                //MessageBox(NULL, buf,"f ID", 0);
                j++;
            else
                tbl.GetErrorErrStr(ErrStr);
                fprintf(file,"Error: %s\n",ErrStr);
                break;
            //if(tbl.Get("ProjectTitle",ProjectName))
            if(tbl.Get("ProjectName",ProjectName))
                MessageBox(NULL,"Inside","",0);
                fprintf(file,"ProjectTitle: %s\n",ProjectName);
                //catName=CategoryName;
                ProjectInfo[ProjectArrCnt].ProjectName=ProjectName;
                //sprintf(buf,"%s",ProjectName);
                MessageBox(NULL,(LPCSTR)ProjectName,"",0);
            else
                tbl.GetErrorErrStr(ErrStr);
                fprintf(file,"Error: %s\n",ErrStr);
                break;
            ProjectArrCnt++;
            //MessageBox(NULL, "While", "WIN API Test",0);
            tbl.MoveNext();
        //MessageBox(NULL, ProjectInfo[i].ProjectName.c_str(),"f Name", 0);
        ::CoUninitialize();
        //sprintf(buf,"%s",file);
        //MessageBox(NULL,buf,"File",0);
        fprintf(file, "Connection closed\n");
        fclose(file);
        for(i=0;i<ProjectArrCnt;i++)
            sprintf(buf,"%i",ProjectInfo[i].ProjectID);
            //MessageBox(NULL,buf,"Proj ID",0);
            //MessageBox(NULL,ProjectInfo[i].ProjectName.c_str(),"Project Name",0);
        return 0;
    In the above code im geeting project D which is an integer value. But not able to get the project name.
    Please some one guide me.

    As I said in the other thread, this really isn't the place to ask questions about a database API unrelated to the Illustrator SDK. You're far more like to find people familliar with your problem on a forum that is dedicated to answering those kinds of questions instead.

  • Get the value from another node.

    Hi, expert
    In the component BT131I_SLS , I create a enhanced attribute in the node: BT131I_SLS/Details BTADMINI
    Then i define the GET-V method to create a search help for the attribute.
    Now , i want to pass a BP number to the search help function to filter the data.
    We need to get the BP number as below:
    When create a order, we input the product id ,
    then there will be a popup window , we can choose  a vendor in the window.
    The vendor number is the value which we want to pass to the search help.
    How can i do that ?
    Thanks.
    Oliver.

    Hi , expert
    Can i use the 'get_related_entities' to get the value I need?
    I think maybe i can use the method to get the value from another view which is not in my component.
    Now I write codes in the GET-V method, as below:
    method GET_V_ZZZFLD000011.
      DATA:
        LS_MAP    TYPE IF_BSP_WD_VALUEHELP_F4DESCR=>GTYPE_PARAM_MAPPING,
        LT_INMAP  TYPE IF_BSP_WD_VALUEHELP_F4DESCR=>GTYPE_PARAM_MAPPING_TAB,
        LT_OUTMAP TYPE IF_BSP_WD_VALUEHELP_F4DESCR=>GTYPE_PARAM_MAPPING_TAB.
      DATA: LV_PARTNER_NO TYPE CRMT_PARTNER_NUMBER.
      data: lr_current TYPE REF TO if_bol_bo_property_access,
            lr_entity  TYPE REF TO cl_crm_bol_entity,
            lr_col     TYPE REF TO if_bol_bo_col,
            value      TYPE string.
      lr_entity ?= me->collection_wrapper->get_current( ).
      lr_col = lr_entity->get_related_entities( iv_relation_name = 'Relation_Name' ).
      lr_current = lr_col->get_current( ).
    * value =
      LS_MAP-CONTEXT_ATTR = 'EXT.ZZZFLD000011'.
      LS_MAP-F4_ATTR      = 'LGORT'.
      APPEND LS_MAP TO: LT_OUTMAP.
    *  LS_MAP-CONTEXT_ATTR = 'EXT.ZZZFLD000011'.
    *  LS_MAP-F4_ATTR      = 'LANGU'.
    *  APPEND LS_MAP TO LT_INMAP.
      IF SY-SUBRC  = 0.
      ENDIF.
      CREATE OBJECT RV_VALUEHELP_DESCRIPTOR
        TYPE
          CL_BSP_WD_VALUEHELP_F4DESCR
        EXPORTING
          IV_HELP_ID                  = 'ZHELP_ZSAKCDD'
    *      IV_HELP_ID_KIND             = IF_BSP_WD_VALUEHELP_F4DESCR=>HELP_ID_KIND_COMP
          IV_HELP_ID_KIND             = IF_BSP_WD_VALUEHELP_F4DESCR=>HELP_ID_KIND_NAME
          IV_INPUT_MAPPING            = LT_INMAP
          IV_OUTPUT_MAPPING           = LT_OUTMAP
          iv_trigger_submit           = abap_true
    *      IV_F4TITLE                  = ' '"#    EC NOTEXT
    endmethod.
    But i don't know the Relation_Name which i can get the vender's information.
    Another question : i want to trigger the code 'get_related_entities' when i click the search help,
                                   How can i do that ?
    Thanks.
    Oliver.
    Edited by: oliver.yang on Aug 7, 2009 5:56 AM

  • Need help getting a value from an XML column

    Hi,
    I need to get a value from an XML column in a table (the column is called TEST_XML). I have tried using the Select TEST_XML.value function but it always returns nulls. Could you please take a look at the following xml sample stored in the TEST_XML column
    and help me with the query syntax to get the value of the Bank_Account_Number?.
    =================
    <?mso-infoPathSolution PIVersion="1.0.0.0" href="http://aaa.bbb.ccc.org/OF/PublicDownload.aspx/6bba49274b494ddcb005512670a5e214.xsn" name="urn:schemas-microsoft-com:office:infopath:BPIP-xsn:OF-Messages-Schemas-OF-Forms" language="en-us"
    productVersion="14.0.0" solutionVersion="3.0.29.90" ?>
    <?mso-application progid="InfoPath.Document"?>
    <tns:OF_Forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="OF_Messages.Schemas.OF_Forms" xmlns:xdServerInfo="http://schemas.microsoft.com/office/infopath/2009/xslt/ServerInfo" xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2013-07-22T10:58:18"
    xmlns:xd="http://schemas.microsoft.com/office/infopath/2003">
      <Name />
      <Description />
      <Settings Name="FormName" Description="Request for new master data.xml" SCE_RouteID="54" ROU_Name="IBP-Group" SCE_FunctionalAreaID="1" FUA_FunctionalAreaName="Data Maintenance" SCE_SchemaCategory="BP"
    SCE_SchemaGUID="3c9b391c-26a1-46ec-a202-434453a6e582" SCE_FormGUID="6bba4927-4b49-4ddc-b005-512670a5e214" SCE_InstanceGUID="39595" SCE_SPInstancePath="" FIN_StaffID="" FirstName="" LastName=""
    MAIL_SendBy="[email protected]" MAIL_Date="Thu, 12 Jun 2014 14:49:26 +0200" DateRequired="" MissingFields="" NewLine="&#xA;" SCE_RequestorAuthorizationMode="1" SCE_AllowSubmissionFromAll="1"
    />
      <Init_Information>
        <Date_Required xsi:nil="true" />
      </Init_Information>
      <General_Data>
        <Action>U</Action>
        <Business_Partner_Number xsi:nil="true" />
        <Business_Partner_Grouping>G16</Business_Partner_Grouping>
        <Business_Partner_Type>G003</Business_Partner_Type>
        <Title>002</Title>
        <House_Number xsi:nil="true" />
        <Street xsi:nil="true" />
        <Street_2 xsi:nil="true" />
        <Street_3 xsi:nil="true" />
        <City>ABIDJAN</City>
        <Country>CI</Country>
        <City_Postal_Code xsi:nil="true" />
        <Region xsi:nil="true" />
        <PO_Box xsi:nil="true" />
        <PO_Box_Postal_Code xsi:nil="true" />
        <Language>FR</Language>
        <Purpose>Z003 UNVs</Purpose>
        <Telephone_Number />
        <Mobile_Phone_Number>90075777</Mobile_Phone_Number>
        <Fax_Number xsi:nil="true" />
        <Email_Address>[email protected]</Email_Address>
        <First_Name>Mickey</First_Name>
        <Middle_Name xsi:nil="true" />
        <Last_Name>Mouse</Last_Name>
        <Gender>2</Gender>
        <Index_Number>999999</Index_Number>
        <Date_of_Birth>1969-11-29</Date_of_Birth>
        <Nationality>CI</Nationality>
        <DOB_Day>29</DOB_Day>
        <DOB_Month>11</DOB_Month>
        <DOB_Year>1969</DOB_Year>
        <RelationBPGroupingBPType xsi:nil="true" />
        <BPType_Z016>Z003</BPType_Z016>
        <BPType_Z020 xsi:nil="true" />
        <BPType_Z021 xsi:nil="true" />
        <Sub_Area2>General and Banking</Sub_Area2>
        <SR_Description>Business Partner Number: 
    Business Partner Type: UNVs
    First Name: FirstName
    Last Name: LastName</SR_Description>
        <Sub_Area_Aux>79</Sub_Area_Aux>
        <thereis_general>TRUE</thereis_general>
        <thereis_banking>TRUE</thereis_banking>
        <auxGeneric>GDB</auxGeneric>
        <Business_Area_BP>P022</Business_Area_BP>
        <Search_Term_1>FirstName</Search_Term_1>
        <Search_Term_2>LastName</Search_Term_2>
        <Responsible_Institution xsi:nil="true" />
        <Add_Additional_Address xsi:nil="true" />
        <Add_Additional_Communication xsi:nil="true" />
        <BP_Role_Main xsi:nil="true" />
        <BP_Role_Additional xsi:nil="true" />
        <AddresType xsi:nil="true" />
        <Specify xsi:nil="true" />
        <BP_Category xsi:nil="true" />
        <AddRemoveAddress xsi:nil="true" />
        <AddRemoveCommunication xsi:nil="true" />
        <BusinessAreaOfBP_Aux>MALI</BusinessAreaOfBP_Aux>
      </General_Data>
      <Primary_Bank_Account>
        <Bank_Location_ID>0001</Bank_Location_ID>
        <Bank_Country>ML</Bank_Country>
        <Bank_Account_Number>XXXX999888777666555444-00</Bank_Account_Number>
        <Bank_Account_Type>1</Bank_Account_Type>
        <IBAN xsi:nil="true" />
        <CurrencyPrimaryIBAN xsi:nil="true" />
        <Account_Holder_Name xsi:nil="true" />
        <CurrencyOPrimaryNationalBankAccount>XOF</CurrencyOPrimaryNationalBankAccount>
        <Routing_Number_x002F__National_ID>BDMAMLBA</Routing_Number_x002F__National_ID>
        <NonIbanAccountHolderName>BANKNAME</NonIbanAccountHolderName>
        <NonIbanBankAccountNumber>TESTNIBAN</NonIbanBankAccountNumber>
        <CurrencyOPrimaryBankAccountNonIBAN>XOF</CurrencyOPrimaryBankAccountNonIBAN>
        <NonIbanPrimaryBankAccountType>1</NonIbanPrimaryBankAccountType>
        <NonIbanPrimaryAccountNameOfBank>BANK OF AFRICA</NonIbanPrimaryAccountNameOfBank>
        <NonIbanPrimaryAccountBankAddressHouseNumber>CDCI</NonIbanPrimaryAccountBankAddressHouseNumber>
        <NonIbanPrimaryAccountBankAddressStreet>DALOA, COMMERCE</NonIbanPrimaryAccountBankAddressStreet>
        <NonIbanPrimaryAccountBankAddressCity>DALOA</NonIbanPrimaryAccountBankAddressCity>
        <NonIbanPrimaryAccountBankAddressRegion>DALOA</NonIbanPrimaryAccountBankAddressRegion>
        <NonIbanPrimaryAccountBankAddressPostalCode>+225</NonIbanPrimaryAccountBankAddressPostalCode>
        <Primary_Type_of_Account xsi:nil="true" />
        <invisible1>National ID</invisible1>
        <bDontHasBankAccount>false</bDontHasBankAccount>
        <bBankAccountNotAvailable>false</bBankAccountNotAvailable>
        <CashOrCheck xsi:nil="true" />
        <CashAccountingClerk xsi:nil="true" />
        <BankID_BIC_SWIFT>BIBS</BankID_BIC_SWIFT>
        <CheckOptions xsi:nil="true" />
        <SameOrDifferent_IBAN_Primary xsi:nil="true" />
        <SameOrDifferent_National_Primary xsi:nil="true" />
        <SameOrDifferent_NotIBAN_Primary>Yes</SameOrDifferent_NotIBAN_Primary>
        <AccountTitle_IBAN_Primary xsi:nil="true" />
        <AccountTitle_National_Primary xsi:nil="true" />
        <AccountTitle_NotIBAN_Primary xsi:nil="true" />
        <ExplainWhy_IBAN_Primary xsi:nil="true" />
        <ExplainWhy_National_Primary xsi:nil="true" />
        <ExplainWhy_NotIBAN_Primary xsi:nil="true" />
        <Bank_Key xsi:nil="true" />
        <Bank_Control_Key xsi:nil="true" />
        <Special_Instructions_IBAN_Primary xsi:nil="true" />
        <Special_Instructions_National_Primary xsi:nil="true" />
        <Special_Instructions_NotIBAN_Primary xsi:nil="true" />
        <RecordTypePrimary xsi:nil="true" />
        <Payment_Method_UnderCashCheck xsi:nil="true" />
        <ValidUntilPrimaryBank xsi:nil="true" />
      </Primary_Bank_Account>
      <Primary_Intermediary_Bank_Account>
        <Intermediary_Bank_Location_ID xsi:nil="true" />
        <Intermediary_Bank_Country xsi:nil="true" />
        <Intermediary_Bank_Account_Number xsi:nil="true" />
        <Intermediary_Bank_Account_Type xsi:nil="true" />
        <Intermediary_IBAN xsi:nil="true" />
        <CurrencyIntermediaryIBAN xsi:nil="true" />
        <Intermediary_Account_Holder_Name xsi:nil="true" />
        <CurrencyOIntermediaryNationalBankAccount xsi:nil="true" />
        <Intermediary_Routing_Number_National_ID xsi:nil="true" />
        <IntermediaryNonIbanAccountHolderName xsi:nil="true" />
        <IntermediaryNonIbanBankAccountNumber xsi:nil="true" />
        <CurrencyOIntermediaryBankAccountNonIBAN xsi:nil="true" />
        <NonIbanIntermediaryBankAccountType xsi:nil="true" />
        <NonIbanIntermediaryAccountNameOfBank xsi:nil="true" />
        <NonIbanIntermediaryAccountBankAddressHouseNumber xsi:nil="true" />
        <NonIbanIntermediaryAccountBankAddressStreet xsi:nil="true" />
        <NonIbanIntermediaryAccountBankAddressCity xsi:nil="true" />
        <NonIbanIntermediaryAccountBankAddressRegion xsi:nil="true" />
        <NonIbanIntermediaryAccountBankAddressPostalCode xsi:nil="true" />
        <IntermediaryBankAccountVisible xsi:nil="true" />
        <Intermediary_Type_of_Account xsi:nil="true" />
        <invisible2 xsi:nil="true" />
        <Intermediary_BankID_BIC_SWIFT_code xsi:nil="true" />
        <SameOrDifferent_IBAN_Intermediary xsi:nil="true" />
        <SameOrDifferent_National_Intermediary xsi:nil="true" />
        <SameOrDifferent_NotIBAN_Intermediary xsi:nil="true" />
        <AccountTitle_IBAN_Intermediary xsi:nil="true" />
        <AccountTitle_National_Intermediary xsi:nil="true" />
        <AccountTitle_NotIBAN_Intermediary xsi:nil="true" />
        <ExplainWhy_IBAN_Intermediary xsi:nil="true" />
        <ExplainWhy_National_Intermediary xsi:nil="true" />
        <ExplainWhy_NotIBAN_Intermediary xsi:nil="true" />
      </Primary_Intermediary_Bank_Account>
      <Additional_Bank_Account>
        <Additional_Bank_Location_ID xsi:nil="true" />
        <Additional_Bank_Country xsi:nil="true" />
        <Additional_Bank_Account_Number xsi:nil="true" />
        <Additional_Bank_Account_Type xsi:nil="true" />
        <Additional_IBAN xsi:nil="true" />
        <CurrencyAdditionalIBAN xsi:nil="true" />
        <Additional_Account_Holder_Name xsi:nil="true" />
        <CurrencyOAdditionalNationalBankAccount xsi:nil="true" />
        <Additional_Routing_Number_x002F__National_ID xsi:nil="true" />
        <AdditionalNonIbanAccountHolderName xsi:nil="true" />
        <AdditionalNonIbanBankAccountNumber xsi:nil="true" />
        <CurrencyOAdditionalBankAccountNonIBAN xsi:nil="true" />
        <NonIbanAdditionalBankAccountType xsi:nil="true" />
        <NonIbanAdditionalAccountNameOfBank xsi:nil="true" />
        <NonIbanAdditionalAccountBankAddressHouseNumber xsi:nil="true" />
        <NonIbanAdditionalAccountBankAddressStreet xsi:nil="true" />
        <NonIbanAdditionalAccountBankAddressCity xsi:nil="true" />
        <NonIbanAdditionalAccountBankAddressRegion xsi:nil="true" />
        <NonIbanAdditionalAccountBankAddressPostalCode xsi:nil="true" />
        <AdditionalBankAccountVisible xsi:nil="true" />
        <Additional_Type_of_Account xsi:nil="true" />
        <invisible3 xsi:nil="true" />
        <Additional_BankID_BIC_SWIFT_code xsi:nil="true" />
        <SameOrDifferent_IBAN_Additional xsi:nil="true" />
        <SameOrDifferent_National_Additional xsi:nil="true" />
        <SameOrDifferent_NotIBAN_Additional xsi:nil="true" />
        <AccountTitle_IBAN_Additional xsi:nil="true" />
        <AccountTitle_National_Additional xsi:nil="true" />
        <AccountTitle_NotIBAN_Additional xsi:nil="true" />
        <ExplainWhy_IBAN_Additional xsi:nil="true" />
        <ExplainWhy_National_Additional xsi:nil="true" />
        <ExplainWhy_NotIBAN_Additional xsi:nil="true" />
        <Additional_Bank_Key xsi:nil="true" />
        <Additional_Bank_Control_Key xsi:nil="true" />
        <Special_Instructions_IBAN_Additional xsi:nil="true" />
        <Special_Instructions_National_Additional xsi:nil="true" />
        <Special_Instructions_NotIBAN_Additional xsi:nil="true" />
        <RecordTypeAdditional xsi:nil="true" />
        <ValidUntilAdditionalBank xsi:nil="true" />
      </Additional_Bank_Account>
      <Payment_Information>
        <Block_for_payment>1</Block_for_payment>
        <Payment_Method xsi:nil="true" />
        <Accounting_Clerk xsi:nil="true" />
        <PaymentMethodAdditional xsi:nil="true" />
        <AccountingClerkAdditional xsi:nil="true" />
      </Payment_Information>
      <Additional_Field_for_Purchasing_view>
        <Purchase_order_currency>XOF</Purchase_order_currency>
        <BP_Role_for_Screen_Usage__x0028_Real_State_x0029_ xsi:nil="true" />
        <Central_Block_for_Business_Partner>false</Central_Block_for_Business_Partner>
        <Posting_block_for_company_code xsi:nil="true" />
        <Deletion_Flag_for_Master_Record__x0028_Company_Code_Leve xsi:nil="true" />
        <Purchasing_block_at_purchasing_organization_level xsi:nil="true" />
        <Deletion_flag_for_vendor_at_purchasing_level xsi:nil="true" />
        <BPRoleDateBegin xsi:nil="true" />
        <BPRoleDateEnd xsi:nil="true" />
      </Additional_Field_for_Purchasing_view>
      <Requestor_Information>
        <Requested_By>REQUESTOR</Requested_By>
        <Org_Unit>MVCON</Org_Unit>
        <Date>2014-05-19</Date>
        <Reason xsi:nil="true" />
        <On_Form xsi:nil="true" />
        <Attached xsi:nil="true" />
        <Located_In_x002F_At>TIMBUKTOU</Located_In_x002F_At>
        <RequestorBusinessArea>P022</RequestorBusinessArea>
        <RequestorBusinessAreaValue>MALI</RequestorBusinessAreaValue>
        <Display_Review_Approval_Section xsi:nil="true" />
      </Requestor_Information>
      <Review_Information>
        <Review_By xsi:nil="true" />
        <Org_Unit xsi:nil="true" />
        <Date xsi:nil="true" />
      </Review_Information>
      <Approval_Information>
        <Approved_By xsi:nil="true" />
        <Org_Unit xsi:nil="true" />
        <Date xsi:nil="true" />
      </Approval_Information>
      <Reception_Information>
        <Received_By xsi:nil="true" />
        <Org_Unit xsi:nil="true" />
        <Date xsi:nil="true" />
      </Reception_Information>
      <Entry_Information>
        <Entered_By xsi:nil="true" />
        <Org_Unit xsi:nil="true" />
        <Date xsi:nil="true" />
      </Entry_Information>
      <Verification_Information>
        <Verified_By xsi:nil="true" />
        <Org_Unit xsi:nil="true" />
        <Date xsi:nil="true" />
      </Verification_Information>
      <Order_Currency>
        <Order_Currency_New xsi:nil="true" />
      </Order_Currency>
      <Change_BP_Group>
        <BP_Group_Existing xsi:nil="true" />
        <BP_Type_Existing xsi:nil="true" />
        <BP_Role_Existing xsi:nil="true" />
        <BP_Group_New xsi:nil="true" />
        <BP_Type_New xsi:nil="true" />
        <BP_Role_New xsi:nil="true" />
        <BPTypeAuxVisible1 xsi:nil="true" />
        <BPTypeAuxVisible2 xsi:nil="true" />
      </Change_BP_Group>
      <Expire_or_Add_Validity_Period_to_BP_Role>
        <Additional_BP_Role_Entry xsi:nil="true" />
      </Expire_or_Add_Validity_Period_to_BP_Role>
      <Add_Alternative_Payees>
        <Additional_Payee xsi:nil="true" />
      </Add_Alternative_Payees>
      <Establish_BP_Relationship>
        <Additional_Relationship_EntryB xsi:nil="true" />
      </Establish_BP_Relationship>
      <Block_BP>
        <PaymentBlock xsi:nil="true" />
        <Reason_Payment_Block xsi:nil="true" />
        <PostingBlock xsi:nil="true" />
        <Reason_Posting_Block xsi:nil="true" />
        <PurchasingBlock xsi:nil="true" />
        <Reason_Purchasing_Block xsi:nil="true" />
        <CentralBlock xsi:nil="true" />
        <Reason_Central_Block xsi:nil="true" />
        <FlagforArchiving xsi:nil="true" />
        <Reason_Flag_Block xsi:nil="true" />
        <TerminateBP xsi:nil="true" />
        <Reason_Terminate_Block xsi:nil="true" />
      </Block_BP>
      <Options>
        <Option1>true</Option1>
        <Option2>false</Option2>
        <Option3>true</Option3>
        <Option4>false</Option4>
        <Option5>false</Option5>
        <Option6>false</Option6>
        <Option7>false</Option7>
        <Option8>false</Option8>
        <Opt_Update_BP_legal_Name>false</Opt_Update_BP_legal_Name>
      </Options>
      <Sec_Update_BP_Legal_Name>
        <NewLegalFirstName xsi:nil="true" />
        <NewLegalMiddleName xsi:nil="true" />
        <NewLegalLastName xsi:nil="true" />
      </Sec_Update_BP_Legal_Name>
      <line>
        <IDType>
          <IDType xsi:nil="true" />
          <LegacyIDNumber xsi:nil="true" />
          <Responsible_Institution_Legacy xsi:nil="true" />
          <AddRemoveID_R xsi:nil="true" />
        </IDType>
      </line>
      <Address>
        <Section_Address>
          <AddressTypeR xsi:nil="true" />
          <StreetR xsi:nil="true" />
          <StreetR_2 xsi:nil="true" />
          <StreetR_3 xsi:nil="true" />
          <House_NumberR xsi:nil="true" />
          <City_Postal_CodeR xsi:nil="true" />
          <CityR xsi:nil="true" />
          <CountryR xsi:nil="true" />
          <StateRegionProvinceR xsi:nil="true" />
          <PO_BoxR xsi:nil="true" />
          <PO_Box_PostalCodeR xsi:nil="true" />
          <SpecifyR xsi:nil="true" />
          <AddRemoveAddressR xsi:nil="true" />
        </Section_Address>
        <PO_BoxR2>
          <SecPoBoxR2>
            <PO_BoxR2 xsi:nil="true" />
            <PO_Box_Postal_CodeR2 xsi:nil="true" />
          </SecPoBoxR2>
        </PO_BoxR2>
      </Address>
      <Communication>
        <Communication_Section>
          <Telephone_NumberR xsi:nil="true" />
          <Mobile_Phone_NumberR xsi:nil="true" />
          <Fax_NumberR xsi:nil="true" />
          <Email_AddressR xsi:nil="true" />
          <AddRemoveCommunicationR xsi:nil="true" />
        </Communication_Section>
      </Communication>
      <Expire_or_Add_Validaty_to_BP_RoleR>
        <Expire_or_Add_Validaty>
          <BP_RoleR xsi:nil="true" />
          <Expire_or_Add_Validity_PeriodR xsi:nil="true" />
          <Valid_FromR xsi:nil="true" />
          <Valid_ToR xsi:nil="true" />
        </Expire_or_Add_Validaty>
      </Expire_or_Add_Validaty_to_BP_RoleR>
      <Add_Alternative_PayeesR>
        <Alternative_Payees>
          <Add_Update_Remove xsi:nil="true" />
          <Permited_Payee_BP_NumberR xsi:nil="true" />
          <Name_Alt_PayeeR xsi:nil="true" />
          <Index_NumberR xsi:nil="true" />
          <TitleR xsi:nil="true" />
          <First_NameR xsi:nil="true" />
          <Middle_NameR xsi:nil="true" />
          <Last_NameR xsi:nil="true" />
        </Alternative_Payees>
      </Add_Alternative_PayeesR>
      <Establish_BP_RelationshipR>
        <Relationship>
          <BP_Number_Main xsi:nil="true" />
          <Relationship_CategoryR xsi:nil="true" />
          <ValidFromR xsi:nil="true" />
          <ValidToRelationshipR xsi:nil="true" />
          <BPNumber_SecondaryR xsi:nil="true" />
          <Index_Number_Secondary_Relationship xsi:nil="true" />
          <Business_Area_Secondary xsi:nil="true" />
          <Title_Secondary_BP xsi:nil="true" />
          <First_Name_Secondary_BPR xsi:nil="true" />
          <MiddleNameSecondaryBPR xsi:nil="true" />
          <LastNameSecondaryBP xsi:nil="true" />
          <Add_Update_DeleteR xsi:nil="true" />
        </Relationship>
      </Establish_BP_RelationshipR>
      <PO_BoxR>
        <SecPoBoxR>
          <PO_BoxR xsi:nil="true" />
          <PO_Box_Postal_CodeR xsi:nil="true" />
        </SecPoBoxR>
      </PO_BoxR>
    </tns:OF_Forms>

    See this illustration
    declare @x xml='<?mso-infoPathSolution PIVersion="1.0.0.0" href="http://aaa.bbb.ccc.org/OF/PublicDownload.aspx/6bba49274b494ddcb005512670a5e214.xsn" name="urn:schemas-microsoft-com:office:infopath:BPIP-xsn:OF-Messages-Schemas-OF-Forms" language="en-us" productVersion="14.0.0" solutionVersion="3.0.29.90" ?>
    <?mso-application progid="InfoPath.Document"?>
    <tns:OF_Forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="OF_Messages.Schemas.OF_Forms" xmlns:xdServerInfo="http://schemas.microsoft.com/office/infopath/2009/xslt/ServerInfo" xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2013-07-22T10:58:18" xmlns:xd="http://schemas.microsoft.com/office/infopath/2003">
    <Name />
    <Description />
    <Settings Name="FormName" Description="Request for new master data.xml" SCE_RouteID="54" ROU_Name="IBP-Group" SCE_FunctionalAreaID="1" FUA_FunctionalAreaName="Data Maintenance" SCE_SchemaCategory="BP" SCE_SchemaGUID="3c9b391c-26a1-46ec-a202-434453a6e582" SCE_FormGUID="6bba4927-4b49-4ddc-b005-512670a5e214" SCE_InstanceGUID="39595" SCE_SPInstancePath="" FIN_StaffID="" FirstName="" LastName="" MAIL_SendBy="[email protected]" MAIL_Date="Thu, 12 Jun 2014 14:49:26 +0200" DateRequired="" MissingFields="" NewLine="&#xA;" SCE_RequestorAuthorizationMode="1" SCE_AllowSubmissionFromAll="1" />
    <Init_Information>
    <Date_Required xsi:nil="true" />
    </Init_Information>
    <General_Data>
    <Action>U</Action>
    <Business_Partner_Number xsi:nil="true" />
    <Business_Partner_Grouping>G16</Business_Partner_Grouping>
    <Business_Partner_Type>G003</Business_Partner_Type>
    <Title>002</Title>
    <House_Number xsi:nil="true" />
    <Street xsi:nil="true" />
    <Street_2 xsi:nil="true" />
    <Street_3 xsi:nil="true" />
    <City>ABIDJAN</City>
    <Country>CI</Country>
    <City_Postal_Code xsi:nil="true" />
    <Region xsi:nil="true" />
    <PO_Box xsi:nil="true" />
    <PO_Box_Postal_Code xsi:nil="true" />
    <Language>FR</Language>
    <Purpose>Z003 UNVs</Purpose>
    <Telephone_Number />
    <Mobile_Phone_Number>90075777</Mobile_Phone_Number>
    <Fax_Number xsi:nil="true" />
    <Email_Address>[email protected]</Email_Address>
    <First_Name>Mickey</First_Name>
    <Middle_Name xsi:nil="true" />
    <Last_Name>Mouse</Last_Name>
    <Gender>2</Gender>
    <Index_Number>999999</Index_Number>
    <Date_of_Birth>1969-11-29</Date_of_Birth>
    <Nationality>CI</Nationality>
    <DOB_Day>29</DOB_Day>
    <DOB_Month>11</DOB_Month>
    <DOB_Year>1969</DOB_Year>
    <RelationBPGroupingBPType xsi:nil="true" />
    <BPType_Z016>Z003</BPType_Z016>
    <BPType_Z020 xsi:nil="true" />
    <BPType_Z021 xsi:nil="true" />
    <Sub_Area2>General and Banking</Sub_Area2>
    <SR_Description>Business Partner Number:
    Business Partner Type: UNVs
    First Name: FirstName
    Last Name: LastName</SR_Description>
    <Sub_Area_Aux>79</Sub_Area_Aux>
    <thereis_general>TRUE</thereis_general>
    <thereis_banking>TRUE</thereis_banking>
    <auxGeneric>GDB</auxGeneric>
    <Business_Area_BP>P022</Business_Area_BP>
    <Search_Term_1>FirstName</Search_Term_1>
    <Search_Term_2>LastName</Search_Term_2>
    <Responsible_Institution xsi:nil="true" />
    <Add_Additional_Address xsi:nil="true" />
    <Add_Additional_Communication xsi:nil="true" />
    <BP_Role_Main xsi:nil="true" />
    <BP_Role_Additional xsi:nil="true" />
    <AddresType xsi:nil="true" />
    <Specify xsi:nil="true" />
    <BP_Category xsi:nil="true" />
    <AddRemoveAddress xsi:nil="true" />
    <AddRemoveCommunication xsi:nil="true" />
    <BusinessAreaOfBP_Aux>MALI</BusinessAreaOfBP_Aux>
    </General_Data>
    <Primary_Bank_Account>
    <Bank_Location_ID>0001</Bank_Location_ID>
    <Bank_Country>ML</Bank_Country>
    <Bank_Account_Number>XXXX999888777666555444-00</Bank_Account_Number>
    <Bank_Account_Type>1</Bank_Account_Type>
    <IBAN xsi:nil="true" />
    <CurrencyPrimaryIBAN xsi:nil="true" />
    <Account_Holder_Name xsi:nil="true" />
    <CurrencyOPrimaryNationalBankAccount>XOF</CurrencyOPrimaryNationalBankAccount>
    <Routing_Number_x002F__National_ID>BDMAMLBA</Routing_Number_x002F__National_ID>
    <NonIbanAccountHolderName>BANKNAME</NonIbanAccountHolderName>
    <NonIbanBankAccountNumber>TESTNIBAN</NonIbanBankAccountNumber>
    <CurrencyOPrimaryBankAccountNonIBAN>XOF</CurrencyOPrimaryBankAccountNonIBAN>
    <NonIbanPrimaryBankAccountType>1</NonIbanPrimaryBankAccountType>
    <NonIbanPrimaryAccountNameOfBank>BANK OF AFRICA</NonIbanPrimaryAccountNameOfBank>
    <NonIbanPrimaryAccountBankAddressHouseNumber>CDCI</NonIbanPrimaryAccountBankAddressHouseNumber>
    <NonIbanPrimaryAccountBankAddressStreet>DALOA, COMMERCE</NonIbanPrimaryAccountBankAddressStreet>
    <NonIbanPrimaryAccountBankAddressCity>DALOA</NonIbanPrimaryAccountBankAddressCity>
    <NonIbanPrimaryAccountBankAddressRegion>DALOA</NonIbanPrimaryAccountBankAddressRegion>
    <NonIbanPrimaryAccountBankAddressPostalCode>+225</NonIbanPrimaryAccountBankAddressPostalCode>
    <Primary_Type_of_Account xsi:nil="true" />
    <invisible1>National ID</invisible1>
    <bDontHasBankAccount>false</bDontHasBankAccount>
    <bBankAccountNotAvailable>false</bBankAccountNotAvailable>
    <CashOrCheck xsi:nil="true" />
    <CashAccountingClerk xsi:nil="true" />
    <BankID_BIC_SWIFT>BIBS</BankID_BIC_SWIFT>
    <CheckOptions xsi:nil="true" />
    <SameOrDifferent_IBAN_Primary xsi:nil="true" />
    <SameOrDifferent_National_Primary xsi:nil="true" />
    <SameOrDifferent_NotIBAN_Primary>Yes</SameOrDifferent_NotIBAN_Primary>
    <AccountTitle_IBAN_Primary xsi:nil="true" />
    <AccountTitle_National_Primary xsi:nil="true" />
    <AccountTitle_NotIBAN_Primary xsi:nil="true" />
    <ExplainWhy_IBAN_Primary xsi:nil="true" />
    <ExplainWhy_National_Primary xsi:nil="true" />
    <ExplainWhy_NotIBAN_Primary xsi:nil="true" />
    <Bank_Key xsi:nil="true" />
    <Bank_Control_Key xsi:nil="true" />
    <Special_Instructions_IBAN_Primary xsi:nil="true" />
    <Special_Instructions_National_Primary xsi:nil="true" />
    <Special_Instructions_NotIBAN_Primary xsi:nil="true" />
    <RecordTypePrimary xsi:nil="true" />
    <Payment_Method_UnderCashCheck xsi:nil="true" />
    <ValidUntilPrimaryBank xsi:nil="true" />
    </Primary_Bank_Account>
    <Primary_Intermediary_Bank_Account>
    <Intermediary_Bank_Location_ID xsi:nil="true" />
    <Intermediary_Bank_Country xsi:nil="true" />
    <Intermediary_Bank_Account_Number xsi:nil="true" />
    <Intermediary_Bank_Account_Type xsi:nil="true" />
    <Intermediary_IBAN xsi:nil="true" />
    <CurrencyIntermediaryIBAN xsi:nil="true" />
    <Intermediary_Account_Holder_Name xsi:nil="true" />
    <CurrencyOIntermediaryNationalBankAccount xsi:nil="true" />
    <Intermediary_Routing_Number_National_ID xsi:nil="true" />
    <IntermediaryNonIbanAccountHolderName xsi:nil="true" />
    <IntermediaryNonIbanBankAccountNumber xsi:nil="true" />
    <CurrencyOIntermediaryBankAccountNonIBAN xsi:nil="true" />
    <NonIbanIntermediaryBankAccountType xsi:nil="true" />
    <NonIbanIntermediaryAccountNameOfBank xsi:nil="true" />
    <NonIbanIntermediaryAccountBankAddressHouseNumber xsi:nil="true" />
    <NonIbanIntermediaryAccountBankAddressStreet xsi:nil="true" />
    <NonIbanIntermediaryAccountBankAddressCity xsi:nil="true" />
    <NonIbanIntermediaryAccountBankAddressRegion xsi:nil="true" />
    <NonIbanIntermediaryAccountBankAddressPostalCode xsi:nil="true" />
    <IntermediaryBankAccountVisible xsi:nil="true" />
    <Intermediary_Type_of_Account xsi:nil="true" />
    <invisible2 xsi:nil="true" />
    <Intermediary_BankID_BIC_SWIFT_code xsi:nil="true" />
    <SameOrDifferent_IBAN_Intermediary xsi:nil="true" />
    <SameOrDifferent_National_Intermediary xsi:nil="true" />
    <SameOrDifferent_NotIBAN_Intermediary xsi:nil="true" />
    <AccountTitle_IBAN_Intermediary xsi:nil="true" />
    <AccountTitle_National_Intermediary xsi:nil="true" />
    <AccountTitle_NotIBAN_Intermediary xsi:nil="true" />
    <ExplainWhy_IBAN_Intermediary xsi:nil="true" />
    <ExplainWhy_National_Intermediary xsi:nil="true" />
    <ExplainWhy_NotIBAN_Intermediary xsi:nil="true" />
    </Primary_Intermediary_Bank_Account>
    <Additional_Bank_Account>
    <Additional_Bank_Location_ID xsi:nil="true" />
    <Additional_Bank_Country xsi:nil="true" />
    <Additional_Bank_Account_Number xsi:nil="true" />
    <Additional_Bank_Account_Type xsi:nil="true" />
    <Additional_IBAN xsi:nil="true" />
    <CurrencyAdditionalIBAN xsi:nil="true" />
    <Additional_Account_Holder_Name xsi:nil="true" />
    <CurrencyOAdditionalNationalBankAccount xsi:nil="true" />
    <Additional_Routing_Number_x002F__National_ID xsi:nil="true" />
    <AdditionalNonIbanAccountHolderName xsi:nil="true" />
    <AdditionalNonIbanBankAccountNumber xsi:nil="true" />
    <CurrencyOAdditionalBankAccountNonIBAN xsi:nil="true" />
    <NonIbanAdditionalBankAccountType xsi:nil="true" />
    <NonIbanAdditionalAccountNameOfBank xsi:nil="true" />
    <NonIbanAdditionalAccountBankAddressHouseNumber xsi:nil="true" />
    <NonIbanAdditionalAccountBankAddressStreet xsi:nil="true" />
    <NonIbanAdditionalAccountBankAddressCity xsi:nil="true" />
    <NonIbanAdditionalAccountBankAddressRegion xsi:nil="true" />
    <NonIbanAdditionalAccountBankAddressPostalCode xsi:nil="true" />
    <AdditionalBankAccountVisible xsi:nil="true" />
    <Additional_Type_of_Account xsi:nil="true" />
    <invisible3 xsi:nil="true" />
    <Additional_BankID_BIC_SWIFT_code xsi:nil="true" />
    <SameOrDifferent_IBAN_Additional xsi:nil="true" />
    <SameOrDifferent_National_Additional xsi:nil="true" />
    <SameOrDifferent_NotIBAN_Additional xsi:nil="true" />
    <AccountTitle_IBAN_Additional xsi:nil="true" />
    <AccountTitle_National_Additional xsi:nil="true" />
    <AccountTitle_NotIBAN_Additional xsi:nil="true" />
    <ExplainWhy_IBAN_Additional xsi:nil="true" />
    <ExplainWhy_National_Additional xsi:nil="true" />
    <ExplainWhy_NotIBAN_Additional xsi:nil="true" />
    <Additional_Bank_Key xsi:nil="true" />
    <Additional_Bank_Control_Key xsi:nil="true" />
    <Special_Instructions_IBAN_Additional xsi:nil="true" />
    <Special_Instructions_National_Additional xsi:nil="true" />
    <Special_Instructions_NotIBAN_Additional xsi:nil="true" />
    <RecordTypeAdditional xsi:nil="true" />
    <ValidUntilAdditionalBank xsi:nil="true" />
    </Additional_Bank_Account>
    <Payment_Information>
    <Block_for_payment>1</Block_for_payment>
    <Payment_Method xsi:nil="true" />
    <Accounting_Clerk xsi:nil="true" />
    <PaymentMethodAdditional xsi:nil="true" />
    <AccountingClerkAdditional xsi:nil="true" />
    </Payment_Information>
    <Additional_Field_for_Purchasing_view>
    <Purchase_order_currency>XOF</Purchase_order_currency>
    <BP_Role_for_Screen_Usage__x0028_Real_State_x0029_ xsi:nil="true" />
    <Central_Block_for_Business_Partner>false</Central_Block_for_Business_Partner>
    <Posting_block_for_company_code xsi:nil="true" />
    <Deletion_Flag_for_Master_Record__x0028_Company_Code_Leve xsi:nil="true" />
    <Purchasing_block_at_purchasing_organization_level xsi:nil="true" />
    <Deletion_flag_for_vendor_at_purchasing_level xsi:nil="true" />
    <BPRoleDateBegin xsi:nil="true" />
    <BPRoleDateEnd xsi:nil="true" />
    </Additional_Field_for_Purchasing_view>
    <Requestor_Information>
    <Requested_By>REQUESTOR</Requested_By>
    <Org_Unit>MVCON</Org_Unit>
    <Date>2014-05-19</Date>
    <Reason xsi:nil="true" />
    <On_Form xsi:nil="true" />
    <Attached xsi:nil="true" />
    <Located_In_x002F_At>TIMBUKTOU</Located_In_x002F_At>
    <RequestorBusinessArea>P022</RequestorBusinessArea>
    <RequestorBusinessAreaValue>MALI</RequestorBusinessAreaValue>
    <Display_Review_Approval_Section xsi:nil="true" />
    </Requestor_Information>
    <Review_Information>
    <Review_By xsi:nil="true" />
    <Org_Unit xsi:nil="true" />
    <Date xsi:nil="true" />
    </Review_Information>
    <Approval_Information>
    <Approved_By xsi:nil="true" />
    <Org_Unit xsi:nil="true" />
    <Date xsi:nil="true" />
    </Approval_Information>
    <Reception_Information>
    <Received_By xsi:nil="true" />
    <Org_Unit xsi:nil="true" />
    <Date xsi:nil="true" />
    </Reception_Information>
    <Entry_Information>
    <Entered_By xsi:nil="true" />
    <Org_Unit xsi:nil="true" />
    <Date xsi:nil="true" />
    </Entry_Information>
    <Verification_Information>
    <Verified_By xsi:nil="true" />
    <Org_Unit xsi:nil="true" />
    <Date xsi:nil="true" />
    </Verification_Information>
    <Order_Currency>
    <Order_Currency_New xsi:nil="true" />
    </Order_Currency>
    <Change_BP_Group>
    <BP_Group_Existing xsi:nil="true" />
    <BP_Type_Existing xsi:nil="true" />
    <BP_Role_Existing xsi:nil="true" />
    <BP_Group_New xsi:nil="true" />
    <BP_Type_New xsi:nil="true" />
    <BP_Role_New xsi:nil="true" />
    <BPTypeAuxVisible1 xsi:nil="true" />
    <BPTypeAuxVisible2 xsi:nil="true" />
    </Change_BP_Group>
    <Expire_or_Add_Validity_Period_to_BP_Role>
    <Additional_BP_Role_Entry xsi:nil="true" />
    </Expire_or_Add_Validity_Period_to_BP_Role>
    <Add_Alternative_Payees>
    <Additional_Payee xsi:nil="true" />
    </Add_Alternative_Payees>
    <Establish_BP_Relationship>
    <Additional_Relationship_EntryB xsi:nil="true" />
    </Establish_BP_Relationship>
    <Block_BP>
    <PaymentBlock xsi:nil="true" />
    <Reason_Payment_Block xsi:nil="true" />
    <PostingBlock xsi:nil="true" />
    <Reason_Posting_Block xsi:nil="true" />
    <PurchasingBlock xsi:nil="true" />
    <Reason_Purchasing_Block xsi:nil="true" />
    <CentralBlock xsi:nil="true" />
    <Reason_Central_Block xsi:nil="true" />
    <FlagforArchiving xsi:nil="true" />
    <Reason_Flag_Block xsi:nil="true" />
    <TerminateBP xsi:nil="true" />
    <Reason_Terminate_Block xsi:nil="true" />
    </Block_BP>
    <Options>
    <Option1>true</Option1>
    <Option2>false</Option2>
    <Option3>true</Option3>
    <Option4>false</Option4>
    <Option5>false</Option5>
    <Option6>false</Option6>
    <Option7>false</Option7>
    <Option8>false</Option8>
    <Opt_Update_BP_legal_Name>false</Opt_Update_BP_legal_Name>
    </Options>
    <Sec_Update_BP_Legal_Name>
    <NewLegalFirstName xsi:nil="true" />
    <NewLegalMiddleName xsi:nil="true" />
    <NewLegalLastName xsi:nil="true" />
    </Sec_Update_BP_Legal_Name>
    <line>
    <IDType>
    <IDType xsi:nil="true" />
    <LegacyIDNumber xsi:nil="true" />
    <Responsible_Institution_Legacy xsi:nil="true" />
    <AddRemoveID_R xsi:nil="true" />
    </IDType>
    </line>
    <Address>
    <Section_Address>
    <AddressTypeR xsi:nil="true" />
    <StreetR xsi:nil="true" />
    <StreetR_2 xsi:nil="true" />
    <StreetR_3 xsi:nil="true" />
    <House_NumberR xsi:nil="true" />
    <City_Postal_CodeR xsi:nil="true" />
    <CityR xsi:nil="true" />
    <CountryR xsi:nil="true" />
    <StateRegionProvinceR xsi:nil="true" />
    <PO_BoxR xsi:nil="true" />
    <PO_Box_PostalCodeR xsi:nil="true" />
    <SpecifyR xsi:nil="true" />
    <AddRemoveAddressR xsi:nil="true" />
    </Section_Address>
    <PO_BoxR2>
    <SecPoBoxR2>
    <PO_BoxR2 xsi:nil="true" />
    <PO_Box_Postal_CodeR2 xsi:nil="true" />
    </SecPoBoxR2>
    </PO_BoxR2>
    </Address>
    <Communication>
    <Communication_Section>
    <Telephone_NumberR xsi:nil="true" />
    <Mobile_Phone_NumberR xsi:nil="true" />
    <Fax_NumberR xsi:nil="true" />
    <Email_AddressR xsi:nil="true" />
    <AddRemoveCommunicationR xsi:nil="true" />
    </Communication_Section>
    </Communication>
    <Expire_or_Add_Validaty_to_BP_RoleR>
    <Expire_or_Add_Validaty>
    <BP_RoleR xsi:nil="true" />
    <Expire_or_Add_Validity_PeriodR xsi:nil="true" />
    <Valid_FromR xsi:nil="true" />
    <Valid_ToR xsi:nil="true" />
    </Expire_or_Add_Validaty>
    </Expire_or_Add_Validaty_to_BP_RoleR>
    <Add_Alternative_PayeesR>
    <Alternative_Payees>
    <Add_Update_Remove xsi:nil="true" />
    <Permited_Payee_BP_NumberR xsi:nil="true" />
    <Name_Alt_PayeeR xsi:nil="true" />
    <Index_NumberR xsi:nil="true" />
    <TitleR xsi:nil="true" />
    <First_NameR xsi:nil="true" />
    <Middle_NameR xsi:nil="true" />
    <Last_NameR xsi:nil="true" />
    </Alternative_Payees>
    </Add_Alternative_PayeesR>
    <Establish_BP_RelationshipR>
    <Relationship>
    <BP_Number_Main xsi:nil="true" />
    <Relationship_CategoryR xsi:nil="true" />
    <ValidFromR xsi:nil="true" />
    <ValidToRelationshipR xsi:nil="true" />
    <BPNumber_SecondaryR xsi:nil="true" />
    <Index_Number_Secondary_Relationship xsi:nil="true" />
    <Business_Area_Secondary xsi:nil="true" />
    <Title_Secondary_BP xsi:nil="true" />
    <First_Name_Secondary_BPR xsi:nil="true" />
    <MiddleNameSecondaryBPR xsi:nil="true" />
    <LastNameSecondaryBP xsi:nil="true" />
    <Add_Update_DeleteR xsi:nil="true" />
    </Relationship>
    </Establish_BP_RelationshipR>
    <PO_BoxR>
    <SecPoBoxR>
    <PO_BoxR xsi:nil="true" />
    <PO_Box_Postal_CodeR xsi:nil="true" />
    </SecPoBoxR>
    </PO_BoxR>
    </tns:OF_Forms>'
    ;WITH XMLNAMESPACES ('OF_Messages.Schemas.OF_Forms' AS tns)
    SELECT m.n.value('(Bank_Account_Number)[1]','varchar(100)')
    FROM @x.nodes('/tns:OF_Forms/Primary_Bank_Account')m(n)
    Please Mark This As Answer if it solved your issue
    Please Vote This As Helpful if it helps to solve your issue
    Visakh
    My Wiki User Page
    My MSDN Page
    My Personal Blog
    My Facebook Page

  • How to get multiple values from the list

    I've a list of an item which I queried it from the database. I also created a button that will takes a selected items from the list when it was clicked. I used javabean to get the data from database.
    <%     // clicked on Select District Button
    Vector vselectedDistrict = new Vector();
    Vector vdistrictID = new Vector();
    String tmpSelectDistrict = "";
    tmpSelectDistrict = request.getParameter("bSelectDistrict");
    if(tmpSelectDistrict != null)
         // get multiple values from the list
         String[] selectedDistrict = request.getParameterValues("usrTDistrict");
         vselectedDistrict.clear();
         vdistrictID.clear();
         if((selectedDistrict != null) && (selectedDistrict.length != 0))
                             for(int i=0;i<selectedDistrict.length;i++)
                   vselectedDistrict.addElement(selectedDistrict);           
              vdistrictID = dbaseInfo.getcurrentDistrictID(nstate,vselectedDistrict);
              for(int i=0;i<vdistrictID.size();i++)
                   out.println("district = " + selectedDistrict[i]);                         out.println("district ID= " + vdistrictID.get(i).toString());
    %>
    // get vdistrict from the database here......
    <select name="usrTDistrict" size="5" multiple>
    <%     for(int i = 0; i< vdistrict.size(); i++)
    %>
         <option value="<%=vdistrict.get(i).toString()%>"><%=vdistrict.get(i).toString()%></option>
    <%
    %>          
    </select>
    <input type="submit" name="bSelectDistrict" value="Select District">
    Lets say the item that i selected from the list is 'Xplace' and I clicked on the Select District button,
    what I got is this error message:
    org.apache.jasper.JasperException: Unable to convert string 'Xplace' to class java.util.Vector for attribute usrTDistrict: java.lang.IllegalArgumentException: Property Editor not registered with the PropertyEditorManager
    So where is going wrong and what the message means?. Any help very much appreciated. Thanks

    These are just guesses that might hopefully steer you in directions you haven't looked in yet.
    I presume you used triangle brackets (< >) to avoid having the Jive Forum think it was the "italics" tag?
    Are you certain this: dbaseInfo.getcurrentDistrictID(nstate,vselectedDistrict);
    expects a Vector as its second parameter? And returns a Vector?
    I don't believe you've shown how you use the javabean, or its code? Perhaps it should be rewritten to accept an array of strings instead of a Vector?

  • Getting the Values from a Tiled View

    Hi,
    I have a TiledView and I have checkbox in the tiled view. I am trying
    to get the values of the checked boxes.
    I have coded like this.
    Object[] links = getRSystemLinks().getCbSystemUrl().getValues();
    if I see the links.length i get only one. In html If I see the code
    it appends the TileIndex in brackets. If I replace the TileIndex with
    0 in all the fields in endCbSystemUrl method I get the correct values.
    In the TiledView beginDisplay() method my code is like this.
    if (getPrimaryModel() == null) throw new ModelControlException
    ("Primary model is null");
    super.beginDisplay();
    resetTileIndex();
    pgCustomizeLinksViewBean parentBean = (pgCustomizeLinksViewBean)
    getParent();
    ((DatasetModel) getDefaultModel()).setSize
    (parentBean.SystemChoicesValue.size());
    Any Suggestions on this.
    Thanks
    Namburi

    Namburi--
    Remember, the getValues() method does not return the values from a column in
    a TiledView. It is strictly for use by fields that can have multiple
    values, like multi-select list boxes.
    DO NOT remove the indexing feature from the field names, especially in the
    case of checkboxes, because checkboxes aren't submitted back to the server
    unless they are checked. By overriding the automatic checkbox tracking
    feature JATO provides, you won't be able to tell which checkboxes were
    actually checked by row--you'll simply get back a list the same size as the
    number of checkboxes that were checked, without any placeholders for the
    ones that weren't checked.
    Instead, on submit, you simply need to move through the tiledView and check
    the value of checkbox on each row:
    tiledView.beforeFirst();
    while (tiledView.next())
    if (getDisplayFieldBooleanValue("myCheckBox"))
    You can use the same construct to build up an array or list:
    List checkedList=new LinkedList();
    tiledView.beforeFirst();
    while (tiledView.next())
    if (getDisplayFieldBooleanValue("myCheckBox"))
    checkedList.add(new Boolean(true))
    else
    checkedList.add(new Boolean(false))
    Todd
    Todd Fast
    Senior Engineer
    Sun Microsystems, Inc.
    todd.fast@s...
    ----- Original Message -----
    From: <vnamboori@y...>
    Sent: Wednesday, October 17, 2001 3:49 PM
    Subject: [iPlanet-JATO] Getting the Values from a Tiled View
    Hi,
    I have a TiledView and I have checkbox in the tiled view. I am trying
    to get the values of the checked boxes.
    I have coded like this.
    Object[] links = getRSystemLinks().getCbSystemUrl().getValues();
    if I see the links.length i get only one. In html If I see the code
    it appends the TileIndex in brackets. If I replace the TileIndex with
    0 in all the fields in endCbSystemUrl method I get the correct values.
    In the TiledView beginDisplay() method my code is like this.
    if (getPrimaryModel() == null) throw new ModelControlException
    ("Primary model is null");
    super.beginDisplay();
    resetTileIndex();
    pgCustomizeLinksViewBean parentBean = (pgCustomizeLinksViewBean)
    getParent();
    ((DatasetModel) getDefaultModel()).setSize
    (parentBean.SystemChoicesValue.size());
    Any Suggestions on this.
    Thanks
    Namburi
    [email protected]

  • NullPointerException - Cannot get the value from variable f_cashGiven

    In SubCheckout.java (a POS), what I want is when Payment button (f_cashPayment) is pressed, the action "Cash" is performed, get the value from Cash Given (f_cashGiven), do the subtraction and post the value as Cash Return (f_cashReturn). The code is filled in actionPerformed. But I cannot get the value by using f_cashGiven.getValue() from VNumber class. It returns NULL. This should be quite straight forward, but I do not know what is wrong. Please help!
    Enclosed please find the source code of SubCheckout.java and VNumber.java
    This is the code of SubCheckout.java :
    * The contents of this file are subject to the   Compiere License  Version 1.1
    * ("License"); You may not use this file except in compliance with the License
    * You may obtain a copy of the License at http://www.compiere.org/license.html
    * Software distributed under the License is distributed on an  "AS IS"  basis,
    * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
    * the specific language governing rights and limitations under the License.
    * The Original Code is Compiere ERP & CRM Smart Business Solution. The Initial
    * Developer of the Original Code is Jorg Janke. Portions created by Jorg Janke
    * are Copyright (C) 1999-2005 Jorg Janke.
    * All parts are Copyright (C) 1999-2005 ComPiere, Inc.  All Rights Reserved.
    * Contributor(s): ______________________________________.
    package org.compiere.pos;
    import java.awt.*;
    import java.awt.event.*;
    import java.math.BigDecimal;
    import javax.swing.border.*;
    import org.compiere.grid.ed.*;
    import org.compiere.swing.*;
    import org.compiere.util.*;
    *     POS Checkout Sub Panel
    *  @author Jorg Janke
    *  @version $Id: SubCheckout.java,v 1.3 2005/03/11 20:28:22 jjanke Exp $
    public class SubCheckout extends PosSubPanel implements ActionListener
          *      Constructor
          *     @param posPanel POS Panel
         public SubCheckout (PosPanel posPanel)
              super (posPanel);
         }     //     PosSubCheckout
         private CButton f_register = null;
         private CButton f_summary = null;
         private CButton f_process = null;
         private CButton f_print = null;
         private CLabel f_lcreditCardNumber = null;
         private CTextField f_creditCardNumber = null;
         private CLabel f_lcreditCardExp = null;
         private CTextField f_creditCardExp = null;
         private CLabel f_lcreditCardVV = null;
         private CTextField f_creditCardVV = null;
         private CButton f_cashPayment = null;
         private CLabel f_lcashGiven = null;
         private VNumber f_cashGiven = null;
         private CLabel f_lcashReturn = null;
         private VNumber f_cashReturn = null;
         private CButton f_creditPayment = null;
         /**     Logger               */
         private static CLogger log = CLogger.getCLogger(SubCheckout.class);
          *      Initialize
         public void init()
              //     Title
              TitledBorder border = new TitledBorder(Msg.getMsg(Env.getCtx(), "Checkout"));
              setBorder(border);
              //     Content
              setLayout(new GridBagLayout());
              GridBagConstraints gbc = new GridBagConstraints();
              gbc.insets = INSETS2;
              //     --     0
              gbc.gridx = 0;
              f_register = createButtonAction("Register", null);
              gbc.gridy = 0;
              add (f_register, gbc);
              f_summary = createButtonAction("Summary", null);
              gbc.gridy = 1;
              add (f_summary, gbc);
              f_process = createButtonAction("Process", null);
              gbc.gridy = 2;
              add (f_process, gbc);
              f_print = createButtonAction("Print", null);
              gbc.gridy = 3;
              add (f_print, gbc);
              //     --     1 -- Cash
              gbc.gridx = 1;
              gbc.gridheight = 2;
              gbc.fill = GridBagConstraints.BOTH;
              gbc.weightx = .1;
              CPanel cash = new CPanel(new GridBagLayout());
              cash.setBorder(new TitledBorder(Msg.getMsg(Env.getCtx(), "Cash")));
              gbc.gridy = 0;
              add (cash, gbc);
              GridBagConstraints gbc0 = new GridBagConstraints();
              gbc0.insets = INSETS2;
              gbc0.anchor = GridBagConstraints.WEST;
              f_lcashGiven = new CLabel(Msg.getMsg(Env.getCtx(),"CashGiven"));
              cash.add (f_lcashGiven, gbc0);
              f_cashGiven = new VNumber("CashGiven", false, false, true, DisplayType.Amount,
                   Msg.translate(Env.getCtx(), "CashGiven"));
              f_cashGiven.addActionListener(this);
              f_cashGiven.setColumns(10, 25);
              cash.add (f_cashGiven, gbc0);
              f_cashGiven.setValue(Env.ZERO);
              f_lcashReturn = new CLabel(Msg.getMsg(Env.getCtx(),"CashReturn"));
              cash.add (f_lcashReturn, gbc0);
              f_cashReturn = new VNumber("CashReturn", false, true, false, DisplayType.Amount,
                   "CashReturn");
              f_cashReturn.setColumns(10, 25);
              cash.add (f_cashReturn, gbc0);
              f_cashReturn.setValue(Env.ZERO);
              f_cashPayment = createButtonAction("Payment", null);
              f_cashPayment.setActionCommand("Cash");
              gbc0.anchor = GridBagConstraints.EAST;
              gbc0.weightx = 0.1;
              cash.add (f_cashPayment, gbc0);
              //     --     1 -- Creditcard
              CPanel creditcard = new CPanel(new GridBagLayout());
              creditcard.setBorder(new TitledBorder(Msg.translate(Env.getCtx(), "CreditCardType")));
              gbc.gridy = 2;
              add (creditcard, gbc);
              GridBagConstraints gbc1 = new GridBagConstraints();
              gbc1.insets = INSETS2;
              gbc1.anchor = GridBagConstraints.WEST;
              gbc1.gridx = 0;
              gbc1.gridy = 0;
              f_lcreditCardNumber = new CLabel(Msg.translate(Env.getCtx(), "CreditCardNumber"));
              creditcard.add (f_lcreditCardNumber, gbc1);
              gbc1.gridy = 1;
              f_creditCardNumber = new CTextField(18);
              creditcard.add (f_creditCardNumber, gbc1);
              gbc1.gridx = 1;
              gbc1.gridy = 0;
              f_lcreditCardExp = new CLabel(Msg.translate(Env.getCtx(),"CreditCardExp"));
              creditcard.add (f_lcreditCardExp, gbc1);
              gbc1.gridy = 1;
              f_creditCardExp = new CTextField(5);
              creditcard.add (f_creditCardExp, gbc1);
              gbc1.gridx = 2;
              gbc1.gridy = 0;
              f_lcreditCardVV = new CLabel(Msg.translate(Env.getCtx(), "CreditCardVV"));
              creditcard.add (f_lcreditCardVV, gbc1);
              gbc1.gridy = 1;
              f_creditCardVV = new CTextField(5);
              creditcard.add (f_creditCardVV, gbc1);
              gbc1.gridx = 3;
              gbc1.gridy = 0;
              gbc1.gridheight = 2;
              f_creditPayment = createButtonAction("Payment", null);
              f_creditPayment.setActionCommand("CreditCard");
              gbc1.anchor = GridBagConstraints.EAST;
              gbc1.weightx = 0.1;
              creditcard.add (f_creditPayment, gbc1);
         }     //     init
          *      Get Panel Position
         public GridBagConstraints getGridBagConstraints()
              GridBagConstraints gbc = super.getGridBagConstraints();
              gbc.gridx = 0;
              gbc.gridy = 3;
              return gbc;
         }     //     getGridBagConstraints
          *      Dispose - Free Resources
         public void dispose()
              super.dispose();
         }     //     dispose
          *      Action Listener
          *     @param e event
         public void actionPerformed (ActionEvent e)
              String action = e.getActionCommand();
              if (action == null || action.length() == 0)
                   return;
              log.info( "PosSubCheckout - actionPerformed: " + action);
              if (e.getSource() == f_cashGiven) {
                   f_cashGiven.setValue(f_cashGiven.getValue());
                   System.out.println("f_cashGiven"+f_cashGiven.getDisplay());
              //     Register
              //     Summary
              //     Print
              if (action.equals("Cash")) {
                   BigDecimal CashGiven, GrandTotal, CashReturn;
                   System.out.println("Cash given is "+f_cashGiven.getDisplay());
                   CashGiven = (BigDecimal)f_cashGiven.getValue();
                   GrandTotal = (BigDecimal)p_posPanel.f_curLine.getOrder().getGrandTotal();
                   CashReturn = CashGiven.subtract(GrandTotal);
                   f_cashReturn.setValue(CashReturn);
              //     Cash (Payment)
              //     CreditCard (Payment)
         }     //     actionPerformed
    }     //     PosSubCheckoutThis is the code of VNumber.java :
    * The contents of this file are subject to the   Compiere License  Version 1.1
    * ("License"); You may not use this file except in compliance with the License
    * You may obtain a copy of the License at http://www.compiere.org/license.html
    * Software distributed under the License is distributed on an  "AS IS"  basis,
    * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
    * the specific language governing rights and limitations under the License.
    * The Original Code is Compiere ERP & CRM Smart Business Solution. The Initial
    * Developer of the Original Code is Jorg Janke. Portions created by Jorg Janke
    * are Copyright (C) 1999-2005 Jorg Janke.
    * All parts are Copyright (C) 1999-2005 ComPiere, Inc.  All Rights Reserved.
    * Contributor(s): ______________________________________.
    package org.compiere.grid.ed;
    import java.awt.*;
    import java.awt.event.*;
    import java.beans.*;
    import java.math.*;
    import java.text.*;
    import java.util.logging.*;
    import javax.swing.*;
    import javax.swing.text.*;
    import org.compiere.apps.*;
    import org.compiere.model.*;
    import org.compiere.swing.*;
    import org.compiere.util.*;
    *     Number Control
    *      @author      Jorg Janke
    *      @version      $Id: VNumber.java,v 1.41 2005/09/03 01:57:16 jjanke Exp $
    public final class VNumber extends JComponent
         implements VEditor, ActionListener, KeyListener, FocusListener
         /**     Number of Columns (12)          */
         public final static int SIZE = 12;
          *  IDE Bean Constructor
         public VNumber()
              this("Number", false, false, true, DisplayType.Number, "Number");
         }   //  VNumber
          *     Create right aligned Number field.
          *     no popup, if WindowNo == 0 (for IDs)
          *  @param columnName column name
          *  @param mandatory mandatory
          *  @param isReadOnly read only
          *  @param isUpdateable updateable
          *  @param displayType display type
          *  @param title title
         public VNumber(String columnName, boolean mandatory, boolean isReadOnly, boolean isUpdateable,
              int displayType, String title)
              super();
              super.setName(columnName);
              m_columnName = columnName;
              m_title = title;
              setDisplayType(displayType);
              LookAndFeel.installBorder(this, "TextField.border");
              this.setLayout(new BorderLayout());
    //          this.setPreferredSize(m_text.getPreferredSize());          //     causes r/o to be the same length
    //          int height = m_text.getPreferredSize().height;
    //          setMinimumSize(new Dimension (30,height));
              //     ***     Text     ***
              m_text.setBorder(null);
              m_text.setHorizontalAlignment(JTextField.TRAILING);
              m_text.addKeyListener(this);
              m_text.addFocusListener(this);
              //     Background
              setMandatory(mandatory);
              this.add(m_text, BorderLayout.CENTER);
              //     ***     Button     ***
              m_button.setIcon(Env.getImageIcon("Calculator10.gif"));
              m_button.setMargin(new Insets(0, 0, 0, 0));
              m_button.setFocusable(false);
              m_button.addActionListener(this);
              this.add (m_button, BorderLayout.EAST);
              //     Prefereed Size
              this.setPreferredSize(this.getPreferredSize());          //     causes r/o to be the same length
              //  Size
              setColumns(SIZE, CComboBox.FIELD_HIGHT-4);     
              //     ReadWrite
              if (isReadOnly || !isUpdateable)
                   setReadWrite(false);
              else
                   setReadWrite(true);
         }     //     VNumber
          *  Dispose
         public void dispose()
              m_text = null;
              m_button = null;
              m_mField = null;
         }   //  dispose
          *     Set Document
          *  @param doc document
         protected void setDocument(Document doc)
              m_text.setDocument(doc);
         }     //     getDocument
         private String               m_columnName;
         protected int               m_displayType;     //  Currency / UoM via Context
         private DecimalFormat     m_format;
         private String               m_title;
         private boolean               m_setting;
         private String               m_oldText;
         private String               m_initialText;
         private boolean               m_rangeSet = false;
         private Double               m_minValue;
         private Double               m_maxValue;
         private boolean               m_modified = false;
         /**  The Field                  */
         private CTextField          m_text = new CTextField(SIZE);     //     Standard
         /** The Button                  */
         private CButton              m_button = new CButton();
         private MField          m_mField = null;
         /**     Logger               */
         private static CLogger log = CLogger.getCLogger(VNumber.class);
          *      Set no of Columns
          *     @param columns columns
         public void setColumns (int columns, int height)
              m_text.setPreferredSize(null);
              m_text.setColumns(columns);
              Dimension size = m_text.getPreferredSize();
              if (height > size.height)               //     default 16
                   size.height = height;
              if (CComboBox.FIELD_HIGHT-4 > size.height)
                   size.height = VLookup.FIELD_HIGHT-4;
              this.setPreferredSize(size);          //     causes r/o to be the same length
              this.setMinimumSize(new Dimension (columns*10, size.height));
              m_button.setPreferredSize(new Dimension(size.height, size.height));
         }     //     setColumns
          *     Set Range with min & max
          *  @param minValue min value
          *  @param maxValue max value
          *     @return true, if accepted
         public boolean setRange(Double minValue, Double maxValue)
              m_rangeSet = true;
              m_minValue = minValue;
              m_maxValue = maxValue;
              return m_rangeSet;
         }     //     setRange
          *     Set Range with min & max = parse US style number w/o Gouping
          *  @param minValue min value
          *  @param maxValue max value
          *  @return true if accepted
         public boolean setRange(String minValue, String maxValue)
              if (minValue == null || maxValue == null)
                   return false;
              try
                   m_minValue = Double.valueOf(minValue);
                   m_maxValue = Double.valueOf(maxValue);
              catch (NumberFormatException nfe)
                   return false;
              m_rangeSet = true;
              return m_rangeSet;
         }     //     setRange
          *  Set and check DisplayType
          *  @param displayType display type
         public void setDisplayType (int displayType)
              m_displayType = displayType;
              if (!DisplayType.isNumeric(displayType))
                   m_displayType = DisplayType.Number;
              m_format = DisplayType.getNumberFormat(displayType);
              m_text.setDocument (new MDocNumber(displayType, m_format, m_text, m_title));
         }   //  setDisplayType
          *     Set ReadWrite
          *  @param value value
         public void setReadWrite (boolean value)
              if (m_text.isReadWrite() != value)
                   m_text.setReadWrite(value);
              if (m_button.isReadWrite() != value)
                   m_button.setReadWrite(value);
              //     Don't show button if not ReadWrite
              if (m_button.isVisible() != value)
                   m_button.setVisible(value);
         }     //     setReadWrite
          *     IsReadWrite
          *  @return true if rw
         public boolean isReadWrite()
              return m_text.isReadWrite();
         }     //     isReadWrite
          *     Set Mandatory (and back bolor)
          *  @param mandatory mandatory
         public void setMandatory (boolean mandatory)
              m_text.setMandatory(mandatory);
         }     //     setMandatory
          *     Is it mandatory
          *  @return true if mandatory
         public boolean isMandatory()
              return m_text.isMandatory();
         }     //     isMandatory
          *     Set Background
          *  @param color color
         public void setBackground(Color color)
              m_text.setBackground(color);
         }     //     setBackground
          *     Set Background
          *  @param error error
         public void setBackground (boolean error)
              m_text.setBackground(error);
         }     //     setBackground
          *  Set Foreground
          *  @param fg foreground
         public void setForeground(Color fg)
              m_text.setForeground(fg);
         }   //  setForeground
          *     Set Editor to value
          *  @param value value
         public void setValue(Object value)
              log.finest("Value=" + value);
              if (value == null)
                   m_oldText = "";
              else
                   m_oldText = m_format.format(value);
              //     only set when not updated here
              if (m_setting)
                   return;
              m_text.setText (m_oldText);
              m_initialText = m_oldText;
              m_modified = false;
         }     //     setValue
          *  Property Change Listener
          *  @param evt event
         public void propertyChange (PropertyChangeEvent evt)
              if (evt.getPropertyName().equals(org.compiere.model.MField.PROPERTY))
                   setValue(evt.getNewValue());
         }   //  propertyChange
          *     Return Editor value
          *  @return value value (big decimal or integer)
         public Object getValue()
              if (m_text == null || m_text.getText() == null || m_text.getText().length() == 0)
                   return null;
              String value = m_text.getText();
              //     return 0 if text deleted
              if (value == null || value.length() == 0)
                   if (!m_modified)
                        return null;
                   if (m_displayType == DisplayType.Integer)
                        return new Integer(0);
                   return Env.ZERO;
              if (value.equals(".") || value.equals(",") || value.equals("-"))
                   value = "0";
              try
                   Number number = m_format.parse(value);
                   value = number.toString();      //     converts it to US w/o thousands
                   BigDecimal bd = new BigDecimal(value);
                   if (m_displayType == DisplayType.Integer)
                        return new Integer(bd.intValue());
                   if (bd.signum() == 0)
                        return bd;
                   return bd.setScale(m_format.getMaximumFractionDigits(), BigDecimal.ROUND_HALF_UP);
              catch (Exception e)
                   log.log(Level.SEVERE, "Value=" + value, e);
              if (m_displayType == DisplayType.Integer)
                   return new Integer(0);
              return Env.ZERO;
         }     //     getValue
          *  Return Display Value
          *  @return value
         public String getDisplay()
              return m_text.getText();
         }   //  getDisplay
          *      Get Title
          *     @return title
         public String getTitle()
              return m_title;
         }     //     getTitle
          *      Plus - add one.
          *      Also sets Value
          *     @return new value
         public Object plus()
              Object value = getValue();
              if (value == null)
                   if (m_displayType == DisplayType.Integer)
                        value = new Integer(0);
                   else
                        value = Env.ZERO;
              //     Add
              if (value instanceof BigDecimal)
                   value = ((BigDecimal)value).add(Env.ONE);
              else
                   value = new Integer(((Integer)value).intValue() + 1);
              setValue(value);
              return value;
         }     //     plus
          *      Minus - subtract one, but not below minimum.
          *      Also sets Value
          *     @param minimum minimum
          *     @return new value
         public Object minus (int minimum)
              Object value = getValue();
              if (value == null)
                   if (m_displayType == DisplayType.Integer)
                        value = new Integer(minimum);
                   else
                        value = new BigDecimal(minimum);
                   setValue(value);
                   return value;
              //     Subtract
              if (value instanceof BigDecimal)
                   BigDecimal bd = ((BigDecimal)value).subtract(Env.ONE);
                   BigDecimal min = new BigDecimal(minimum);
                   if (bd.compareTo(min) < 0)
                        value = min;
                   else
                        value = bd;
              else
                   int i = ((Integer)value).intValue();
                   i--;
                   if (i < minimum)
                        i = minimum;
                   value = new Integer(i);
              setValue(value);
              return value;
         }     //     minus
          *     Action Listener
          *  @param e event
         public void actionPerformed (ActionEvent e)
              log.config(e.getActionCommand());
              if (ValuePreference.NAME.equals(e.getActionCommand()))
                   if (MRole.getDefault().isShowPreference())
                        ValuePreference.start (m_mField, getValue());
                   return;
              if (e.getSource() == m_button)
                   m_button.setEnabled(false);
                   String str = startCalculator(this, m_text.getText(), m_format, m_displayType, m_title);
                   m_text.setText(str);
                   m_button.setEnabled(true);
                   try
                        fireVetoableChange (m_columnName, m_oldText, getValue());
                   catch (PropertyVetoException pve)     {}
                   m_text.requestFocus();
         }     //     actionPerformed
          *     Key Listener Interface
          *  @param e event
         public void keyTyped(KeyEvent e)    {}
         public void keyPressed(KeyEvent e)  {}
          *     Key Listener.
          *          - Escape           - Restore old Text
          *          - firstChange     - signal change
          *  @param e event
         public void keyReleased(KeyEvent e)
              log.finest("Key=" + e.getKeyCode() + " - " + e.getKeyChar()
                           + " -> " + m_text.getText());
              //  ESC
              if (e.getKeyCode() == KeyEvent.VK_ESCAPE)
                   m_text.setText(m_initialText);
              m_modified = true;
              m_setting = true;
              try
                   if (e.getKeyCode() == KeyEvent.VK_ENTER)     //     10
                        fireVetoableChange (m_columnName, m_oldText, getValue());
                        fireActionPerformed();
                   else     //     indicate change
                        fireVetoableChange (m_columnName, m_oldText, null);     
              catch (PropertyVetoException pve)     {}
              m_setting = false;
         }     //     keyReleased
          *     Focus Gained
          *  @param e event
         public void focusGained (FocusEvent e)
              if (m_text != null)
                   m_text.selectAll();
         }     //     focusGained
          *     Data Binding to MTable (via GridController.vetoableChange).
          *  @param e event
         public void focusLost (FocusEvent e)
         //          log.finest(e.toString());
              //     APanel - Escape
              if (e.getOppositeComponent() instanceof AGlassPane)
                   m_text.setText(m_initialText);
                   return;
              try
                   fireVetoableChange (m_columnName, m_initialText, getValue());
                   fireActionPerformed();
              catch (PropertyVetoException pve)     {}
         }   //  focusLost
          *     Invalid Entry - Start Calculator
          *  @param jc parent
          *  @param value value
          *  @param format format
          *  @param displayType display type
          *  @param title title
          *  @return value
         public static String startCalculator(Container jc, String value,
              DecimalFormat format, int displayType, String title)
              log.config("Value=" + value);
              BigDecimal startValue = new BigDecimal(0.0);
              try
                   if (value != null && value.length() > 0)
                        Number number = format.parse(value);
                        startValue = new BigDecimal (number.toString());
              catch (ParseException pe)
                   log.info("InvalidEntry - " + pe.getMessage());
              //     Find frame
              Frame frame = Env.getFrame(jc);
              //     Actual Call
              Calculator calc = new Calculator(frame, title,
                   displayType, format, startValue);
              AEnv.showCenterWindow(frame, calc);
              BigDecimal result = calc.getNumber();
              log.config( "Result=" + result);
              calc = null;
              if (result != null)
                   return format.format(result);
              else
                   return value;          //     original value
         }     //     startCalculator
          *  Set Field/WindowNo for ValuePreference
          *  @param mField field
         public void setField (MField mField)
              m_mField = mField;
              if (m_mField != null
                   && MRole.getDefault().isShowPreference())
                   ValuePreference.addMenu (this, popupMenu);
         }   //  setField
          *      Remove Action Listner
          *      @param l Action Listener
         public void removeActionListener(ActionListener l)
              listenerList.remove(ActionListener.class, l);
         }     //     removeActionListener
          *      Add Action Listner
          *      @param l Action Listener
         public void addActionListener(ActionListener l)
              listenerList.add(ActionListener.class, l);
         }     //     addActionListener
          *      Fire Action Event to listeners
         protected void fireActionPerformed()
              int modifiers = 0;
              AWTEvent currentEvent = EventQueue.getCurrentEvent();
              if (currentEvent instanceof InputEvent)
                   modifiers = ((InputEvent)currentEvent).getModifiers();
              else if (currentEvent instanceof ActionEvent)
                   modifiers = ((ActionEvent)currentEvent).getModifiers();
              ActionEvent ae = new ActionEvent (this, ActionEvent.ACTION_PERFORMED,
                   "VNumber", EventQueue.getMostRecentEventTime(), modifiers);
              // Guaranteed to return a non-null array
              Object[] listeners = listenerList.getListenerList();
              // Process the listeners last to first, notifying those that are interested in this event
              for (int i = listeners.length-2; i>=0; i-=2)
                   if (listeners==ActionListener.class)
                        ((ActionListener)listeners[i+1]).actionPerformed(ae);
         }     //     fireActionPerformed
    }     //     VNumber

    If getValue() returns null, you need to trace the execution of the code and figure out which sequence of code is leading to the return of null. This method looks complex - a lot of if statements. If you do not have a debugger, put System.out.println statements inside the method to figure out what's going on.

  • How to get each value from a parameter passed like this '(25,23,35,1)'

    Hi
    One of the parameter passed to the function is
    FUNCTION f_main_facility(pi_flag_codes VARCHAR2) return gc_result_set AS
    pi_flag_codes will be passed a value in this way '(25,23,35,1)'
    How to get each value from the string
    like 25 first time
    23 second time
    35 third time
    1 fourth time
    I need to build a select query with each value as shown below:-
    (SELECT t2.org_id, t4.description
    from org_name t2, ref_org_name t3, code_table t4
    where t2.att_data = t4.code
    and t3.ref_code = t2.att_type
    and t2.att_type = 25 and t3.code_type = t4.code_type
    and to_date('01-JAN-10', 'DD-MON-YY') between t2.att_start_date AND t2.att_end_date) q1,
    (SELECT t2.org_id, t4.description
    from org_name t2, ref_org_name t3,code_table t4
    where t2.att_data = t4.code
    and t3.ref_code = t2.att_type
    and t2.att_type = 23 and t3.code_type = t4.code_type
    and to_date('01-JAN-10', 'DD-MON-YY') between t2.att_start_date AND t2.att_end_date) q2,
    (SELECT t2.org_id, RTRIM(xmlagg(xmlelement(e, t4.description || ';')
    ORDER BY t4.description).EXTRACT('//text()'), ';') AS DESCRIPTION
    from org_name t2, ref_org_name t3,code_table t4
    where t2.att_data = t4.code
    and t3.ref_code = t2.att_type
    and t2.att_type = 35 and t3.code_type = t4.code_type
    and to_date('01-JAN-10', 'DD-MON-YY') between t2.att_start_date AND t2.att_end_date
    group by t2.org_id) q3,
    (SELECT t2.org_id, t4.description
    from org_name t2, ref_org_name t3, code_table t4
    where t2.att_data = t4.code
    and t3.ref_code = t2.att_type
    and t2.att_type = 1 and t3.code_type = t4.code_type
    and to_date('01-JAN-10', 'DD-MON-YY') between t2.att_start_date AND t2.att_end_date) q4
    Please help me with extracting each alue from the parm '(25,23,35,1)' for the above purpose. Thank You.

    chris227 wrote:
    I would propose the usage of regexp for readibiliy purposes and only in the case if this doesnt perform well, look at solutions using substr etc.
    select
    regexp_substr( '(25,23,35,1)', '\d+', 1, 1) s1
    ,regexp_substr( '(25,23,35,1)', '\d+', 1, 2) s2
    ,regexp_substr( '(25,23,35,1)', '\d+', 1, 3) s3
    ,regexp_substr( '(25,23,35,1)', '\d+', 1, 4) s4
    from dual 
    S1     S2     S3     S4
    "25"     "23"     "35"     "1"In pl/sql you do something like l_val:= regexp_substr( '(25,23,35,1)', '\d+', 1, 1);
    If t2.att_type is type of number you will do:
    t2.att_type= to_number(regexp_substr( '(25,23,35,1)', '\d+', 1, 1))Edited by: chris227 on 01.03.2013 08:00Sir,
    I am using oracle 10g.
    In the process of getting each number from the parm '(25,23,35,1)' , I also need the position of the number
    say 25 is at 1 position.
    23 is at 2
    35 is at 3
    1 is at 4.
    the reason I need that is when I build seperate select for each value, I need to add the query number at the end of the select query.
    Please see the code I wrote for it, But the select query is having error:-
    BEGIN
    IF(pi_flag_codes IS NOT NULL) THEN
    SELECT length(V_CNT) - length(replace(V_CNT,',','')) FROM+ ----> the compiler gives an error for this select query : PLS-00428:
    *(SELECT '(25,23,35,1)' V_CNT  FROM dual);*
    DBMS_OUTPUT.PUT_LINE(V_CNT);
    -- V_CNT := 3;
    FOR L_CNT IN 0..V_CNT LOOP
    if L_CNT=0 then
    V_S_POS:=1;
    V_E_POS:=instr(pi_flag_codes, ',', 1, 1)-1;
    else
    V_S_POS:=instr(pi_flag_codes,',',1,L_CNT)+1;
    V_E_POS:=instr(pi_flag_codes, ',', 1, L_CNT+1)-V_S_POS;
    end if;
    if L_CNT=V_CNT then
    V_ID:=TO_NUMBER(substr(pi_flag_codes,V_S_POS));
    else
    V_ID:=TO_NUMBER(substr(pi_flag_codes,V_S_POS,V_E_POS));
    end if;
    VN_ATYPE := ' t2.att_type = ' || V_ID;
    rec_count := rec_count +1;
    query_no := 'Q' || rec_count;
    Pls help me with fetching each value to build the where cond of the select query along with the query number.
    Thank You.

Maybe you are looking for

  • With Windows XP I have Firefox 4 and am trying to download Firefox 6 but it rejects saying I need Windows 2000 or newer

    Tried several times to download Firefox 6 as upgrade to Firefox 4 and near end of download I get error message that I need Windows 2000 or newer. I have windows XP 2002. Cannot find error in my system.

  • Editing with Photoshop CS3 from Photoshop Elements 8

    I posted this in the PSE forum but didn't get any hits. Hopefulyy I'll be luckier here. I have just purchased Photoshop Elements 8. I do all my editing usually with Photoshop CS3. I use Elements mainly for the organizer. When I choose Edit with Photo

  • [Solved]Laptop lid question

    Hello, I am really happy with arch on my laptop. Suspend2Disk works (although the light on my wlan-button stays off after wake up, but since the network itself works I am fine with that), suspend2ram works to.. and those two are crucial. Even the Sle

  • Not able to select physicalschema directory for file data server in ODI 11g

    Hi, I am a beginner to ODI tech and stuck up with an error while doing a tutorial (mentioned in this link - http://st-curriculum.oracle.com/obe/fmw/odi/odi_11g/ODIproject_ff-to-ff/ODIproject_flatfile-to-flatfile.htm). While creating a physical schema

  • BB Frustration

    Man, I am a newbie and so frustrated with the Tour...I use an apple computer and there fore apparently cannot use the app world with safari or firefox browser.  Is this right?  How does Rimm expect to compete with the Iphone if their device is so har