조회에 변수를 사용하여 데이터 필터링

조회 결과에서 조회 기준에 일치하는 오브젝트를 리턴합니다. 변수 값에 따라 결과를 필터링하고자 할 수도 있습니다.

이 타스크의 수행 목적 및 시기

런타임 시 프로세스에 의해 사용되는 변수를 프로세스 모델에 정의할 수 있습니다. 해당 변수에 대해 조회할 수 있는 변수를 선언합니다.

예를 들어, John Smith는 자신의 보험 회사의 서비스 센터에 전화를 걸어 자신의 사고 차량의 보험 청구 진행 상태를 알아보고자 합니다. 청구 관리자는 고객 ID를 사용하여 청구서를 찾습니다.

이 타스크의 단계

  1. 옵션: 조회할 수 있는 프로세스의 변수 특성을 나열하십시오.

    프로세스 템플리트 ID를 사용하여 프로세스를 식별하십시오. 조회할 수 있는 변수를 알 경우 이 단계를 생략할 수 있습니다.

    List variableProperties = process.getQueryProperties(ptid);
    for (int i = 0; i < variableProperties.size(); i++)
    {
       QueryProperty queryData = (QueryProperty)variableProperties.get(i);
       String variableName = queryData.getVariableName(); 
       String name         = queryData.getName();
       int mappedType      = queryData.getMappedType(); 
       ...
    } 
                 
  2. 필터 기준에 일치하는 변수를 갖는 프로세스 인스턴스를 나열하십시오.

    이 프로세스에서 고객 ID는 조회할 수 있는 customerClaim 변수의 일부로 모델화됩니다. 따라서 고객 ID를 사용하여 청구서를 찾을 수 있습니다.

    QueryResultSet result = process.query
        ("PROCESS_INSTANCE.NAME, QUERY_PROPERTY.STRING_VALUE",
    		   "QUERY_PROPERTY.VARIABLE_NAME = 'customerClaim' AND " + 
    		   "QUERY_PROPERTY.NAME = 'customerID' AND " +
    		   "QUERY_PROPERTY.STRING_VALUE like 'Smith%'",
          (String)null, (Integer)null, 
          (Integer)null, (TimeZone)null );
    이 조치는 프로세스 인스턴스 이름 및 Smith로 시작하는 ID를 가진 고객의 고객 ID 값을 포함하는 조회 결과 세트를 리턴합니다.
관련 참조
QUERY_PROPERTY 보기

ⓒ Copyright IBM Corporation 2005, 2006.
이 Information Center는 Eclipse 기술을 기반으로 합니다. (http://www.eclipse.org)