📄 wca6520.pc
字号:
/*-------------------------------------------------------------------------------------------*
* 岥嵗怳懼忣曬僥乕僽儖僇乕僜儖僆乕僾儞張棟
*-------------------------------------------------------------------------------------------*/
WCA_DEBUG(DEF_PROG_ID, "****** 岥嵗怳懼忣曬僥乕僽儖僇乕僜儖僆乕僾儞張棟 ******\n");
/*--- WHERE嬪偺愝掕 ---*/
if (0 == strcmp(st_wcacalpkt.eigyobi_kbn, "0")) {
sprintf(wk_where, "UKEW_YMD = TO_NUMBER('%s') AND "
"FURIKAE_SIME_KBN >= '2' AND "
"SHORI_JOKYO_KBN = '3' AND "
"FURIKAE_SHORI_ERR_CD = ' '", st_wcacalpkt.shori_ymd);
} else {
sprintf(wk_where, "UKEW_YMD = TO_NUMBER('%s') AND "
"FURIKAE_SIME_KBN >= '2' AND "
"SHORI_JOKYO_KBN = '3' AND "
"FURIKAE_SHORI_ERR_CD = ' '", st_wcacalpkt.shoribi_ye2);
}
WCA_DEBUG(DEF_PROG_ID, "WHERE嬪 = [%s]\n", wk_where);
/*--- ORDER嬪偺愝掕 ---*/
strcpy(wk_order, "USER_CD, FURIKAE_SHORI_TUBAN");
WCA_DEBUG(DEF_PROG_ID, "ORDER嬪 = [%s]\n", wk_order);
if (CNS_RTN_NORMAL != wcatkzfj_fetch(&st_wcaerrpkt, DEF_FMODE_OPEN,
wk_where, wk_order, NULL)) {
WCA_DEBUG(DEF_PROG_ID, "岥嵗怳懼忣曬僥乕僽儖僇乕僜儖僆乕僾儞僄儔乕\n");
st_wcaerrpkt.position_main = __LINE__;
wk_myrtn = CNS_EXIT_ERROR;
goto PROG_END;
}
wk_wcatkzfj_open_flag = CNS_ON;
/*-------------------------------------------------------------------------------------------*
* 岥嵗怳懼忣曬僥乕僽儖僇乕僜儖僼僃僢僠張棟
*-------------------------------------------------------------------------------------------*/
WCA_DEBUG(DEF_PROG_ID, "****** 岥嵗怳懼忣曬僥乕僽儖僇乕僜儖僼僃僢僠張棟 ******\n");
memset(&st_wcatkzfj, '\0', sizeof (struct tag_wcatkzfj));
while (CNS_RTN_NORMAL == (wk_zfj_rtn = wcatkzfj_fetch(&st_wcaerrpkt, DEF_FMODE_FETCH,
NULL, NULL, &st_wcatkzfj))) {
WCA_DEBUG(DEF_PROG_ID, "岥嵗怳懼忣曬僥乕僽儖僇乕僜儖僼僃僢僠庢摼惓忢\n");
strcpy(st_wcaerrpkt.user_cd, st_wcatkzfj.user_cd);
strcpy(st_wcaerrpkt.koza_no, st_wcatkzfj.koza_no);
sprintf(st_wcaerrpkt.free_msg, "NO='%s'", st_wcatkzfj.furikae_shori_tuban);
wk_wcatkzfj_fetch_cnt++;
WCA_DEBUG(DEF_PROG_ID, "僼僃僢僠審悢儚乕僋 = [%ld]\n", wk_wcatkzfj_fetch_cnt);
WCA_DEBUG(DEF_PROG_ID, "嫟捠僄儔乕僷働僢僩.儐乕僓僐乕僪 = [%s]\n", st_wcaerrpkt.user_cd);
WCA_DEBUG(DEF_PROG_ID, "嫟捠僄儔乕僷働僢僩.岥嵗斣崋 = [%s]\n", st_wcaerrpkt.koza_no);
WCA_DEBUG(DEF_PROG_ID, "嫟捠僄儔乕僷働僢僩.僼儕乕儊僢僙乕僕 = [%s]\n",
st_wcaerrpkt.free_msg);
/*---------------------------------------------------------------------------------------*
* 儕傾儖岥怳張棟捠斣庢摼張棟
*---------------------------------------------------------------------------------------*/
WCA_DEBUG(DEF_PROG_ID, "****** 儕傾儖岥怳張棟捠斣庢摼張棟 ******\n");
memset(wk_sequence, '\0', sizeof (wk_sequence));
EXEC SQL
SELECT
TO_CHAR(WCARKFSQ01.NEXTVAL, 'FM00009')
INTO
:wk_sequence
FROM DUAL;
if (CNS_ORA_NORMAL != sqlca.sqlcode) {
WCA_DEBUG(DEF_PROG_ID, "儕傾儖岥怳張棟捠斣庢摼張棟僄儔乕\n");
lf_errpkt_set_ora(&st_wcaerrpkt, "DUAL", DEF_WCERRCD_SELECT, __LINE__);
wk_myrtn = CNS_EXIT_ERROR;
goto PROG_END;
}
WCA_DEBUG(DEF_PROG_ID, "儕傾儖岥怳張棟捠斣:[%s]\n", wk_sequence);
/*---------------------------------------------------------------------------------------*
* 岥嵗怳懼娗棟僥乕僽儖峔憿懱曇廤張棟(僼僃僢僠NORMAL)
*---------------------------------------------------------------------------------------*/
WCA_DEBUG(DEF_PROG_ID, "****** 岥嵗怳懼娗棟僥乕僽儖峔憿懱曇廤張棟 ******\n");
lf_set_kzfk_nml(&st_wcacalpkt, &st_wcatkzfj, &st_wcatkzfk, wk_sequence,
wk_batch_sup_count, wk_process_grp_add);
/*---------------------------------------------------------------------------------------*
* 岥嵗怳懼娗棟僥乕僽儖僀儞僒乕僩張棟
*---------------------------------------------------------------------------------------*/
WCA_DEBUG(DEF_PROG_ID, "****** 岥嵗怳懼娗棟僥乕僽儖僀儞僒乕僩張棟 ******\n");
if (CNS_RTN_NORMAL != wcadbinsert(&st_wcaerrpkt, "WCATKZFK", &st_wcatkzfk)) {
WCA_DEBUG(DEF_PROG_ID, "岥嵗怳懼娗棟僥乕僽儖僀儞僒乕僩僄儔乕\n");
lf_errpkt_set_ora(&st_wcaerrpkt, "WCATKZFK", DEF_WCERRCD_INSERT, __LINE__);
wk_myrtn = CNS_EXIT_ERROR;
goto PROG_END;
}
wk_wcatkzfk_insert_cnt++;
WCA_DEBUG(DEF_PROG_ID, "彂偒崬傒審悢儚乕僋 = [%ld]\n", wk_wcatkzfk_insert_cnt);
/*---------------------------------------------------------------------------*
* 晹暘僐儈僢僩張棟
*----------------------------------------------------------------------------*/
WCA_DEBUG(DEF_PROG_ID, "僼僃僢僠審悢儚乕僋 = [%ld]\n", wk_wcatkzfj_fetch_cnt);
WCA_DEBUG(DEF_PROG_ID, "僐儈僢僩億僀儞僩 = [%ld]\n", wk_commit_point);
if (0 == (wk_wcatkzfj_fetch_cnt % wk_commit_point)) {
WCA_DEBUG(DEF_PROG_ID, "****** 晹暘僐儈僢僩張棟 ******\n");
if (CNS_RTN_NORMAL != wcacomt(&st_wcaerrpkt)) {
WCA_DEBUG(DEF_PROG_ID, "晹暘僐儈僢僩張棟僄儔乕\n");
st_wcaerrpkt.position_main = __LINE__;
wk_myrtn = CNS_EXIT_ERROR;
goto PROG_END;
}
}
}
/*-------------------------------------------------------------------------------------------*
* 岥嵗怳懼娗棟僥乕僽儖峔憿懱僄儞僪儗僐乕僪曇廤張棟
*-------------------------------------------------------------------------------------------*/
WCA_DEBUG(DEF_PROG_ID, "****** 岥嵗怳懼娗棟僥乕僽儖峔憿懱僄儞僪儗僐乕僪曇廤張棟 ******\n");
WCA_DEBUG(DEF_PROG_ID, "僼僃僢僠張棟偺栠傝抣 = [%d]\n", wk_zfj_rtn);
switch (wk_zfj_rtn) {
case CNS_RTN_NOTFOUND :
WCA_DEBUG(DEF_PROG_ID, "僼僃僢僠CNS_RTN_NOTFOUND\n");
lf_set_kzfk_nfd(&st_wcacalpkt, &st_wcatkzfj, &st_wcatkzfk, wk_batch_sup_count);
break ;
case CNS_RTN_NORECORD :
WCA_DEBUG(DEF_PROG_ID, "僼僃僢僠CNS_RTN_NORECORD\n");
lf_set_kzfk_nrd(&st_wcacalpkt, &st_wcatkzfk, wk_batch_sup_count);
break ;
default :
WCA_DEBUG(DEF_PROG_ID, "岥嵗怳懼忣曬僥乕僽儖僇乕僜儖僼僃僢僠張棟僄儔乕\n");
st_wcaerrpkt.position_main = __LINE__;
wk_myrtn = CNS_EXIT_ERROR;
goto PROG_END;
}
/*-------------------------------------------------------------------------------------------*
* 岥嵗怳懼娗棟僥乕僽儖僀儞僒乕僩張棟
*-------------------------------------------------------------------------------------------*/
WCA_DEBUG(DEF_PROG_ID, "****** 岥嵗怳懼娗棟僥乕僽儖僀儞僒乕僩張棟 ******\n");
if (CNS_RTN_NORMAL != wcadbinsert(&st_wcaerrpkt, "WCATKZFK", &st_wcatkzfk)) {
WCA_DEBUG(DEF_PROG_ID, "岥嵗怳懼娗棟僥乕僽儖僀儞僒乕僩僄儔乕\n");
lf_errpkt_set_ora(&st_wcaerrpkt, "WCATKZFK", DEF_WCERRCD_INSERT, __LINE__);
wk_myrtn = CNS_EXIT_ERROR;
goto PROG_END;
}
wk_wcatkzfk_insert_cnt++;
WCA_DEBUG(DEF_PROG_ID, "彂偒崬傒審悢儚乕僋 = [%ld]\n", wk_wcatkzfk_insert_cnt);
/*-------------------------------------------------------------------------------------------*
* 廔椆張棟
*-------------------------------------------------------------------------------------------*/
PROG_END:
/*--- 岥嵗怳懼忣曬僥乕僽儖僇乕僜儖偺僋儘乕僘 ---*/
if (wk_wcatkzfj_open_flag == CNS_ON) {
WCA_DEBUG(DEF_PROG_ID, "****** 岥嵗怳懼忣曬僥乕僽儖僇乕僜儖僋儘乕僘張棟 ******\n");
wcaerrpkt_init(&st_wcaerrpkt_wk);
if (CNS_RTN_NORMAL != wcatkzfj_fetch(&st_wcaerrpkt, DEF_FMODE_CLOSE, NULL, NULL, NULL)) {
if (CNS_EXIT_NORMAL == wk_myrtn) {
st_wcaerrpkt_wk.position_main = __LINE__;
st_wcaerrpkt = st_wcaerrpkt_wk;
wk_myrtn = CNS_EXIT_ERROR;
}
}
}
/*--- Oracle偺儘僌僆僼 ---*/
wcaerrpkt_init(&st_wcaerrpkt_wk);
if (CNS_RTN_NORMAL != wcalogoff(&st_wcaerrpkt_wk, wk_myrtn)) {
if (CNS_EXIT_NORMAL == wk_myrtn) {
WCA_DEBUG(DEF_PROG_ID, "Oracle偺儘僌僆僼僄儔乕\n");
st_wcaerrpkt_wk.position_main = __LINE__;
st_wcaerrpkt = st_wcaerrpkt_wk;
wk_myrtn = CNS_EXIT_ERROR;
}
}
/*--- 僶僢僠廔椆儊僢僙乕僕偺弌椡 ---*/
strcpy(st_wcamsge.prog_id, DEF_PROG_ID);
st_wcamsge.rtn_cd = wk_myrtn;
st_wcamsge.from_number = 0;
st_wcamsge.to_number = 0;
wcamsge(&st_wcamsge);
/*--- 張棟審悢偺弌椡 ---*/
strcpy(st_wcamsgcnt.st_inf[0].name, "WCATKZFJ");
strcpy(st_wcamsgcnt.st_inf[0].type, "FETCH");
st_wcamsgcnt.st_inf[0].rec_cnt = wk_wcatkzfj_fetch_cnt;
strcpy(st_wcamsgcnt.st_inf[1].name, "WCATKZFK");
strcpy(st_wcamsgcnt.st_inf[1].type, "INSERT");
st_wcamsgcnt.st_inf[1].rec_cnt = wk_wcatkzfk_insert_cnt;
wcamsgcnt(&st_wcamsgcnt);
/*--- 堎忢廔椆張棟 ---*/
if (CNS_EXIT_NORMAL != wk_myrtn) {
wcamsgerr(&st_wcaerrpkt);
wcaerrpkt_init(&st_wcaerrpkt);
if (CNS_RTN_NORMAL != wcarolb(&st_wcaerrpkt)) {
WCA_DEBUG(DEF_PROG_ID, "堎忢廔椆張棟僄儔乕\n");
st_wcaerrpkt.position_main = __LINE__;
wcamsgerr(&st_wcaerrpkt);
}
}
/*--- 僨僶僢僌梡儊僢僙乕僕廔椆 ---*/
wcaMsgEnd(DEF_PROG_ID);
/*--- 僾儘僌儔儉廔椆 ---*/
exit(wk_myrtn);
}
/*************************************************************************************************
* 撪晹娭悢
*************************************************************************************************/
/*************************************************************************************************
* 娭悢柤 丗 lf_errpkt_set_env
* 婡擻奣梫 丗 嫟捠僄儔乕僷働僢僩偵抣傪僙僢僩偡傞丅乮娐嫬曄悢僄儔乕梡乯
* 栠傝抣 丗 側偟
*************************************************************************************************/
static void lf_errpkt_set_env(
struct tag_wcaerrpkt *pst_wcaerrpkt, /* 嫟捠僄儔乕僷働僢僩 */
long wk_position_main, /* 僄儔乕億僕僔儑儞乮儊僀儞乯 */
char *pwk_env_name /* 娐嫬曄悢柤 */
) {
strcpy(pst_wcaerrpkt->sub_module_id, "getenv");
pst_wcaerrpkt->position_main = wk_position_main;
pst_wcaerrpkt->return_cd = CNS_EXIT_ERROR;
strcpy(pst_wcaerrpkt->prog_src_id, __FILE__);
sprintf(pst_wcaerrpkt->free_msg, "ENV-NAME=[%s]", pwk_env_name);
return ;
}
/*************************************************************************************************
* 娭悢柤 丗 lf_errpkt_set_ora
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -