How to populate a context node on the basis of the values in another node?

Hi,
I have a Webdynpro application which has to run on Portal as well as BlackBerry.
In this application I have a scenario where I need to have a sub node inside a node but as Blackberry doesn't support sub nodes with Singleton value false, I have to use another node for storing the values which earlier wre present in the sub node.
The actual scenario here is that we have two tables A & B. For each row of table A we have a no of rows in table B. This can be easily accomplished for Web Browser but we need to do this for Blackberry.
My question here is that how can i populate the data in table B at runtime using the concept of onLeadSelect. I am not able to fully undersans this concept.
According to my approach I have two a while loop which generates data for  table A and inside this while loop I have another while which generates data for table B corresponding to each iteration of the outer while loop. I create the node elements for the rows of the table B and store them in a list and then store this list in a HashMap corresponding to a key formed by combining the values of all the elements of the row of table A.
Now I am not able to understand how can I display this data into table on user slecting a particular row.
Please guide ASAP.
It wille quite useful if you can provide me with some code snippets for the same.
Thanks in advance!
Manish

Hi Manish,
         In WebDynpro u can use the onLeadSelect event of table A and do all the processing in that method.Like u can use this method to fill ur context node,which will be the source node for table B. So this way u need not to use any hash map.Fill the source node of table B with data corresponding to ur selected data of table A.
  I hope this solution wud help u in solving ur problem.
Reena

