How to Feed Collector Batch Files
How to Feed Collector Batch Files
The KFS GL Collector File Upload process allows you to upload either the XML or flat file transactions from the external feeder systems. The uploaded files are pre-validated and processed by the Collector Job. The Scrubber and Poster jobs will then process the output to update the GL balances. Unlike the Enterprise Batch Feed,which only validates the totals to the reconciliation file, the GL Collector Batch Upload process performs the format validation and matching of the totals. It is designed for less trusted sources than ones using the Enterprise Feeder process. |
Requirements
- The Accounting office must approve of all file feeds to KFS before such files are sent to the production environment. Please contact Accounting and include them in the verification of your data uploads as part of the process.
Overview
Difference from Enterprise Feeder
- The collector Job rejects the whole file if there's a formatting error, or a reconciliation error.
- Multiple Billing Detail data can be provided for recharges
- col_scrberr2*.data (error file) can be corrected by GLCP
- Scrubber validations: everything the same except no offsets generated, no built-in scrubber reports (reporting handled by collector)
- File-wide validations that will get a file rejected:
- bad formatting
- totals don't match, duplicate header, more than one doc type, more than one bal type
- details that don't match an entry
- debit and credit balancing (EQUAL_DEBIT_CREDIT_TOTAL_DOCUMENT_TYPES parameter....Document types that trigger a balance of credits, debits and total as part of the Collector Step process.)
Data Warehouse Considerations
All transactional detail from KFS will be available in the Kuali Data Warehouse. End-users will be able to build reports, dashboards and query data using Cognos Business Intelligence. When making decisions on the data to be populated in each field of the collector file please consider the following:
- Useful Information - Will the users be able to identify what the purpose of the transaction is by looking at the transaction detail in Data Warehouse? If there is an identifying data element for a transaction (Invoice ID, Billing Reference, etc.) in your system, would the user need to see this information in Data Warehouse?
- Drill-Downs - Cognos provides the ability to take the user from a high-level, general view down to the specific, detailed information about that view.
- Does the feeder system plan to or currently supply detailed data to Data Warehouse? If so, that system will need to populate the collector file with a unique identifier that Cognos can use to drill-down from a Kuali ledger transaction to the feeder system's detailed information. For example, in Cognos a user could drill-down from the Kuali ledger transaction to the detailed invoice data (date of transaction, description of services rendered, etc.) of a campus recharge system.
- If the feeder is sending aggregate data in the collector file, then the drill-down could be do the detailed transactions that exist in the feeder system. For example, users with the proper authorization can drill-down from a Payroll ledger transaction to the detailed Payroll Expense transactions in Cognos.
- The collector fields that will be used for drill-downs in Data Warehouse are:
- Org Doc Number - This is the unique identifier for each ledger transaction in the feeder system
- Origin Code - This is the source system identifier, which will be used in combination with the Org Doc Number to identify the feeder system information relating to the ledger transaction in Kuali
Process
The GL Collector Batch process involves the following four steps:
1. Creating the Feeder Files from your source system: Create a collector file in the specified XML (.xml) or Flat File format (.data).
2. Uploading the Collector Batch Files: Upload the above files to the KFS staging directory during testing, using the delivered interface or via SFTP software during production.
3. Executing the Collector Batch Job: Execute the batch job to insert rows into the Origin Group and Origin Entry tables.
4. Executing the Scrubber and Poster Jobs: Processes the origin transactions and updates balance tables.
Process Flow (XML File)
Process Flow (Flat File)
XML File Format
The XML file contains batch file format is identical to the files created by exporting an origin entry group from the GL Correction Process document. It contains the root tag of <batch></batch>, <header></header> tag, <glEntry></glEntry> tag optional <detail></detail> tag, and <trailer></trailer> tag.
NOTE: If a tag is optional and you do not want to use it, do not create the tag at all. The file may get rejected when a tag is sent with an empty value.
See the Kuali XML File Specification document for the exact layout or refer to the XSD below.
https://test.kuali.org/confluence/download/attachments/34560/BatchFileFormats.pdf?version=1
Sample XML Collector File <?xml version="1.0" encoding="UTF-8"?> <!-- Copyright 2005-2006 The Kuali Foundation. Licensed under the Educational Community License, Version 1.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.opensource.org/licenses/ecl1.php Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <batch xmlns="http://www.kuali.org/kfs/gl/collector" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.kuali.org/kfs/gl/collector https://test.kuali.org/kfs-reg/static/xsd/gl/collector.xsd"> <header> <chartOfAccountsCode>IR</chartOfAccountsCode> <organizationCode>0320</organizationCode> <transmissionDate>2011-01-03</transmissionDate> <batchSequenceNumber>0</batchSequenceNumber> <personUserId>testuser</personUserId> <emailAddress>testuser@uci.edu</emailAddress> <campusCode>BL</campusCode> <phoneNumber>1234567890</phoneNumber> <mailingAddress>1500 Berkeley</mailingAddress> <departmentName>Kuali Developers</departmentName> </header> <glEntry> <universityFiscalYear>2012</universityFiscalYear> <chartOfAccountsCode>IR</chartOfAccountsCode> <accountNumber>A000035</accountNumber> <subAccountNumber>-----</subAccountNumber> <objectCode>8000</objectCode> <subObjectCode>---</subObjectCode> <balanceTypeCode>AC</balanceTypeCode> <universityFiscalAccountingPeriod>01</universityFiscalAccountingPeriod> <documentTypeCode>IBI</documentTypeCode> <originationCode>FA</originationCode> <documentNumber>FAC01</documentNumber> <transactionEntrySequenceId>1</transactionEntrySequenceId> <transactionLedgerEntryDescription>Description</transactionLedgerEntryDescription> <transactionLedgerEntryAmount>300.00</transactionLedgerEntryAmount> <debitOrCreditCode>D</debitOrCreditCode> <transactionDate>2011-01-03</transactionDate> <organizationDocumentNumber>ODN</organizationDocumentNumber> </glEntry> <detail> <universityFiscalAccountingPeriod>01</universityFiscalAccountingPeriod> <universityFiscalYear>2012</universityFiscalYear> <chartOfAccountsCode>IR</chartOfAccountsCode> <accountNumber>A000035</accountNumber> <subAccountNumber>-----</subAccountNumber> <objectCode>8000</objectCode> <subObjectCode>---</subObjectCode> <collectorDetailSequenceNumber>47</collectorDetailSequenceNumber> <originationCode>FA</originationCode> <documentTypeCode>IBI</documentTypeCode> <documentNumber>FAC01</documentNumber> <amount>200</amount> <detailText>Copier Fee, Order #12345</detailText> <createDate>2011-01-03</createDate> <balanceTypeCode>AC</balanceTypeCode> </detail> <detail> <universityFiscalAccountingPeriod>01</universityFiscalAccountingPeriod> <universityFiscalYear>2012</universityFiscalYear> <chartOfAccountsCode>IR</chartOfAccountsCode> <accountNumber>A000035</accountNumber> <subAccountNumber>-----</subAccountNumber> <objectCode>8000</objectCode> <subObjectCode>---</subObjectCode> <collectorDetailSequenceNumber>48</collectorDetailSequenceNumber> <originationCode>FA</originationCode> <documentTypeCode>IBI</documentTypeCode> <documentNumber>FAC01</documentNumber> <amount>100</amount> <detailText>Copier Toner, Order #12345</detailText> <createDate>2011-01-03</createDate> <balanceTypeCode>AC</balanceTypeCode> </detail> <trailer> <totalRecords>3</totalRecords> <totalAmount>300.00</totalAmount> </trailer> </batch> |
XML Schema Document (XSD) <?xml version="1.0" encoding="UTF-8"?> <!-- Copyright 2007-2009 The Kuali Foundation Licensed under the Educational Community License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.opensource.org/licenses/ecl2.php Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <xsd:schema elementFormDefault="qualified" targetNamespace="http://www.kuali.org/kfs/gl/collector" xmlns:kfs="http://www.kuali.org/kfs/sys/types" xmlns:dd="http://www.kuali.org/kfs/sys/ddTypes" xmlns="http://www.kuali.org/kfs/gl/collector" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:import namespace="http://www.kuali.org/kfs/sys/types" schemaLocation="https://thea.adcom.uci.edu/kfs-poc/static/xsd/sys/types.xsd" /> <xsd:import namespace="http://www.kuali.org/kfs/sys/ddTypes" schemaLocation="https://thea.adcom.uci.edu/kfs-poc/static/xsd/sys/ddTypes.xsd" /> <!-- header fields --> <xsd:element name="organizationCode" type="xsd:normalizedString"/> <xsd:element name="transmissionDate" type="xsd:date"/> <xsd:element name="batchSequenceNumber" type="xsd:integer"/> <xsd:element name="personUserId" type="xsd:normalizedString"/> <xsd:element name="emailAddress" type="xsd:normalizedString"/> <xsd:element name="campusCode" type="xsd:normalizedString"/> <xsd:element name="phoneNumber" type="xsd:normalizedString"/> <xsd:element name="mailingAddress" type="xsd:normalizedString"/> <xsd:element name="departmentName" type="xsd:normalizedString"/> <!-- glEntry fields --> <xsd:element name="universityFiscalYear" type="xsd:normalizedString"/> <xsd:element name="chartOfAccountsCode" type="xsd:normalizedString"/> <xsd:element name="accountNumber" type="xsd:normalizedString"/> <xsd:element name="subAccountNumber" type="xsd:normalizedString"/> <xsd:element name="objectCode" type="xsd:normalizedString"/> <xsd:element name="subObjectCode" type="xsd:normalizedString"/> <xsd:element name="balanceTypeCode" type="xsd:normalizedString"/> <xsd:element name="objectTypeCode" type="xsd:normalizedString"/> <xsd:element name="universityFiscalAccountingPeriod" type="xsd:normalizedString"/> <xsd:element name="documentTypeCode" type="xsd:normalizedString"/> <xsd:element name="originationCode" type="xsd:normalizedString"/> <xsd:element name="documentNumber" type="xsd:normalizedString"/> <xsd:element name="transactionEntrySequenceId" type="xsd:integer"/> <xsd:element name="transactionLedgerEntryDescription" type="xsd:normalizedString"/> <xsd:element name="transactionLedgerEntryAmount" type="xsd:decimal"/> <xsd:element name="debitOrCreditCode" type="xsd:normalizedString"/> <xsd:element name="transactionDate" type="xsd:date"/> <xsd:element name="organizationDocumentNumber" type="xsd:normalizedString"/> <xsd:element name="projectCode" type="xsd:normalizedString"/> <xsd:element name="organizationReferenceId" type="xsd:normalizedString"/> <xsd:element name="referenceDocumentTypeCode" type="xsd:normalizedString"/> <xsd:element name="referenceOriginationCode" type="xsd:normalizedString"/> <xsd:element name="referenceDocumentNumber" type="xsd:normalizedString"/> <xsd:element name="documentReversalDate" type="xsd:date"/> <xsd:element name="encumbranceUpdateCode" type="xsd:normalizedString"/> <!-- trailer --> <xsd:element name="totalRecords" type="xsd:integer"/> <xsd:element name="totalAmount" type="xsd:decimal"/> <!-- detail --> <xsd:element name="createDate" type="xsd:date" /> <xsd:element name="collectorDetailSequenceNumber" type="xsd:normalizedString"/> <xsd:element name="detailText" type="xsd:normalizedString"/> <xsd:element name="amount" type="xsd:decimal"/> <!-- definition of complex type elements --> <xsd:complexType name="headerType"> <xsd:all> <xsd:element maxOccurs="1" minOccurs="1" ref="chartOfAccountsCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="organizationCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="transmissionDate" /> <xsd:element maxOccurs="1" minOccurs="1" ref="batchSequenceNumber" /> <xsd:element maxOccurs="1" minOccurs="1" ref="personUserId" /> <xsd:element maxOccurs="1" minOccurs="1" ref="emailAddress" /> <xsd:element maxOccurs="1" minOccurs="1" ref="campusCode"/> <xsd:element maxOccurs="1" minOccurs="1" ref="phoneNumber"/> <xsd:element maxOccurs="1" minOccurs="1" ref="mailingAddress"/> <xsd:element maxOccurs="1" minOccurs="1" ref="departmentName"/> </xsd:all> </xsd:complexType> <xsd:complexType name="detailType"> <xsd:all> <xsd:element maxOccurs="1" minOccurs="1" ref="universityFiscalAccountingPeriod" /> <xsd:element maxOccurs="1" minOccurs="1" ref="universityFiscalYear" /> <xsd:element maxOccurs="1" minOccurs="1" ref="createDate" /> <xsd:element maxOccurs="1" minOccurs="0" ref="chartOfAccountsCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="accountNumber" /> <xsd:element maxOccurs="1" minOccurs="0" ref="subAccountNumber" /> <xsd:element maxOccurs="1" minOccurs="1" ref="objectCode" /> <xsd:element maxOccurs="1" minOccurs="0" ref="subObjectCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="balanceTypeCode" /> <xsd:element maxOccurs="1" minOccurs="0" ref="objectTypeCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="collectorDetailSequenceNumber" /> <xsd:element maxOccurs="1" minOccurs="1" ref="originationCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="documentTypeCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="documentNumber" /> <xsd:element maxOccurs="1" minOccurs="1" ref="amount" /> <xsd:element maxOccurs="1" minOccurs="1" ref="detailText" /> </xsd:all> </xsd:complexType> <xsd:complexType name="trailerType"> <xsd:all> <xsd:element ref="totalRecords" /> <xsd:element ref="totalAmount" /> </xsd:all> </xsd:complexType> <xsd:complexType name="glEntryType"> <xsd:all> <xsd:element maxOccurs="1" minOccurs="0" ref="universityFiscalYear" /> <xsd:element maxOccurs="1" minOccurs="0" ref="chartOfAccountsCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="accountNumber" /> <xsd:element maxOccurs="1" minOccurs="0" ref="subAccountNumber" /> <xsd:element maxOccurs="1" minOccurs="1" ref="objectCode" /> <xsd:element maxOccurs="1" minOccurs="0" ref="subObjectCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="balanceTypeCode" /> <xsd:element maxOccurs="1" minOccurs="0" ref="objectTypeCode" /> <xsd:element maxOccurs="1" minOccurs="0" ref="universityFiscalAccountingPeriod" /> <xsd:element maxOccurs="1" minOccurs="1" ref="documentTypeCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="originationCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="documentNumber" /> <xsd:element maxOccurs="1" minOccurs="0" ref="transactionEntrySequenceId" /> <xsd:element maxOccurs="1" minOccurs="1" ref="transactionLedgerEntryDescription" /> <xsd:element maxOccurs="1" minOccurs="1" ref="transactionLedgerEntryAmount" /> <xsd:element maxOccurs="1" minOccurs="1" ref="debitOrCreditCode" /> <xsd:element maxOccurs="1" minOccurs="1" ref="transactionDate" /> <xsd:element maxOccurs="1" minOccurs="0" ref="organizationDocumentNumber" /> <xsd:element maxOccurs="1" minOccurs="0" ref="projectCode" /> <xsd:element maxOccurs="1" minOccurs="0" ref="organizationReferenceId" /> <xsd:element maxOccurs="1" minOccurs="0" ref="referenceDocumentTypeCode" /> <xsd:element maxOccurs="1" minOccurs="0" ref="referenceOriginationCode" /> <xsd:element maxOccurs="1" minOccurs="0" ref="referenceDocumentNumber" /> <xsd:element maxOccurs="1" minOccurs="0" ref="documentReversalDate" /> <xsd:element maxOccurs="1" minOccurs="0" ref="encumbranceUpdateCode" /> </xsd:all> </xsd:complexType> <xsd:complexType name="batchType"> <xsd:sequence> <xsd:element name="header" type="headerType"/> <xsd:sequence maxOccurs="unbounded"> <xsd:element minOccurs="0" maxOccurs="1" name="glEntry" type="glEntryType"/> <xsd:element minOccurs="0" maxOccurs="1" name="detail" type="detailType"/> </xsd:sequence> <xsd:element name="trailer" type="trailerType"/> </xsd:sequence> </xsd:complexType> <xsd:element name="batch" type="batchType"/> </xsd:schema> |
Flat File Format
The Collector Flat File consists of the first line being the header, followed by transactions lines with optional detail lines, then ending with a trailer line (total line count and the summation of absolute value amount for all transactions).
HEADER (Required) | ||||||
Column Name | Length | Start | End | Type | Requirement | Comment |
Fiscal Year | 4 | 1 | 4 | Numeric | Req'd | Fiscal Year (ending year). |
Chart Code | 2 | 5 | 6 | AlphaNumeric | Req'd | High level structure of the KFS Chart of Accounts. For example, IR is Irvine Campus Chart, MC is Medical Center Chart. |
Organization Code | 4 | 7 | 10 | AlphaNumeric | Req'd | Department code |
Spaces | 5 | 11 | 15 | AlphaNumeric | Five spaces (' ') | |
Transmission Date | 10 | 16 | 25 | Date | Req'd | YYYY-MM-DD |
Type | 2 | 26 | 27 | Alpha | Req'd | 'HD' |
Batch Sequence | 1 | 28 | 28 | Numeric | Req'd | 0-9 (use a different number for different files in a day) |
Email Address | 40 | 29 | 68 | AlphaNumeric | Req'd | Contact email address to receive notifications |
Contact Person | 30 | 69 | 98 | AlphaNumeric | Req'd | First and Last name of dept. contact person |
Department | 30 | 99 | 128 | AlphaNumeric | Req'd | Name of department |
Campus Address | 30 | 129 | 158 | AlphaNumeric | Req'd | Campus mailing address |
Campus Code | 2 | 159 | 160 | AlphaNumeric | Req'd | IR, MC |
Telephone | 10 | 161 | 170 | AlphaNumeric | Req'd | Telephone number of dept. contact person. Do not use dashes, format as 9498241111. |
Spaces | 2 | 171 | 172 | AlphaNumeric | Two spaces (' ') | |
TRANSACTIONS (Required) | ||||||
Column Name | Length | Start | End | Type | Requirement | Comment |
Fiscal Year | 4 | 1 | 4 | Numeric | Req'd | Fiscal Year (ending year). |
Chart Code | 2 | 5 | 6 | AlphaNumeric | Req'd | High level structure of the KFS Chart of Accounts. For example, IR is Irvine Campus Chart, MC is Medical Center Chart. |
Account Number | 7 | 7 | 13 | AlphaNumeric | Req'd | Identifies a pool of funds assigned to a specific university organization entity for a specific purpose. In KFS, the UC Fund will be an attribute of a KFS Account Number and will not be visible on the accounting line. |
Sub-account Number | 5 | 14 | 18 | String | Optional | Defines an optional part of the accounting string that allows tracking of financial activity within a particular account at a finer level of detail or processing of cost share. For example departments will be able to sub-divide the account number using sub-account to track expenses. Will carry FS Trans Code if it is currently sent in the Source Code field of the FS upload file. Alphanumeric and special characters allowed, if used, it must exist in KFS. Left justified with padded spaces if less than 5 characters. |
Object Code | 4 | 19 | 22 | AlphaNumeric | Req'd | Classifies all financial activities into detailed categories of income, expense, asset, liability, and fund balance. |
Sub-object Code | 3 | 23 | 25 | String | Optional | Defines an optional part of accounting string that allows departments to create finer distinctions within a particular object code on an account. Alphanumeric and special characters allowed, if used, it must exist in KFS. Left justified with padded spaces if less than 3 characters. NOTE: This attribute was char(4), it has been changed back to char(3) to conform to KFS base. |
Balance Type Code | 2 | 26 | 27 | AlphaNumeric | Req'd | Type of balance (Actual, Encumbrance, Budget, etc) used by the balance table |
Object Type Code | 2 | 28 | 29 | AlphaNumeric | Optional | It is recommended NOT to use this attribute, leave blank or do not create the tag at all if using the XML format. Defines the general use of an object code such as income, asset, expense, or liability. |
Fiscal Period | 2 | 30 | 31 | Numeric | Optional | A period within a fiscal year starting with '01' (July), '02' (August), up to '12' (June), and '13' for Year End. The following recommendation has been revoked by accounting: NOTE: It is now recommended that your system DOES explicitly provide the Fiscal Period for your transactions. This will ensure that your transactions land in the Fiscal Period that you specify, especially during month-end when you may be working across months. |
Document Type | 4 | 32 | 35 | AlphaNumeric | Req'd | Similar to Type Entry which defines the nature of transaction. |
Origin Code | 2 | 36 | 37 | AlphaNumeric | Req'd | Indicates the source system. The Origin Code must be defined in KFS. |
Document Number | 14 | 38 | 51 | AlphaNumeric | Req'd | Number assigned by the source system. It is recommended to provide the FS Trans ID in this attribute, this will cause the entire batch file to reject (All or Nothing), mimicking the current behavior of the FS upload process. If this behavior is unwanted, you can still send different document numbers for groups of transactions. Only that group with the same document number will be rejected if there is an error with one of the transactions, the other transactions that do not have that document number will continue to be processed. Left justified with padded spaces if less than 14 characters. |
Entry Seq Number | 5 | 52 | 56 | Numeric | Optional | NOTE: At UCI it has been decided NOT to use this attribute, leave blank or do not create the tag in the XML file. Sequence number starting with 1 for all transactions in the file. |
Description | 40 | 57 | 96 | String | Req'd | Transaction description. Alphanumeric and special characters allowed. Left justified with padded spaces if less than 40 characters. |
Sign | 1 | 97 | 97 | (+,-) | Req'd for Budget transactions | Sign (+ or -). Only required for budget transactions. |
Amount | 20 | 98 | 117 | Decimal | Req'd | Absolute transaction amount |
Debit/Credit Code | 1 | 118 | 118 | Alpha | Req'd | D or C |
Transaction Date | 10 | 119 | 128 | Date | Req'd | YYYY-MM-DD |
Org Doc Number | 10 | 129 | 138 | String | Optional | Organization Document Number. Any text that can be assigned to the transaction for a reference purpose. This attribute is equivalent to FS Reference. Alphanumeric and special characters allowed, no spaces in between. Left justified with padded spaces if less than 10 characters. NOTE: If you plan to send data in an aggregate form and expect the detail transactions to be displayed in DataWarehouse, use this number for the purpose of drilling down to the detail. |
Project Code | 10 | 139 | 148 | String | Optional | Defines an optional part of the accounting string that allows departments to assign an identifier which might span multiple accounts (e.g. construction projects, commencement, etc). Customer (Rechargee) Supplied with KFS Account# Alphanumeric and special characters allowed, if used, it must exist in KFS. Left justified with padded spaces if less than 10 characters. NOTE: Project Codes must be predefined in KFS. They are stored in uppercase and the validation of such is case sensitive. Please make sure that your Project Codes are in uppercase to properly match KFS. |
Org Ref Id | 10 | 149 | 158 | String | Optional | Free format field for a reference purpose. This attribute can be used for the FS Source. Alphanumeric and special characters allowed, no spaces in between. Left justified with padded spaces if less than 10 characters. |
Org Ref Type Code | 4 | 159 | 162 | AlphaNumeric | Optional | Original Encumbrance Document Type Code required for Enc Update Code of ‘R’ |
Ref Origin Code | 2 | 163 | 164 | AlphaNumeric | Optional | Original Encumbrance Origin Code required for Enc Update Code of ‘R’ |
Ref Doc Number | 14 | 165 | 178 | AlphaNumeric | Optional | Original Encumbrance Document Number required for Enc Update Code of ‘R’ |
Reversal Date | 10 | 179 | 188 | Date | Optional | YYYY-MM-DD. The reversal date is used for encumbrances and accrual reversals. The system automatically reverses the transaction on the specified date. |
Enc Update Code | 1 | 189 | 189 | AlphaNumeric | Optional - Re'd for Encumbrances | D (Document) or R (Reference) |
DETAIL (Optional) | ||||||
Column Name | Length | Start | End | Requirement | Comment | |
Fiscal Year | 4 | 1 | 4 | Numeric | Req'd | Fiscal Year (ending year). |
Chart Code | 2 | 5 | 6 | AlphaNumeric | Req'd | High level structure of the KFS Chart of Accounts. For example, IR is Irvine Campus Chart, MC is Medical Center Chart. |
Account Number | 7 | 7 | 13 | AlphaNumeric | Req'd | Identifies a pool of funds assigned to a specific university organization entity for a specific purpose. In KFS, the UC Fund will be an attribute of a KFS Account Number and will not be visible on the accounting line. |
Sub-account Number | 5 | 14 | 18 | String | Optional | Defines an optional part of the accounting string that allows tracking of financial activity within a particular account at a finer level of detail or processing of cost share. For example departments will be able to sub-divide the account number using sub-account to track expenses. |
Object Code | 4 | 19 | 22 | AlphaNumeric | Req'd | Classifies all financial activities into detailed categories of income, expense, asset, liability, and fund balance. |
Sub-object Code | 3 | 23 | 25 | String | Optional | Defines an optional part of accounting string that allows departments to create finer distinctions within a particular object code on an account. NOTE: This attribute was char(4), it has been changed back to char(3) to conform to KFS base. |
Type | 2 | 26 | 27 | AlphaNumeric | Req'd | 'DT' |
Spaces | 2 | 28 | 29 | AlphaNumeric | Two spaces (' ') | |
Item Number | 2 | 30 | 31 | AlphaNumeric | Optional | |
Doc Type Code | 4 | 32 | 35 | AlphaNumeric | Optional | |
Doc # | 14 | 36 | 49 | AlphaNumeric | Req'd | |
Amount | 20 | 50 | 69 | Decimal | Req'd | |
Debit/Credit | 1 | 70 | 70 | AlphaNumeric | Req'd | |
Additional Explanation | 120 | 71 | 190 | String | Optional | |
TRAILER (Required) | ||||||
Column Name | Length | Start | End | Type | Requirement | Comment |
Spaces | 25 | 1 | 25 | AlphaNumeric | ||
Type | 2 | 26 | 27 | AlphaNumeric | Req'd | 'TL' |
Spaces | 18 | 28 | 45 | AlphaNumeric | ||
Number of Transactions & Detail records in file | 6 | 46 | 51 | Numeric | Req'd | |
Spaces | 42 | 52 | 93 | AlphaNumeric | ||
Amount | 20 | 94 | 113 | Decimal | Req'd | Summation of absolute value amount for all transactions |
Spaces | 65 | 114 | 178 | AlphaNumeric |
Sample Flat Collector File (The ruler at the top of sample file is to aid you locate fields easily, omit ruler in actual file)
Screenshot of Locations of Important Identifying Numbers
Uploading Collector Batch Files Through Secure FTP
Instructions are found on the page KFS MFT/SFTP Instructions To Upload and Download Files.
Reviewing the Job Log and Reports
The job log and the reports can be viewed from the Batch File menu.
2009-10-19 20:53 Collector Reports PAGE: 1 Header ********************************************************************* Chart: MA Org: 0000 Campus: A2 Department: M Mailing Address: Campus Drive Contact: Keiko Email: keiko@uci.edu Transmission Date: 2009-10-29 Group Credits = 00001 $271,748.08 Group Debits = 00001 $1,923,000.00 Group Not C/D = 00000 $0.00 Valid Group Count = 00002 $2,194,748.08 ***** Totals for Creation of GLE Data ***** Total Records Read 000000002 Total Groups Read 000000001 Total Groups Bypassed 000000000 Total Records Bypassed 000000000 Total WWW Records Out 000000000 Total GLE Records Out 000000002 Total GLE Debits $1,923,000.00 Debit Count 000000001 Total GLE Credits $271,748.08 Debit Count 000000001 Total GLE Not C or D $0.00 Not C or D Count 000000000 Inserted 0 detail records into gl_id_bill_t 2009-10-19 20:53 Collector Reports PAGE: 2 Collector Pre-Scrubber Report Origin Entries In 2 Origin Entries Out 2 2009-10-19 20:53 Collector Reports PAGE: 3 2009-10-19 20:53 Collector Reports PAGE: 4 ********************************************************************************************************************************* ********************************************************************************************************************************* ******************* S T A T I S T I C S ******************* ********************************************************************************************************************************* ********************************************************************************************************************************* UNSCRUBBED RECORDS READ 2 SCRUBBED RECORDS WRITTEN 2 ERROR RECORDS WRITTEN 0 TOTAL OUTPUT RECORDS WRITTEN 2 EXPIRED ACCOUNTS FOUND 0 2009-10-19 20:53 Collector Reports PAGE: 5 ERROR RECORDS READ 0 VALID RECORDS READ 2 ERROR RECORDS REMOVED FROM PROCESSING 0 VALID RECORDS ENTERED INTO ORIGIN ENTRY 2 2009-10-19 20:53 Collector Reports PAGE: 6 ID-Billing detail data matched with GLE errors to remove documents with errors Total-Recs-Bypassed 0 Total Error Records 0 Total Debit Dollars $0.00 ID-Billing Detail Records with Account Numbers Changed Due to Change of Corresponding GLE Data Tot-Recs-Changed 0 2009-10-19 20:53 Collector Reports PAGE: 7 GENERAL LEDGER INPUT TRANSACTIONS FROM COLLECTOR BAL TYP ORIG YEAR PRD REC CNT DEBIT AMT DEBIT CNT CREDIT AMT CREDIT CNT NO D/C AMT NO D/C CNT ------- ---- ---- --- ------- ------------------- --------- ------------------- ---------- ------------------- ---------- AC FA 2010 CB 2 1,923,000.00 1 271,748.08 1 0.00 0 Subtotal(AC): 2 1,923,000.00 1 271,748.08 1 0.00 0 --------------------- ------- ------------------- --------- ------------------- ---------- ------------------- ---------- Grand Total: 2 1,923,000.00 1 271,748.08 1 0.00 0
Email Notification
If the job runs successfully, you will receive only one email (Collector Input Summary) from the server. If the job fails, you will receive additional email.
When the XML data has a problem, you will receive additional notification email, describing the reason why the data was rejected.