Dynamic embedding of view in used component

Hi All,
I have a scenario were i have to provide print functionality to all the views of an existing web dynpro component. This component has around 20 views. I have developed a new component for the print functionality were i am using BSP to fire the CTRL+P function.
But the problem is how do i get the view at runtime in my print component.....?
I tried passing the view controller reference to the print component through context binding, but i am unable to embed the view through the reference in to the print component view container element.
Is there any way i can acheive this....???
Any help will be appreciated..!
Regards,
Runal

hi Runal ,
have a look at this video presntation for dynamic embedding of views :
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/media/uuid/5cb731e7-0b01-0010-1792-fbe5f55e39d2
or
I wud suggest u to procced like this :
1 In design time , insert all ur views inside ur tansparent container
2 * initially set all ur view to invisible* , for this :
Re: Making UI elements visible at runtime based on events.
a) make a context attribute of type WDUI_VISIBILITY
b) bind this attribute wid ur view
c) set the view to invisible by setting the context attribute to '01' using set_attribute method
   DATA lo_nd_cn_visiblesuper TYPE REF TO if_wd_context_node.
    DATA lo_el_cn_visiblesuper TYPE REF TO if_wd_context_element.
    DATA ls_cn_visiblesuper TYPE wd_this->element_cn_visiblesuper.
    DATA lv_ca_visible LIKE ls_cn_visiblesuper-ca_visible.
*   navigate from <CONTEXT> to <CN_VISIBLESUPER> via lead selection
    lo_nd_cn_visiblesuper = wd_context->get_child_node( name = wd_this->wdctx_cn_visiblesuper ).
*   get element via lead selection
    lo_el_cn_visiblesuper = lo_nd_cn_visiblesuper->get_element(  ).
*   get single attribute
    lo_el_cn_visiblesuper->set_attribute(
      EXPORTING
        name =  `CA_VISIBLE`
        value = '01').
// context attribute CA_VISIBLE under node cn_visible set to invisible
3 nw based pn ur condition , whn u wanted to do dynamic embedding , at tht time make ur view visible inside ur appropriate method
this wud do
rgds,
amit

