3장 업무 기준

  1. 단순 일반
  2. 판단성 일반
  3. 단순 판단
  4. 연관 판단

업무 기준

용어 설명
일반 기준 단순일반 “== (equal)“만을 판단한다.
판단성 일반 Simple한 연산자(, <=, , >=)를 적용할 수 있다.
일반 기준 단순 일반 일반 기준의 == 연산자 이외의 다양한 연산자를 적용할 수 있다. 
( , <=, , >=, between, like, in, not in, null, not null)
연관 일반 다항연산의 판단식을 DB Query 형태로 만들어 DB에서 그 결과를 판단할 수있다.

단순 일반(Simple General)

등급별 배점 구하기 (예1)

이 예제는 등급별 배점을 업무기준의 단순일반에 적용한 예제 입니다.

등급(등급) 배점(점)
A 50
B 40
C 30
D 20
E 10

version 0.1, version 1의 API의 사용에 대해서도 같이 기술 하였습니다.

업무기준 목록 화면(version 0.1)

manager화면, 등급별 배점 version 0.1에 대한 업무기준 목록 등록 화면.

그림 : 등급별 배점 - 업무기준 목록화면(version 0.1)
등급별 배점 - 업무기준 목록화면(version 0.1)
업무기준 목록 화면(version 1)

manager화면, 등급별 배점 version 1에 대한 업무기준 목록 등록 화면.

그림 : 등급별 배점 - 업무기준 목록화면(version 1)
등급별 배점 - 업무기준 목록화면(version 1)
업무기준 레이아웃 화면(version 0.1, 1 동일)

manager화면,등급별 배점 version 0.1,1에 대한 업무기준 레이아웃 등록 화면.

그림 : 등급별 배점 - 업무기준 레이아웃 화면(version 0.1, 1)
등급별 배점 - 업무기준 레이아웃 화면(version 0.1, 1)
업무기준 데이터 화면(version 0.1)

Manager 화면, 등급별 배점 version 0.1에 대한 업무기준 데이터 등록 화면.

그림 : 등급별 배점 - 업무기준 데이터 화면(version 0.1)
등급별 배점 - 업무기준 데이터 화면(version 0.1)
업무기준 데이터 화면(version 1)

manager 화면, 등급별 배점 version 1에 대한 업무기준 데이터 등록 화면.

그림 : 등급별 배점 - 업무기준 데이터 화면(version 1)
등급별 배점 - 업무기준 데이터 화면(version 1)
API 사용 - 1 (버전 지정)

해당 version에 대한 마스터의 결과(PosRuleValueInfo)를 취득한다.

PosRuleValueInfo MasterAccess.getRuleValueInfo(calcID 계산수식 ID, calcVer 계산수식 버전, inputParamList 입력값(배열));

PosRuleValueInfo 대한 메소드

메소드명 내용
String getHeaderInfo() 마스터 헤더 정보를 반환한다.
ListString getItemIDList() 업무기준 항목ID 목록을 반환한다.
void addRuleResult ( ListString ruleValueList ) 업무기준 결과를 추가한다.
MapString, String getRuleResultMap(int index) 순서에 해당하는 업무기준 결과를 반환한다.
ListLinkedHashMap<String, String> getRuleResultAll() 업무기준 모든 결과를 반환한다. .

예)

//업무기준1
//parameter 구성
String[] ruleInputParams1 =  new String[] { "A" };
        
// 계산 결과에 대한 출력
PosRuleValueInfo posRule1 = MasterAccess.getRuleValueInfo("RGA00001","0.1", ruleInputParams1);
        
System.out.println("--------------------------------------------------------------------");
System.out.println("업무기준 헤드 정보(String)          = " + posRule1.getHeaderInfo());
System.out.println("--------------------------------------------------------------------");
System.out.println("업무기준 항목ID 목록(List<String>)  = " + posRule1.getItemIDList());
System.out.println("--------------------------------------------------------------------");
for (Map<String, String> resultMap : posRule1) {
    System.out.println("업무기준 결과값(Map<String, String>)= " + resultMap );
}
System.out.println("--------------------------------------------------------------------");
String addString = "40";
List<String> ruleVList = new ArrayList<String>();
ruleVList.add(addString);
posRule1.addRuleResult(ruleVList);
for (int i = 0; i < posRule1.size(); i++) {
    System.out.println("업무기준 결과값(Map<String, String>) 추가후 [" + addString + "]:추가    = " + posRule1.getRuleResultMap(i) );
}
System.out.println("--------------------------------------------------------------------");
System.out.println("업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  = " + posRule1.getRuleResultAll() );
System.out.println("--------------------------------------------------------------------");

