The administration and fulfillment of larger scale contracts can be challenging from a management and logistical perspective. BusinessCraft provides the ability to define, create and structure larger scale projects so they can be more easily managed. This allows greater flexibility for project/contract workflow, job costing and invoicing.
The Projects capability in the Contracts module is used to create a hierarchical structure of contracts which is reflected in both the Contracts and Job Costing modules. Usually a parent contract is defined with relevant stages and sub-stages which are then used by the Project Creation function to generate the required “child” contracts and jobs.
A range of mass update, data integrity, reporting and navigational options are provided to streamline the administration of project contracts and jobs.
The functionality covered is available is BusinessCraft V5.03 or later.
Project Management Process
The diagram below illustrates a typical BusinessCraft project hierarchy. For simplicity, the tree is one level deep. The structure could encompass multilevel Parent and Child Contracts and Jobs if required.
One of the key determining factors in the decision to create parent/child contracts is whether there is a need to manage the workflow events at the contract child level.
Having an abbreviated work flow for child contracts allows for tracking of each unit and options to control how child contracts are used. Some of the benefits of having specific workflows on Child Contracts are:
Allow each child contract to be tracked.
Allow child contract based event notifications.
Controls whether variations are allowed on child contracts.
Allows child contract control of Cost and Revenue Recognition (TMR).
Allows child contract based Progress Claims.
Auto Event Registration from Parent Contract to Child Contracts.
Auto Event Percentage Complete from Parent to Child Contracts.
Understanding and determining how Project Contracts are to be financially managed needs to be determined:
What financial reports are needed for Project Contracts/Jobs?
Where will Contract Sales Values be posted?
Where will Variation Sales Values and Costs be posted?
Will all Project administration costs be recorded against the Parent Contract/Job?
Will Child Contracts be progress billed individually?
Will Job Costs be recorded against Child Jobs?
Will Child Jobs be margin declared to enable ETS tracking?
Will accounting methods differ from Project to Project?
Project Contract Creation
A scenario will be used to explain how to create project contracts. The example project is for 6 homes divided into 2 Stages. Stage S1 consists of 4 Homes and Stage S2 consists of 2 Homes. Stage 1 is divided into 2 Sub-Stages – with 2 Homes in each. Stage 2 contains one Sub-Stage with 2 Homes.
The customer has already been created. The project code is used to define key aspects of the project and define Stages and Sub-Stages of the Project. Go to Contracts > Tables > Land Projects:
|Project Code||A 6-character user defined project code.|
|Description||A 30-character user defined project description.|
|Op Centre||Enter/select the operating centre for the project.|
|District||Enter/select the district for the project.|
|Cust Code||Enter/select the customer code for the customer for the project.|
|Suppress Folder Creation?||Indicates whether folder creation for the project will be suppressed (Y) or not (N).|
|Active ?||Indicates whether the project is active (Y) or not (N).|
Activate the Stages (F5) function key to create the stages for the project:
|Code||A 2-character user defined stage code.|
|Description||A 30-character user defined stage description.|
Activating the Contracts (F6) function key at the Stage level will show no data as contracts have not been assigned and do not exist. The contracts will be automatically assigned to the stages using the Project Contract Creation screen covered shortly.
Activate the Sub-Stages (F5) function key to create the sub-stages for each stage of the project:
Activating the Contracts (F6) function key at the Sub-Stage level will show no data as contracts have not been assigned and do not exist. The contracts will be automatically assigned to the sub-stages using the Project Contract Creation screen covered shortly.
Create Parent Contracts
The next step in the process is to create the parent contract. For more information on how to create contracts, please refer to the Contracts Process Overview. The explanation that follows here will be focused on the aspects relevant to parent contracts.
Go to Contracts > Maintain > Contracts and activate the Add option in the Menu Sidebar. Complete all required details on Pages 1 and 2.
The Lot Number and Street Number fields may not be relevant for the parent contract. If this is the case enter a non-discrete value. (e.g. “.” Period) to represent “Not Applicable”. This syntax can be over written with the defined values during the Project Contract Creation phase.
After completing the required fields on Pages 1 and 2 for the contract, go to
Page 3 and enter/select the applicable project in the Project field as shown:
When finished, Save and Exit to create the parent contract.
Create Child Contracts
Child contracts can be created in one process using the Project Contract Creation screen. Go to Contracts > Maintain > Project Contract Creation and the Project Contract Creation screen is displayed. Enter or select the parent contract number and existing details for that contract are displayed:
Update the Project Contract Creation screen to reflect the first group of contracts to be created. In the following example, contracts will be created for Stage S1, Sub-Stage 1, for two units:
Activate the Units (F5) function key to see the Project Units created and make any required changes:
When finished, exit back to the Project Contract Creation Screen and activate the Create Contracts (F6) function key. The Created contracts screen will confirm the contracts created:
Go to Contracts > Tables > Land Projects to see the updates that have occurred by activating the Contracts function keys at the Stage or Sub-Stage level:
After child contracts for the project have been created, use Consoles and/or Finders to review results:
The Projects Console is specifically designed to only display projects and associated contracts:
Click on a project to get comprehensive details of every contract linked to the project:
Contract Management Console
The Contract Management Console contains a dedicated Project Code Filter, a Find In option for Projects and a Project Panel:
Click on a contract in the Contract Management Console to display contract tabs across the screen:
Project specific field columns are available to find, identify and sort Project Contracts and Parent/Child Contracts:
Contains a Dedicated Project Code Filter and Project Panel and Live Tiles to open Contracts.
Click on any child contract in the Contracts Finder or on a Tile in the Project Panel to open the Contract Management Maintenance screen for that contract and go to Page 3. The Parent, Unit No., Project, Stage and Sub Stage fields have been populated:
Job Costing Console and Finder
When child contracts for the project are created, equivalent jobs are created and the results can be reviewed using the Job Costing Console or Jobs Finder:
The created Jobs will also have related Parent Job, Unit No., Project, Stage and Sub-Stage fields populated:
The Estimating Console also has these options:
Project Data Integrity
To streamline process and maintain data consistency a number of features are built into the project process.
Operating Centre and District Integrity Check
When the Operating Centre or District code on any contract within a project structure is changed, an integrity check is triggered automatically.
Contracts > Maintain > Contracts and change the District field for a contract within the project structure. In this case, the District has been changed from H10 to H20:
On saving, the integrity check is triggered and the following message is displayed:
Click OK to launch the integrity check. On completion, an audit trail can be viewed.
Event Registration on Projects
When enabled, this option allows common events on linked contracts to all be registered by the act of registering the common event on the Parent Contract.
Go to Contracts > Tables > Events and set the Update Project Contracts field to Y:
Unregistering an event (with the Update Project Contracts flag set to Y) on a Parent Contract does not unregister events on associated contracts.
If the associated events on the child contracts are registered a warning message is displayed indicating the equivalent events on child contracts that are registered and have not been unregistered:
It is recommended that the Update Project Contracts field for the Contract Creation event is set to Y. This will allow the Project Contract Creation routine to update this mandatory event on all child contracts automatically.
Event Percentage Complete
When enabled this option allows a percentage complete to be manually entered against an event. (When the event is registered, the value is automatically set to 100%). When this field is set to Y, and the Update Project Contracts is set to Y, equivalent events will reflect the same percentage complete entered for the event on the parent contract.
Go to Contracts > Tables > Events and set the Record Percentage Complete field to Y:
For Parent Contract 1854, the percentage complete for event 602 has been recorded as 55%:
For Child Contact 1855, the percentage complete for event 602 has been automatically updated to 55%:
The existing BusinessCraft Document Management functionality that can create a predetermined folder directory structure when a job is created in the system can also be used for project contracts/jobs.
The folder creation routine detects when a Parent Contract has been created. Using a special character in the folder path, when a parent contract is found, an additional folder is created to nest within it all child contract folders.
The pipe character “|” (Shift + Backslash) is treated as an “optional backslash” to the folder creation routines and general folder designations. Where a translated path has resulted in a blank value, this folder level can be suppressed.
So “Q:\Jobs\(#CO_PARENTB1#)|(#CO_KEY#)” will be translated to “Q:\Jobs\Parent Contract Number | Child Contract Number” which will become “Q:\Jobs\Parent Job Number\Child Contract Number”.
But, if the parent is blank, it will translate to “Q:\Jobs\|Child Contract Number” which will then be corrected to “Q:\Jobs\ Child Contract Number”
Two Parent Contract Tokens are available to use with Path Substitution:
#CO_PARENTB1# will substitute the Parent Contract Number with leading zeros (i.e. 001234).
#CO_PARENTB2# will substitute the Parent Contract Number without leading zeros (i.e.1234).
If the Parent Contract Number is empty, blank or zero, these tokens will output nothing rather than "0" or "000000"
For example, Contract Number 950021 is the Parent Contract/Job:
Module specific versions of these tokens are also supported by the following processes:
PO PDF Generated Filename
Contracts Document Register
Purchase Order Print of Contract Details
Purchase Order Document Register
A/R Receipt Print
A/R Batch Receipt Print
Reporting for projects requires analysis to determine specific requirements. BusinessCraft has designed sample reports to provide examples of the reporting possible using the Contracts Report Writer in conjunction with a report writing tool such as Crystal Reports or DevExpress.
Project Margin Summary Report
This report is extremely useful for companies that build multi-unit projects, such as Retirement Villages, Investor Developments etc. The report provides an overall summary of margin for a group of selected projects along with a detail section for each project listing the individual contracts that comprise each Project:
Project Margin Summary Page
Project Margin Detail Page
Supervisor Margin Summary Report
This report highlights the performance of Building Supervisors from a margin and scheduling aspect, highlighting progress status for each contract and whether the contract is ahead or behind schedule.
Supervisor Margin Summary Page
Supervisor Margin Detail Page
15th March 2017