How to add table actions to an Advanced Table programmatically

We have code in my CO which builds an advanced table dynamically and associates it with a VO. The table comes out looking good - the correct columns and data are displayed.
I now want to add Table Actions for that particular dynamically created table.
The code below builds the buttons correctly and they are built/rendered just fine.
After adding this code to build the FlowLayout bean, add the buttons and associate the it to the TableActions of the advanced table bean, none of the buttons on the page work anymore. Each time I click any button (even if it's a page level button like 'Save' or 'Cancel'), I get the following error:
+## Detail 0 ##+
java.lang.NullPointerException
+     at java.util.Hashtable.get(Hashtable.java:336)+
I have added debug statements in by CO, but it is never even getting into the ProcessFormRequest
Below is the code we are using. Can anyone suggest a way to have this flow layout created dynamically like this and not break all button functionality on the page?
//Create the advanced table
OAAdvancedTableBean tableBeanP1 = (OAAdvancedTableBean)createWebBean(pageContext, ADVANCED_TABLE_BEAN, null,"Proc1Tab");
tableBeanP1.setViewUsageName("P100DetailsVO1");
tableBeanP1.setNumberOfRowsDisplayed(10);
//Create a new flow layout to be used as the table actions
OAFlowLayoutBean tableActionBean = (OAFlowLayoutBean)createWebBean(pageContext, FLOW_LAYOUT_BEAN, null, "P1ButtonRegion");
//Create the "Add Control Group" button for this table:
OAButtonBean addButtonBean = (OAButtonBean)createWebBean(pageContext, BUTTON_BEAN, null, "P1AddCtrlGroup");
FireAction FireActionAddGroup = new FireAction();
FireActionAddGroup.setEvent("AddCtrlGroup");
Parameter param = new Parameter();
param.setKey("ProcedureIndex");
param.setValue("1");
Parameter[] params = {param};
FireActionAddGroup.setParameters(params);
addButtonBean.setPrimaryClientAction(FireActionAddGroup);
addButtonBean.setText("Add Control Group");
tableActionBean.addIndexedChild(addButtonBean);
//Add the table actions bean to the table:
tableBeanP1.setTableActions(tableActionBean);

Hello Ashley,
you are already close to the solution. In BADI QISR1 you simply fill the
table SPECIAL_DATA e.g.like
  fieldindex = 1
  fieldname = 'FIELD1'
  fieldvalue = 'Value1'
  fieldindex = <n>
  fieldname = 'FIELD1'
  fieldvalue = 'VALUE<n>'
Then on the Adobe form layout (Adobe Designer), you have to use the table control XFO from the standard library. Here you have to bind then the corresponding column to FIELD1.
Best regards,
Simon

Similar Messages

  • How to add field value to the standard table

    Hi,
    How to add field value to the standard table?
    for example:
    when we go to TCODE SE16-> VBAK table -> on the selection screen if we press F4 against VBTYP we get all the available values for that field. How to add a new document Category value to this field so that it shows up in F4 help for that field.

    Hi Asif,
    I don't think it is possible and feasible for adding new field value to the field VBTYP because it is not possible through SPRO.
    If u see the domain of this field VBTYP we have fixed values provided by SAP. There is no value table for this. If u have value table then it will be updated through SPRO. But still if u really want to add some value u can do that by getting access key and add the value in the fixed values of the domain. But of no use other than simply displaying in F4. Because for what ever value u created here there will be no documents in VBAK or any table using this domain.
    Hope this is clear for u.
    Thanks,
    Vinod.

  • How to add new field into dynamic internal table

    Hello Expert.
    how to add new field into dynamic internal table.
    PARAMETERS: P_TABLE(30).    "table name
    DATA: I_TAB TYPE REF TO DATA.
    FIELD-SYMBOLS: <TAB> TYPE standard TABLE.
    *Create dynamic FS
    create DATA I_TAB TYPE TABLE OF (p_table).
      ASSIGN I_TAB->* TO <TAB>.
    SELECT * FROM (p_table) INTO TABLE <TAB>.
       here i want to add one more field into <TAB> at LAST position and my 
       Field name  =  field_stype     and
       Field type    =  'LVC_T_STYL'
    could you please helpme out .

    Hi,
    Please find the code below.You can add the field acc to your requirement.
    Creating Dynamic internal table
    TYPE-POOLS: slis.
    FIELD-SYMBOLS: <t_dyntable> TYPE STANDARD TABLE,  u201C Dynamic internal table name
                   <fs_dyntable>,                     u201C Field symbol to create work area
                   <fs_fldval> type any.              u201C Field symbol to assign values 
    PARAMETERS: p_cols(5) TYPE c.                     u201C Input number of columns
    DATA:   t_newtable TYPE REF TO data,
            t_newline  TYPE REF TO data,
            t_fldcat   TYPE slis_t_fldcat_alv,
            t_fldcat   TYPE lvc_t_fcat,
            wa_it_fldcat TYPE lvc_s_fcat,
            wa_colno(2) TYPE n,
            wa_flname(5) TYPE c. 
    Create fields .
      DO p_cols TIMES.
        CLEAR wa_it_fldcat.
        move sy-index to wa_colno.
        concatenate 'COL'
                    wa_colno
               into wa_flname.
        wa_it_fldcat-fieldname = wa_flname.
        wa_it_fldcat-datatype = 'CHAR'.
        wa_it_fldcat-intlen = 10.
        APPEND wa_it_fldcat TO t_fldcat.
      ENDDO. 
    Create dynamic internal table and assign to FS
      CALL METHOD cl_alv_table_create=>create_dynamic_table
        EXPORTING
          it_fieldcatalog = t_fldcat
        IMPORTING
          ep_table        = t_newtable. 
      ASSIGN t_newtable->* TO <t_dyntable>. 
    Create dynamic work area and assign to FS
      CREATE DATA t_newline LIKE LINE OF <t_dyntable>.
      ASSIGN t_newline->* TO <fs_dyntable>.
    Populating Dynamic internal table 
      DATA: fieldname(20) TYPE c.
      DATA: fieldvalue(10) TYPE c.
      DATA: index(3) TYPE c. 
      DO p_cols TIMES. 
        index = sy-index.
        MOVE sy-index TO wa_colno.
        CONCATENATE 'COL'
                    wa_colno
               INTO wa_flname. 
    Set up fieldvalue
        CONCATENATE 'VALUE' index INTO
                    fieldvalue.
        CONDENSE    fieldvalue NO-GAPS. 
        ASSIGN COMPONENT  wa_flname
            OF STRUCTURE <fs_dyntable> TO <fs_fldval>.
        <fs_fldval> =  fieldvalue. 
      ENDDO. 
    Append to the dynamic internal table
      APPEND <fs_dyntable> TO <t_dyntable>.
    Displaying dynamic internal table using Grid. 
    DATA: wa_cat LIKE LINE OF fs_fldcat. 
      DO p_cols TIMES.
        CLEAR wa_cat.
        MOVE sy-index TO wa_colno.
        CONCATENATE 'COL'
                    wa_colno
               INTO wa_flname. 
        wa_cat-fieldname = wa_flname.
        wa_cat-seltext_s = wa_flname.
        wa_cat-outputlen = '10'.
        APPEND wa_cat TO fs_fldcat.
      ENDDO. 
    Call ABAP List Viewer (ALV)
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          it_fieldcat = fs_fldcat
        TABLES
          t_outtab    = <t_dyntable>.

  • How to add a file to an existing package programmatically in Acrobat 8?

    Hello
    Is it possible to add a file to an existing package programmatically in Acrobat 8? (embed a pdf file in a pdf package programmatically); If so, how should I do it?
    Thanks in advance,

    Finally, I found out how to add a file to an existing package programmatically by using JavaScript (function: app.execMenuItem("AddFileAttachment")). Thanks for your help Ironsenth. However, I need to specify the file to attach programmatically and I can't figure out how to do it.
    Could you let me know where I can find this information (what document to read)? Is there any parameters for the 'AddFileAttachment' method?
    Thanks in advance,

  • Master advance table with two detail advanced tables

    Hi All,
    I have this in mind..please let me know if that is possible.
    I want to have two detail advanced tables within a master advance table.
    The two detail advance tables will be wrapped in a subtab layout.
    My questions are:
    Can a master table have two details tables?
    Can a advance table have two inner advance tables?
    Your help or ideas would be valuable to me.
    Thank you,
    Arun

    Hi OAF Gurus
    I just want to know whether this is possible or not.
    I have created two view links and three view objects
    Table in Table in Table
    Table1--> Table2 --> Table3
    One problem i am facing when i click on Show link of Table1,it displays details of Table2 and when i click Show link of Table2,it displays details of Table3.
    but when i click on Hide of Table1, it says
    oracle.jbo.NoDefException: JBO-25002: Definition <Table3 View Object> of type Attribute not found
    Could you please anybody throw some pointers on this?
    Thanks
    Hitesh

  • How to add or remove data from one table to another in � jsp page

    I have two tables on my jsp page.
    On the fist table feed by a data base, u have in the first column radiobutton
    second colum data
    third columm data
    on the second table feed by the data of the first table, u have in the first
    columm checkbox
    second colum data
    this column data
    u have two link, one link to add and another to remove
    1 when u click one of the radiobutton of the fist table following by the click of the link add, u add the line into the second table.
    2 when u click on one or two checkboxes of the second table following by a click on the link remove, u remove the line or lines checked.
    Did somebody could send to me en example of code and give to me solution on way to make it. thank u.

    rather than sending you the whole code, i would like
    to see your code first, how far you implemented the
    code ? and where are you getting problem, asking the
    code like this is not a professional.
    All the Best !******************************************************************************************************************************
    that's what i have implements. U have a bean witch picked data in that the data base, and catch properties .
    i describe to u how work the page.
    when u chose or selected TypeDetoyer, it present to u the first table with all the toyer contains in the typeDeToyer, and presents the second table empty.
    Secondly, u click a radio button to select � toyer of typeDeToyer and by clicking to the link ada, u feed the second table with the toyer selected.
    the seconde table is fill with a checkbox.
    inverse, when u check a check box or many of the second table and clicking on the link remove, u remove the selected lines.
    the aim of all of this is to save in the data base
    the second table, after saving the page is redirect to the modifying form.
    I am waiting for ur answer.
    Coul u send to me how u implements the part beetween the two tables
    Thank s
    <%@ page language="java" import="java.util.*"%>
    <jsp:useBean id="nsimalenBean" scope="session" class="nsimalen.NsimalenBean" />
    <jsp:useBean id="toyerBean" scope="session" class="nsimalen.ToyerBean" />
    <jsp:useBean id="vectorLstTasks" scope="session" class="java.util.Vector" />
    <jsp:useBean id="hashtableToyerSelected" scope="session" class="java.util.Hashtable"/>
    <jsp:useBean id="hashtableRegimeFiscalToyers" scope="session" class="java.util.Hashtable"/>
    <%
    //nsimalen.NsimalenBean nsimalenBean=nsimalenBean();
    ///vectorLstTasks.removeElementAt(i);
    String cVide="";
    String typeOperation;
    String monCodeNsimalen;
    //String monCodeNsimalen=request.getParameter("txtCreateNsimalenFormCode");
    String monNomNsimalen;
    String maVilleNsimalen;
    String monPaysNsimalen;
    String monTypeDetoyerSelected;
    String codeToyerSelected;
    String codeToyerSelectedToAdd;
    String codeToyerSelectedToRemove;
    String currentlibelleTypeDetoyer=cVide;
    String typeAction;
    /// d�finition de variable dont les valeurs seront stock�es dans l'objet de session
    if(request.getParameter("txtCreateNsimalenFormCode")!=null)
    monCodeNsimalen=request.getParameter("txtCreateNsimalenFormCode");
    else
    monCodeNsimalen=cVide;
    if(request.getParameter("txtCreateNsimalenFormNom")!=null)
    monNomNsimalen=request.getParameter("txtCreateNsimalenFormNom");
    else
    monNomNsimalen=cVide;
    if(request.getParameter("txtCreateNsimalenFormVille")!=null)
    maVilleNsimalen=request.getParameter("txtCreateNsimalenFormVille");
    else
    maVilleNsimalen=cVide;
    if(request.getParameter("selCreateNsimalenFormPays")!=null)
    monPaysNsimalen=request.getParameter("selCreateNsimalenFormPays");
    else
    monPaysNsimalen=cVide;
    if(request.getParameter("optCreateNsimalenFormTypeToyer")!=null)
    {monTypeDetoyerSelected=request.getParameter("optCreateNsimalenFormTypeToyer");
    currentlibelleTypeDetoyer=toyerBean.getLibelleTypedeToyer(monTypeDetoyerSelected);
    else
    monTypeDetoyerSelected=cVide;
    if(request.getParameter("radioCreateNsimalenFormCodeToyers")!=null)
    codeToyerSelectedToAdd=request.getParameter("radioCreateNsimalenFormCodeToyers");
    else
    codeToyerSelectedToAdd=cVide;
    if(request.getParameter("radioCreateNsimalenFormCodeToyersRemove")!=null)
    codeToyerSelectedToRemove=request.getParameter("radioCreateNsimalenFormCodeToyersRemove");
    else
    codeToyerSelectedToRemove=cVide;
    if(request.getParameter("typeOperation")!=null)
    typeOperation=request.getParameter("typeOperation");
    else
    typeOperation=cVide;
    if(request.getParameter("typeAction")!=null)
    typeAction=request.getParameter("typeAction");
    else
    typeAction=cVide;
    // Stockage des valeurs dans l'objet
    nsimalenBean.setCodePays(monPaysNsimalen);
    nsimalenBean.setNomNsimalen(monNomNsimalen);
    nsimalenBean.setVilleNsimalen(maVilleNsimalen);
    nsimalenBean.setCodeNsimalen(monCodeNsimalen);
    nsimalenBean.setDateCreation("12/12/2001");
    // if typeOperation=Invalidation
    // nsimalenBean.setDatad'invalidation
    if(typeAction.equals("Save"))
    nsimalenBean.validationCreation();
    Vector validationErrors= nsimalenBean.getChampVide();
    %>
    <body>
    <%
    if (validationErrors!=null && validationErrors.size()!=0 )
    for (int i=0; i<validationErrors.size();i++)
    %>
    <BR> Champs Invalides : <%=(String)validationErrors.elementAt(i)%>; <BR>
    <%
    else
    if (hashtableToyerSelected!=null && hashtableToyerSelected.size()<=10)
    nsimalenBean.insertRowNsimalen();
    nsimalenBean.insertRowsToyersAssocieesNsimalen(hashtableToyerSelected);
    if (hashtableToyerSelected!=null && hashtableToyerSelected.size()>=0)
    %>
    <BR> num Toyers max 10 <BR>
    <%
    if (hashtableToyerSelected!=null && hashtableToyerSelected.size()==0)
    %>
    <BR> vous devez au moins selectionner une toyer pour un nsimalen <BR>
    <%
    %>
    <form method="post" name="CreateNsimalenForm" action="CreateNsimalen.jsp">
              <table cool width="681" height="424" usegridx usegridy showgridx showgridy gridx="16" gridy="16" border="0" cellpadding="0" cellspacing="0">
                   <tr height="16">
                        <td width="16" height="423" rowspan="11"></td>
                        <td width="288" height="16" colspan="3"></td>
                        <td width="376" height="144" colspan="3" rowspan="5"></td>
                        <td width="1" height="16"><spacer type="block" width="1" height="16"></td>
                   </tr>
                   <tr height="32">
                        <td width="100" height="32" valign="top" align="left" xpos="16"><label><font size="2" face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular"><b>Code :</b></font></label></td>
                        <td width="188" height="32" colspan="2" valign="top" align="left" xpos="116"><input type="text" name="txtCreateNsimalenFormCode" size="24" value='<%=nsimalenBean.getCodeNsimalen()%>'></td>
                        <td width="1" height="32"><spacer type="block" width="1" height="32"></td>
                   </tr>
                   <tr height="32">
                        <td width="100" height="32" valign="top" align="left" xpos="16"><label><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Nom :</b></font></label></td>
                        <td width="188" height="32" colspan="2" valign="top" align="left" xpos="116"><input type="text" name="txtCreateNsimalenFormNom" size="24" value='<%=nsimalenBean.getNomNsimalen()%>'></td>
                        <td width="1" height="32"><spacer type="block" width="1" height="32"></td>
                   </tr>
    <input type="hidden" name="typeOperation" size="24" >
    <input type="hidden" name="typeAction" size="24" >
                   <tr height="32">
                        <td width="100" height="32" valign="top" align="left" xpos="16"><label><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Ville :</b></font></label></td>
                        <td width="188" height="32" colspan="2" valign="top" align="left" xpos="116"><input type="text" name="txtCreateNsimalenFormVille" size="24" value='<%=nsimalenBean.getNomVille()%>'></td>
                        <td width="1" height="32"><spacer type="block" width="1" height="32"></td>
                   </tr>
                   <tr height="32">
                        <td width="100" height="32" valign="top" align="left" xpos="16"><label><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Pays : </b></font></label></td>
                        <td width="188" height="32" colspan="2" valign="top" align="left" xpos="116"><select name="selCreateNsimalenFormPays" size="1">
    <option value="" ><b><font size="2" name="optCreateNsimalenFormPays"></font></b></option>
    <%
    //String cVide="";
    Vector nsimalenLst = new Vector();
    //strNomNsimalen=request.getParameter("txtSearchFormNom").trim();
    nsimalenLst = nsimalenBean.getAllPays();
    // Pour savoir la taille du vecteur
    if(nsimalenLst!=null && nsimalenLst.size()!=0)
    for(int i=0;i< nsimalenLst.size();i++)
    Hashtable myrecord = (Hashtable)nsimalenLst.elementAt(i);
    String monCodePays ="";
    String monLibelle="";
    monCodePays =(String)myrecord.get("NNAM_CODE");
    monLibelle =(String)myrecord.get("NNAM_LIBELLE");
    System.out.println("mon code pays= "+monCodePays+"i="+i+ " mon Libelle Pays="+monLibelle+"nsimalenLst.size() ="+nsimalenLst.size());
    %>
    <option value='<%=monCodePays%>' <%if(monCodePays.equals(monPaysNsimalen))
    out.print("selected");%> ><b><font name="optCreateNsimalenFormPays" size="2"><%=monCodePays%></font></b></option>
                             <%}
    %>
    </select></td>
                        <td width="1" height="32"><spacer type="block" width="1" height="32"></td>
                   </tr>
                   <tr height="16">
                        <td width="664" height="16" colspan="6" valign="top" align="left" xpos="16">
                             <hr width="644" size="2">
                        </td>
                        <td width="1" height="16"><spacer type="block" width="1" height="16"></td>
                   </tr>
                   <tr height="32">
                        <td width="100" height="32" valign="top" align="left" xpos="16"><label><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Type de toyer :</b></font></label></td>
                        <td width="32" height="32"></td>
                        <td width="156" height="32" valign="top" align="left" xpos="148"><select name="optCreateNsimalenFormTypeToyer" size="1" onChange="javascript:document.CreateNsimalenForm.submit();">
    <option value="" ><b><font size="2" face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular"></font></b></option>
    <%
    //String cVide="";
    Vector toyerLst = new Vector();
    //strNomNsimalen=request.getParameter("txtSearchFormNom").trim();
    toyerLst = toyerBean.getAllTypeDeToyers();
    // Pour savoir la taille du vecteur
    if(toyerLst!=null && toyerLst.size()!=0)
    hashtableRegimeFiscalToyers = new Hashtable();
    for(int i=0;i< toyerLst.size();i++)
    Hashtable myrecord = (Hashtable)toyerLst.elementAt(i);
    String monTypeToyer ="";
    String monLibelleToyer="";
    monTypeToyer =(String)myrecord.get("TTOY_CODE");
    monLibelleToyer =(String)myrecord.get("TTOY_LIBELLE");
    // System.out.println("mon code pays= "+monTypeToyer+"i="+i+ " mon Libelle Pays="+monLibelleToyer+"nsimalenLst.size() ="+toyerLst.size());
    %>
    <option value=<%=monTypeToyer%> <%if(monTypeToyer.equals(monTypeDetoyerSelected))
    out.print("selected");%>><b><font size="2" face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular"><%=monLibelleToyer%></font></b></option>
                             <%}
    }%>
    </select></td>
                        <td width="376" height="32" colspan="3"></td>
                        <td width="1" height="32"><spacer type="block" width="1" height="32"></td>
                   </tr>
                   <tr height="128">
                        <td width="288" height="128" colspan="3" valign="top" align="left" xpos="16">
                             <%if (!monTypeDetoyerSelected.equals(cVide))
    //String cVide="";
    Vector maTypeToyerDetailList = new Vector();
    //strNomNsimalen=request.getParameter("txtSearchFormNom").trim();
    maTypeToyerDetailList = toyerBean.getToyersDetailsSelected(monTypeDetoyerSelected);
    // Pour savoir la taille du vecteur
    if(maTypeToyerDetailList!=null && maTypeToyerDetailList.size()!=0)
    %>
    <table border="1" cellpadding="0" cellspacing="0" width="224" height="75">
              <tr height="19">
                                       <td height="19" width="20"></td>
                                       <td height="19" width="46"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="3"><b>Toyer</b></font></td>
                                       <td height="19" width="140"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="3"><b>Libell�</b></font></td>
                                  </tr>
    <%
    {  hashtableRegimeFiscalToyers= new Hashtable();
    System.out.println( " je passe dans le premier for");
    for(int i=0;i< maTypeToyerDetailList.size();i++)
    Hashtable myRecord = (Hashtable)maTypeToyerDetailList.elementAt(i);
    System.out.println( " je passe dans le premier for 1");
    String myCodeToyer ="";
    String myLibelleToyer="";
    String myTypeDeToyerCode="";
    myCodeToyer =(String)myRecord.get("TOY_CODE");
    myLibelleToyer =(String)myRecord.get("TOY_LIBELLE");
    // myTypeDeToyerCode=(String)myRecord.get("TTOY_CODE");
    System.out.println( " je passe dans le premier for 2");
    Hashtable hashToyerCaracteristique = new Hashtable();
    hashToyerCaracteristique.put("TOY_LIBELLE",myLibelleToyer);
    hashToyerCaracteristique.put("TTOY_CODE",monTypeDetoyerSelected);
    hashToyerCaracteristique.put("TTOY_LIBELLE",currentlibelleTypeDetoyer);
    hashtableRegimeFiscalToyers.put(myCodeToyer,hashToyerCaracteristique);
    System.out.println( " je passe dans le premier for 3");
    %>
                                  <tr height="19">
                                       <td height="19" width="20" align="center" valign="middle"><input type="radio" value='<%=myCodeToyer%>' name="radioCreateNsimalenFormCodeToyers"></td>
                                       <td height="19" width="46"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b><%=myCodeToyer%></b></font></td>
                                       <td width="140" height="19"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b><%=myLibelleToyer%></b></font></td>
                                  </tr>
    <%
    %>
    <%}%>
    </table>
                        </td>
    <% System.out.println( " je passe dans le premier for 4_1");
    if (hashtableToyerSelected==null)
    hashtableToyerSelected = new Hashtable();
    System.out.println( " je passe dans le premier for 4_2");
    if(hashtableToyerSelected!=null)
    System.out.println( " je passe dans le premier for 4_3");
    %>
    <td width="376" height="128" colspan="3" valign="top" align="left" xpos="304">
                             <table border="1" cellpadding="0" cellspacing="0" width="355" height="117">
                                  <tr height="38">
                                       <td height="38" width="32"></td>
                                       <td width="47" height="38"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="3"><b>Code</b></font></td>
                                       <td height="38" width="112"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="3"><b>Type de toyer</b></font></td>
                                       <td height="38" width="152"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="3"><b>valeur par d�faut</b></font></td>
                                  </tr>
    <%
    System.out.println( " je passe dans le premier for 3");
    if(!codeToyerSelectedToAdd.equals(cVide) && typeOperation.equals("add"))
    System.out.println( " je passe dans le premier for 3_a");
    Hashtable hashToyerCaracteristique = (Hashtable)hashtableRegimeFiscalToyers.get(codeToyerSelectedToAdd);
    hashtableToyerSelected.put(codeToyerSelectedToAdd,hashToyerCaracteristique);
    System.out.println( " je passe dans le premier for 3_a_fin");
    if(!codeToyerSelectedToRemove.equals(cVide) && typeOperation.equals("remove"))
    System.out.println( " je passe dans le premier for 3_a");
    System.out.println( "remove ");
    System.out.println(codeToyerSelectedToRemove);
    hashtableToyerSelected.remove(codeToyerSelectedToRemove);
    if (hashtableToyerSelected.size()!=0)
    for( Enumeration e=hashtableToyerSelected.keys();e.hasMoreElements();)
    System.out.println("je rentre dans la boucle");
    String codeToyer =(String)e.nextElement();
    Hashtable hashToyerCaracteristique = (Hashtable)hashtableToyerSelected.get(codeToyer);
    String libelleToyer =(String)hashToyerCaracteristique.get("TOY_LIBELLE");
    String libelleTypeToyer =(String)hashToyerCaracteristique.get("TTOY_LIBELLE");
    %>
    <tr height="19">
                                       <td height="19" width="32" align="center" valign="middle"><input type="checkbox" value="<%=codeToyer%>" name="radioCreateNsimalenFormCodeToyersRemove"></td>
                                       <td width="47" height="19"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b><%=codeToyer %></b></font></td>
                                       <td height="19" width="112"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b><%=libelleTypeToyer %></b></font></td>
                                       <td height="19" width="152"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b><%=libelleToyer %></b></font></td>
    </tr>
    <%
    /* if (!codeToyerSelected.equals(cVide) && hashtableToyerSelected==null)
    hashtableToyerSelected = new Hashtable();
    if(hashtableToyerSelected!=null)
    //insertion du code HTml pour afficher l'entete du tableau
    if(operationType.equals("ajout"))
    Hahstable toyersdetails = getToyersDetail(IdToyerSelected);
    hashtableToyerSelected.put( IdToyerSelected, toyersdetails);
    if(operationType.equals("remove"))
    hashtableToyerSelected.remove(IdToyerSelected);
    // avant d'afficher l'entete verifier qu'il ya des elements dans hashtableToyerSelected (
    // hashtableToyerSelected.size!=0
    //Affichage de la hashtable
    for( Enumeration e=hashtableToyerSelected.keys();e.hasMoreElements;)
    String IdToyers =(String)e.nextElement();
    Hashtable ToyersDetails = (Hashtable) hashtableToyerSelected.get(IdToyers);
    string defaultValue = (String)ToyersDetails.get(defaultValue);
    // on fait la mise en page apres avoir recuperer tous les caracteristiques
    %>
                   <!--     <td width="376" height="128" colspan="3" valign="top" align="left" xpos="304">
                             <table border="1" cellpadding="0" cellspacing="0" width="355" height="117">
                                  <tr height="38">
                                       <td height="38" width="32"></td>
                                       <td width="47" height="38"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="3"><b>Code</b></font></td>
                                       <td height="38" width="112"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="3"><b>Type de toyer</b></font></td>
                                       <td height="38" width="152"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="3"><b>valeur par d&eacute;faut</b></font></td>
                                  </tr>
                                  <tr height="19">
                                       <td height="19" width="32" align="center" valign="middle"><input type="checkbox" value="checkboxValue" name="checkboxName"></td>
                                       <td width="47" height="19"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>J</b></font></td>
                                       <td height="19" width="112"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Sp&eacute;cifique</b></font></td>
                                       <td height="19" width="152"><b><font size="3" face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2">Nuit</font></b></td>
                                  </tr>
                                  <tr height="19">
                                       <td width="32" align="center" valign="middle" height="19"><input type="checkbox" value="checkboxValue" name="checkboxName"></td>
                                       <td width="47" height="19"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>K</b></font></td>
                                       <td height="19" width="112"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Quantit&eacute;</b></font></td>
                                       <td height="19" width="152"><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Kilo</b></font></td>
                                  </tr> -->
                             </table>
                        </td>
                        <td width="1" height="128"><spacer type="block" width="1" height="128"></td>
                   </tr>
                   <tr height="51">
                        <td width="100" height="51" valign="top" align="left" xpos="16"><label><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Add</b></font></label></td>
                        <td width="188" height="51" colspan="2"></td>
                        <td width="224" height="51" valign="top" align="left" xpos="304"><label><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Remove</b></font></label></td>
                        <td width="152" height="51" colspan="2"></td>
                        <td width="1" height="51"><spacer type="block" width="1" height="51"></td>
                   </tr>
                   <tr height="13">
                        <td width="664" height="13" colspan="6" valign="top" align="left" xpos="16">
                             <hr width="644" size="2">
                        </td>
                        <td width="1" height="13"><spacer type="block" width="1" height="13"></td>
                   </tr>
                   <tr height="39">
                        <td width="512" height="39" colspan="4"></td>
                        <td width="80" height="39" valign="top" align="left" xpos="528"><label><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Save</b></font></label></td>
                        <td width="72" height="39" valign="top" align="left" xpos="608"><label><font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" size="2"><b>Fermer</b></font></label></td>
                        <td width="1" height="39"><spacer type="block" width="1" height="39"></td>
                   </tr>
                   <tr height="1" cntrlrow>
                        <td width="16" height="1"><spacer type="block" width="16" height="1"></td>
                        <td width="100" height="1"><spacer type="block" width="100" height="1"></td>
                        <td width="32" height="1"><spacer type="block" width="32" height="1"></td>
                        <td width="156" height="1"><spacer type="block" width="156" height="1"></td>
                        <td width="224" height="1"><spacer type="block" width="224" height="1"></td>
                        <td width="80" height="1"><spacer type="block" width="80" height="1"></td>
                        <td width="72" height="1"><spacer type="block" width="72" height="1"></td>
                        <td width="1" height="1"></td>
                   </tr>
              </table>
              <p></p>
    </form>
    </body>
    </html>

  • Need to add Run time Validation in Advanced table column

    Hi Friends,
    I've an requirement to add the validation in Advanced table.
    issue is, In eAM Work Order, currently we have ability to add Operation Seq Number as 0, but we need to add one validation to avoid 0 value.
    Oracle gave us the patch but we cannot apply the patch which is bring up the eAM version to higher level.
    decided to handle it in controller and made changes to the handleOpSummaryEvent event.
    Below is my code.
    if("handleOpSummaryEvent".equals(s))
    OAApplicationModule oaapplicationmodule = oapagecontext.getApplicationModule(oawebbean);
    String wipEntityID = ((Number)oapagecontext.getTransactionValue("WipEntityId")).toString();
    oapagecontext.writeDiagnostics(this, (new StringBuilder()).append("Inside wip entity Id: ").append(wipEntityID).toString(), 2);
    String opSeqTrans = (String)oapagecontext.getTransactionValue("SelectedOpSeq");
    String op = oapagecontext.getParameter("OpSeqSummary");
    oapagecontext.writeDiagnostics(this, (new StringBuilder()).append("Inside op : ").append(op).toString(), 2);
    oapagecontext.writeDiagnostics(this, (new StringBuilder()).append("Inside operation Seq Value: ").append(opSeqTrans).toString(), 2);
    ViewObject vo = oaapplicationmodule.findViewObject("OperationSummaryVO");
    if (!vo.equals(null))
    oapagecontext.writeDiagnostics(this, "Inside vo not equals to null", 2);
    vo.setWhereClauseParam(0,wipEntityID);
    vo.executeQuery();
    int fetchedRowCount = vo.getRowCount();
    oapagecontext.writeDiagnostics(this, (new StringBuilder()).append("Inside fetched row count : ").append(fetchedRowCount).toString(), 2);
    if(fetchedRowCount > 0)
    RowSetIterator iter = vo.findRowSetIterator("opIter");
    if(iter == null)
    iter = vo.createRowSetIterator("opIter");
    iter.setRangeStart(0);
    iter.setRangeSize(fetchedRowCount);
    Row row = null;
    for(int i = 0; i < fetchedRowCount; i++)
    OperationSummaryVORowImpl operationsummaryvorowimpl = (OperationSummaryVORowImpl)iter.getRowAtRangeIndex(i);
    Number opSeq = operationsummaryvorowimpl.getOperationSeqNum();
    oapagecontext.writeDiagnostics(this, (new StringBuilder()).append("Inside operation Seq Value 2: ").append(opSeq.intValue()).toString(), 2);
    float f = 0.0F;
    if(opSeq != null)
    f = opSeq.floatValue();
    if(f <= 0.0F)
    //throw new OAException("Enter Valid Operation Sequence Number. 0 is Invalid Operation Sequence",OAException.ERROR);
    oapagecontext.writeDiagnostics(this, "Inside opseq equals 0", 2);
    iter.closeRowSetIterator();
    String s2 = oapagecontext.getParameter("evtSrcRowRef");
    Serializable aserializable[] = {s2, "Summary"};
    oaapplicationmodule.invokeMethod("handleOpEvent", aserializable);
    oapagecontext.writeDiagnostics(this, (new StringBuilder()).append("Inside s2 : ").append(s2).toString(), 2);
    Issue is, when ever i create new line and enter any value at operation seq, validation fires and new line is deleted.
    Please let me know how i can fix this issue.
    Thanks
    Aswath

    Hi Friends,
    I solved it by myself.
    if("handleOpSummaryEvent".equals(s))
    OAApplicationModule oaapplicationmodule = pageContext.getApplicationModule(webBean);
    String s2 = pageContext.getParameter("evtSrcRowRef");
    OperationSummaryVORowImpl rowimpl = (OperationSummaryVORowImpl)oaapplicationmodule.findRowByRef(s2);
    Number opSeq = ((OperationSummaryVORowImpl)(rowimpl)).getOperationSeqNum();
    pageContext.writeDiagnostics(this, (new StringBuilder()).append("Inside row operation sequence: ").append(opSeq.intValue()).toString(), 2);
    if (opSeq.intValue() == 0)
    throw new OAException("Enter Valid Operation Sequence Number. 0 is Invalid Operation Sequence",OAException.ERROR);
    Serializable aserializable[] = {s2, "Summary"};
    oaapplicationmodule.invokeMethod("handleOpEvent", aserializable);
    Thanks
    Aswath

  • How to add the action enter  to the textfield in a jdialog?

    I did a login class using a applet it is working very well...but now..i would like to add the action to the textfield when the user press a enter.
    I would like that after that he or she has pressed a enter in the textfield were done the corresponding action, could some body help me please?
    This is my code:
         public void init() {
    AppletContext context;
              URL exitoUrl, fallaUrl;
         try {
         context = getAppletContext();
         exitoUrl = new URL("http://111.23.56.12/page1.html");
         fallaUrl = new URL("http://111.23.56.12/passwordIncorrecto.html");
                   JPasswordField pf = new JPasswordField();
                   Object[] message = new Object[] {"Intr. the password", pf};
                   Object[] options = new String[] {"Intro", "Cancel"};
                   JOptionPane op = new JOptionPane(message, JOptionPane.PLAIN_MESSAGE, JOptionPane.OK_CANCEL_OPTION, null, options);
                   JDialog dialog = op.createDialog(null, "Login");
                   dialog.show();
                   String password = new String("success");
                   String tmp = new String(pf.getPassword());
                   if ( password.equals(tmp) ) {
                        System.out.println("correct password");
         context.showDocument(exitoUrl);
         else {
                        System.out.println("incorrecto password ");
         context.showDocument(fallaUrl);
              } catch(Exception e) {
                   System.out.println("Error exception");
    Thanks in advance;
    Mary

    Hi,
    it is easy: create an entity object for every table and one view object where you select your both entity objects and join them in your select statement.
    Your desired 'confirm' functionality could be achieved with helpp of view object transient attributes - for more information see: http://docs.oracle.com/cd/E21764_01/web.1111/b31974/bcquerying.htm#CHDHJHBI
    Regards
    Pavol

  • How to add a cell from 2 different tables in 2 different Matrix(s) that reside on the same rdlc report?

    Hello Community
        Using Visual Studio 2008 I have created a Windows Forms Application in which I created
    Embedded Reports (rdlc).
        The embedded reports (rdlc) uses Matrix(s).
        Now on this one rdlc I have dragged 2 Matrix(s) onto the body.
        One of the Matrix datasource dataset name and table name is "DataSet1_Table1.
        A cells in the Matrix has a total column on the end as follows:
    =FormatNumber(Sum(Fields!fld1.Value)+Sum(Fields!fld2.Value)+Sum(Fields!fld3.Value)+Sum(Fields!fld4.Value)+Sum(Fields!fld5.Value),"0")
        The other Matrix datasource dataset name and table name is "DataSet2_Table2.
        The cell in this Matrix has a total column on the end as follows:
    =Sum(Fields!fld1.Value)+Sum(Fields!fld2.Value)+Sum(Fields!fld3.Value)+Sum(Fields!fld4.Value)+Sum(Fields!fld5.Value)
        As you can see each Matrix has a different table.
        I would like to add the total columns from each table in each Matrix but I haven't been
    able to do it successfully. If I have to drag another Matrix or a Textbox on the
    body to do it that is okay and/or add another/different formula to a cell onto the body that is
    okay too.
        So my question is how can I add the contents of the total in cell from each table in each matrix
    which will create the "grand total"?
        Thank you
        Shabeaut

    It is possible to reference SSRS elements directly using the ReportItems collection. If your total tablix cell is outside of yoour matrix groups, you can use this collection to accomplish what you want:
    =ReportItems!Matrix1Total.Value + ReportItems!Matrix2Total.Value
    where Matrix1Total and Matrix2Total is the name of the cell that contains your totals. Note that for this to work, the cell name must be unique. If the total cell is inside a group, it will be repeated once for each instance of the group and will not be
    unique.
    You may be able to do it using the Sum aggregate and specifying the dataset for the scope variable:
    =Sum(Fields!fld1.Value, "DataSet1")+Sum(Fields!fld2.Value,
    "DataSet1")+Sum(Fields!fld3.Value,
    "DataSet1")+Sum(Fields!fld4.Value,
    "DataSet1")+Sum(Fields!fld5.Value,
    "DataSet1")+Sum(Fields!fld1.Value,
    "DataSet2")+Sum(Fields!fld2.Value,
    "DataSet2")+Sum(Fields!fld3.Value,
    "DataSet2")+Sum(Fields!fld4.Value,
    "DataSet2")+Sum(Fields!fld5.Value,
    "DataSet2")
    This will work as long as you are not filtering the dataset in your Matrix properties. If you are, those
    filters will not apply to this expression and the numbers will not total correctly.
    "You will find a fortune, though it will not be the one you seek." -
    Blind Seer, O Brother Where Art Thou
    Please Mark posts as answers or helpful so that others may find the fortune they seek.

  • How to get selected row of an advanced table

    Hi All,
    I have created an advanced table with 5 rows and i can also add rows in that. Here my requirement is i want to get the data of a row which i have selected. There are 5 rows. i have entered data into all 5 rows. Suppose i have selected 3rd row i have to get that 3rd row. if i have selected 5th row i have to get 5th row.
    Can you please guide me to achieve this requirement..
    Many thanks
    Murali

    Hi ,
    you have to set the firepartialaction event on your selection button, then use row refernce to get the handle on specific button
    public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processFormRequest(pageContext, webBean);
    OAApplicationModule am =
    (OAApplicationModule)pageContext.getApplicationModule(webBean);
    String event = pageContext.getParameter("event");
    if ("<ItemPPREventName>").equals(event))
    // Get the identifier of the PPR event source row
    String rowReference =
    pageContext.getParameter(OAWebBeanConstants.EVENT_SOURCE_ROW_REFERENCE);
    // write your business logic
    Thanks
    Pratap

  • How to add a custom column in a table?

    Hi,
    I have a requirement to add a custom field into the table of view InrLastHist of component ICCMP_BT_IRHIST. The data to be display in the column will be based on the standard category column.
    I was thinking of adding a value attribute into the current BTORDERCUSTHIST, and write its get method to display the custom data, BUT the add attribute wizard doesnt allow me to do so. There is a note saying "Value attribute: Attribute that is not contained in any BOL entities (not supported in this version)".
    So how do I do it? Pls advice.

    Hi,
    You need to find this bol in trx GENIL_MODEL_BROWSER, find the structure associeted and you have to create a field in this structure, after you create the attribute using this field that you created.
    Regards,
    Caíque Escaler

  • How to input data in a database table without knowing in advance table and column configurations

    Hi,
    I have a problem using LabVIEW for input data (manually) in a SQL database. I have about 40 tables in the database, each of them is related to a specific engine component. I need to create a user interface (maybe visualizing the table with a table control) where the users can insert data in the database table fields. Could someone give me some suggestion on how to do it?
    Using the  DB tools insert data.vi I need to know in advance the column configuration of the table, but in my database each table has its own structure! So do I have to create 40 different masks, one for every different table?
    Thanks in advance.
    Michela

    I have not actually used the LV SQL Toolkit, but I will try and offer high level ideas :-)
    when you have retrieved the construction data for a table, you should be able to use array and cluster indexing to aquire the names of the fieds, enough to create a labelled table on the LV Front panel.
    After completing a new entry you can INSERT the entry into the database using the same data.
    Is the SQL toolkit an additional purchase, or included in newer versions as standard? If you post a sample of the cluster/array that you retrieve, I could give you a sample VI to give you some pointers in creating the User Interface table 
    - Cheers, Ed

  • How to capture the row  value in Advanced Table on OAF ?

    Hi:
    I was wondering, if anyone has any idea as to how to capture a row value on an advanced table on a OAF Page.
    I am currently trying to capture the Expense Report Number ( first column) on the Track Expenses Reports table on the page /oracle/apps/ap/oie/webui/HomePG.
    Any idea would be helpful ?
    Thank You

    Hi,
    856070 wrote:
    This is what I am looking for :
    Default Functionality
    On the expenses home page there is a table for the Submitted expenses Table ( advanced table) with multiple Expense Number rows , which has a link associated with every expense number. When the user clicks the expense number link , EBS takes you to a more detail information page. ---As per default functionality :::whene ever user clicks on link it will takes u to details info page based expense no right.
    ---Check the property of the Destination URL of the ExpensionNumber column.
    ---In this property u can find the page path and paramam ex:pexpencenumber.
    Customized functionality
    I would like to capture the Expense number on the detailed page to call another application based on the expense number. The expense number on the
    detailed page is not available on the request-parameter or on the VO.
    I was thinking of capturing the ExpenseNumber when the user clicks it and save the expense number on a >transientvalue to retrieve it on the detaile dpage..but unable to do so.---Here get the paramereter pexpencenumber and pass it to another appilcation.
    Regards
    Meher Irk

  • How to set the flexfield column in advanced table

    Dear All
    Dear Gaurav
    Good morning
    iis it posible to create a flexfield column in advanced table.I am trying it is showing some error......
    Thanks& Regards
    Sreekanth

    Hi,
    My doubt is compulsory we give the view instance for flex field,
    and also give the view instance for advanced table.
    when i created the flex field in advanced table,it didn't ask the view instance.
    the advanced table and flex field view instance are different
    at that how can i create the flex field in advanced table.

  • How to display fixed width column in Advanced Table?

    Hi,
    This is probably a newbie question for OAF. My requirement is quite simple but I couldn't find the answer in either the OAF developer's guide or anywhere else so I turn to the experts here. I have a region of type Table or Advanced table with three items in them. One of the Item is of type comments which could be up to 4000 characters.
    I wanted to show all three on the first page but only have fixed width for the comments section like only show the first 50 characters for example and then if they want to see more detail they can click on a link to see full comments.
    The problem is I cannot figure out how to make the comments item fixed width. I have played with the table width properties but it keeps displaying the comments in multiple lines (I don't want that...). I have also tried putting the Table in a Row Layout but it doesn't seem to help.
    Since this is new development I can change my region style to anything to meet my requirements.
    I hope this is an easy question and if someone can help me that would be great....:-)

    Hi,
    Thanks but I was not wanting to change the VO attribute length size since I want to have a link on the first page which would enable to see a user the full 4000 comments using the same VO object. Then if I limit it to 50 characters in the VO, I will not be able to display the full comments on the second page.
    Isn't there some way in the UI that I can limit it? I know one workaround I can use for now is to have another column in the VO with the 50 character value such as substr(comments, 1, 50) and then have the full comments selected also in the VO and then show this subtr value in the first page and the comments value in the 2nd. I just thought there would be an easier way about it then doing all this workaround.
    Any ideas?
    Thanks

Maybe you are looking for

  • How to create check boxes dynamically in selection screen

    Hi Experts, I have a requirement of creating dynamic check boxes based on the number of records that are retrieved from a database table. Can you please suggest me how to achieve it. Regards RP.

  • Very low volume from external speakers when watching Netflix

    MacBook Pro Why might external speaker volume be extremely low when it is turned up to max in Sounds and on F11?

  • Explain Plan Error

    Hi All, I am using oracle 10g and running in sql*plus. I am getting one error when running explain plan for one query, if I am running the query in sql*plus then it is working fine. Query:- SELECT sp.store_cd wr_store_cd, l.store_cd, l.loc_cd, l.loc_

  • 10.5.3 - HELP - iMac 2.8C2D - Frozen after install

    after installing update and restarting..iMac is stuck on start-up logo screen. will only turn off and turn back on to logo screen. any help would be appreciated. NEW INFO: after about 10min..it restarts but again only back to logo screen Message was

  • How do get rid of the Pop Up Info Tags?

    This might sound Stupid, but how do get rid of the Pop Up Info Tags? that keep coming up on the Mac when in an Application that says what this item is for. This drives me crazy, and at times gets in the way of what I'm looking at. There must be some