출력 결과

---------------------------------------------------------------------
업무기준 헤드 정보(String)                  = Master Type : Business Rule
ID : RGA00001
Version : 0.1
Master Name : 등급별배점
Detail Type : Simple General
Expiration Period : 2014-03-12 00:00:00.0 ~ 2999-12-31 23:59:00.0
---------------------------------------------------------------------
업무기준 항목ID 목록(List<String>)          = [SCORE]
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>)           = {SCORE=50}
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>) 추가후 [40]:추가   = {SCORE=50}
업무기준 결과값(Map<String, String>) 추가후 [40]:추가   = {SCORE=40}
---------------------------------------------------------------------
업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  = === Header Information ===
Master Type : Business Rule
ID : RGA00001
Version : 0.1
Master Name : 등급별배점
Detail Type : Simple General
Expiration Period : 2014-03-12 00:00:00.0 ~ 2999-12-31 23:59:00.0
=== Business Rule Information ===
{SCORE=50}
{SCORE=40}

---------------------------------------------------------------------
API 사용 - 2 (최신 버전)

해당 version에 대한 마스터의 결과(PosRuleValueInfo)를 취득한다.

PosRuleValueInfo MasterAccess.getRuleValueInfo(ruleID 업무기준 ID, inputParams 입력값(배열));

PosRuleValueInfo 대한 메소드

메소드명 내용
String getHeaderInfo() 마스터 헤더 정보를 반환한다.
ListString getItemIDList() 업무기준 항목ID 목록을 반환한다.
void addRuleResult ( ListString ruleValueList ) 업무기준 결과를 추가한다.
MapString, String getRuleResultMap(int index) 순서에 해당하는 업무기준 결과를 반환한다.
ListLinkedHashMap<String, String> getRuleResultAll() 업무기준 모든 결과를 반환한다. .

예)

//업무기준2
//parameter 구성
String[] ruleInputParams2 =  new String[] { "A" };
        
PosRuleValueInfo posRule2 =  MasterAccess.getRuleValueInfo( "RGA00001", ruleInputParams2 );
                
System.out.println("---------------------------------------------------------------------");
System.out.println("업무기준 헤드 정보(String)               = " + posRule2.getHeaderInfo());
System.out.println("---------------------------------------------------------------------");
System.out.println("업무기준 항목ID 목록(List<String>)       = " + posRule2.getItemIDList());
System.out.println("---------------------------------------------------------------------");
for (Map<String, String> resultMap : posRule2) {
    System.out.println("업무기준 결과값(Map<String, String>) = " + resultMap );
}
System.out.println("---------------------------------------------------------------------");
String addString = "30";
List<String> ruleVList2 = new ArrayList<String>();
ruleVList2.add( addString );
posRule2.addRuleResult(ruleVList2);
for (int i = 0; i < posRule2.size(); i++) {
    System.out.println("업무기준 결과값 (Map<String, String>) 추가후 [" + addString + "]:추가 = "  + posRule2.getRuleResultMap(i)  );
}
System.out.println("---------------------------------------------------------------------");
System.out.println("업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = " + posRule2.getRuleResultAll() );
System.out.println("---------------------------------------------------------------------");

출력 결과

---------------------------------------------------------------------
업무기준 헤드 정보(String)                = Master Type : Business Rule
ID : RGA00001
Version : 1
Master Name : 등급별배점
Detail Type : Simple General
Expiration Period : 2014-03-12 00:00:00.0 ~ 2999-12-31 23:59:00.0
---------------------------------------------------------------------
업무기준 항목ID 목록(List<String>)        = [SCORE]
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>) = {SCORE=100}
---------------------------------------------------------------------
업무기준 결과값 (Map<String, String>) 추가후 [30]:추가 = {SCORE=100}
업무기준 결과값 (Map<String, String>) 추가후 [30]:추가 = {SCORE=30}
---------------------------------------------------------------------
업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = === Header Information ===
Master Type : Business Rule
ID : RGA00001
Version : 1
Master Name : 등급별배점
Detail Type : Simple General
Expiration Period : 2014-03-12 00:00:00.0 ~ 2999-12-31 23:59:00.0
=== Business Rule Information ===
{SCORE=100}
{SCORE=30}

---------------------------------------------------------------------

소고기 등급(예2)

이 예제는 소고기 등급 기준을 업무기준의 단순일반에 적용한 예제 입니다.

육 질 등 급
1++등급 1+등급 1등급 2등급 3등급 등외
A 등급 1++A 1+A 1A 2A 3A -
육 량 B 등급 1++B 1+B 1B 2B 3B -
등 급 C 등급 1++C 1+C 1C 2C 3C -
등외(D) - - - - - -
업무기준 목록 화면

