이 예제는 구구단 수식을 계산수식의 단순수식에 적용한 경우의 예제 입니다. 그리고 version 1, version 1.1의 API의 사용에 대해서도 같이 기술 하였습니다.
manager화면, 구구단의 version 1, 1.1에 대한 입력 항목 화면.
| 그림 : 구구단 - 입력항목 화면(version 1, 1.1) |

해당 version에 대한 마스터의 결과(PosCalcValueInfo)를 취득한다.
| PosCalcValueInfo MasterAccess.getCalcValueInfo(calcID 계산수식 ID, calcVer 계산수식 버전, inputParamList 입력값(배열)); |
PosCalcValueInfo 대한 메소드
| 메소드명 | 내용 |
|---|---|
| String getHeaderInfo() | 마스터 헤더 정보를 반환한다. |
| String getFormula() | 계산수식 공식을 반환한다. |
| MapString, String getInputValues() | 입력값 맵을 반환한다. |
| BigDecimal getCalcResultValue() | 계산수식 결과를 반환한다. |
예)
//parameter 구성
List<String[]> inputParams = new ArrayList<String[]>();
inputParams.add( new String[] { "9" } );
inputParams.add( new String[] { "8" } );
// version 1의 계산 결과에 대한 출력
PosCalcValueInfo posCalc2 = MasterAccess.getCalcValueInfo( "CALFORM01", "1" ,inputParams );
System.out.println("-------------------------------------------------------------");
System.out.println("계산 헤드 정보(String) = " + posCalc2.getHeaderInfo());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 공식(String) = " + posCalc2.getFormula());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 항목(Map<String, String>) = " + posCalc2.getInputValues());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 결과값(BigDecimal) = " + posCalc2.getCalcResultValue());
System.out.println("-------------------------------------------------------------");
출력 결과(version 1)
-------------------------------------------------------------
계산 헤드 정보(String) = Master Type : Calculation Rule
ID : CALFORM01
Version : 1
Master Name : 구구단
Detail Type : Simple Formula
Expiration Period : 2014-03-07 00:00:00.0 ~ 2999-12-31 23:59:00.0
-------------------------------------------------------------
계산 수식 공식(String) = V1-V2
-------------------------------------------------------------
계산 항목(Map<String, String>) = {V2=8, V1=9}
-------------------------------------------------------------
계산 수식 결과값(BigDecimal) = 1
-------------------------------------------------------------
가장 최신 버전에 해당한 마스터 결과(PosCalcValueInfo)를 취득한다.
| PosCalcValueInfo MasterAccess.getCalcValueInfo(calcID 계산수식 ID, inputParamList 입력값(배열)); |
PosCalcValueInfo 대한 메소드
| 메소드명 | 내용 |
|---|---|
| String getHeaderInfo() | 마스터 헤더 정보를 반환한다. |
| String getFormula() | 계산수식 공식을 반환한다. |
| MapString, String getInputValues() | 입력값 맵을 반환한다. |
| BigDecimal getCalcResultValue() | 계산수식 결과를 반환한다. |
예)
//parameter 구성
List<String[]> inputParams = new ArrayList<String[]>();
inputParams.add( new String[] { "9" } );
inputParams.add( new String[] { "8" } );
// 가장 최신 version에 대해서 계산 결과에 대한 출력
PosCalcValueInfo posCalc = MasterAccess.getCalcValueInfo( "CALFORM01", inputParams );
System.out.println("-------------------------------------------------------------");
System.out.println("계산 헤드 정보(String) = " + posCalc.getHeaderInfo());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 공식(String) = " + posCalc.getFormula());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 항목(Map<String, String>) = " + posCalc.getInputValues());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 결과값(BigDecimal) = " + posCalc.getCalcResultValue());
System.out.println("-------------------------------------------------------------");
출력 결과(최신버전)
-------------------------------------------------------------
계산 헤드 정보(String) = Master Type : Calculation Rule
ID : CALFORM01
Version : 1.1
Master Name : 구구단
Detail Type : Simple Formula
Expiration Period : 2014-03-07 00:00:00.0 ~ 2999-12-31 23:59:00.0
-------------------------------------------------------------
계산 수식 공식(String) = V1*V2
-------------------------------------------------------------
계산 항목(Map<String, String>) = {V2=8, V1=9}
-------------------------------------------------------------
계산 수식 결과값(BigDecimal) = 72
-------------------------------------------------------------
이 예제는 불쾌지수를 계산수식의 단순수식에 적용한 경우의 예제 입니다.
해당한 마스터 결과(PosCalcValueInfo)를 취득한다.
| PosCalcValueInfo MasterAccess.getCalcValueInfo (calcID 계산수식 ID, inputParamList 입력값(배열)); |
PosCalcValueInfo 대한 메소드
| 메소드명 | 내용 |
|---|---|
| String getHeaderInfo() | 마스터 헤더 정보를 반환한다. |
| String getFormula() | 계산수식 공식을 반환한다. |
| MapString, String getInputValues() | 입력값 맵을 반환한다. |
| BigDecimal getCalcResultValue() | 계산수식 결과를 반환한다. |
예)
//계산수식2
//parameter 구성
List<String[]> inputParams2 = new ArrayList<String[]>();
inputParams2.add( new String[] { "15" } );//현재온도
inputParams2.add( new String[] { "0.5" } );//상대습도
// 계산 결과에 대한 출력
PosCalcValueInfo posCalc3 = MasterAccess.getCalcValueInfo( "CALFORM03", inputParams2 );
System.out.println("-------------------------------------------------------------");
System.out.println("계산 헤드 정보(String) = " + posCalc3.getHeaderInfo());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 공식(String) = " + posCalc3.getFormula());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 항목(Map<String, String>) = " + posCalc3.getInputValues());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 결과값(BigDecimal) = " + posCalc3.getCalcResultValue());
System.out.println("-------------------------------------------------------------");
출력 결과
-------------------------------------------------------------
계산 헤드 정보(String) = Master Type : Calculation Rule
ID : CALFORM03
Version : 1
Master Name : 불쾌지수
Detail Type : Simple Formula
Expiration Period : 2014-03-09 00:00:00.0 ~ 2999-12-31 23:59:00.0
-------------------------------------------------------------
계산 수식 공식(String) = (9/5)*V1-0.55*(1-V2)*(9/5*V1-26)+32
-------------------------------------------------------------
계산 항목(Map<String, String>) = {V2=0.5, V1=15}
-------------------------------------------------------------
계산 수식 결과값(BigDecimal) = 59
-------------------------------------------------------------
이 예제는 주택 취등록세 계산수식을 판단수식에 적용한 경우의 예제 입니다.
| 구분 | 취득세율 | 농특세율 | 교육세율 | 합계 | |
|---|---|---|---|---|---|
| 6억이하 | 85㎡이하 | 1% | - | 0.1% | 1.1% |
| 85㎡초과 | 1% | 0.65% | 0.1% | 1.75% | |
| 9억이하 | 85㎡이하 | 2% | - | 0.2% | 2.2% |
| 85㎡초과 | 2% | 0.5% | 0.2% | 2.5% | |
| 9억초과 | 85㎡이하 | 3% | - | 0.3% | 3.3% |
| 85㎡초과 | 3% | 0.35% | 0.3% | 3.65% |
해당한 마스터 결과(PosCalcValueInfo)를 취득한다.
| PosCalcValueInfo MasterAccess.getCalcValueInfo (calcID 계산수식 ID, inputParamList 입력값(배열)); |
PosCalcValueInfo 대한 메소드
| 메소드명 | 내용 |
|---|---|
| String getHeaderInfo() | 마스터 헤더 정보를 반환한다. |
| String getFormula() | 계산수식 공식을 반환한다. |
| MapString, String getInputValues() | 입력값 맵을 반환한다. |
| BigDecimal getCalcResultValue() | 계산수식 결과를 반환한다. |
예)
//계산수식4
//parameter 구성
List<String[]> inputParams4 = new ArrayList<String[]>();
inputParams4.add( new String[] { "800000000" } );//금액
inputParams4.add( new String[] { "103" } );//면적
// 계산 결과에 대한 출력
PosCalcValueInfo posCalc4 = MasterAccess.getCalcValueInfo( "CALFORM04", inputParams4 );
System.out.println("-------------------------------------------------------------");
System.out.println("계산 헤드 정보(String) = " + posCalc4.getHeaderInfo());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 공식(String) = " + posCalc4.getFormula());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 항목(Map<String, String>) = " + posCalc4.getInputValues());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 결과값(BigDecimal) = " + posCalc4.getCalcResultValue());
System.out.println("-------------------------------------------------------------");
출력 결과
-------------------------------------------------------------
계산 헤드 정보(String) = Master Type : Calculation Rule
ID : CALFORM04
Version : 1
Master Name : 취등록세
Detail Type : Conditional Formula
Expiration Period : 2014-03-10 00:00:00.0 ~ 2999-12-31 23:59:00.0
-------------------------------------------------------------
계산 수식 공식(String) = V1*(2+0.5+0.2)/100
-------------------------------------------------------------
계산 항목(Map<String, String>) = {V2=103, V1=800000000}
-------------------------------------------------------------
계산 수식 결과값(BigDecimal) = 21600000
-------------------------------------------------------------
예제는 근로소득공제 금액을 계산수식을 판단수식에 적용한 경우의 예제 입니다.
해당한 마스터 결과(PosCalcValueInfo)를 취득한다.
| PosCalcValueInfo MasterAccess.getCalcValueInfo (calcID 계산수식 ID, inputParamList 입력값(배열)); |
PosCalcValueInfo 대한 메소드
| 메소드명 | 내용 |
|---|---|
| String getHeaderInfo() | 마스터 헤더 정보를 반환한다. |
| String getFormula() | 계산수식 공식을 반환한다. |
| MapString, String getInputValues() | 입력값 맵을 반환한다. |
| BigDecimal getCalcResultValue() | 계산수식 결과를 반환한다. |
예)
//계산수식5
//parameter 구성
List<String[]> inputParams5 = new ArrayList<String[]>();
inputParams5.add( new String[] { "50000000" } );//금액
// 계산 결과에 대한 출력
PosCalcValueInfo posCalc5 = MasterAccess.getCalcValueInfo( "CALFORM05", inputParams5 );
System.out.println("-------------------------------------------------------------");
System.out.println("계산 헤드 정보(String) = " + posCalc5.getHeaderInfo());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 공식(String) = " + posCalc5.getFormula());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 항목(Map<String, String>) = " + posCalc5.getInputValues());
System.out.println("-------------------------------------------------------------");
System.out.println("계산 수식 결과값(BigDecimal) = " + posCalc5.getCalcResultValue());
System.out.println("-------------------------------------------------------------");
출력 결과
-------------------------------------------------------------
계산 헤드 정보(String) = Master Type : Calculation Rule
ID : CALFORM05
Version : 1
Master Name : 근로소득공제
Detail Type : Conditional Formula
Expiration Period : 2014-03-10 00:00:00.0 ~ 2999-12-31 23:59:00.0
-------------------------------------------------------------
계산 수식 공식(String) = 12750000+(V1-45000000)*5/100
-------------------------------------------------------------
계산 항목(Map<String, String>) = {V1=50000000}
-------------------------------------------------------------
계산 수식 결과값(BigDecimal) = 13000000
-------------------------------------------------------------