Changing currency to 5 decimals, affecting dialog programming.

Changing currency to 5 decimals.
The dialog program is affected.
A price field on dialog program, having data element BAPRE (Curr 11 Decimals 2). For instance, enter price 2000, after pressing enter button, the price will turn into 2.00000  it was automatically devided by 1000, any idea what went wrong?

You are using currency fields that reference a currency code. Most currencies in SAP have two decimal places. Dividing by 100 will work in most cases. Ideally you should get the CURRDEC value in table TCURX for the currency you are working with... then divide by 10 that number of times.
example-
USD, 2 decimals, divide by 10 twice.
There is a function module that will do this for you. Can't think of the name...???
YA..
function modules <b>G_DECIMAL_PLACES_GET or TCURX_READ</b>

Similar Messages

  • Change currency USD (2 decimals) by USDN (5 decimals)

    Hi,
    Please help me on below issue..
    In SAP I use a company code with currency USD (currency with 2 decimals), I would like to chang USD by USDN (currency with 5 decimals).
    how to make this change?
    The SAP system is used for costing of products and is active.
    What will become of the old cost calculations and prices stored in the purchasing info records?
    Thanks in advance for answers
    Jean-Marc

    Hi
    The changes can be made in transaction SU01 -> tab 'defaults' -> decimal notation.
    Note: Functionality available in the transaction code OY04, but SAP does not recommend changing the decimals of the currency in the live system after implementation. So please consult with your finance team before doing any changes.
    http://help.sap.com/saphelp_nw04/helpdata/en/01/dc31f9ad6d2e4d852ad4b169a5197c/content.htm

  • How to change height of Input/output field in dialog program

    How to change height of Input/output field in dialog program.
    I want to big message text box like e-mail message box.
    so could anybody help me on this please
    Thanks
    Basu

    Hi,
        This is not possible directly.Place the icon button in the table field.when u click on that button a popup window will appear in that window place the text editor there u can write text and u can save it ok..
    Award points if helpful.
    Kiran Kumar.G.A

  • Change/display dialog program

    Hello all,
    I am using dialog program to display the records on the screen. On screen layout i declared all fields as output fields only. Now I want to add a button (change/display) on to screen so that when ever i press the button the screen has to change from display to change mode(just like the normal display/change button in se38) and vice versa so that i can edit the fields and save it again.
    I would like to know if there exists any function module to do so or can some one please help me with a code.
    Thanks to all in advance.

    Hi Madhu,
    Define your fields as input/output fields. In the PBO, you can either turn them on or off by applying the logic below.
    LOOP AT SCREEN.
      IF SCREEN-NAME   = 'ABC' OR
        SCREEN-GROUP1 = 'TEST'.
        SCREEN-INPUT = 1. " Make it editable field
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.
    If you do SCREEN-ACTIVE = 1 or 0, you are actually showing or hiding the field itself, but if you do SCREEN-INPUT = 1 or 0, you are just making the field editable or display only.
    Srinivas

  • How enter event or change event in screen dialog program

    Hi anybody
    I want use enter event or change event in screen dialog program.
    how do i use it? anybody please tell me.
    Thanks
    S.Muthu.

    Hi Subu,
    From your thread i understood like you want to use enter key from keyboard.
    write the statement as below your eneter event will be triggered,
    When Next or ''.
    call screen 100. " or what ever you want to trigger.
    If this is not the answer you were expecting revert bacl more precisely what you expect actually.
    Cheers!!
    Venkat

  • Search help in dialog program

    Hi all,
    Fora search help in dialog program.
    I HAVE TO GET SEARCH FOR A FIELD ZID ON APARTICULAR SCREEN BASED ON DATA, MODIFIED BY AND A PLANT..
    I HAVE A RECORD IN ONE MY ZTABLE.
    I HAVE TO GET THAT BY SEVERAL SEARCH PARAMETERS SAY BY DATE , MODIFIED BY,PLANT ETC.
    each user has been assigned a plant , so in search he has to get records belonging to that plant.
    so i cannot include plant in my search help, because user may type in other plant.
    so i tried two ways
    1) i created a search help in se11 including the plant field again the problem arises if the user types a different plant.
    so i want to know whether we can apassa value to plant field in search help(i.e the plant assigned to the user),
    i have this kind of thing in some standard t -code i.e especially for searching material , the plant field in search help was filled by one plant.
    this should be one of the solution
    2)I tried to write a code in pov of program code.
    this is how my code looks.
    DATA : BEGIN OF ITAB OCCURS 0.
         INCLUDE  STRUCTURE ZXXX.
    DATA : END OF ITAB.
    ITAB HAS FIELDS ID, DATE , MODIFIEDBY , PLANT.
    USER_PLANT = 'ABC'.
    SELECT * FROM ZXXX INTO TABLE ITAB WHERE PLANT = USER_PLANT.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
      EXPORTING
      DDIC_STRUCTURE         = ' '
        RETFIELD               = 'ZID'
      PVALKEY                = ' '
      DYNPPROG               = ' '
      DYNPNR                 = ' '
      DYNPROFIELD            = ' '
      STEPL                  = 0
        WINDOW_TITLE           = 'TEST'
      VALUE                  = ' '
        VALUE_ORG              = 'S'
      MULTIPLE_CHOICE        = ' '
      DISPLAY                = ' '
      CALLBACK_PROGRAM       = ' '
      CALLBACK_FORM          = ' '
      TABLES
        VALUE_TAB              = ITAB
      FIELD_TAB              =
        RETURN_TAB             = IT_RETURN4
      DYNPFLD_MAPPING        =
    EXCEPTIONS
      PARAMETER_ERROR        = 1
      NO_VALUES_FOUND        = 2
      OTHERS                 = 3
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    if sy-subrc = 0.
              clear itab.
              read table it_return4 index 1.
                ZXXX-ZID = it_return4-fieldval.
    endif.
    THIS WORKS FINE , BUT HE CANNOT SEARCH BASED ON DATE AND MODIFIEDBY
    ALL i want is is get a pop up window and should be able to search based on data and modifiedby for a predifined plant.
    I hope iam clear.
    Thanks

    Hi,
    Create a FM with the following code..The interface is defined in the code..
    In the Function module top include add the following code.
    <b>TYPE-POOLS: shlp, vrm.</b>
    IN this code I am deleting the records that are not of the currency USD...
    Do the same thing for your requirement...
    FUNCTION Y_SEARCH_HELP_EXIT.
    ""Local interface:
    *"  TABLES
    *"      SHLP_TAB TYPE  SHLP_DESCR_TAB_T
    *"      RECORD_TAB STRUCTURE  SEAHLPRES
    *"  CHANGING
    *"     REFERENCE(SHLP) TYPE  SHLP_DESCR_T
    *"     REFERENCE(CALLCONTROL) LIKE  DDSHF4CTRL STRUCTURE  DDSHF4CTRL
    where z_test is my z table..
    DATA: ITAB LIKE Z_TEST OCCURS 0 WITH HEADER LINE.
    ITAB[] = RECORD_TAB[].
    IF NOT RECORD_TAB[] IS INITIAL.
      DELETE ITAB WHERE WAERS <> 'USD'.
      RECORD_TAB[] = ITAB[].
    ENDIF.
    ENDFUNCTION.
    Thanks,
    Naren

  • Dynamic header text in table control - Dialog programming

    Hi All,
    I have a table control on one of my dialog screens.  I need to dynamically change the column header texts on this control in my PBO.  Does anyone know how to do this?  I have found all kinds of ways to modify the other characteristics of the fields at run time in the PBO (active, input/output, invisible, etc.) - but not to change the header text!  Any help is appreciated.
    thanks,
    Matt

    Hi Hymavathi,
    I appreciate your help!  This didn't solve the issue, however,...I have used the method you'd mentioned before (many times) for setting it inside the loop at screen:
    %_<screenname>_%_APP_%-TEXT = <text something>.
    - but only in ABAP reports.  It doesn't seem to recogize it (the table control column header text) within a dialog program.  I keep getting a compile error. (saying that the %_<screenname>_%_APP_%-TEXT doesn't exist.
    I tried the suggestion that you stated below (from lateesh) - yet it only let me place i/o field in title text area (not the column header text).  Am still searching...

  • Dialog programming

    Hi friends,
    Could any one explain me about the following
    1)Developed dialog programming for <b>AP Approval</b>.
    2)Developed Dialog programming for <b>PO Change Screen and PR Change Screen</b>.

    Hi Kelly
    It is difficult to comment without seeing your code and the whole picture. E.g. the field update may depend on a condition which is related to a data record and in your case that record exists in your development system but not in your production system.
    *--Serdar
    [email protected]

  • !!!! Urgent !!!!!!!!Dialog Programming

    In Dialog Programming i have 3 fields, if one field is validated if it is true the next two fields should become gray,so no one can enter the values in those two fields how can i do it.

    HI,
    Go thru this docu.
    <b>Changing The Screen During Runtime</b>
    The attributes are assigned to the screen field when the screen is designed in full screen editor.  Such kind of assignment is static, which means that these attributes are fixed. But many times the need to change the attributes of the screen arises. And this has to be done during runtime.
    Need To Change Screen
    There can be a requirement in the transaction that, certain fields on the screen
    Appear only in certain conditions.
    Are in Change/display mode according to user inputs
    Become mandatory subject to specific inputs.
    Changes its format depending upon certain conditions.
    Modifying the screen
    At the runtime, attributes for each screen field is stored in system defined internal table, with header line, called as SCREEN TABLE. It contains name of field and its attributes. This tab le can be modified during the runtime i.e. through module pool program. Screen table has following fields:
    Field Name           Length          Description
    NAME               30               Name of screen field
    GROUP1          3               Field belongs to field group1
    GROUP2          3               Group 2
    GROUP3          3               Group 3
    GROUP4          3                  Group 4
    ACTIVE          1               Hide/Show
    REQUIRED          1               Field input is mandatory                         
    INPUT          1               Enable/Disable
    OUTPUT          1               Field for display only
    INTENSIFIED     1               Field is highlighted.
    INVISIBLE          1               Field is suppressed.
    LENGTH          1               Field output length is reduced
    DISPLAY 3D          1               Field is displayed with 3-D Frame
    VALUE_HELP     1                             Field is displayed with Value help
    E.g., SCREEN-ACTIVE     = 0   has the same effect as the following statements.
            SCREEN- INPUT       = 0.
            SCREEN-OUTPUT    = 0.
            SCREEN-INVISIBLE = 1.
    The fields SCREEN-NAME and SCREEN-GROUP 1 through SCREEN-GROUP4 tell you which field and / or field group has the attributes.
    You can assign up to 4 groups to a field.
    You need to program screen modifications in module, which is processed during the event PROCESS BEFORE OUTPUT.
    `SCREEN’ is an internal table and, in order to change the field values, LOOP statement has to be used so that the header-line can be populated with the new values, changing the earlier values, the SCREEN table consisted for the specific screen. Finally the changed record in the header-line is NOT APPENDED, but is MODIFIED to the SCREEN table. That is, we first use `LOOP AT SCREEN’ and then assign the values. And finally PRIOR TO ENDLOPP give `MODIFY SCREEN’.
    PROCESS BEFORE OUTPUT.
    MODULE MODIFY_SCREEN OUTPUT.
    MODULE MODIFY_SCREEN.
      LOOP AT SCREEN.
        IF SCREEN-NAME = ‘SFLIGHT-CARRID’.
          SCREEN-INPUT = 1.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    Thanks
    Sunil

  • Small issue in dialog program

    Hello all,
    i have a requirement in dialog programming.
    I have to modify a record a record which exist in zatble.
    For each record , i have a header info, item details.
    for header iam ok , i can use modify.
    for item details i have like
    itemno    material     materialdesc quantity
    1          m1           pqr          12
    2          m2           def          9
    3          m3           abc          2
    4          m4           xyz          1
    item no and material are my primary keys.
    so iam retrieving this data from a z table and have to update.
    may be i need to delete 3 record and modify 2 record,i would do that based on the selectionfrom table control
    itemno    material     materialdesc quantity
    1          m1           pqr          12
    2          m2           def          19
    3          m4           xyz          1
    now i have deleted 3 record and modifed 2 with increase in quantity and the itemno are changed
    I have ths data in my internal table.
    iAM USING MODIFY STATEMNT WHEN I SAVE THE DATA INTO DATABASE TABLE.
    i SEE THE FOLLOWING DAT AIN MY ZTABLE
    1          m1           pqr          12
    2          m2           def          19
    3          m3           abc          2
    4          m4           xyz          1
    3          m4           xyz          1
    THOGHT I NEED ONLY THESE DATA TO BE PRESENT IN MY ZTABLE
    1          m1           pqr          12
    2          m2           def          19
    3          m4           xyz          1
    Any help or suggestions regarding this
    Thanks
    Suchitra

    Hi suchitra,
    do one thing ,,
    first task
    1.first of all select all the contents of ztable based on primary keys into a internal table itab.
    1 m1 pqr 12
    2 m2 def 9
    3 m3 abc 2
    4 m4 xyz 1
    2. in ur m-pool table control u r performing the operations like delete and modify to the table control GET THE CONTENTS INTO UR FINAL TABLE JTAB ..Lets say
    This is ur final jtab.
    1 m1 pqr 12
    2 m2 def 19
    4 m4 xyz 1
    NOW PERFORM COMPARISIONS,
    3.  LOOP AT ITAB.
        READ TABLE JTAB WITH KEY ITEMNO = ITAB-ITEMNO
                                                       AND MATNR  = JTAB-MATNR
                                                        And  menge     =  jtab -menge       
              IF SY-SUBRC <> 0.
                ITAB-ITEMNO  = JTAB-ITEMNO.
                ITAB_MATNR   = JTAB-MATNR.
                ITAB_MATDESC = JTAB_MATDESC
                ITAB_MENGE   = JTAB_MENGE
                MODIFY  ITAB. ”TRANSPORTING 
              ENDIF.
              ENDLOOP.
    THIS WILL COVER RECORD 2 IN UR ITAB CHANGES ARE OK  ..
    second task ..
    4. NOW SINCE U HAVE DELETED RECORD 3 ,, PLACE  IN AN EXTRA FILED IN THE JTAB  STRUCTURE
    LIKE CHAR TYPE C, SAME HAS TO BE IN ITAB ALSO
    AND MAKE IT X WHEN EVER U DELETE IT IN TABLE CONTROL
    LIKE THIS THE O/P IM EXPECTING HERE IS IN JTAB
    1 m1 pqr  12
    2 m2 def   19
    3 m3 abc    2     x
    4 m4 xyz   1
    LOOP AT ITAB.
        READ TABLE JTAB WITH KEY ITEMNO = ITAB-ITEMNO
                                                       AND MATNR  = JTAB-MATNR
    IF JTAB-CHAR = ‘X’.
                ITAB-ITEMNO     = JTAB-ITEMNO.
                ITAB_MATNR      = JTAB-MATNR.
                ITAB_MATDESC = JTAB_MATDESC
                ITAB_MENGE      = JTAB_MENGE
                ITAB-CHAR          = JTAB-CHAR
                MODIFY  ITAB.  ”TRANSPORTING 
              ENDIF.
      ENDLOOP.
    NOW THE ITAB CONTENT IS
    1 m1 pqr  12
    2 m2 def   19
    3 m3 abc    2     x
    4 m4 xyz   1
    My suggestion to u is modify the ztable from itab .
    Without deleting entry 3
    This will solve ur prob .
    Cause when u do a select next time
    Select entries where  char <> ‘X’
    Which will fetch u
    1 m1 pqr 12
    2 m2 def 19
    4 m4 xyz 1
    Try to bring the logic in a single loop this will do
    i have split this for ur understanding ....

  • Field value not updated in Dialog Programming

    Hi experts
              My problem is when i change the field value in dialog programming, the text value is not updated, its showing the same value what exist in database.
       I have done coding as follows, what i need to change in coding, Pls give me the suggestion.
    PROCESS BEFORE OUTPUT.
    MODULE STATUS_1200.
    PROCESS AFTER INPUT.
    CHAIN .
        FIELD :  zrecpt-zrno.
        MODULE vali_zrno ON CHAIN-INPUT.
      ENDCHAIN.
    module header_data10.
    MODULE STATUS_1200 OUTPUT.
        SET PF-STATUS 'ZRECT'.
        SET TITLEBAR 'ZRECT'.
    ENDMODULE.              
    MODULE vali_zrno INPUT.
    if zrecpt-zrno  is not initial.
        select single * from zrecpt
                        where zrno = zrecpt-zrno.
    endif.
    ENDMODULE.
    MODULE header_data10 INPUT.
    CLEAR : it_zrecpt.
      REFRESH : it_zrecpt.
      MOVE-CORRESPONDING zrecpt TO it_zrecpt.
      APPEND it_zrecpt.
    ENDMODULE.
    Thanks in advance.
    Regards
    Rajaram

    Hello...
    IN PAI,,
    You were not updating into any database..
    you were just appending to an internal table...
    now either move the internal table values to the database ...
    or you can simply move from the values entered...[text boxes ]
    pls chk.....

  • What is the use of GUI status in Dialog programming

    what is the use of GUI status in Dialog programming,, how can it be used there,, as screen are alredy defined..

    Hi,
    The use of GUI Status is that when we have to change some thing in Menu Bar, Toolbar and Function Keys. Say For Example we have to create any Custom Button in the application toolbar etc.
    It can be used in Dialog Programming via defining the Status in the PBO module of the screen.
    eq. created a screen 9000
              on clicking it->
                                   PROCESS BEFORE OUTPUT.
                                             MODULE status_9000.
    On double clicking on this "Module status_9000" - you can write "SET PF-STATUS 'STATUS_9000'".
    Now u can create GUI staus with name "'STATUS_9000'".
    Let me know in case you have any further doubts.
    Thanks

  • Change Type of Screen Element in Report Program

    Okay guys, I have been struggling with this the whole day.. someone please help me.
    I have a selection screen defined in the selecton-screen of a report program
    select-options : so_matnr for mara-matnr,
                     so_ebeln for ekpo-ebeln,
                     so_ebelp for ekpo-ebelp.
    Now if I go to SE51 and give the program name and the screen number as 1000 (Default screen for report)
    Now go to tab "Element List" --> "General Attributes"
    in the column "Type of screen element" everything is considered as "I/O".
    *Name*                 *Type of Screen Element*
    %_SO_MATNR_%_APP_%-TEXT             I/O
    %_SO_MATNR_%_APP_%-OPTI_PUSH     I/O
    SO_MATNR-LOW     I/O
    %_SO_MATNR_%_APP_%-TO_TEXT     I/O
    SO_MATNR-HIGH     I/O
    %_SO_MATNR_%_APP_%-VALU_PUSH     Push
    %_SO_EBELN_%_APP_%-TEXT     I/O
    %_SO_EBELN_%_APP_%-OPTI_PUSH     I/O
    SO_EBELN-LOW     I/O
    %_SO_EBELN_%_APP_%-TO_TEXT     I/O
    SO_EBELN-HIGH     I/O
    %_SO_EBELN_%_APP_%-VALU_PUSH     Push
    %_SO_EBELP_%_APP_%-TEXT     I/O
    %_SO_EBELP_%_APP_%-OPTI_PUSH     I/O
    SO_EBELP-LOW     I/O
    %_SO_EBELP_%_APP_%-TO_TEXT     I/O
    SO_EBELP-HIGH     I/O
    Now, my requirement is that I  need to do something at the loop at screen to change the 'I/O' to 'Text' for all the %TEXT% screen fields. Exactly behave like text labels in the dialog program
    Now, I don't want to write a dialog program to achieve this. Is there any thing i can do in the report program to achieve it.

    Hello,
    Try something like this:
    INITIALIZATION.
    loop at screen.
      if screen-name eq <your field>
        screen-input = 0.
        modify screen.
      endif.
    endloop.
    The important thing is to do it on INITIALIZATION event
    Gabriel P.-

  • Dialog program that lists an ALV Grid

    Hello Experts,
    i want to create a <b>screen divided in two parts</b>. The <b>upper side</b> shows general(Header) information and the <b>lower side</b> shows detail information using ALV grid.
    When i select a record in the header of the Upper side grid , then the lower side grid will display the corresponding details.
    ( Initially the first record should be selected and the details for that first record will be displayed . Later user can choose any other record .........)
    Could anyone pls tell me the detailed procedure for developing this..i need help.
    Thanks & Best Regards
    Sudhansu

    This example is implemented using docking containers on a selection screen to give you a cut and paste example.  Simply copy and past the code into a test program and run it.  double click on any line item from the grid at the top.  the grid at the bottom will change.
    report  zrich_0001.
    data: imara type table of mara.
    data: xmara like line of imara.
    data: imarc type table of marc.
    data: dockingbottom type ref to cl_gui_docking_container,
          dockingtop  type ref to cl_gui_docking_container,
          alv_bottom    type ref to cl_gui_alv_grid,
          alv_top     type ref to cl_gui_alv_grid,
          repid type syrepid.
    *       CLASS lcl_event_handler DEFINITION
    class lcl_event_handler definition.
      public section.
        class-methods handle_double_click
                   for event double_click of cl_gui_alv_grid
                                  importing e_row e_column.
    endclass.
    *       CLASS lcl_event_handler IMPLEMENTATION
    class lcl_event_handler implementation.
      method handle_double_click.
        read table imara into xmara index e_row-index.
        select * into table imarc from marc
                      where matnr = xmara-matnr.
        call method alv_bottom->refresh_table_display( ).
      endmethod.
    endclass.
    parameters: p_check type c.
    start-of-selection.
    at selection-screen output.
      repid = sy-repid.
      select * into corresponding fields of table imara
                  from mara up to 100 rows.
      read table imara into xmara index 1.
      check dockingbottom is initial.
      create object dockingtop
                  exporting repid     = repid
                            dynnr     = sy-dynnr
                            side      = dockingtop->dock_at_top
                            extension = 200.
      create object alv_top
                  exporting i_parent = dockingtop.
      call method alv_top->set_table_for_first_display
         exporting
              i_structure_name       = 'MARA'
         changing
              it_outtab       = imara[].
    *   handler for ALV grid
      set handler lcl_event_handler=>handle_double_click for alv_top.
      create object dockingbottom
                  exporting repid     = repid
                            dynnr     = sy-dynnr
                            side      = dockingbottom->dock_at_bottom
                            extension = 200.
      create object alv_bottom
                    exporting i_parent = dockingbottom.
      select * into table imarc from marc
                   where matnr = xmara-matnr.
      call method alv_bottom->set_table_for_first_display
          exporting
               i_structure_name       = 'MARC'
          changing
               it_outtab       = imarc[].
    The implementation in a dialog program is pretty much the same, you do the logic in the PBO and use custom containers instead of docking containers.
    Regards,
    RIch Heilman

  • Calling dialog program screen in custom control and using drag n drop

    Hi Experts,
    SCENARIO:
    I have a custom container control. I want to insert a dialog program screen in custom container control in one half and tree nodes in the other half.
    Now my dialog screen has a table control. I want that the user can drag n drop the nodes in the cells of my table control.
    Please help.

    I don't think drag n drop works in table control. You may need to change table control to ALV grid control.

Maybe you are looking for