manager화면, 소고기 등급에 대한 업무기준 목록 등록 화면.

그림 : 소고기 등급 - 업무기준 목록 화면
소고기 등급 - 업무기준 목록 화면
업무기준 레이아웃 화면

manager화면, 소고기 등급에 대한 업무기준 레이아웃 등록 화면.

그림 : 소고기 등급 - 업무기준 레이아웃 화면
소고기 등급 - 업무기준 레이아웃 화면
업무기준 데이터 화면

manager화면, 소고기 등급에 대한 업무기준 테이터 등록 화면.

그림 : 소고기 등급 - 업무기준 데이터 화면
소고기 등급 - 업무기준 데이터 화면
API 사용

해당한 마스터 결과(PosRuleValueInfo)를 취득한다.

PosRuleValueInfo MasterAccess.getRuleValueInfo (ruleID 업무기준 ID, inputParams 입력값(배열));

PosRuleValueInfo 대한 메소드

메소드명 내용
String getHeaderInfo() 마스터 헤더 정보를 반환한다.
ListString getItemIDList() 업무기준 항목ID 목록을 반환한다.
void addRuleResult ( ListString ruleValueList ) 업무기준 결과를 추가한다.
MapString, String getRuleResultMap(int index) 순서에 해당하는 업무기준 결과를 반환한다.
ListLinkedHashMap<String, String> getRuleResultAll() 업무기준 모든 결과를 반환한다. .

예)

//업무기준3
//parameter 구성
String[] ruleInputParams3 = new String[] { "2", "A" };

PosRuleValueInfo posRule3 = MasterAccess.getRuleValueInfo( "RGA00002", ruleInputParams3 );
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 헤드 정보(String)                = " + sRule3.getHeaderInfo());
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 항목ID 목록(List<String>)        = " + sRule3.getItemIDList());
System.out.println("-------------------------------------------------------------------");
for (Map<String, String> resultMap : posRule3) {
    System.out.println("업무기준 결과값(Map<String, String>) = " + resultMap );
}
System.out.println("-------------------------------------------------------------------");
String addString = "A++";
List<String> ruleVList3 = new ArrayList<String>();
ruleVList3.add( addString );
posRule3.addRuleResult(ruleVList3);
for (int i = 0; i < posRule3.size(); i++) {
    System.out.println("업무기준 결과값 (Map<String, String>) 추가후 [" + addString + "]:추가 = "  + posRule3.getRuleResultMap(i)  );
}
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = " + posRule3.getRuleResultAll() );
System.out.println("-------------------------------------------------------------------");

출력 결과

---------------------------------------------------------------------
업무기준 헤드 정보(String)                = Master Type : Business Rule
ID : RGA00002
Version : 1
Master Name : 소고기등급
Detail Type : Simple General
Expiration Period : 2014-03-14 00:00:00.0 ~ 2999-12-31 23:59:00.0
---------------------------------------------------------------------
업무기준 항목ID 목록(List<String>)        = [BG]
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>) = {BG=1+A}
---------------------------------------------------------------------
업무기준 결과값 (Map<String, String>) 추가후 [A++]:추가 = {BG=1+A}
업무기준 결과값 (Map<String, String>) 추가후 [A++]:추가 = {BG=A++}
---------------------------------------------------------------------
업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = === Header Information ===
Master Type : Business Rule
ID : RGA00002
Version : 1
Master Name : 소고기등급
Detail Type : Simple General
Expiration Period : 2014-03-14 00:00:00.0 ~ 2999-12-31 23:59:00.0
=== Business Rule Information ===
{BG=1+A}
{BG=A++}

---------------------------------------------------------------------

판단성 일반(Conditional General)

산가 측정(예1)

이 예제는 산가 측정을 업무기준의 판단성일반에 적용한 예제 입니다.

산가 강산성 약산성 중성 약알칼리성 강알칼리성
PH 1 2 3 4 5 6 7 8 9 10 11 12 13 14
업무기준 목록 화면

manager화면, 산가 측정에 대한 업무기준 목록 등록 화면.

그림 : 산가 측정 - 업무기준 목록 화면
산가 측정 - 업무기준 목록 화면
업무기준 레이아웃 입력항목 화면

manager화면, 산가 측정에 대한 업무기준 레이아웃 등록 화면.

그림 : 산가 측정 - 업무기준 레이아웃 화면
산가 측정 - 업무기준 레이아웃 화면
업무기준 데이터 화면

manager화면, 산가 측정에 대한 업무기준 데이터 등록 화면.

