Holiday Management Inspire your People

228 • Whether you get a proper return can depend on the client. For example, if the client takes a long time to sign off on project acceptance, you cannot invoice the remaining 40 even though you might have supplied the agreed service properly. • The account manager and the project manager are often different people. The project manager has to alert the account manager about the moment that the client can be invoiced, but that moment can easily be forgotten or mistaken. • The project can be fixed for service costs but have agreed extras, such as reimbursement for travel expenses. Invoicing from the order does not adapt well to such an approach. OpenERP provides a third method for invoicing services that can be useful on long projects. This consists of invoicing the project periodically on the basis of time worked up to a fixed amount that cannot be exceeded. At the end of the project, a final invoice or a credit note is generated to meet the total amount of value fixed for the project. To configure such a project you must set an invoicing rate, a pricelist and a maximum amount on the analytic account for the project. The services are then invoiced throughout the project by the different project or account managers, just like projects that are invoiced by time used. The managers can apply a refund on the final invoice if the project takes more time to complete than permitted under the contract. When the project is finished you can generate the closing invoice using the Final Invoice button on the analytic account. This automatically calculates the final balance of the bill, taking the amounts already charged into account. If the amount already invoiced is greater than the maximum agreed amount, then OpenERP generates a draft credit note. This approach offers many advantages compared with the traditional methods of invoicing in phases for fixed-price contracts: • Fixed-price contracts and cost-reimbursable contracts are invoiced in the same way, which makes the company’s invoicing process quite simple and systematic even when the projects are mixed. • Everything is invoiced on the basis of worked time, making it easy to forecast invoicing from plans linked to the different analytical accounts. • This method of proceeding educates project managers just as much as the client because refunds have to be given for work done if the project slips. • Invoicing follows the course of the project and avoids a supplier’s dependence on the goodwill of the client in approving certain phases. • Invoicing of expenses follows the same workflow and is therefore very simple. Note: Negotiating contracts In contract negotiation, invoicing conditions are often neglected by the client. So it can often be straightforward to apply this method of invoicing.

18.1.4 Contracts limited to a quantity

Finally, certain contracts are expressed in terms of a quantity rather than a fixed amount. Support contracts comprising a number of prepaid hours are a case in point. To generate such contracts in OpenERP you should start by installing the module account_analytic_analysis. Then you can set a maximum number of hours for each analytic account. When employees enter their time worked on the support contract in the timesheets, the hours are automatically deducted from the maximum set on each analytic account. You must also name someone in the company responsible for renewing expired contracts. They become responsible for searching through the list of accounts showing negative remaining hours. The client contract can be limited to a certain quantity of hours, and it can also be limited in time. For that, you set an end date for the corresponding analytic account. 229 CHAPTER NINETEEN DRIVE YOUR PROJECTS If you have a good system to manage tasks, your whole company will benefit. OpenERP’s project management application enables you to efficiently manage and track tasks, work on them effectively, quickly delegate them while keeping close track of your delegated tasks. OpenERP also helps people in the company to organize their personal time, and this chapter proposes a methodology aimed at improving the productivity of managers. Start with a fresh database that includes demo data, install Sales Management sale and Project Management project and select the generic chart of accounts.

19.1 Project Management

In the previous chapter you learned more about the financial management of projects, based on OpenERP’s analytic accounts, structured into cases. This way of working enables you to analyze time plans and budgets, to control invoicing and to manage your different contracts. Here we will explain operational project management to organize tasks and plan the work you need to get the tasks completed. All the necessary operations are carried out from the Project menu. Tip: Remember that you will have less options in Simplified view than in Extended view. Note: Project In OpenERP a project is represented by a set of tasks to be completed. Projects have a tree structure that can be divided into phases and sub-phases. This structure is very useful to organise your work. Whereas analytic accounts look at the past activities of the company, Project Management’s role is to plan the future. Even though there is a close link between the two such as where a project has been planned and then completed through OpenERP they are still two different concepts, each making its own contribution to a flexible workflow. Most customer projects are represented by: • one or several analytic accounts in the Accounting System to keep track of the contract and its different phases, • one or several projects in Project Management to track the project and the different tasks to be completed. There is a direct link between the project and the analytic account, because for each new project created, OpenERP will automatically create the corresponding analytic account in the Projects analytic chart of accounts. Note that you have no access to the analytic account directly from a project.

19.1.1 Creating Projects and Related Tasks

To define a new project, go to the menu Project → Project → Projects. Click New and give your new project a Project Name . 230 You can put this project into a hierarchy, as a child of a Parent Project, and assign a Project Manager. Enter the general duration by completing Start Date and End Date. The Administration tab displays information about Planned Time and the Time Spent on the project according to the task work completed. By checking the box Warn Manager, you configure the system to automatically send the project manager an OpenERP Request every time a task is closed. In case a project takes too long, it can also be escalated to another project. In Project Escalation, enter the project that will be used for escalated tasks. Define a generic Reply-To Email Address linked to all automated mails; this allows you to receive replies directly in OpenERP. You can also link to a Working Time category, which will be used to calculate the Project’s time line, i.e. through a Gantt chart. The status of a project can take the following values: • Open: the project is being carried out, • Pending: the project is paused, • Cancelled: the project has been cancelled and therefore aborted, • Closed: the project has been successfully completed. On the Members tab, add Members to the project; this is related to access rights too. On the Billing tab, you find information to invoice your customer. Select the Customer; the Invoice address will automatically be filled from the customer form. You also have to complete the invoicing data, such as Sale Pricelist and Invoice Task Work to directly invoice from task work done. OpenERP allows you to set a Max. Invoice Price for the project or subproject. The Invoiced Amount shows the total amount that has already been invoiced for the project concerned. If you want to automatically keep your customer informed about the progress of the project, check Warn Partner. Note: Warn Partner setup If you check Warn Partner, you should define a generic Mail Header and Mail Footer in the Billing tab that will be used in the automated email Extended view only. OpenERP prepares an email the user can send to the customer each time that a task is completed. The contents of this email are based on details of the project task, and can be modified by the user before the email is sent. OpenERP displays a number of variables at the bottom of this tab. Note: Study of Customer Satisfaction Some companies run a system where emails are automatically sent at the end of a task requesting the customer to complete an online survey. This survey enables a company to ask several questions about the work carried out, to gauge customer satisfaction as the project progresses. This function can also be used by ISO 9001-certified companies, to measure customer satisfaction. OpenERP also allows you to create your own surveys. The Task Stages tab allows you to define stages thath help you dividing your tasks. You can add a sequence number to set the stage order, allowing you to prioritize your task work, i.e. first you will have the Specification stage and then Development.

19.1.2 Managing tasks

Once a project has been defined, you can enter the tasks to be executed. You have two possibilities for this: • click the ACTION button Tasks to the right of the project form, then click New, • from the menu Project → Project → Tasks, create a new task and assign it to an existing project. Each task has one of the following states: • Draft: the task has been entered but has not yet been validated by the person who will have to do it, • Open: you can start working on the task, or taks is in progress, • Closed: task is completed, • Cancelled: task work is no longer required,