Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Then close the 'Edit View File Attachments' Screen, opening this screen will trigger the Automated filing and create the necessary folder structure in the 'Default Attached Files Folder'.

Image Added

Files must be placed in the correct subfolder within this structure. For Example files to be attached to a Purchase Order must be placed in the 'PurchaseOrder' folder within the 'Default Attached Files Folder' .

File Name Rules

Files placed in this structure will need to conform to the following naming conventions for the files to be attached to the correct record in Workbench.

'RelatedRecordID;Attached File Group Name;Description.xxx'

So for example if the destination Record Type is a Purchase Order and you’re attaching a .pdf file, the file name format would be:

'PONumber;Attached File Group Name;Description.pdf'

i.e: 1234;Scanned PO;PO 1234.pdf

Note that the Attached File Group Name and Description are optional so the following would also work:

1234.pdf

1234;;PO 1234.pdf

1234;Scanned PO.pdf

In addition, if the group name is invalid, the file will still be processed but without a group assigned.

...

File Name Rules for More Complex Related Record Types

...

The following Related Record Types have composite RelatedRecordID's

  • CashFlow
  • Forecast
  • SubContractorCetrtificationDetail
  • Timesheet

This means these Related Record Types have RelatedRecordID's that are made up of more than one part. When this happens the RelatedRecordID's parts are sepreated by a dot (.) (period or fullstop).

Some Example file names are:

Cashflow or Forecast: A pdf file to be attached to JobCode ABC123 Year 2000 Period 9, with a group name of 'Default Group' and a Description of 'Graph' would be named:

ABC123.2000.9;Default Group;Graph.pdf

Timesheet: A csv file to be attached to PersonID 1234 Timesheet Weekending Date 09/11/2012 , with no group name specified and a Description of 'Hours Worked' would be named:

1234.2000119;;Hours Worked.csv

The table below identifies what each part is and in the case of timesheets the format.

...

What RelatedRecordID is used for my file type?

...

The RelatedRecordID for each Related Record Type is Usually the PrimaryKey (ID field) of the RelatedRecord Table.

The list below shows the defaults (No Config.ini file) but can be overridden with the implementation of a Config.ini if required (More on this later in the Config.ini section).

This is a comprehensive list (at time of publishing):

Record TypeRelatedRecordID formatTable Validated Against
ActionActionIDActions
APCreditAPInvoiceIDAPInvoices
APInvoiceAPInvoiceIDAPInvoices
APVoucherVoucherIDAPVoucher
ARCreditInvoiceNumberJobInvoices
ARInvoiceInvoiceNumberJobInvoices
AssetAssetIDAssets
BatchBatchNoBatchHeaders
CashFlowJobCode.YearNo.PeriodNoForecasts
CompanyCompanyIDCompanies 
ContractContractCodeContracts
DrawingDocIDDocuments
EstimateEstimateIDEstimates
ForecastJobCode.YearNo.PeriodNoForecasts
ForecastGainAndLossWIPAdjustmentIDWIPAdjustments
ForecastRiskAdjustmentForecastRiskIDForecastRisk
ForecastSubcontractRiskForecastRiskIDForecastRisk
ForecastUncommittedAdjustmentForecastRiskIDForecastRisk
ForecastWIPAdjustmentWIPAdjustmentIDWIPAdjustments
ItemItemIDItems
JobJobsJobCode
JobTransactionJobTranIDJobTransactions
MeetingMeetingIDMeetings
MeetingItemMeetingItemIDMeetingItems
PersonPersonIDPeople
PlantJobCodeJobs 
PlantPolicyQuoteIDPlantPolicy 
PlantServiceOrderQuoteIDPlantServiceOrders
PriceRequestPriceRequestIDPriceRequestHeader
ProspectProspectNoProspect
PurchaseOrderPONumberPurchaseOrders
QuoteQuoteIDQuotations
ReturnVoucherVoucherIDAPVoucher
ServiceAgreementIDServiceAgreement
ServiceDeskLogHeaderIDLogHeader
SubContractSubContractCodeSubContracts
SubContractorCetrtificationDetailAPInvoiceID.PONumberSubcontractClaimValues
TimesheetPersonID.TimesheetDateTimesheets
WorksOrderPONumberPurchaseOrders

 Timesheet's RelatedRecordID has a Timesheet component, these need to be treated in the following way:

Format: yyyym(m)d(d)

As file names cannot contain slashes these have been removed. The year component is always 4 digits. The Month and Day component are variable length (One or two characters) as leading zeros are removed.

So a file being attached to PersonID 1234 for Week Ending 13/07/2012 would have a RelatedRecordID portion of the file name as:

1234.2012713

...

Rejected Files

...

Rejected files are files that could not be automatically attached for some reason.

Common causes are:

  • Files placed in the wrong subfolder.
  • Files that failed validation of the RelatedRecordID.
  • Files that have substituted the RelatedRecordID with another field, and that field is not unique for the value being looked up (More on this later in the Config.ini section).

These files are placed in a folder structure within the 'Default Attached Files Folder'. A 'Not Processed' folder is created when required, and the rejected file is placed in a subfolder (Matching its Related Record Type).

Note that in the event a file of the same name already exists in the 'Not Processed' folder structure the newly rejected file is renamed with a number in brackets i.e. 1234;Scanned PO;PO 1234(1).pdf

Image Added

 These files will need to be manually attended to.

...

Config.ini

...

The Config.ini file is optional. If you are attaching files to record types in the standard manner and the file name's first 'field' the area of the file name before the first ; (semicolin) is the normal RelatedRecordID for that file type, then you wont need a Config.ini file.

The Config.ini is a TAB delimited file. However Commas cannot be used in this file, substituted for a pipe ( | ) character if required.

A reasonable knowledge of SQL is required to configure the Config.ini file correctly.

The Config.ini file is used to interpret another 'Unique' field on the related record type's table and resolve to the normal RelatedRecordID. For example when attaching files to a Person (People table) record the normal RelatedRecordID is PersonID, however you could use the Config.ini file to allow the PersonID in the file name to be replaced with another unique field from the People table such as Employee Number instead.

To do this example above a line in the Config.ini file would need to look like the following:

Person SELECT People.PersonID FROM People WHERE People.EmployeeNo = '{1}'

To use Employee Number on timesheets instead of PersonID as well, add the following line to the Config.ini file:

Timesheet SELECT People.PersonID FROM People WHERE People.EmployeeNo = '{1}' Null

The Config.ini file must be placed in the 'Default Attached Files Folder' if required.