그림 : 산가 측정 - 업무기준 데이터 화면
산가 측정 - 업무기준 데이터 화면
API 사용

해당한 마스터 결과(PosRuleValueInfo)를 취득한다.

PosRuleValueInfo MasterAccess.getRuleValueInfo (calcID 계산수식 ID, inputParamList 입력값(배열));

PosRuleValueInfo 대한 메소드

메소드명 내용
String getHeaderInfo() 마스터 헤더 정보를 반환한다.
ListString getItemIDList() 업무기준 항목ID 목록을 반환한다.
void addRuleResult ( ListString ruleValueList ) 업무기준 결과를 추가한다.
MapString, String getRuleResultMap(int index) 순서에 해당하는 업무기준 결과를 반환한다.
ListLinkedHashMap<String, String> getRuleResultAll() 업무기준 모든 결과를 반환한다. .

예)

//업무기준4
//parameter 구성
String ruleInputParams4[] = { "10" };
PosRuleValueInfo posRule4 = MasterAccess.getRuleValueInfo( "RGA00003", ruleInputParams4 );
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 헤드 정보(String)              = " + posRule4.getHeaderInfo());
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 항목ID 목록(List<String>)      = " + posRule4.getItemIDList());
System.out.println("-------------------------------------------------------------------");
for (Map<String, String> resultMap : posRule4) {
    System.out.println("업무기준 결과값(Map<String, String>) = " + resultMap );
}
System.out.println("-------------------------------------------------------------------");
String addString = "없음";
List<String> ruleVList3 = new ArrayList<String>();
ruleVList3.add( addString );
posRule4.addRuleResult(ruleVList3);
for (int i = 0; i < posRule4.size(); i++) {
    System.out.println("업무기준 결과값 (Map<String, String>) 추가후 [" + addString + "]:추가 = "  + posRule4.getRuleResultMap(i)  );
}
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = " + posRule4.getRuleResultAll() );
System.out.println("-------------------------------------------------------------------");

출력 결과

---------------------------------------------------------------------
업무기준 헤드 정보(String)                = Master Type : Business Rule
ID : RGA00003
Version : 1
Master Name : 산가측정
Detail Type : Conditional General
Expiration Period : 2014-03-14 00:00:00.0 ~ 2999-12-31 23:59:00.0
---------------------------------------------------------------------
업무기준 항목ID 목록(List<String>)        = [산가]
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>) = {산가=약알칼리성}
---------------------------------------------------------------------
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {산가=약알칼리성}
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {산가=없음}
---------------------------------------------------------------------
업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = === Header Information ===
Master Type : Business Rule
ID : RGA00003
Version : 1
Master Name : 산가측정
Detail Type : Conditional General
Expiration Period : 2014-03-14 00:00:00.0 ~ 2999-12-31 23:59:00.0
=== Business Rule Information ===
{산가=약알칼리성}
{산가=없음}

---------------------------------------------------------------------

쌀 등급(예2)

이 예제는 쌀 등급을 업무기준의 판단성일반에 적용한 예제 입니다.

등급
싸라기 분상질립 피해립 열손립 기타이물
1등급 3.0 2.0 1.0 0.0 0.1
2등급 6.0 5.0 1.5 0.0 0.2
3등급 10.0 7.0 2.5 0.0 0.4
4등급 15.0 10.0 4.0 0.1 0.6
5등급 20.0 15.0 6.0 0.2 1.0
업무기준 목록 화면

manager화면, 쌀 등급에 대한 업무기준 목록 등록 화면.

그림 : 쌀 등급 - 업무기준 목록 화면
쌀 등급 - 업무기준 목록 화면
업무기준 레이아웃 입력항목 화면

manager화면, 쌀 등급에 대한 업무기준 레이아웃 등록 화면.

그림 : 쌀 등급 - 업무기준 레이아웃
쌀 등급 - 업무기준 레이아웃
업무기준 데이터 화면

manager화면, 쌀 등급에 대한 업무기준 데이터 등록 화면.

그림 : 쌀 등급 - 업무기준 데이터 화면
쌀 등급 - 업무기준 데이터 화면
API 사용

해당한 마스터 결과(PosRuleValueInfo)를 취득한다.

PosRuleValueInfo MasterAccess.getRuleValueInfo (calcID 계산수식 ID, inputParamList 입력값(배열));

PosRuleValueInfo 대한 메소드

메소드명 내용
String getHeaderInfo() 마스터 헤더 정보를 반환한다.
ListString getItemIDList() 업무기준 항목ID 목록을 반환한다.
void addRuleResult ( ListString ruleValueList ) 업무기준 결과를 추가한다.
MapString, String getRuleResultMap(int index) 순서에 해당하는 업무기준 결과를 반환한다.
ListLinkedHashMap<String, String> getRuleResultAll() 업무기준 모든 결과를 반환한다. .

