if you do a quick google on keywords <primavera calendars change>, you’ll end up with quite a few results that show you how to use primavera’s fill-down feature to change the activity calendar of all the activities in a project.
but i think the fill-down piece is only the first step in changing activity calendars.
what about durations?
changing an activity’s calendar in primavera can actually alter the activity’s duration. it’s true. sometimes you’ll even end up with partial or decimal durations where there were none before.
primavera calendars change activity durations
i wanted to demonstrate how to get around this problem with a primavera calendar change and changing durations.
in the video tutorial below, i’ll show you an alternative to using fill-down – so you can change your activity calendars and keep your durations unchanged.
why does primavera change an activities duration when it changes its calendar?
that’s what we’re going to investigate in this tutorial.
hi, i am michael from (世界杯2022亚洲比赛时间 ), thanks for checking us out. how i look at this activity – d&g engineering – 160 days. if i change its calendar from 8 hours by 5day work week, to something that has different hours per day and perhaps different hours of the week like 12×6, watch what happens to the duration. it goes down significantly; it goes down from 160 days to 107 days.
why is that happening? —i’ve been poking in the 世界杯2022亚洲比赛时间
support community and i see a lot of people are struggling with this.
how can we keep those durations set the same so that when i change the calendar it doesn’t change those durations?
i want to explain first what’s going on, and the first thing we need to understand is how durations get stored in the primavera database. primavera p6 actually doesn’t store durations in days in the primavera database – it stores that information in the hourly format. so why don’t we look at this situation again in an hourly view. we’re going to edit->user preferences and i’ll change my duration’s format to hours.
so what we can see here is that the actual hours for this activity is 1280 hours and i want to stress here that when i change calendars, this value doesn’t actually change. primavera doesn’t edit activity durations for you when you change your calendar. so what is happening, well i’m going to show you in this picture.
let’s say i have a five day activity which translates to 40 hours in terms of an 8 hour by 5 day work week. what happens when i change the calendar? if i change it to something with more hours per day and more days per week, this happens. primavera takes the exact during in hours and it is now trying to fill those daily buckets to the top.
so what we end up with is more hours in a day and we’re spreading that 40 hours less thin, a little bit more thickly in the beginning of the week and it ends up calculating a duration of 3.3days. because now with the first three days full we’ve only got ? of a day left. here’s how primavera calculates that, it takes our static 40 hour duration and divides it by twelve hours per day to calculate a 3.3 day original duration.
when i’m displaying my duration in days primavera is constantly recalculating that field based on the calendar that i’ve chosen. what i want you to understand is how primavera knows the definition of a day. so if i have two activities and i type in 1d, what does that translate that into?
well, for this calendar it translates it into 8 hours and for this calendar it translates it into 12 hours. how does it know how to do that, is it just because i named this calendar that way? let’s go to calendars to find out. what i want to show you here is if i modify each of these calendars, there’s a special button down here at the bottom called time periods. if i click on time periods, see this first bucket here, it says hours per day (eight), that is how primavera knows exactly how many hours are in this day for this particular calendar. so it’s actually up to you to set this field. when you’re creating calendars you should be setting this field to the appropriate hours per day. now have a look at the 12 hour x 6 day, no surprise its set to twelve.
now let’s say i wanted to change the entire calendar for this project to a 12 hour x 6 day work week and i wanted the durations to stay the same for them to not change. fortunately we can use something called a global change. so you can go up here to tools and you can go down and find this thing called global change. okay now i’ve built this global change called 8 hour-cal to 12 hour-cal. let’s have a look at it, and it looks like this.
it looks for activities where the calendar is equal to my old 8 hour x 5 day work week and then it’s going to perform some operations on those activities. first it’s going to update the calendar to the 12 hour x 6 day work week, so it’s going to do that for us automatically and it’s also going to update the original durations. it’s going to multiply each duration times one and a half, x1.5 because 12 hour days are 1.5 times longer than 8 hour days. now if i run this global change, it’s going to throw some errors and that’s because updating those durations will not work for some millstones, level of effort and wbs summary activities. so if i run it in its current form it’s going to fall down.
we’ll go ahead and apply a filter and we’ll apply it to filter out those types of activities that can update which includes milestones and wbs summary as well as level of efforts; and the normal filter, filters those guys out. what i’ll have to do is after i run this is i will still have to kind of do a two-step and update the calendars of those activities but not the durations. so go back into tools, global change, go ahead and apply to changes and here are the changes it’s going to make, i’m going to go ahead and commit. by the way big note here, when you work with global changes you need to make a backup copy of your project first. btw: in case your wbs bars show a different calendar, here’s what you can do to fix that.
warning: do not do this on your only copy of the project. don’t say i didn’t warn you. so let’s go ahead and commit the changes, we’ll have a look and as you can see, i now have a new calendar applied and i have the updated durations and they were kept exactly the way i wanted them. i’m michael lepage; i hope you learned something from this tutorial and don’t forget to check out our online learning portal for primavera users. thanks!
have your say
how did this tutorial help? what other issues arise when working with primavera calendars and durations? leave us a comment and join the conversation.