/*
 * VL_STATUS.pgc - vl 모듈 서비스 VL_STATUS (one service = one file).
 * 기능: 서비스 상태 (전체 OPEN 의심거래 수, RC=0).
 * 기존 인라인 vl_svr.pgc에서 분리; caller의 XA 브랜치에서 실행(EXEC SQL CONNECT 없음).
 * vl_svr가 tpsvrinit에서 이 서비스를 tpadvertise 한다.
 */
#include "VL_STATUS.h"

void VL_STATUS(TPSVCINFO *p)
{
    UBFH *b = (UBFH *)p->data;
    EXEC SQL BEGIN DECLARE SECTION;
    long h_cnt;
    EXEC SQL END DECLARE SECTION;
    EXEC SQL SELECT count(*) INTO :h_cnt FROM vl_suspect WHERE status = 'OPEN';
    if (sqlca.sqlcode < 0) FAIL(b);
    setl(b, T_COUNT, h_cnt);
    setl(b, T_RC, 0);
    Bchg(b, T_MSG, 0, "vl 검증 서비스 정상", 0L);
    OK(b);
}