예)

//업무기준5
//parameter 구성
String ruleInputParams5[] = { "5", "2", "2", "0", "0.1" };
PosRuleValueInfo posRule5 = MasterAccess.getRuleValueInfo( "RGA00004", ruleInputParams5 );
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 헤드 정보(String)              = " + posRule5.getHeaderInfo());
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 항목ID 목록(List<String>)      = " + posRule5.getItemIDList());
System.out.println("-------------------------------------------------------------------");
for (Map<String, String> resultMap : posRule5) {
System.out.println("업무기준 결과값(Map<String, String>) = " + resultMap );
}
System.out.println("-------------------------------------------------------------------");
String addString = "없음";
List<String> ruleVList3 = new ArrayList<String>();
ruleVList3.add( addString );
posRule5.addRuleResult(ruleVList3);
for (int i = 0; i < posRule5.size(); i++) {
System.out.println("업무기준 결과값 (Map<String, String>) 추가후 [" + addString + "]:추가 = "  + posRule5.getRuleResultMap(i)  );
}
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = " + posRule5.getRuleResultAll() );
System.out.println("-------------------------------------------------------------------");

출력 결과

---------------------------------------------------------------------
업무기준 헤드 정보(String)                = Master Type : Business Rule
ID : RGA00004
Version : 1
Master Name : 쌀등급
Detail Type : Conditional General
Expiration Period : 2014-03-17 00:00:00.0 ~ 2999-12-31 23:59:00.0
---------------------------------------------------------------------
업무기준 항목ID 목록(List<String>)        = [TARGET_GRADE]
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>) = {TARGET_GRADE=3등급}
---------------------------------------------------------------------
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {TARGET_GRADE=3등급}
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {TARGET_GRADE=없음}
---------------------------------------------------------------------
업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = === Header Information ===
Master Type : Business Rule
ID : RGA00004
Version : 1
Master Name : 쌀등급
Detail Type : Conditional General
Expiration Period : 2014-03-17 00:00:00.0 ~ 2999-12-31 23:59:00.0
=== Business Rule Information ===
{TARGET_GRADE=3등급}
{TARGET_GRADE=없음}

---------------------------------------------------------------------

단순 판단(Simple Condition)

연령대별SNS이용률(예1)

이 예제는 연령대별SNS이용률을 업무기준의 단순 판단에 적용한 예제 입니다.

연령 이용률(%)
0 - 10세 5.0
11 - 19세 48.7
20 - 29세 69.3
30 - 39세 46.9
40 - 49세 28.8
50 - 세 12.1

(연령대별 SNS 이용률현황(%))

업무기준 목록 화면

manager화면, 연령대별SNS이용률에 대한 업무기준 목록 등록 화면.

그림 : 연령대별 SNS 이용률 - 업무기준 목록 화면
연령대별 SNS 이용률 - 업무기준 목록 화면
업무기준 레이아웃 입력항목 화면

manager화면, 연령대별SNS이용률에 대한 업무기준 레이아웃 등록 화면.

그림 : 연령대별 SNS 이용률 - 업무기준 레이아웃 화면
연령대별 SNS 이용률 - 업무기준 레이아웃 화면
업무기준 데이터 화면

manager화면, 연령대별SNS이용률에 대한 업무기준 데이터 등록 화면.

그림 : 연령대별 SNS 이용률 - 업무기준 데이터 화면
연령대별 SNS 이용률 - 업무기준 데이터 화면
API 사용

해당한 마스터 결과(PosRuleValueInfo)를 취득한다.

PosRuleValueInfo MasterAccess.getRuleValueInfo (calcID 계산수식 ID, inputParamList 입력값(배열));

PosRuleValueInfo 대한 메소드

메소드명 내용
String getHeaderInfo() 마스터 헤더 정보를 반환한다.
ListString getItemIDList() 업무기준 항목ID 목록을 반환한다.
void addRuleResult ( ListString ruleValueList ) 업무기준 결과를 추가한다.
MapString, String getRuleResultMap(int index) 순서에 해당하는 업무기준 결과를 반환한다.
ListLinkedHashMap<String, String> getRuleResultAll() 업무기준 모든 결과를 반환한다. .

예)

