Use of date User Defined Fields in filters

I am using Primavera P6 Professional.

My team members need to be able to filter programme data between two dates.  One is the current programme Data Date - obviously this is available in the filter as "DD".  The second is the previous programme Data Date; P6 doesn't store this anywhere.

The filter that we are using is quite complex, and the date for the previous DD needs to be entered at least four times.  In addition, every month or so, the DD will change, and hence the previous DD will need to be updated in the filter.

I thought it might be possible to use either an Activity or Project User Defined Field.  For the Project UDF, I created the date field and entered a value on the Projects tab.  For the Activity UDF, I created the date field, entered a value, and replicated it through all the activities.

In the filter, it is possible to use the Activity UDF and to compare it to fixed date values.  However, this does not do what I want.  

I would like to filter to find activities with the Start date in between Previous DD and Current DD.  It accepts DD in the High Value field.  But it does not allow me to refer to the Previous DD UDF in the Value field.  P6 only allows a date to be entered.

Is there any way that this can be achieved.

G
Gareth Evans 👤 Member for 2 years 11 months

Not tried XER Tools.  Our IT department restricts what .EXE files can be run!

I generally use P6 Parser for Excel.  Or edit the XER file as a text file.

Fortunately we are not working with that subcontractor anymore!!

D
david kelly 👤 Member for 10 years 3 months

Gareth

30 minutes to import an XER file? Do you use the AMAZING and free XER tools 2.1d to sanitise the XER file before import? Check it out, I've had a 90%+ improvent in XER import speed...

G
Gareth Evans 👤 Member for 2 years 11 months

Thanks - I’ll pass on the details of CleanSweep to our P6 administrators. It may be of use to them. 

I was receiving XER files from a subcontractor that were 30MB in size. They had to zip them to be able to email the file. It took 30mins for P6 to import the file. I edited the XER as a text file to investigate further. They had thousands of risk codes - most of which appeared to be corrupted characters. When I deleted those rows, the file size dropped to 1MB, and the import took seconds!!


I think you are correct in saying that P6 won’t do what I want. So I think my workaround with multiple filters will achieve the solution for 98% of our planners. The remainder will have to manually edit the dates in their own filter. We have significantly different experience levels across the business. Some are new to P6, having come in from MSP and Asta, or are new to planning, so we are trying to keep the solutions as simple as possible. Others, like myself, have much more experience of both planning and software. Although a civil engineer by training, I have 30 years experience of programming VBA and making the Microsoft software do what I need it to do!!


I agree with your assessment of P6 not being finished. I noticed the same with Project, where the interface lags about two versions behind Excel and Word. A year ago we went from and older version (about 5 years old) of P6 on our own server to the Oracle hosted version. I was excited for a big update in what we saw or could do. The new version of P6 Professional was installed, and I could hardly find any difference in 5 years of development. Made me realise at that point that Oracle don’t really love P6!!

D
david kelly 👤 Member for 10 years 3 months

Gareth,
Point taken. I have worked for about 40 large P6 users in the last 10 years, and my personal best is 107 copies of the 7x12 calendar in a single database. Pales into insignificance compared to finding 750k activity code values in one dictionary (every SAP work order issued for 10 years) 650k of them unused. My “under the hood” colleague and I have developed “CleanSweep” to cleanse P6 databases of the unused clutter. WARNING! Incoming sales pitch…

CleanSweep
Is a Java utility program to remove all unused objects from an Oracle P6 database. It is delivered in the form of a single ZIP file; this contains the application and the supporting files and libraries. There are so many versions of the P6 API, even within one release of P6, that we prefer to bundle the correct API with the ZIP file to ensure compatibility. It works with both Oracle and SQL server databases. It is best to run it on the server that hosts the P6 database to avoid firewall issues. All operations are performed via the API thereby ensuring the database integrity and Oracle warranty.
A full ‘dummy’ run can be invoked, which will produce the audit trail in either Excel or HTML (the output is usually too large for HTML).

P6 is, essentially, unfinished. I think of Oracle as this century’s Computer Associates – buy a software company, squeeze its users for maintenance without developing the software enough. Since I first used it as part of the Beta testing in 1999 there have been no significant changes, and none of the “unfinished” bits completed – my biggest beef is top-down budgeting which is specified very well, but horribly incomplete. Certainly, that has made my now elderly life much easier, I’ve been in software support for 50+ years and don’t have to learn anything new!
In my not very humble opinion, P6 will not do what you want. Its not MSP you need, but Spider Project which is two generations ahead of P6, but Russian…..
Best guess is an Excel lash-up. I got as far as an Activity Spreadsheet showing Planned Value Labour Units, Earned Value Labour units, a time interval as Months (it does real months) and use a catalogued Report Wizard script to pivot it directly into Excel. Some issues might remain, for example an activity is three months long, it is 66% Duration percent complete, and work was done in month -2 but not in month -1. Unless you use store period performance, P6 spreads the earned value over the whole elapsed time, so month -2 will show earned work. Same is true of Actual hours.

G
Gareth Evans 👤 Member for 2 years 11 months

This is the one time that I wish we were using MS Project!!  I could have solved this problem in no time using Visual Basic in MSP!  Oh well...

I think I'm going to have to attack it in a slightly different way.  I will set up a global layout with filter that gets rid of anything that we aren't interested in for this (WBS summary, level of effort etc).

