REG: PO creation

hi all,
i want to update the subtotal field when creating the PO
based on condition type KSCHL.
i need correct user exit and which std internal table is
used to create the PO
regards
P.Sukumar

ME_PROCESS_PO_CUST.
METHOD: PROCESS_ITEM.
Inside this you can call method : GET_CONDITIONS.
change the subtotal, then call SET_CONDITIONS.

Similar Messages

  • Reg View creation in Generic

    Hi SDN,
    Im trying to create Generic Data source of View Method. I wanted to create View on BSID ( Closed Customer Invoices) and BSAD ( Open Customer invoices) Tables, But while creating its giving error as "THERE IS NO RELATION BETWEEN THE TABLES"  I want to know how to create Relation Between the tables. Both BSID & BSAD are standard tables, so we cant make any changes.
    Please let me know the procedure to bulid Rlation between the tables.
    Regards
    Sujan

    Hi Siva,
        You have to give relation between these two tables in tab "Table/Join Conditions".
    Creating Views:
    http://help.sap.com/saphelp_webas620/helpdata/en/cf/21ecf9446011d189700000e8322d00/frameset.htm
    View creation fr generic extraction
    Hope it Helps

  • Reg:challan creation for 701 movement type

    Dear All,
    Is there any possibility to create challan referring to the 701 movement type I've included the movement type for sub transaction type in SPRO but even then it is not allowing is there any possibility ?
    Reg
    VVK

    Hi
    U can create challan for 701 mvt.
    Make sure the mvt 701 is included in subcontracting issues group type with spl stock indicator O.
    make sure all other settings for subcontracting are correct like number ranges for series group of subcontracting, excise a/c for 57fc with subtrabsaction 01.
    Check  and revert with the problem u face bcoz i tried in my system and it worked.
    Reg
    Raja

  • Reg Vendor Creation Standard Service

    Hi,
    I am trying to work on a scenario involving Enterprise Services. Can some one please confirm on the Vendor Creation service from ES workplace.
    I browsed and could find this service. SupplierERPCreateRequest_In. But this service is Asynchronous. My scenario is a synchronous scenario. Can someone please provide some input whether I am using the correct service . if yes, then how can this be handled for synchronous communication.

    Not really much to add to what Roshan said. You may want to check BAPI_VENDOR_CREATE Create Online if that suits your business needs better (but being a BAPI you do not have any service interface for that)
    Cheers

  • Reg : object creation for controller and view ?

    hi friends....
    i am new to WDA and objects...
    please explain me..
    when i create the web dynpro component one interface is automatically created as IF_COMPONENTCONTROLLER for component
    IF_MAINVIEW for view
    IF_WINDOW for window
    correct me if i am wrong
    suppose if i want to reuse class, i want to create object... like wise
    if i want to reuse interfaces, i want to create object.
    but in this case..for eg (IF_COMPONENTCONTROLLER, IF_MAINVIEW ) where we are creating object...?
    no need to create object ?
    regards
    deva

    >but in this case..for eg (IF_COMPONENTCONTROLLER, IF_MAINVIEW ) where we are creating object...?
    no need to create object ?
    No you don't have instantiate any of the objects.  Think of Web Dynpro as a modeling layer implemented in ABAP Objects, but sitting on top of the Object Oriented constructs.  You still have some of the benfiits of OO - like event registration, inheritance, methods, etc - but a lot of the OO setup is done and maintained by the framework for you.  So although each section of Web Dynpro - the component, the controllers, contexts, views, etc - are all technically ABAP Object instances, you don't have to manage the objects directly.

  • Reg: Table creation for generic source

    Hai,
    I tried to create generic data source using a table that I created. But when I tried to enter entries into the table using se16 transaction, one field is not at all coming.
    I didnt understand why this field is not coming. I checked the enhancement category, but that is allowing too.. I changed the position of that field in the table and tried. But still its not coming in se16 create entries..
    What can be the problem. When we check the table in se12, that field we able to see.. When we check through se16 also its available. Only when we want to make entries its not coming..
    Can someone help me to resolve this issue..

    Hi,
    Yes I am able to see the filed in the data source also.
    I want to do flat file loading. So I am using LSMW recording for the same. So in se16 i need to create dummy entries. But as this filed is not coming, I cant populate.
    When i tried outside lsmw also in SE16 that filed is not there.

  • Reg: Document Creation in CV01N

    HI,
    I careted a document thru CV01N TX.... WITH A STORAGE CATOGERY ..AND THE DOC IS SUCCESSFULLY CREATED .
    say doc 1001 is created .
    Now  I want ot know the TABLE-FIELDNAME ...where the storage cat is stored  for this doc 1001..that is  IF i give doc no as 1001..it should give me storage category .
    and  another question is : A doc is in FINAL stautus. Now I want to change the storage catogery ..can we do it,,,, if yes how???
    regards
    Arjun

    check out the file first.
    Run CV02N , open the file you want to check-in in different storage category.
    Click on the file. Then click on "Change original" button.
    R/3 System will save file on your local system.
    Now you again use CV02N, you can notice that file is checked out (Open Lock). Right click on the file, chose "Check In As", then select the storage category of your choice from the pop-up.
    Thanks

  • Reg: emplate creation in SAP server

    Dear Experts,
    I need to create a ms word document template in an SAP R/3 server folder.
    May I know which transaction i should use for thjat and what are the transaparent tables in which the information about the file is stored.
    This is urgent . Please throw me some light on this.
    Thanks in advance.
    With Regards
    Ravishankar Vembu.

    there are many options.
    1. you can store them using transaction SMW0
    2. you can store them in BDS - txn OAOR
    3. you could also store them in your own ztable
    do you want to use this template in your custom programs?

  • REG : DC Creation in NWDI

    Hi All,
    I am facing one problem in craeting dcs in nwdi.
    I have created new dc in inactive dc tab but my dc is getting reflected in local developemnt tab.
    Also i have not marked anything like local developemnt component  while craeting DC whereas i used "sync used dcs" only.
    Can anybody suggest asap me what all is happening here.
    Regards,
    Anupama

    HI,
    for your information,
    you will find  all the DCs u created in inactive tab under local DCs also under the same SC name
    Regards,
    Satya.
    Edited by: Satya on Aug 17, 2009 1:58 PM

  • Reg:Invoice Creation in FB60

    Hi,
          I have create a invoice in FB60 with the amount above 1lakhs its creating sucessfully.The payment block automatically change to P-payment request while verifying  the invoice number in FB03.So i cant able to  clear the payment in F110 .If any configuration need to be done?
    Regards
    Sathish Kumar K.C

    Hi Ragha,
                      I simply uncheck the not changeable for Payments Request.Now its working fine.But i need to know why the payment block changing to p if invoice amount is greater than 1 lakh? Thanks Ragha.
    Regards
    Sathish Kumar K.c
    Edited by: Sathish Kumar K.C on Jul 3, 2009 2:43 PM

  • Reg routines creation in sales(VOFM)

    Hi All,
    How to create routnes in VOFM transaction.My requirement is I want to create routine numbers 701(RV45C701) and 705(RV60C705) how these routnies are related to RV45CNNN?.
    I want to check some conditions(to make sure item currency is creating as doc currency in the subsequest sales document) when I am creating sales order from contract.How do I get RV45C701 and RV60C705?Please give me step by step how to create routines in VOFM transaction and then what we have to after that.
    Once I have this include programs(RV45C701,RV60C705) I know how to validations.
    Kindly help somebody.
    Regards
    Mahesh

    Hi Jyothi,
    Thanks for ur information.I have one question I understood how to create routines.
    I know that it will ask access key when we are creating user routines.
    But do we need access key for writing code in this routines also?

  • Reg Po creation in ME21N

    Hi all,
    I am fresher in SAP MM module.
    When i am creating PO in ME21 with reference to PR  , i am getting a short dump.
    How can i create PO in ME21N  with reference to PR  ???
    Kind regards
    Karthik

    hi,
    There are 4 ways:
    1.Either enter the PR no directly or choose it from the overview tree...
    All the data will get copied from the PR to PO..change the doc if req.. check the doc...then posted it...
    2. while creating PR you can directly posted it from the same document ..in the same same tcode you will the Tab saying the Post PO tab..if you click on it..it will directly post the same PO...
    3. There is a field provided in the MMR for the material, called Auto PO if you tick on it...it will be automatically created...
    4. PO can be also created via MRP...
    Edited by: Priyanka Paltanwale on Jul 30, 2008 11:28 AM
    Edited by: Priyanka Paltanwale on Jul 30, 2008 11:31 AM

  • Reg: Automatic creation of one PO from more than one PR

    Hi ,
           I have an issue from user.
    Requirement : The PR's which are generated on vendor and delivery date combination will convert automatically into a single PO irrespective of the material when we run the batch job.
    Ex: To day for example we created ( roughly ) 30 to 40 PR's of the same vendor. Then when we run the batch job , with the today delivery date and vendor combination , it should combine all the PR's and should create only one PO.
    Please help me to solve this issue.
    I able to combined the PR's to one PO but when we use the same material in all the PR's only, I am unable to convert the PR's of different materials.
    Thanks&Regards,
    Usha.

    Hi ,
                Thanks for your prompt response.
    My inputs are : delivery date and vendor.  ( check on per delivery date )
                              When i check on Generate schedule line , it is combining the PR's of same item only but not the others.
    Please let me know if you want want anything else for this issue.
    Regards,
    Usha.

  • Reg. Creation of Super BOM

    Hi all,
    Pls tell me how to create Super BOM.
    I am using ECC6.0
    My Requirement is i want supply a finished Product for Eg. Car which has many variants like Colour,Engine Type etc.,I have to create Variant BOM that is Super BOM for this Fin.Product Car.
    Here it is tedious for me to create all type of Variant materials in the material master.So By using Variant BOM my work will reduced by creating Finished Product car single item in the material master.
    But i am not fully clear about how to create this form the materail master to linking to the Super BOM.
    So pls. help me by sending me the Flow of this item from material master to Super BOM.
    Take the same Example.
    Regards,
    M.Badrinarain.

    Hi,
    1 Create characterstics in CT04.
      EX: colour(red, blue, green), engine etc., with characterstics value.
    2 Create class in CL02 with class type 300. And assign all characterstics in class.
       EX: car
    3 Creat object dependecy in Cu01.
       Assign the condition type.. it should consists of charater = 'char.val'
    4 Create material master with variant material type or create normal finished material and            activate material is configurable in basic data 2. Assign classification view with the type of 300.
    5 Assign configurable profile in CU41. for variant material
    6 In BOM assign variant and non variant material then for variant material assign object depency.
    Regards,
    S.Suresh.

  • Reg. Creation of table dynamically

    Hi Experts,
    While creating a table dynamically some of the fields in it_lvc_cat are Integer but the created table (new_table) contains all the fields as character. Is there any possibility of changing the datatype as interger for required fields.
      CALL METHOD cl_alv_table_create=>create_dynamic_table
        EXPORTING
          it_fieldcatalog = it_lvc_cat
        IMPORTING
          ep_table        = new_table.
    Regards,
    Vijay.

    Hi,
    Refer this code:
    REPORT zmtable LINE-SIZE 255
                   LINE-COUNT 65.
    Program written by Vijay Chaitanya Raju
    Maintain Table dynamicly (Table name is entered on Selection Screen)
    Very powerfull program. Please maintain authorisation access and
    restrict maintenance to Z-tables
    Version 6.20 and up
    (can be used in 4.6C with some modifications to block try - endtry
    and classes)
    Enhanced functionality with dynamic selection screen
    TABLES: sscrfields.                "Fields on selection screens
    TYPE-POOLS rsds.
    DATA ds_clauses TYPE rsds_where.
    DATA: BEGIN OF ifield OCCURS 0,
          fieldname LIKE dd03l-fieldname,
          position  LIKE dd03l-position,
          keyflag   LIKE dd03l-keyflag,
          datatype  LIKE dd03l-datatype.
    DATA: END OF ifield.
    DATA: sl_step    LIKE sy-tabix,
          ss_step    LIKE sy-subrc,
          ss_act(1)  TYPE c,
          sl_lines   LIKE sy-tfill,
          sl_status  LIKE sy-subrc,
          sl_subrc   LIKE sy-subrc,
          sl_update(1) TYPE c,
          sl_mandt(1)  TYPE c,
          len(6)       TYPE n,
          f_value(255) TYPE c,
          sl_datum     LIKE sy-datum,
          sl_uzeit     LIKE sy-uzeit,
          price1(15)   TYPE c,
          price2(15)   TYPE c,
          mess(60)     TYPE c,
          d_stat   LIKE sy-subrc,
          m_stat   LIKE sy-subrc,
          slchar(6) TYPE c.
    DATA: ref_ptr TYPE REF TO cx_root.      "Root class more common
    DATA: text TYPE string.
    DATA: sl_index LIKE sy-tabix.
    DATA: zauth LIKE dd02l-tabname.
    DATA: num TYPE i,
          max_len TYPE i,
          check_len TYPE i,
          sl_sel(1) TYPE c.
    TYPE-POOLS: icon.
    SELECTION-SCREEN.
    SELECTION-SCREEN BEGIN OF LINE.
    text-012 - 'Table Name'
    SELECTION-SCREEN COMMENT 1(25) text-012.
    PARAMETERS: tabname LIKE dd02l-tabname DEFAULT 'ZSCARE'.
    text-003 - 'Selection'
    SELECTION-SCREEN PUSHBUTTON 75(9) text-003 USER-COMMAND sta1.
    SELECTION-SCREEN END OF LINE.
    numrows(text) - 'Max Number of ROWS'
    PARAMETERS: numrows LIKE sy-subrc DEFAULT '100'.
    At Selection-Screen                                                 *
    AT SELECTION-SCREEN.
      CASE sscrfields-ucomm.
        WHEN 'STA1'.
          CLEAR sl_sel.
          CALL FUNCTION 'ZSTAN_SELECTIONS'
            EXPORTING
              tabname         = tabname
            IMPORTING
              ds_clauses      = ds_clauses
            EXCEPTIONS
              table_not_valid = 1
              other_error     = 2
              OTHERS          = 3.
          IF sy-subrc = 0.
            sl_sel = 'X'.
          ENDIF.
      ENDCASE.
    *At Selection-Screen Output                                            *
    AT SELECTION-SCREEN OUTPUT.
      SELECT SINGLE tabname
        INTO tabname
        FROM dd02l
        WHERE tabname  = tabname
          AND as4local = 'A'
          AND ( tabclass = 'TRANSP' OR tabclass = 'POOL'
                OR tabclass = 'CLUSTER' ).
      IF sy-subrc <> 0.
        MESSAGE 'Table is not valid' TYPE 'S'.
        RETURN.
      ENDIF.
    START-OF-SELECTION.
    START-OF-SELECTION.
      DEFINE: acheck.
        zauth = 'ZTABAUTH'.
        select single statu
          into sl_update
          from (zauth)
          where tabname = tabname
            and bname   = sy-uname.
        if sy-subrc <> 0.
          message 'You are not authorized to view this table' type 'S'.
          return.
        endif.
      END-OF-DEFINITION.
      SELECT SINGLE tabname
        INTO tabname
        FROM dd02l
        WHERE tabname  = tabname
          AND as4local = 'A'
          AND ( tabclass = 'TRANSP' OR tabclass = 'POOL'
                OR tabclass = 'CLUSTER' ).
      IF sy-subrc <> 0.
        MESSAGE 'Table is not valid' TYPE 'S'.
        RETURN.
      ENDIF.
      DATA: ptr_itab TYPE REF TO data.
      FIELD-SYMBOLS: <fs_itab> TYPE STANDARD TABLE. "ANY TABLE.
      CREATE DATA ptr_itab TYPE STANDARD TABLE OF (tabname).
      ASSIGN ptr_itab->* TO <fs_itab>.
    For DELETION
      DATA: ptr_itd TYPE REF TO data.
      FIELD-SYMBOLS: <fs_itd> TYPE STANDARD TABLE.
      CREATE DATA ptr_itd TYPE STANDARD TABLE OF (tabname).
      ASSIGN ptr_itd->* TO <fs_itd>.
    For MODIFICATION
      DATA: ptr_itm TYPE REF TO data.
      FIELD-SYMBOLS: <fs_itm> TYPE STANDARD TABLE.
      CREATE DATA ptr_itm TYPE STANDARD TABLE OF (tabname).
      ASSIGN ptr_itm->* TO <fs_itm>.
      DATA: ptr_wtab TYPE REF TO data.
      FIELD-SYMBOLS: <fs_wtab> TYPE ANY.
      CREATE DATA ptr_wtab TYPE (tabname).
      ASSIGN ptr_wtab->* TO <fs_wtab>.
      DATA: itabname(15) TYPE c.
      itabname = '<fs_wtab>'.
    Standard list status with 'SAVE' button
      SET PF-STATUS 'STLI'.
      CLEAR sl_update.
    Maintain authorisation access in table ZTABAUTH
    Key fields:  tabname - Table name
                 bname   = sy-uname - User name
                 statu   = 'X' - maintain
                           ' ' - view
    Check authorisation access
      acheck.
      SELECT fieldname position keyflag datatype
        INTO TABLE ifield
        FROM dd03l
        WHERE tabname = tabname
          AND fieldname NOT LIKE '.INCLU%'
        ORDER BY position.
      FIELD-SYMBOLS: <f1> TYPE ANY.
      DATA: tab_field(60) TYPE c,
            sline LIKE sy-lisel.
      DATA: field_attr LIKE dfies.
      DATA: BEGIN OF tfield_attr OCCURS 0.
              INCLUDE STRUCTURE field_attr.
      DATA: END OF tfield_attr.
      LOOP AT ifield.
        CALL FUNCTION 'G_FIELD_READ'
          EXPORTING
            table      = tabname
            fieldname  = ifield-fieldname
            text_flag  = 'X'
          IMPORTING
            field_attr = field_attr.
        tfield_attr = field_attr.
        APPEND tfield_attr.
      ENDLOOP.
      IF sl_sel = 'X'.
        SELECT *
          FROM (tabname)
          INTO TABLE <fs_itab> UP TO numrows ROWS
          WHERE (ds_clauses-where_tab).
      ELSE.
        SELECT *
          FROM (tabname)
          INTO TABLE <fs_itab> UP TO numrows ROWS.
      ENDIF.
      DESCRIBE TABLE <fs_itab> LINES sl_lines.
    Show two extra lines to allow addition up to 2 new lines
      IF sl_update = 'X'.
        DO 2 TIMES.
          APPEND INITIAL LINE TO <fs_itab>.
        ENDDO.
      ENDIF.
      DATA: info(22) VALUE 'D - Delete, M - Modify'.
      WRITE: / icon_information AS ICON QUICKINFO info.
      WRITE ' '.
      CLEAR check_len.
      LOOP AT tfield_attr.
        IF tfield_attr-datatype = 'CLNT'.
          CONTINUE.
        ENDIF.
        len = tfield_attr-outputlen.
        IF tfield_attr-keyflag = 'X'.
          check_len = check_len + len + 1.
        ENDIF.
        IF tfield_attr-scrtext_m IS NOT INITIAL.
          WRITE: AT (len) tfield_attr-scrtext_m COLOR 1.
        ELSE.
          WRITE: AT (len) tfield_attr-fieldtext COLOR 1.
        ENDIF.
      ENDLOOP.
      CLEAR ss_step.
      CLEAR ss_act.
      LOOP AT <fs_itab> INTO <fs_wtab>.
        IF sy-tabix LE sl_lines.
          ss_step = 1.
        ELSE.
          CLEAR ss_step.
        ENDIF.
    In field SS_STEP put D -  to delete record
                         M -  to modify/add new record
        IF sl_update = 'X'.
          WRITE:/ icon_change AS ICON.
          IF ss_step = 1.
            WRITE:  ss_act INPUT ON.
          ELSE.
            ss_act = 'M'.
            WRITE:  ss_act.
            CLEAR ss_act.
          ENDIF.
        ELSE.
          WRITE:/ icon_display AS ICON.
          WRITE:  ss_act COLOR 2.
        ENDIF.
        LOOP AT ifield.
    Maintain client dependant tables in the same client
          IF ifield-datatype = 'CLNT'.
            sl_mandt = 'X'.
            CONTINUE.
          ENDIF.
          CONCATENATE itabname '-' ifield-fieldname INTO tab_field.
          ASSIGN (tab_field) TO <f1>.
          IF sl_update = 'X'.
            IF ifield-keyflag = 'X' AND ss_step IS NOT INITIAL.
              WRITE: <f1> COLOR 4.
            ELSE.
              WRITE: <f1> INPUT ON.
            ENDIF.
          ELSE.
            IF ifield-keyflag = 'X' AND ss_step IS NOT INITIAL.
              WRITE: <f1> COLOR 4.
            ELSE.
              WRITE: <f1> COLOR 2.
            ENDIF.
          ENDIF.
          UNASSIGN <f1>.
        ENDLOOP.
      ENDLOOP.
    END-OF-SELECTION.
    END-OF-SELECTION.
    AT USER-COMMAND.
    AT USER-COMMAND.
      CASE sy-ucomm.
        WHEN 'SAVE'.
          IF sl_update = 'X'.
            CLEAR: sl_step,
                   sl_status,
                   sl_subrc,
                   <fs_wtab>,
                   d_stat,
                   m_stat,
                   max_len.
            REFRESH <fs_itd>.
            REFRESH <fs_itm>.
            DO.
              IF sl_status <> 0.
                EXIT.
              ENDIF.
              ADD 1 TO sl_step.
              IF sl_subrc <> 0.
                EXIT.
              ENDIF.
              CLEAR ss_step.
              CLEAR ss_act.
              READ LINE sl_step
                   FIELD VALUE ss_act INTO f_value.
              sl_subrc = sy-subrc.
              IF f_value(1) EQ 'D' OR f_value(1) = 'd'.
                ss_step = 1.  "Delete
              ELSEIF f_value(1) EQ 'M' OR f_value(1) = 'm'.
                ss_step = 2.  "Modify
              ELSE.
                CLEAR ss_step.
              ENDIF.
              CHECK sy-lisel(3) = '0Z '.
              IF ss_step GT 0.
                CLEAR sline.
                sline = sy-lisel+5(250).
                max_len = 250.
                CHECK sline(check_len) <> ' '.
                LOOP AT tfield_attr.
                  CONCATENATE itabname '-' tfield_attr-fieldname
                                                  INTO tab_field.
                  ASSIGN (tab_field) TO <f1>.
                  IF tfield_attr-fieldname = 'MANDT'.
                    <f1> = sy-mandt.
                  ELSE.
                    CLEAR f_value.
                    IF max_len LT tfield_attr-outputlen.
                      max_len = 255.
                      ADD 1 TO sl_step.
                      READ LINE sl_step.
                      sline = sy-lisel.
                    ENDIF.
                    f_value = sline(tfield_attr-outputlen).
                    max_len = max_len - tfield_attr-outputlen - 1.
                    IF tfield_attr-inttype = 'D'.
                      IF f_value CO ' 0./-'.
                        CLEAR sl_datum.
                        <f1> = sl_datum.
                      ELSE.
                        CALL FUNCTION 'CONVERT_DATE_INPUT'
                          EXPORTING
                            input                     = f_value
                            plausibility_check        = 'X'
                          IMPORTING
                            output                    = sl_datum
                          EXCEPTIONS
                            plausibility_check_failed = 1
                            wrong_format_in_input     = 2
                            OTHERS                    = 3.
                        IF sy-subrc = 0.
                          <f1> = sl_datum.
                        ELSE.
                          text = 'Invalid Date'.
                          sl_status = 1.
                          EXIT.
                        ENDIF.
                      ENDIF.
                    ELSEIF tfield_attr-inttype = 'T'.
                      IF f_value CO ' 0:'.
                        CLEAR sl_uzeit.
                        <f1> = sl_uzeit.
                      ELSE.
                        CALL FUNCTION 'CONVERT_TIME_INPUT'
                          EXPORTING
                            input                     = f_value
                            plausibility_check        = 'X'
                          IMPORTING
                            output                    = sl_uzeit
                          EXCEPTIONS
                            plausibility_check_failed = 1
                            wrong_format_in_input     = 2
                            OTHERS                    = 3.
                        IF sy-subrc = 0.
                          <f1> = sl_uzeit.
                        ELSE.
                          text = 'Invalid Time'.
                          sl_status = 1.
                          EXIT.
                        ENDIF.
                      ENDIF.
                    ELSEIF tfield_attr-inttype = 'C'.
                      TRANSLATE f_value TO UPPER CASE.
                      <f1> = f_value.
                    ELSE.
                      TRANSLATE f_value USING ', '.
                      CONDENSE f_value NO-GAPS.
                      TRY.
                          <f1> = f_value.
                        CATCH cx_root INTO ref_ptr.
                          text = ref_ptr->get_text( ).
                          sl_status = 1.
                          EXIT.
                      ENDTRY.
                    ENDIF.
                    SHIFT sline BY tfield_attr-outputlen PLACES.
                    SHIFT sline LEFT.
                  ENDIF.
                  UNASSIGN <f1>.
                ENDLOOP.
                IF sl_status = 0.
                  CASE ss_step.
                    WHEN 1.  "Delete
                      ADD 1 TO d_stat.
                      APPEND <fs_wtab> TO <fs_itd>.
                    WHEN 2.  "Modify
                      ADD 1 TO m_stat.
                      APPEND <fs_wtab> TO <fs_itm>.
                  ENDCASE.
                ENDIF.
              ENDIF.
            ENDDO.
            IF sl_status = 0.
              IF d_stat IS NOT INITIAL.
                slchar = d_stat.
                CONCATENATE 'Deleted -' slchar 'record.' INTO text
                  SEPARATED BY space.
                DELETE (tabname) FROM TABLE <fs_itd>.
              ENDIF.
              IF m_stat IS NOT INITIAL.
                slchar = m_stat.
                CONCATENATE text 'Modified -' slchar 'record.' INTO text
                  SEPARATED BY space.
                MODIFY (tabname) FROM TABLE <fs_itm>.
              ENDIF.
              IF d_stat IS INITIAL AND m_stat IS INITIAL.
                MESSAGE 'No changes were done' TYPE 'S'.
              ELSE.
                MESSAGE text TYPE 'S'.
              ENDIF.
              LEAVE.
            ELSE.
              MESSAGE text TYPE 'I'.
              EXIT.
            ENDIF.
          ELSE.
            LEAVE.
          ENDIF.
      ENDCASE.
    *--END--
    Below is Function for a Dynamic Selection Screen
    FUNCTION zstan_selections.
    ""Local interface:
    *"  IMPORTING
    *"     VALUE(TABNAME) LIKE  DD02L-TABNAME DEFAULT 'ZSCARE'
    *"  EXPORTING
    *"     VALUE(DS_CLAUSES) TYPE  RSDS_WHERE
    *"  EXCEPTIONS
    *"      TABLE_NOT_VALID
    *"      OTHER_ERROR
      DATA texpr TYPE rsds_texpr.
      DATA twhere TYPE rsds_twhere.
      DATA trange TYPE rsds_trange.
      DATA BEGIN OF qcat.                    "Selections View for
              INCLUDE STRUCTURE rsdsqcat.    "Free Selectoptions
      DATA END OF qcat.
      DATA BEGIN OF tabs OCCURS 10.
              INCLUDE STRUCTURE rsdstabs.
      DATA END   OF tabs.
      DATA BEGIN OF fields OCCURS 10.
              INCLUDE STRUCTURE rsdsfields.
      DATA END   OF fields.
      DATA BEGIN OF efields OCCURS 10.
              INCLUDE STRUCTURE rsdsfields.
      DATA END   OF efields.
      DATA selid LIKE rsdynsel-selid.
      DATA actnum LIKE sy-tfill.
      DATA title LIKE sy-title VALUE 'Selection Screen'.
      DATA: maxnum LIKE sy-subrc VALUE '69'.
      CLEAR    tabs.
      tabs-prim_tab = tabname.
      COLLECT  tabs.
      DATA: position LIKE dd03l-position.
      DATA: keyflag  LIKE dd03l-keyflag.
      CLEAR fields.
      fields-tablename = tabname.
      fields-sign      = 'I'.
      DATA: step LIKE sy-subrc.
      SELECT fieldname keyflag position
        INTO (fields-fieldname, keyflag, position)
        FROM dd03l
        WHERE tabname = tabname
          AND fieldname NOT LIKE '.INCLU%'
          AND datatype NE 'CLNT'
        ORDER BY position.
        ADD 1 TO step.
        CHECK step LE maxnum.
        IF keyflag <> 'X'.
          efields = fields.
          APPEND efields.
        ENDIF.
        APPEND fields.
      ENDSELECT.
      IF sy-subrc <> 0.
        RAISE table_not_valid.
      ENDIF.
      CALL FUNCTION 'FREE_SELECTIONS_INIT'
        EXPORTING
          expressions              = texpr
          kind                     = 'F'
        IMPORTING
          selection_id             = selid
          expressions              = texpr
          where_clauses            = twhere
          field_ranges             = trange
          number_of_active_fields  = actnum
        TABLES
          tables_tab               = tabs
          fields_tab               = fields
          fields_not_selected      = efields
        EXCEPTIONS
          fields_incomplete        = 01
          fields_no_join           = 02
          field_not_found          = 03
          no_tables                = 04
          table_not_found          = 05
          expression_not_supported = 06
          incorrect_expression     = 07
          illegal_kind             = 08
          area_not_found           = 09
          inconsistent_area        = 10
          kind_f_no_fields_left    = 11
          kind_f_no_fields         = 12
          too_many_fields          = 13.
      IF sy-subrc = 0.
        CALL FUNCTION 'FREE_SELECTIONS_DIALOG'
          EXPORTING
            selection_id            = selid
            title                   = title
          IMPORTING
            where_clauses           = twhere
            expressions             = texpr
            field_ranges            = trange
            number_of_active_fields = actnum
          TABLES
            fields_tab              = fields
          EXCEPTIONS
            internal_error          = 01
            no_action               = 02
            no_fields_selected      = 03
            no_tables_selected      = 04
            selid_not_found         = 05.
        IF sy-subrc = 0.
          CLEAR ds_clauses.
          MOVE tabname TO ds_clauses-tablename.
          READ TABLE twhere WITH KEY ds_clauses-tablename INTO ds_clauses.
          IF sy-subrc <> 0.
            RAISE other_error.
          ENDIF.
        ELSE.
          RAISE other_error.
        ENDIF.
      ELSE.
        RAISE other_error.
      ENDIF.
    ENDFUNCTION.
    Regards,
    Shiva

  • Reg. the creation of new data type in ECC 6.0

    Hi All,
    I have a requirement wherein I need to create a new data type INT with length as 4. Is there any way that we can add create a new data type.
    Thanks in advance,
    Durga.

    I have tried using t-code SE11 but i am unable to create.

Maybe you are looking for