//업무기준7
//parameter 구성
String ruleInputParams7[] = { "37" };
PosRuleValueInfo posRule7 = MasterAccess.getRuleValueInfo( "RGA00006", ruleInputParams7 );
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 헤드 정보(String)              = " + posRule7.getHeaderInfo());
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 항목ID 목록(List<String>)      = " + posRule7.getItemIDList());
System.out.println("-------------------------------------------------------------------");
for (Map<String, String> resultMap : posRule7) {
    System.out.println("업무기준 결과값(Map<String, String>) = " + resultMap );
}
System.out.println("-------------------------------------------------------------------");
String addString = "없음";
List<String> ruleVList3 = new ArrayList<String>();
ruleVList3.add( addString );
posRule7.addRuleResult(ruleVList3);
for (int i = 0; i < posRule7.size(); i++) {
    System.out.println("업무기준 결과값 (Map<String, String>) 추가후 [" + addString + "]:추가 = "  + posRule7.getRuleResultMap(i)  );
}
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = " + posRule7.getRuleResultAll() );
System.out.println("-------------------------------------------------------------------");

출력 결과

---------------------------------------------------------------------
업무기준 헤드 정보(String)                = Master Type : Business Rule
ID : RGA00006
Version : 1
Master Name : 연령대별SNS이용률
Detail Type : Simple Condition
Expiration Period : 2014-03-21 00:00:00.0 ~ 2999-12-31 23:59:00.0
---------------------------------------------------------------------
업무기준 항목ID 목록(List<String>)        = [PER]
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>) = {PER=46.9}
---------------------------------------------------------------------
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {PER=46.9}
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {PER=없음}
---------------------------------------------------------------------
업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = === Header Information ===
Master Type : Business Rule
ID : RGA00006
Version : 1
Master Name : 연련대별SNS이용률
Detail Type : Simple Condition
Expiration Period : 2014-03-21 00:00:00.0 ~ 2999-12-31 23:59:00.0
=== Business Rule Information ===
{PER=46.9}
{PER=없음}

---------------------------------------------------------------------

토익스피킹레벨 (예2)

이 예제는 토익스피킹레벨을 업무기준의 단순 판단에 적용한 예제 입니다.

Scale Score Level
190 - 200 8
160 - 180 7
130 - 150 6
110 - 120 5
80 - 100 4
60 - 70 3
40 - 50 2
0 - 30 1
업무기준 목록 화면

manager화면, 토익스피킹레벨에 대한 업무기준 목록 등록 화면.

그림 : 토익스피킹레벨 - 업무기준 목록 화면
토익스피킹레벨 - 업무기준 목록 화면
업무기준 레이아웃 입력항목 화면

manager화면, 토익스피킹레벨에 대한 업무기준 레이아웃 등록 화면.

그림 : 토익스피킹레벨 - 업무기준 레이아웃 화면
토익스피킹레벨 - 업무기준 레이아웃 화면
업무기준 데이터 화면

manager화면, 토익스피팅레벨에 대한 업무기준 데이터 등록 화면.

그림 : 토익스피킹레벨 - 업무기준 데이터 화면
토익스피킹레벨 - 업무기준 데이터 화면
API 사용

해당한 마스터 결과(PosRuleValueInfo)를 취득한다.

PosRuleValueInfo MasterAccess.getRuleValueInfo (calcID 계산수식 ID, inputParamList 입력값(배열));

PosRuleValueInfo 대한 메소드

메소드명 내용
String getHeaderInfo() 마스터 헤더 정보를 반환한다.
ListString getItemIDList() 업무기준 항목ID 목록을 반환한다.
void addRuleResult ( ListString ruleValueList ) 업무기준 결과를 추가한다.
MapString, String getRuleResultMap(int index) 순서에 해당하는 업무기준 결과를 반환한다.
ListLinkedHashMap<String, String> getRuleResultAll() 업무기준 모든 결과를 반환한다. .

예)

//업무기준6
//parameter 구성
String ruleInputParams6[] = { "120" };
PosRuleValueInfo posRule6 = MasterAccess.getRuleValueInfo( "RGA00005", ruleInputParams6 );
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 헤드 정보(String)              = " + posRule6.getHeaderInfo());
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 항목ID 목록(List<String>)      = " + posRule6.getItemIDList());
System.out.println("-------------------------------------------------------------------");
for (Map<String, String> resultMap : posRule6) {
    System.out.println("업무기준 결과값(Map<String, String>) = " + resultMap );
}
System.out.println("-------------------------------------------------------------------");
String addString = "없음";
List<String> ruleVList3 = new ArrayList<String>();
ruleVList3.add( addString );
posRule6.addRuleResult(ruleVList3);
for (int i = 0; i < posRule6.size(); i++) {
    System.out.println("업무기준 결과값 (Map<String, String>) 추가후 [" + addString + "]:추가 = "  + posRule6.getRuleResultMap(i)  );
}
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = " + posRule6.getRuleResultAll() );
System.out.println("-------------------------------------------------------------------");