Similar Messages

  • How to check radio button as default on the basis of database value?

    Hi Friends,
    I have one jsp, in which I am having a field of radio button, which have two boolean values of 0 & 1. I want to check the radio button as default on the basis of database value, kindly help me out.
    Thanks a lot in advance. Please help me out.

    probably, when using struts you should do all your calculations in action class it self
    Eg. in jsp
    <html:radio name="myForm" property="myProperty" value="0">0</html:radio>
    <html:radio name="myForm" property="myProperty" value="1">1</html:radio>
    in Action class
    if (databaseValue == 0)myForm.setMyProperty(0);
    else if (databaseValue == 1)myForm.setMyProperty(1);
    rest will follow
    whatever be the value it will come selected

  • How to skip a train step on the basis of field value set by the user

    Hi,
    I am working with JDev 11.1.1.2.0 and ADF 11g.
    I am using Taskflow with train steps. I have a requirement that, say, in 1st step I am showing a screen with many fields.
    One such field is a dropdown. On the basis of the selected value of the drop down I want to skip say steps 2 and 3 and jump to step 4. When on step 4 if user click 'back' then it should go back to step 1 rather than 3.
    Can this be achieved? If so can anyone pls share a small sample OR send a link?
    Thanks in advance.

    Here a task flow with the skip properties used to evaluate a value that was selected in a lov components in the first page (radio button). Note the use of the attributeValue method to get the attribute from the binding (using inputValue caused a type mismatch when executing the comparison).
    <?xml version="1.0" encoding="windows-1252" ?>
    <adfc-config xmlns="http://xmlns.oracle.com/adf/controller" version="1.2">
      <task-flow-definition id="task-flow-newFlexStandard-definition">
        <default-activity id="__1">CreateInsertStandardFlexParameter</default-activity>
        <transaction id="__41">
          <requires-transaction/>
        </transaction>
        <data-control-scope id="__42">
          <shared/>
        </data-control-scope>
        <task-flow-reentry id="__43">
          <reentry-allowed/>
        </task-flow-reentry>
        <view id="createNewStandardFlexParameter">
          <description id="__22">Saisir le code d'identification interne et les éléments descriptifs du nouveau paramètre standard.</description>
          <display-name id="__21">Edition du nouveau paramètre</display-name>
          <page>/pages/standardFlexParameter/createNewStandardFlexParameter.jsff</page>
          <train-stop id="__2">
            <display-name id="__19">Edition de nouveau paramètre standard</display-name>
          </train-stop>
        </view>
        <view id="selectSingleTreeFlexParameter">
          <page>/pages/standardFlexParameter/selectSingleTreeFlexParameter.jsff</page>
          <train-stop id="__17">
            <display-name id="__28">Classe de paramètres unique</display-name>
            <outcome id="__44">initializeFlexStandardTreeRow</outcome>
            <skip>#{bindings.FsClasscardinality.attributeValue !='1'}</skip>
          </train-stop>
        </view>
        <view id="selectMultipleTreeFlexParameter">
          <page>/pages/standardFlexParameter/selectMultipleTreeFlexParameter.jsff</page>
          <train-stop id="__18">
            <display-name id="__29">Classes de paramètres multiples</display-name>
            <skip>#{bindings.FsClasscardinality.attributeValue != '*'}</skip>
          </train-stop>
        </view>
        <view id="selectSingleFlexParameter">
          <page>/pages/standardFlexParameter/selectSingleFlexParameter.jsff</page>
          <train-stop id="__24">
            <display-name id="__27">Sélection d'une occurence de paramètre</display-name>
            <skip>#{bindings.FsItemcardinality.attributeValue !='1'}</skip>
          </train-stop>
        </view>
        <view id="selectMultipleFlexParameter">
          <page>/pages/standardFlexParameter/selectMultipleFlexParameter.jsff</page>
          <train-stop id="__25">
            <display-name id="__26">Sélection de plusieurs occurence de paramètre</display-name>
            <skip>#{bindings.FsItemcardinality.attributeValue !='*'}</skip>
          </train-stop>
        </view>
        <view id="summaryNewStandardFlexParameter">
          <description id="__4">Présentation des éléments saisis ou modifiés. Confirmation ou annulation de l'opération.</description>
          <display-name id="__3">Résumé des changements</display-name>
          <page>/pages/standardFlexParameter/summaryNewStandardFlexParameter.jsff</page>
          <train-stop id="__9">
            <display-name id="__23">Résumé des changements et confirmation</display-name>
          </train-stop>
        </view>
        <task-flow-return id="commitNewStandardFlexParameter">
          <outcome id="__10">
            <name>commitNewStandardFlexParameter</name>
            <commit/>
          </outcome>
        </task-flow-return>
        <task-flow-return id="rollbackNewStandardFlexParameter">
          <outcome id="__11">
            <name>rollbackNewStandardFlexParameter</name>
            <rollback/>
          </outcome>
        </task-flow-return>
        <method-call id="CreateInsertStandardFlexParameter">
          <method>#{bindings.CreateInsert.execute}</method>
          <outcome id="__48">
            <fixed-outcome>createInsert</fixed-outcome>
          </outcome>
        </method-call>
        <method-call id="createInsertFlexStandardTree">
          <method>#{bindings.CreateInsert.execute}</method>
          <outcome id="__32">
            <fixed-outcome>CreateInsert</fixed-outcome>
          </outcome>
        </method-call>
        <train/>
        <control-flow-rule id="__12">
          <from-activity-id id="__13">summaryNewStandardFlexParameter</from-activity-id>
          <control-flow-case id="__15">
            <from-outcome id="__16">commit</from-outcome>
            <to-activity-id id="__14">commitNewStandardFlexParameter</to-activity-id>
          </control-flow-case>
        </control-flow-rule>
        <control-flow-rule id="__49">
          <from-activity-id id="__50">CreateInsertStandardFlexParameter</from-activity-id>
          <control-flow-case id="__51">
            <from-outcome id="__53">createInsert</from-outcome>
            <to-activity-id id="__52">createNewStandardFlexParameter</to-activity-id>
          </control-flow-case>
        </control-flow-rule>
        <control-flow-rule id="__6">
          <from-activity-id id="__5">*</from-activity-id>
          <control-flow-case id="__7">
            <from-outcome id="__20">cancel</from-outcome>
            <to-activity-id id="__8">rollbackNewStandardFlexParameter</to-activity-id>
          </control-flow-case>
        </control-flow-rule>
        <control-flow-rule id="__30">
          <from-activity-id id="__31">*</from-activity-id>
          <control-flow-case id="__33">
            <from-outcome id="__35">initializeFlexStandardTreeRow</from-outcome>
            <to-activity-id id="__34">createInsertFlexStandardTree</to-activity-id>
          </control-flow-case>
        </control-flow-rule>
        <control-flow-rule id="__36">
          <from-activity-id id="__37">createInsertFlexStandardTree</from-activity-id>
          <control-flow-case id="__39">
            <from-outcome id="__40">CreateInsert</from-outcome>
            <to-activity-id id="__38">selectSingleTreeFlexParameter</to-activity-id>
          </control-flow-case>
        </control-flow-rule>
        <use-page-fragments/>
      </task-flow-definition>
    </adfc-config>

  • How do I find the dimensions of the bolt pattern for the base of the pc?

    I am looking for a swivel stand to support the touchsmart PC.  I would like the mechanical dimensions of  mounting holes on the base of the computer.

    Hello Eren:
                      Here is the manual link. http://h10032.www1.hp.com/ctg/Manual/c03401622.pdf  

    Wall-mounting your computer
    (select HP TouchSmart PC
    models only).
    Wall-Mounting your HP TouchSmart
    Tap
    Start, tap All Programs, and then tap User Guides.
    If the guide is not available there, visit www.hp.com/support  If you do not have this guide then contact HP Direct Support.
    Find ergonomic information.
    Safety & Comfort Guide
    Tap the
    Start button, tap All Programs, and then tap User Guides or visit
    www.hp.com/ergo.  This may help you. Thank you frrw

  • Particular data in a report, on the basis of the values (0, 1) of a dashboa

    hi
    User should be able to see the particular data in a report, on the basis of the values (0, 1) of a dashboard prompt.
    For e.g. if the user selects 0 then current years data should be filtered out
    and if the user selects 1 then rest all years data should be displayed in a request.
    give me hint regarding this question

    Hi,
    I hope this will help you
    http://oraclebizint.wordpress.com/2008/01/17/oracle-bi-101332-selecting-reports-from-dashboard-prompts-and-guided-navigation-sections/
    In this example he used prompt for selecting Region sales and Brand sales which you can replace with 0 and 1
    Phani.

  • What is setting for the depreciation calculate on the basis of assets value date

    Hi ,
    My client requirement to calculate the assets depreciation on the basis of assets value date,
    every assets transaction will have take base assets value date
    Acquision   1  Assets value date 1.4.2014
    transfer Assets value date 15.3.2014
    Wbs settlement  Assets value date 20 .3.2014
    second acquisition Assets value date 28.03.2014
    if anybody know about the setting ,Please provide me important setting ,

    Any setting related to assets posting variant ? to calculate if anybody know the setting please inform.

  • Need Reports  in decrreasing order on the basis of measure value

    Got ASO Cube (3 dimensions) and have some records on it.
    Product/Enity/Measure
    Prod1 ent1 678
    prod2 ent1 700
    prod3 ent1 500
    when i retrive reports ,
    Can i able to get a reports in the decreasing order on the basis of Measure values like below ? (using any code or scripts)
    Prod2 ent1 700
    Prod1 ent1 678
    prod3 ent1 500

    If you are using the classic addin or report scripts, you can get the values in decreasing order. To do it in the add-in you can either use freeform with a report script or better yet, use the query designer to create and save the report. IF you are using a report script, you can set a sort descending and also a top x to only bring back a certain number of members. I'm not sure if the same is available through smartview. Using MDX you can do a topcount function

  • HT1515 My internet 3rd party access point in in the basement and the speakers I want to stream music to wirelessly are upstairs. Does Airport Express need to be connected to my 3rd party router via ethernet cable or will it stream music wirelessly?

    My internet 3rd party access point in in the basement and the speakers I want to stream music to wirelessly are upstairs. Does Airport Express need to be connected to my 3rd party router via ethernet cable or will it stream music wirelessly?

    Wirelessly
    Just select the option to make your AirPort Express join an existing network in the setup process

  • HT204266 Why does only one headphone work when i listen to music? I have to hold the base of the cord in a certain position for it to work, it does this with all headphones i try, what do i do?

    Why does only one headphone work when i listen to music? I have to hold the base of the cord in a certain position for it to work, it does this with all headphones i try, what do i have to do?

    You can try cleaning the headphone jack. However, I suspect that th headphone jack needs replacement.
    Apple will only exchange your iPod for a refurbished one for this price.
    Apple - Support - iPod - Repair pricing
    A third-party place like the following is less expensive. Google for more places.
    iPhone Repair, Service & Parts: iPod Touch, iPad, MacBook Pro Screens

  • How to populate data in MPP through F4 search help(the field should get filtered as per key)

    Dear Experts.
    I am new to ABAP and hence trying jmy hands on various ways of peforming a task.
    I have a requirement. I want to maintain a database tables through MPP :  ZLT_Auftrag (Refer Screen Shot 1: Doubt MPP1) and ZLT_Kunde (Refer Screen Shot2: Doubt MPP2)
    The fields of ZLT_Kunde are: K1, K2, K3
    The fields of ZLT_Auftrag are: A1, A2, A3, A4, P1 P2 and P3 are related as per the key field "A3"   (Here A3 = K2)
    I want the User to be able to Maintain this table through the Screen that I had created using MPP. (Plz refer the attached Screen Shot3:Doubt MPP3  of the SCREEN in MPP)
    When I populate the Kunde name(K1) in the SCREEN (Can be done by F4 Search help), then on hitting the pushbutton "Get Kunde" the  kunde Code (K2) appears . Now from here it can be deleted or even a new Kunde name and code can be saved dirctly to the database table : ZLT_Kunde. (Refer Screen Shoot4: Doubt MPP4)
    For Example for Kunde (K1)= BASF, Kunde Code (K2) = BSF, the Auftrag should be all those values from ZLT_Auftrag (where A3 = BSF)
    When I try to populate the Auftrag value on the SCREEN then on hitting F4 (already created for table ZLT_Auftrag in se11) then I get all the values of Auftrag (A1) from the table ZLT_Auftrag. (Ply refer Screen Shot 5: Doubt MPP5)
    MY REQUIREMENT: Here I want that either through F4 help or through drop down ONLY those values of Auftrag-A1 should appear on the SCREEN which satisfies the condition: A3 = K2
    I am unbale to get how to do that.
    I need your valuable suggstions.
    Regards
    Chandan

    And the  code of the MPP is:
    *& Module Pool       SAPMZDEMO_MPOOL_03
    PROGRAM  SAPMZDEMO_MPOOL_03.
    TABLES:  ZLT_MITA, ZLT_Kunde, ZLT_Auftrag, Zlt_Stdsatz.
    DATA: flg_lock  TYPE c,
    *      indx  TYPE i,
    *      indxk TYPE i,
    *      indxa TYPE i,
    *      TCNT TYPE sy-tabix,
          lv_msgv1  TYPE  sy-msgv1.
    *DATA: it_mita    TYPE TABLE OF ZLT_mita,
    *      it_kunde   TYPE TABLE OF ZLT_KUNDE,
    *      it_auftrag TYPE TABLE OF ZLT_AUFTRAG.
    *&      Module  STATUS_9000  OUTPUT
    *       text
    module STATUS_9000 output.
      SET PF-STATUS 'ZSTATUS01'.
    *  SET TITLEBAR 'xxx'.
      If flg_lock is Not initial.
        LOOP at Screen.
      If screen-group1 = 'G1'.
      Screen-input = 0.
      MODIFY SCREEN.
           Endif.
        ENDLOOP.
          MESSAGE s000(8i) WITH 'Mitarbeiter already locked by user' lv_msgv1.
      ENDIF.
    endmodule.                 " STATUS_9000  OUTPUT
    *&      Module  USER_COMMAND_9000  INPUT
    *       text
    module USER_COMMAND_9000 input.
    *To Populate Data into Mitarbeiter through Pushbuttons
      CASE sy-ucomm.
        When 'OK_GET'.
          Clear : flg_lock.
            IF ZLT_MITA-M1 is NOT INITIAL.
                SELECT SINGLE *
                FROM  ZLT_MITA
                Where M1 = ZLT_MITA-M1.
    *To create a Lock Object so that when two or more employees are accessing the same data
    * at the same time then for the new user the data gets locked and only can been seen in
    *display mode
            IF sy-subrc = 0.
            CALL FUNCTION 'ENQUEUE_EZLT_MITALOCK'
             EXPORTING
               MODE_ZLT_MITA        = 'E'
               MANDT                = SY-MANDT
               M1                   = ZLT_MITA-M1
    *           X_M1                 = ' '
    *           _SCOPE               = '2'
    *           _WAIT                = ' '
    *           _COLLECT             = ' '
             EXCEPTIONS
               FOREIGN_LOCK         = 1
               SYSTEM_FAILURE       = 2
               OTHERS               = 3
            IF sy-subrc <> 0.
              flg_lock = 'X'.
              lv_msgv1 = sy-msgv1.
            ENDIF.
            ENDIF.
            ELSE.
                MESSAGE S000(8i) With 'Enter Mitarbeiter Name'.
            ENDIF.
        When 'OK_SAVE'.
           Modify ZLT_MITA.
           IF sy-subrc = 0.
             MESSAGE s000(8i) With 'Data Saved'.
           ENDIF.
        When 'OK_DELETE'.
            IF ZLT_MITA-M1 is NOT INITIAL.
                DELETE
                FROM  ZLT_MITA
                Where M1 = ZLT_MITA-M1.
              IF sy-subrc = 0.
                MESSAGE S000(8i) With 'Data deleted'.
              ENDIF.
            ENDIF.
    *     When 'OK_FIRST'.
    *           indx = 1.
    *     When 'OK_NEXT'.
    *           indx = indx + 1.
    *     When 'OK_PREV'.
    *           indx = indx - 1.
    *     When 'OK_LAST'.
    *           Describe Table it_mita lines indx.
    *To Populate Data into Kunde through Pushbuttons
        When 'OK_GETK'.
            IF ZLT_Kunde-K1 is NOT INITIAL.
                SELECT SINGLE *
                FROM  ZLT_Kunde
                Where K1 = ZLT_KUNDE-K1.
            ELSE.
                MESSAGE S000(8i) With 'Enter Kunde Name'.
            ENDIF.
        When 'OK_SAVEK'.
           Modify ZLT_Kunde.
           IF sy-subrc = 0.
             MESSAGE s000(8i) With 'Data Saved'.
           ENDIF.
        When 'OK_DELETEK'.
            IF ZLT_KUNDE-K1 is NOT INITIAL.
                DELETE
                FROM  ZLT_KUNDE
                Where K1 = ZLT_KUNDE-K1.
              IF sy-subrc = 0.
                MESSAGE S000(8i) With 'Data deleted'.
              ENDIF.
            ENDIF.
    *To Populate Data into Auftrag Through Pushbuttons
        When 'OK_GETA'.
            IF ZLT_KUnde-K2 is NOT INITIAL.
                SELECT SINGLE *
                FROM  ZLT_Auftrag
                Where A3 = ZLT_Kunde-K2.
            ELSE.
                MESSAGE S000(8i) With 'Enter Kunde Name'.
            ENDIF.
        When 'OK_SAVEA'.
           Modify ZLT_Auftrag.
           IF sy-subrc = 0.
             MESSAGE s000(8i) With 'Data Saved'.
           ENDIF.
        When 'OK_DELETEA'.
            IF ZLT_Auftrag-A1 is NOT INITIAL.
                DELETE
                FROM  ZLT_Auftrag
                Where A1 = ZLT_Auftrag-A1.
              IF sy-subrc = 0.
                MESSAGE S000(8i) With 'Data deleted'.
              ENDIF.
            ENDIF.
    *To Populate Data into Position Thorugh Pushbuttons
        When 'OK_GETP'.
            IF ZLT_Auftrag-A2 is NOT INITIAL.
                SELECT SINGLE *
                FROM  ZLT_Auftrag
                Where A3 = ZLT_Kunde-K2.
            ELSE.
                MESSAGE S000(8i) With 'Enter Kunde Name'.
            ENDIF.
        When 'OK_SAVEP'.
           Modify ZLT_Auftrag.
           IF sy-subrc = 0.
             MESSAGE s000(8i) With 'Data Saved'.
           ENDIF.
        When 'OK_DELETEP'.
            IF ZLT_Auftrag-A1 is NOT INITIAL.
                DELETE
                FROM  ZLT_Auftrag
                Where A1 = ZLT_Auftrag-A1.
              IF sy-subrc = 0.
                MESSAGE S000(8i) With 'Data deleted'.
              ENDIF.
            ENDIF.
        When 'OK_EXIT'.
           Leave Program.
        When 'OK_CLEAR'.
          Clear : ZLT_MITA, ZLT_KUNDE, ZLT_AUFTRAG.
    *              it_mita, it_kunde, it_auftrag,
          CALL FUNCTION 'DEQUEUE_EZLT_MITALOCK'
           EXPORTING
             MODE_ZLT_MITA       = 'E'
             MANDT               = SY-MANDT
             M1                  =  ZLT_MITA-M1
    *         X_M1                = ' '
    *         _SCOPE              = '3'
    *         _SYNCHRON           = ' '
    *         _COLLECT            = ' '
    ENDCASE.
    endmodule.                 " USER_COMMAND_9000  INPUT
    *&      Module  user_cmd_9000  INPUT
    *       text
    module user_cmd_9000 input.
      If sy-ucomm = 'OK_CANCEL'.
      LEAVE PROGRAM.
      ENDIF.
      IF sy-ucomm = 'OK_EXIT'.
          LEAVE PROGRAM.
      ENDIF.
    endmodule.                 " user_cmd_9000  INPUT

  • How to populate a filter field in one page with the value from other page

    Take the classic report with form application.
    on page 1 (report) I have a filter (dbname) for the records that will appear in the report. Say that, I enter "ap02" in the filter and all records where dbname starts with "ap02" will display. It works ok.
    Then I click on "create" button and page 2 appears. I enter all fields except the dbname. This field is generated, at "pre-insert trigger on the table".
    What I want is when I press the button "create" on page 2 to pass the value of the generated dbname field into the filter in page 1 so when that page refreshes I will have only one record on the report page (1). I understand that the dbname at the page 2 level still empty because it is generated by the trigger. How do I have access to that info to populate the filter.
    Thanks for your assistance

    Joe - Work backwards from the value generated during the execution of the trigger. You have the value there so you could save it into a package variable right then (create a package with a variable and assign the value to the variable). Then create a process on the page (after the DML process) to assign the value of your package variable to a page item. Then in the branch back to page 1, pass the item. (Or without messing with the branch, the process could simply assign the package variable directly the the page 1 item -- :P1_ITEM := my_package.my_var; ).
    An alternative would be to use the "returning into" feature of DML to capture the PK of the created record into an item. Then the next page process could use the PK to fetch the new row and get the dbname value for passing to page 1.
    Another option would be to update session state directly in the trigger.
    Scott

  • How to populate a set of fields multiple time in the page ?

    Hi All,
    JDev Ver : 11.1.1.5
    I have a requirement as follows,
    My page contains 1. Add Button
    2. Five fields.(one input text and four select one choice)
    The fields are like one input text and remaining select one choice. And also these fields contains validations.
    Actions
    On click of add button , I have to show the fields , similarly I have to add one more set of fields in the page below the first set when I click the add button, Like this I will add as many as I need.
    How to achieve this requirement,
    1. Do I need to generate the view objects dynamically from managed bean ?
    2. Do I need to create a custom component ?
    For Time being , I have added 3 set of fields pages and showing one by one. I want to do this dynamically.
    Please let me know the suggestion for this Requirement.
    Thanks,
    Gopinath

    Hi,
    to do this:
    1. reate a managed bean that exposes a HashMap property. The HashMap is of type e.g. Map<Person>
    2. To create a new set of fields, add a new entry to the HashMap and refresh the af:form. The af:form contains and af:forEach that you use
    to iterate as often as you have entries in the HashMap. Each text field you bind to #{bean.HashMapProperty['key'].attribute}, for example
    #{bean.HashMapProperty['key'].FirstName}
    #{bean.HashMapProperty['key'].LastName}
    #{bean.HashMapProperty['key'].EmployeeId}
    3. When the user updates a field, the HashMap is updated based on the "key"
    4. The managed bean should be in viewScope and referenced from the field's value property
    Frank

  • How to populate read only input field or text view form value help only

    Hi experts,
    I have one requirement to populate a read-only field or text view from value help.
    User cant put any value there.value comes only from the value help.
    For example,
    when we read context using Code Wizard,we cant type any value there.value only comes from value help.
    How to implement that functionality?
    Please reply.
    Thanks in advance,
    Subhasis.

    Yes it is possible.
    1.Create a context Attribute and then bind this attribute to the Text view UI element.
    2. read context attribute and then set value to the context attribute like this way.
    DATA:
        elem_context1                        TYPE REF TO if_wd_context_element,
        stru_context1                        TYPE if_first=>element_context ,
        item_potxt                          LIKE stru_context-potxt.
    get element via lead selection
      elem_context1 = wd_context->get_element(  ).
    stru_context1-potxt = 'PO'.
    elem_context1->set_attribute(
        VALUE  = stru_context1
        name   = 'POTXT'
    thanks
    Suman
    Edited by: suman kumar chinnam on Sep 9, 2008 12:12 PM

  • Get the value from another node.

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

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

  • How to disable a field on the basis radio button value selected.

    hello to all,
    i am facing one problem.I have declared two selection screen blocks.
    In one i hvae declared two radio button r1 -Fiscal year and r2--Datewise.
    And in another selection screen block all i/p fields. like plant. date.year etc.
    Now if user select r1-Fiscal year  then i/p field - date of second block should be disable.
    And if user select r2-Datewise  then i/p field - year of second block should be disable.
    SELECTION-SCREEN BEGIN OF BLOCK BLK WITH FRAME
              TITLE TEXT-002.
           PARAMETERS: R1 RADIOBUTTON GROUP RA1 user-command ucomm,
                       R2 RADIOBUTTON GROUP RA1 DEFAULT 'X'.
       SELECTION-SCREEN END OF BLOCK  BLK.
    selection-screen begin of block b1 with
      frame title text-001.
    parameters : gjahr like ZSA_DETAIL-gjahr  MODIF ID YAR,
                 aedat like ZSA_DETAIL-aedat  MODIF ID DAT,
                 werks like ZSA_DETAIL-werks .
    selection-screen end of block b1.
    AT SELECTION-SCREEN on RADIOBUTTON GROUP RA1.
       BREAK-POINT.
        IF R1 = 'X'. "fiscal
         LOOP AT SCREEN.
            IF screen-group1 = 'DAT'.
             screen-active = 0.
             screen-invisible = 1.
             MODIFY SCREEN.
             ENDIF.
            endloop.
       ELSEIF R2 = 'X'.
         LOOP AT SCREEN.
         IF screen-group1 = 'YAR'.
           screen-active = 0.
          MODIFY SCREEN.
         ENDIF.
         ENDLOOP.
        ENDIF.

    Hi Shikha,
    Regarding your query, when you select a particular radio-button then the fields pertaining to that radio-button should get activated or get displayed, otherwise it should be hidden.
    This can be done adding the addition to the Radiobutton 'USER-COMMAND' this will automatically enable-up
    the functionality of the fields related to that radiobutton, while disabling the others.
    If USER-COMMAND isn't given, then ENTER key serves the purpose.
    DATA:
    w_carrid LIKE sflight-carrid,
    w_connid LIKE sflight-connid.
    PARAMETERS:
    p_carrid RADIOBUTTON GROUP airl USER-COMMAND airline,
    p_connid RADIOBUTTON GROUP airl.
    SELECT-OPTIONS:
    s_carrid FOR w_carrid,
    s_connid FOR w_connid.
    INITIALIZATION.
    p_carrid = 'X'.
    Now enabling desired fields and disabling the others, can be done by the following snippet.
    AT SELECTION-SCREEN OUTPUT.
    LOOP AT SCREEN.
    IF p_carrid EQ 'X'.
    IF screen-name CS 'S_CONNID'.
    screen-active = 0. " Disable the field S_CONNID
    MODIFY SCREEN.
    ELSEIF screen-name CS 'S_CARRID'.
    screen-active = 1. " Enable the field S_CARRID
    MODIFY SCREEN.
    ENDIF.
    ELSEIF p_connid EQ 'X'.
    IF screen-name CS 'S_CARRID'.
    screen-active = 0.
    MODIFY SCREEN.
    ELSEIF screen-name CS 'S_CONNID'.
    screen-active = 1.
    MODIFY SCREEN.
    ENDIF.
    ENDIF.
    ENDLOOP.
    Hope, this would help you solve your problem.
    Thankyou,
    Zahack.

Maybe you are looking for

  • Error in Adapter engine in RWB

    Hi, I'm facing 2 type of issues in RWB, Issue 1) Adapter Engine is in Red State in Component monitoring, Error: Details for 'Is the Adapter Engine Running?' Response from Adapter Engine: Fatal ArchiveJob (Archiving) failed.(Details: Code: MS.JOB.ARCH

  • When I do a select query, using DB Toolkit, I get less data than I expect

    I run a select query and I want to get test number 271 and above.  The data that is returned begins with test 273 instead.  If I do a query in Access I can see that tests 271 and 272 are in the database.  What can I do to get the right data? Charlie

  • How to rid the SPOD Spinning Pin Wheel Of Death

    Hello, Have this what they call the SPOD Spinning Pin Wheel Of Death. Cant rid it. Don't know where it came from or what to do to get rid of it or stop it from spinning. Help!

  • Filter using inputSize crashes Pixel Bender 2.1.432154

    Hi there, I've been having trouble with this filter: <languageVersion : 1.0;> kernel NewFilter <   namespace : "Your Namespace";     vendor : "Your Vendor";     version : 1;     description : "your description"; >     input image4 src;     output pix

  • Exclude materials from update

    Hi, we replicated materials from ECC to CRM. Now we want to exclude some materials from being updated in central data (basic data 1 & 2). Reason is, the sales people who are working with CRM do have a better understanding of the current description a