...
Page Properties | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
URL Samples | Note: SubFunds is a required field when checking for multiple accounts |
---|---|
All Parameters |
Sample Response
...
<accountBalance>
<accountBalance>-80.85</accountBalance>
</accountBalance>
WSDL Definition
Definition URLs
Just SubFunds |
PROD - https://kuali
Binding
{http://kfs.kuali.org/kfs/v5_0}chartOfAccountsInquirySoapBinding
SOAP Version
SOAP 1.1
Operations
...
Will retrieve information one account
...
Will retrieve information on all accounts within a set of selection criteria
...
Response
...
return/account/id
...
return/account/accountName
...
Sample Request XML
Code Block | ||||
---|---|---|---|---|
| ||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v5="http://kfs.kuali.org/core/v5_0">
<soapenv:Header/>
<soapenv:Body>
<v5:getAccount>
<!--Optional:-->
<arg0>
<accountNumber>7744640</accountNumber>
</arg0>
</v5:getAccount>
</soapenv:Body>
</soapenv:Envelope> |
Sample Response XML (Good)
...
language | xml |
---|---|
title | Sample Response XML (Good) |
...
Sample Response - Single Account
<Account> <id>C1F881630C4C0012E0430A031C730012</id> <accountName>2010 Pi Allotment</accountName> <accountNumber>4343430</accountNumber> <chartOfAccountsCode>UC</chartOfAccountsCode> <status>CLOSED</status> <fiscalOfficerIdentifier>dbm02001</fiscalOfficerIdentifier> <accountTypeCode>IP</accountTypeCode> <bankCode>15</bankCode> <consolidationChartOfAccountsCode/> <consolidationAccountNumber/> <reportsToAccountNumber/> <reportsToChartOfAccountsCode/> <FundSIDCode>1171000</FundSIDCode> <fundSIDDescription>Research Fund</fundSIDDescription> <accountManagerSystemIdentifier>dak02005</accountManagerSystemIdentifier> <accountsSupervisorySystemsIdentifier>mjp02013</accountsSupervisorySystemsIdentifier> <organizationCode>1321</organizationCode> <subFundGroupCode>UNRSP</subFundGroupCode> <departmentAccountOwnercode/> <departmentReference1/> <cfdaNumber/> <projectName/> <plantFundsParentCode/> <plantFundsParentCodeDescription/> <accountExpenseGuidelineText>Conform to University/Sponsor policies</accountExpenseGuidelineText> <accountIncomeGuidelineText>Conform to University/Sponsor policies</accountIncomeGuidelineText> <accountPurposeText> To record transactions and balances for this account. </accountPurposeText> <effectiveDate>2011-10-25</effectiveDate> <expiredDate>2011-12-31</expiredDate> </Account> | |
WSDL Definition
Definition URLs | UAT - https://kualinp.uconn.edu/kfs-uat/remoting/chartOfAccountsInquiry?wsdl |
---|---|
Binding | {http://kfs.kuali.org/kfs/v5_0}chartOfAccountsInquirySoapBinding |
SOAP Version | SOAP 1.1 |
Operations
Name | Description | Input |
---|---|---|
getAccount | Will retrieve information one account | account number (Required) |
getAccounts | Will retrieve information on all accounts within a set of selection criteria | subFund (Required) organization code (Optional) from Date [yyyy-mm-dd] (Optional) to Date [yyyy-mm-dd] (Optional) |
Response
Attribute | XPath | Notes |
---|---|---|
Id | return/account/id | Unique Identifier |
Account name | return/account/accountName | description of account |
Account number | return/account/accountNumber | |
Chart of Accounts code | return/account/chartOfAccountsCode | UC |
Status | return/account/status | enumeration values (NEW, OPEN, CLOSE, CHANGED) |
FiscalOfficerIdentifier | return/account/fiscalOfficerIdentifier | netid |
Account Type Code | return/account/accountTypeCode | |
Bank code | return/account/bankCode | |
Consolidation Chart of Accounts code | return/account/consolidationChartOfAccountsCode | |
Consolidation Account Number | return/account/consolidationAccountNumber | |
Reports to Account Number | return/account/reportsToAccountNumber | |
Reports to Chart of Accounts Code | return/account/reportsToChartOfAccountsCode | |
FundSid Code | return/account/FundSIDCode | |
FundSid description | return/account/fundSIDDescription | |
Account Manager System Identifier | return/account/accountManagerSystemIdentifier | netid |
Account supervisor Systems Identifier | return/account/accountsSupervisorySystemsIdentifier | netid |
Organization Code | return/account/organizationCode | |
SubFund group code | return/account/subFundGroupCode | |
Department account owner code | return/account/departmentAccountOwnercode | |
Department reference 1 | return/account/departmentReference1 | |
Cfda number | return/account/cfdaNumber | |
Project name | ||
Plant funds parent code | ||
Plant funds parent code description | ||
Account expense guideline text | ||
Account income guideline text | ||
Account purpose text |
Sample Request XML
Code Block | ||||
---|---|---|---|---|
| ||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v5="http://kfs.kuali.org/core/v5_0"> <soapenv:Header/> <soapenv:Body> <v5:getAccount> <bankCode>17</bankCode><!--Optional:--> <arg0> <consolidationChartOfAccountsCode/> <consolidationAccountNumber/><accountNumber>7744640</accountNumber> <reportsToAccountNumber/></arg0> </v5:getAccount> <reportsToChartOfAccountsCode/> <FundSIDCode>3952010</FundSIDCode> <fundSIDDescription>Go Bond Uconn2000/21st Century</fundSIDDescription> </soapenv:Body> </soapenv:Envelope> |
Sample Response XML (Good)
Code Block | ||||
---|---|---|---|---|
| ||||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:getAccountResponse xmlns:ns2="http://kfs.kuali.org/core/v5_0"> <return> <accountManagerSystemIdentifier>lac12009</accountManagerSystemIdentifier> <accountsSupervisorySystemsIdentifier>hls00005</accountsSupervisorySystemsIdentifier><id>21181adc-d953-4e0a-8ef3-3eb3ca7f3176</id> <organizationCode>1832<<accountName>902118</organizationCode>accountName> <subFundGroupCode>PLBND<<accountNumber>7744640</subFundGroupCode>accountNumber> <departmentAccountOwnercode>NGC<<chartOfAccountsCode>UC</departmentAccountOwnercode>chartOfAccountsCode> <departmentReference1>ACTIVE</departmentReference1><status>OPEN</status> <fiscalOfficerIdentifier>kar05009</fiscalOfficerIdentifier> <accountTypeCode>UI</accountTypeCode> <bankCode>17</bankCode> <consolidationChartOfAccountsCode/> <consolidationAccountNumber/> <reportsToAccountNumber/> <reportsToChartOfAccountsCode/> <FundSIDCode>3952010</FundSIDCode> <fundSIDDescription>Go Bond Uconn2000/21st Century</fundSIDDescription> <accountManagerSystemIdentifier>lac12009</accountManagerSystemIdentifier> <accountsSupervisorySystemsIdentifier>hls00005</accountsSupervisorySystemsIdentifier> <organizationCode>1832</organizationCode> <subFundGroupCode>PLBND</subFundGroupCode> <departmentAccountOwnercode>NGC</departmentAccountOwnercode> <departmentReference1>ACTIVE</departmentReference1> <cfdaNumber/> <projectName>East Central Campus Utility Upgrade</projectName> <plantFundsParentCode>1173</plantFundsParentCode> <plantFundsParentCodeDescription>Def Mtn/Code & ADA Cmp/Inf Imp & Reno Lump Sum/UA&S Fac</plantFundsParentCodeDescription> <accountExpenseGuidelineText>Utility upgrade. Will capitalize. A Pavone 9/16/16.</accountExpenseGuidelineText> <accountIncomeGuidelineText>Conform to University/Sponsor policies.PER KS/SJ EMAIL, SH/N BE CHARGED PAYROLL - REMOVED PAYROLL INDICATOR 3/9/18.</accountIncomeGuidelineText> <accountPurposeText>Project will re-route, replace, upgrade or add utilities in order to facilitate construction of South Campus Commons project planned for construction in 2018. Also consider & replace aged infrastructure in general area of South Campus Commons & consider future projects will impact utility distribution.</accountPurposeText> </return> </ns2:getAccountResponse> </soap:Body> </soap:Envelope> |
Sample Response XML (Bad)
Code Block | ||||
---|---|---|---|---|
| ||||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<soap:Fault>
<faultcode>soap:Server</faultcode>
<faultstring>Account not found.</faultstring>
<detail>
<ns2:AccountInquiryFault xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:ns2="http://kfs.kuali.org/core/v5_0"/>
</detail>
</soap:Fault>
</soap:Body>
</soap:Envelope> |
Sample SQL example
select account_NBR, account_nm, Sub_fund_grp_cd, acct_closed_ind, acct_create_dt, acct_effect_dt, acct_expiration_dt
--select count(*)
from kfs_uat.CA_ACCOUNT_T
where sub_fund_grp_cd IN ('PLEQP', 'PLRES', 'PLBHC', 'PLRHC', 'OPOTF', 'PLBND', 'PLREV', 'PLUNR')
-- and acct_create_dt > TO_DATE('2016-08-25','YYYY-MM-DD')
-- and acct_create_dt < TO_DATE('2016-09-17','YYYY-MM-DD')
--order by account_nbr
;
Code Examples
Java
Code Block language java title JUnit package com.example.coa.service;
...
import java.time.LocalDate; import java.util.ArrayList; import java.util.List; import javax.xml.bind.JAXBElement; import org.junit.Test; import org.kuali.kfs.core.v5_0.GetAccountsResponse; import org.springframework.oxm.jaxb.Jaxb2Marshaller; import junit.framework.TestCase; public class AccountInquiryServiceTest extends TestCase { @Test
...
...
...
...
public
...
void testGetAccounts() throws Exception { List<String> subFunds = new ArrayList<String>();
...
...
...
...
...
...
...
subFunds.add("PLEQP"); subFunds.add("PLRES");
...
...
...
...
...
subFunds.add("PLBHC"); subFunds.add("PLRHC"); subFunds.add("OPOTF");
...
...
...
...
...
...
subFunds.add("PLBND");
...
...
...
...
...
subFunds.add("PLREV"); subFunds.add("PLUNR"); List<String> organizationcodes = new ArrayList<String>(); organizationcodes.add("1832");
...
organizationcodes.add("1731");
...
...
Sample Response XML (Bad)
...
language | xml |
---|---|
title | Sample Response (Bad) |
...
organizationcodes.add("1863");
...
...
LocalDate fromDate
...
= LocalDate.parse("2016-08-26"); LocalDate
...
toDate
...
=
...
LocalDate.parse("2016-09-15");
...
...
...
ChartOfAccountsInquiryServiceClient client = new ChartOfAccountsInquiryServiceClient();
...
...
...
...
Code Examples
Java
Code Block language java title JUnit package com.example.coa.service; import java.time.LocalDate; import java.util.ArrayList; import java.util.List; import javax.xml.bind.JAXBElement; import org.junit.Test; import org.kuali.kfs.core.v5_0.GetAccountsResponse; import org.springframework.oxm.jaxb.Jaxb2Marshaller; import junit.framework.TestCase; public class AccountInquiryServiceTest extends TestCase { @Test public void testGetAccounts() throws Exception { Jaxb2Marshaller marshaller = new Jaxb2Marshaller(); marshaller.setContextPath("org.kuali.kfs.core.v5_0"); client.setMarshaller(marshaller); client.setUnmarshaller(marshaller); JAXBElement<GetAccountsResponse> response List<String> subFunds = new ArrayList<String>(= client.getAccounts(subFunds, organizationcodes, fromDate, toDate); subFunds.add("PLEQP" assertNotNull(response); } subFunds.add("PLRES"); subFunds.add("PLBHC"); subFunds.add("PLRHC"); subFunds.add("OPOTF"); subFunds.add("PLBND"); subFunds.add("PLREV"); subFunds.add("PLUNR"); List<String> organizationcodes = new ArrayList<String>(); organizationcodes.add("1832"}
Code Block language java title Client package com.example.coa.service; import java.time.LocalDate; import java.util.List; import javax.xml.bind.JAXBElement; import javax.xml.datatype.DatatypeFactory; import org.kuali.kfs.core.v5_0.AllAccountRequest; import org.kuali.kfs.core.v5_0.GetAccounts; import org.kuali.kfs.core.v5_0.GetAccountsResponse; import org.kuali.kfs.core.v5_0.ObjectFactory; import org.springframework.ws.client.core.support.WebServiceGatewaySupport; public class ChartOfAccountsInquiryServiceClient extends WebServiceGatewaySupport { public JAXBElement<GetAccountsResponse> getAccounts(List<String> subFunds, List<String> organizationcodes, LocalDate fromDate, LocalDate toDate) throws Exception { ObjectFactory factory = new ObjectFactory(); DatatypeFactory datatypeFactory = organizationcodesDatatypeFactory.addnewInstance("1731"); organizationcodes.add("1863"); String uri = "https://kualinp.uconn.edu/kfs-dev/remoting/chartOfAccountsInquiry"; GetAccounts request = LocalDate fromDate = LocalDate.parse("2016-08-26"new GetAccounts(); LocalDateAllAccountRequest toDateallAccountRequest = LocalDate.parse("2016-09-15"new AllAccountRequest(); allAccountRequest.getSubFund().addAll(subFunds); ChartOfAccountsInquiryServiceClient client = new ChartOfAccountsInquiryServiceClient( allAccountRequest.getOrganizationCode().addAll(organizationcodes); allAccountRequest.setFromDate(factory.createAllAccountRequestFromDate(datatypeFactory.newXMLGregorianCalendar(fromDate.toString()))); Jaxb2Marshaller marshaller = new Jaxb2Marshaller(allAccountRequest.setToDate(factory.createAllAccountRequestToDate(datatypeFactory.newXMLGregorianCalendar(toDate.toString()))); marshallerrequest.setContextPath("org.kuali.kfs.core.v5_0"setArg0(allAccountRequest); client.setMarshaller(marshaller); return client.setUnmarshaller(marshaller(JAXBElement<GetAccountsResponse>) getWebServiceTemplate().marshalSendAndReceive(uri, request); } }
Ruby
Code Block language ruby title Client require 'savon' client = Savon.client( JAXBElement<GetAccountsResponse> response = client.getAccounts(subFunds, organizationcodes, fromDate, toDate); assertNotNull(response); } }
Code Block language java title Client package com.example.coa.service; import java.time.LocalDate; import java.util.List; import javax.xml.bind.JAXBElement; import javax.xml.datatype.DatatypeFactory; import org.kuali.kfs.core.v5_0.AllAccountRequest; import org.kuali.kfs.core.v5_0.GetAccounts; import org.kuali.kfs.core.v5_0.GetAccountsResponse; import org.kuali.kfs.core.v5_0.ObjectFactory; import org.springframework.ws.client.core.support.WebServiceGatewaySupport; public class ChartOfAccountsInquiryServiceClient extends WebServiceGatewaySupport { public JAXBElement<GetAccountsResponse> getAccounts(List<String> subFunds, List<String> organizationcodes, LocalDate fromDate, LocalDate toDate) throws Exception { ObjectFactory factory = new ObjectFactory(); DatatypeFactory datatypeFactory = DatatypeFactory.newInstance(); String uri = "https://kualinp.uconn.edu/kfs-dev/remoting/chartOfAccountsInquiry"; GetAccounts request = new GetAccounts(); AllAccountRequest allAccountRequest = new AllAccountRequest(); allAccountRequest.getSubFund().addAll(subFunds); allAccountRequest.getOrganizationCode().addAll(organizationcodes); allAccountRequest.setFromDate(factory.createAllAccountRequestFromDate(datatypeFactory.newXMLGregorianCalendar(fromDate.toString()))); allAccountRequest.setToDate(factory.createAllAccountRequestToDate(datatypeFactory.newXMLGregorianCalendar(toDate.toString()))); request.setArg0(allAccountRequest); return (JAXBElement<GetAccountsResponse>) getWebServiceTemplate().marshalSendAndReceive(uri, request); } }
Ruby
Code Block language ruby title Client require 'savon' client = Savon.client( :wsdl => "https://kualinp.uconn.edu/kfs-uat/remoting/chartOfAccountsInquiry?wsdl", :ssl_verify_mode => :none, :namespace => "http://kfs.kuali.org/core/v5_0" ) puts client.operations response = client.call(:get_accounts, soap_action: false, message: { arg0: { accountNumber:7744640 } }) puts response.to_xml:wsdl => "https://kualinp.uconn.edu/kfs-uat/remoting/chartOfAccountsInquiry?wsdl", :ssl_verify_mode => :none, :namespace => "http://kfs.kuali.org/core/v5_0" ) puts client.operations response = client.call(:get_accounts, soap_action: false, message: { arg0: { accountNumber:7744640 } }) puts response.to_xml
Other Queries