ProjectForge 9.0.8
Mini release: tagged only, without jar or docker image, build it from the source code. Ready-made binaries: https://github.com/micromata/projectforge/releases/latest
Update of ProjectForge 9.0.0, what's new in ProjectForge 9: https://github.com/micromata/projectforge/releases/tag/9.0.0-RELEASE
- Addresses and address campaign values in the new interface
- New availability entries with substitutes and a quick view
- Customers and projects independent of cost units, with number ranges
- Selection boxes without inactive entries, name matches first
- Fix: managers can approve vacations again
- Fix: team calendars on the gateway show only the user's own visible absences
Overview
- Addresses: list, view and form migrated to the new interface, with vCard import, takeover from pasted text, exports, mass update and the favorite star in the list; the address books are migrated as well.
- Address campaign values: migrated to the new interface, with a comparison campaign (e.g. last year's) whose values can be adopted in the mass update or the form; campaigns can be set inactive.
- Availability: new entries for periods of reduced availability (e.g. parental leave, workation) with substitutes and conflicts, shown in the calendar, team calendars, the team vacation calendar and a quick view of the next weeks.
- Vacations of others: visible to the members of the person's groups from 1 January of the current year; the team vacation calendar picks users, freelancers included.
- Customers and projects: system-wide unique project numbers, usable without cost units, configurable number ranges with the next free number offered.
- Selection boxes and lists: inactive entries only on request, name matches first and found by parts of the name, long lists ask for a search term; inactive entries struck through thin and grey in lists.
- Further: notification rules end their pending notifications when deactivated and choose the target of "Open", script editor compares versions, exchange rate API tested on the system dashboard, new test data for the setup.
- Fixes: approval of vacations by managers, absences in team calendars on the gateway, banners of manual notification rules, consumption bar of the time sheet form, events converted into time sheets, outdated list requests.
All changes
Added
- Availability
- New entries for periods of reduced availability (e.g. parental leave, workation) of any user, freelancers included, with type, reachability, location, a comment for the team and an internal comment only visible to the person concerned and HR staff. Overlapping entries of the same person are rejected. Visible to the members of the person's groups from today on only (a running entry without its begin, which might tell the duration of e.g. a sickness), in full to HR staff and the substitutes; the type only to the person concerned and HR staff. Linked with the vacation list; the leave account lists the person's entries of its three years apart from the vacations, with a button to add one.
- Substitutes of a vacation: a substitute who isn't available counts as absent, as on vacation, and makes a conflict; other entries (e.g. remotely reachable) are shown on the vacation form but make no conflict.
- Optional substitutes of an availability entry (any user, freelancers included): if all of them are away on a day of it (on vacation or not available), the entry is a conflict – shown in its form with the substitutes' absences, red in the list with a conflicts filter, and counted at the menu entry.
- Calendar: one shared view of absences – the chosen groups and persons show their vacations and availability entries, with a choice of what to show (vacations, not available, remotely reachable etc.), only of persons sharing at least one group with the viewer (HR staff: of everybody). The type of an entry is shown only to the person concerned and HR staff, the status to everybody else.
- Team calendars including leave days and their subscriptions (ICS) also show the availability entries, in the subscription always by their status only. Each team calendar chooses which absences it includes (vacations, not available, remotely reachable etc.; all by default), in the calendar view and in its subscription alike.
- Team vacation calendar: with the same choice of absences (vacations and the availability entries by their status) for the chosen employees, on screen and in the Excel export; not available ones as absences, their comments only for those who may see the entries themselves.
- System dashboard: the exchange rate API is tested daily and shown as an interface tile, so that a change of the API is noticed early. The test can be started at once in the scheduler tab.
- Address campaign values: a comparison campaign (e.g. last year's) shows its values and comments beside the selected campaign's, with filters on its values and on the differences. Its values can be adopted for a selection in the mass update or one by one in the form. Address campaigns can be set inactive: their values can't be changed any more.
- Availability at a glance
- A quick view in the calendar, the vacation account and the vacation and availability lists shows whether colleagues are available: pick one or more persons and see their vacations and availability entries of the next 4, 8 or 12 weeks as bars, one row each, weekends and holidays shaded. Only colleagues of the own groups can be picked, everybody for HR and finance staff. A link leads on to the team vacation calendar for groups and longer periods.
- Script editing: a "Show changes" button in the code editor's toolbar compares two versions of the code side by side (inline on small screens): the code being edited, the stored version or any of the script's backups.
Improved
- Selection boxes (groups, users, employees, addresses, address books, accounts, bank accounts): entries whose name matches the search term are listed first, before entries found only by other fields such as organization or email. Groups, user names, projects, customer identifiers, address books, calendars and bank accounts are also found by parts of their name, e.g. PF_Controlling by "controlling".
- Selection boxes of users and groups: deactivated or deleted users and groups are shown struck through, in the picked values as in the search results.
- Lists: ended projects and no longer active customers are struck through, as in the selection boxes. Entries that are no longer active but not deleted (ended projects, inactive customers, cancelled invoices, rejected or replaced orders, inactive notification rules, deactivated references) are now struck through thin and grey, distinct from deleted entries, each with its own legend entry.
- Monthly report: when the configuration parameter "Report time sheets without Kost2?" is enabled, entries booked without Kost2 are marked, in the view as in the PDF export.
- Selection boxes
- A selection box with many entries (30 or more, e.g. users or cost 2 units) no longer lists its first entries in alphabetical order before anything is typed, but asks to type a search term. Short lists are still shown completely when opened.
- Team vacation calendar: people are picked as users, and the members of a chosen group are shown also without an employee record (e.g. freelancers), with their availability entries, in the chart and the Excel export. Choices and favorites stored before are taken over.
Changed
- Addresses
- List, view and form of the addresses are migrated to the new interface, including the import of vCards, the takeover of data from a pasted text or a vCard, the image, the exports (Excel, vCards, CardDAV access) and the mass update.
- The favorite star of an address can be switched directly in the list and in the view.
- Calling a phone number of an address and sending it a text message open in a dialog over the list or the view.
- An uploaded image is no longer lost if the form is saved more than a minute after the upload.
- Addressbooks: the list and the form of the address books are migrated to the new interface. The list shows the users and groups with full and read-only access in columns of their own.
- Lists: for entities with fewer than 100,000 entries, the gear menu offers only the full re-index of the search index, for every user — it takes just seconds there. Larger entities keep the re-index of the newest entries, and the full one for administrators.
- Notification rules
- Inactive rules are struck through in the list.
- Deactivating a rule ends its pending notifications: their delayed steps (e.g. the e-mail) are no longer sent.
- "Trigger now" is only available for active rules.
- Delivery steps: removing a step no longer changes the delay of the following one (it could become 0, i.e. sent at once).
- "Send test to me" states that the test goes out at once through all channels, e-mail too.
- Each rule chooses where the "Open" button of its notifications leads: the page of the trigger, any menu entry, or no button at all.
- "Open" is a button beside "Confirm" instead of a link below the text.
- Setup with test data: new, larger sample data (customers, projects, orders, invoices, half a year of time sheets, vacations, calendar, liquidity planning) with dates relative to the day of the setup. The sample users get the admin password. The setup page shows the progress. The default plugins are active right after the setup, without a restart.
- Vacations of others: the members of the person's groups see them from 1 January of the current year on (before: up to 31 days after their end), in the calendar, team calendars and their subscriptions alike. Manager and substitutes of a vacation, HR and finance staff see all of it, now also in the vacation list (HR staff with read-only access, finance and controlling included). The team vacation calendar shows the availability entries of others to finance staff as to anybody else: of the members of their groups, from today on.
- Customers and projects independent of cost units
- Each project has a system-wide unique project number. Customers and projects can be used without cost units (Kost2), with free numbers.
- Number ranges for customers and projects and their mapping to Kost2 are configured in application.properties (projectforge.fibu.number-ranges.*), including the number of project digits per customer and the segments of the Kost2 numbers, e.g. 1.####.#.##.
- Without configured number ranges, installations that used the former ranges 4.###.##.## (internal) and 5.###.##.## (customers 0-999) for cost units of projects keep them; otherwise customer and project numbers are free, with or without cost units.
- New customers and projects are offered the next free number of their number range.
- Invoicing quota: optionally, the time booked on invoiced Kost2 types of customer projects counts as billed, independent of the Kost2 number (projectforge.invoicing-quota.billed-by-invoiced-kost2-types).
- Contribution margin: Kost2 assignments accept the numbers as their number range segments them (e.g. 1.0007.3).
- Selection boxes for users, employees, projects, customers and cost units no longer offer inactive entries (deactivated users, employees who have left, ended projects and customers). A "Show inactive" checkbox in the selection box brings them back; for users and employees it is available to HR, finance, organisation and administrators only. An inactive entry already set stays selectable.
- Address campaign values: list, form and mass update migrated to the new interface. The address opens in a dialog from the organization and address columns; the previous page stays available as the classic version.
Fixed
- Time sheet form: the consumption bar of the task is up to date after booking and no longer counts deleted time sheets.
- Notification rules
- A manual rule shown as "Banner until done" always lets its recipients mark the banner as done: nothing else finished it, so it stayed forever.
- Deactivating or deleting a rule ends its pending notifications at once, not only with the next hourly run.
- Editors of a rule can end pending notifications in the log of sent notifications, one by one or all of a rule.
- Order statistics: on a low screen (e.g. a phone in landscape) the page scrolls, so the charts can be reached.
- Vacations: managers can approve and reject vacations again; entries stored without half day information were refused with a missing HR right.
- Calendars pushed to the gateway: a team calendar including absences is generated for each user and shows exactly the absences this user may see; before, it could show those of another user with the same access to the calendar.
- Converting a calendar event into a time sheet: an event ending on another day no longer produces a time sheet spanning several days ("Maximum duration exceeded"); the end time is taken on the start day.
- Lists: after quickly paging back and forth (e.g. a year back and forth again), a list could come back from an entry with the filter paged past, when its outdated request was answered last.