Working day to factory calendar date

Hello Experts,
I wish to get the factory calendar date, specific to a factory calendar, based on a working day.
Basically, if i pass say 4, then i want to get the date for the 4th working day based on a specific factory calendar.
Can someone throw some light on possible function module that i can use in BW ?
Thanks

That's what I was giving you, you give the working day and the factory calendar and you get the date, or you can use this function and you can do it the other way:
(Unless I'm completely missing your point here...)
    CALL FUNCTION 'DATE_CONVERT_TO_FACTORYDATE'
  EXPORTING
    CORRECT_OPTION                     = '+'
    DATE                               = G_WORKAREA3-CREATEDON
    FACTORY_CALENDAR_ID                = L_S_PLANT-FACTCAL_ID
  IMPORTING
*   DATE                               =
   FACTORYDATE                        = L_FCDATE
  EXCEPTIONS
    CALENDAR_BUFFER_NOT_LOADABLE       = 1
    CORRECT_OPTION_INVALID             = 2
    DATE_AFTER_RANGE                   = 3
    DATE_BEFORE_RANGE                  = 4
    DATE_INVALID                       = 5
    FACTORY_CALENDAR_NOT_FOUND         = 6
    OTHERS                             = 7.
  ENDIF.

Similar Messages

  • Pass working day to get factory calendar date

    Hello Experts,
    I wish to get the factory calendar date, specific to a factory calendar, based on a working day.
    Basically, if i pass say 4, then i want to get the date for the 4th working day based on a specific factory calendar.
    Can someone throw some light on possible function module that i can use?
    Thanks

    I want to pass sy-datum to get factory date and then check if this factory date is the 4th busiess day for that month based on a specific calendar.
    Or if i can pass in 4th bus day for a month (just pass 4) based on a specific factory calendar (just pass calendar id), then i would want the factory date, which i want to compare against sy-datum in my subsequent logic.
    I am trying to trigger a data load stating if factory date for this month = 4th business day, then run load, else dont. And this in BW.
    I dont have the FM that you mentioned above, in BW and is available only in R/3

  • No of days using factory calendar

    Hi Gurus,
    I know effective date(Example 01/01/2007). How to calculate no. of working days for effective date 01/01/2007 using factory calendar.
    Thanks
    Liza

    Hi Liza,
    start date and end dates are needed only if you want to know the number of working days between the two dates. In your case you can get number of working days  between effective date and the begining of factory calendar validity date.
       Check  FM "DATE_CONVERT_TO_FACTORYDATE"  . You have to pass parameters      Date  and  Clendar ID. The output will be number of working days .
    ie  effective date  minus    TFACD-VJAHR
    Table TFACD gives you the calendar ID and the validity dates(  VJAHR and BJAHR)
    Jaya

  • To find the no of working days b/w given date

    Hi ABAP Experts,
             Here i have one requirement .
             table is tfacs
              in  this table i want to know the no of working days b/w  the given date. Here i have attached my code .pls go through it and do me needful.
    TABLES : tfacs,vbrk.
    DATA: BEGIN OF ty_tfacs OCCURS 0,
            ident TYPE tfacs-ident,
            jahr TYPE tfacs-jahr,
            mon01 TYPE tfacs-mon01,
            mon02 TYPE tfacs-mon02,
            mon03 TYPE tfacs-mon03,
            mon04 TYPE tfacs-mon04,
            mon05 TYPE tfacs-mon05,
            mon06 TYPE tfacs-mon06,
            mon07 TYPE tfacs-mon07,
            mon08 TYPE tfacs-mon08,
            mon09 TYPE tfacs-mon09,
            mon10 TYPE tfacs-mon10,
            mon11 TYPE tfacs-mon11,
            mon12 TYPE tfacs-mon12,
            basis TYPE tfacs-basis,
            fenum TYPE tfacs-fenum,
            wenum TYPE tfacs-wenum,
            load TYPE  tfacs-load,
            string1(31) TYPE c,
            string2(31) TYPE c,
            string3(31) TYPE c,
            string4(31) TYPE c,
            string5(31) TYPE c,
            string6(31) TYPE c,
            string7(31) TYPE c,
            string8(31) TYPE c,
            string9(31) TYPE c,
            string10(31) TYPE c,
            string11(31) TYPE c,
            string12(31) TYPE c,
            uk(31) TYPE c,
            total1 TYPE i,
            total2 TYPE i,
            total3 TYPE i,
            total4 TYPE i,
            total5 TYPE i,
            total6 TYPE i,
            total7 TYPE i,
            total8 TYPE i,
            total9 TYPE i,
            total10 TYPE i,
            total11 TYPE i,
            total12 TYPE i,
            END OF ty_tfacs.
    SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS : s_jahr FOR tfacs-jahr MODIF ID b1.
    SELECT-OPTIONS : mon FOR tfacs-mon01  MODIF ID b1.
    SELECT-OPTIONS :  s_month FOR vbrk-erdat MODIF ID b2.
    SELECTION-SCREEN : END OF BLOCK b1.
    SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME.
    PARAMETERS  r1 RADIOBUTTON GROUP c DEFAULT 'X' USER-COMMAND flag .
    PARAMETERS  r2 RADIOBUTTON GROUP c .
    SELECTION-SCREEN END OF BLOCK b.
             INITIALIZATION
    INITIALIZATION.
    AT SELECTION-SCREEN OUTPUT.
      IF r1 NE space.
        LOOP AT SCREEN.
          IF screen-group1 EQ 'B2'.
            screen-output = 1.
            screen-active = 0.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ELSE.
        LOOP AT SCREEN.
          IF screen-group1 EQ 'B1'.
            screen-output = 1.
            screen-active = 0.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ENDIF.
              start - of - selection
    start-of-selection.
      IF r1 = 'X'.
        PERFORM get-data.
        PERFORM display-data.
      ENDIF.
    &      form  get-data
           text
      -->  p1        text
      <--  p2        text
    form get-data .
      DATA :  total1  TYPE i.
      SELECT * FROM tfacs INTO TABLE ty_tfacs
                                     WHERE ident EQ 'IN'
                                     AND   jahr IN s_jahr.
      LOOP AT  ty_tfacs WHERE ident = 'IN'.
        IF sy-subrc EQ 0.
          PERFORM get_string USING ty_tfacs-string1
                                   ty_tfacs-mon01
                                   ty_tfacs-total1.
          PERFORM get_string USING ty_tfacs-string2
                                    ty_tfacs-mon02
                                    ty_tfacs-total2.
          PERFORM get_string USING ty_tfacs-string3
                                   ty_tfacs-mon03
                                   ty_tfacs-total3.
          PERFORM get_string USING ty_tfacs-string4
                                         ty_tfacs-mon04
                                         ty_tfacs-total4.
          PERFORM get_string USING ty_tfacs-string5
                                         ty_tfacs-mon05
                                         ty_tfacs-total5.
          PERFORM get_string USING ty_tfacs-string6
                                         ty_tfacs-mon06
                                         ty_tfacs-total6.
          PERFORM get_string USING ty_tfacs-string7
                                         ty_tfacs-mon07
                                         ty_tfacs-total7.
          PERFORM get_string USING ty_tfacs-string8
                                         ty_tfacs-mon08
                                         ty_tfacs-total8.
          PERFORM get_string USING ty_tfacs-string9
                                         ty_tfacs-mon09
                                         ty_tfacs-total9.
          PERFORM get_string USING ty_tfacs-string10
                                         ty_tfacs-mon10
                                         ty_tfacs-total10.
          PERFORM get_string USING ty_tfacs-string11
                                         ty_tfacs-mon11
                                         ty_tfacs-total11.
          PERFORM get_string USING ty_tfacs-string12
                                         ty_tfacs-mon12
                                         ty_tfacs-total12.
        ENDIF.
        ty_tfacs-uk = ty_tfacs-total1 + ty_tfacs-total2
                      + ty_tfacs-total3 + ty_tfacs-total4
                      + ty_tfacs-total5 + ty_tfacs-total6
                      + ty_tfacs-total7 + ty_tfacs-total8
                      + ty_tfacs-total9 + ty_tfacs-total10
                      + ty_tfacs-total11 + ty_tfacs-total12.
        MODIFY  ty_tfacs TRANSPORTING  total1 total2 total3
                                       total4 total5 total6
                                       total7 total8 total9
                                       total10 total11 total12
                                       uk.
      ENDLOOP.
    PERFORM write1-data USING 'COU' 'YEAR' 'MONTH01'
                               'MONTH02' 'MONTH03' 'MONTH04'
                               'MONTH05' 'MONTH06' 'MONTH07'
                               'MONTH08' 'MONTH09' 'MONTH10'
                               'MONTH11' 'MONTH12' 'TOTAL WDAYS' .
    LOOP AT ty_tfacs.
       PERFORM write1-data USING ty_tfacs-ident ty_tfacs-jahr
                                 ty_tfacs-total1 ty_tfacs-total2
                                 ty_tfacs-total3 ty_tfacs-total4
                                 ty_tfacs-total5 ty_tfacs-total6
                                 ty_tfacs-total7 ty_tfacs-total8
                                 ty_tfacs-total9 ty_tfacs-total10
                                 ty_tfacs-total11 ty_tfacs-total12
                                 ty_tfacs-uk.
    ENDLOOP.
    ENDFORM.                    " get-data
    TOP-OF-PAGE.
      FORMAT COLOR 5 ON.
      WRITE :/10 'COUNTRY',
              20 'YEARS',
              35 'MON01',
              45 'MON02',
              55 'MON03',
              65 'MON04',
              75 'MON05',
              85 'MON06',
              95 'MON07',
              105 'MON08',
              115 'MON09',
              125 'MON10',
              135 'MON11',
              145 'MON12',
              170 'total wdays'.
      FORMAT COLOR OFF.
      WRITE :/ SY-ULINE.
    *&      Form  display-data
          text
    -->  p1        text
    <--  p2        text
    FORM display-data .
      LOOP AT ty_tfacs.
        WRITE :/10 ty_tfacs-ident,
                20 ty_tfacs-jahr,
                30 ty_tfacs-total1,
                40 ty_tfacs-total2,
                50 ty_tfacs-total3,
                60 ty_tfacs-total4,
                70 ty_tfacs-total5,
                80 ty_tfacs-total6,
                90 ty_tfacs-total7,
               100 ty_tfacs-total8,
               110 ty_tfacs-total9,
               120 ty_tfacs-total10,
               130 ty_tfacs-total11,
               140 ty_tfacs-total12,
               150 ty_tfacs-uk.
      ENDLOOP.
    ENDFORM.                    " display-data
    *&      form  get_string
          text
         -->p_0250   text
         -->p_0251   text
         -->p_0252   text
    form get_string  using    p_0250   " month
                              p_0251   " string
                              p_0252.  " total
    p_0250 = p_0251.  " move month to string
    TRANSLATE p_0250 USING '0 ' . " translate
    CONDENSE p_0250  NO-GAPS.     " condense
    p_0252 = STRLEN( p_0250 ).    " pass length of string to total
    ENDFORM.                    " get_string
    ***&      Form  write1-data
          text
         -->P_0306   text
         -->P_0307   text
         -->P_0308   text
         -->P_0309   text
         -->P_0310   text
         -->P_0311   text
         -->P_0312   text
         -->P_0313   text
         -->P_0314   text
         -->P_0315   text
         -->P_0316   text
         -->P_0317   text
         -->P_0318   text
         -->P_0319   text
         -->P_0320   text
    *form write1-data  using    p_0306
                              p_0307
                              p_0308
                              p_0309
                              p_0310
                              p_0311
                              p_0312
                              p_0313
                              p_0314
                              p_0315
                              p_0316
                              p_0317
                              p_0318
                              p_0319
                              p_0320.
    *WRITE :/ p_0306,
            p_0307,
            p_0308 left-justified,
            p_0309 left-justified,
            p_0310 left-justified,
            p_0311 left-justified,
            p_0312 left-justified,
            p_0313 left-justified,
            p_0314 left-justified,
            p_0315 left-justified,
            p_0316 left-justified,
            p_0317 left-justified,
            p_0318 left-justified,
            p_0319 left-justified,
            p_0320 left-justified.
    *ENDFORM. " write1-data
    from this report what i am getting is year and its 12 months but my requirement is i will give date using select options and i should get the total no of  working days in b/w this date.

    Use the following code to find no of working days b/w given date. Use the correct factory_calendar_id in the function module. L_DAYS will display the required result:
    PARAMETERS: p_date1 TYPE sydatum,
               p_date2 TYPE sydatum.
    DATA: date1        LIKE scal-date,
         date2        LIKE scal-date,
         correction   LIKE scal-indicator,
         calendar     LIKE scal-fcalid,
         factorydate1  LIKE scal-facdate,
         workday1      LIKE scal-indicator,
         factorydate2  LIKE scal-facdate,
         workday2      LIKE scal-indicator,
         l_days TYPE scal-facdate.
    CALL FUNCTION 'DATE_CONVERT_TO_FACTORYDATE'
      EXPORTING
        date                       = p_date1
        correct_option             = '+'
        factory_calendar_id        = 'US'
      IMPORTING
        date                       = date1
        factorydate                = factorydate1
        workingday_indicator       = workday1
      EXCEPTIONS
        correct_option_invalid     = 1
        date_after_range           = 2
        date_before_range          = 3
        date_invalid               = 4
        factory_calendar_not_found = 5.
    IF sy-subrc = 0.
      CALL FUNCTION 'DATE_CONVERT_TO_FACTORYDATE'
        EXPORTING
          date                       = p_date2
          correct_option             = '+'
          factory_calendar_id        = 'US'
        IMPORTING
          date                       = date2
          factorydate                = factorydate2
          workingday_indicator       = workday2
        EXCEPTIONS
          correct_option_invalid     = 1
          date_after_range           = 2
          date_before_range          = 3
          date_invalid               = 4
          factory_calendar_not_found = 5.
      IF sy-subrc = 0.
        l_days = factorydate2 - factorydate1.
        WRITE: / l_days.
      ENDIF.
    ENDIF.

  • Change working timings in factory calendar

    Dear All,,
    Can any one guide me , how to change working timings in factory calendar....
    thank you advance.......

    In the factory calendar definitions in t.code SCAL, the working days are maintained. Working time is specific to each application area like shipping, production etc. For shipping area timings maintenance, check the link Factory Calendar Working Times and Factory Calendar Working Times
    Regards,

  • Calculation of no. of working days (per Factory Cal) between 2 date chars

    This question could be considered to be in continuation of a previous post called "Working days of month with factory calendar"
    I have two date Characteristics: say Date1 and Date2. I need to find the number of working days between them based on the factory calendar.
    (And yes we have already defined the default factory calendar in IMG under 'General Reporting settings' ).
    The previous post proposed the following:
    1) Convert date1 into factorydate (standard functionmodule)
    2) Convert date2 into factorydate (standard functionmodule)
    Perform date1 - date2 to get number of working days.
    I agree that there is a std function module to convert cal date to factory date called: 'DATE_CONVERT_TO_FACTORYDATE'
    But what are the steps for calling the conversion? Should I create a new Formula variable of 'Customer Exit type' give it a name and define the Function module in CMOD? But then how do I attach the formula variable to the date characteristic. Note that my infoobjects are Chars so I cannot do date1- date2 in the query as is possible with keyfigures!
    Please help! (my version is BW 3.0)
    Thanks
    Naresh

    Hi,
    For the above scenario when you need to calculate date 1 - date 2. we can't build a new formulae or calculated KF directly because those are the chars.
    So we need make chars to act as KF through Formulae with replacement path.
    create a formulae variable on those 2 Date chars with Processing type as replaccement then those 2 Dates can be avilable to build a formulae as ur requirement.
    Let me know if you need any more information.
    Thanks,
    Raju

  • Work day of a calendar

    Hi all,
    I am searching for a FM which will say 3rd work day of a factory calendar or 4th work day of a factory calendar etc. I could see there are few FMs to say first work day - last work day but not the Nth work day. If we input some date and factory calendar, we should get which work day it is. For example if we give 09/02/2010 and factory calendar name it should return as 2nd workday etc. Any help will be appreciated..
    Thanks in advance.
    Moderator message: date calculation questions = FAQ, please search before posting.
    locked by: Thomas Zloch on Sep 15, 2010 4:39 PM

    hi,
    Please check with this fm DATE_CONVERT_TO_FACTORYDATE.
    Keerthi

  • Adding days to a calendar date

    Hi, I have to insert pay periods in a database and need to be able to have a start and end date for each record. To add to the complexity and I have Exempt and Non-Exempt employees with different settings (that is not so important here). An exempt employee enters thier time in 2 week increments. So, as you will see in the code below, if I start on January 3rd of 2000 my start date will be incremented by 13 for each loop though the years and weeks. This works great! However, as soon as I start trying to set my endDate it doesn't work.
    Here's what happens. It starts out looking great where my endDate increment is 1 day shorted than the start date (to avoid overlapping). Then toward the bottom of my loop (60 years time 26 weeks) My pay period has a 2+ years span?? Makes no sense to me at all.
        public String loadPayPeriods(HttpServletRequest request,int isExempt) throws SQLException,Exception{
            StringBuffer query=new StringBuffer(500);
            int startYear=2000;
            int numYears=2060;
            int startWeek=1;
            int numWeeks=0;
            int increment=0,endIncrement=0;
            int exemptInt;
            Calendar startDate=Calendar.getInstance();
            Calendar endDate=Calendar.getInstance();
            String DATE_FORMAT = "yyyy-MM-dd";
            String YEAR_FORMAT = "yyyy";
            String MONTH_FORMAT = "MM";
            String DAY_FORMAT = "dd";
            java.text.SimpleDateFormat sdf=new java.text.SimpleDateFormat(DATE_FORMAT);
            if (isExempt==1){
                startDate.set(2000,0,3);
                endDate.set(2000,0,3);
                numWeeks=26;
                increment=14;
                exemptInt=1;
            } else {
                startDate.set(2006,0,1);
                endDate.set(2006,0,1);
                numWeeks=52;
                increment=7;
                exemptInt=0;
            // the end increment is one day less then the start increment so set that here
            endIncrement=increment-1;
            // setup the session for error handling
            HttpSession session=request.getSession(false);
            query.append(endIncrement);
            query.append("<br><br>");
            // loop through the number of years that we are inserting
            for(startYear=2000;startYear<=numYears;startYear++){
                // loop over the number of weeks in a year
                for(startWeek=1;startWeek<=numWeeks;startWeek++){
                    // set the start and end dates here
                    if (startWeek != 1){
                        startDate.add(startDate.DATE,increment);
                        // add the one first otherwise we tumble out of control by
                        // always being behind by one, unless this is the first week
                        endIncrement=increment;
                    // increment the end date by the number of days in the payperiod
                    // minus one.
                    endDate.add(startDate.DATE,endIncrement);
                    query.append("<pre>");
                    query.append("INSERT INTO Pay_Period_Table(");
                    query.append("Pay_Period_ID, ");
                    query.append("Pay_Period_Start, ");
                    query.append("Pay_Period_End, ");
                    query.append("Is_Active, ");
                    query.append("Is_Deleted, ");
                    query.append("Is_Exempt ");
                    query.append(") ");
                    query.append("VALUES ( ");
                    query.append("SYS_GUID(), ");
                    query.append("to_date('"+sdf.format(startDate.getTime())+"'), ");
                    query.append("to_date('"+sdf.format(endDate.getTime())+"'), ");
                    query.append("1, ");
                    query.append("0, ");
                    query.append(exemptInt);
                    query.append(")");
                    query.append("</pre>");
                    query.append("<br><br>");
                    try {
                        // get the connection
                        Connection dbCon=new DbConnection().getConnection();
                        // Create a Statement
                        Statement stmt = dbCon.createStatement();
                        // set the timeout here so that we don't get overlapping statements
                        stmt.setQueryTimeout(2);
                        // run the update/insert
                        stmt.executeUpdate(query.toString());
                        stmt.close();
                        dbCon.commit();
                        dbCon.close();
                    } catch (SQLException se){
                        session.setAttribute("errMessage","SQL Error: "+se);
                    } catch (Exception e){
                        session.setAttribute("errMessage","General Exception: "+e);
                    } finally {
                        // TODO: Finally statement
            return query.toString();
        }If anyone has any ideas I would LOVE to see what I am doing wrong. It baffels me and has been for several hours.
    Thanks!
    -- Nik

    Just giving a quick glance, I believe the problem is this line:
    endDate.add(startDate.DATE,endIncrement);If you are trying to say the endDate should be the startDate + endIncrement, the code should read:
    endDate.setTime(startDate.getTime());
    endDate.add(Calendar.DATE, endIncrement);DATE is a static, final field in Calendar that just tells add() which value to increment (static fields should be referenced through the class name rather than by an instance name).
    Let me know if I misunderstood what you were trying to do.

  • Sales order schedule date is a (working) day before Scheduled ship date

    In MRP/MPS planning, the forecast consumption is occuring for all sales orders at a date (sales order schedule date) which is always a working day before the Scheduled Ship Date (SSD). What is the logic?
    Time fences are not used.
    E.g. Sales order is scheduled to ship (SSD) on 30th Nov, in forecast set > Forecast items > Consumptiion > Detail, the sales order schedule date is a day before SSD.

    Hi,
    This is a complex issue; best solution is by using APO/GATP.
    If not, then in ERP only, the second best is:
    1) Work with assembly processing in SO, meaning that a production/planned order is automatically created in the customer order during order creation.
    2) Then, after the order is created it is scheduled, and the delivery date proposal is based on that.
    3) Now you can check in the order that there are no capacity overloads, and all capacity required to produce on the proposed date is available. If yes, you're done. If not, it gets a bit complex, since you actualy need to switch to capacity planning, do capacity leveling and dispatch (PP), and the you get a new feasible schedule proposal based on that.
    APO/GATP could do all that automatically!
    Regards,
    Mario

  • Suggestions on calculating work days instead of Calendar days

    Hi there,
    I would like for someone to suggest how would I approach a project in calculating a date that would consider if a date is a holiday or a work day. For example: If I take current date + 7 normally it would be a week (7 days). However, if a day in that week is a holiday, then it would return the 8th day. If the 8th day falls into a weekend, then, get the next work date.
    Any ideas would be greatly appreciated.
    Thanks for your assistance in advance.

    Thanks. This give me a pretty good start. I am thinking that I need a table that store holidays (Non-work days excluding weekend). Once I load this table into memory, then I would check the first date + 7. Then compare the two dates against the array to see if there is a holiday. If there is, then I would increment the end date by 1 and validay if it is a weekend date. If it is, I would continue to incurement until it is nolonger an weekend date. Once I have that, I would check the date against the array (where I left off) and continue to validate to see if there are more holidays.
    What do you think about this approach?

  • Factory Calendar issue in creation of Sales Order/ Delivery Order

    Hi all,
    There is one issue. Our user is not able to create Sales Order/ delivery order as he is getting the below error message u201CDate 2010-12-27 lies after the end of Factory calendar F1u201D. But when I checked the plant in customization, the Factory calendar assigned is u201CKRu201D and not u201CF1u201D. So I donu2019t understand why this error message is appearing. But when I checked Factory calendar u201CF1u201D, it was valid only up to 2010 and there are special rules also set. Only few days in the year are working days. Factory Calendar u201CF1u201D description says u201CKOR customers billed on the 25th of every monthu201D
    Please advice.
    Regards,
    Brijesh

    Dear
    If F1 is the correct calander , then goto OP03-Calander Maintenece -select the Holoiday Caleneder  and extende the Valaidity till 2020 and also Select the Factory Calander  do the same till 2020 .Now Goback to main screen of OP03-Plant asisngement -re-assing the same F1 calaneder .
    Secondly check the factory calender of the plant in OX10.Then in SPRO > enterprise structure >Definition > logistic execution>define shipping point .Select you shipping point and assgin the proper factory calender
    .Goto OVX5 , choose your sales organization, click on details, Detailed information tab - Sales Org Calendar (maintain your factory calendar here not Sale Org Calander )
    .Check in VOV8, use the "Propose delivery date" and "Lead time in Days" options to default today's date as the requested delivery date.
    Refer : Public holiday dates issue
    Regards
    JH

  • How to set 2 factory calendar in 1 plant?

    Now I setup 1 factory calendar and assign to plant and it contains 5 workday (Monday-Friday) per week.
    In the future , For 1 plant we want to separate into 2 production lines and the workday are different. What should I do?
    Sample of different workday
    Production 1 , workday are 1-15 of each month
    Production 2 , workday are Monday-Friday
    Look forward to hear any suggestion.

    Dear DB49
    Thanks for you recommendation,Could you please tell me which parameter I have to set in OPU5?
    Now I set parameter as below detail but it still have problem about basic date in planed order.
    Parameter in OPU5
    Detail Scheduling -> SelID:Detailed = 01
    Scheduling = Checked
    Generate capacity reqs. = Checked
    Scheduling level   = Via Detailed Scheduling
    Adjust dates = Adjust basic dates,adjust dep. reqmts to operation date
    For capacity scheduling = Always basic dates, dep.reqmts to operation dates
    Scheduling type = Backwards
    Reduction type = All operation in the order will be reduced
    Maximum reduction level = Do not reduce
    Example
    I set 3 working days on factory calendar (Monday,Tuesday,Wednesday)
    PIR   -> requirement date 18.10.2010
    Total Operation time = 5 Days (from tcode c203)
    When run MPS (MD40/MD41) with scheduling = Lead Time Scheduling and Capacity Planning
    Planned order
                          Basic Dates                                  Production Dates
    Finish              18.10.2010                                  20.10.2010
    Start                05.10.2010                                  05.10.2010
    Why basic finish dates is not equal 20.10.2010?
    Best regards,
    Jariya

  • Non-working day setting affects in MM

    Hi,
    in case Saturday and Sunday are defined as non-working days in factory calendar, what funtions are possible in MM on non-working days? Is it possible to perform physical inventory, create and post deliveries, create purchase orders and so on?
    Br,
    Tapio

    done

  • Holiday as Working day - Marked as leave is not deducting from Quota

    Hi Experts,
    Please help me with below mentioned scenario.
    We have one holiday calendar for two personnel areas however holidays are different in both personnel areas, and as it is middle of year so I can't create a new holiday calendar for other personnel area so we maintain special day as working day in factory calendar to change holiday as working day for one personnel area.
    Holiday Calendar :- HA (haryana) ,                      Personnel Area (A)           Personnel Area (B)
    Holidays :-     25th Till 28th Oct Diwalii,                25th till 28 Holiday             26 & 27 Holiday only (25 & 28 working in special day rule)
    Issue :- personnel area (B) Now if Employee is getting leave for 25th (which is holiday in calendar and maintained as working day in special day rule) it is not deducting leave from quotas.
    Issue :- Half Employee on 25th are marked as Holiday (HH) in system however half have Absent (AA) in report.
    **(Should I try to make a deduction rule and counting rule for 25th & 28th as it is holiday & working togather... if yes thn what needs to be selected in counting rule)**
    Please provide inputs in this regards as it is urgent.
    Thanks you!!
    Anshul

    Hi Swapnil,
    Thanks man, I understood now, Yes you are right as but it is not working when I am trying to solve this issue after maintaining IT 2003. Now I have to go with second solution however I made Counting rule and deduction rule but facing issue assigning counting rule to Absence Type so the question is Do i need to make new absence type then counting rule and deduction rule or I can just make a counting rule and assign it to the existing Absence type?????
    Please help me through the process as I am little confused, just explain a bit like.. I need to make counting rule and assign it from <so & so> place.
    Thank you so much for your precious time,
    Anshul Upadhyay

  • Factory Calendar update

    Hell All
    For plant my client is requesting that 26 December 2014 be marked as a non working day. The plant is
    all taking this day as one of their floating holidays and need it considered as
    non work day in factory calendar to extend their Christmas break.
    Is there any impact if we do this for other module etc.,,what would be best way if we do through open client or landscape.
    Can anyone tell me how to do the same.
    Regards
    Ananthi

    Hello Remi,
    While I try to create a workbench request it shows the target system deletes the Holiday calendar.Factory Calendar etc.,after moving the TR it deletes the initial and overwrites ?
    when I try to check for transport conflict analysis it takes production logon which never happens before.
    Also here I have made the changes for Factory calendar alone in special rule,whereas no changes to holiday calendar,for this case is it require to run the work schedule rule.
    Regards

Maybe you are looking for