Hi,
When the parameter TimesheetWeeklyLoggingDays is set to "0 1 2 3 4 5 6", weekends are used to calculate the % or duration when using Fixed Units or Fixed Work. Therefore, we must set this parameter to "1 2 3 4 5".
When doing so, the and trying to Log hours for the week, the screen goes from Sunday to Thursday. (Obviously not what we intend.)
Modifying WeekStartDay to Monday correct Log hours for the week, but the week runs Sunday to Saturday, as per the default configuration.
How can this be fixed? (I.e. having Sunday as start day and excluding weekends from duration and % calculation.)
We are running 5.0.3 on Debian Stretch. Timezone is America/Toronto.
Anonymous
Hi!
Currently, PO doesn't support "resource calendars", neither per person nor for the entire organization. Mo-Fr working time is currently hard-coded in several parts of the system, even though the TimesheetWeeklyLoggingDays allow some configuration on the level of timesheet entry (but only there!).
Recently (in September 2020) we've implemented per-minute scheduling of activities. Before, precision was on the level of days.
This implementation if the first step towards full support of resource calendars.
We are currently working on PO V5.1 with a focus on security (there were two SQL injection vulnerabilities reported), and we want to release this version ASAP.
After that we could start workin on Resource Calendars. Would you be available sponsoring this work and/or as a beta tester? Please contact us at info@project-open.com.
Cheers
Frank
Thanks for the quick answer.
We are implementing PO within a non-profit climate research organization. Therefore, our scheduling needs are more on the order of the week than to the minute. So, for the sponsoring, that will probably not be possible.
As for beta-testing, please recontact me and we will see how we can help.
In the meanwhile, since the issue might be mostly resolved with making the parameter TimesheetWeeklyLoggingDays coherent with its description in the Log hours for the week (0 being Sunday, 1 Monday, etc.), I'll take a look at the source code and should we manage to fix it, I'll communicate you the patch we implement. Of course, any pointer as to where to start looking is welcome :).
Regards,
Dominique
Hi!
That sounds great.
I didn't really understand in which page your issue appears. Could you please provide a URL and/or a screen shot? What is the wrong actual result, and what should be the correct one?
I would need this information in order to point you to the right source code.
No problem.
We provide free 90min "Guided Tour" online meetings to all potential customers. Just contact me in a few days or weeks once you've got a list of questions/issues and we'll go through all of that. We found that (condensed, online meeting format) more efficient than writing back-and forth for tens of questions/issues...
Meanwhile:
- Please check "TCL for Web Nerds" from Phil Greenspun
- Search Google for "project-open data-model", and you'll find a ~50 page slide deck with important information about how data is stored.
- Search for "notes tutorial" for a heavily commented example of how to write a package
- Install "intranet-reporting-tutorial" for a tutorial on how to write custom reports.
Cheers
Frank
Hi,
I'm attaching two screenshots.
20201113a -> The monthly timesheet, with the week starting on Sunday, but no hour logged neither Sunday, nor Saturday, as expected.
20201113b -> Log hours for the week, proposing to log hours Sunday through Thursday, instead of Monday through Saturday. URL: /intranet-timesheet2/hours/new?julian_date=2459162&return_url=%2fintranet-timesheet2%2fhours%2findex&show_week_p=1
Parameters set:
TimesheetWeeklyLoggingDays 1 2 3 4 5
WeekStartDay 0
PO assumes that doing work on a weekend is an exception.
(This is unlike TaskJuggler, where you can explicitly say that there are weekend shifts or similar...)
You don't "damage" anything if you allow users to log hours for the weekend. The probably won't ever do this...
But I believe I now see what you want to say: On the 2nd screenshot in the weekly view you just want to start the columns with Monday, is that right?
Cheers
Frank
This is right, if the week starts on day 0 (Sunday) and we show days 1 2 3 4 5 (instead of 0 1 2 3 4 5 6), we should see Monday-Friday.
Good afternoon,
We have modified the file .../packages/intranet-timesheet2/www/hours/new.tcl with the following:
When using this modification:
- If the week starts on Sunday, and the logging days are 0 1 2 3 4 5 6
- Result is correct, same as before
- If the week starts on Sunday, and the logging days are 1 2 3 4 5
- Result is a table from Monday to Friday
- If the week starts on Monday, and the logging days are 0 1 2 3 4 5 6
- Result is a table from Monday to Sunday (in this context, displaying Sun-Sat wouldn't make sense.
- If the week starts on Monday, and the logging days are 1 2 3 4 5
- Result is a table from Tuesday to Saturday -> Not logical for time entry, but next setup works
- If the week start on Monday, and the logging days are 0 1 2 3 4
- Result is a table from Monday to Friday
If the definition of TimesheetWeeklyLoggingDays requires that 1=Monday, then a more complex logic needs to be built. On the other hand, if that definition is that 0=First day of the week, the patch seems to work.
Regards,
Dominique