Maintenance package in strategy : 'initial'  and 'subsequent' fields

Hello experts,
When creating a maintenance package :
'Initial' (Lead Float) and 'subsequent' (Follow-up float) : what those fields are for ? SAP help does not help me much. Explanations with examples would be great.
Thanks in advance

Hi Sundar,
In my first test : my strategy was 1M and 3M but i had only entered initial and subsequent values for 1M (and not for 3M).
In the second test , i updated my strategy : now 1M and 3M have inital (2days) and subsequent (4days) values. Then I created another maintenance plan :
-call horizon :100%
-scheduling horizon : 1year
-start of cycle : 10 May 2009 , so 1rst call will be for today (10 June)
With
-General task list : duration of (only one) operation is 10 hours
-Work center capacity :
Start                10:00:00
Finish               18:00:00
Length of breaks     01:00:00
Operating time       7.00   
After scheduling , the order generated shows:
Bsc start  => 08.06.2009     
Basic fin. => 09.06.2009     
SchedStart 08.06.2009 10:00
Sched.Fin. 09.06.2009 13:25
Basic finish date is still on 9 june...any ideas?
Thanks,

Similar Messages

  • Maintenance Plan and Subsequent Order Generation in Preventive Maintenance

    Hai,
    I have an equipment which has 6 Maintenance Activities.
    The following is the sequence of maintenance schedules:
    1) Activity I - Maintenance scheduled once in a year - During March
    2) Activity II - Maintenance scheduled twice a year - During March and September
    3) Activity III - Maintenance scheduled thrice a year - During January, May, September
    4) Activity IV - Maintenance scheduled thrice a year - During February, June, October
    5) Activity V - Maintenance scheduled four times a year - January, April, July, October
    6) Activity VI - Maintenance scheduled six times a year - January, July
    7) Activity VII - Maintenance scheduled six times a year - February, August
    How to create a Task list for the above scenario and subsequent maintenance plan. If orders are generated from the maintenance plant how can they be scheduled according to the above scenario. Should we create a single task list with only one group counter or should there be multiple group counters for each of the above given activities.
    Can anyone throw some light on the subject.
    Regards,
    R. Vijayakumar

    hi
    it is not possible to acheive your requirement with single task list.
    Also you cannot specify the exact month where the call date will lie on the month specified,even you create strategy for once in 3 month and 9 months it will be rotated from the last scheduled one ,ie after completion of 9 month then next will be 12 month instead of next year 3 rd month
    either you create seperate task list with maintenance plan on fixed date ,for example create a maintenance plan for once in year cycle and put start date for Act 1 as 01/03/2009 hence system will create call object on the specified period or refer [HELP|http://help.sap.com/saphelp_erp60_sp/helpdata/en/dd/23608bc1c211d395c400a0c93029cf/content.htm]
    regards
    thyagarajan
    Also post in EAM forum for maxim response

  • Annotation field locked and subsequent digital signatures

    Hi all,
    i'm testing my PAdES digital signature library in Obj-C and i encountered this kind of PDF file
    http://dl.dropbox.com/u/3995257/PDF/Locked.pdf
    Acrobat Reader tells that the document is locked by a signature (Signature2). As far as i know locked means that the file can't be modified but is is impossible to append a digital signature too?
    I tried to sign the document with my lib and as expected the second signature invalidates the first.
    http://dl.dropbox.com/u/3995257/PDF/Sign_Locked.pdf
    But... i tried to sign for the third time the previous file. I would expect that the first (locked) signature would be invalid but the second and the third would be not.
    http://dl.dropbox.com/u/3995257/PDF/Sign_Sign_Locked.pdf
    Despite my expectations, only the last signature is avalid according to Acrobat Reader.
    Does the first locked signatures invalidates the subsequents? Or more simply i can't sign a Document locked PDF?
    Thanks

    Yes, because the first is a lock – anything you do after the fact will invalidate.
    From: Adobe Forums <[email protected]<mailto:[email protected]>>
    Reply-To: "[email protected]<mailto:[email protected]>" <[email protected]<mailto:[email protected]>>
    Date: Wed, 28 Sep 2011 02:11:54 -0700
    To: Leonard Rosenthol <[email protected]<mailto:[email protected]>>
    Subject: Annotation field locked and subsequent digital signatures
    Annotation field locked and subsequent digital signatures
    created by Luigi Cuomo<http://forums.adobe.com/people/Luigi+Cuomo> in PDF Language and Specifications - View the full discussion<http://forums.adobe.com/message/3942243#3942243

  • When I started my PC this morning I got a pop-up message stating that CC has damaged files and required downloading. Indeed, CC did NOT work and subsequent attempts to download CC never got beyond the initial installer box. I am at my wits end here. Have

    When I started my PC this morning I got a pop-up message stating that CC has damaged files and required downloading from www.adobe.com/go/adobecreativecloudapp. Indeed, CC did NOT work and subsequent attempts to download CC never got beyond the initial installer box. The posted link also appears to be bogus I am at my wits end here. Have other users experiences this issue? Is this a clever intrusion?

    Please ensure you have the latest version of the Creative Cloud app installed
    http://helpx.adobe.com/creative-cloud/release-note/cc-release-notes.html
    We also have this solution for the having to sign in on every product launch
    http://helpx.adobe.com/creative-cloud/kb/unable-login-creative-cloud-248.html
    You can also try uninstalling & re-installing the CC.
    Regards
    Rajshree

  • How do i have subsequent fields label and values move down the page dynamic

    how do i have subsequent fields label and values move down the page dynamicly...
    the field in question "can grow" and can become quite big...overlaping the content of the fileds below...how can i make the fields below this large field move dyanmically so there is no overlap?

    if it is the same field and it is set to can grow you just need to make sure you put space between by inserting a section below

  • How To Retrieve the Maintenance Package in PM Module for the Maint. Strateg

    Hi All,
    I am trying to retrieve the 'Maintenance cycle' for a Package in the Maintenace package of the Maintenance strategy.
    I tried table T351P, but except 'Maintenance Cycle' i can see all other fields.
    In IP11 and in IP03 transactions i can see the Maintenace cycle field in the grid where maintenance packages are listed.
    But could not find a way to retrieve the maintenance cycle.
    Appreciate if you guys could help me out in getting the Maintenance Cylce.
    Cheers,
    Jaffer Ali.S

    Tortsen,
    I tried the solution suggested by you.Here's what i did :
    I executed the  ARCHIV_GET_CONNECTIONS with input field  OBJECTTYPE values as BUS2104.It gives me some entries in the output connections table.From the results , i picked up the ARCHIV_ID and ARC_DOC_ID fields as suggested by you.
    I went to execute SCMS_AO_TABLE_GET  with above two values as import parameters and COMP_ID = "data".But it does not give me any output.It says "HTTP error: 404 Not Found". Any idea why is it so?
    Then i went to try SCMS_DOC_URL_READ .I find here that there are two mandatory parameters viz . STOR_CAT , DOC_ID.I tried giving the ARCHIV_ID  value above as value for  STOR_CAT . But it does not recognize it.Then i went to the table SDOKSTCA to look for any valid values for STOR_CAT , but i am not sure which one applies to my scenario.How do i find this?
    i'll appreciate any help.
    Thanks,
    Karambir Singh

  • Plant Maintenance - Linkage between Task List and Maintenance Plan

    Sir,
    In Plant Maintenance, I have an equipment for which there are 9 maintenance activities that have to be performed every year. Out of these 4 activities will be carried out every month. 1 activity will be carried out during the months of February, June and October. 5 activities will be carried out only in the month of December.
    I need to create Task List for all these activities and subsequently create Maintenance Plans for all these Task Lists.
    Can I group all the 4 activites which will be carried out every month into one single Task List, with separate operation nos and time against each activity?. I don't know whether it is correct or not.
    If I use the above method I can create 3 Task Lists for this particular equipment with same Group no and 3 Group Counters.
    How to create Maintenance Plan for the above scenario?.
    Eventhough, 4 activites are carried out every month and they have been grouped into a single Task List (Group counter 1) and if these activites are carried out on different dates within a month how can I create Maintenance Plan and subsequently create a Maintenance Order?.
    I need some help in this regard. A detailed reply will be helpful.
    Can anyone throw some light in this regard.
    Regards,
    R. Vijayakumar

    you need to create one task list with a maintenance strategy with packages and hierarchy to outline the work requirements i.e. some tasks to be carried out 3 monthly some 4 monthly etc, and also if common tasks appear in 3 monthly package vs 4 monthly package then to suppress the duplicating task
    you would then define a strategy based maintenance plan and run it to get the respective maintenance orders

  • To retreive the Maintenance Cycle for a Maintenance Package

    Hi All,
    I am trying to retrieve the 'Maintenance cycle' for a Package in the Maintenace package of the Maintenance strategy.
    I tried table T351P, but except 'Maintenance Cycle' i can see all other fields.
    In IP11 and in IP03 transactions i can see the Maintenace cycle field in the grid where maintenance packages are listed.
    But could not find a way to retrieve the maintenance cycle.
    Appreciate if you guys could help me out in getting the Maintenance Cylce.
    Cheers,
    Jaffer Ali.S

    Hi,
    Check the table MMPX Maintenance cycle short texts .
    Regards,
    Ankur Parab

  • Assignment of Maintenance Package to Inspection Plan operation

    Hi All,
    For Stability Study I have created Inspeciton Plan and now I need to assign Maintenance Package to Operation. Please help in assiging Maintenance Strategy/Maintenance package to Inspection Plan operations.
    Thanks in advance.
    Regards,
    Devang

    Hi Luke,
    I was able to assign Maintenance Strategy and corresponding package to operation. Thanks for your help.
    But now I am stuck with some other issue. I have completed initial testing, then scheduling as well as result recording against scheduled inspection lots. But when I check "Display Stability History", I am getting tab for Initial Test along with one tab for each assigned conditions. But here issue is, under Intial Test tab I can see all characteristics results while for under other tabs (condition tabs) system shows only first characteristic result. Here please note that I have used same Inspection Plan and even result racorded and valution done (all accepted) is same for intial inspection lot as well as scheduled inspection lots for conditions.
    I am unable to understand why system is showing All Characteristics results under Initial Test tab but only first characteristic is shown under Condition tabs.
    Hope you can help me with this as well.
    Thanks and regards,
    Devang

  • Checking the initiality of the fields while creating  entries for a table

    While creating entries using table maintenance generator(TMG) i need to check the initiality of the fields.Are there any such events?
    I know i can go and change in the screen by making it mandatory or by writing a module in the PAI of the screen of table maintenance generator. Both of cases i have to change the TMG which is generated by SAP system. I want to know is there a way to achieve this with out changing the TMG possible events?

    hi rahul,
    as far as i know, you have to do your initial valifdation in TMG and you have to change your TMG. However, if you have checked the initial flag while defining the field, you will not have initial value for that particular field.... (if the field is key field, by default it is not initial)
    hope this helps....
    thanks and regards,
    tanmaya

  • How to change duration of Preventive Maintenance cylce in strategy plan?

    Hi,
    How one can change duration of Preventive Maintenance cylce in strategy plan?
    e.g. In IP11 we set Preventive Maintenance schedule as monthly and we want to change it as quarterly i.e. every 3 months from starting date.
    With Best Regards,
    Rajkumar

    Hi Mr Ramesh
    Thanks for reply .
    Kindly guide us about as what steps /Tcode need to be used to perform the following actions as suggested by you :
    a) Delete orders.
    b) Go to IP10 and Do a 'manual call' by entering the planned date to create orders for the deleted packages.
    Or
    Reschedule the Whole Maintance plan by entering appropriate dates.
    c) Also please clarify , that how the new Orders will get generated against the Deleted Orders .
    With Thanks and Rgds
    Sonia

  • Attaching search help to SCREEN FIELDS AND TABLE FIELDS

    Hello experts,
    Himanshu here.
    Could you please explain how we can assign search Help to a screen field AND TABLE FIELDS in ABAP?
    Please reply at the earliest,as we have some deliverables to be met
    Thanks

    Hi,
    In the initial screen of the ABAP Dictionary, select object class Search help, enter the name of the search help and choose Create.
    A dialog box appears in which you must select the type of search help.
    Select Collective search help and choose .
    The maintenance screen for collective search helps is displayed.
    Enter an explanatory text in the field Short text.
    You can for example find the search help at a later time using this short text.
    In the Definition tab page enter the parameters of the collective search help.
    Select the Imp flag if it is an import parameter. Select the Exp flag if it is an export parameter.
    Define the types for the parameters of a collective search help by assigning a data element. Enter the name of the data element that describes the contents of the search help parameter in the Data element field.
    You can assign the parameter a default value in the Default value field.
    In exceptions it could be necessary to change the standard process defined by the search help. You can implement the deviation from the standard using a search help exit.
    In this case enter the name of the search help exit in the corresponding field.
    On the Included search helps tab page, define the search helps that you want to include in the collective search help.
    You can include elementary search helps and collective search helps.
    Use the Hide flag to control whether an included search help should appear in the dialog box for selecting the elementary search help. If the flag is set, the search help is not offered.
    It makes sense to hide search help inclusions if one or more search paths in the standard system should not be used in a concrete R/3 System. Similarly, search help inclusions can also be already hidden in the standard system because they only can be used meaningfully in a few R/3 Systems. You have to cancel the flag in this case.
    Position the cursor one after the other on each allocated search help and choose Parameter assignment.
    In the next screen, enter the parameter names of the elementary search helps to which the corresponding parameters of the collective search help should be assigned in the field Reference parameter.
    You can select the parameters contained in the included search help using the input help. Create a proposal for the assignment with Proposal.
    Save your entries.
    A dialog box appears in which you have to assign a development class to the search help.
    Choose .
    Result
    The collective search help is activated. You can find information about the activation flow in the activation log, which you can display with Utilities ® Activation log. If errors occurred when the collective search help was activated, the activation log is automatically displayed.
    Do not forget to link the search help to a screen field. The search help attachment is not part of the search help definition; it is part of the object definition to which the search help is attached.
    regards,
    veeresh.

  • ALV and dynamic fields

    Hallo colleagues,
    I have to create a dynamic structure and show it within an ALV.
    Therefore I have created my stuctrure like this:
      MOVE 'COMP1' TO gw_component-name.
      gw_component-type ?= cl_abap_elemdescr=>get_string( ).
      INSERT gw_component INTO TABLE gt_components.
      MOVE 'COMP2' TO gw_component-name.
      gw_component-type ?= cl_abap_elemdescr=>get_i( ).
      INSERT gw_component INTO TABLE gt_components.
    get structure descriptor -> GR_STRUCTDESCR
      gr_structdescr ?= cl_abap_structdescr=>create( gt_components ).
    create work area of structure GR_STRUCTDESCR -> GR_WA
      CREATE DATA gr_wa TYPE HANDLE gr_structdescr.
      ASSIGN gr_wa->* TO <gw_wa>.
    So now I have my dynamic structure, but how i can create a field catalog, which fit into the function module 'REUSE_ALV_FIELDCATALOG_MERGE' and 'REUSE_ALV_LIST_DISPLAY'?
    Any help?
    Thanks in advance
    Irian

    Hi,
    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

  • Maintenance order release strategy

    Dear All,
    How can i design maintenance order release strategy by using authorization control.
    Please help with path(Configuration with details process if possible).
    Thanks

    Sushant,
    Please refer the authorization object: I_VORG_ORD which is having fields: AUFART - Order Type and BETRVORG - Business Transaction.
    Using this authorization object you can decide whom to give the authorization to release the order.
    You have to create a role in PFCG (please take help of BASIS team for the same) assign transaction IW31/ IW32/ IW38 and you will find this authorizaiton object where you have to assign the order type and allow only the business transaction which user is allowed and remove *.
    Value BFRE in field BETRVORG is for release of order which you have to restrict to that user after which the user wont be able to release the order.
    Please follow the above steps and do tell if you have any further clarification required.
    Hope it helps.
    Chin2.

  • Restriction of Maintenance packages

    Dear EAM Experts,
    In the maintenance plan we have assigned a strategy which consist of three packages Monthly , Quarterly and half yearly . When we schedule all three packages will be called . For every 3 month we want only the quaterly package to be called ( no montly package ) and for every six months only the half-early package ( no monthly and no quarterly ) . How to restrict this .
    Regards,
    DSL

    Dear,
    If a maintenance package is to replace other maintenance packages  when due, it must have a higher hierarchy, that means you have to maintain highest hierarchy in IP12
    If u want several maintenance packages are due at the same time, they must have the same hierarchy.
    Regards
    Srinivas

Maybe you are looking for

  • Mini DVI to VGA adapter doesn't seem to work

    Hi everyone I am trying to link my Powerbook to my TV using the mini DVI to VGA adapter. I have made the connection and the Mac seems to be detecting the TV display, but the desktop is not appearing on the TV screen. Is there something I need to do w

  • How to backup only the system with time machine?

    Hi, I have an external disk, seagate, that I used to backup working files from an older Mac.... I got a new Mac mini and would like to backup the system.      I don't want to erase these old files.  Is it possible to only backup the system OS and ins

  • Iphoto batch change, hang up.

    I tried to do a "batch change" and iphoto has hung up. Just like a microsoft computer would... I can not: log out of iphoto, log out of the computer or turn it off. Any ideas on how to log out or restart iphoto? Thanks! Al

  • Do i have to do something configuration in weblogic 6.1 to put a javabean?

    Hi, I'm trying to do a simple example about a simple javabean....but it...is giving to my some errors....my question is: Do i have to do something configuration in weblogic 6.1 to put a simple javabean?... i have created a web application called mywe

  • New material group

    Hi Gurus, Some materials have already been assigned to a material group. These are all active materials & stock exists for these materials.Now can we assign these  to a different group. Can we use the fld "external material group" for further groupin