...
<?xml version="1.0" encoding="UTF-8"?> <pdp_file xmlns="http://www.kuali.org/kfs/pdp/payment" |
...
Code Block |
---|
<?xml version="1.0" encoding="UTF-8"?> <!-- Copyright 2007-2008 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/pdp/payment" xmlns:kfs="http://www.kuali.org/kfs/sys/types" xmlns:dd="http://www.kuali.org/kfs/sys/ddTypes" xmlns="http://www.kuali.org/kfs/pdp/payment" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:import namespace="http://www.kuali.org/kfs/sys/types" schemaLocation="@externalizable.static.content.url@http://localhost:8080/kfs-dev/static/xsd/sys/types.xsd" /> <xsd:import namespace="http://www.kuali.org/kfs/sys/ddTypes" schemaLocation="@externalizable.static.content.url@http://localhost:8080/kfs-dev/static/xsd/sys/ddTypes.xsd" /> <!-- simple data types --> <xsd:simpleType name="versionType"> <xsd:restriction base="xsd:string"> <xsd:pattern value="1.0"/> </xsd:restriction> </xsd:simpleType> <!-- BEGIN UCI CODE --> <xsd:simpleType name="oneToSevenCharType"> <xsd:restriction base="xsd:string"> <xsd:minLength value="1"/> <xsd:maxLength value="7"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="taxTypeCodeTypeuseTaxTypeCodeType"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="E"/<!-- WARREN CHANGE: change codes from E/U to D/I --> <!-- <xsd:enumeration value="E"/> <xsd:enumeration value="U"/> --> <xsd:enumeration value="D"/> <xsd:enumeration value="I"/> </xsd:restriction> </xsd:simpleType> <!-- END UCI CODE --> <!-- definition of simple type elements --> <xsd:element name="chart" type="${xsd:normalizedString,dd:PaymentFileLoad.chart}"/> <xsd:element name="unit" type="${xsd:normalizedString,dd:PaymentFileLoad.unit}"/> <xsd:element name="sub_unit" type="${xsd:normalizedString,dd:PaymentFileLoad.subUnit}"/> <!-- KFSI-1202 just make create date xsd:datetime --> <xsd:element name="creation_date" type="xsd:dateTime"/> <xsd:element name="source_doc_nbr" type="${xsd:normalizedString,dd:PaymentDetail.custPaymentDocNbr}"/> <xsd:element name="invoice_nbr" type="${xsd:normalizedString,dd:PaymentDetail.invoiceNbr}"/>"/> <xsd:element name="po_nbr" type="${xsd:normalizedString,dd:PaymentDetail.purchaseOrderNbr}"/> <xsd:element name="req_nbr" type="${xsd:normalizedString,dd:PaymentDetail.requisitionNbr}"/> <xsd:element name="org_doc_nbr" type="${xsd:normalizedString,dd:PaymentDetail.organizationDocNbr}"/> <xsd:element name="payee_name" type="${xsd:normalizedString,dd:PaymentGroup.payeeName}"/> <xsd:element name="payee_own_cd" type="${xsd:normalizedString,dd:PaymentGroup.payeeOwnerCd}"/> <xsd:element name="customer_institution_identifier" type="${xsd:normalizedString,dd:PaymentGroup.customerInstitutionNumber}"/> <xsd:element name="address1" type="${xsd:normalizedString,dd:PaymentGroup.line1Address}"/> <xsd:element name="address2" type="${xsd:normalizedString,dd:PaymentGroup.line2Address}"/> <xsd:element name="address3" type="${xsd:normalizedString,dd:PaymentGroup.line3Address}"/> <xsd:element name="address4" type="${xsd:normalizedString,dd:PaymentGroup.line4Address}"/> <xsd:element name="city" type="${xsd:normalizedString,dd:PaymentGroup.city}"/> <xsd:element name="state" type="${xsd:normalizedString,dd:PaymentGroup.state}"/> <xsd:element name="zip" type="${xsd:normalizedString,dd:PaymentGroup.zipCd}"/>"/> <xsd:element name="country" type="${xsd:normalizedString,dd:PaymentGroup.country}"/> <xsd:element name="campus_address_ind" type="${xsd:normalizedString,dd:PaymentGroup.campusAddress}"/> <!-- KFSI-1202 just make date xsd:date --> <xsd:element name="payment_date" type="xsd:date"/> <!-- KFSI-1202 just make date xsd:date --> <xsd:element name="invoice_date" type="xsd:date"/> <xsd:element name="attachment_ind" type="${xsd:normalizedString,dd:PaymentGroup.pymtAttachment}"/> <xsd:element name="special_handling_ind" type="${xsd:normalizedString,dd:PaymentGroup.pymtSpecialHandling}"/> <xsd:element name="taxable_ind" type="${xsd:normalizedString,dd:PaymentGroup.taxablePayment}"/> <xsd:element name="orig_invoice_amt" type="${xsd:decimal,dd:PaymentDetail.origInvoiceAmount}"/> <xsd:element name="net_payment_amt" type="${xsd:decimal,dd:PaymentDetail.netPaymentAmount}"/> <xsd:element name="invoice_tot_discount_amt" type="${xsd:decimal,dd:PaymentDetail.invTotDiscountAmount}"/> <xsd:element name="invoice_tot_ship_amt" type="${xsd:decimal,dd:PaymentDetail.invTotShipAmount}"/> <xsd:element name="invoice_tot_other_debits" type="${xsd:decimal,dd:PaymentDetail.invTotOtherDebitAmount}"/> <xsd:element name="invoice_tot_other_credits" type="${xsd:decimal,dd:PaymentDetail.invTotOtherCreditAmount}"/> <xsd:element name="nra_ind" type="${xsd:normalizedString,dd:PaymentGroup.nraPayment}"/> <xsd:element name="combine_group_ind" type="${xsd:normalizedString,dd:PaymentGroup.combineGroups}"/>"/> <xsd:element name="coa_cd" type="${xsd:normalizedString,dd:PaymentAccountDetail.finChartCode}"/> <xsd:element name="account_nbr" type="${xsd:normalizedString,dd:PaymentAccountDetail.accountNbr}"/> <xsd:element name="sub_account_nbr" type="${xsd:normalizedString,dd:PaymentAccountDetail.subAccountNbr}"/> <xsd:element name="object_cd" type="${xsd:normalizedString,dd:PaymentAccountDetail.finObjectCode}"/> <xsd:element name="sub_object_cd" type="${xsd:normalizedString,dd:PaymentAccountDetail.finSubObjectCode}"/> <xsd:element name="org_ref_id" type="${xsd:normalizedString,dd:PaymentAccountDetail.orgReferenceId}"/> <xsd:element name="project_cd" type="${xsd:normalizedString,dd:PaymentAccountDetail.projectCode}"/> <xsd:element name="amount" type="${xsd:normalizedString,dd:PaymentAccountDetail.accountNetAmount}"/> <xsd:element name="payment_text" type="${xsd:normalizedString,dd:PaymentNoteText.customerNoteText}"/> <xsd:element name="detail_count" type="${xsd:integer,dd:PaymentFileLoad.paymentCount}"/> <xsd:element name="detail_tot_amt" type="${xsd:decimal,dd:PaymentFileLoad.paymentTotalAmount}"/> <xsd:element name="bank_code" type="${xsd:normalizedString,dd:Bank.bankCode}"/> <xsd:element name="fs_origin_cd" type="${xsd:normalizedString,dd:PaymentDetail.financialSystemOriginCode}"/>"/> <xsd:element name="fdoc_typ_cd" type="${xsd:normalizedString,dd:PaymentDetail.financialDocumentTypeCode}"/> <!-- BEGIN UCI CODE: [FSI-142] INT-PDP-004 Manual/Local Check Upload --> <!-- KFSI-1202 just make date xsd:date --> <xsd:element name="disbursement_date" type="xsd:date" /> <xsd:element name="disbursement_number" type="xsd:string" /> <xsd:element name="disbursement_type" type="kfs:zeroToFourCharType" /> <xsd:element name="pmt_stat_cd" type="kfs:zeroToFourCharType" /> <xsd:element name="generate_gl_entries" type="xsd:boolean" /> <!-- END UCI --> <!-- BEGIN UCI CODE KFSI-191 --> <xsd:element name="asset_type_code" type="oneToSevenCharType" /> <xsd:element name="vendor_number" type="kfs:oneToFortyCharType" /> <xsd:element name="asset_number" type="xsd:integer" /> <xsd:element name="asset_manufacturer_name" type="kfs:zeroToFortyFiveCharType" /> <xsd:element name="asset_manufacturer_model_number" type="kfs:oneToTwentyFiveCharType" /> <xsd:element name="asset_description" type="kfs:oneToFortyCharType" /> <xsd:element name="asset_tag_number" type="kfs:oneToEightCharType" /> <xsd:element name="asset_serial_number" type="kfs:oneToTwentyFiveCharType" /> <xsd:element name="campus_code" type="kfs:oneToTwoCharType" /> <xsd:element name="building_code" type="kfs:oneToTenCharType" /> <xsd:element name="building_room_number" type="kfs:oneToEightCharType" /> <xsd:element name="building_sub_room_number" type="kfs:oneToTwoCharType" /> <!-- END UCI CODE KFSI-191 --> <!-- <!-- BEGIN BEGIN UCI CODE KFSI-470 --> <xsd:element name="use_tax_type_cd" type="taxTypeCodeTypeuseTaxTypeCodeType" /> <!-- END UCI CODE KFSI-470 --> <!-- WARREN ADD delivery date --> <xsd:element name="delivery_date" type="xsd:date"/> <!-- definition of attributes --> <!-- definition of complex type elements --> <xsd:element name="pdp_file"> <xsd:complexType> <xsd:sequence> <xsd:element ref="header"/> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="group"/> <xsd:element ref="trailer"/> </xsd:sequence> <xsd:attribute name="version" type="versionType" use="required"/> </xsd:complexType> </xsd:element> <xsd:element name="accounting"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="1" minOccurs="0" ref="coa_cd"/> <xsd:element maxOccurs="1" minOccurs="1" ref="account_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="sub_account_nbr"/> <xsd:element ref="object_cd"/> <xsd:element maxOccurs="1" minOccurs="0" ref="sub_object_cd"/> <xsd:element maxOccurs="1" minOccurs="0" ref="org_ref_id"/> <xsd:element maxOccurs="1" minOccurs="0" ref="project_cd"/> <xsd:element ref="amount"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="header"> <xsd:complexType> <xsd:sequence> <xsd:element ref="chart"/> <xsd:element ref="unit"/> <xsd:element ref="sub_unit"/> <xsd:element ref="creation_date"/> </xsd:sequence> <!-- BEGIN UCI CODE </xsd:complexType>KFSI-142 --> </xsd:element> <xsd:element namemaxOccurs="trailer1"> minOccurs="0" ref="generate_gl_entries"/> <xsd:complexType> <!-- END UCI CODE --> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="trailer"> <xsd:complexType> <xsd:sequence> <xsd:element ref="detail_count"/> <xsd:element ref="detail_tot_amt"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="group"> <xsd:complexType> <xsd:sequence> <xsd:element ref="payee_name"/> <xsd:element maxOccurs="1" minOccurs="0" ref="payee_id"/> <xsd:element maxOccurs="1" minOccurs="0" ref="payee_own_cd"/> <xsd:element maxOccurs="1" minOccurs="0" ref="customer_institution_identifier"/> <!-- BEGIN UCI CODE: [KFSI-98] INT-PDP-003 Payment Upload Using PURAP Vendor--> <xsd:element maxOccurs="1" minOccurs="0" name="extension"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="1" minOccurs="0" name="address_id" type="kfs:oneToTenCharType"/> <!-- UCI CODE KFSI-470 --> <!-- UCI CODE KFSI-470 --> WARREN DELETE <xsd:element maxOccurs="1" minOccurs="0" ref="tax_type_cd" /> --> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element maxOccurs="1" minOccurs="0" ref="address1"/> <!-- END UCI CODE --> <xsd:element maxOccurs="1" minOccurs="0" ref="address2"/> <xsd:element maxOccurs="1" minOccurs="0" ref="address3"/> <xsd:element maxOccurs="1" minOccurs="0" ref="address4"/> <xsd:element maxOccurs="1" minOccurs="0" ref="city"/> <xsd:element maxOccurs="1" minOccurs="0" ref="state"/> <xsd:element maxOccurs="1" minOccurs="0" ref="zip"/> <xsd:element maxOccurs="1" minOccurs="0" ref="country"/> <xsd:element maxOccurs="1" minOccurs="0" ref="campus_address_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="payment_date"/> <xsd:element maxOccurs="1" minOccurs="0" ref="attachment_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="special_handling_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="taxable_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="nra_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="combine_group_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="bank_code"/> <!-- BEGIN UCI CODE: [FSI-142] INT-PDP-004 Manual/Local Check Upload --> <xsd:element maxOccurs="1" minOccurs="0" ref="disbursement_date" /> <xsd:element maxOccurs="1" minOccurs="0" ref="disbursement_number" /> <xsd:element maxOccurs="1" minOccurs="0" ref="disbursement_type" /> <xsd:element maxOccurs="1" minOccurs="0" ref="pmt_stat_cd" /> <!-- END UCI --> <!-- Default check stub holds 27 note lines. There is a line printed for each detail so the number of detail items on a check needs to be subtracted from the total allowed note lines. This can't be enforced in the schema so it is possible to provide too many note lines in some cases. This rule will be enforced in code. Because of this, the maximum number of detail segments is 27 (assuming they have no notes). If your check stub holds more or less than 27 note lines, you need to change this, the maximum number of detail segments in this file and the setting MAX_NOTE_LINES in the application settings file. --> <xsd:element maxOccurs="27" minOccurs="1" ref="detail"/> <!-- BEGIN UCI CODE KFSI-191 -->4582 up limit to 200 payment details <xsd:element maxOccurs="127" minOccurs="01" ref="capital_asset_informationdetail"/> --> <!-- END UCI CODE KFSI-191 --<xsd:element maxOccurs="200" minOccurs="1" ref="detail"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="detail"<!-- END UCI CODE KFSI-4582 --> <xsd:complexType> <!-- BEGIN UCI CODE <xsd:sequence> <xsd:element ref="source_doc_nbr"/KFSI-191 --> <xsd:element maxOccurs="1" minOccurs="0" ref="invoicecapital_asset_nbrinformation"/> <xsd:element maxOccurs="1" minOccurs="0" ref="po_nbr"/<!-- END UCI CODE KFSI-191 --> </xsd:sequence> <xsd:element maxOccurs="1" minOccurs="0" ref="req_nbr"/> </xsd:complexType> </xsd:element> <xsd:element maxOccursname="1detail"> minOccurs="0" ref="org_doc_nbr"/> <xsd:complexType> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_date"/> <xsd:sequence> <xsd:element maxOccursref="1" minOccurs="0" ref="orig_invoice_amtsource_doc_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="netinvoice_payment_amtnbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_tot_discount_amtpo_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_tot_ship_amtreq_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoiceorg_totdoc_other_debitsnbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_tot_other_creditsdate"/> <xsd:element maxOccurs="1" minOccurs="0" ref="orig_invoice_amt"/> <xsd:element maxOccurs="1" minOccurs="0" ref="fsnet_originpayment_cdamt"/> <xsd:element maxOccurs="1" minOccurs="0" ref="fdocinvoice_tot_typdiscount_cdamt"/> <xsd:element maxOccurs="unbounded1" minOccurs="10" ref="accountinginvoice_tot_ship_amt"/> <!-- Default check stub holds 27 note lines. There is a line printed for each detail <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_tot_other_debits"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_tot_other_credits"/> so the number of detail items on a check needs to be subtracted from the <xsd:element maxOccurs="1" minOccurs="0" ref="fs_origin_cd"/> total allowed note lines. This can't be enforced in the schema so it is possible<xsd:element maxOccurs="1" minOccurs="0" ref="fdoc_typ_cd"/> <!-- WARREN ADD extension --> to provide too many note lines in some cases. This rule will be enforced in<xsd:element maxOccurs="1" minOccurs="0" name="extension"> <xsd:complexType> code. <xsd:sequence> <xsd:element Because of this, the maximum note lines a detail can have is 26 (assuming theremaxOccurs="1" minOccurs="0" name="address_id" type="kfs:oneToTenCharType"/> is only one detail in the payment group). <!-- UCI CODE KFSI-470 --> <!-- WARREN ADD --> If your check stub holds more or less than 27 note lines, you need to change this, <xsd:element maxOccurs="1" minOccurs="0" ref="use_tax_type_cd" /> <xsd:element maxOccurs="1" the maximum number of detail segments in this file and the setting MAX_NOTE_LINESminOccurs="0" ref="delivery_date" /> </xsd:sequence> in the application settings file. </xsd:complexType> --> </xsd:element> <xsd:element maxOccurs="26unbounded" minOccurs="01" ref="payment_textaccounting"/> </xsd:sequence> <!-- Default check stub </xsd:complexType>holds 27 note lines. There </xsd:element>is a line printed for each detail <xsd:element name="payee_id"> <xsd:complexType> so the number of <xsd:simpleContent>detail items on a check needs to be subtracted from the <xsd:extension base="kfs:oneToTwentyFiveCharType"> total allowed note lines. <xsd:attribute name="id_type" type="kfs:oneAlphaType" use="required"/> This can't be enforced in the schema so it is possible </xsd:extension> to provide too many </xsd:simpleContent>note lines in some cases. This rule will </xsd:complexType>be enforced in </xsd:element> <!-- BEGIN UCI CODE KFSI-191 --> code. <xsd:element name="capital_asset_information"> <xsd:complexType> <xsd:choice> <xsd:element minOccurs="0" maxOccurs="1" ref="new_asset"/> <xsd:element minOccurs="0" maxOccurs="1" ref="existing_asset"/> Because of this, the maximum note lines a detail can have is 26 (assuming there </xsd:choice> is only one detail in </xsd:complexType>the payment group). </xsd:element> <xsd:element name="existing_asset"> <xsd:complexType> <xsd:all> If your check <xsd:element minOccurs="0" maxOccurs="1" ref="asset_number"/> stub holds more or less than 27 note lines, you need to change this, </xsd:all> </xsd:complexType> </xsd:element> the maximum number of detail segments in this file and the <xsd:element name="new_asset">setting MAX_NOTE_LINES in the application settings file. <xsd:complexType> --> <xsd:sequence> <xsd:element maxOccurs="26" minOccurs="0" ref="payment_text"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="payee_id"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="kfs:oneToTwentyFiveCharType"> <xsd:attribute name="id_type" type="kfs:oneAlphaType" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <!-- BEGIN UCI CODE KFSI-191 --> <xsd:element name="capital_asset_information"> <xsd:complexType> <xsd:choice> <xsd:element minOccurs="0" maxOccurs="1" ref="new_asset"/> <xsd:element minOccurs="0" maxOccurs="1" ref="existing_asset"/> </xsd:choice> </xsd:complexType> </xsd:element> <xsd:element name="existing_asset"> <xsd:complexType> <xsd:all> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_number"/> </xsd:all> </xsd:complexType> </xsd:element> <xsd:element name="new_asset"> <xsd:complexType> <xsd:sequence> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_type_code"/> <xsd:element minOccurs="0" maxOccurs="1" ref="vendor_number"/> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_manufacturer_name" /> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_manufacturer_model_number"/> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_description"/> maxOccurs="1" ref="asset_description"/> <xsd:element minOccurs="0" maxOccurs="unbounded" ref="asset_info_detail"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="asset_info_detail"> <xsd:complexType> <xsd:all> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_tag_number"/> "/> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_serial_number"/> <xsd:element minOccurs="0" maxOccurs="1" ref="campus_code"/> <xsd:element minOccurs="0" maxOccurs="1" ref="building_code"/> <xsd:element minOccurs="0" maxOccurs="1" ref="building_room_number"/> <xsd:element minOccurs="0" maxOccurs="1" ref="building_sub_room_number"/> </xsd:all> </xsd:complexType> </xsd:element> <!-- END UCI CODE KFSI-191 --> </xsd:schema> |
Uploading Payment Batch Files Through Secure FTP
...