Versions Compared

Key

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

...

Code Block
languagexml
titleSample Response (Bad)
<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
    languagejava
    titleJUnit
    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");
            organizationcodes.add("1863");
            
            LocalDate fromDate = LocalDate.parse("2016-08-26");
            LocalDate toDate = LocalDate.parse("2016-09-15");
                    
            ChartOfAccountsInquiryServiceClient client = new ChartOfAccountsInquiryServiceClient();
            
            Jaxb2Marshaller marshaller = new Jaxb2Marshaller();
            marshaller.setContextPath("org.kuali.kfs.core.v5_0");
            client.setMarshaller(marshaller);
            client.setUnmarshaller(marshaller);
              
            JAXBElement<GetAccountsResponse> response = client.getAccounts(subFunds, organizationcodes, fromDate, toDate);
    
            assertNotNull(response);
        }
    
    }


    Code Block
    languagejava
    titleClient
    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
    languageruby
    titleClient
    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


...