I will then set up a number of global filters for each of the common date ranges.  eg. DD-6w→DD, DD-5w→DD, DD-4w→DD, DD-31d→DD, DD-30d→DD, etc.  Users can then apply the relevant date filter on top of the layout to give the correct data set for their project.  All they need to know is the difference between the data dates and can then select the correct time slice.

If there are unusual dates in a particular period, they can save the filter as a User filter and change the dates there.

D
david kelly 👤 Member for 10 years 3 months

Gasp...

OK, I can only use literals with Financial periods, so I think that idea is toast. Trouble is identifying a "Planned Value" for last month isn't possible any other way.

The filter that you posted earlier, could users before the start of each progress cycle, run a global change which moves the current (soon to be overwritten) data date to a UDF?

G
Gareth Evans 👤 Member for 2 years 11 months

I work for a very large construction company - in the top 15 in the UK. We have well over 100 planners. They can all edit their own filters, layouts and calendars, and also at project level. I am one of those planners with the limitations - it mostly works well. But I can submit layouts and filters to be saved globally - this is what we are doing here.

If all the planners were allowed to create and edit global filters and layouts, we would very soon have anarchy. The default layouts would have been changed and accidentally saved. We would soon have a list of filters starting “!!!” to keep that one at the top of the list. I’ve seen it in other companies where global calendars have been altered to suit a particular project, causing dozens of programmes to be affected!! One subcontractor that I worked had over one hundred of global calendars, all with similar names - the planners didn’t know which was the correct one to use. Their global filters were in an even worse situation. 

D
david kelly 👤 Member for 10 years 3 months

Phew. Parking your current issues for a moment, let me try and work through how I would set up a new project in your world. On starting a new project I create a project specific financial calendar, only 12 or 13 period end dates per year which can be entered individually. . Now I need agreement that "working" on an activity does NOT mean just recording a start date, but booking expended hours and/or earned value. SO.... can I filter by a "relative" financial period? I shall check.... I will be back. Can I just add a bitchy wee comment that not trusting the individual planning engineers to modify a filter is, well, unhelpful. You probably agree....

G
Gareth Evans 👤 Member for 2 years 11 months

David

Ref activities that did not happen in the period.  As part of our company planning KPIs, we need to report on our programme performance.  What proportion of activities happened in the period when compared to the baseline.  And we require planners to assign a reason category against activities that did not happen in the period.  This is why we need to filter the programme.

I considered using the range DD-1m to DD.  However, despite being a piece of software based on time, P6 always assumes that a month is 31d.  Whatever the month true duration!  In my mind, DD-1m would take you back to the same numerical day of the previous month, but sadly not.

This wouldn't work for us though.  Our projects are all using different reporting periods.  Mine are on a 4w or 5w cycle of pre agreed dates.  Some report on the last calendar day of the month.  And our Global layouts and filters are locked to prevent them being permanently changed by users.  As a result, users cannot change the date in the filter.  Hence my desire to use a variable of some type.

D
david kelly 👤 Member for 10 years 3 months

Currently, I need to refresh my password every time I try and login. I am at [email protected], it would be easiest if you use that...

 

SRY, my responses have gaps in them as I am a bit busy at the moment...

Two questions...

"activities that didn't happen in the period."

What does "not happen" mean - because if it is as easy as we earned nothing, and we expended nothing, then this is an easy-peasy "past period actuals" filter.

Even as I type the above line, I realise that PPA does NOT allow relative periods in a filter, just absolute ones which fails your "no editing of filters" control.....

 

Why does Start is not within range of DD-1m,  DD? Not work?

G
Gareth Evans 👤 Member for 2 years 11 months

David - thanks for your reply.

It's the actual Data Date of the baseline that I'm trying to use in the filter.  And I am trying to compare BL Project Start with the Data Date to find activities that didn't happen in the period.  This will allow users to categorise delays on these activities.

See the image below - a screenshot of the filter.  I would like to replace the date "28/12/2025 23:59" with a user defined field (or similar).  This date is the Data Date of the previous baseline.

The reason for this is the filter will be in a locked Global Layout, and hence the filter cannot be edited by users with standard privileges.  Each programme in our database has different data dates depending on client and operational requirements, so we cannot standardise this.

With a UDF (project or activity), the users could populate the value of the UDF with the previous Data Date.  Then the standard filter could be applied without editing it to show activities in the range DD_Previous to DD_Current.  I realise that I could ask users to make a copy of the layout and then manually edit the date fields in the filter, but this increases the chances of error.

I created an Activity UDF "DD_Prev".  It allows me to add that into a filter in the Parameter column, and to compare that against fixed dates in the Value and High Value columns.

But what I would like to do is to use DD_Prev in the Value column, in the same way that DD has been used in the High Value column in the image.

D
david kelly 👤 Member for 10 years 3 months

Hmm. Sounds easy, what am I missing? 

Take a baseline at each new DD. This should be a universal standard. Then Filter against BL Project Start.....

Forum Sponsor

Top Posters

Julian Pegg
1 posts
Peter Nagy
2 posts
Raymund de Laza
17 posts
Syed_Asad
0 posts
Tony Greyvenstein
0 posts
Ahmed Al-Jubouri
13 posts
Umar Alvi
3 posts
Sibusiso Mahlalela
0 posts
Michael Samanyayi
3 posts
Simon Gumede
0 posts