Recently, I had a customer state that they opened a new fiscal year and were having a problem with PTE timesheets automatically getting rejected.  We were able to narrow it down to just new projects created in the new fiscal year that were experiencing the problem.  PTE timesheets for projects in the previous fiscal year would get approved successfully. 

I ended up opening a ticket with Microsoft and here are the steps we went over:

Project >> Transactions >> Time and Expense >> Timesheet Entry

pte_1

 

The employee completed their timesheet for the week and clicked Submit as normal.

Project >> Navigation List >> PTE Timesheets > Not Submitted

The approver could open up the transaction and attempt to approve it, however, it would automatically have a “Rejected” status.

pte_2

 

Administration >> Setup >> Company >> Workflow >> Workflow Maintenance

We reviewed the workflow setup for project timesheets and confirmed it was set up correctly.

pte_3

pte_4

pte_5

 

Microsoft provided a SQL script called ‘PTE Timesheet All Workflow.sql.’  In this script we could see the rejected timesheet had the error “Account index errors exist for PTE.”   This script is located at the end of this blog. Back to the setup of the project we went.

Project >> Cards >> Project >> select the Project Number experiencing the issue >> Budget button

pte_6

 

Click on the cost category that was entered on the timesheet and then click on the blue expansion arrow to open up the Budget Detail Entry window.

pte_7

 

Click on the Accounts button to open the Budget Accounts window.

pte_8

 

This cost category was initially setup to use “None” as the source for the Work in Progress account.  When “None” is selected, it will not update the General Ledger.  Regular project timesheets will allow this setting, but not when using PTE timesheets.  Once the user changed the source from “None” to “Cost Category”, they were able to successfully process another PTE timesheet.

pte_9

 

Project >> Setup >> Project >> Accounts button

To prohibit any new projects from being setup with the “None” source, we needed to change the overall project setup account window for the Work in Progress source from “None” to “Cost Category.”

pte_10

 

Use The Following Script To Query Workflow Tables, PTE Work and History

 

/**ALL WORKFLOW 2.0****************************************************************************

**  This script will query the following Workflow tables along with PTE Work and History:                                    

**    WFI10002 - Workflow Instance Master                              

**    WFI10003 - Workflow Step Instance                                

**    WFI10004 - Workflow_Tasks                

**    WF30100 - Workflow History                     

**/---------------------------------------------------------------------------------------------------------

 

DECLARE @SEARCHON as varchar(30)

 

/**---------------------------------------------------------------------------------------------------------

Please Enter the PO number, Requisition Number, Project Timesheet, or Payroll Timecard Information

in the @SEARCHON field below.  This does search using a wild card, so you can search wide open on an employee id,

or just a certain date or period or all employees as well.

 

EXAMPLES:

 

-Project Timesheet: EMPLOYEEID-TS-MMDDYY-X

 

**/----------------------------------------------------------------------------------------------------------

 

SELECT @SEARCHON = 'BARR0001-TS-040117-2'

 

print 'PTE10000 - Work PTE Header'

print '=================================================================================='

print ''

 

Select * from PTE10000 where PTE_Timesheet_Number like '%' + convert(varchar,@SEARCHON,102) + '%'

 

print 'PTE10001 - Work PTE Detail'

print '=================================================================================='

print ''

 

Select * from PTE10001 where PTE_Timesheet_Number like '%' + convert(varchar,@SEARCHON,102) + '%'

print 'PTE30100 - History PTE Header'

print '=================================================================================='

print ''

 

Select * from PTE30100 where PTE_Timesheet_Number like '%' + convert(varchar,@SEARCHON,102) + '%'

 

print 'PTE30101 - History PTE Detail'

print '=================================================================================='

print ''

 

Select * from PTE30101 where PTE_Timesheet_Number like '%' + convert(varchar,@SEARCHON,102) + '%'

 

print 'WFI10002 - Workflow Instance Master'

print '=================================================================================='

print ''

 

Select * from WFI10002 where BusObjKey like '%' + convert(varchar,@SEARCHON,102) + '%'

 

print 'WFI10003 - Workflow Step Instance'

print '=================================================================================='

print ''

 

Select * from WFI10003 where WorkflowInstanceID in (select WorkflowInstanceID from WFI10002 where BusObjKey like '%' + convert(varchar,@SEARCHON,102) + '%')

 

print 'WFI10004 - Workflow_Tasks'

print '=================================================================================='

print ''

 

Select * from WFI10004 where WorkflowInstanceID in (select WorkflowInstanceID from WFI10002 where BusObjKey like '%' + convert(varchar,@SEARCHON,102) + '%')

 

print 'WF30100 - Workflow History'

print '=================================================================================='

print ''

 

select * from WF30100 where WorkflowInstanceID in (select WorkflowInstanceID from WFI10002 where BusObjKey like '%' + convert(varchar,@SEARCHON,102) + '%')