Hiding fields in a screen

Hi All,
How would u hide a row of fields in a screen based on a condition ?
Thanks in advance
Archana.

Hi Archana,
All screen modifications are generally done in the PBO. If you have three elements on the screen, say P_ONE, P_TWO and P_THREE, then in the PBO, you will have something like this -
IF <the condition you want to check>.
  LOOP AT SCREEN.
    IF ( SCREEN-NAME EQ 'P_ONE'  OR
         SCREEN-NAME EQ 'P_TWO'  OR
         SCREEN-NAME EQ 'P_THREE' ).
      SCREEN-ACTIVE = 0.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.
ENDIF.
The PBO for a selection screen would be the AT SELECTION-SCREEN OUTPUT event, while for a normal screen, it can be any of the PBO Modules.
Regards,
Anand Mandalika.

Similar Messages

  • Hiding fields in a screen using BADI

    Hi Experts
    I want to invisible certain fields  in the screen for certain users and it should be made  visible for certain users,the requirement is to do with badi.Can anyone help me regarding this issue.
    Thanks & Regards
    Pravitha

    Use (or Create) authorization [field|http://help.sap.com/saphelp_nw04/helpdata/en/52/67168c439b11d1896f0000e8322d00/frameset.htm] and [object|http://help.sap.com/saphelp_nw04/helpdata/en/52/6716a6439b11d1896f0000e8322d00/frameset.htm], in the BAdI [check this authorization|http://help.sap.com/abapdocu_70/en/ABAPAUTHORITY-CHECK.htm] and change the INVISIBLE field and not the ACTIVE field in SCREEN structure.
    - [Programming Authorization Checks|http://help.sap.com/saphelp_nw04/helpdata/en/52/6712ac439b11d1896f0000e8322d00/frameset.htm]
    Inform system admin to manage those new object and field in the user roles. ([SAP Authorization Concept Modules|http://help.sap.com/saphelp_banking463/helpdata/en/5c/deaa74d3d411d3970a0000e82de14a/frameset.htm])
    Regards,
    Raymond
    NB: The "d" of BAdI should always been in lowercase, except in statement GET BADI...

  • Problem with Hiding fields of selection screen which is called as subscreen

    Hello All,
    I have problem while hiding the selection screen which is called as subscreen.
    Flow of my logic:
    Selection-screen with one field and three buttons CREATE,DISPLAY and CHANGE in application toolbar.
    user enter some value in field and either he press change or dispaly
    When change i need to call selection screen when it is in dispaly i need to stop calling this selection screen.
    Upto my knowledge we can't stop calling selection screen in display mode so there is only one possibility is hiding the fields when it is in display mode.
    How can i hide the fields and where i need to hide fields?
    Please post some codes.
    Regards,
    Lisa

    you can refer the sample code which i mentioned in your previous post. that will solve the problem.

  • Hiding fields in screen area 031

    Hello Masters,
    I have query on hiding following fields in Quality Notification screen area 031of Notification Type Q2:
    1) Windows-32 bit box (big box/window under Description field)
    2) Long Text icon available next to big box/window which is also available next to Description field in header
    I tried 'Field Selection: General Screens' configuration under Define Screen Templates, was unable to hide above mentioned field(window) and icon.
    I hope I was able to describe what issue is and will get some help from you masters.
    Thanks and regards,
    Devang

    Use (or Create) authorization [field|http://help.sap.com/saphelp_nw04/helpdata/en/52/67168c439b11d1896f0000e8322d00/frameset.htm] and [object|http://help.sap.com/saphelp_nw04/helpdata/en/52/6716a6439b11d1896f0000e8322d00/frameset.htm], in the BAdI [check this authorization|http://help.sap.com/abapdocu_70/en/ABAPAUTHORITY-CHECK.htm] and change the INVISIBLE field and not the ACTIVE field in SCREEN structure.
    - [Programming Authorization Checks|http://help.sap.com/saphelp_nw04/helpdata/en/52/6712ac439b11d1896f0000e8322d00/frameset.htm]
    Inform system admin to manage those new object and field in the user roles. ([SAP Authorization Concept Modules|http://help.sap.com/saphelp_banking463/helpdata/en/5c/deaa74d3d411d3970a0000e82de14a/frameset.htm])
    Regards,
    Raymond
    NB: The "d" of BAdI should always been in lowercase, except in statement GET BADI...

  • Hiding fields in HCM forms

    Hi Experts,
    I have following requirement for  hiding fields in my form.
    I have two screens MANAGER and HR screen.
    now i have some input fields which has to be visible in MANAGER screen and
    and should be hidden in HR screen.
    please let me know how can i achieve this using form calc or java script.
    any code will be helpful.
    Thanks,
    Santosh

    Hi sushmita,
    Thanks for ur reply.
    The solution which you have given i have  already tried but not working.
    my requirement is like MGR or HR can initiate the process.
    if only MGR intiates the process the solution which u have given will work.
    but here i have a diff scenario.i have created separate process for HR also but im not able
    to see that process on the process list.
    so i have to use only one process and resolve this.whatever im writing validation is working
    only when MGR initiates the process but fails when HR initiates.
    Hope u got my point.any suggestions will be helpful.
    Thanks,
    santosh

  • Fields missing in Screen 2000 for Infotype 580

    Hi,
    In PA30, when I go to create or change or display mode for an employee in infotype 580, there are only 4 fields shown. There should actually be over 10 fields in the screen. I checked the layout for the screen 2000 of program MP058000 in SE51 and it had all the fields there. In table T588M there was no entry with the module program name MP058000. I created an entry with this program for screen 2000, and chose the radio button Standard ( The first one) for all the fields that were there and still the screen in PA30 has only 4 fields.
    Can anyone please help with this issue?
    Additional Info: When i chose create or change for IT0580 in PA30 for an employee, there was a status message saying screen was modified, and that were i got the table name that i've mentioned above.
    Thanks & Regards,
    Pratheek Bhonsley

    Hi Pratheek,
    Please check the hiring date of employee to whom you are trying to enter and check the employee who joined before this financial year. If i am right, this info type screens are depends on hiring date of employee, if i am right..
    At the same time, Please check the control record period also.
    MVR
    Edited by: MVRmvr on Jul 19, 2010 7:43 AM

  • Adding new field to MB51 screen output

    Hi All,
    I need to add a new field TCODE2 from MKPF table on the screen output of MB51. I have added my new field thro SPRO following the below steps:-
    Go to SPRO -- MM -- Inventory Management and Physical Inventory -- Reporting -- Define Field Selection for Material Document List
    Here I have give
    RM07DOCS MKPF TCODE2 Transaction code -- output box checked
    and saved.
    Now I  tried to re-execute the transaction MB51 but not able to see the Tcode2 on the output screen .
    Can any one help me out, if I am missing out something or is there any thing else i need to check on the ALV output to see the field TCODE2 on the screen og MB51?
    Regards
    Shilpa.

    Hi,
    Check these notes:
    Note 357187 - MB51: Fields in field catalog / selection screen
    Note 828104 - Enhancing MB51 for AFS
    I hope this helps you
    Regards
    Eduardo

  • How can i post the fields in the screen by selecting a record

    Hi,
      I have a problem in dialog programming.
      I need to populate the fields in the screen by selecting a single record.
      For example,
        Screen consists of 'CARRID, CONNID,FLDATE... fields.
        By pressing F4 in CARRID field it will display the contents from database table and display the records. If i select the record LH 0400 ... record then automatically the connid field should fill with the contents of the record i.e., 0400 and similarly the remaining fields.
       How can i do this in dialog programming?
       I tried with F4IF_INT_table_.. function module. There is a table parameter DYNmapping. But dont know how to use it? Can any body explain me how to use it?
       Thanks in advance..
       Suvan

    Hi Vinod,
      Thanks for your reply. I solved my problem. It is working with the table parameter 'DYNPFLD_MAPPING' in the function module 'F4IF_INT_TABLE_VALUE_REQUEST'.
      With your logic we can't decide which record is selected. Because there can be multiple records for a single CARRID.
      My question is how to post the entire record into the screen fields at a time? It is possible with the parameter I specified inthe above said function module.
      With dictionary reference it will fetch the entire entries from the Check table.
      Thanks again for your co-operation.
      Suvan.<b></b>

  • How can I add a new field in selection screen for this report

    *& Report  ZGS_BARKODLA_HIZLI_GIRIS
    report  zgs_barkodla_hizli_giris.
    tables: mara,
            mseg,
            mch1,
            *mch1,
            mkpf,
            mchb ,
            makt.
    type-pools: esp1.
    data: i_message_tab  type esp1_message_tab_type,
          wa_message_tab type esp1_message_wa_type ,
          sc_count type i.
    ALV
    type-pools: slis, kkblo.
    data: gs_layout   type slis_layout_alv                     ,
          gt_fldcat   type slis_t_fieldcat_alv with header line,
          gt_header   type slis_t_listheader   with header line,
          gt_sortin   type slis_t_sortinfo_alv with header line,
          g_repid     like sy-repid                            .
    define add-fieldcat.
      gt_fldcat-fieldname     = &1.
      gt_fldcat-ref_tabname   = &2.
      gt_fldcat-seltext_s     = &3.
      gt_fldcat-seltext_m     = &3.
      gt_fldcat-seltext_l     = &3.
      gt_fldcat-reptext_ddic  = &3.
      gt_fldcat-ddictxt       = 'M'.
      append gt_fldcat.
      clear  gt_fldcat.
    end-of-definition.
    types: begin of titab,
            sel   type xfeld,
            matnr type matnr,
            maktx type maktx,
            charg type charg_d,
            menge type menge_d,
            erfmg type erfmg,
           end of titab.
    data : witab type titab.
    data : itab type table of titab.
    data : ok_code type sy-ucomm.
    controls: tc_itab type tableview using screen 0100.
    data: gv_header like bapi2017_gm_head_01,
          gv_code   like bapi2017_gm_code.
    BAPI export parameters
    data: gv_headret type bapi2017_gm_head_ret,
          gv_matdoc  type bapi2017_gm_head_ret-mat_doc,
          gv_matyear type bapi2017_gm_head_ret-doc_year.
    data : lv_objek like inob-objek .
    data : ls_inob  like inob .
    data : imseg type ty_t_mseg.
    data : wmseg type mseg.
    data : answer.
    data : count type i.
    data : v_atinn type atinn.
    BAPI movement details
    data: i_goodsmvt_items type bapi2017_gm_item_create occurs 0
          with header line.
    data: i_return type bapiret2 occurs 0 with header line.
    start-of-selection.
    call function 'CONVERSION_EXIT_ATINN_INPUT'
       exporting
         input  = 'Z_ORAN'
       importing
         output = v_atinn.
      call screen 100.
    *&      Module  status_0100  OUTPUT
    module status_0100 output.
      set pf-status '100'.
      set titlebar '100'.
      mseg-werks = 1000.
      mseg-umwrk = 1000.
    **added
      sc_count = sc_count + 1.
      if sc_count eq 1.
        mseg-bwart = 313.
      endif.
      mkpf-budat = sy-datum.
    **added
      describe table itab lines tc_itab-lines.
    endmodule.                 " status_0100  OUTPUT
    *&      Module  user_command_0100  INPUT
    module user_command_0100 input.
      data field(20).
      data: line_t like sy-index.
      data: lines  like sy-index.
      data line_count like sy-loopc.
      data: begin of cols,
             screen      like screen,
             index       type i,
             selected(1) type c,
             vislength   like icon-oleng,
             invisible(1) type c,
           end   of cols.
      case ok_code.
        when 'DELE'.
          delete itab where sel eq 'X'.
        when 'ENTE'.
          check *mch1-charg is not initial.
          read table itab into witab with key charg = *mch1-charg.
          if not sy-subrc is initial.
            witab-charg = *mch1-charg.
            select single matnr from mch1 into witab-matnr
                               where charg eq witab-charg.
            if not syst-subrc is initial.
              set cursor field '*MCH1-CHARG'.
              message e115(12) with *mch1-charg.
            endif.
            select single maktx from makt into witab-maktx
                               where matnr eq witab-matnr
                                 and spras eq syst-langu.
            witab-erfmg = 1.
            concatenate witab-matnr witab-charg into lv_objek .
            clear ls_inob .
            select single * into ls_inob
                            from inob
                            where objek = lv_objek and
                                  klart = '023'    and
                                  obtab = 'MCH1' .
            select single atflv from ausp into witab-menge
                     where objek = ls_inob-cuobj and
                           klart = '023' .
            append witab to itab.
    **added
            clear *mch1-charg.
    **added
          endif.
        when 'SAVE'.
          if mkpf-budat is initial.
            set cursor field 'MKPF-BUDAT'.
            message e055(00).
          endif.
          if mseg-lgort is initial.
            set cursor field 'MSEG-LGORT'.
            message e055(00).
          endif.
          if mseg-umlgo is initial.
            set cursor field 'MSEG-UMLGO'.
            message e055(00).
          endif.
          if mseg-bwart is initial.
            set cursor field 'MSEG-BWART'.
            message e055(00).
          endif.
          refresh imseg.
          loop at itab into witab.
            move-corresponding witab to wmseg.
            append wmseg to imseg.
          endloop.
          call function 'ZMM_POPUP_WITH_DATA'
            exporting
              imseg  = imseg
            importing
              answer = answer.
          if answer eq 'Y'.
            perform create_goods_movement.
          endif.
        when 'P--'.
          clear ok_code.
          perform paging using 'P--'.
          set cursor field 'MARA-MATNR' line 1.
        when 'P-'.
          clear ok_code.
          perform paging using 'P-'.
          set cursor field 'MARA-MATNR' line 1.
        when 'P+'.
          clear ok_code.
          clear lines.
          perform paging using 'P+'.
          set cursor field 'MARA-MATNR' line 1.
        when 'P++'.
          clear ok_code.
          perform paging using 'P++'.
          set cursor field 'MARA-MATNR' line 1.
        when 'SORA'.
          read table tc_itab-cols into cols with key selected = 'X'.
          if sy-subrc is initial.
            field = cols-screen.
            field = field+5(10).
            sort itab ascending by (field).
          endif.
        when 'SORZ'.
          read table tc_itab-cols into cols with key selected = 'X'.
          if sy-subrc is initial.
            field = cols-screen.
            field = field+5(10).
            sort itab descending by (field).
          endif.
        when 'PRNT'.
          perform write_alv.
      endcase.
    endmodule.                 " user_command_0100  INPUT
    *&      Module  read_table  OUTPUT
    module read_table output.
      mara-matnr = witab-matnr.
      makt-maktx = witab-maktx.
      mch1-charg = witab-charg.
      mseg-menge = witab-menge.
      mseg-erfmg = witab-erfmg.
      line_count = sy-loopc.
    endmodule.                 " read_table  OUTPUT
    *&      Module  write_table  INPUT
    module write_table input.
      witab-matnr = mara-matnr.
      witab-maktx = makt-maktx.
      witab-charg = mch1-charg.
      witab-menge = mseg-menge.
      witab-erfmg = mseg-erfmg.
      modify itab from witab index tc_itab-current_line.
    endmodule.                 " write_table  INPUT
    *&      Module  exit  INPUT
    module exit input.
      leave to screen 0 .
    endmodule.                 " exit  INPUT
    *&      Form  create_goods_movement
    form create_goods_movement .
      clear : gv_header, i_return[], i_goodsmvt_items[].
      gv_header-doc_date = gv_header-pstng_date = mkpf-budat.
      gv_header-pr_uname = sy-uname.
    GM with reference to reservation
      loop at itab into witab.
        i_goodsmvt_items-material   = witab-matnr.
        i_goodsmvt_items-entry_qnt  = witab-erfmg.
        i_goodsmvt_items-entry_uom  = 'ST'.
        i_goodsmvt_items-move_type  = mseg-bwart.
        i_goodsmvt_items-plant      = mseg-werks.
        i_goodsmvt_items-stge_loc   = mseg-lgort.
        i_goodsmvt_items-move_plant = mseg-umwrk.
        i_goodsmvt_items-move_stloc = mseg-umlgo.
        i_goodsmvt_items-batch      = witab-charg.
        append i_goodsmvt_items.
      endloop.
    find BAPI processing transaction
      if gv_code is initial.
        perform determine_bapi_code using mseg-bwart
                                 changing gv_code.
      endif.
      call function 'BAPI_GOODSMVT_CREATE'
        exporting
          goodsmvt_header  = gv_header
          goodsmvt_code    = gv_code
        importing
          goodsmvt_headret = gv_headret
          materialdocument = gv_matdoc
          matdocumentyear  = gv_matyear
        tables
          goodsmvt_item    = i_goodsmvt_items
          return           = i_return[].
    cancel blocking process
      loop at i_return where type eq 'E' or type eq 'A' or type eq 'X'.
        exit.
      endloop.
      if sy-subrc ne 0.
        refresh i_message_tab.
        call function 'BAPI_TRANSACTION_COMMIT'
          exporting
            wait = 'X'.
        wa_message_tab-msgid = 'M7'..
        wa_message_tab-msgty = 'S'.
        wa_message_tab-msgno = '060'.
        wa_message_tab-msgv1 = gv_matdoc.
        wa_message_tab-msgv2 = ''.
        wa_message_tab-msgv3 = ''.
        wa_message_tab-msgv4 = ''.
        append wa_message_tab to i_message_tab.
      else.
        refresh i_message_tab.
        call function 'BAPI_TRANSACTION_ROLLBACK'.
    write a message as there is an unexpected error.
        loop at i_return.
          wa_message_tab-msgid = i_return-id.
          wa_message_tab-msgty = i_return-type.
          wa_message_tab-msgno = i_return-number.
          wa_message_tab-msgv1 = i_return-message_v1.
          wa_message_tab-msgv2 = i_return-message_v2.
          wa_message_tab-msgv3 = i_return-message_v3.
          wa_message_tab-msgv4 = i_return-message_v4.
          append wa_message_tab to i_message_tab.
        endloop.
      endif.
      call function 'C14Z_MESSAGES_SHOW_AS_POPUP'
        tables
          i_message_tab = i_message_tab.
    endform.                    " create_goods_movement
    *&      Form  determine_bapi_code
    form determine_bapi_code using p_bwart type bwart
    changing p_code type bapi2017_gm_code.
      data: lt_t158b type table of t158b with header line.
      clear p_code.
      select tcode from t158b into corresponding fields of table lt_t158b
      where bwart eq p_bwart.
      loop at lt_t158b.
        select single gmcode from t158g into p_code
        where tcode eq lt_t158b-tcode.
        if sy-subrc is initial.
          exit.
        endif.
      endloop.
    endform. " determine_bapi_code
    *&      Form  paging
    form paging using code.
      data: i type i,
            j type i.
      case code.
        when 'P--'. tc_itab-top_line = 1.
        when 'P-'.
          tc_itab-top_line = tc_itab-top_line - line_count.
          if tc_itab-top_line le 0.
            tc_itab-top_line = 1.
          endif.
        when 'P+'.
          i = tc_itab-top_line +  line_count.
          j = tc_itab-lines -  line_count + 1.
          if j le 0.
            j = 1.
          endif.
          if i le j.
            tc_itab-top_line = i.
          else.
            tc_itab-top_line = j.
          endif.
        when 'P++'.
          tc_itab-top_line = tc_itab-lines - line_count + 1.
          if tc_itab-top_line le 0.
            tc_itab-top_line = 1.
          endif.
      endcase.
    endform.                    " paging
    *&      Form  write_alv
    form write_alv .
      perform find_list_header.
      perform fill_field_cat.
      perform fill_sortinfo.
      g_repid = sy-repid.
      gs_layout-colwidth_optimize = 'X'.
      gs_layout-zebra             = 'X'.
      answer = 'Y'.
      call function 'REUSE_ALV_GRID_DISPLAY'
        exporting
          i_buffer_active        = ''
          i_callback_program     = g_repid
          i_save                 = 'A'
        i_callback_top_of_page = 'TOP_OF_PAGE'
          is_layout              = gs_layout
          it_fieldcat            = gt_fldcat[]
         it_sort                = gt_sortin[]
        tables
          t_outtab               = itab[].
    endform.                    " write_alv
         Form  find_list_header
    form find_list_header.
      data : v_datum(10),
             v_datlo(10),
             v_dathi(10),
             v_uzeit(8).
      clear: gt_header, gt_header[].
      gt_header-typ  = 'H'.
      gt_header-info = sy-title.
      append gt_header.
      clear gt_header.
      gt_header-typ  = 'S'.
      gt_header-key  = 'Çal&#305;&#351;t&#305;rma Zaman&#305; : '.
      write syst-datum to v_datum.
      write syst-uzeit to v_uzeit.
      concatenate v_datum '/' v_uzeit into gt_header-info.
      append gt_header.
    endform.                    " find_list_header
         Form  fill_field_cat
    form fill_field_cat.
      refresh gt_fldcat.
      clear   gt_fldcat.
      gt_fldcat-key = 'X'.
      add-fieldcat 'MATNR'  'MARA' ''.
      add-fieldcat 'MAKTX'  'MAKT' ''.
      add-fieldcat 'CHARG'  'MSEG' ''.
      gt_fldcat-do_sum = 'X'.
      add-fieldcat 'MEINS'  'MARA' 'Olcu Birimi '.
      gt_fldcat-do_sum = 'X'.
      add-fieldcat 'ERFMG'  'MSEG' 'Adet'.
    endform.                    " fill_field_cat
         Form  fill_sortinfo
    form fill_sortinfo.
      gt_sortin-up            = 'X'.
      gt_sortin-fieldname     = 'MATNR'.  append gt_sortin.
    endform.                    " fill_sortinfo
         Form  top_of_page                                              *
    form top_of_page.
      call function 'REUSE_ALV_COMMENTARY_WRITE'
        exporting
          i_logo             = 'ZKUTAS'
          it_list_commentary = gt_header[].
    endform.                    " top_of_page

    HI,
    if it is a normal report program then you can directly create a Selection screen field.
    After the Type-pool you can use Parameters or Select-options to create the selection screen field..
    If it is a Modulpool program then you can create a selection scren field like
    SELECTION-SCREEN BEGIN OF SCREEN 1100 AS SUBSCREEN.
    PARAMETERS: p1(10) TYPE c.
    SELECTION-SCREEN END OF SCREEN 1100.
    defines a selection screens – 1100 – as subscreens.
    The next screen number of screen 100 is 100 (statically-defined).
    PROCESS BEFORE OUTPUT.
      MODULE status_0100.
      CALL SUBSCREEN area INCLUDING sy-repid number.
    PROCESS AFTER INPUT.
      MODULE cancel AT EXIT-COMMAND.
      CALL SUBSCREEN area.
      MODULE user_command_0100.
    look at the below link
    http://help.sap.com/saphelp_nw2004s/helpdata/en/e7/deb237b9a9a968e10000009b38f8cf/content.htm
    Regards
    Sudheer

  • Hiding fields in phtmlb:formLayout (new thread)

    Original Thread:
    hiding fields in a bsp...
    What Kevin is talking about, is some special development we did for HR eRecruitement. Well, let us turn it around. They helped us, and we returned the favour. And yes, this is actually some of the more interesting bits and pieces of BSP. (Fresh meat to discuss:).
    Effectively, the <phtmlb:formLayout> has two functionalities. The first is a very easy way to layout a form. The second is a way via customization to dynamically have customers overwrite the visibility/required property of each field. So the SAP puts the maximum number of fields into the formlayout, and the customer can then via customization remove some, flag some as required, etc.
    (If anybody should feel like writing a long weblog on this, I will provide technical detail, plus examples offline.)
    The interesting database tables are these PHTMLB_FLI* ones. Part of the agreement was that the application itself provides for a UI to update the table. Also, the application itself controls which fields are changable.
    If you really want to play, look at SBSPEXT_PHTMLB, the formLayout example. In the top part, there are also a serious of dropdown listboxes. What these do, is that they update the customization tables first, before the formlayout is rendered. So what you are seeing is actually the formlayout as it has been programmed, plus then the effects of a (customer) customization on it.
    Also the example shows the effect of using an XML bee to dynamically add entries into the fieldLayout (if the application added these hooks).
    brian

    Hallo Thomas,
    No, unfortunately we never build something to also customize the labels. They HR colleagues did not ask for this :).
    I first started to write you here a loong text with answers. But then I got lazy, and searched my archive mailbox. Here below is the <b>draft</b> input that I wrote initially for the documentation. It describes everything pretty good. (But it is draft document, never proofread again, so read it lightly!)
    bye, brian
    <u><b>Why?</b></u>
    Typically when an application is developed at SAP, the developer must make provision for all possible fields of information that must be displayed and/or queried from the user. However, in specific business cases, or depending on specific country laws, all fields might not be required. Also in some cases, fields in one scenario can be flagged required, versus in another they are only optional.
    The typical starting point will be a complete formlayout done during the development. On top of this a customization layer is placed. The automatic reading and applying of the customization layer is automatically done by the phtmlb fL.
    <b><u>What?</u></b>
    For each field, a default behaviour is assumed. This is the behaviour that is defined by the developer during development time. For example, it could be specified that email address must be required. During the runtime it is now possible to overwrite the default behaviour with a customization entry for the field.
    The following options are supported:
    <b>As Defined:</b> The formLayoutItem in displayed as it has been defined during development.
    <b>Invisible:</b> The formLayoutItem is not placed on the formLayout. It is immediately removed. All following items below it, will be moved up to fill its position.
    <b>Hidden:</b> In this case, the formLayoutItem is placed on the formLayout, but not displayed. The item reserves its slot, and an empty slot will be displayed. However, after all items have been placed on the formLayout, a row "compression" is done, whereby all rows that contain only hidden elements are removed. Hidden is important for cases where columns next to one another must align. A typical example would be name & surname horizontally aligned. If now one item is invisible before this row, the two items will not be aligned anymore. With hidden, this alignment will be kept, and we still have the benefit of empty rows been removed.
    <b>Required:</b> Sets the required flag for the item. Label of item will be rendered an indication that it is required (usually little red asterix after the label).
    <b>Optional:</b> Can be used to customize a required field to be not required.
    <b>Read Only:</b> Field value is only displayed.
    <u><b>What is index?</b></u>
    Customization is stored for a formLayout under the key that is build from the BSP application namespace, BSP application name, plus the page/view on which the formLayout is placed. It is assumed that there will only be one formLayout per view. A typical example would be:
         SAP/SBSPEXT_PHTMLB/FORMLAYOUTSAMPLE.HTM
    In addition, a customization key must be specified. Typical examples would be to say this is the default customization for USA, or for the specific branchen Losuegn. The customization key must be supplied with the <phtmlb:fL> tag, and only then will the customization data be read from the database.
    <b><u>Tables</u></b>
    For customization there are three interesting tables.
    The first table PHTMLB_FLI is completed by the developer, and defines a list of all the formLayout items that can be customized. Only for those flItems which customization is possible, will entries be made in this table. The table contains three components:
    <b>NS_APPL_PAGE</b> This is the unique key that identies the formLayout, consisting of namespace, application and page/view.
    <b>FLI_ID</b> Id string of the specific formLayoutItem.
    <b>COMPONENT</b> This is software component to which development applies, for example SAP_BASIS for all BSP development work done by us.
    The second table PHTMLB_FLI_TEXT is just a language dependant text table that describes each item in the formLayout.
    The tables PHTMLB_FLI and PHTMLB_FLI_TEXT are not using during the runtime. They are only of interest for design time. Note that NO tools are provided to make any entries in these tables. This is considered to be in the application domain, and will usually be part of the customization process of the application.
    The third table PHTMLB_FLI_CUST is the only table that is read during the runtime. It is assumed that a customization tool has made the relevant entries for this table.
    <b>NS_APPL_PAGE</b> see above
    <b>VARIANT_KEY</b> This is the specific customization layer that is currently active. This string is equavalent to <pthmlb:fL  customizationKey>. It is used to pull a specific customization.
    <b>FLI_ID</b> see above
    <b>MODIFIER</b> This is the new value to apply. For the possible values, see DDIC domain PHTMLB_FLI_MODIFIER.
    For an example of customization, see BSP application SBSPEXT_PHTMLB, pages formLayout.htm. In this example, the customization can quickly be set via dropdown listboxes. On each request the PHTMLB_FLI_CUST is quickly updated and then the formLayout will find the set of new customization data to use.

  • Hiding fields in a form

    hiding fields in a Form is called what? How do I go about hiding fields in a form than having a button the user can click on to make the fields visible to fill out?  Thanks  Nick

    The "presence" property controls the visibility of form elements. 
    This eseminar explains the details:
    http://adobechats.adobe.acrobat.com/p87746471/
    Thom Parker
    The source for PDF Scripting Info
    pdfscripting.com
    The Acrobat JavaScript Reference, Use it Early and Often
    http://www.adobe.com/devnet/acrobat/javascript.html
    Then most important JavaScript Development tool in Acrobat
    The Console Window (Video tutorial)
    The Console Window(article)

  • How can i declare a single radio button field in selection-screen ?

    How can i declare a single radio button field in selection-screen ?

    >
    Rob Burbank wrote:
    > And how will you turn it off once it is turned on??
    >
    > Rob
    Thats correct ;)...See ravi if users will ask so many things its our Job to convay the correct solution ....
    Just post your org requirement..SOo some body guide you better//
    Sas

  • Process to add  new field to Account screen and update value from R/3...

    We have CRM 7 and just wanted to ask what the process would be to add a new field to the Accounts screen. This field will be a read-only field and we'll source its value from R/3, based on some of the other data entered into the Accounts screen.
    What exactly is involved in this process?.
    I think I can use the new Application Enhancement Tool instead of EEWB to create the new field, but how does one identify which structure/table to change for say the 'Accounts' data, and, where does one place the code which populates this field, and, once the structure has been changed how do I physically add the field to the screen. I should be okay with reaching out to R/3 and populating the data, code-wise, but again wondered if there was anything inbuilt to do this, bearing in mind the closeness and constant access to R/3 from CRM.
    Any help would be much appreciated.
    Jason
    Edited by: Jason Stratham on Apr 14, 2010 1:11 PM

    Jason,
    If you use EEWB or AET,, there is nothing manual you have to do, the fields will be added to all related tables and structures plus UI too.
    May be sometimes you have to run the UI configration tool to add the field to the UI, again this is just a tool, there is not manual coding required.
    you can enter the value for the fields direclty via UI, BUT if it is a display only field, at the time of save, you have to write couple of line to populate this field ( see set_property( ) method in the context node ).
    Thats it...
    Regards, Sudeep..

  • Creation of custom field on BId screen And send this data to backend in PO

    HI Expert,
    I have to add custom field on bid item data. I have did this and able to see this field on bids screen.
    the scenario is like once bid is accepted it will create PO in backend.
    now i need to carry the data from this custom field to backend PO.
    please give me the solution if it possible. we are using classic scenario.
    thanks in advance.

    thanks for reply
    I have did same thing but in input parameter of bado i am getting the shoping cart GUID . form which how i can get the Bid detail.
    and other part is I need to send data by extension this this how we can do ?
    do we need to write code in backend also and need to create custom field in backend PO table.
    Thaks for reply

  • Search help for input fields in a screen

    Hi,
    Pls help me
    how to set search help property for the I/O fields in screen in se80?
    1. do we want to add any property for search help in the property window?
    2.do we want to create a MODULE PROCESS ON VALUE REQUEST ?
    PLS tell me how to set search for the I/O field in se80?pls tell me the process?
    i want to set the search help for more I/O fields in se80 but all the fields belongs to the same table?
    can i create a single search for all these fields and use that for all the I/O fields ?
    elementary search help or collective search help?
    thanks & regards in advance,
    vsnl.

    Hi,
    Input Help on the Screen
    Within the Screen Painter, you can define two types of input help:
    1. The FIELD statement with one of the additions VALUES or SELECT.
    2. Linking a search help directly to a screen field.
    If you link a search help directly to a screen field, it overrides the additions of the FIELD
    statement. However, the input check [Page 581] functions of the FIELD statement remain
    unaffected.
    Input Help in Flow Logic
    The following input help methods are obsolete and should not be used. They are still supported
    for compatibility reasons.
    In the screen flow logic, you can specify a value list for a screen field <f> as follows:
    FIELD <f> VALUES (<val1>, <val2>,...).
    The value list contains a series of single values <vali>. The NOT and BETWEEN additions for the
    input check [Page 581] are not appropriate for input help.
    You can also create a value list by accessing a database table as follows:
    FIELD <f> SELECT *
    FROM <dbtab>
    WHERE <k1> = <f1> AND <k2> = <f2> AND...
    In the WHERE condition, the fields of the primary key <ki> of the database table <dbtab> are
    checked against the screen fields <fi>. The WHENEVER addition, used with input checks [Page
    581], is not necessary for input help.
    If you have used a ABAP Dictionary reference for field <f>, the selection and the hit list formatting
    may be affected by any check table attached to the field.
    Attaching a Search Help
    Search helps from the ABAP Dictionary can be attached to a screen field [Ext.]. To do this, enter
    the name of the search help in the corresponding field in the attributes of the screen field in the
    Screen Painter. This assigns the first parameter of the search help to the screen field. It is only
    possible to place a value from the hit list onto the screen.
    Input help on a screen.
    REPORT DEMO_DYNPRO_F4_HELP_DYNPRO MESSAGE-ID AT.
    DATA: CARRIER(3) TYPE C,
    CONNECTION(4) TYPE C.
    CALL SCREEN 100.
    MODULE CANCEL INPUT.
    LEAVE PROGRAM.
    ENDMODULE.
    The next screen (statically defined) for screen 100 is itself. It has the following layout:
    602 April 2001
    Cancel
    Airline
    Flight number
    Screen field with search help
    Input help in the flow logic
    The input fields have been adopted from the program fields CARRIER and
    CONNECTION. The function code of the pushbutton is CANCEL, with function type
    E. The search help DEMO_F4_DE with the search help parameter CARRID is
    assigned to the screen field CARRIER. The search help uses the database table
    SCARR.
    The screen flow logic is as follows:
    PROCESS BEFORE OUTPUT.
    PROCESS AFTER INPUT.
    MODULE CANCEL AT EXIT-COMMAND.
    FIELD CARRIER VALUES ('AA', 'LH').
    FIELD CONNECTION SELECT *
    FROM SPFLI
    WHERE CARRID = CARRIER
    AND CONNID = CONNECTION.
    When the user chooses the input help for the individual fields, the following input
    help is displayed:
      For the Airline field, the search help displays the names of the airlines and places the airline
    code in the input field for the chosen line. If the airline code is not one of those listed in the
    VALUES list of the screen flow logic, the input check triggers an error message in the PAI
    event. So the search help overrides the VALUES addition for the input help, but not for the
    input checks. This is therefore not an appropriate place to use the VALUE addition.
      For the Flight number field, the flow logic displays the selected entries from the database
    table SPFLI and places the selected line in the input field.
    Regards,
    Bhaskar

Maybe you are looking for