Similar Messages

  • How to call specific view of used component

    Hi All,
    I have the following problem:
    I have component 1 which have two views: 1A and 1B. They are included in one window. Default view is 1A.
      Navigation between view 1A and 1B it made with buttons and plugs ("go to 1A", "go to 1B").
    I have main component 2 which uses component 1 (used component). Component 2 has view 2A and 2B. I have button "Z" in view 2A which calls method of component 1 and navigates to view 2B (where used component 1 is embedded).
    First time I press button I navigate to view 1A, its correct. Then I navigate to view 1B (within used component 1).
    when I go back (in main component 2) and press button "Z" again, the used component 1 is open with view 1B, not 1A (which is default). That is, used component 1 remember which view the navigation stayed on.
    I nee to always see view 1A first when I navigate with button "Z" (open used component).
    How I can do that?

    hi ,
    u must be using component usage ..
    in ur component2 , place the view 1B of ur used component in separate window
    pls refer this thread as well :
    How to call a Particular View from a View of Current Component
    regards,
    amit

  • Issues in persisting dynamic entity and view objects using MDS

    Hi All,
    I'm trying to create dynamic entity and view objects per user session and to persist these objects throughout the session, I'm trying to use MDS configurations(either file or Database) in adf-config.xml.
    I'm facing following two errors while trying to run the app module:
    1. MDS error (MetadataNotFoundException): MDS-00013: no metadata found for metadata object "/model/DynamicEntityGenModuleOperations.xml"
    2. oracle.mds.exception.ReadOnlyStoreException: MDS-01273: The operation on the resource /sessiondef/dynamic/DynamicDeptEntityDef.xml failed because source metadata store mapped to the namespace / DEFAULT is read only.
    I've gone through the following links which talks about the cause of the issue, but still can't figure out the issue in the code or the config file. Please help if, someone has faced a similar issue.
    [http://docs.oracle.com/cd/E28271_01/doc.1111/e25450/mds_trouble.htm#BABIAGBG |http://docs.oracle.com/cd/E28271_01/doc.1111/e25450/mds_trouble.htm#BABIAGBG ]
    [http://docs.oracle.com/cd/E16162_01/core.1112/e22506/chapter_mds_messages.htm|http://docs.oracle.com/cd/E16162_01/core.1112/e22506/chapter_mds_messages.htm]
    Attached is the code for dynamic entity/view object generation and corresponding adf-config.xml used.
    ///////////App Module Implementation Class/////////////////////////
    public class DynamicEntityGenModuleImpl extends ApplicationModuleImpl implements DynamicEntityGenModule {
    private static final String DYNAMIC_DETP_VO_INSTANCE = "DynamicDeptVO";
    * This is the default constructor (do not remove).
    public DynamicEntityGenModuleImpl() {
    public ViewObjectImpl getDepartmentsView1() {
    return (ViewObjectImpl) findViewObject("DynamicDeptVO");
    public void buildDynamicDeptComp() {
    ViewObject internalDynamicVO = findViewObject(DYNAMIC_DETP_VO_INSTANCE);
    if (internalDynamicVO != null) {
    System.out.println("OK VO exists, return Defn- " + internalDynamicVO.getDefFullName());
    return;
    EntityDefImpl deptEntDef = buildDeptEntitySessionDef();
    ViewDefImpl viewDef = buildDeptViewSessionDef(deptEntDef);
    addViewToPdefApplicationModule(viewDef);
    private EntityDefImpl buildDeptEntitySessionDef() {
    try {
    EntityDefImpl entDef = new EntityDefImpl(oracle.jbo.server.EntityDefImpl.DEF_SCOPE_SESSION, "DynamicDeptEntityDef");
    entDef.setFullName(entDef.getBasePackage() + ".dynamic." + entDef.getName());
    entDef.setName(entDef.getName());
    System.out.println("Application Module Path name: " + getDefFullName());
    System.out.println("EntDef :" + entDef.getFileName() + " : " + entDef.getBasePackage() + ".dynamic." + entDef.getName());
    entDef.setAliasName(entDef.getName());
    entDef.setSource("DEPT");
    entDef.setSourceType("table");
    entDef.addAttribute("ID", "ID", Integer.class, true, false, true);
    entDef.addAttribute("Name", "NAME", String.class, false, false, true);
    entDef.addAttribute("Location", "LOCATION", Integer.class, false, false, true);
    entDef.resolveDefObject();
    entDef.registerSessionDefObject();
    entDef.writeXMLContents();
    entDef.saveXMLContents();
    return entDef;
    } catch (Exception ex) {
    System.out.println(ex.getLocalizedMessage());
    return null;
    private ViewDefImpl buildDeptViewSessionDef(EntityDefImpl entityDef) {
    try {
    ViewDefImpl viewDef = new oracle.jbo.server.ViewDefImpl(oracle.jbo.server.ViewDefImpl.DEF_SCOPE_SESSION, "DynamicDeptViewDef");
    viewDef.setFullName(viewDef.getBasePackage() + ".dynamic." + viewDef.getName());
    System.out.println("ViewDef :" + viewDef.getFileName());
    viewDef.setUseGlueCode(false);
    viewDef.setIterMode(RowIterator.ITER_MODE_LAST_PAGE_FULL);
    viewDef.setBindingStyle(SQLBuilder.BINDING_STYLE_ORACLE_NAME);
    viewDef.setSelectClauseFlags(ViewDefImpl.CLAUSE_GENERATE_RT);
    viewDef.setFromClauseFlags(ViewDefImpl.CLAUSE_GENERATE_RT);
    viewDef.addEntityUsage("DynamicDeptUsage", entityDef.getFullName(), false, false);
    viewDef.addAllEntityAttributes("DynamicDeptUsage");
    viewDef.resolveDefObject();
    viewDef.registerSessionDefObject();
    viewDef.writeXMLContents();
    viewDef.saveXMLContents();
    return viewDef;
    } catch (Exception ex) {
    System.out.println(ex.getLocalizedMessage());
    return null;
    private void addViewToPdefApplicationModule(ViewDefImpl viewDef) {
    oracle.jbo.server.PDefApplicationModule pDefAM = oracle.jbo.server.PDefApplicationModule.findDefObject(getDefFullName());
    if (pDefAM == null) {
    pDefAM = new oracle.jbo.server.PDefApplicationModule();
    pDefAM.setFullName(getDefFullName());
    pDefAM.setEditable(true);
    pDefAM.createViewObject(DYNAMIC_DETP_VO_INSTANCE, viewDef.getFullName());
    pDefAM.applyPersonalization(this);
    pDefAM.writeXMLContents();
    pDefAM.saveXMLContents();
    ////////adf-config.xml//////////////////////
    <?xml version="1.0" encoding="windows-1252" ?>
    <adf-config xmlns="http://xmlns.oracle.com/adf/config" xmlns:config="http://xmlns.oracle.com/bc4j/configuration" xmlns:adf="http://xmlns.oracle.com/adf/config/properties"
    xmlns:sec="http://xmlns.oracle.com/adf/security/config">
    <adf-adfm-config xmlns="http://xmlns.oracle.com/adfm/config">
    <defaults useBindVarsForViewCriteriaLiterals="true"/>
    <startup>
    <amconfig-overrides>
    <config:Database jbo.locking.mode="optimistic"/>
    </amconfig-overrides>
    </startup>
    </adf-adfm-config>
    <adf:adf-properties-child xmlns="http://xmlns.oracle.com/adf/config/properties">
    <adf-property name="adfAppUID" value="TestDynamicEC-8827"/>
    </adf:adf-properties-child>
    <sec:adf-security-child xmlns="http://xmlns.oracle.com/adf/security/config">
    <CredentialStoreContext credentialStoreClass="oracle.adf.share.security.providers.jps.CSFCredentialStore" credentialStoreLocation="../../src/META-INF/jps-config.xml"/>
    </sec:adf-security-child>
    <persistence-config>
    <metadata-namespaces>
    <namespace metadata-store-usage="mdsRepos" path="/sessiondef/"/>
    <namespace path="/model/" metadata-store-usage="mdsRepos"/>
    </metadata-namespaces>
    <metadata-store-usages>
    <metadata-store-usage default-cust-store="true" deploy-target="true" id="mdsRepos">
    <metadata-store class-name="oracle.mds.persistence.stores.file.FileMetadataStore">
    <property name="metadata-path" value="/tmp"/>
    <!-- <metadata-store class-name="oracle.mds.persistence.stores.db.DBMetadataStore">
    <property name="jndi-datasource" value="jdbc/TestDynamicEC"/>
    <property name="repository-name" value="TestDynamicEC"/>
    <property name="jdbc-userid" value="adfmay28"/>
    <property name="jdbc-password" value="adfmay28"/>
    <property name="jdbc-url" value="jdbc:oracle:thin:@localhost:1521:XE"/>-->
    </metadata-store>
    </metadata-store-usage>
    </metadata-store-usages>
    </persistence-config>
    </adf-config>
    //////////////////////////////////////////////////////////////////////////////////////////////////////////

    Hi Frank,
    I m trying to save entity and view object xml by calling writeXMLContents() and saveXMLContents() so that these objects can be retrieved using the xmls later on.
    These methods internally use MDS configuration in adf-config.xml, which is creating the issue.
    Please share your thoughts on resolving this or if, there is any other way of creating dynamic entity/view objects for db tables created at runtime.
    Nik

  • Select-options are not destroyed while calling view of used component popup

    Hi Friends ,
    I'm facing a unique problem. I'm calling a view of a component within another component. the view that I'm calling has some select-options. When I close the popup window ( using close 'X' of popup ) and then try to reopen the popup system give me a dump. I debugged and found that select-options are not destroyed by system and once it tries to create the select-options again it dumps because they are already there.  
    This is the source code extract of that dump for your reference .
    1 method if_wd_select_options~add_selection_field.
    2
    3   data:
    4     lr_table_descr       type ref to cl_abap_tabledescr,
    5     lr_struct_descr      type ref to cl_abap_structdescr,
    6     lr_value_field_descr type ref to cl_abap_elemdescr,
    7     added_field          like line of mt_added_fields,
    8     dfies                type dfies,
    9     description          type string,
    10     complex_restrictions type if_wd_select_options=>t_complex_restrictions.
    11
    12   field-symbols:
    13     <it_result> type index table.
    14
    15 * check of someone wants to add a field that already exists
    16   read table mt_fields
    17        with key m_id = i_id
    18        transporting no fields.
    19   if sy-subrc = 0.
    20 *   might be deleted - recreating a field with different setting is of course allowed
    21     read table mt_all_removed_fields
    22          with key table_line = i_id
    23          transporting no fields.
    24     if sy-subrc <> 0.
    >>>       message x000(00).
    26     endif.
    27
    28 *   remove the existing field in order to avoid duplicates
    29     delete table mt_fields with table key m_id = i_id.
    30   endif.
    I've already tried using REMOVE_ALL_SEL_SCREEN_ITEMS( ) method of interface IF_WD_SELECT_OPTIONS before creating new elements ( select-options ). If any one can help me in this It would really help and I'll appreciate it.
    Thanks in advance,
    Laeeq

    I've sloved the problem

  • Calling a View in Used Component

    Hi,
    I want to call View2 when user clicks a button on View1. Screen should refresh and show View2 when user clicks the button on View1.
    View1 is in Component1 from View2 is in Component2.
    Did the following
    1) Declared Component2 Usage In Component1.
    2) Declared an event in the Interface Controller of Component2
    3) Declared usage of Interface Controller of Component2 in the View1 of Component1
    4) Raised an event from the Interface Controller of Component2 based on an action in View1
    Now based on this event I want to load View2 in Component2. The View2 is Interface View of Component2 visible in Component1.
    a) My question is where should I declare a Event Handler for Subscribing the event raised in Component1?
    b) Even after subscribing to this event, how do I load View2
    (I don't want to define a navigation link from View1 to Interface View(View2) at design time, due to design constraints)
    I think I need to call the default plug of Interface View (View2) but how?
    Thanks

    Hi
      Well you can create a External Interface View.
    In addition to the steps you have done ie.
    1) Declared Component2 Usage In Component1.
    2) Declared usage of Interface Controller of Component2 in the View1 of Component1.
    3.Define a used webdynpro component of component2 in component1
    After you have defined the component 2 in component1 go to the Window Navigation modeler in component1.
    One of the options while you embed a view is
    "Embed external interface view. " (this is used for linking views from other components using plugs)
    You will get a window for selecting the Window interface view of component2. When you select that and say ok you would get the view2 of component2 in the diagram view with a inbound plug.
    Now create a outbound plug in Component1 View1 and then link this to the component2 view2 inbound plug.
    Now you can fire the plug on some action when required. That should do the trick.
    Hope that helps you.
    regards
    Ravi

  • Dynamic embedding of DTD in DOM

    Hi
    I am parsing the below XML which is uploaded by the user.
    <?xml version="1.0"?>
    <carList  name=””>
    <car>
    <name/>
    <model/>
    <cost/>
    </car>
    </carList> Similarly user can upload even truck.xml or flight.xml, which are having seprate DTDs for validation.
    I have a DTD to validate the XML file provided by the user. But I dont want the user to know about this validation and DOCTYPE element will not be available in XML file
    ( <!DOCTYPE car SYSTEM "someurl/car.dtd"> ).
    DOM provides option only to enable validating (setValidating(boolean). But, Is it possible to set the DTD file too dynamically ???

    hi Runal ,
    have a look at this video presntation for dynamic embedding of views :
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/media/uuid/5cb731e7-0b01-0010-1792-fbe5f55e39d2
    or
    I wud suggest u to procced like this :
    1 In design time , insert all ur views inside ur tansparent container
    2 * initially set all ur view to invisible* , for this :
    Re: Making UI elements visible at runtime based on events.
    a) make a context attribute of type WDUI_VISIBILITY
    b) bind this attribute wid ur view
    c) set the view to invisible by setting the context attribute to '01' using set_attribute method
       DATA lo_nd_cn_visiblesuper TYPE REF TO if_wd_context_node.
        DATA lo_el_cn_visiblesuper TYPE REF TO if_wd_context_element.
        DATA ls_cn_visiblesuper TYPE wd_this->element_cn_visiblesuper.
        DATA lv_ca_visible LIKE ls_cn_visiblesuper-ca_visible.
    *   navigate from <CONTEXT> to <CN_VISIBLESUPER> via lead selection
        lo_nd_cn_visiblesuper = wd_context->get_child_node( name = wd_this->wdctx_cn_visiblesuper ).
    *   get element via lead selection
        lo_el_cn_visiblesuper = lo_nd_cn_visiblesuper->get_element(  ).
    *   get single attribute
        lo_el_cn_visiblesuper->set_attribute(
          EXPORTING
            name =  `CA_VISIBLE`
            value = '01').
    // context attribute CA_VISIBLE under node cn_visible set to invisible
    3 nw based pn ur condition , whn u wanted to do dynamic embedding , at tht time make ur view visible inside ur appropriate method
    this wud do
    rgds,
    amit

  • WDA Embedding a view dynamically on an other view

    Hi gurus,
    I'm developing my first serious wda application, it has several views (esp_view1...10) that must be embedded at runtime on a view (com_view) on the main window, that has embedded at design time two views: com_view and an other (not relevant for my question).
    I have defined a global variable in the controller esp_view type string that (depending on certain conditions) contains the name (esp_view1...10) that I want to embed on com_view.
    I've readed several threads in the forum, several manuals that show how embed views dynamically on a window (not on an other view), and after seeing several samples I've tried using do_dynamic_navigation, but I'm incapable to do it (may be I don't understand still component usages??).
    There is something that I'm forgetting??
    Thanks in advance,
    Alejandra

    hi,
    You can proceed this way :
    1. Make 10 ViewContainter in your view_common i.e Place ViewContaier UI element in your common view.
    2. Embed those views (V1-- V10) into these containers. For that Go to Windows, and inside windows you will find your View Containers. Drag and Drop your views under your component into the Windows.
    3. Now make Outbound plugs in your Views(V1-- V10) and 10diff Inbound plugs in your Common View.
    4.Create navigation link between outbound n inbound views.
    5. For that , Go to windows and drag n drop outbound plug to inbound plug.
    6.Now at run time you can fire the outbound plug of any View(V1--V10) whichever you want.
    7. For firing a plug , you can use Code Wizard(control + F7).
    Depending on your condition , fire plug using :
      wd_this->fire_out_view1_plg( ).     here out_view1 is outbound plug of View1.
    I hope it helps.
    Edited by: Saurav Mago on Apr 23, 2009 3:09 PM

  • To access a dynamic context node defined in a Used Component

    Hi Gurus,
    I need your help with something.
    I have a dynamic context node in ComponentA. I want it in Component B too.
    Component B uses Component A, but I am not able to get access to the context node.
    Is it possible to do this? Any suggestions how to proceed.
    PS: I am trying to do a dynamic mapping. The initial scenario was here, Set data into Model Node on Navigating from a View
    Thanks in advance,
    Anjana R.
    Message was edited by:
            Anjana Raghav

    Hi Gurus,
    Its working now. Earlier, the code was something like this....
    IWDNodeInfo compNode = wdThis.wdGet<i>Comp</i>Interface().wdGetAPI().getContext().getRootNodeInfo().getChild(nodeNm);
    viewNodeInfo.setMapping(compNode,true);
    and was trying to map it using
    iewNodeInfo.addMappedAttribute("order",".<i>Comp</i>."+ nodeNm + ".order");     
    Now, I am mapping like this.
    viewNodeInfo.addMappedAttribute("order","order");
    Thanks,
    Anjana R.

  • View of one component need to be used in another component.

    Hi Experts,
    I have created a view in component  BP_DATA . I want to use this view in component "BP_HEAD". Can anyone please help me with the steps needed to make the view available in  BP_DATA. Do i need to do any type of binding for this.

    Hello Ansal,
    For using BP_DATA/yourview in component BP_HEAD, first you will have to expose BP_DATA view in component interface. Then you can access that view in BP_HEAD by creating component usage. Once you add the view of BP_DATA in component usage of BP_HEAD, it will be available as a normal view in this component.
    -Regards

  • Viewing videos, photos etc on Tv using component AV

    When I connect my iPad to my TV using a (5 pin) Component cable, I can get audio but no pictures. Help

    What are you trying to view via the component output? If I recall, the component output does not mirror the iPads' screen. It only works natively with Keynote and a few other Apple apps. However, there are some Browser apps that display a browser and there are some apps (I think Goodreader is on) that project all their files.

  • Using only 1 view from a component ( usage )

    hi experts..
    I have a component C1 with 7 views...
    I have another componet C2 in ehich i want to use only 1 view of the component C1 rather than the entire component...
    How can i do that...
    jagruti

    Hi again.
    can u make it more simpler sascha..
    In the component controlelr of C1 create en event
    (mark as interface).
    Steps below r not clear.....
    Then in the actíon handler method of C1 fire this
    event.
    The action handler method assigned to the back button in the view you want to use in C2. Here you can use the wizzard to fire the event in the component controller. There should be a fire_... method in the component controller now.
    In the controller of view in C2 which contains the
    ViewUiContainerElement create an event handler method
    for the event of C1. In this handler you fire an
    outbound of the view which navigates to another view
    in C2.
    this is described in the above mention thread. In C2 you created a viuew with the ViewUiContainerElement which embedds the view with the back button of C1.
    Go to the attrib utes tab of this view and add the usage of C1 here.
    Then go to the methods tab of this view and create a method handleBackEvent and choose event handler. In the event columen make a F4 and select the event of the component usage C1. Hit enter.
    Create an outbound plug in this view which should be use to navigate to the view in C2 you want. Then go to the event handler method just created and fire the outbound plug.
    Do not forget to connect the outbound to the inbound of the view you want to navigate to.
    sorry for bugging u..
    No prob.
    jagruti..
    Cheers,
    Sascha
    Message was edited by:
            Sascha Dingeldey

  • WDA Component Usage - used component's point of view

    Hi folks!
    Component Usage is a real nice feature of WDA. The using component knows exactly, when which other components are used.
    But what about the used component's point of view:
    How can a used component find out if it is currently running natively or as a used component and who is the using component?
    Alternatively: How can the using component hand over initialization information (parameter) to the used component the used component has access to in component controller method DOINIT?
    Background: In my scenario the used component has to "turn right" when it is used by component A and it has to "turn left" when it is used by component B and it has to go straight forward when it is running in "native" mode..
    Thanx in advance for any hint!
    Kind Regards,
    Volker

    hI Volker  
        You can implement the component usage by implementing interface method or interface node.
    1. Interface method :-
       Here the using component can access methods of used component.
    So in your used component you have three method for 1. TURN RIGHT 2. TURN LEFT 3. STRAIGHT
    so from comp A you call  TURN RIGHT
    From component B you can call TURN LEFT.
    Make Straight default which can run in  "native" mode..
    That is if you want to implement from using component's view.
    2.You can take a node in your used component as interface node which must be populated by values from other component.
    From your using component you can pass the required value .
    Now in your used componentcontroller DOINIT method call that interface node and in the make some condition according to the value it get from using component.
    But I don't think in this it can run in "native" mode.
    However i dont have that much idea about whether the in used component we can keep any log like where it has been used and how.
    Thanks & Regards,
    Monishankar C

  • Set viewset dynamically as standard view in a window

    Hello collegues,
    I want to Display a certain view ("view 1") in an overview page of another component.
    "View 1" is in "Viewset 1".
    "Window 1" has two viewsets:
    "Viewset 2", marked as Standard.
    "Viewset 1", not marked as Standard.
    "Window 1" is in the component Interface aso.
    When I add "Window 1" to the overview page of my component, then "Viewset 2" is shown, not "Viewset 1".
    How can I set "Viewset 1" dynamically as Standard view in "Window 1" so that "View 1" is shown in my overview page?
    Best regards,
    Thomas

    hi,
    In Overview page IMPL Claz you will find the method " DETACH_STATIC_OVW_VIEWS ".
    redefine that method and use the following piece of code,
    mt_detached_views of type BSP_DLC_OVW_STAT_VIEW_ATTACH_T declare as a Global variable in IMPL claz
      DATA:it_svs TYPE bsp_dlc_ovw_dyn_views_list_t,
           wa_svs TYPE bsp_dlc_ovw_dyn_views_list,
           wa_det TYPE bsp_dlc_ovw_stat_view_attach.
    */ Getting the list of Views of a OV page....
      it_svs = me->get_list_of_static_views( ).
      READ TABLE it_svs INTO wa_svs WITH KEY viewid = 'VIEWSET2'.
      wa_det-viewid = wa_svs-viewid.
      APPEND wa_det TO mt_detached_views.
      CLEAR wa_det.
      rt_viewid = mt_detached_views.
    hope this might be helpful,
    Regard's
    Vam's....

  • How to close a pop up window of used component ( usage defined )

    Hi Friends ,
    I'm calling a window as a pop up of used component ( Usage defined ). I want to close that pop up using a button on the embedded view of that window.
    it would be great help If any one can help me in this.
    Regards,
    Laeeq

    >
    Laeeq Siddique wrote:
    > Hi Silke ,
    >
    > I Want to close a pop up using a botton on embedded view of window of used component and I do not have the refrence of window object there. I know what you are talking about but its not that simple.
    >
    > Regards,
    > Laeeq
    Actually it is pretty simple.  From the embedded view you can use the APIs to get access to the hosting window object.
    data l_api_v_new_attachment type ref to if_wd_view_controller.
      l_api_v_new_attachment = wd_this->wd_get_api( ).
      data window_controller type ref to if_wd_window_controller.
      window_controller = l_api_v_new_attachment->get_embedding_window_ctlr( ).
      data window type ref to if_wd_window.
      window = window_controller->get_window( ).
      window->close( ).

  • How to dynamically choose which view to display in second step

    Hi Guys,
    I am just started to evaluate fpm to decide whether to use it in our project. So i have question that might be very simple to you all, that i hope you all can help me with.
    Say i want to use the fpm GAF with a single webdynpro component. I have 3 steps, first step display a dropdown list for user to choose, second step will be a view that will depend on user input on the first step and 3rd step just a confirmation screen.
    I plan to use UIBB for all the screen, not using the GUIBB. So i will need to dynamically decide which view to show on step 2, and since we don't call navigation plug when we use fpm, what is the best way to archive this? How do i design my webdynpro component and the fpm configuration etc...?
    I read from the programming guide about initial screen and variant. But what if my application doesn't need an initial screen and the user choosing step is not at the first step, I can't use variant in this case right?
    thanks.

    Hi
    You can give the dropdown on initial screen and than u can decide which screen  to show on the second (or infact that will we the first step you you have first step as a initial screen.
    How?? :
    1. Create different varients for the second step.
    2. Basis on the Value choosen in the dropdown list, select the appropriate varient using the following code.
      TRY.
            CALL METHOD io_gaf->set_variant
              EXPORTING
                iv_variant_id = 'VAR_CLIENT'.
          CATCH cx_fpm_floorplan .
        ENDTRY.     
    where  VAR_CLIENT  is your varient.
    Hope this will help you.
    Thanks & Regards,
    Arvind

Maybe you are looking for

  • How to aware a DN that has been copied to AR draft

    Dear all, When they copy a DN to an A/R, the DN is still open and the system will allow us to copy it to another A/R draft. I know if we add one A/R, the others include that DN the system will not allow us to add it. The problem is, sometimes they ha

  • Performance issue with view selection after migration from oracle to MaxDb

    Hello, After the migration from oracle to MaxDb we have serious performance issues with a lot of our tableview selections. Does anybody know about this problem and how to solve it ?? Best regards !!! Gert-Jan

  • Web AS 640 Sneak preview Installation fails

    Hello All, I recieve an Error while installing WAS 640. I downloaded the file WAS installer  , Extracted it and as described started the sapinst.exe Installation starts but when it reaches Second step that is "SAP System Installation"  it fails with

  • New CS2 Premium spanish--switch to English?

    I have a older CS2 Premium new in the box...spanish version. Is there anyway to 'switch' it to English as it installs? Or how would I upgrade to an English version? Thanks....

  • Site views differently on Remote Site

    Using DW CS4 Ok, fairly new to DW as you will see... All images/scripts etc... have paths to my local folders with those files but when I publish it to the remote site, I view the source code and the paths still show the local path i.e. C:\Document &