출력 결과

---------------------------------------------------------------------
업무기준 헤드 정보(String)                = Master Type : Business Rule
ID : RGA00005
Version : 1
Master Name : 토익스피킹레벨
Detail Type : Simple Condition
Expiration Period : 2014-03-21 00:00:00.0 ~ 2999-12-31 23:59:00.0
---------------------------------------------------------------------
업무기준 항목ID 목록(List<String>)        = [LEVEL]
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>) = {LEVEL=5}
---------------------------------------------------------------------
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {LEVEL=5}
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {LEVEL=없음}
---------------------------------------------------------------------
업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = === Header Information ===
Master Type : Business Rule
ID : RGA00005
Version : 1
Master Name : 토익스피킹레벨
Detail Type : Simple Condition
Expiration Period : 2014-03-21 00:00:00.0 ~ 2999-12-31 23:59:00.0
=== Business Rule Information ===
{LEVEL=5}
{LEVEL=없음}

---------------------------------------------------------------------

연관 판단(Relative Condition)

불쾌지수의 단계(예1)

이 예제는 불쾌지수의 단계을 업무기준의 연관 판단에 적용한 예제 입니다.

불쾌지수의 단계
업무기준 목록 화면

manager화면, 불쾌지수의 단계에 대한 업무기준 목록 등록 화면.

그림 : 불쾌지수의 단계 - 업무기준 목록 화면
불쾌지수의 단계 - 업무기준 목록 화면
업무기준 레이아웃 입력항목 화면

manager화면, 불쾌지수의 단계에 대한 업무기준 레이아웃 등록 화면.

그림 : 불쾌지수의 단계 - 업무기준 레이아웃 화면
불쾌지수의 단계 - 업무기준 레이아웃 화면
업무기준 데이터 화면

manager화면, 불쾌지수의 단계에 대한 업무기준 데이터 등록 화면.

그림 : 불쾌지수의 단계 - 업무기준 테이터 화면
불쾌지수의 단계 - 업무기준 테이터 화면
API 사용

해당한 마스터 결과(PosRuleValueInfo)를 취득한다.

PosRuleValueInfo MasterAccess.getRuleValueInfo (calcID 계산수식 ID, inputParamList 입력값(배열));

PosRuleValueInfo 대한 메소드

메소드명 내용
String getHeaderInfo() 마스터 헤더 정보를 반환한다.
ListString getItemIDList() 업무기준 항목ID 목록을 반환한다.
void addRuleResult ( ListString ruleValueList ) 업무기준 결과를 추가한다.
MapString, String getRuleResultMap(int index) 순서에 해당하는 업무기준 결과를 반환한다.
ListLinkedHashMap<String, String> getRuleResultAll() 업무기준 모든 결과를 반환한다. .

예)

//업무기준8
//parameter 구성
String ruleInputParams8[] = { "35", "0.5" };
PosRuleValueInfo posRule8 = MasterAccess.getRuleValueInfo( "RG00007", ruleInputParams8 );
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 헤드 정보(String)              = " + posRule8.getHeaderInfo());
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 항목ID 목록(List<String>)      = " + posRule8.getItemIDList());
System.out.println("-------------------------------------------------------------------");
for (Map<String, String> resultMap : posRule8) {
    System.out.println("업무기준 결과값(Map<String, String>) = " + resultMap );
}
System.out.println("-------------------------------------------------------------------");
String addString = "없음";
List<String> ruleVList3 = new ArrayList<String>();
ruleVList3.add( addString );
posRule8.addRuleResult(ruleVList3);
for (int i = 0; i < posRule8.size(); i++) {
    System.out.println("업무기준 결과값 (Map<String, String>) 추가후 [" + addString + "]:추가 = "  + posRule8.getRuleResultMap(i)  );
}
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = " + posRule8.getRuleResultAll() );
System.out.println("-------------------------------------------------------------------");

출력 결과

---------------------------------------------------------------------
업무기준 헤드 정보(String)                = Master Type : Business Rule
ID : RG00007
Version : 1
Master Name : 불쾌지수단계
Detail Type : Relative Condition
Expiration Period : 2014-03-24 00:00:00.0 ~ 2999-12-31 23:59:00.0
---------------------------------------------------------------------
업무기준 항목ID 목록(List<String>)        = [PHASE]
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>) = {PHASE=보통}
---------------------------------------------------------------------
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {PHASE=보통}
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {PHASE=없음}
---------------------------------------------------------------------
업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = === Header Information ===
Master Type : Business Rule
ID : RG00007
Version : 1
Master Name : 불쾌지수단계
Detail Type : Relative Condition
Expiration Period : 2014-03-24 00:00:00.0 ~ 2999-12-31 23:59:00.0
=== Business Rule Information ===
{PHASE=보통}
{PHASE=없음}

