Project Contracts
A project contract captures a mix of billable details for a project so that they can be included in construction project billing, including price summaries, scope, and schedule.
A project contract is composed of one or more project contract lines, each of which has project contract line entries. Summary values are calculated from project contract lines. Lines and entries can be tied to GL accounts for billing, and to dimensions such as tasks, items, and employees for granular budgeting, reporting, and billing.
You can create project contract lines at the same time you create a project contract, or you can add lines to an existing contract using one of the following approaches:
- Update the original contract and provide new lines.
- Create new lines independently and specify the ID of the owning project contract.
Your project contract can post entries to existing GL budgets based on the workflow types of the project contract line entries:
- In the project contract, enable posting to GL budgets (
POSTED
= true). - Also in the project contract, set how dates will be used to determine posting periods (
POSTTO
). - Still in the project contract, specify the GL budgets that you want each Project Contract Line Entry to post to based on workflow type.
- Budget entires are created and aggregated based on the combination of
ACCOUNTNO
and dimensions set in the Project Contract Lines.
You can create multiple project contracts for a single project.
Note: A project contract and its related objects contain fields that are designed to handle the requirements of construction projects. They are not the same as contract objects used in the contracts dimension
Project Contracts
A project contract object contains the header information about a project contract, including rollups of price totals from project contract lines, and additional information including scope and schedule. Details about the contract are contained in project contract line objects.
Get Project Contract Object Definition
lookup
List all the fields and relationships for the project contract object:
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACT |
Query and List Project Contracts
query
List the record number and original price for each project contract:
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACT |
filter | Optional | object | Filter expression to limit the response to only objects that match the expression. Check the value of a single field using operators such as equalto/like, or multiple fields using and/or. Query fields on related objects using the dot operator (for example, VENDOR.CREDITLIMIT on APBILL). |
select | Required | sequence | The names of the fields that you want included in the response, and an optional aggregate function such as count or sum . Returning all fields is not supported. |
orderby | Optional | object | Provide an order element with a field name and choose an ascending or descending sort order, for example: <order> |
options | Optional | object | Query options:
|
pagesize | Optional | integer | Maximum number of matching objects to return in the response, between 1 and 2000 items (Default: 100 ) |
offset | Optional | integer | Point at which to start indexing into records (Default: 0 ) |
Get a Project Contract
read
Return all fields of a specified project contract
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACT |
keys | Required | string | Comma-separated list of RECORDNO of the project contract to get. |
fields | Optional | string | Comma-separated list of fields on the object to get. To return all fields, omit the element or provide * for the value.For best performance and predictability, limit the number of fields. |
returnFormat | Optional | string | Data format for the response body:
|
Get Project Contract by ID
readByName
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACT |
keys | Required | string | Comma-separated list of PROJECTCONTRACTID of the project contract to get. |
fields | Optional | string | Comma-separated list of fields on the object to get. To return all fields, omit the element or provide * for the value.For best performance and predictability, limit the number of fields. |
returnFormat | Optional | string | Data format for the response body:
|
Create Project Contract
Release | Changes |
---|---|
2023 Release 2 | Added WIPEXCLUDE |
2023 Release 1 | Added POSTED, POSTTO, ORIGINALGLBUDGETID, REVISIONGLBUDGETID, PENDINGGLBUDGETID, APPROVEDGLBUDGETID, FORECASTGLBUDGETID, OTHERGLBUDGETID |
The project and customer are required fields and must exist in Intacct before you can create a project contract.
create
Parameters
Name | Required | Type | Description |
---|---|---|---|
PROJECTCONTRACT |
Required | object | Object type to create. |
PROJECTCONTRACT
Name | Required | Type | Description |
---|---|---|---|
PROJECTCONTRACTID | Required | string | User-defined ID for this project contract. Required if document numbering is not enabled for project contracts. |
NAME | Required | string | Name of this project contract. |
PROJECTID | Required | string | ID of a valid active project that this contract will belong to. The project must be at the same entity level as the project contract, and must have a location set. You can create multiple project contracts for a single project. |
CUSTOMERID | Required | string | CUSTOMERID of the customer that this contact is associated with. |
CONTRACTDATE | Required | Date | Date for this project contract. |
BILLABLE | Optional | Boolean | Whether the project contract is billable or not.
|
DESCRIPTION | Optional | string | Description for this project contract. |
PROJECTCONTRACTTYPEID | Optional | string | PROJECTCONTRACTTYPEID of the selected project contract type. |
ARCHITECT.CONTACTNAME | Optional | string | Name of the architect contact. |
SUPDOCID | Optional | string | supdocid of an attachment |
STATUS | Optional | Enum | Whether the project contract is active or inactive.
|
RETAINAGEPERCENTAGE | Optional | Decimal | Retainage percentage. Valid values are from 0.00 to 100.00 |
LASTAPPLICATIONNO | Optional | Decimal | Displays the most recent billing application number. The default value is 0, and it is updated automatically when a new invoice for the project is generated. The value is not reset if an invoice is deleted. |
SCOPE | Optional | string | Expected scope of work of this project contract. |
INCLUSIONS | Optional | string | Inclusions as part of this project contract. |
EXCLUSIONS | Optional | string | Exclusions as part of this project contract. |
TERMS | Optional | string | Terms of this project contract. |
SCHEDULEDSTARTDATE | Optional | Date | Scheduled start date. |
ACTUALSTARTDATE | Optional | Date | Actual start date. |
SCHEDULEDCOMPLETIONDATE | Optional | Date | Scheduled completion date. |
REVISEDCOMPLETIONDATE | Optional | Date | Revised completion date. |
SUBSTANTIALCOMPLETIONDATE | Optional | Date | Substantial completion date. |
ACTUALCOMPLETIONDATE | Optional | Date | Actual completion date. |
NOTICETOPROCEED | Optional | Date | Date of notice to proceed. |
RESPONSEDUE | Optional | Date | Date response is due. |
EXECUTEDON | Optional | Date | Date this project contract was executed. |
SCHEDULEIMPACT | Optional | string | Impact to the schedule due to this project contract. |
INTERNALREFNO | Optional | string | Internal reference number. |
INTERNALINITIATEDBY | Optional | string | EMPLOYEEID of the employee who initiated this project contract. |
INTERNALVERBALBY | Optional | string | EMPLOYEEID of the employee who verbally agreed to this project contract. |
INTERNALISSUEDBY | Optional | string | EMPLOYEEID of the employee who issued this project contract. |
INTERNALISSUEDON | Optional | Date | Date this project contract was issued. |
INTERNALAPPROVEDBY | Optional | string | EMPLOYEEID of the employee who internally approved this project contract. |
INTERNALAPPROVEDON | Optional | Date | Date this project contract was internally approved. |
INTERNALSIGNEDBY | Optional | string | EMPLOYEEID of the employee who signed this project contract. |
INTERNALSIGNEDON | Optional | Date | Date this project contract was internally signed. |
INTERNALSOURCE | Optional | string | Internal source for this project contract. |
INTERNALSOURCEREFNO | Optional | string | Internal source reference number. |
EXTERNALREFNO | Optional | string | External reference number. |
EXTERNALVERBALBY | Optional | string | CONTACTNAME of the contact who verbally accepted this project contract. |
EXTERNALAPPROVEDBY | Optional | string | CONTACTNAME of the contact who approved this project contract. |
EXTERNALAPPROVEDON | Optional | Date | Date this project contract was externally approved. |
EXTERNALSIGNEDBY | Optional | string | CONTACTNAME of the contact who signed this project contract. |
EXTERNALSIGNEDON | Optional | Date | Date this project contract was externally signed. |
POSTED | Optional | Boolean | Whether project contract lines should be posted as budget details to general ledger budgets.
|
POSTTO | Optional | string (enum) | Posting period to use when creating GL budget entries. Must be a budgetable posting period.
|
ORIGINALGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = original . The budget must have ISPCNBUDGET set to true . |
REVISIONGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = revision . The budget must have ISPCNBUDGET set to true . |
PENDINGGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = pending change . The budget must have ISPCNBUDGET set to true . |
APPROVEDGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = approved change . The budget must have ISPCNBUDGET set to true . |
FORECASTGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = forecast . The budget must have ISPCNBUDGET set to true . |
OTHERGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = other . The budget must have ISPCNBUDGET set to true . |
WIPEXCLUDE | Optional | Boolean | Whether the project contract is excluded from WIP reporting.
|
Custom field name | varies | varies | Custom field names and values as defined for this object. For a multi-pick-list custom field, implode multiple field values with #~# . |
Update Project Contract
Release | Changes |
---|---|
2023 Release 2 | Added WIPEXCLUDE |
2023 Release 1 | Added POSTED, POSTTO, ORIGINALGLBUDGETID, REVISIONGLBUDGETID, PENDINGGLBUDGETID, APPROVEDGLBUDGETID, FORECASTGLBUDGETID, OTHERGLBUDGETID |
The PROJECTID of a project contract can only be updated if one of these conditions is true:
- No project contract lines exist in the contract
- Project contract lines exist and the updated
PROJECTID
on the project contract is still the same or at a higher level in hierarchy than any project contract line project - The location on the updated project is the same location or a parent location of the projects on the project contract lines
Set a project contract to inactive:
update
Parameters
Name | Required | Type | Description |
---|---|---|---|
PROJECTCONTRACT |
Required | object | Object type to update |
PROJECTCONTRACT
Name | Required | Type | Description |
---|---|---|---|
RECORDNO | Optional | integer | ID of the project contract to update. Required if PROJECTCONTRACTID is not provided. |
PROJECTCONTRACTID | Optional | string | User-defined ID for this project contract. Required if RECORDNO is not provided. |
NAME | Optional | string | Name of this project contract. |
PROJECTID | Optional | string | ID of a valid active project that this contract will belong to. The project must be at the same entity level as the project contract, and must have a location set. You can create multiple project contracts for a single project. |
CUSTOMERID | Optional | string | CUSTOMERID of the customer that this contact is associated with. |
CONTRACTDATE | Optional | Date | Date for this project contract. |
BILLABLE | Optional | Boolean | Whether the project contract is billable or not.
|
DESCRIPTION | Optional | string | Description for this project contract. |
PROJECTCONTRACTTYPEID | Optional | string | PROJECTCONTRACTTYPEID of the selected project contract type. |
ARCHITECT.CONTACTNAME | Optional | string | Name of the architect contact. |
SUPDOCID | Optional | string | supdocid of an attachment |
STATUS | Optional | Enum | Whether the project contract is active or inactive.
|
RETAINAGEPERCENTAGE | Optional | Decimal | Retainage percentage. Valid values are from 0.00 to 100.00 |
LASTAPPLICATIONNO | Optional | Decimal | Displays the most recent billing application number. The default value is 0, and it is updated automatically when a new invoice for the project is generated. The value is not reset if an invoice is deleted. |
SCOPE | Optional | string | Expected scope of work of this project contract. |
INCLUSIONS | Optional | string | Inclusions as part of this project contract. |
EXCLUSIONS | Optional | string | Exclusions as part of this project contract. |
TERMS | Optional | string | Terms of this project contract. |
SCHEDULEDSTARTDATE | Optional | Date | Scheduled start date. |
ACTUALSTARTDATE | Optional | Date | Actual start date. |
SCHEDULEDCOMPLETIONDATE | Optional | Date | Scheduled completion date. |
REVISEDCOMPLETIONDATE | Optional | Date | Revised completion date. |
SUBSTANTIALCOMPLETIONDATE | Optional | Date | Substantial completion date. |
ACTUALCOMPLETIONDATE | Optional | Date | Actual completion date. |
NOTICETOPROCEED | Optional | Date | Date of notice to proceed. |
RESPONSEDUE | Optional | Date | Date response is due. |
EXECUTEDON | Optional | Date | Date this project contract was executed. |
SCHEDULEIMPACT | Optional | string | Impact to the schedule due to this project contract. |
INTERNALREFNO | Optional | string | Internal reference number. |
INTERNALINITIATEDBY | Optional | string | EMPLOYEEID of the employee who initiated this project contract. |
INTERNALVERBALBY | Optional | string | EMPLOYEEID of the employee who verbally agreed to this project contract. |
INTERNALISSUEDBY | Optional | string | EMPLOYEEID of the employee who issued this project contract. |
INTERNALISSUEDON | Optional | Date | Date this project contract was issued. |
INTERNALAPPROVEDBY | Optional | string | EMPLOYEEID of the employee who internally approved this project contract. |
INTERNALAPPROVEDON | Optional | Date | Date this project contract was internally approved. |
INTERNALSIGNEDBY | Optional | string | EMPLOYEEID of the employee who signed this project contract. |
INTERNALSIGNEDON | Optional | Date | Date this project contract was internally signed. |
INTERNALSOURCE | Optional | string | Internal source for this project contract. |
INTERNALSOURCEREFNO | Optional | string | Internal source reference number. |
EXTERNALREFNO | Optional | string | External reference number. |
EXTERNALVERBALBY | Optional | string | CONTACTNAME of the contact who verbally accepted this project contract. |
EXTERNALAPPROVEDBY | Optional | string | CONTACTNAME of the contact who approved this project contract. |
EXTERNALAPPROVEDON | Optional | Date | Date this project contract was externally approved. |
EXTERNALSIGNEDBY | Optional | string | CONTACTNAME of the contact who signed this project contract. |
EXTERNALSIGNEDON | Optional | Date | Date this project contract was externally signed. |
POSTED | Optional | Boolean | Whether project contract lines should be posted as budget details to general ledger budgets.
|
POSTTO | Optional | string (enum) | Posting period to use when creating GL budget entries. Must be a budgetable posting period.
|
ORIGINALGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = original . The budget must have ISPCNBUDGET set to true . |
REVISIONGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = revision . The budget must have ISPCNBUDGET set to true . |
PENDINGGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = pending change . The budget must have ISPCNBUDGET set to true . |
APPROVEDGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = approved change . The budget must have ISPCNBUDGET set to true . |
FORECASTGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = forecast . The budget must have ISPCNBUDGET set to true . |
OTHERGLBUDGETID | Optional | string | GL budget to post to for project contract line entries with WFTYPE = other . The budget must have ISPCNBUDGET set to true . |
WIPEXCLUDE | Optional | Boolean | Whether the project contract is excluded from WIP reporting.
|
Custom field name | varies | varies | Custom field names and values as defined for this object. For a multi-pick-list custom field, implode multiple field values with #~# . |
Delete Project Contract
A project contract can only be deleted if none of the project contract lines that belong to the contract have ever been invoiced.
All project contract lines that belong to a project contract will be deleted with the project contract.
delete
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACT |
keys | Required | string | Comma-separated list of RECORDNO of the project contract to delete. |
Project Contract Lines
The Project Contract Line object contains header information for a billable project contract line, and is the owning object for project contract line entries. This header information includes billing information, summaries of price totals from project contract line entries, and additional information including scope and schedule.
Project contract lines can be nested by setting the PARENTID
field to the PROJECTCONTRACTLINEID
of the parent project contract line.
You can set each project contract line to a billing type, which affects how billing values are derived:
- Progress bill (
Progress
)- Each contract line has its own billing value
- Billing value can be updated by price changes from project change orders
- Time and material (
TM
)- Map project tasks to project contract lines for accurate time and material billing
- Cost plus to max
- Unlimited costs billed to customer
- Costs limited to contract line price
- Universal rate tables that can be applied to contract line for markup or passthrough purposes
Get Project Contract Line Object Definition
lookup
List all the fields and relationships for the project contract line object:
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACTLINE |
Query and List Project Contract Lines
query
For a specified project contract, list the record number and total revised price of each project contract line:
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACTLINE |
filter | Optional | object | Filter expression to limit the response to only objects that match the expression. Check the value of a single field using operators such as equalto/like, or multiple fields using and/or. Query fields on related objects using the dot operator (for example, VENDOR.CREDITLIMIT on APBILL). |
select | Required | sequence | The names of the fields that you want included in the response, and an optional aggregate function such as count or sum . Returning all fields is not supported. |
orderby | Optional | object | Provide an order element with a field name and choose an ascending or descending sort order, for example: <order> |
options | Optional | object | Query options:
|
pagesize | Optional | integer | Maximum number of matching objects to return in the response, between 1 and 2000 items (Default: 100 ) |
offset | Optional | integer | Point at which to start indexing into records (Default: 0 ) |
Get a Project Contract Line
read
Return all fields of a specified project contract line
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACTLINE |
keys | Required | string | Comma-separated list of RECORDNO of the project contract line to get. |
fields | Optional | string | Comma-separated list of fields on the object to get. To return all fields, omit the element or provide * for the value.For best performance and predictability, limit the number of fields. |
returnFormat | Optional | string | Data format for the response body:
|
Create Project Contract Line
Release | Changes |
---|---|
2023 Release 2 | Added GLEXCLUDE, SUMMARIZEBILL |
create
Create a simple project contract line:
Create a project contract line that has two entries:
Parameters
Name | Required | Type | Description |
---|---|---|---|
PROJECTCONTRACTLINE |
Required | object | Object type to create. |
PROJECTCONTRACTLINE
Name | Required | Type | Description |
---|---|---|---|
PROJECTCONTRACTID | Required | string | PROJECTCONTRACTID of the selected project contract that this line belongs to. Must be an active project. |
PROJECTCONTRACTLINEID | Required | string | User-defined unique* ID. The PROJECTCONTRACTLINEID must be unique among all the project contract lines for the specified project contract. A PROJECTCONTRACTID.PROJECTCONTRACTLINEID combination must be unique within a company. |
NAME | Required | string | Name of this project contract line. |
DESCRIPTION | Optional | string | Description of this project contract line. |
PARENTID | Optional | string | PROJECTCONTRACTLINEID of the parent project contract line, for nesting project contract lines. Project contract lines do not roll up to parents. Must be an active project contract line. |
PROJECTCONTRACTLINEENTRIES | Optional | array of PROJECTCONTRACTLINEENTRY | Project contract line entries. |
STATUS | Optional | Enum | Status of the project contract line.
|
CONTRACTLINEDATE | Required | Date | Date |
ACCOUNTNO | Required | string | ACCOUNTNO of the GL Account for this project contract line. Must be an active account. |
RETAINAGEPERCENTAGE | Optional | Decimal | Retainage percentage. |
BILLABLE | Optional | Boolean | Whether the project contract line is billable or not.
|
BILLINGTYPE | Required | Enum | Billing Type.
|
MAXIMUMBILLING | Required | Enum | Maximum billing method.
|
MAXIMUMBILLINGAMOUNT | Optional | Currency | The maximum amount that can be billed against this project contract line. See MAXIMUMBILLING for validation and processing rules. |
SUMMARIZEBILL | Optional | Boolean | Whether the project contract line is a summary line or not.
|
SCOPE | Optional | string | Expected scope of work as part of this project contract line. |
INCLUSIONS | Optional | string | Inclusions. |
EXCLUSIONS | Optional | string | Exclusions. |
TERMS | Optional | string | Terms. |
SCHEDULEDSTARTDATE | Optional | Date | Scheduled start date. |
ACTUALSTARTDATE | Optional | Date | Actual start date. |
SCHEDULEDCOMPLETIONDATE | Optional | Date | Scheduled completion date. |
REVISEDCOMPLETIONDATE | Optional | Date | Revised completion date. |
SUBSTANTIALCOMPLETIONDATE | Optional | Date | Substantial completion date. |
ACTUALCOMPLETIONDATE | Optional | Date | Actual completion date. |
NOTICETOPROCEED | Optional | Date | Date of notice to proceed. |
RESPONSEDUE | Optional | Date | Response due date. |
EXECUTEDON | Optional | Date | Date this project contract line was executed. |
SCHEDULEIMPACT | Optional | string | Impact to the schedule due to this project contract line. |
INTERNALREFNO | Optional | string | Internal reference number. |
INTERNALINITIATEDBY | Optional | string | EMPLOYEEID of the employee who initiated this project contract line. |
INTERNALVERBALBY | Optional | string | EMPLOYEEID of the employee who verbally agreed to this project contract line. |
INTERNALISSUEDBY | Optional | string | EMPLOYEEID of the employee who issued this project contract line. |
INTERNALISSUEDON | Optional | Date | Date this project contract line was issued. |
INTERNALAPPROVEDBY | Optional | string | EMPLOYEEID of the employee who internally approved this project contract line. |
INTERNALAPPROVEDON | Optional | Date | Date this project contract line was internally approved. |
INTERNALSIGNEDBY | Optional | string | EMPLOYEEID of the employee who signed this project contract line. |
INTERNALSIGNEDON | Optional | Date | Date this project contract line was signed internally. |
INTERNALSOURCE | Optional | string | Internal source. |
INTERNALSOURCEREFNO | Optional | string | Internal source reference number. |
EXTERNALREFNO | Optional | string | External reference number |
EXTERNALVERBALBY | Optional | string | CONTACTNAME of the contact who verbally accepted this project contract line. |
EXTERNALAPPROVEDBY | Optional | string | CONTACTNAME of the contact who approved this project contract line. |
EXTERNALAPPROVEDON | Optional | Date | Date this project contract line was externally approved. |
EXTERNALSIGNEDBY | Optional | string | CONTACTNAME of the contact who signed this project contract line. |
EXTERNALSIGNEDON | Optional | Date | Date this project contract line was externally signed. |
SUPDOCID | Optional | string | Attachment ID |
DEFAULTRATETABLEID | Optional | string | RATETABLEID of the default rate table that is used when other rate tables aren’t specified. BILLINGTYPE must be TM . |
TSRATETABLEID | Optional | string | RATETABLEID of the rate table for timesheets. BILLINGTYPE must be TM . |
PORATETABLEID | Optional | string | RATETABLEID of the rate table for purchase orders. BILLINGTYPE must be TM . |
APRATETABLEID | Optional | string | RATETABLEID of the rate table for accounts payable. BILLINGTYPE must be TM . |
GLRATETABLEID | Optional | string | RATETABLEID of the rate table for general ledger. BILLINGTYPE must be TM . |
CCRATETABLEID | Optional | string | RATETABLEID of the rate table for credit card purchases. BILLINGTYPE must be TM . |
EERATETABLEID | Optional | string | RATETABLEID of the rate table for employee expenses. BILLINGTYPE must be TM . |
CLASSID | Optional | string | CLASSID of the selected class. |
CONTRACTID | Optional | string | CONTRACTID of the selected contract. |
COSTTYPEID | Optional | string | COSTTYPEID of the selected cost type. |
DEPARTMENTID | Optional | string | DEPARTMENTID of the department associated with this project contract line. |
EMPLOYEEID | Optional | string | EMPLOYEEID of the selected employee. |
ITEMID | Required | string | ITEMID of the selected item. Only active Items are allowed that are of Non-Inventory or Non-Inventory (Sales only) type. |
PROJECTID | Required | string | PROJECTID for a valid, active project that is same as the project on the project contract or a descendant of that project. |
TASKID | Optional | string | TASKID of the task related to this project contract line. TASKID must be a task under the same project or parent project. You cannot use the same TASKID in more than one project contract line. |
VENDORID | Optional | string | VENDORID of the selected vendor. |
WAREHOUSEID | Optional | string | WAREHOUSEID of the selected warehouse. |
GLEXCLUDE | Optional | Boolean | Whether to exclude all values for the project contract line from posting to a GL budget, including any linked change request entries.
|
Custom field name | varies | varies | Custom field names and values as defined for this object. For a multi-pick-list custom field, implode multiple field values with #~# . |
Update Project Contract Line
Release | Changes |
---|---|
2023 Release 2 | Added GLEXCLUDE, SUMMARIZEBILL |
update
The PROJECTID of a project contract line can only be updated if one of these conditions is true:
- No project contract line lines exist in the contract
- Project contract lines exist and the updated
PROJECTID
on the project contract line is still the same or at a higher level in hierarchy than any project contract line line project - The location on the updated project is the same location or a parent location of the projects on the project contract line lines
When a project contract line has been saved and project contract line entries exist, all totals in the summary section of the project contract line need to be recalculated based on all entries saved to this project contract line.
Set a project contract line to inactive:
Updates the same project contract line, modifying the amount of an existing entry and adding a new entry:
Parameters
Name | Required | Type | Description |
---|---|---|---|
PROJECTCONTRACTLINE |
Required | object | Object type to update. |
PROJECTCONTRACTLINE
Name | Required | Type | Description |
---|---|---|---|
RECORDNO | Required | integer | ID of the project contract line to update. |
PROJECTCONTRACTLINEID | Optional | string | User-defined ID for this project contract line. |
NAME | Optional | string | Name of this project contract line. |
DESCRIPTION | Optional | string | Description of this project contract line. |
PARENTID | Optional | string | PROJECTCONTRACTLINEID of the parent project contract line, for nesting project contract lines. Must be an active project contract line. |
PROJECTCONTRACTLINEENTRIES | Optional | array of PROJECTCONTRACTLINEENTRY | Project contract line entries. |
STATUS | Optional | Enum | Status of the project contract line.
|
CONTRACTLINEDATE | Optional | Date | Date |
ACCOUNTNO | Optional | string | ACCOUNTNO of the GL Account for this project contract line. Must be an active account. |
RETAINAGEPERCENTAGE | Optional | Decimal | Retainage percentage. |
BILLABLE | Optional | Boolean | Whether the project contract line is billable or not.
|
BILLINGTYPE | Optional | Enum | Billing Type.
|
MAXIMUMBILLING | Optional | Enum | Maximum billing method.
|
MAXIMUMBILLINGAMOUNT | Optional | Currency | The maximum amount that can be billed against this project contract line. See MAXIMUMBILLING for validation and processing rules. |
SUMMARIZEBILL | Optional | Boolean | Whether the project contract line is a summary line or not.
|
SCOPE | Optional | string | Expected scope of work as part of this project contract line. |
INCLUSIONS | Optional | string | Inclusions. |
EXCLUSIONS | Optional | string | Exclusions. |
TERMS | Optional | string | Terms. |
SCHEDULEDSTARTDATE | Optional | Date | Scheduled start date. |
ACTUALSTARTDATE | Optional | Date | Actual start date. |
SCHEDULEDCOMPLETIONDATE | Optional | Date | Scheduled completion date. |
REVISEDCOMPLETIONDATE | Optional | Date | Revised completion date. |
SUBSTANTIALCOMPLETIONDATE | Optional | Date | Substantial completion date. |
ACTUALCOMPLETIONDATE | Optional | Date | Actual completion date. |
NOTICETOPROCEED | Optional | Date | Date of notice to proceed. |
RESPONSEDUE | Optional | Date | Response due date. |
EXECUTEDON | Optional | Date | Date this project contract line was executed. |
SCHEDULEIMPACT | Optional | string | Impact to the schedule due to this project contract line. |
INTERNALREFNO | Optional | string | Internal reference number. |
INTERNALINITIATEDBY | Optional | string | EMPLOYEEID of the employee who initiated this project contract line. |
INTERNALVERBALBY | Optional | string | EMPLOYEEID of the employee who verbally agreed to this project contract line. |
INTERNALISSUEDBY | Optional | string | EMPLOYEEID of the employee who issued this project contract line. |
INTERNALISSUEDON | Optional | Date | Date this project contract line was issued. |
INTERNALAPPROVEDBY | Optional | string | EMPLOYEEID of the employee who internally approved this project contract line. |
INTERNALAPPROVEDON | Optional | Date | Date this project contract line was internally approved. |
INTERNALSIGNEDBY | Optional | string | EMPLOYEEID of the employee who signed this project contract line. |
INTERNALSIGNEDON | Optional | Date | Date this project contract line was signed internally. |
INTERNALSOURCE | Optional | string | Internal source. |
INTERNALSOURCEREFNO | Optional | string | Internal source reference number. |
EXTERNALREFNO | Optional | string | External reference number |
EXTERNALVERBALBY | Optional | string | CONTACTNAME of the contact who verbally accepted this project contract line. |
EXTERNALAPPROVEDBY | Optional | string | CONTACTNAME of the contact who approved this project contract line. |
EXTERNALAPPROVEDON | Optional | Date | Date this project contract line was externally approved. |
EXTERNALSIGNEDBY | Optional | string | CONTACTNAME of the contact who signed this project contract line. |
EXTERNALSIGNEDON | Optional | Date | Date this project contract line was externally signed. |
SUPDOCID | Optional | string | Attachment ID |
DEFAULTRATETABLEID | Optional | string | RATETABLEID of the default rate table that is used when other rate tables aren’t specified. BILLINGTYPE must be TM . |
TSRATETABLEID | Optional | string | RATETABLEID of the rate table for timesheets. BILLINGTYPE must be TM . |
PORATETABLEID | Optional | string | RATETABLEID of the rate table for purchase orders. BILLINGTYPE must be TM . |
APRATETABLEID | Optional | string | RATETABLEID of the rate table for accounts payable. BILLINGTYPE must be TM . |
GLRATETABLEID | Optional | string | RATETABLEID of the rate table for general ledger. BILLINGTYPE must be TM . |
CCRATETABLEID | Optional | string | RATETABLEID of the rate table for credit card purchases. BILLINGTYPE must be TM . |
EERATETABLEID | Optional | string | RATETABLEID of the rate table for employee expenses. BILLINGTYPE must be TM . |
CLASSID | Optional | string | CLASSID of the selected class. |
CONTRACTID | Optional | string | CONTRACTID of the selected contract. |
COSTTYPEID | Optional | string | COSTTYPEID of the selected cost type. |
DEPARTMENTID | Optional | string | DEPARTMENTID of the department associated with this project contract line. |
EMPLOYEEID | Optional | string | EMPLOYEEID of the selected employee. |
ITEMID | Optional | string | ITEMID of the selected item Only active Items are allowed that are of Non-Inventory or Non-Inventory (Sales only) type. |
PROJECTID | Optional | string | PROJECTID for a valid, active project that is same as the project on the project contract or a descendant of that project. |
TASKID | Optional | string | TASKID of the task related to this project contract line. |
VENDORID | Optional | string | VENDORID of the selected vendor. |
WAREHOUSEID | Optional | string | WAREHOUSEID of the selected warehouse. |
GLEXCLUDE | Optional | Boolean | Whether to exclude all values for the project contract line from posting to a GL budget, including any linked change request entries.
|
Custom field name | varies | varies | Custom field names and values as defined for this object. For a multi-pick-list custom field, implode multiple field values with #~# . |
Delete Project Contract Line
A project contract line can only be deleted if it has never been invoiced.
All project contract line entries that belong to a project contract line will be deleted with the project contract line.
delete
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACTLINE |
keys | Required | string | Comma-separated list of RECORDNO of the project contract line to delete. |
Project Contract Line Entries
A project contract line entry object is owned by a project contract line object and contains the information about a single line item on a project contract line. This information includes the price and markup of the item, a workflow type, and a price effective date.
Project contract line entries can only be created and updated through the owning project contract line objects.
PROJECTCONTRACTLINEENTRY
Name | Required | Type | Description |
---|---|---|---|
WFTYPE | Required | string (enum) | Workflow type of the project contract line entry. If POSTED = true in the PROJECTCONTRACT object, this value determines which GL budget this entry will post to.
|
PRICEEFFECTIVEDATE | Required | Date | Price effective date. |
PRICE | Optional | Currency | The price of the project contract line entry. If a value is not provided, it is calculated as QTY * UNITPRICE. |
QTY | Optional | Decimal | Quantity |
UNITPRICE | Optional | Numeric / Currency with Decimal 10 | Unit rate for price. |
PRICEMARKUPPERCENT | Optional | Numeric | Percent of the price that will be applied as markup. |
PRICEMARKUPAMOUNT | Optional | Numeric | Fixed amount to be applied as markup. If a value is not provided, it is calculated as PRICE * PRICEMARKUPPERCENT / 100. |
EUOM | Optional | string | External Unit of Measure. |
MEMO | Optional | string | Memo |
CLASSID | Optional | string | ID of the selected class |
CONTRACTID | Optional | string | ID of the selected contract |
COSTTYPEID | Optional | string | ID of the selected cost type. You must also supply a TASKID, and the cost type must belong to the task. |
DEPARTMENTID | Optional | string | ID of the selected department. |
EMPLOYEEID | Optional | string | ID of the selected employee. |
ITEMID | Optional | string | ID of the selected item. |
PROJECTID | Optional | string | ID of a valid, active project that is same as the project on the project contract or a descendant of that project. |
TASKID | Optional | string | ID of the task related to this project contract line entry. You must also supply a PROJECTID, and the task must belong to the project. |
VENDORID | Optional | string | ID of the selected vendor. |
WAREHOUSEID | Optional | string | ID of the selected warehouse |
Custom field name | varies | varies | Custom field names and values as defined for this object. For a multi-pick-list custom field, implode multiple field values with #~# . |
Get Project Contract Line Entry Object Definition
lookup
List all the fields and relationships for the project contract line entry object:
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACTLINEENTRY |
Query and List Project Contract Line Entries
query
List the record number and vendor for each project contract line entry:
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACTLINEENTRY |
filter | Optional | object | Filter expression to limit the response to only objects that match the expression. Check the value of a single field using operators such as equalto/like, or multiple fields using and/or. Query fields on related objects using the dot operator (for example, VENDOR.CREDITLIMIT on APBILL). |
select | Required | sequence | The names of the fields that you want included in the response, and an optional aggregate function such as count or sum . Returning all fields is not supported. |
orderby | Optional | object | Provide an order element with a field name and choose an ascending or descending sort order, for example: <order> |
options | Optional | object | Query options:
|
pagesize | Optional | integer | Maximum number of matching objects to return in the response, between 1 and 2000 items (Default: 100 ) |
offset | Optional | integer | Point at which to start indexing into records (Default: 0 ) |
Get a Project Contract Line Entry
read
Return all fields of a specified project contract line entry
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACTLINEENTRY |
keys | Required | string | Comma-separated list of RECORDNO of the project contract line entry to get. |
fields | Optional | string | Comma-separated list of fields on the object to get. To return all fields, omit the element or provide * for the value.For best performance and predictability, limit the number of fields. |
returnFormat | Optional | string | Data format for the response body:
|
Delete Project Contract Line Entry
delete
Parameters
Name | Required | Type | Description |
---|---|---|---|
object | Required | string | Use PROJECTCONTRACTLINEENTRY |
keys | Required | string | Comma-separated list of RECORDNO of the project contract line entry to delete. |