The Subcontractors module is designed to support subcontractors, who are employed by an outside agency or vendor that is hired by the company. Subcontractors will use the application to report their hours, and company managers can then approve the subcontractor invoices for the hours.
Because subcontractors are employed by an outside vendor and not the company, their pay rates may be different from the company’s regular employees. The Subcontractors module supports the import of these special pay rates; you can then configure the pay rules to calculate the vendor rates.
Note: Subcontractor managers can only delegate their authority to persons working for the same vendor as themselves.
See Also:
Configuring the Vendors and Vendor Rates
Define the Paid Rate Rules for Vendor Rates
Using the Invoice Approval Form
Configure the Prompt Map Settings for the Invoice Approval Events
The Subcontractors feature requires the following:
You must have the Subcontractors Forms module included in your license file.
The Subcontractors Forms module must be enabled.
To check if the module is included in your license and enabled:
Click Main Menu > Configuration > System > Licensing.
On the License Modules tab, select the Module Name called Subcontractors Forms.
The following boxes must be checked: Licensed and Module Enabled.
To define a person as a subcontractor, change their Employee Type to SUBCONTRACTOR on the Employment Profile tab of the Employee form.
Subcontractors are employed by an outside agency or vendor that is hired by the company. The vendor may use pay rates that are different from the company’s regular employees. You can import the person’s vendor information and vendor rates; see “Importing the Vendors and Vendor Rates” below for more information. This information will be visible on the Vendor Rate tab of the Employee form.
When a person is defined as a subcontractor, their transactions can be approved using the Invoice Approval form, provided the transaction is included in their manager’s Approval Group. See Using the Invoice Approval Form for more information.
You can import vendor information and vendor pay rates into the application; see Import Definition for Subcontractors. You can then view these rates on the Vendor Rate tab of the Employee form.
You can also add vendors and vendor rates manually using the Vendor form and the Vendor Rate tab of the Employee form.
To import vendor rates, you need to define an Import with the Context Subcontractor:
Click Main Menu > Configuration > Interfaces > Import Definition.
Click the quick link next to the Import Name field and select Add from the pop-up menu.
Define your import on the Import Source form and click Save.
On the Destination Records tab, click Add.
From the Context Name field, select Subcontractor. Enter a Record Name and click Save.
On the Source Fields tab, click Add.
The Add Source Fields pop-up form will appear.
From the Record Name field, select the Record Name you entered in step 5.
Select a Field Name that you will be importing. Fields marked with an asterisk (*) must be included in your import.
The required fields for this import are Employee, Rate Type, Vendor Name, Vendor Number, and Vendor Site Code.
You should also include the following fields: Shift Num, Hours Classification, and Rate Amount.
If you include the Smart Update field (set to “Y” in the import file), a new record will only be added if the rate has changed in an existing record, or a new vendor record is being added for the person. If there is no rate change, Smart Update will not perform any action on the existing record. See Smart Update for Subcontractors for more information.
See Setting the Retroactive Flag for the Vendor Rate Import for information on the Retroactive Flag field.
Click Save and Add and continue adding Field Names to your import. Once you have selected the last Field Name, click Save.
Make sure the file you are importing is located in the\import directory.
You must run the IMPORT_FILES service to import the data. You can run this service by clicking Schedule Immediately on the Import Definition form. If you need to configure the service’s parameters, use the Service Instance form first.
You can check the In XML Queue form to see if the data has imported correctly (Main Menu > Administration > Interfaces > In XML Queue).
The imported data will be visible on the Vendor Rate tab of the Employee form.
The Retroactive Flag in the Subcontractor import is used to change vendor rates retroactively. Set this value to 1 if the record is changing the vendor rate retroactively. Otherwise set this value to 0.
Retroactive records must have a Start Date that is in the past or set to the current date. You can set the retroactive record’s Start Date up to one year earlier than the current date. The End Date of a retroactive record can be in the past, present or future.
Smart Update will only add a new record if the rate has changed in an existing record, or a new vendor record is being added for the person. If there is no rate change, Smart Update will not perform any action on the existing record.
Smart Update is only used with the Add action. You need to include the Smart Update field in your Import Definition and set this field value to “Y” in the import file. Do not include Start and End Dates in your import file if you are using Smart Update.
Smart Update works as explained below:
If the vendor rate has changed for the records you are importing, Smart Update will add each one as a new record. The new record’s Start Date will be the current date and its End Date will be set to infinity (12/31/9999). The End Date of the old record will be changed to yesterday’s date.
If the vendor rate has changed for only one of the records you are importing, Smart Update will add this record as a new record. The new record’s Start Date will be the current date and its End Date will be set to infinity (12/31/9999). The End Date of the old record will be changed to yesterday’s date. For the other records you are importing (records with no rate change), Smart Update will copy the existing rate into a new record with the Start Date set to the current date and the End Date set to infinity. The existing record will have its End Date changed to yesterday’s date.
Once you have imported vendor information and vendor rates, you can view it on the Vendor Rate tab of the Employee form.
Click Main Menu > Employee Management > Employee.
Select the person for whom you want to view vendor rate information.
Click the Vendor Rate tab at the bottom of the form.
If necessary, click the Filter button to display the filter fields.
Use the Vendor Name, Shift, Classification, and Effective Date fields to filter the records that appear in this form.
Click Find after you enter your filter criteria.
To make sure a transaction will receive a vendor pay rate or vendor labor rate, you must define Paid Rate Rules with the following operands:
Has Vendor Rate
Get Vendor Rate
Set Vendor Rate
Example 1:
IF Has Vendor Rate(Pay, From
transaction, From transaction)
THEN Set Vendor Rate(Get Vendor Rate(Pay, From transaction, From transaction))
Example 2 (the vendor rate is a multiplier for the person’s default rate):
IF Has Vendor Rate(Pay, From
transaction, From transaction)
THEN Set Paid Rate(Get Transaction Rate (Default Person Payroll Rate) Multiply
Get Vendor Rate(Pay, All, From transaction))
In some cases, more than one vendor rate could be applied to a transaction. For example, the employee may have the following vendor rate records:
Rate |
Shift |
Hours Classification |
20.00 |
1 |
All |
30.00 |
All |
O |
If the employee posts a transaction with a Shift of 1 and an Hours Classification of O, either of the above records could apply. To determine which record to use, the system will use the following precedence order:
1. Exact match of Shift and Hours Classification
2. Shift match
3. Hours Classification match
In the above example, there is no exact match of Shift and Hours Classification. There is a record with the same Shift as the transaction, and this record is the one that will be used. The employee will receive the vendor rate of 20.00.
An Approval Group controls which transactions a supervisor can approve in the Invoice Approval form. A supervisor will only be able to view and approve transactions for charge items that are included in the Approval Group that he or she manages.
To define an Approval Group and its managers, use the Charge Filtration form.
You can also import an Approval Group. See “Charge Filter Import for Approval Groups” below for information.
The Approval Group needs to be assigned as a setting to supervisors who will be using the Invoice Approval form. An Approval Group can be assigned to a single Employee via the Employee Setting form, to an Employee Group with type POLICY_GROUP or FACILITY via the Employee Group Setting form, or to all users via the System Settings form. An Employee setting overrides an Employee Group setting, which overrides a System Setting. See Settings Precedence for more details.
To import Approval Groups, you need to define an Import with the Context Charge Filter. Note that you will still need to use the Charge Filtration form to assign managers to the Approval Groups.
Click Main Menu > Configuration > Interfaces > Import Definition.
Click the quick link next to the Import Name field and select Add from the pop-up menu.
Define your import on the Import Source form and click Add.
On the Destination Records tab, click Add.
From the Context Name field, select Charge Filter. Enter a Record Name and click Save.
On the Source Fields tab, click Add.
The Add Source Fields pop-up form will appear.
From the Record Name field, select the Record Name you entered in step 5.
Select a Field Name that you will be importing. Fields marked with an asterisk (*) must be included in your import.
The required fields for this import are Charge Filter Name and Charge Type.
Make sure you include the Charge Filter Group Type field in your import, and set it to APPROVAL. Otherwise the group will be imported as a charge filtration group.
Click Save and Add and continue adding Field Names to your import. Once you have selected the last Field Name, click Save.
Make sure the file you are importing is located in the \app\import directory where the Shop Floor Time application is installed.
You must run the IMPORT_FILES service to import the data. You can run this service by clicking Schedule Immediately on the Import Definition form. If you need to configure the service’s parameters, use the Service Instance form first.
You can check the In XML Queue form to see if the data has imported correctly (Main Menu > Administration > Interfaces > In XML Queue).
The imported data will be visible on the Charge Filtration form. You will need to assign one or more managers to the group using the Managers tab of the Charge Filtration form.
The Invoice Approval form is used to review and approve the payment of invoices to subcontractors. This form will display labor performed by subcontractors against the charge items that the manager is authorized to approve.
In order to view and approve transactions in this form, the user must be defined as a Manager for an Approval Group containing one or more charge items. The user will only be able to view and approve charge items that are included in his or her Approval Group. Approval Groups and their Managers are defined in the Charge Filtration form.
Labor transactions for the charge items in the user’s Approval Group will display in the Invoice Approval form if:
The transaction was posted by a subcontractor (an employee with the Employee Type SUBCONTRACTOR)
The transaction is employee signed, supervisor signed, and payroll locked
The transaction has not yet been approved
The event has the correct Prompt Map settings (see below)
In order for a transaction to display on the Invoice Approval form, the transaction’s event must have the correct Prompt Map settings.
The event’s prompts for Order Number, Operation, Activity, Project Number, etc. must be mapped to a “charge_element_value” semantic. For example, if you have a Work Order event that prompts for Order Number and Operation, you need to map the F_ORDER_NUM and F_OPERATION_NUM prompts to the Semantic Names charge_element_value1 and charge_element_value_2.
The TEMPLATE_ACCOUNT, TEMPLATE_PROJECT, and TEMPLATE_WORKORDER events have these Prompt Map settings already defined. You can duplicate one of these TEMPLATE events when creating your own event, and then modify the Prompt and Prompt Map settings as needed.