---------------------------------------------------------------------

BMI(비만도)기준(예2)

이 예제는 BMI(비만도)기준을 업무기준의 연관 판단에 적용한 예제 입니다.

계산식 신체질량지수(BMI)=체중(kg)/[신장(m)]2
기 준 저체중 20미만
정상 20-24
과체중 25-29
비만 30이상

※ 신체질량지수(Body Mass Index:BMI,카우프지수)에 의한 비만도 계산법

업무기준 목록 화면

manager화면, BMI(비만도)기준에 대한 업무기준 목록 등록 화면.

그림 : BMI(비만도)기준 - 업무기준 목록 화면
BMI(비만도)기준 - 업무기준 목록 화면
업무기준 레이아웃 입력항목 화면

manager화면, BMI(비만도)기준에 대한 업무기준 레이아웃 등록 화면.

그림 : BMI(비만도)기준 - 업무기준 레이아웃 화면
BMI(비만도)기준 - 업무기준 레이아웃 화면
업무기준 데이터 화면

manager화면, BMI(비만도)기준에 대한 업무기준 데이터 등록 화면.

그림 : BMI(비만도)기준 - 업무기준 테이터 화면
BMI(비만도)기준 - 업무기준 테이터 화면
API 사용

해당한 마스터 결과(PosRuleValueInfo)를 취득한다.

PosRuleValueInfo MasterAccess.getRuleValueInfo (calcID 계산수식 ID, inputParamList 입력값(배열));

PosRuleValueInfo 대한 메소드

메소드명 내용
String getHeaderInfo() 마스터 헤더 정보를 반환한다.
ListString getItemIDList() 업무기준 항목ID 목록을 반환한다.
void addRuleResult ( ListString ruleValueList ) 업무기준 결과를 추가한다.
MapString, String getRuleResultMap(int index) 순서에 해당하는 업무기준 결과를 반환한다.
ListLinkedHashMap<String, String> getRuleResultAll() 업무기준 모든 결과를 반환한다. .

예)

//업무기준8
//parameter 구성
String ruleInputParams9[] = { "76", "1.75" };
PosRuleValueInfo posRule9 = MasterAccess.getRuleValueInfo( "RGA00008", ruleInputParams9 );     
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 헤드 정보(String)              = " + posRule9.getHeaderInfo());
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 항목ID 목록(List<String>)      = " + posRule9.getItemIDList());
System.out.println("-------------------------------------------------------------------");
for (Map<String, String> resultMap : posRule9) {
    System.out.println("업무기준 결과값(Map<String, String>) = " + resultMap );
}
System.out.println("-------------------------------------------------------------------");
String addString = "없음";
List<String> ruleVList3 = new ArrayList<String>();
ruleVList3.add( addString );
posRule9.addRuleResult(ruleVList3);
for (int i = 0; i < posRule9.size(); i++) {
    System.out.println("업무기준 결과값 (Map<String, String>) 추가후 [" + addString + "]:추가 = "  + posRule9.getRuleResultMap(i)  );
}
System.out.println("-------------------------------------------------------------------");
System.out.println("업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = " + posRule9.getRuleResultAll() );
System.out.println("-------------------------------------------------------------------");

출력 결과

---------------------------------------------------------------------
업무기준 헤드 정보(String)                = Master Type : Business Rule
ID : RGA00008
Version : 1
Master Name : BMI(비만도)기준
Detail Type : Relative Condition
Expiration Period : 2014-03-24 00:00:00.0 ~ 2999-12-31 23:59:00.0
---------------------------------------------------------------------
업무기준 항목ID 목록(List<String>)        = [BMI]
---------------------------------------------------------------------
업무기준 결과값(Map<String, String>) = {BMI=정상}
---------------------------------------------------------------------
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {BMI=정상}
업무기준 결과값 (Map<String, String>) 추가후 [없음]:추가 = {BMI=없음}
---------------------------------------------------------------------
업무기준 모든 결과값(List<LinkedHashMap<String, String>>)  2 = === Header Information ===
Master Type : Business Rule
ID : RGA00008
Version : 1
Master Name : BMI(비만도)기준
Detail Type : Relative Condition
Expiration Period : 2014-03-24 00:00:00.0 ~ 2999-12-31 23:59:00.0
=== Business Rule Information ===
{BMI=정상}
{BMI=없음}

---------------------------------------------------------------------