Editing Data in modal form

I have an mxml for my project, in which I have a DataGrid with a few fields, just enough to locate a desired record.  When I double click on the item in the DataGrid, a modal form pops up, populated with the data in all the fields of the same record.  So far, so good.  However, now when I try to edit any data in any field, I get an error message:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at mx.containers::TabNavigator/keyDownHandler()[E:\dev\gumbo_beta2\frameworks\projects\frame work\src\mx\containers\TabNavigator.as:904]
I don't have a keyDownHandler on my TabNavigator.
My project is fairly small and a knowledgable person would probably be able to see my mistake in 10 seconds or less if they reviewed my code.  A zip file with my code is attached.
If some one could take a look, and post the errorneous line in the reply... then everyone in the forum could benefit.
I am making progress thanks to the excellent examples and instructions provided at:
http://sujitreddyg.wordpress.com/flash-builder-4/
I got a little demo of my own working just like in the instructions.  I had to rebuild my test project from scratch several times.. I think the FB 4 b 1 stuff was interfering with the FB 4 b2 way of doing things. However now, I am trying to build my test project in the way that my real project will work.. and that is... all detail forms will be opened in a modal window, edited, commited and then closed.

PROBLEM:  MODAL "frmSBJ" FORM crashes when I try to edit the text in a TextInput.  (See exact error text in previous post)
In the baa_ria.mxml: ------------------------------------------------------
    <fx:Script>
        <![CDATA[
            import components.*;
            import mx.managers.PopUpManager;
            protected function grdSBJs_itemDoubleClickHandler(event:ListEvent):void
                show_frmSBJ();               
            public function show_frmSBJ():void
                var pop:frmSBJ = frmSBJ(PopUpManager.createPopUp(this, frmSBJ, true));
                pop.bAA_SBJ = grdSBJs.selectedItem as BAA_SBJ;
                PopUpManager.centerPopUp(pop);                                          
In the "components" folder, frmSBJ.mxml: ---------------------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
                 xmlns:s="library://ns.adobe.com/flex/spark"
                 xmlns:mx="library://ns.adobe.com/flex/halo"
                 width="600" height="506"
                 xmlns:valueObjects="valueObjects.*"
                 xmlns:baa_data_svc="services.baa_data_svc.*">
    <s:layout>
        <s:BasicLayout/>
    </s:layout>
    <fx:Script>
        <![CDATA[
            import mx.controls.Alert;
            import mx.managers.PopUpManager;
            protected function btnDone_clickHandler(event:MouseEvent):void
                // TODO: Refresh the grdSBJs somehow
                PopUpManager.removePopUp(this);
            protected function btnCommit_clickHandler(event:MouseEvent):void
                updt_SBJResult.token = baa_data_svc.updt_SBJ(bAA_SBJ);
        ]]>
    </fx:Script>
    <fx:Declarations>
        <valueObjects:BAA_SBJ id="bAA_SBJ"/>
        <mx:DateFormatter id="dfISO" formatString="YYYY-MM-DD"/>
        <mx:DateFormatter id="tfHMS" formatString="HH:MM:SS"/>
        <s:CallResponder id="updt_SBJResult"/>
        <baa_data_svc:Baa_data_svc id="baa_data_svc" fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)" showBusyCursor="true"/>
    </fx:Declarations>
    <s:Panel x="15" y="9" width="564" height="465" id="pnlMain" title="Subject Name">
        <s:Group x="10" y="377" width="544" height="41" id="grpButtonBar">
            <s:Button x="309" y="10" label="Commit" id="btnCommit" click="btnCommit_clickHandler(event)" />
            <s:Button x="386" y="10" label="Undo" id="btnUndo"/>
            <s:Button x="464" y="10" label="Done" click="btnDone_clickHandler(event)" id="btnDone"/>
        </s:Group>
        <mx:TabNavigator x="6" y="8" width="548" height="361" id="tnvSBJ" creationPolicy="all">
            <s:NavigatorContent label="Properties" width="100%" height="100%" id="nvcProperties">
                <mx:Form x="126" y="5">
                    <mx:FormItem label="SBJ_NM">
                        <s:TextInput id="sBJ_NMTextInput" text="@{bAA_SBJ.SBJ_NM}"/>
                    </mx:FormItem>
                    <mx:FormItem label="SBJ_DOB">
                        <mx:DateField id="sBJ_DOBDateField" selectedDate="@{bAA_SBJ.SBJ_DOB}"/>
                    </mx:FormItem>
                    <mx:FormItem label="SBJ_ID">
                        <s:TextInput id="sBJ_IDTextInput" text="@{bAA_SBJ.SBJ_ID}"/>
                    </mx:FormItem>
                    <mx:FormItem label="NOTE">
                        <s:TextArea id="nOTETextInput" text="@{bAA_SBJ.NOTE}"/>
                    </mx:FormItem>
                </mx:Form>
            </s:NavigatorContent>
            <s:NavigatorContent label="Meta-data" width="100%" height="100%" id="nvcMetaData">
                <mx:Form x="117" y="25">
                    <mx:FormItem label="SRC_SYS_NM">
                        <mx:Text id="sRC_SYS_NMText" text="{bAA_SBJ.SRC_SYS_NM}"/>                       
                    </mx:FormItem>
                    <mx:FormItem label="SRC_SYS_GUID">
                        <mx:Text id="sRC_SYS_GUIDText" text="{bAA_SBJ.SRC_SYS_GUID}"/>
                    </mx:FormItem>
                    <mx:FormItem label="OBJ_GUID">
                        <mx:Text id="oBJ_GUIDText" text="{bAA_SBJ.OBJ_GUID}"/>
                    </mx:FormItem>
                    <mx:FormItem label="CDT">
                        <mx:Text id="cDTText" text="{dfISO.format(bAA_SBJ.CDT)}"/>
                    </mx:FormItem>
                    <mx:FormItem label="CTM">
                        <mx:Text id="cTMText" text="{tfHMS.format(bAA_SBJ.CTM)}"/>
                    </mx:FormItem>
                    <mx:FormItem label="CBY">
                        <mx:Text id="cBYText" text="{bAA_SBJ.CBY}"/>
                    </mx:FormItem>
                    <mx:FormItem label="MDT">
                        <mx:Text id="mDTText" text="{dfISO.format(bAA_SBJ.MDT)}"/>
                    </mx:FormItem>
                    <mx:FormItem label="MTM">
                        <mx:Text id="mTMText" text="{tfHMS.format(bAA_SBJ.MTM)}"/>
                    </mx:FormItem>
                    <mx:FormItem label="MBY">
                        <mx:Text id="mBYText" text="{bAA_SBJ.MBY}"/>
                    </mx:FormItem>
                </mx:Form>
            </s:NavigatorContent>
        </mx:TabNavigator>
    </s:Panel>       
</s:Group>
Thanks for your help pointing out where in this code I am going wrong.

Similar Messages

  • How to save the edit data temporarily in tabular form while pagination

    Hi,
    I need to hold the edit data temporarily before final submitting the page in apex 4.0 tabular form while navigating the row pagination.
    well i am expecting some easiest method.
    Saroj

    I think you have to read about apex collection.

  • Implement jQuery modal form

    Hi,
    For a long time I am trying to find anything related to implementation of modal popup windows into Apex and so far no luck.
    Here is a link:
    [http://jqueryui.com/demos/dialog/#modal-form]
    and that is close to whatever I want to get. I have a page with lots of items and buttons, by clicking on one of the buttons I want modal window to popup and value from Parent Page (stored in hiden item) passed to modal window. In modal window I want to enter some data and by clicking "submit" data will go to the table and window shold be closed after that. In the same time I need Parent Page to get just entered data from modal (or just simply be refreshed)............ so it is all just basic stuff of popups and modals.....but I can not get this working.
    Anyone has done it before? Any resuls?
    Thanks a lot

    Hi All,
    I have outlined the steps to achieve the modal form below ......
    Include the below in your page template header section :
    Latest Jquery JS , ui.core.js ,ui.dialog.js,
    ui.draggable.js,ui.resizable.js // optional
    (You can download these JS files from the Jquery website)
    1) Create a Region with the items you wish to see in the modal dialog form
    2) Place the following in the region header section
    <div id="dialog" title"Create New User"> 3)In the region footer add
    </div>Add the following Javascript in your page template :
    <script>
    $(document).ready(function(){
    $("#dialog").dialog({
    bgiframe: true,
    autoOpen: false,    // hides the window by default and you will use function $("#dialog").dialog('open'); to open it
    height: 300,
    modal: true
    </script>For the Create button to open the dialog, call a javascript fucntion :
    function f_show_dialog()
    $("#dialog").dialog('open');
    }For the Modal form Submit button which inserts a row :
    function f_insert_row()
    doSubmit('SUBMIT');
    Create a Pl/sql Process that executes with the condition
    Request=expression1 where expression1 is SUBMIT
    Include a branch to the same page for this SUBMIT button.
    Phew ! Hope this was helpful.I will try to put an example on OTN soon....
    Thanks,
    Dippy
    Edited by: Dippy on Feb 19, 2010 9:45 AM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Can't Edit Data in Access 2013 Web App

    I have an Office 365 P1 account that I have been using to create apps in Access 2010. I tried Access 2013. But when I launch an app, it loads in my Office 365, but editing data is not enabled (the Add and Edit buttons are displayed, but not enabled).
    I have tried creating a new custom web app with one simple table and a view, as well as creating one using a Microsoft pre-built template, and simply creating the app and launching it. In both cases, the app displays, but I cannot add or edit data.
    Is there something with my Office 365 account that is limiting my ability to work with Access 2013 web apps?
    Thank you!

    Hi KrisMarshall7,
    In regarding of the issue, please provide us more information to assist you better.
    What the file format is your Access 2007 file? MDB or ACCDB?
    Where do you want to add the columns? Table, form or query?
    As far as I know,
    the limitation of columns in a table is 250. Thus, I suppose that the database had some hidden columns. Please try to check it. Steps:
    Right-click any field title, then select Unhide Fields. A dialog box will appear. Click the check boxes of any fields you would like to be visible again, then click Close.
    Hope it's helpful.
    Regards,
    George Zhao
    TechNet Community Support
    It's recommended to download and install
    Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office
    programs.
    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact [email protected]

  • Here's how to do ALV (OO) with dynamic fcat, int table and editable data

    Hi everybody
    Here's a more useful approach to ALV grid with OO using dynamic table, data NOT from DDIC, dynamic FCAT and how to get changed lines from the grid when ENTER key is pressed.
    It's really not too dificult but I think this is more useful than the ever present SFLIGHT methods from the demos.
    This also defines a subclass of cl_gui_alv_grid so you can access the protected attributes / methods of that class.
    You don't need to add the class via SE24 -- done fron this ABAP.
    When you run it click Edit for the first time.
    After editing data press ENTER and the break point should bring you into the relevant method.
    Code developed on NW2004S trial version but also works on rel 6.40 on a "Real" system.
    The code should work without any changes on any system >=6.40.
    All you need to do is to create a blank screen 100 via SE51  with a custom container on it called CCONTAINER1.
    The rest of the code can just be uploaded into your system using the SE38 upload facility.
    When running the program click on the EDIT button to enable the edit functionality of the grid.
    Change your data and when you press ENTER you should get the break-point where you can see the original table and changed rows.
    This program is actually quite general as it covers Dynamic tables, building a dynamic fcat where your table fields are NOT in the DDIC, intercepting the ENTER key via using an event, and accessing the protected attributes of the cl_gui_alv_grid by defining a subclass of this class in the abap.
    I've seen various questions relating to all these functions but none in my view ever answers the questions in a simple manner. I hope this simple program will answer all these and show how using OO ALV is actually quite easy and people shouldn't be scared of using OO.
    Have fun and award points if useful.
    Cheers
    Jimbo.
    <b>PROGRAM zdynfieldcat.
    Simple test of dynamic ITAB with user defined (not ddic) fields
    Build dynamic fcat
    use ALV grid to display and edit.
    *When edit mode set to 1 toolbar gives possibility of adding and
    *deleting rows.
    *Define subclass of cl_gui_alv_grid so we can use protected attributes
    *and methods.
    Add event handler to intercept user entering data and pressing the
    *ENTER key.
    When enter key is pressed get actual value of NEW table (all rows)
    rather than just the changed data.
    *use new RTTI functionality to retrieve internal table structure
    *details.
    Create a blank screen 100  with a custom container called CCONTAINER1.
    James Hawthorne
    include <icon>.
    define  any old internal structure  NOT in DDIC
    types: begin of s_elements,
           anyfield1(20) type c,
           anyfield2(20) type c,
           anyfield3(20) type c,
           anyfield4(20) type c,
           anyfield5(11) type n,
           end of s_elements.
    types:  lt_rows  type lvc_t_roid.
    Note new RTTI functionality allows field detail retrieval
    at runtime for dynamic tables.
    data:   wa_element type s_elements ,
            wa_data type s_elements,
            c_index type sy-index,
            c_dec2 type s_elements-anyfield5,
            wa_it_fldcat type lvc_s_fcat,
            it_fldcat type lvc_t_fcat,
            lr_rtti_struc TYPE REF TO cl_abap_structdescr,    "RTTI
            lt_comp TYPE cl_abap_structdescr=>component_table,"RTTI
            ls_comp LIKE LINE OF lt_comp,                     "RTTI
            zog  like line of lr_rtti_struc->components,      "RTTI
            struct_grid_lset type lvc_s_layo,
            l_valid  type c,
            new_table type ref to data.
    field-symbols: <dyn_table> type standard table,
                   <actual_tab> type standard table,
                   <fs1> type ANY,
                   <FS2> TYPE TABLE.
    data: grid_container1 type ref to cl_gui_custom_container.
    class lcl_grid_event_receiver definition deferred.
    data: g_event_receiver type ref to lcl_grid_event_receiver.
    data: ls_modcell type LVC_S_MODI,
          stab type ref to data,
          sdog type  s_elements.      .
    class lcl_grid_event_receiver definition.
      public section.
        methods:
        handle_data_changed
             for event data_changed of cl_gui_alv_grid
                 importing er_data_changed,
           toolbar for event toolbar of cl_gui_alv_grid
                     importing e_object
                               e_interactive,
          user_command for event user_command of cl_gui_alv_grid
                     importing e_ucomm.
    endclass.
    *implementation of Grid event-handler class
    class lcl_grid_event_receiver implementation.
    method handle_data_changed.
    code whatever required after data entry.
    various possibilites here as you can get back Cell(s) changed
    columns or the entire updated table.
    Data validation is also possible here.
    perform check_data using er_data_changed.
    endmethod.
    Method for handling all creation/modification calls to the toolbar
      method toolbar.
        data : ls_toolbar type stb_button.
    Define Custom Button in the toolbar
        clear ls_toolbar.
        move 0 to ls_toolbar-butn_type.
        move 'EDIT' to ls_toolbar-function.
        move space to ls_toolbar-disabled.
        move 'Edit' to ls_toolbar-text.
        move icon_change_text to ls_toolbar-icon.
        move 'Click2Edit' to ls_toolbar-quickinfo.
        append ls_toolbar to e_object->mt_toolbar.
        clear ls_toolbar.
        move 0 to ls_toolbar-butn_type.
        move 'UPDA' to ls_toolbar-function.
        move space to ls_toolbar-disabled.
        move 'Update' to ls_toolbar-text.
        move icon_system_save to ls_toolbar-icon.
        move 'Click2Update' to ls_toolbar-quickinfo.
        append ls_toolbar to e_object->mt_toolbar.
        clear ls_toolbar.
        move 0 to ls_toolbar-butn_type.
        move 'EXIT' to ls_toolbar-function.
        move space to ls_toolbar-disabled.
        move 'Exit' to ls_toolbar-text.
        move icon_system_end to ls_toolbar-icon.
        move 'Click2Exit' to ls_toolbar-quickinfo.
        append ls_toolbar to e_object->mt_toolbar.
      endmethod.
      method user_command.
        case e_ucomm .
          when 'EDIT'.          "From Tool bar
            perform set_input.
             perform init_grid.
          when 'UPDA'.          "From Tool bar
            perform refresh_disp.
            perform update_table.
          when 'EXIT'.          "From Tool bar
            leave program.
        endcase.
      endmethod.
    endclass.
    class zcltest definition inheriting from  cl_gui_alv_grid.
    define this as a subclass so we can access the protected attributes
    of the superclass cl_gui_alv_grid
    public section.
    methods: constructor, disp_tab.
    endclass.
    need this now to instantiate object
    as we are using subclass rather than the main cl_gui_alv_grid.
    class zcltest implementation.
    METHOD constructor.
    CALL METHOD super->constructor
            exporting i_appl_events = 'X'
               i_parent = grid_container1.
    endmethod.
    method disp_tab.
    FIELD-SYMBOLS: <outtab> TYPE STANDARD TABLE.
    break-point 1.
    mt_outtab is the data table held as a protected attribute
    in class cl_gui_alv_grid.
    ASSIGN me->mt_outtab->* TO <outtab>.  "Original data
    do whatever you want with <outtab>
    contains data BEFORE changes each time.
    Note that NEW (Changed) table has been obtained already by
    call to form check_data USING P_ER_DATA_CHANGED
             TYPE REF TO CL_ALV_CHANGED_DATA_PROTOCOL.
    Entered data is in table defined by <fs2>
    In this method you can compare original and changed data.
    Easier than messing around with individual cells.
    do what you want with data in <fs2>  validate / update / merge etc
    endmethod.
    endclass.
    data :
        ok_code like sy-ucomm,
        save_ok like sy-ucomm,
        i4 type int4,
    Container Object [grid_container]
    now created via method constructor
    in the subclass zcltest.
    Control Object [grid]
    grid1 type ref to zcltest,
    Event-Handler Object [grid_handler]
    grid_handler type ref to lcl_grid_event_receiver.
    start-of-selection.
    call screen 100.
    module status_0100 output.
    now display it as grid
    if grid_container1 is initial.
        create object grid_container1
            exporting
              container_name = 'CCONTAINER1'.
        create object grid1.
         break-point 1.
        create object grid_handler.
        set handler:
           grid_handler->user_command for grid1,
           grid_handler->toolbar for grid1,
           grid_handler->handle_data_changed for grid1.
    perform create_dynamic_fcat.
    perform create_dynamic_itab.
    perform populate_dynamic_itab.
    perform init_grid.
    perform register_enter_event.
    set off ready for input initially
    i4 = 0.
      call method grid1->set_ready_for_input
             exporting
               i_ready_for_input = i4.
    endif.
    endmodule.
    module user_command_0100 input.
    *PAI not needed in OO ALV anymore as User Commands are handled as events
    *in method user_command.
    *we can also get control if the Data entered and the ENTER is pressed by
    *raising an event.
    Control then returns to method handle_data_changed.
    endmodule.
    form create_dynamic_fcat.
    get structure of our user table for building field catalog
    Use the RTTI functionality
    lr_rtti_struc ?= cl_abap_structdescr=>describe_by_data( wa_data ).
    Build field catalog just use basic data here
    colour specific columns as well
    loop at lr_rtti_struc->components into zog.
    c_index = c_index + 1.
    clear wa_it_fldcat.
      wa_it_fldcat-fieldname = zog-name .
      wa_it_fldcat-datatype =  zog-type_kind.
      wa_it_fldcat-inttype =   zog-type_kind.
      wa_it_fldcat-intlen =    zog-length.
      wa_it_fldcat-decimals =  zog-decimals.
      wa_it_fldcat-lowercase = 'X'.
      if c_index eq 2.
      wa_it_fldcat-emphasize = 'C411'.
         endif.
        if c_index eq 3.
      wa_it_fldcat-emphasize = 'C511'.
       endif.
      append wa_it_fldcat to it_fldcat .
    endloop.
    endform.
    form create_dynamic_itab.
    Create dynamic internal table and assign to field sysmbol.
    Use dynamic field catalog just built.
    call method cl_alv_table_create=>create_dynamic_table
                 exporting
                    it_fieldcatalog = it_fldcat
                 importing
                    ep_table        = new_table.
    assign new_table->* to <dyn_table>.
    endform.
    form populate_dynamic_itab.
    load up a line of the dynamic table
    c_dec2 = c_dec2 + 11.
    wa_element-anyfield1 = 'Tabbies'.
    wa_element-anyfield2 = 'ger.shepards'.
    wa_element-anyfield3  = 'White mice'.
    wa_element-anyfield4 =  'Any old text'.
    wa_element-anyfield5 =  c_dec2.
    append  wa_element to <dyn_table>.
    endform.
    form check_data USING P_ER_DATA_CHANGED
               TYPE REF TO CL_ALV_CHANGED_DATA_PROTOCOL.
    Get altered data back
      ASSIGN   p_er_data_changed->mp_mod_rows TO <FS1>.
    stab =       p_er_data_changed->mp_mod_rows.
    ASSIGN STAB->* TO <FS2>.
    LOOP AT <FS2> INTO sdog.
    ALV grid display with altered data is now in <fs2>.
    do any extra processing you want here
    endloop.
    now display new table
    call method grid1->disp_tab.
    endform.
    form exit_program.
      call method grid_container1->free.
      call method cl_gui_cfw=>flush.
      leave program.
    endform.
    form refresh_disp.
      call method grid1->refresh_table_display.
    endform.
    form update_table.
    The dynamic table here is the changed table read from the grid
    after user has changed it
    Data can be saved to DB or whatever.
    loop at <dyn_table> into wa_element.
    do what you want with the data here
    endloop.
    switch off edit mode again for next function
    i4 = 0.
      call method grid1->set_ready_for_input
          exporting
              i_ready_for_input = i4.
    endform.
    form set_input.
    i4 = 1.
      call method grid1->set_ready_for_input
         exporting
           i_ready_for_input = i4.
    endform.
    form switch_input.
    if i4 = 1.
    i4 = 0.
    else.
    i4 = 1.
    endif.
      call method grid1->set_ready_for_input
         exporting
           i_ready_for_input = i4.
    endform.
    form init_grid.
    Enabling the grid to edit mode,
         struct_grid_lset-edit = 'X'. "To enable editing in ALV
         struct_grid_lset-grid_title  = 'Jimbos Test'.
         call method grid1->set_table_for_first_display
           exporting
             is_layout           = struct_grid_lset
           changing
             it_outtab             =  <dyn_table>
             it_fieldcatalog       =  it_fldcat.
    endform.
    form register_enter_event.
    call method grid1->register_edit_event
                   exporting
                      i_event_id = cl_gui_alv_grid=>mc_evt_enter.
    Instantiate the event or it won't work.
    create object g_event_receiver.
    set handler g_event_receiver->handle_data_changed for grid1.
    endform.</b>

    Hi there
    IE7 doesn't give me the add new page option and I get 404 error when trying to access the "How to contribute" section.
    I'll load up Firefox later (this browser usually works when IE7 doesn't always work properly).
    I'll copy the stuff to the wiki when I've got the browser sorted out.
    Cheers
    jimbp

  • Issue while reflecting the data to ADF form from ADF Table

    Hi All,
    I have one scenario as follows:
    I have to open a form in entry mode. So I have used a Method Call activity in task flow to call "Create" in method call activity.
    Then form opens in a entry mode. I have a adf table in the page showing the entered data.
    When form opens in entry mode, instead of entering the values in the field User selects a record in ADF table, but due to the create mode of the form it will through me a error to fill mandatory fields.
    Please tell me the way so that if user selects the record(in adf table) instead of entering new record, the value would reflect in the Adf form.
    If I use a roll back on selecting the row of ADF table, then it is showing me this error "Row currency has changed since the user interface was rendered. The expected row key was oracle.jbo.Key[null ]" because there will be no row key in the cache when form opens.
    Please suggest me the way to complete the task.
    I am using jdeveloper 11.1.2.1.0
    Thanks,
    Gobi
    Edited by: gobinkl on Oct 3, 2012 2:06 AM

    no no your are complicating yourself. :) better your should provide your usecase.
    first thing: go through the books & also adf blogs learn and understand the framework. as above person said.
    i hope that you had method call create as activity as default while page rendering it make your af: form empty(that is ready fir insertion format).
    so if your are doing like that.am sure it will throw some mandatory errors.
    error will not resolve unless without entering any data's.
    coming af:table why are using af:table - immediate = true / false(switching).
    immediate = true - skip over validation or by pass some validation in some phase - based on the component which you are using. (say as if you are using editable value holder,af:coomand button).
    grab the information here in an more legible manner.
    http://adfpractice-fedor.blogspot.in/2012/02/understanding-immediate-attribute.html
    let me know your usecase.
    this will assist you
    https://blogs.oracle.com/shay/entry/executing_an_action_on_jsf_pag
    http://tanveeroracle.blogspot.in/2009/09/adf-11g-createinsert-to-display-blank.html
    Edited by: user707 on Oct 5, 2012 9:02 AM

  • How do you print data from a form?

    From the interactive report, there's a built in function to print to variious formats (e.g., PDF, CSV, etc).
    As long as the columns do not exceed the width of a page, it's okay.
    But what I want to do is when a user clicks on 'edit' from the interactive report and displays the data entry screen, I want to be able to have a 'Print' button to print the data from a form.
    Don't want to manually modify the URL to change a parameter to print.
    Really appreciate any help I can get on this matter!!!

    I want to be able to have a 'Print' button to print the data from a form.Create a Print button in the form page with an <tt>onclick</tt> attribute that calls the method<tt>print()</tt> method:
    onclick="window.print();"
    Don't want to manually modify the URL to change a parameter to print. Sounds like you want to be able to control which page elements are printed and how they are formatted?
    This is quite straightforward using a print media style sheet.
    You'll need to identify CSS selectors (usually IDs and classes) from the page HTML for the components and regions that are not to be printed: a web inspector such as that found in Safari, or the Firefox+Firebug combo is useful for this. It's also a good idea to give all of your regions a unique static region ID to assist with this identification. Using this information, you can construct the style sheet to exclude all of the unwanted content using <tt>display: none</tt> rules.
    In a simplified example, say you identify that there are 4 regions on the page, and you only want to print region 3. You would add the following style sheet to the page HTML Header:
    <style type="text/css" media="print">
    #region-1, #region-2, #region-4 {
      display: none;
    </style>+{message:id=2475831}+ is a solution to a similar problem, and see this article for more enhancements that can be included in your print style sheet.
    Really appreciate any help I can get on this matter!!!You'll get effective help more quickly if you include the following information upfront when posting a question. This enables others to understand, replicate and determine the most appropriate fix without wasting time asking all kinds of supplementary questions:
    - APEX version
    - DB version and edition
    - Web server architecture (EPG, OHS or APEX listener)
    - Browser(s)/version(s) used
    - Theme used
    - Templates used
    - Region/Report/Process type
    And please update your forum profile with a better handle than "846623".

  • Sending Data to PDF Forms from ABAP Program.

    Hi Experts,
    I left ABAP Programing for a while around 1+ years Due to some personal problems
    Now I have struck up with new issue. Its ADOBE PDF forms.
    I am Entirely new to this topic & knows about Nothing.
    My requirement is to display a report in PDF form. Its totally Independent form from NACE.
    I have written a Driver program & retrieved all the DATA into a Final internal table.
    Now All that I need is to display the same Internal Table data into PDF form output.
    Can anyone help me how to send this data(47 records in Internal table with 8 fields in Internal table) to PDF.
    Please help me out Experts with any suggestions.
    Thanks & Regards,
    Dileep .C

    Hi,
    if u pass your internal table to smartform we can achieve . because we can convert smartform output into pdf easily.
    Regards,
    karthikeyan k s,
    Edited by: karthikeyanks on Nov 19, 2010 12:58 PM

  • How to edit text in a form

    I downloaded a form to pay taxes, I compiled it inserting my dates but I wuold like to edit text: how can I do it?
    thank you and excuse me for my bad english

    I was going to comment yesterday and did not. I think I will chime in anyway for what it is worth. As Claudio mentioned, editing PDFs is not really recommended. If you have downloaded a government form, there may be some implications if you actually tried to change the form (to make it look better) and it could be rejected. I remember some time back I has a passport or visa form I think where the size of the field entry was rediculous. I lived with it and the limitations.
    The form was also restricted from editing, that would have made it a bit more difficult and might have invalidated any submission. I do not know if there are any legal implications of making such changes, but there may be some aspects of the form not being accepted if you try to change it.
    If you are talking about no fields available, you might want to recheck the source of the form to see if they have one with fields included (the IRS used to have forms with and without fields). If the form allows adding fields and that is the issue, then simply select the TOOLS>Advanced editing and use the form tools you need. If the form is locked, it is probably best to print the form and start using a pen.
    Another option in the latter case is to print the form and then fill is in using a word processor, playing around with the placement of the text until the two line up. Then you just print the form and then reprint the text on top of it. That used to be the method folks used.

  • How to print the data on the form (smartform)...

    Hi,
    i got a requirement that i have to create a selection screen and from that i process the data according to the inputs in the selection screen, and after i collect the entire data in an internal table, now i want that data to be displayed in the form ,
    what is the process for this, can anybody explain me in detail.
    Regards,
    Ram

    Hi!
    To create new smartform
    How to create a New smartfrom, it is having step by step procedure
    http://sap.niraj.tripod.com/id67.html
    Here is the procedure
    1. Create a new smartforms
    Transaction code SMARTFORMS
    Create new smartforms call ZSMART
    2. Define looping process for internal table
    Pages and windows
    First Page -> Header Window (Cursor at First Page then click Edit -> Node -> Create)
    Here, you can specify your title and page numbering
    &SFSY-PAGE& (Page 1) of &SFSY-FORMPAGES(Z4.0)& (Total Page)
    Main windows -> TABLE -> DATA
    In the Loop section, tick Internal table and fill in
    ITAB1 (table in ABAP SMARTFORM calling function) INTO ITAB2
    3. Define table in smartforms
    Global settings :
    Form interface
    Variable name Type assignment Reference type
    ITAB1 TYPE Table Structure
    Global definitions
    Variable name Type assignment Reference type
    ITAB2 TYPE Table Structure
    4. To display the data in the form
    Make used of the Table Painter and declare the Line Type in Tabstrips Table
    e.g. HD_GEN for printing header details,
    IT_GEN for printing data details.
    You have to specify the Line Type in your Text elements in the Tabstrips Output options.
    Tick the New Line and specify the Line Type for outputting the data.
    Declare your output fields in Text elements
    Tabstrips - Output Options
    For different fonts use this Style : IDWTCERTSTYLE
    For Quantity or Amout you can used this variable &GS_ITAB-AMOUNT(12.2)&
    5. Calling SMARTFORMS from your ABAP program
    REPORT ZSMARTFORM.
    Calling SMARTFORMS from your ABAP program.
    Collecting all the table data in your program, and pass once to SMARTFORMS
    SMARTFORMS
    Declare your table type in :-
    Global Settings -> Form Interface
    Global Definintions -> Global Data
    Main Window -> Table -> DATA
    Written by : SAP Hints and Tips on Configuration and ABAP/4 Programming
    http://sapr3.tripod.com
    TABLES: MKPF.
    DATA: FM_NAME TYPE RS38L_FNAM.
    DATA: BEGIN OF INT_MKPF OCCURS 0.
    INCLUDE STRUCTURE MKPF.
    DATA: END OF INT_MKPF.
    SELECT-OPTIONS S_MBLNR FOR MKPF-MBLNR MEMORY ID 001.
    SELECT * FROM MKPF WHERE MBLNR IN S_MBLNR.
    MOVE-CORRESPONDING MKPF TO INT_MKPF.
    APPEND INT_MKPF.
    ENDSELECT.
    At the end of your program.
    Passing data to SMARTFORMS
    call function 'SSF_FUNCTION_MODULE_NAME'
    exporting
    formname = 'ZSMARTFORM'
    VARIANT = ' '
    DIRECT_CALL = ' '
    IMPORTING
    FM_NAME = FM_NAME
    EXCEPTIONS
    NO_FORM = 1
    NO_FUNCTION_MODULE = 2
    OTHERS = 3.
    if sy-subrc <> 0.
    WRITE: / 'ERROR 1'.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    call function FM_NAME
    EXPORTING
    ARCHIVE_INDEX =
    ARCHIVE_INDEX_TAB =
    ARCHIVE_PARAMETERS =
    CONTROL_PARAMETERS =
    MAIL_APPL_OBJ =
    MAIL_RECIPIENT =
    MAIL_SENDER =
    OUTPUT_OPTIONS =
    USER_SETTINGS = 'X'
    IMPORTING
    DOCUMENT_OUTPUT_INFO =
    JOB_OUTPUT_INFO =
    JOB_OUTPUT_OPTIONS =
    TABLES
    GS_MKPF = INT_MKPF
    EXCEPTIONS
    FORMATTING_ERROR = 1
    INTERNAL_ERROR = 2
    SEND_ERROR = 3
    USER_CANCELED = 4
    OTHERS = 5.
    if sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    for Smartforms material
    http://www.sap-basis-abap.com/sapsf001.htm
    http://www.sap-press.com/downloads/h955_preview.pdf
    http://www.ossincorp.com/Black_Box/Black_Box_2.htm
    http://www.sap-img.com/smartforms/sap-smart-forms.htm
    http://www.sap-img.com/smartforms/smartform-tutorial.htm
    http://www.sapgenie.com/abap/smartforms.htm
    How to trace smartform
    http://help.sap.com/saphelp_47x200/helpdata/en/49/c3d8a4a05b11d5b6ef006094192fe3/frameset.htm
    http://www.help.sap.com/bp_presmartformsv1500/DOCU/OVIEW_EN.PDF
    http://www.sap-img.com/smartforms/smart-006.htm
    http://www.sap-img.com/smartforms/smartforms-faq-part-two.htm
    check most imp link
    http://www.sapbrain.com/ARTICLES/TECHNICAL/SMARTFORMS/smartforms.html
    step by step good ex link is....
    http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.html
    Or an another one:
    just check it step by step with lots of screen shots.
    http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.html
    Reward all helpfull answers
    Regards
    Tamá

  • Error editing data file, unable to load Region Definition

    Hello
    I'm getting a parseException when I try to edit a data file from UCM.
    The steps followed are:
         1- Create an element definition at Site Studio
         2 - Create a Region Definition refering to the Element Definition
         3 - Create a Content in UCM. Double checked that the region definition and the web site are set. The content of the primary file is:
              <?xml version="1.0" encoding="UTF-8" standalone="no"?>
              <wcm:root xmlns:wcm="http://www.stellent.com/wcm-data/ns/8.0.0" version="8.0.0.0">
              </wcm:root>
         4 - Open the content info and click "Edit data file". Then two pop-up window are showed:
                   A. The contributor pop-up displays a blank page with title containing "'idcService' parameter not found"
                   B. new Page displays the next message:
                        Unable to perform the action due to the following reasons:
                        [+] The Region Definition could not be loaded. The Region Definition 'RD_REGION_ID' could not be loaded. [...] The markup in the document preceding the root element must be well-formed. org.xml.sax.SAXParseException: The markup in the document preceding the root element must be well-formed.
    I've checked the region definition and everything seems correct to me:
         Web browser displays the xml correctly when I open it from "Web Location".
         I've checked the syntax with Notepad++ XML Tools plugin and the result is "No error detected".
         I've also checked the file with hex editor and everything seems to be right.
    Same tests for the primary file
    Both contents, the region definition and the dataFile, are accesible and editable from Site Studio.
    UCM server LOG:
         -translated-
         Could not load 'RD_REGION_ID' of Region Definition. Error parsing Region Definition at line 1, column 2.
         -end of translated log-
         Error: The markup in the document preceding the root element must be well-formed. org.xml.sax.SAXParseException: The markup in the document preceding the root element must be well-formed.. [ Detalles ]
         !csSSWebsiteObjectLoadError,Region Definition,RD_REGION_ID!csSSWebsiteObjectSaxParseException,Region Definition,1,2,The markup in the document preceding the root element must be well-formed.!syJavaExceptionWrapper,org.xml.sax.SAXParseException: The markup in the document preceding the root element must be well-formed.
         org.xml.sax.SAXParseException: The markup in the document preceding the root element must be well-formed.
              at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
              at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174)
              at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388)
              at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1414)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:925)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
              at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
              at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
              at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
              at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
              at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
              at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225)
              at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
              at weblogic.xml.jaxp.RegistryDocumentBuilder.parse(RegistryDocumentBuilder.java:163)
    Server:
         Version:11gR1-11.1.1.4.0-idcprod1-101229T001824 (Build:7.3.0.180)
         Database Type:Oracle
         Database Version:11.2.0.2.0 ---Oracle Database 11g Enterprise Edition Release --- - Production With the Partitioning,
    Site Studio Info:
         Component Build Version: 11.0.0.648
         Disable Contribution: False
         Web Site Object Type Field: xWebsiteObjectType
         Web Sites Field: xWebsites
         Web Site Section Field: xWebsiteSection
         Do not Show In Lists For Web Sites Field: xDontShowInListsForWebsites
         Region Definition Field: xRegionDefinition
         Contributor Console Enabled: True
         Designer Version: 11.1.1.4.0

    Hi,
    I've tested to obtain the content of the UCM from a webcenter portal server, I create a new Navigation Item of type "Content Item", when I choose any document from the UCM I'm getting the next trace:
    java.lang.NullPointerException
              at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyStringRecurse(RegionUtils.java:675)
              at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyStringRecurse(RegionUtils.java:700)
              at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyStringRecurse(RegionUtils.java:700)
              at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyStringRecurse(RegionUtils.java:715)
              at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyString(RegionUtils.java:647)
              at oracle.adf.controller.internal.binding.RegionUtils.getTaskFlowId(RegionUtils.java:577)
    oracle.adf.controller.ControllerException: ADFC-14014: Task flow binding active attribute evaluated to null, binding='pickerWrapper1'.
         at oracle.adf.controller.internal.binding.DCTaskFlowBinding.getConditionalActivationValue(DCTaskFlowBinding.java:974)
         at oracle.adf.controller.internal.binding.TaskFlowRegionController.refreshRegion(TaskFlowRegionController.java:84)
         at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:3211)
         at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2883)
    java.lang.NullPointerException
         at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyStringRecurse(RegionUtils.java:675)
         at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyStringRecurse(RegionUtils.java:700)
         at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyStringRecurse(RegionUtils.java:700)
         at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyStringRecurse(RegionUtils.java:715)
         at oracle.adf.controller.internal.binding.RegionUtils.getRegionHierarchyString(RegionUtils.java:647)
         at oracle.adf.controller.internal.binding.RegionUtils.getTaskFlowId(RegionUtils.java:577)
    I don't know if the reason for this error is the same or there are other causes involved
    Regards,
    Rafa

  • Problem with JFMERGE using the last set of data on all form sets

    b Here is the scenario...
    I have a file of data in character delimited format. Each record needs to produce the same set of forms. I used the Visual Transformation Editor to define the field nominated data file, including the ^form statements. The transformation agent processes the file of multiple records just fine. I get a file from JFTRANS that contains the set of data & form statements repeated for each record in the file.
    Great so far.
    b Here is the problem...
    Unfortunately, the print agent is repeating the same set of data on every copy of the set of forms that is printed. It uses the data from the last set of forms to be printed.
    b Additional information...
    For ease of building the field nominated file by our custom client program we have standardized on using GLOBAL fields. Therefore, our DAT files contain all the ^global declarations with all the necessary ^form statements at the end. I used the transformation editor to build the same type of file. Therefore the file going to the print agent looks like:
    ^global name1
    data1
    ^global name2
    data2
    ^form form1
    ^form form2
    ^global name1
    newdata1
    ^global name2
    newdata2
    ^form form1
    ^form form2
    The printed result puts "newdata1" & "newdata2" on both sets of form2. Strangely, the correct data values are showing up on both sets of form1.
    The only difference between the two forms is that form1 is not defined with the fields as global where form2 does define them as global. I removed the global flag from form2 but that didn't change anything.
    I think I know what is occurring. JFMERGE is putting the data elements into the global dictionary and when the same name is in the file the latest data value ends up in the dictionary (thus all the forms print using the last data put into the dictionary). I certainly didn't expect this. I thought it would load the dictionary and print the first set of forms, then reload the dictionary and print the next set of forms. At least that is the way I see it occuring based on the order of things in the DAT file. Based on what is occuring it appears that JFMERGE reads the whole DAT file, building the dictionaries and then processes all the ^form statements.
    b My request for help...
    Does anyone know what I can do (such as insert some command) to get the correct data on the forms?
    It looks like using a fixed record format might do the trick but that isn't an option at this time. As things are right now it looks like I'm going to have to take the data file apart, and make lots of files with one line of data per file.
    I have a time deadline to get this printed so if there isn't a way to make JFMERGE operate as I expected it looks like I'll be doing this by hand. Fortunately, there are only 250-300 data lines. Future jobs could have thousands of data lines so if there isn't a way to do it with a multi-line data file I'll have someone create a program for splitting the original file up (and adding the ^job line).

    We don't use subforms so some of what you suggest isn't effective for us. Our forms are a duplication of the paper forms and are not dynamic. We design each form separately and our custom filler software (that builds the DAT file) uses a database with the required forms for each print job defined within it.<br /><br />Since we don't have subforms, our simple method of printing is to declare as GLOBAL all the unique fields used on all the forms to be printed followed by the ^form commands. It was a simple & straightforward method for us to do better than 500 print jobs over that past couple of years. In addition, our custom filler software can easily build the DAT files.<br /><br />Because I need to manually declare all the ^form statements my experience with using ^field is that the form must be declared followed by the appropriate field commands (repeat for all the forms).<br /><br />i <many hours later I continue typing this post><br /><br />Taking the original Transformation Definition File and customizing it for how things need to be when using ^field commands was a time consuming experience (and a learning one). It did the job as I needed but it is an experience I don't want to repeat. There has got to be a better way of building the TDF properly. I'm definately leaning towards a program to split the file into multiple files.<br /><br />Here is what I went through...<br /><br />I did all the editting using Notepad. I changed all ^global to ^field. Then I had to remove the #comment lines. Next was to find any references to fields that had to be global to the top and chang ^field to ^global. Then it was moving the fields around so they were underneath the appropriate ^form statement. Then, since one of the forms was multi-page I had to add the ^page command and sort the fields so they were under the correct page. That was followed by duplicating fields that are used on multiple forms or multiple pages. Then I discovered that the print agent won't do ^page unless "inline processing" is turned off (I did not want to specify the page name as it could change over time) - so I added "^inline off" in front of every ^page. Finally it was removing unecessary field references so the log file would be clean.<br /><br />For those that are interested, the following is an example of my final file. <br /><br />^global nameA<br />data<br />^global nameB<br />data<br />^form nameX<br />^field name1<br />data<br />^field name2<br />data<br />^form nameY<br />^field name1<br />data<br />^field name3<br />data<br />^inline off<br />^page<br />^field name4<br />data<br />^field name1<br />^inline off<br />^page<br />^field name5<br />data<br />^field name6<br />data

  • Making a Form as Modal Form

    Dear All,
    Please let me know how can I make a form as Modal Form ?
    Regards,
    Noor hussain

    Hi Noor,
    I think there are two possible design.
    The modal form can be mobal for the application or for a parent form.
    If you want an application modal form, you simply need to test all the events coming from a form different from the modal one and interrupts the event coming from the other forms.
    In the ItemEvent Handler you can write:
    If Not (FormUID = "YourModalFormUID") Then
        oModalForm.Select() ' oModalForm contains the reference to your Modal Form
        BubbleEvent = False ' Interrupts the events chain
    End If
    In the code above, if an event comes from a different forms, simply select the modal form and interrups the events chain
    If you would make a form modal for a parent form, you simply need to test if the event comes from the parent form:
    If FormUID = "MyParentFormUID" Then
        oModalForm.Select()
        BubbleEvent = False
    End If
    Hope this helps
    Carmine
    Edited by: Carmine Cairo on Feb 19, 2010 5:20 PM

  • Hyperion Financial reporting - edit data mode?

    Does anyone know if you can edit data in a cell in a financial reporting report - displayed in HTML view?  Source is regular block storage essbase.  version 11.1.2.3.  I can't seem to get it to work.  Maybe there is a setting in some properties file I need to turn on.  I am connecting as olap db administrator and don't have any security filters in place assuming admin has write access to the whole thing.  It works in Smart-View (I can submit data) but not in FR.
    Thanks - Tuco

    Financial Reporting is a tool for data retrieval, not for submitting/updating data in Essbase.  The alternative to Smart View for entering data into a BSO cube (such as Hyperion Planning) would be a Web Form.  Are you trying to setup a Web Form to enter data in to Planning?
    Link to the FR users guide:
    http://docs.oracle.com/cd/E10530_01/doc/epm.931/fr_user.pdf

  • How to save edited data Workbook in Excel Web Access web part?

    Hello All, I have one Workbook which is displayed on Excel Web Access web part in SharePoint 2013. If I edit data in workbook it is not getting saved. Am i missing anything here? please help.
    Thanks

    Hi,
    We can click “OPEN IN EXCEL” to open and save the Excel file, then the edited data will be saved.
    If you display a chart in Excel, we can create a InfoPath form to edit the excel Workbook, here is a blog for your reference:
    http://go.limeleap.com/community/bid/295022/How-to-Edit-an-Excel-Workbook-Using-an-InfoPath-Form-in-SharePoint
    More information:
    http://office.microsoft.com/en-us/sharepoint-server-help/introduction-to-excel-web-access-web-part-HA010377880.aspx
    http://office.microsoft.com/en-001/sharepoint-server-help/excel-web-access-web-part-summary-HA010105454.aspx
    Best Regards
    Dennis Guo
    TechNet Community Support

Maybe you are looking for