DWH Web Services - KFS Account
isValidKFSAccounts(List of (kfsChartCode, kfsAcctNumber, effectiveDate))
This service is used to validate KFS account codes. Returns an XML result set with a value of true or false (example isValidKFSAccounts result) for each chart and account
- This is NOT recommended to pass in same value of (kfsChartCode, kfsAcctNumber) but with different effectiveDate. An unexpected result maybe returned.
- The order of kfsChartCode, kfsAcctNumber, effectiveDate CANNOT be swapped.
- effectiveDate has to be valid. Null will be returned otherwise.
Input Specifications
Index | Parameter | Description | Required? | Data Type (max length) | Example |
---|---|---|---|---|---|
0 | kfsChartCode | KFS Chart Code | Yes | String(2) | 'IR' |
1 | kfsAcctNumber | KFS Account Number | Yes | String(7) | '1234567' |
2 | effectiveDate | The date the KFS account needs to be valid | No (default is today's date) | String(8) YYYYMMDD | '20120701' (begin fiscal year 2012/2013) |
DB Query
SELECT a.FIN_COA_CD, a.ACCOUNT_NBR, 'true' AS VALID FROM dwhs_ods..ca_account_t a WHERE a.ACCT_CLOSED_IND <> 'Y' AND ( a.ACCT_EXPIRATION_DT >= getdate() or a.ACCT_EXPIRATION_DT IS NULL) AND ( (a.account_nbr= '1000766' AND a.fin_coa_cd= 'IR' AND a.ACCT_EFFECT_DT <= getdate()) OR (a.account_nbr= '1008543' AND a.fin_coa_cd= 'IR' AND a.ACCT_EFFECT_DT <= convert(datetime,'20100701',112)) OR (a.account_nbr= '1234' AND a.fin_coa_cd= 'XX' AND a.ACCT_EFFECT_DT <= getdate()) );
Result Schema: A list of following elements (AccountValidation.java)
Parameter | Description | Data Type | Example |
---|---|---|---|
kfsChartCode | KFS Chart Code | String (2) | 'IR' |
kfsAcctNumber | KFS Account Number | String (7) | '1234567' |
isValid | Is the Chart/Account Active for that effective date (or today)? | boolean | true |
WS Example
Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:adc="http://www.adcom.uci.edu"> <soapenv:Header/> <soapenv:Body> <adc:isValidKFSAccounts> <kfsAccountList> <kfsAcctNumber>1000766</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </kfsAccountList> <kfsAccountList> <kfsAcctNumber>1008543</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </kfsAccountList> <kfsAccountList> <kfsAcctNumber>1234</kfsAcctNumber> <kfsChartCode>XX</kfsChartCode> </kfsAccountList> <kfsAccountList> <kfsAcctNumber>1234576</kfsAcctNumber> <kfsChartCode>XX</kfsChartCode> </kfsAccountList> </adc:isValidKFSAccounts> </soapenv:Body> </soapenv:Envelope>
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:isValidKFSAccountsResponse xmlns:ns2="http://www.adcom.uci.edu"> <return> <kfsAcctNumber>1008543</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> <valid>true</valid> </return> <return> <kfsAcctNumber>1234576</kfsAcctNumber> <kfsChartCode>XX</kfsChartCode> <valid>false</valid> </return> <return> <kfsAcctNumber>1234</kfsAcctNumber> <kfsChartCode>XX</kfsChartCode> <valid>false</valid> </return> <return> <kfsAcctNumber>1000766</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> <valid>true</valid> </return> </ns2:isValidKFSAccountsResponse> </soap:Body> </soap:Envelope>
Java Client Example
DWHServerService dss = new DWHServerService(); DWHServer ds = dss.getDWHServerPort(); ArrayList<AccountParameters> pl3 = new ArrayList<AccountParameters>(); AccountParameters ap31 = new AccountParameters(); ap31.setKfsChartCode("IR"); ap31.setKfsAcctNumber("1000766"); AccountParameters ap32 = new AccountParameters(); ap32.setKfsChartCode("IR"); ap32.setKfsAcctNumber("1008543"); AccountParameters ap33 = new AccountParameters(); ap33.setKfsChartCode("XX"); ap33.setKfsAcctNumber("1234"); AccountParameters ap34 = new AccountParameters(); ap34.setKfsChartCode("XX"); ap34.setKfsAcctNumber("1234576"); pl3.add(ap31); pl3.add(ap32); pl3.add(ap33); pl3.add(ap34); List<AccountValidation> resultList3 = ds.isValidKFSAccounts(pl3); if (resultList3 != null) { for (Iterator i = resultList3.iterator(); i.hasNext();) { AccountValidation element = (AccountValidation) i.next(); System.out.println("\t" + element.getKfsChartCode() + "/" + element.getKfsAcctNumber() + " : " + element.isValid()); } } else { System.out .println("something bad happened...please check your query"); }
isValidKFSExpenseAccounts(List of (kfsChartCode, kfsAcctNumber, effectiveDate))
This service is used to validate KFS chart and expense account codes. Returns an XML result set with a value of true or false for each chart/account
- This is NOT recommended to pass in same value of (kfsChartCode, kfsAcctNumber) but with different effectiveDate. An unexpected result maybe returned.
- The order of kfsChartCode, kfsAcctNumber, effectiveDate CANNOT be swapped.
- effectiveDate has to be valid. Null will be returned otherwise.
Input Specifications
Index | Parameter | Description | Required? | Data Type (max length) | Example |
---|---|---|---|---|---|
0 | kfsChartCode | KFS Chart Code | Yes | String (2) | 'IR' |
1 | kfsAcctNumber | KFS Account Number | Yes | String(7) | 'GF12646' |
2 | effectiveDate | Date the KFS account needs to be valid | No (default is today's date) | String(8) YYYYMMDD | '20120701' (begin fiscal year 2012/2013) |
DB Query
SELECT a.FIN_COA_CD, a.ACCOUNT_NBR,'true' AS VALID FROM dwhs_ods..ca_account_t a WHERE a.ACCT_CLOSED_IND <> 'Y' AND (a.ACCT_EXPIRATION_DT >= getdate() OR a.ACCT_EXPIRATION_DT IS NULL) AND a.ACCT_TYP_CD <> 'CA' AND ( (a.ACCOUNT_NBR= 'FG14577' AND a.FIN_COA_CD= 'IR' AND a.ACCT_EFFECT_DT <= convert(datetime,'20120630',112)) OR (a.ACCOUNT_NBR= 'FG11955' AND a.FIN_COA_CD= 'IR' AND a.ACCT_EFFECT_DT <= getdate()) OR (a.ACCOUNT_NBR= 'GF12646' AND a.FIN_COA_CD= 'IR' AND a.ACCT_EFFECT_DT <= getdate()) OR (a.ACCOUNT_NBR= 'UC00370' AND a.FIN_COA_CD= 'IR' AND a.ACCT_EFFECT_DT <= getdate()) OR );
Result Schema: A list of following elements (AccountValidation.java)
chart code, account code and true or false
Parameter | Description | Data Type | Example |
---|---|---|---|
kfsChartCode | KFS Chart Code | String (2) | 'IR' |
kfsAcctNumber | KFS Account Number | String (7) | 'GF12646' |
isValid | Is the Chart/Account Active for that effective date (or today)? | boolean | true |
WS Example
Request
<?xml version="1.0" ?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:isValidKFSExpenseAccounts xmlns:ns2="http://www.adcom.uci.edu"> <kfsAccountList> <kfsAcctNumber>FG11955</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </kfsAccountList> <kfsAccountList> <kfsAcctNumber>GF12646</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </kfsAccountList> <kfsAccountList> <effectiveDate>20120630</effectiveDate> <kfsAcctNumber>FG14577</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </kfsAccountList> <kfsAccountList> <kfsAcctNumber>UC00370</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </kfsAccountList> </ns2:isValidKFSExpenseAccounts> </S:Body> </S:Envelope>
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:isValidKFSExpenseAccountsResponse xmlns:ns2="http://www.adcom.uci.edu"> <return> <kfsAcctNumber>FG14577</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> <valid>false</valid> </return> <return> <kfsAcctNumber>FG11955</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> <valid>true</valid> </return> <return> <kfsAcctNumber>GF12646</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> <valid>true</valid> </return> <return> <kfsAcctNumber>UC00370</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> <valid>false</valid> </return> </ns2:isValidKFSExpenseAccountsResponse> </soap:Body> </soap:Envelope>
Java Client Example
DWHServerService service = new DWHServerService(); DWHServer server = service.getDWHServerPort(); List<AccountParameters> apList = new ArrayList<AccountParameters>(); AccountParameters ap = new AccountParameters(); ap.setKfsAcctNumber("FG11955"); ap.setKfsChartCode("IR"); apList.add(ap); AccountParameters ap2 = new AccountParameters(); ap2.setKfsAcctNumber("GF12646"); ap2.setKfsChartCode("IR"); apList.add(ap2); // account effective date 07/01/2012 AccountParameters ap3 = new AccountParameters(); ap3.setKfsAcctNumber("FG14577"); ap3.setKfsChartCode("IR"); ap3.setEffectiveDate("20120630"); apList.add(ap3); AccountParameters ap4 = new AccountParameters(); ap4.setKfsAcctNumber("UC00370"); ap4.setKfsChartCode("IR"); apList.add(ap4); List<AccountValidation> resultList = server.isValidKFSExpenseAccounts(apList); if (resultList != null) { for (AccountValidation av : resultList) { System.out.println("kfsChartCode : " + av.getKfsChartCode()); System.out.println("kfsAccountNumber : " + av.getKfsAcctNumber()); System.out.println("isValid : " + av.isValid()); System.out.println("--------------------------"); } } else { System.out.println("something bad happened...please check your query"); }
getValidKFSAccounts(List of (kfsChartCode, kfsAcctNumber))
This service is used retrieve valid KFS account and related attributes. Returns an XML result set with a list of accounts (example getAllValidKFSAccounts result).
Input Specifications
Index | Parameter | Description | Required? | Data Type (max length) | Example |
---|---|---|---|---|---|
0 | kfsChartCode | KFS Chart Code | Yes | String (2) | 'IR' |
1 | kfsAcctNumber | KFS Account Number | Yes | String (7) | '1234567' |
DB Query
SELECT a.FIN_COA_CD ,a.ACCOUNT_NBR ,a.ACCOUNT_NM ,a.ACCT_FSC_OFC_UID ,a.ACCT_SPVSR_UNVL_ID ,a.ACCT_MGR_UNVL_ID ,a.ORG_CD ,a.ACCT_TYP_CD ,a.ACCT_PHYS_CMP_CD ,a.SUB_FUND_GRP_CD ,a.ACCT_FRNG_BNFT_CD ,a.FIN_HGH_ED_FUNC_CD ,a.ACCT_RSTRC_STAT_CD ,a.ACCT_RSTRC_STAT_DT ,a.ACCT_CITY_NM ,a.ACCT_STATE_CD ,a.ACCT_STREET_ADDR ,a.ACCT_ZIP_CD ,a.RPTS_TO_FIN_COA_CD ,a.RPTS_TO_ACCT_NBR ,a.ACCT_CREATE_DT ,a.ACCT_EFFECT_DT ,a.ACCT_EXPIRATION_DT ,a.CONT_FIN_COA_CD ,a.CONT_ACCOUNT_NBR ,a.ENDOW_FIN_COA_CD ,a.ENDOW_ACCOUNT_NBR ,a.CONTR_CTRL_FCOA_CD ,a.CONTR_CTRLACCT_NBR ,a.INCOME_FIN_COA_CD ,a.INCOME_ACCOUNT_NBR ,a.ACCT_ICR_TYP_CD ,a.AC_CSTM_ICREXCL_CD ,a.FIN_SERIES_ID ,a.ICR_FIN_COA_CD ,a.ICR_ACCOUNT_NBR ,a.ACCT_IN_FP_CD ,a.BDGT_REC_LVL_CD ,a.ACCT_SF_CD ,a.ACCT_PND_SF_CD ,a.FIN_EXT_ENC_SF_CD ,a.FIN_INT_ENC_SF_CD ,a.FIN_PRE_ENC_SF_CD ,a.FIN_OBJ_PRSCTRL_CD ,a.CG_CFDA_NBR ,a.ACCT_OFF_CMP_IND ,a.ACCT_CLOSED_IND ,CG_ACCT_RESP_ID ,b.UC_LOC_CD ,b.UC_ACCT_NBR ,b.UC_FUND_NBR ,b.UCI_CAPITAL_CAT_CD e.UCINETID AS ACCT_FSC_OFC_UCINETID FROM ca_account_t a LEFT OUTER JOIN ca_account_ext_t b on (a.FIN_COA_CD = b.FIN_COA_CD and a.ACCOUNT_NBR = b.ACCOUNT_NBR) LEFT OUTER JOIN dwhs_ppscurr..employee_basic e on (a.ACCT_FSC_OFC_UID = e.CAMPUS_ID) WHERE a.ACCT_CLOSED_IND <> 'Y' AND (a.ACCT_EXPIRATION_DT >= getdate() or a.ACCT_EXPIRATION_DT IS NULL) AND a.ACCT_EFFECT_DT <= GETDATE() AND ((a.FIN_COA_CD='<kfsChartCode1>' AND ACCOUNT_NBR='<kfsAcctNumber1>') OR (a.FIN_COA_CD='<kfsChartCode2>' AND ACCOUNT_NBR='<kfsAcctNumber2>') OR . . . etc )
Result Schema: A list of following elements (AccountDetails.java)
DB Parameter | Java Parameter | Description | Data Type | Example |
---|---|---|---|---|
FIN_COA_CD | kfsChartCode | KFS Chart Code | String (2) | 'IR' |
ACCOUNT_NBR | kfsAcctNumber | KFS Account Number | String (7) | '1234567' |
ACCOUNT_NM | kfsAcctName | KFS Account Name | String (40) | |
ACCT_FSC_OFC_UID | kfsAcctFiscalOfficerId | KFS Account Fiscal Officer ID | String | |
ACCT_SPVSR_UNVL_ID | kfsAcctSupervisorId | KFS Account Supervisor ID | String | |
ACCT_MGR_UNVL_ID | kfsAcctManagerId | KFS Account Manager ID | String | |
ORG_CD | kfsOrgCode | KFS Organization Code | String | |
ACCT_TYP_CD | kfsAcctTypeCode | KFS Account Type Code | String | |
ACCT_PHYS_CMP_CD | kfsAcctCampusCode | KFS Account Campus Code | String | |
SUB_FUND_GRP_CD | kfsSubFundCode | KFS Sub Fund Group Code | String | |
ACCT_FRNG_BNFT_CD | kfsAcctFringeBenefitCode | KFS Account Fringe Benefit Code | String | |
FIN_HGH_ED_FUNC_CD | kfsHigherEduFundCode | KFS Higher Education Function Code | String | |
ACCT_RSTRC_STAT_CD | kfsAcctRestrictedCode | KFS Account Restricted Status Code | String | |
ACCT_RSTRC_STAT_DT | kfsAcctRestrictedDate | KFS Account Restricted Status Date | String | |
ACCT_CITY_NM | kfsAcctCity | KFS Account City Name | String | |
ACCT_STATE_CD | kfsAcctState | KFS Account State Code | String | |
ACCT_STREET_ADDR | kfsAcctAddress | KFS Account Street Address | String | |
ACCT_ZIP_CD | kfsAcctZip | KFS Account Zip Code | String | |
RPTS_TO_FIN_COA_CD | kfsReportToChartCode | KFS Reports To Chart Code | String | |
RPTS_TO_ACCT_NBR | kfsReportToAcctNumber | KFS Reports To Account Number | String | |
ACCT_CREATE_DT | kfsAcctCreateDate | KFS Account Create Date | String | |
ACCT_EFFECT_DT | kfsAcctEffectiveDate | KFS Account Effective Date | String | |
ACCT_EXPIRATION_DT | kfsAcctExpDate | KFS Account Expiration Date | String | |
CONT_FIN_COA_CD | kfsContChartCode | KFS Continuation Chart Code | String | |
CONT_ACCOUNT_NBR | kfsContAcctNumber | KFS Continuation Account Number | String | |
ENDOW_FIN_COA_CD | kfsEndowChartCode | KFS Endowment Chart Code | String | |
ENDOW_ACCOUNT_NBR | kfsEndowAcctNumber | KFS Endowment Account Number | String | |
CONTR_CTRL_FCOA_CD | kfsCandGChartCode | KFS C&G Control Chart Code | String | |
CONTR_CTRLACCT_NBR | kfsCandGAcctNumber | KFS C&G Control Account Number | String | |
INCOME_FIN_COA_CD | kfsIncomeChartCode | KFS Income Stream Chart Code | String | |
INCOME_ACCOUNT_NBR | kfsIncomeAcctNumber | KFS Income Stream Account Number | String | |
ACCT_ICR_TYP_CD | kfsICRTypeCode | KFS ICR Type Code | String | |
AC_CSTM_ICREXCL_CD | kfsCustomICRCode | KFS Custom ICR Code | String | |
FIN_SERIES_ID | kfsICRRateCode | KFS ICR Rate Code | String | |
ICR_FIN_COA_CD | kfsICRChartCode | KFS ICR Credit Chart Code | String | |
ICR_ACCOUNT_NBR | kfsICRAcctNumber | KFS ICR Credit Account Number | String | |
ACCT_IN_FP_CD | kfsTPSFCode | KFS Transaction Processing Sufficient Funds Check Code | String | |
BDGT_REC_LVL_CD | kfsBudgetLevelCode | KFS Budget Recording Level Code | String | |
ACCT_SF_CD | kfsAcctSFCode | KFS Account Sufficient Fund Check Code | String | |
ACCT_PND_SF_CD | kfsAcctPSFCode | KFS Account Pending Sufficient Fund Check Code | String | |
FIN_EXT_ENC_SF_CD | kfsEESFCode | KFS External Encumbrance Sufficient Fund Check Code | String | |
FIN_INT_ENC_SF_CD | kfsIESFCode | KFS Internal Encumbrance Sufficient Fund Check Code | String | |
FIN_PRE_ENC_SF_CD | kfsPESFCode | KFS Pre-Encumbrance Sufficient Fund Check Code | String | |
FIN_OBJ_PRSCTRL_CD | kfsObjPCCode | KFS Object Presence Control Code | String | |
CG_CFDA_NBR | kfsCGCFDANumber | KFS CG CFDA number | String | |
ACCT_OFF_CMP_IND | kfsAcctOffCampusCode | KFS Account Off Campus Indicator Code | String | |
ACCT_CLOSED_IND | kfsAcctClosedCode | KFS Account Closed Indicator Code | String | |
CG_ACCT_RESP_ID | kfsAcctRespId | KFS Account Responsibility ID | String | |
UC_LOC_CD | ucLocationCode | FS Location Code (legacy) | String(1) | |
UC_ACCT_NBR | ucAccountCode | FS Account Code (legacy) | String(6) | |
UC_FUND_NBR | ucFundCode | FS Fund Code (legacy) | String(5) | |
ACCT_FSC_OFC_UCINETID | kfsAcctFiscalOfficerUciNetId | KFS Account Fiscal Officer UCInetID | String |
WS Example
Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:adc="http://www.adcom.uci.edu"> <soapenv:Header/> <soapenv:Body> <adc:getValidKFSAccounts> <kfsAccountList> <kfsAcctNumber>1000766</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </kfsAccountList> <kfsAccountList> <kfsAcctNumber>1008543</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </kfsAccountList> <kfsAccountList> <kfsAcctNumber>1234</kfsAcctNumber> <kfsChartCode>XX</kfsChartCode> </kfsAccountList> <kfsAccountList> <kfsAcctNumber>1234576</kfsAcctNumber> <kfsChartCode>XX</kfsChartCode> </kfsAccountList> </adc:getValidKFSAccounts> </soapenv:Body> </soapenv:Envelope>
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:getValidKFSAccountsResponse xmlns:ns2="http://www.adcom.uci.edu"> <return> <kfsAcctAddress>Campus Dr</kfsAcctAddress> <kfsAcctCampusCode>IR</kfsAcctCampusCode> <kfsAcctCity>Irvine</kfsAcctCity> <kfsAcctClosedCode>N</kfsAcctClosedCode> <kfsAcctCreateDate>2012-09-05</kfsAcctCreateDate> <kfsAcctEffectiveDate>2011-07-01</kfsAcctEffectiveDate> <kfsAcctFiscalOfficerId>000000011111</kfsAcctFiscalOfficerId> <kfsAcctFiscalOfficerUciNetId></kfsAcctFiscalOfficerUciNetId> <kfsAcctFringeBenefitCode>Y</kfsAcctFringeBenefitCode> <kfsAcctManagerId>000000111111</kfsAcctManagerId> <kfsAcctName>INSTITUTIONAL/LATE CHARGE I 102168-03440</kfsAcctName> <kfsAcctNumber>1000766</kfsAcctNumber> <kfsAcctOffCampusCode>N</kfsAcctOffCampusCode> <kfsAcctPSFCode>N</kfsAcctPSFCode> <kfsAcctRestrictedCode>U</kfsAcctRestrictedCode> <kfsAcctSFCode>N</kfsAcctSFCode> <kfsAcctState>CA</kfsAcctState> <kfsAcctSupervisorId>000000111111</kfsAcctSupervisorId> <kfsAcctTypeCode>NA</kfsAcctTypeCode> <kfsAcctZip>92697</kfsAcctZip> <kfsBudgetLevelCode>C</kfsBudgetLevelCode> <kfsChartCode>IR</kfsChartCode> <kfsEESFCode>N</kfsEESFCode> <kfsHigherEduFundCode>NA</kfsHigherEduFundCode> <kfsIESFCode>N</kfsIESFCode> <kfsObjPCCode>N</kfsObjPCCode> <kfsOrgCode>8820</kfsOrgCode> <kfsPESFCode>N</kfsPESFCode> <kfsSubFundCode>SRC001</kfsSubFundCode> <kfsTPSFCode>Y</kfsTPSFCode> <ucAccountCode>102168</ucAccountCode> <ucFundCode>03440</ucFundCode> <ucLocationCode>9</ucLocationCode> </return> <return> <kfsAcctAddress>Campus Dr</kfsAcctAddress> <kfsAcctCampusCode>IR</kfsAcctCampusCode> <kfsAcctCity>Irvine</kfsAcctCity> <kfsAcctClosedCode>N</kfsAcctClosedCode> <kfsAcctCreateDate>2012-09-05</kfsAcctCreateDate> <kfsAcctEffectiveDate>2011-07-01</kfsAcctEffectiveDate> <kfsAcctFiscalOfficerId>0000000111111</kfsAcctFiscalOfficerId> <kfsAcctFiscalOfficerUciNetId>vcesario</kfsAcctFiscalOfficerUciNetId> <kfsAcctFringeBenefitCode>Y</kfsAcctFringeBenefitCode> <kfsAcctManagerId>000000247608</kfsAcctManagerId> <kfsAcctName>D/NSF DMS-1001006 YI J53.0 221602-21602</kfsAcctName> <kfsAcctNumber>1008543</kfsAcctNumber> <kfsAcctOffCampusCode>N</kfsAcctOffCampusCode> <kfsAcctPSFCode>N</kfsAcctPSFCode> <kfsAcctRestrictedCode>U</kfsAcctRestrictedCode> <kfsAcctSFCode>N</kfsAcctSFCode> <kfsAcctState>CA</kfsAcctState> <kfsAcctSupervisorId>000000089121</kfsAcctSupervisorId> <kfsAcctTypeCode>IN</kfsAcctTypeCode> <kfsAcctZip>92697</kfsAcctZip> <kfsBudgetLevelCode>C</kfsBudgetLevelCode> <kfsChartCode>IR</kfsChartCode> <kfsEESFCode>N</kfsEESFCode> <kfsHigherEduFundCode>NA</kfsHigherEduFundCode> <kfsIESFCode>N</kfsIESFCode> <kfsObjPCCode>N</kfsObjPCCode> <kfsOrgCode>6046</kfsOrgCode> <kfsPESFCode>N</kfsPESFCode> <kfsSubFundCode>SRC001</kfsSubFundCode> <kfsTPSFCode>Y</kfsTPSFCode> <ucAccountCode>221602</ucAccountCode> <ucFundCode>21602</ucFundCode> <ucLocationCode>9</ucLocationCode> </return> </ns2:getValidKFSAccountsResponse> </soap:Body> </soap:Envelope>
Java Client Example
DWHServerService dss = new DWHServerService(); DWHServer ds = dss.getDWHServerPort(); ArrayList<AccountParameters> pl3 = new ArrayList<AccountParameters>(); AccountParameters ap31 = new AccountParameters(); ap31.setKfsChartCode("IR"); ap31.setKfsAcctNumber("1000766"); AccountParameters ap32 = new AccountParameters(); ap32.setKfsChartCode("IR"); ap32.setKfsAcctNumber("1008543"); AccountParameters ap33 = new AccountParameters(); ap33.setKfsChartCode("XX"); ap33.setKfsAcctNumber("1234"); AccountParameters ap34 = new AccountParameters(); ap34.setKfsChartCode("XX"); ap34.setKfsAcctNumber("1234576"); pl3.add(ap31); pl3.add(ap32); pl3.add(ap33); pl3.add(ap34); List<AccountDetails> resultList5 = ds.getValidKFSAccounts(pl3); if (resultList5 != null) { for (Iterator i = resultList5.iterator(); i.hasNext();) { AccountDetails element = (AccountDetails) i.next(); System.out.println("\t" + element.getKfsChartCode() + "/" + element.getKfsAcctNumber() + " : " + element.getKfsAcctName()); } } else { System.out.println("something bad happened...please check your query"); }
getKFSChildAccounts(kfsChartCode, kfsOrgCode))
This service is used retrieve valid KFS account and related attributes for the given organization and organization children. Returns an XML result set with a list of account details.
Input Specifications
Index | Parameter | Description | Required? | Data Type (max length) | Example |
---|---|---|---|---|---|
0 | kfsChartCode | KFS Chart Code | Yes | String (2) | 'IR' |
1 | kfsAcctNumber | KFS Org Code | Yes | String (4) | '1234' |
DB Query
WITH ChildOrgList As ( SELECT ChildOrg.[CHART_CD], ChildOrg.[ORG_CD], ChildOrg.[ORG_PARENT_ORG_CD] FROM [dwhs_ods].[dbo].[kfs_d_org] as ChildOrg WHERE ChildOrg.CHART_CD = 'IR' and ChildOrg.ORG_CD = '9014' UNION ALL SELECT ChildOrg.[CHART_CD], ChildOrg.[ORG_CD], ChildOrg.[ORG_PARENT_ORG_CD] FROM [dwhs_ods].[dbo].[kfs_d_org] as ChildOrg INNER JOIN ChildOrgList as Child ON ChildOrg.[ORG_PARENT_ORG_CD] = Child.ORG_CD AND ChildOrg.[ORG_PARENT_CHART_CD] = Child.CHART_CD ) SELECT a.FIN_COA_CD, a.ACCOUNT_NBR, a.ACCOUNT_NM, a.ACCT_FSC_OFC_UID, a.ACCT_SPVSR_UNVL_ID, a.ACCT_MGR_UNVL_ID, a.ORG_CD, a.ACCT_TYP_CD, a.ACCT_PHYS_CMP_CD, a.SUB_FUND_GRP_CD, a.ACCT_FRNG_BNFT_CD, a.FIN_HGH_ED_FUNC_CD, a.ACCT_RSTRC_STAT_CD, a.ACCT_RSTRC_STAT_DT, a.ACCT_CITY_NM, a.ACCT_STATE_CD, a.ACCT_STREET_ADDR, a.ACCT_ZIP_CD, a.RPTS_TO_FIN_COA_CD, a.RPTS_TO_ACCT_NBR, a.ACCT_CREATE_DT, a.ACCT_EFFECT_DT, a.ACCT_EXPIRATION_DT, a.CONT_FIN_COA_CD, a.CONT_ACCOUNT_NBR, a.ENDOW_FIN_COA_CD, a.ENDOW_ACCOUNT_NBR, a.CONTR_CTRL_FCOA_CD, a.CONTR_CTRLACCT_NBR, a.INCOME_FIN_COA_CD, a.INCOME_ACCOUNT_NBR, a.ACCT_ICR_TYP_CD, a.AC_CSTM_ICREXCL_CD, a.FIN_SERIES_ID, a.ICR_FIN_COA_CD, a.ICR_ACCOUNT_NBR, a.ACCT_IN_FP_CD, a.BDGT_REC_LVL_CD, a.ACCT_SF_CD, a.ACCT_PND_SF_CD, a.FIN_EXT_ENC_SF_CD, a.FIN_INT_ENC_SF_CD, a.FIN_PRE_ENC_SF_CD, a.FIN_OBJ_PRSCTRL_CD, a.CG_CFDA_NBR, a.ACCT_OFF_CMP_IND, a.ACCT_CLOSED_IND, a.CG_ACCT_RESP_ID, e.UC_LOC_CD, e.UC_ACCT_NBR, e.UC_FUND_NBR, e.UCI_CAPITAL_CAT_CD, emp.UCINETID AS ACCT_FSC_OFC_UCINETID FROM CA_ACCOUNT_T a LEFT OUTER JOIN CA_ACCOUNT_EXT_T e on (a.FIN_COA_CD = e.FIN_COA_CD and a.ACCOUNT_NBR = e.ACCOUNT_NBR) LEFT OUTER JOIN dwhs_ppscurr..employee_basic emp on (a.ACCT_FSC_OFC_UID = emp.CAMPUS_ID) WHERE a.ACCT_CLOSED_IND <> 'Y' AND (a.ACCT_EXPIRATION_DT >= getdate() or a.ACCT_EXPIRATION_DT IS NULL) AND a.ACCT_EFFECT_DT <= GETDATE() AND EXISTS (select 1 from ChildOrgList o WHERE o.CHART_CD = a.FIN_COA_CD and o.org_cd = a.ORG_CD)
Result Schema: A list of following elements (AccountDetails.java)
DB Parameter | Java Parameter | Description | Data Type | Example |
---|---|---|---|---|
ORG_COA_CD | kfsOrgChart | KFS Chart Code (the chart that the org belongs to) | String(2) | 'IR' |
ORG_CD | kfsOrgCode | KFS Organization Code (the org the account belongs to) | String(4) | '1234' |
FIN_COA_CD | kfsChartCode | KFS Chart Code (the chart that the account belongs to) | String (2) | 'IR' |
ACCOUNT_NBR | kfsAcctNumber | KFS Account Number | String (7) | '1234567' |
ACCOUNT_NM | kfsAcctName | KFS Account Name | String (40) | |
ACCT_FSC_OFC_UID | kfsAcctFiscalOfficerId | KFS Account Fiscal Officer ID | String | |
ACCT_SPVSR_UNVL_ID | kfsAcctSupervisorId | KFS Account Supervisor ID | String | |
ACCT_MGR_UNVL_ID | kfsAcctManagerId | KFS Account Manager ID | String | |
ORG_CD | kfsOrgCode | KFS Organization Code | String | |
ACCT_TYP_CD | kfsAcctTypeCode | KFS Account Type Code | String | |
ACCT_PHYS_CMP_CD | kfsAcctCampusCode | KFS Account Campus Code | String | |
SUB_FUND_GRP_CD | kfsSubFundCode | KFS Sub Fund Group Code | String | |
ACCT_FRNG_BNFT_CD | kfsAcctFringeBenefitCode | KFS Account Fringe Benefit Code | String | |
FIN_HGH_ED_FUNC_CD | kfsHigherEduFundCode | KFS Higher Education Function Code | String | |
ACCT_RSTRC_STAT_CD | kfsAcctRestrictedCode | KFS Account Restricted Status Code | String | |
ACCT_RSTRC_STAT_DT | kfsAcctRestrictedDate | KFS Account Restricted Status Date | String | |
ACCT_CITY_NM | kfsAcctCity | KFS Account City Name | String | |
ACCT_STATE_CD | kfsAcctState | KFS Account State Code | String | |
ACCT_STREET_ADDR | kfsAcctAddress | KFS Account Street Address | String | |
ACCT_ZIP_CD | kfsAcctZip | KFS Account Zip Code | String | |
RPTS_TO_FIN_COA_CD | kfsReportToChartCode | KFS Reports To Chart Code | String | |
RPTS_TO_ACCT_NBR | kfsReportToAcctNumber | KFS Reports To Account Number | String | |
ACCT_CREATE_DT | kfsAcctCreateDate | KFS Account Create Date | String | |
ACCT_EFFECT_DT | kfsAcctEffectiveDate | KFS Account Effective Date | String | |
ACCT_EXPIRATION_DT | kfsAcctExpDate | KFS Account Expiration Date | String | |
CONT_FIN_COA_CD | kfsContChartCode | KFS Continuation Chart Code | String | |
CONT_ACCOUNT_NBR | kfsContAcctNumber | KFS Continuation Account Number | String | |
ENDOW_FIN_COA_CD | kfsEndowChartCode | KFS Endowment Chart Code | String | |
ENDOW_ACCOUNT_NBR | kfsEndowAcctNumber | KFS Endowment Account Number | String | |
CONTR_CTRL_FCOA_CD | kfsCandGChartCode | KFS C&G Control Chart Code | String | |
CONTR_CTRLACCT_NBR | kfsCandGAcctNumber | KFS C&G Control Account Number | String | |
INCOME_FIN_COA_CD | kfsIncomeChartCode | KFS Income Stream Chart Code | String | |
INCOME_ACCOUNT_NBR | kfsIncomeAcctNumber | KFS Income Stream Account Number | String | |
ACCT_ICR_TYP_CD | kfsICRTypeCode | KFS ICR Type Code | String | |
AC_CSTM_ICREXCL_CD | kfsCustomICRCode | KFS Custom ICR Code | String | |
FIN_SERIES_ID | kfsICRRateCode | KFS ICR Rate Code | String | |
ICR_FIN_COA_CD | kfsICRChartCode | KFS ICR Credit Chart Code | String | |
ICR_ACCOUNT_NBR | kfsICRAcctNumber | KFS ICR Credit Account Number | String | |
ACCT_IN_FP_CD | kfsTPSFCode | KFS Transaction Processing Sufficient Funds Check Code | String | |
BDGT_REC_LVL_CD | kfsBudgetLevelCode | KFS Budget Recording Level Code | String | |
ACCT_SF_CD | kfsAcctSFCode | KFS Account Sufficient Fund Check Code | String | |
ACCT_PND_SF_CD | kfsAcctPSFCode | KFS Account Pending Sufficient Fund Check Code | String | |
FIN_EXT_ENC_SF_CD | kfsEESFCode | KFS External Encumbrance Sufficient Fund Check Code | String | |
FIN_INT_ENC_SF_CD | kfsIESFCode | KFS Internal Encumbrance Sufficient Fund Check Code | String | |
FIN_PRE_ENC_SF_CD | kfsPESFCode | KFS Pre-Encumbrance Sufficient Fund Check Code | String | |
FIN_OBJ_PRSCTRL_CD | kfsObjPCCode | KFS Object Presence Control Code | String | |
CG_CFDA_NBR | kfsCGCFDANumber | KFS CG CFDA number | String | |
ACCT_OFF_CMP_IND | kfsAcctOffCampusCode | KFS Account Off Campus Indicator Code | String | |
ACCT_CLOSED_IND | kfsAcctClosedCode | KFS Account Closed Indicator Code | String | |
CG_ACCT_RESP_ID | kfsAcctRespId | KFS Account Responsibility ID | String | |
UC_LOC_CD | ucLocationCode | FS Location Code (legacy) | String(1) | |
UC_ACCT_NBR | ucAccountCode | FS Account Code (legacy) | String(6) | |
UC_FUND_NBR | ucFundCode | FS Fund Code (legacy) | String(5) | |
ACCT_FSC_OFC_UID | kfsAcctFiscalOfficerUciNetId | KFS Account Fiscal Officer UCInetID | String |
WS Example
Request
<?xml version="1.0" ?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:getKFSChildAccounts xmlns:ns2="http://www.adcom.uci.edu"> <kfsOrganization> <kfsChartCode>IR</kfsChartCode> <kfsOrgCode>9014</kfsOrgCode> </kfsOrganization> </ns2:getKFSChildAccounts> </S:Body> </S:Envelope>
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:getKFSChildAccountsResponse xmlns:ns2="http://www.adcom.uci.edu"> <return> <kfsAcctAddress>Campus Dr</kfsAcctAddress> <kfsAcctCampusCode>IR</kfsAcctCampusCode> <kfsAcctCity>Irvine</kfsAcctCity> <kfsAcctClosedCode>N</kfsAcctClosedCode> <kfsAcctFiscalOfficerId>000000060345</kfsAcctFiscalOfficerId> <kfsAcctFiscalOfficerId>000000060345</kfsAcctFiscalOfficerId> <kfsAcctFringeBenefitCode>Y</kfsAcctFringeBenefitCode> <kfsAcctManagerId>000000247608</kfsAcctManagerId> <kfsAcctName>ACADEMIC COMPUTING 407618-19900</kfsAcctName> <kfsAcctNumber>GF10074</kfsAcctNumber> <kfsAcctOffCampusCode>N</kfsAcctOffCampusCode> <kfsAcctPSFCode>N</kfsAcctPSFCode> <kfsAcctRestrictedCode>G</kfsAcctRestrictedCode> <kfsAcctSFCode>N</kfsAcctSFCode> <kfsAcctState>CA</kfsAcctState> <kfsAcctSupervisorId>000000089121</kfsAcctSupervisorId> <kfsAcctTypeCode>CF</kfsAcctTypeCode> <kfsAcctZip>92697</kfsAcctZip> <kfsBudgetLevelCode>C</kfsBudgetLevelCode> <kfsCandGAcctNumber>UC19900</kfsCandGAcctNumber> <kfsCandGChartCode>IR</kfsCandGChartCode> <kfsChartCode>IR</kfsChartCode> <kfsEESFCode>N</kfsEESFCode> <kfsHigherEduFundCode>NA</kfsHigherEduFundCode> <kfsIESFCode>N</kfsIESFCode> <kfsObjPCCode>N</kfsObjPCCode> <kfsOrgCode>8075</kfsOrgCode> <kfsPESFCode>N</kfsPESFCode> <kfsReportToAcctNumber>UC99999</kfsReportToAcctNumber> <kfsReportToChartCode>IR</kfsReportToChartCode> <kfsSubFundCode>401000</kfsSubFundCode> <kfsTPSFCode>Y</kfsTPSFCode> <ucAccountCode>407618</ucAccountCode> <ucFundCode>19900</ucFundCode> <ucLocationCode>9</ucLocationCode> </return> <return> <kfsAcctAddress>Campus Dr</kfsAcctAddress> <kfsAcctCampusCode>IR</kfsAcctCampusCode> <kfsAcctCity>Irvine</kfsAcctCity> <kfsAcctClosedCode>N</kfsAcctClosedCode> <kfsAcctFiscalOfficerId>000000060345</kfsAcctFiscalOfficerId> <kfsAcctFiscalOfficerId>000000060345</kfsAcctFiscalOfficerId> <kfsAcctFringeBenefitCode>Y</kfsAcctFringeBenefitCode> <kfsAcctManagerId>000000247608</kfsAcctManagerId> <kfsAcctName>OAC-ECS INSTRUCTIONAL TECHN 407620-19900</kfsAcctName> <kfsAcctNumber>GF10115</kfsAcctNumber> <kfsAcctOffCampusCode>N</kfsAcctOffCampusCode> <kfsAcctPSFCode>N</kfsAcctPSFCode> <kfsAcctRestrictedCode>G</kfsAcctRestrictedCode> <kfsAcctSFCode>N</kfsAcctSFCode> <kfsAcctState>CA</kfsAcctState> <kfsAcctSupervisorId>000000089121</kfsAcctSupervisorId> <kfsAcctTypeCode>CF</kfsAcctTypeCode> <kfsAcctZip>92697</kfsAcctZip> <kfsBudgetLevelCode>C</kfsBudgetLevelCode> <kfsCandGAcctNumber>UC19900</kfsCandGAcctNumber> <kfsCandGChartCode>IR</kfsCandGChartCode> <kfsChartCode>IR</kfsChartCode> <kfsEESFCode>N</kfsEESFCode> <kfsHigherEduFundCode>NA</kfsHigherEduFundCode> <kfsIESFCode>N</kfsIESFCode> <kfsObjPCCode>N</kfsObjPCCode> <kfsOrgCode>8242</kfsOrgCode> <kfsPESFCode>N</kfsPESFCode> <kfsReportToAcctNumber>UC99999</kfsReportToAcctNumber> <kfsReportToChartCode>IR</kfsReportToChartCode> <kfsSubFundCode>401000</kfsSubFundCode> <kfsTPSFCode>Y</kfsTPSFCode> <ucAccountCode>407620</ucAccountCode> <ucFundCode>19900</ucFundCode> <ucLocationCode>9</ucLocationCode> </return> ... </ns2:getKFSChildAccountsResponse> </soap:Body> </soap:Envelope>
Java Client Example
ObjectFactory objectFactory = new ObjectFactory(); DWHServerService service = new DWHServerService(); DWHServer server = service.getDWHServerPort(); OrganizationParameters orgParameters = objectFactory.createOrganizationParameters(); orgParameters.setKfsChartCode("IR"); orgParameters.setKfsOrgCode("9014"); //OIT List<AccountDetails> accountDetailList = server.getKFSChildAccounts(orgParameters); if (accountDetailList != null) { for (AccountDetails accountDetails : accountDetailList) { System.out.println("kfsChartCode: " + accountDetails.getKfsChartCode()); System.out.println("kfsAccount: " + accountDetails.getKfsAcctNumber()); System.out.println("kfsAccountName: " + accountDetails.getKfsAcctName()); System.out.println("kfsOrgCode: " + accountDetails.getKfsOrgCode()); System.out.println("------------------------------"); } } else { System.out.println("something bad happened...please check your query"); }
getAllKFSAccounts()
No input parameter, ALL active KFS account details will be returned in result set.
USE WITH CAUTION since it may be returned a huge list of objects that consumes huge size of memory.
The best practice is using getAllKFSAccountsPK() and getValidKFSAccount() combined when you experience slowness or out-of-memory issues.
Please see example in getAllKFSAccountsPK() section.
DB Query
SELECT a.FIN_COA_CD ,a.ACCOUNT_NBR ,a.ACCOUNT_NM ,a.ACCT_FSC_OFC_UID ,a.ACCT_SPVSR_UNVL_ID ,a.ACCT_MGR_UNVL_ID ,a.ORG_CD ,a.ACCT_TYP_CD ,a.ACCT_PHYS_CMP_CD ,a.SUB_FUND_GRP_CD ,a.ACCT_FRNG_BNFT_CD ,a.FIN_HGH_ED_FUNC_CD ,a.ACCT_RSTRC_STAT_CD ,a.ACCT_RSTRC_STAT_DT ,a.ACCT_CITY_NM ,a.ACCT_STATE_CD ,a.ACCT_STREET_ADDR ,a.ACCT_ZIP_CD ,a.RPTS_TO_FIN_COA_CD ,a.RPTS_TO_ACCT_NBR ,a.ACCT_CREATE_DT ,a.ACCT_EFFECT_DT ,a.ACCT_EXPIRATION_DT ,a.CONT_FIN_COA_CD ,a.CONT_ACCOUNT_NBR ,a.ENDOW_FIN_COA_CD ,a.ENDOW_ACCOUNT_NBR ,a.CONTR_CTRL_FCOA_CD ,a.CONTR_CTRLACCT_NBR ,a.INCOME_FIN_COA_CD ,a.INCOME_ACCOUNT_NBR ,a.ACCT_ICR_TYP_CD ,a.AC_CSTM_ICREXCL_CD ,a.FIN_SERIES_ID ,a.ICR_FIN_COA_CD ,a.ICR_ACCOUNT_NBR ,a.ACCT_IN_FP_CD ,a.BDGT_REC_LVL_CD ,a.ACCT_SF_CD ,a.ACCT_PND_SF_CD ,a.FIN_EXT_ENC_SF_CD ,a.FIN_INT_ENC_SF_CD ,a.FIN_PRE_ENC_SF_CD ,a.FIN_OBJ_PRSCTRL_CD ,a.CG_CFDA_NBR ,a.ACCT_OFF_CMP_IND ,a.ACCT_CLOSED_IND ,CG_ACCT_RESP_ID ,b.UC_LOC_CD ,b.UC_ACCT_NBR ,b.UC_FUND_NBR ,b.UCI_CAPITAL_CAT_CD FROM ca_account_t a LEFT OUTER JOIN ca_account_ext_t b on (a.FIN_COA_CD = b.FIN_COA_CD and a.ACCOUNT_NBR = b.ACCOUNT_NBR) WHERE a.ACCT_CLOSED_IND <> 'Y' AND (a.ACCT_EXPIRATION_DT >= getdate() or a.ACCT_EXPIRATION_DT IS NULL) AND (a.ACCT_EFFECT_DT <= GETDATE())
Result Schema: SAME as getValidKFSAccounts
WS Example
Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:adc="http://www.adcom.uci.edu"> <soapenv:Header/> <soapenv:Body> <adc:getAllKFSAccounts/> </soapenv:Body> </soapenv:Envelope>
Response (See getValidKFSAccounts)
Java Client Example
DWHServerService dss = new DWHServerService(); DWHServer ds = dss.getDWHServerPort(); List<AccountDetails> resultList5 = ds.getAllKFSAccounts(); if (resultList5 != null) { //for (Iterator i = resultList5.iterator(); i.hasNext();) { // AccountDetails element = (AccountDetails)i.next(); // System.out.println("Result List key: " + element.toString()); //} System.out.println("total size: " + resultList5.size()); System.out.println("the 1st item ChartCode / AcctNumber: " + (AccountDetails)resultList5.get(0)).getKfsChartCode() + " / " + ((AccountDetails)resultList5.get(0)).getKfsAcctNumber()); } else { System.out.println("something bad happened...please check your query"); }
getAllKFSAccountsPK()
No input parameter, ALL active KFS account with chart code and account number only will be returned in result set.
DB Query
SELECT a.FIN_COA_CD,a.ACCOUNT_NBR FROM ca_account_t a LEFT OUTER JOIN ca_account_ext_t b on (a.FIN_COA_CD = b.FIN_COA_CD and a.ACCOUNT_NBR = b.ACCOUNT_NBR) WHERE a.ACCT_CLOSED_IND <> 'Y' AND (a.ACCT_EXPIRATION_DT >= getdate() or a.ACCT_EXPIRATION_DT IS NULL) AND (a.ACCT_EFFECT_DT <= GETDATE())
Result Schema: SAME as getValidKFSAccounts
WS Example
Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:adc="http://www.adcom.uci.edu"> <soapenv:Header/> <soapenv:Body> <adc:getAllKFSAccountsPK/> </soapenv:Body> </soapenv:Envelope>
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:getAllKFSAccountsPKResponse xmlns:ns2="http://www.adcom.uci.edu"> <return> <kfsAcctNumber>1067496</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </return> <return> <kfsAcctNumber>1067497</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </return> <return> <kfsAcctNumber>1067498</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </return> ... ... </ns2:getAllKFSAccountsPKResponse> </soap:Body> </soap:Envelope>
Java Client Example
long start7 = System.currentTimeMillis(); System.out.println("\nWSClient--getAllKFSAccountsPK(), starting time: " + start7); // get all the accounts primary key List<AccountDetails> resultList7 = ds.getAllKFSAccountsPK(); if (resultList7 != null) { System.out.println("PK-total size: " + resultList7.size()); System.out.println("PK-the 1st item ChartCode / AcctNumber: " + ((AccountDetails) resultList7.get(0)).getKfsChartCode() + " / " + ((AccountDetails) resultList7.get(0)).getKfsAcctNumber()); ArrayList<AccountParameters> pl70 = new ArrayList<AccountParameters>(); long start71 = System.currentTimeMillis(); // get details for each KFSAccount in a chunk of 1000 for (int i = 0; i < resultList7.size(); i++) { // single record detail if (i != 0 && i % 1000 == 0) { start71 = System.currentTimeMillis(); List<AccountDetails> resultList70 = ds.getValidKFSAccounts(pl70); System.out.println(i); System.out.println("PK-elapsed after " + i + " item time (sec): " + (System.currentTimeMillis() - start71) / 1000F); // do whatever with the 1000 records in resultList70 System.out.println("result size: " + resultList70.size()); System.out.println("1st item details, acctname: " + resultList70.get(0).getKfsAcctName() + ", addr: " + resultList70.get(0).getKfsAcctAddress()); // once hit multiple of 1000, reset argument list pl70.clear(); } else { // building arguments list for getValidKFSAccounts() AccountParameters ap70 = new AccountParameters(); ap70.setKfsChartCode(resultList7.get(i).getKfsChartCode()); ap70.setKfsAcctNumber(resultList7.get(i).getKfsAcctNumber()); pl70.add(ap70); } } System.out.println("PK-elapsed time (sec): " + (System.currentTimeMillis() - start7) / 1000F); } else { System.out.println("something bad happened...please check your query"); }
getKFSAccountsByManager()
This service is used retrieve valid KFS account by the account manager uciNetId. Returns an XML result set with a list of accounts.
Input Specifications
Index | Parameter | Description | Required? | Data Type (max length) | Example |
---|---|---|---|---|---|
0 | managerUciNetId | Account Manager Uci Net Id | Yes | String | test |
DB Query
SELECT a.FIN_COA_CD ,a.ACCOUNT_NBR ,a.ACCOUNT_NM ,a.ACCT_FSC_OFC_UID ,a.ACCT_SPVSR_UNVL_ID ,a.ACCT_MGR_UNVL_ID ,a.ORG_CD ,a.ACCT_TYP_CD ,a.ACCT_PHYS_CMP_CD ,a.SUB_FUND_GRP_CD ,a.ACCT_FRNG_BNFT_CD ,a.FIN_HGH_ED_FUNC_CD ,a.ACCT_RSTRC_STAT_CD ,a.ACCT_RSTRC_STAT_DT ,a.ACCT_CITY_NM ,a.ACCT_STATE_CD ,a.ACCT_STREET_ADDR ,a.ACCT_ZIP_CD ,a.RPTS_TO_FIN_COA_CD ,a.RPTS_TO_ACCT_NBR ,a.ACCT_CREATE_DT ,a.ACCT_EFFECT_DT ,a.ACCT_EXPIRATION_DT ,a.CONT_FIN_COA_CD ,a.CONT_ACCOUNT_NBR ,a.ENDOW_FIN_COA_CD ,a.ENDOW_ACCOUNT_NBR ,a.CONTR_CTRL_FCOA_CD ,a.CONTR_CTRLACCT_NBR ,a.INCOME_FIN_COA_CD ,a.INCOME_ACCOUNT_NBR ,a.ACCT_ICR_TYP_CD ,a.AC_CSTM_ICREXCL_CD ,a.FIN_SERIES_ID ,a.ICR_FIN_COA_CD ,a.ICR_ACCOUNT_NBR ,a.ACCT_IN_FP_CD ,a.BDGT_REC_LVL_CD ,a.ACCT_SF_CD ,a.ACCT_PND_SF_CD ,a.FIN_EXT_ENC_SF_CD ,a.FIN_INT_ENC_SF_CD ,a.FIN_PRE_ENC_SF_CD ,a.FIN_OBJ_PRSCTRL_CD ,a.CG_CFDA_NBR ,a.ACCT_OFF_CMP_IND ,a.ACCT_CLOSED_IND ,CONVERT(VARCHAR(2), a.CG_ACCT_RESP_ID) AS CG_ACCT_RESP_ID ,b.UC_LOC_CD ,b.UC_ACCT_NBR ,b.UC_FUND_NBR ,b.UCI_CAPITAL_CAT_CD ,e.UCINETID AS ACCT_FSC_OFC_UCINETID FROM ca_account_t a LEFT JOIN ca_account_ext_t b ON ( a.FIN_COA_CD = b.FIN_COA_CD AND a.ACCOUNT_NBR = b.ACCOUNT_NBR ) INNER JOIN dwhs_ppscurr..employee_basic e ON (a.ACCT_FSC_OFC_UID = e.CAMPUS_ID) WHERE a.ACCT_CLOSED_IND <> 'Y' AND ( a.ACCT_EXPIRATION_DT >= getdate() OR a.ACCT_EXPIRATION_DT IS NULL ) AND (a.ACCT_EFFECT_DT <= GETDATE()) AND e.ucinetid = 'test' );
Result Schema: SAME as getdKFSAccounts
WS Example
Request
<?xml version="1.0" ?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:getKFSAccountsByManager xmlns:ns2="http://www.adcom.uci.edu"> <managerUciNetId>test</managerUciNetId> </ns2:getKFSAccountsByManager> </S:Body> </S:Envelope>
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:getKFSAccountsByManagerResponse xmlns:ns2="http://www.adcom.uci.edu"> <return> <kfsAcctAddress>Campus Dr</kfsAcctAddress> <kfsAcctCampusCode>IR</kfsAcctCampusCode> <kfsAcctCity>Irvine</kfsAcctCity> <kfsAcctClosedCode>N</kfsAcctClosedCode> <kfsAcctFiscalOfficerId>000000011111</kfsAcctFiscalOfficerId> <kfsAcctFiscalOfficerUciNetId>test</kfsAcctFiscalOfficerUciNetId> <kfsAcctFringeBenefitCode>Y</kfsAcctFringeBenefitCode> <kfsAcctManagerId>000000011111</kfsAcctManagerId> <kfsAcctName>40112 Test Acct Name</kfsAcctName> <kfsAcctNumber>GF12345</kfsAcctNumber> <kfsAcctOffCampusCode>N</kfsAcctOffCampusCode> <kfsAcctPSFCode>N</kfsAcctPSFCode> <kfsAcctRestrictedCode>U</kfsAcctRestrictedCode> <kfsAcctSFCode>N</kfsAcctSFCode> <kfsAcctState>CA</kfsAcctState> <kfsAcctSupervisorId>000000011111</kfsAcctSupervisorId> <kfsAcctTypeCode>CF</kfsAcctTypeCode> <kfsAcctZip>92611</kfsAcctZip> <kfsBudgetLevelCode>C</kfsBudgetLevelCode> <kfsCandGAcctNumber>UC19900</kfsCandGAcctNumber> <kfsCandGChartCode>IR</kfsCandGChartCode> <kfsChartCode>IR</kfsChartCode> <kfsEESFCode>N</kfsEESFCode> <kfsHigherEduFundCode>TEST</kfsHigherEduFundCode> <kfsIESFCode>N</kfsIESFCode> <kfsObjPCCode>N</kfsObjPCCode> <kfsOrgCode>8542</kfsOrgCode> <kfsPESFCode>N</kfsPESFCode> <kfsSubFundCode>401000</kfsSubFundCode> <kfsTPSFCode>Y</kfsTPSFCode> <ucAccountCode>407680</ucAccountCode> <ucFundCode>19900</ucFundCode> <ucLocationCode>9</ucLocationCode> </return> </ns2:getKFSAccountsByManagerResponse> </soap:Body> </soap:Envelope>
Java Client Example
DWHServerService service = new DWHServerService(); DWHServer server = service.getDWHServerPort(); List<AccountDetails> resultList = server.getKFSAccountsByManager("test"); if (resultList != null) { for (AccountDetails ad : resultList) { System.out.println("kfsChartCode : " + ad.getKfsChartCode()); System.out.println("kfsAccountNumber : " + ad.getKfsAcctNumber()); System.out.println("fiscalOfficerUciNetId : " + ad.getKfsAcctFiscalOfficerUciNetId()); System.out.println("--------------------------"); } } else { System.out.println("something bad happened...please check your query"); }
translateFSAccountFunds(List of (fsLocationCode, fsAccountCode, fsFundCode))
This service is used to translate legacy FS accounts to KFS account codes. Returns an XML result set with a KFS chart/account (example isValidKFSAccounts result) for each FS location/account
Input Specifications
Index | Parameter | Description | Required? | Data Type (max length) |
---|---|---|---|---|
0 | fsLocationCode | The FS location code | Yes | String (2) |
1 | fsAccountCode | The FS accounts code | Yes | String (6) |
2 | fsFundCode | The FS fund code | Yes | String (5) |
DB Query
SELECT UC_LOC_CD, UC_ACCT_NBR, UC_FUND_NBR, FIN_COA_CD, ACCOUNT_NBR FROM UCI_CA_ACCOUNT_XW_T WHERE ACTIVE_IND <> 'N' AND ((UC_LOC_CD='9' AND UC_ACCT_NBR='400753' AND UC_FUND_NBR='19933') OR (UC_LOC_CD='9' AND UC_ACCT_NBR='400755' AND UC_FUND_NBR='19900')) UNION SELECT DISTINCT ae.UC_LOC_CD, '-----', ae.UC_FUND_NBR, ae.FIN_COA_CD, ae.ACCOUNT_NBR FROM CA_ACCOUNT_T a LEFT OUTER JOIN CA_ACCOUNT_EXT_T ae on (a.ACCOUNT_NBR = ae.ACCOUNT_NBR AND a.FIN_COA_CD = ae.FIN_COA_CD) WHERE a.ACCT_CLOSED_IND <> 'Y' AND (a.ACCT_EXPIRATION_DT >= getdate() OR a.ACCT_EXPIRATION_DT IS NULL) AND a.ACCT_EFFECT_DT <= GETDATE() AND a.ACCT_TYP_CD = 'CA' AND ((ae.UC_LOC_CD='9' AND ae.UC_FUND_NBR='70003') OR (ae.UC_LOC_CD='9' AND ae.UC_FUND_NBR='70000'))
Result Schema: A list of following elements (FS2KFSAccountDetails.java)
Parameter | Description | Data Type | Example |
---|---|---|---|
fsLocationCode | The FS location code | String (2) | 9 |
fsAccountCode | The FS accounts code | String (6) | 270010 |
fsFundCode | The FS fund code | String (5) | 70000 |
kfsChartCode | KFS Chart Code | String (2) | IR |
kfsAcctNumber | KFS Account Number | String (7) | UC70000 |
WS Example
Request
<?xml version="1.0" ?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:translateFSAccountFunds xmlns:ns2="http://www.adcom.uci.edu"> <fsAccountList> <fsAccountCode>400753</fsAccountCode> <fsFundCode>19933</fsFundCode> <fsLocationCode>9</fsLocationCode> </fsAccountList> <fsAccountList> <fsAccountCode>400755</fsAccountCode> <fsFundCode>19900</fsFundCode> <fsLocationCode>9</fsLocationCode> </fsAccountList> <fsAccountList> <fsAccountCode>270303</fsAccountCode> <fsFundCode>70003</fsFundCode> <fsLocationCode>9</fsLocationCode> </fsAccountList> <fsAccountList> <fsAccountCode>270010</fsAccountCode> <fsFundCode>70000</fsFundCode> <fsLocationCode>9</fsLocationCode> </fsAccountList> </ns2:translateFSAccountFunds> </S:Body> </S:Envelope>
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:translateFSAccountFundsResponse xmlns:ns2="http://www.adcom.uci.edu"> <return> <fsAccountCode>270010</fsAccountCode> <fsFundCode>70000</fsFundCode> <fsLocationCode>9</fsLocationCode> <kfsAcctNumber>UC70000</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </return> <return> <fsAccountCode>270303</fsAccountCode> <fsFundCode>70003</fsFundCode> <fsLocationCode>9</fsLocationCode> <kfsAcctNumber>UC70003</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </return> <return> <fsAccountCode>400753</fsAccountCode> <fsFundCode>19933</fsFundCode> <fsLocationCode>9</fsLocationCode> <kfsAcctNumber>GF10414</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </return> <return> <fsAccountCode>400755</fsAccountCode> <fsFundCode>19900</fsFundCode> <fsLocationCode>9</fsLocationCode> <kfsAcctNumber>GF10420</kfsAcctNumber> <kfsChartCode>IR</kfsChartCode> </return> </ns2:translateFSAccountFundsResponse> </soap:Body> </soap:Envelope>
Java Client Example
DWHServerService service = new DWHServerService(); DWHServer server = service.getDWHServerPort(); ArrayList<AccountTranslateParameters> paramList = new ArrayList<AccountTranslateParameters>(); AccountTranslateParameters atp1 = new AccountTranslateParameters(); atp1.setFsLocationCode("9"); atp1.setFsAccountCode("400753"); atp1.setFsFundCode("19933"); paramList.add(atp1); AccountTranslateParameters atp2 = new AccountTranslateParameters(); atp2.setFsLocationCode("9"); atp2.setFsAccountCode("400755"); atp2.setFsFundCode("19900"); paramList.add(atp2); AccountTranslateParameters atp3 = new AccountTranslateParameters(); atp3.setFsLocationCode("9"); atp3.setFsAccountCode("270303"); atp3.setFsFundCode("70003"); paramList.add(atp3); AccountTranslateParameters atp4 = new AccountTranslateParameters(); atp4.setFsLocationCode("9"); atp4.setFsAccountCode("270010"); atp4.setFsFundCode("70000"); paramList.add(atp4); List<Fs2KFSAccountDetails> resultList = server.translateFSAccountFunds(paramList); if (resultList != null) { for (Fs2KFSAccountDetails fad : resultList) { System.out.println("kfsChartCode : " + fad.getKfsChartCode()); System.out.println("kfsAccountNumber : " + fad.getKfsAcctNumber()); System.out.println("fsLocationCode : " + fad.getFsLocationCode()); System.out.println("fsAccountCode : " + fad.getFsAccountCode()); System.out.println("fsFundCode : " + fad.getFsFundCode()); System.out.println("------------------------------"); } } else { System.out.println("something bad happened...please check your query"); }
translateFSAccountToKFSObject(List of (fsLocationCode, fsAccountCode, kfsChartCode, kfsFiscalYear))
This service is used to translate legacy FS balance sheet and income accounts to KFS object codes.
Input Specifications
Index | Parameter | Description | Required? | Data Type (max length) |
---|---|---|---|---|
0 | fsLocationCode | The FS location code | Yes | String (2) |
1 | fsAccountCode | The FS accounts code | Yes | String (6) |
2 | kfsChartCode | The KFS chart code | Yes | String (2) |
3 | kfsFiscalYear | The KFS fiscal year | Yes | String (4) |
DB Query
SELECT UC_LOC_CD, UC_SUB_CD, UC_OBJECT_CD, UC_ACCT_NBR, CONVERT(varchar(4), UNIV_FISCAL_YR) AS UNIV_FISCAL_YR, FIN_COA_CD, FIN_OBJECT_CD FROM UCI_CA_OBJECT_CODE_XW_T WHERE ACTIVE_IND <> 'N' AND ( (UC_LOC_CD='9' AND UC_ACCT_NBR='119850' and UNIV_FISCAL_YR = '2013' AND FIN_COA_CD = 'IR') OR (UC_LOC_CD='9' AND UC_ACCT_NBR='115181' and UNIV_FISCAL_YR = '2013' AND FIN_COA_CD = 'IR') OR (UC_LOC_CD='9' AND UC_ACCT_NBR='101193' and UNIV_FISCAL_YR = '2013' AND FIN_COA_CD = 'IR') OR (UC_LOC_CD='9' AND UC_ACCT_NBR='229344' and UNIV_FISCAL_YR = '2013' AND FIN_COA_CD = 'IR') );
Result Schema: A list of following elements (FS2KFSAccountDetails.java)
Parameter | Description | Data Type | Example |
---|---|---|---|
fsLocationCode | The FS location code | String (2) | 9 |
fsSubCode | The FS Sub code | String(2) | 9H |
fsObjCode | The FS Object Code | String(4) | 3879 |
fsAccountCode | The FS accounts code | String (6) | 112756 |
kfsFiscalYear | The KFS Fiscal Year | String (4) | 2013 |
kfsChartCode | KFS Chart Code | String (2) | IR |
kfsObjCode | KFS Object Code | String (4) | J323 |
WS Example
Request
<?xml version="1.0" ?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:translateFSAccountToKFSObject xmlns:ns2="http://www.adcom.uci.edu"> <fsAccountList> <fsAccountCode>119850</fsAccountCode> <fsLocationCode>9</fsLocationCode> <kfsChartCode>IR</kfsChartCode> <kfsFiscalYear>2013</kfsFiscalYear> </fsAccountList> <fsAccountList> <fsAccountCode>115181</fsAccountCode> <fsLocationCode>9</fsLocationCode> <kfsChartCode>IR</kfsChartCode> <kfsFiscalYear>2013</kfsFiscalYear> </fsAccountList> <fsAccountList> <fsAccountCode>101193</fsAccountCode> <fsLocationCode>9</fsLocationCode> <kfsChartCode>IR</kfsChartCode> <kfsFiscalYear>2013</kfsFiscalYear> </fsAccountList> <fsAccountList> <fsAccountCode>229344</fsAccountCode> <fsLocationCode>9</fsLocationCode> <kfsChartCode>IR</kfsChartCode> <kfsFiscalYear>2013</kfsFiscalYear> </fsAccountList> <fsAccountList> <fsAccountCode>229344</fsAccountCode> <fsLocationCode>9</fsLocationCode> <kfsChartCode>IR</kfsChartCode> <kfsFiscalYear>2014</kfsFiscalYear> </fsAccountList> </ns2:translateFSAccountToKFSObject> </S:Body> </S:Envelope>
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:translateFSAccountToKFSObjectResponse xmlns:ns2="http://www.adcom.uci.edu"> <return> <fsAccountCode>229344</fsAccountCode> <fsLocationCode>9</fsLocationCode> <kfsChartCode>IR</kfsChartCode> <kfsFiscalYear>2013</kfsFiscalYear> <kfsObjCode>R010</kfsObjCode> </return> <return> <fsAccountCode>115181</fsAccountCode> <fsLocationCode>9</fsLocationCode> <kfsChartCode>IR</kfsChartCode> <kfsFiscalYear>2013</kfsFiscalYear> <kfsObjCode>L231</kfsObjCode> </return> <return> <fsAccountCode>101193</fsAccountCode> <fsLocationCode>9</fsLocationCode> <kfsChartCode>IR</kfsChartCode> <kfsFiscalYear>2013</kfsFiscalYear> <kfsObjCode>N004</kfsObjCode> </return> <return> <fsAccountCode>119850</fsAccountCode> <fsLocationCode>9</fsLocationCode> <kfsChartCode>IR</kfsChartCode> <kfsFiscalYear>2013</kfsFiscalYear> <kfsObjCode>N013</kfsObjCode> </return> </ns2:translateFSAccountToKFSObjectResponse> </soap:Body> </soap:Envelope>
Java Client Example
DWHServerService service = new DWHServerService(); DWHServer server = service.getDWHServerPort(); ArrayList<AccountToObjectTranslateParameters> paramList = new ArrayList<AccountToObjectTranslateParameters>(); AccountToObjectTranslateParameters atp1 = new AccountToObjectTranslateParameters(); atp1.setFsLocationCode("9"); atp1.setFsAccountCode("119850"); atp1.setKfsChartCode("IR"); atp1.setKfsFiscalYear("2013"); paramList.add(atp1); AccountToObjectTranslateParameters atp2 = new AccountToObjectTranslateParameters(); atp2.setFsLocationCode("9"); atp2.setFsAccountCode("115181"); atp2.setKfsChartCode("IR"); atp2.setKfsFiscalYear("2013"); paramList.add(atp2); AccountToObjectTranslateParameters atp3 = new AccountToObjectTranslateParameters(); atp3.setFsLocationCode("9"); atp3.setFsAccountCode("101193"); atp3.setKfsChartCode("IR"); atp3.setKfsFiscalYear("2013"); paramList.add(atp3); AccountToObjectTranslateParameters atp4 = new AccountToObjectTranslateParameters(); atp4.setFsLocationCode("9"); atp4.setFsAccountCode("229344"); atp4.setKfsChartCode("IR"); atp4.setKfsFiscalYear("2013"); paramList.add(atp4); AccountToObjectTranslateParameters atp5 = new AccountToObjectTranslateParameters(); atp5.setFsLocationCode("9"); atp5.setFsAccountCode("229344"); atp5.setKfsChartCode("IR"); atp5.setKfsFiscalYear("2014"); paramList.add(atp5); List<FsAccount2KFSObjectDetails> resultList = server.translateFSAccountToKFSObject(paramList); if (resultList != null) { for (FsAccount2KFSObjectDetails fod : resultList) { System.out.println("fsLocationCode : " + fod.getFsLocationCode()); System.out.println("fsSubCode : " + fod.getFsSubCode()); System.out.println("fsObjCode : " + fod.getFsObjCode()); System.out.println("fsAccountCode : " + fod.getFsAccountCode()); System.out.println("kfsFiscalYear : " + fod.getKfsFiscalYear()); System.out.println("kfsChartCode : " + fod.getKfsChartCode()); System.out.println("kfsObjectCode : " + fod.getKfsObjCode()); System.out.println("--------------------------"); } } else { System.out.println("something bad happened...please check your query"); }