📄 cmgetdb.pc
字号:
v_LAPDbiepcm=tDropPcm[0].m_RelBiePcm;
v_LAPDticts=tRDropCom[0].m_BieTsOut;
v_LAPDbiesubts=tRDropCom[0].m_BieSubTsOut;
}
}while(v_LAPDphysiteid!=tRBieCom[0].m_DestPSiteId);
PrintMsg((PCHAR)"LINKTYPE=%d\n",linktype3);
str.Format((PCHAR)"LINKTYPE=%d\n",linktype3);
pfFile->Write(str, str.GetLength());
linktype3 = 0;
}
EXEC SQL CLOSE cur3;
return sqlca.sqlcode;
notfoundLAPD:
PrintMsg((PCHAR)"LINKTYPE=%d\n",linktype3);
str.Format((PCHAR)"LINKTYPE=%d\n",linktype3);
pfFile->Write(str, str.GetLength());
linktype3 = 0;
EXEC SQL CLOSE cur3;
return sqlca.sqlcode;
}
/********************************************************************
*函数名称: ReadLapdFromDataBase1()
*函数功能: 显示LAPD接续关系(包括带级链情况)
*输入参数: BSCID
*输出参数:
*实现算法:
*作者/日期: /2001-02-20
*修改记录:
********************************************************************/
CReadCircuit::ReadLapdFromDataBase1( WORD16 m_BscId)
{
int count;
PrintMsg((PCHAR)"[COMM]\n");
str.Format((PCHAR)"[COMM]\n");
pfFile->Write(str, str.GetLength());
PrintMsg((PCHAR)"TYPE=LAPD,");
str.Format((PCHAR)"TYPE=LAPD,");
pfFile->Write(str, str.GetLength());
PrintMsg((PCHAR)"BSCID=%d\n",m_BscId);
str.Format((PCHAR)"BSCID=%d\n",m_BscId);
pfFile->Write(str, str.GetLength());
EXEC SQL BEGIN DECLARE SECTION;
char * RR_Lapd1 ="SELECT SITEID,BTSID,TRXID,INSTANCEID,CSLOTNO,BCH,TEI FROM R_LAPD WHERE BSCID=:para0 ";
int linktype1;
int m_Temp1;
EXEC SQL END DECLARE SECTION;
EXEC SQL WHENEVER SQLERROR DO SqlError();
memset(m_InPut1,0,sizeof(m_InPut1));
m_InPut1[0] = m_BscId;
count=0;
linktype1=0;
EXEC SQL WHENEVER NOT FOUND GOTO notfoundLAPD;
EXEC SQL PREPARE S FROM :RR_Lapd1;
EXEC SQL DECLARE cur1 CURSOR FOR S;
EXEC SQL EXECUTE S USING :m_InPut1[0];
EXEC SQL OPEN cur1;
//第1重循环
EXEC SQL WHENEVER NOT FOUND DO break;
for(; ;)
{
//1
EXEC SQL FETCH cur1 INTO :tRR_Lapd1;
PrintMsg((PCHAR)"\n[LAPD_%d]\nsiteid = %d,btsid = %d, trxid= %d, \nLAPDBOARD:CSlotNo = %d,BCH=%d,TEI=%d,",(++count),tRR_Lapd1.m_SiteId,tRR_Lapd1.m_btsid,tRR_Lapd1.m_trxid,tRR_Lapd1.m_CSlot,tRR_Lapd1.m_Bch,tRR_Lapd1.m_Tei);
str.Format((PCHAR)"\n[LAPD_%d]\nsiteid = %d,btsid = %d, trxid= %d, \nLAPDBOARD:CSlotNo = %d,BCH=%d,TEI=%d,",(count),tRR_Lapd1.m_SiteId,tRR_Lapd1.m_btsid,tRR_Lapd1.m_trxid,tRR_Lapd1.m_CSlot,tRR_Lapd1.m_Bch,tRR_Lapd1.m_Tei);
pfFile->Write(str, str.GetLength());
//2
//EXEC SQL WHENEVER NOT FOUND GOTO notfoundLAPD;
EXEC SQL SELECT PARENTINSTANCEID
INTO :m_Temp1
FROM MOINFO
WHERE INSTANCEID = :tRR_Lapd1.m_Instanceid;
/*PrintMsg((PCHAR)"InstanceId = %d\n",m_Temp1);
str.Format((PCHAR)"InstanceId = %d\n",m_Temp1);
pfFile->Write(str, str.GetLength());*/
//3
//EXEC SQL WHENEVER NOT FOUND GOTO notfoundLAPD;
EXEC SQL SELECT RACKNO,SHELFNO
INTO :tRR_Board
FROM R_CBOARD
WHERE INSTANCEID = :m_Temp1;
PrintMsg((PCHAR)"RackNo = %d,ShelfNo=%d\n",tRR_Board.m_RackNo,tRR_Board.m_ShelfNo);
str.Format((PCHAR)"RackNo = %d,ShelfNo=%d\n",tRR_Board.m_RackNo,tRR_Board.m_ShelfNo);
pfFile->Write(str, str.GetLength());
//4
//EXEC SQL WHENEVER NOT FOUND GOTO notfoundLAPD;
EXEC SQL SELECT BIPPMUNIT,BIPPUNIT,BIPPHW,BIPPTS,FARHW,FARTS,TICUNIT,TICPCM,TICTS
INTO :tRR_BsCom_Lapd
FROM R_BSCOM_LAPD
WHERE BSCID=:m_InPut1[0] AND RACKNO =:tRR_Board.m_RackNo AND SHELFNO = :tRR_Board.m_ShelfNo AND CSLOTNO = :tRR_Lapd1.m_CSlot AND BCH = :tRR_Lapd1.m_Bch;
PrintMsg((PCHAR)"BIPPBORAD:BIPPMUNIT=%d,BIPPUNIT=%d,BIPPHW=%d,BIPPTS=%d,\nConeection between BIPP and TIC:FARHW=%d,FARTS=%d,\nTIC:TICUNIT=%d,TICPCM=%d,TICTS=%d\n",tRR_BsCom_Lapd.m_BippMUnit,tRR_BsCom_Lapd.m_BippUnit,tRR_BsCom_Lapd.m_BippHw,tRR_BsCom_Lapd.m_BippTs,tRR_BsCom_Lapd.m_FarHw,tRR_BsCom_Lapd.m_FarTs,tRR_BsCom_Lapd.m_TicUnit,tRR_BsCom_Lapd.m_TicPcm,tRR_BsCom_Lapd.m_TicTs);
str.Format((PCHAR)"BIPPBOARD:BIPPMUNIT=%d,BIPPUNIT=%d,BIPPHW=%d,BIPPTS=%d,\nConeection between BIPP and TIC:FARHW=%d,FARTS=%d,\nTIC:TICUNIT=%d,TICPCM=%d,TICTS=%d\n",tRR_BsCom_Lapd.m_BippMUnit,tRR_BsCom_Lapd.m_BippUnit,tRR_BsCom_Lapd.m_BippHw,tRR_BsCom_Lapd.m_BippTs,tRR_BsCom_Lapd.m_FarHw,tRR_BsCom_Lapd.m_FarTs,tRR_BsCom_Lapd.m_TicUnit,tRR_BsCom_Lapd.m_TicPcm,tRR_BsCom_Lapd.m_TicTs);
pfFile->Write(str, str.GetLength());
//5
//EXEC SQL WHENEVER NOT FOUND GOTO notfoundLAPD;
EXEC SQL SELECT PHYSITENO,RACKNO,BIEPCM
INTO :tR_BPcm
FROM R_BPCM
WHERE BSCID=:m_InPut1[0] AND MUNIT =: tRR_BsCom_Lapd.m_BippMUnit AND UNIT =: tRR_BsCom_Lapd.m_TicUnit AND PCM =: tRR_BsCom_Lapd.m_TicPcm;
PrintMsg((PCHAR)"BTS:PHYSITENO=%d,RACK=%d,BIEPCM=%d\n",tR_BPcm.m_PhySiteId,tR_BPcm.m_BieRack,tR_BPcm.m_BiePcm);
str.Format((PCHAR)"BTS:PHYSITENO=%d,RACK=%d,BIEPCM=%d\n",tR_BPcm.m_PhySiteId,tR_BPcm.m_BieRack,tR_BPcm.m_BiePcm);
pfFile->Write(str, str.GetLength());
v_LAPDphysiteid=tR_BPcm.m_PhySiteId;
v_LAPDbierack=tR_BPcm.m_BieRack;
v_LAPDbiepcm=tR_BPcm.m_BiePcm;
v_LAPDticts=tRR_BsCom_Lapd.m_TicTs;
v_LAPDbiesubts=(255-tRR_Lapd1.m_Tei);
EXEC SQL WHENEVER NOT FOUND DO break;
do{
//6
if(tRBieCom[0].m_DestPSiteId!=v_LAPDphysiteid )
{
if(tRR_Lapd1.m_btsid == 0 && tRR_Lapd1.m_trxid == 0 )
{
//EXEC SQL WHENEVER NOT FOUND GOTO notfoundLAPD;
EXEC SQL SELECT BIEPCMOUT,BIETSOUT,BIESUBTSOUT
INTO :tRDropCom[0]
FROM T_DROPCOM
WHERE BSCID =:m_InPut2[0] AND PSITEID =:v_LAPDphysiteid AND RACKNO =:v_LAPDbierack AND BIEPCMIN =:v_LAPDbiepcm AND BIETSIN =:v_LAPDticts AND BIESUBTSIN =:v_LAPDbiesubts;
PrintMsg((PCHAR)"BIEPCMOUT_%d=%d,BIETSOUT_%d=%d,BIESUBTSOUT_%d=%d\n",(++linktype1),tRDropCom[0].m_BiePcmOut,(++linktype1),tRDropCom[0].m_BieTsOut,(++linktype1),tRDropCom[0].m_BieSubTsOut);
str.Format((PCHAR)"BIEPCMOUT_%d=%d,BIETSOUT_%d=%d,BIESUBTSOUT_%d=%d\n",(++linktype1),tRDropCom[0].m_BiePcmOut,(++linktype1),tRDropCom[0].m_BieTsOut,(++linktype1),tRDropCom[0].m_BieSubTsOut);
pfFile->Write(str, str.GetLength());
//7
v_LAPDbiepcm = tRDropCom[0].m_BiePcmOut;
//EXEC SQL WHENEVER NOT FOUND GOTO notfoundLAPD;
EXEC SQL SELECT RELPSITEID,RELRACKNO,RELBIEPCM
INTO :tDropPcm[0]
FROM T_BIEDROPPCM
WHERE BSCID = :m_InPut2[0] AND PSITEID =:v_LAPDphysiteid AND RACKNO =:v_LAPDbierack AND BIEPCM =:v_LAPDbiepcm;
PrintMsg((PCHAR)"RELPSITEID_%d=%d,RELRACKNO_%d=%d,RELBIEPCM_%d=%d\n",(++linktype1),tDropPcm[0].m_RelPSiteid,(++linktype1),tDropPcm[0].m_RelRackNo,(++linktype1),tDropPcm[0].m_RelBiePcm);
str.Format((PCHAR)"RELPSITEID_%d=%d,RELRACKNO_%d=%d,RELBIEPCM_%d=%d\n",(++linktype1),tDropPcm[0].m_RelPSiteid,(++linktype1),tDropPcm[0].m_RelRackNo,(++linktype1),tDropPcm[0].m_RelBiePcm);
pfFile->Write(str, str.GetLength());
}
else
{
EXEC SQL SELECT RELPSITEID,RELRACKNO,RELBIEPCM
INTO :tDropPcm[0]
FROM T_BIEDROPPCM
WHERE BSCID = :m_InPut2[0] AND PSITEID =:v_LAPDphysiteid AND RACKNO =:v_LAPDbierack AND BIEPCM =:v_LAPDbiepcm;
PrintMsg((PCHAR)"RELPSITEID_%d=%d,RELRACKNO_%d=%d,RELBIEPCM_%d=%d\n",(++linktype1),tDropPcm[0].m_RelPSiteid,(++linktype1),tDropPcm[0].m_RelRackNo,(++linktype1),tDropPcm[0].m_RelBiePcm);
str.Format((PCHAR)"RELPSITEID_%d=%d,RELRACKNO_%d=%d,RELBIEPCM_%d=%d\n",(++linktype1),tDropPcm[0].m_RelPSiteid,(++linktype1),tDropPcm[0].m_RelRackNo,(++linktype1),tDropPcm[0].m_RelBiePcm);
pfFile->Write(str, str.GetLength());
}
v_LAPDphysiteid=tDropPcm[0].m_RelPSiteid;
v_LAPDbierack=tDropPcm[0].m_RelRackNo;
v_LAPDbiepcm=tDropPcm[0].m_RelBiePcm;
v_LAPDticts=tRDropCom[0].m_BieTsOut;
v_LAPDbiesubts=tRDropCom[0].m_BieSubTsOut;
}
}while(v_LAPDphysiteid!=tRBieCom[0].m_DestPSiteId);
PrintMsg((PCHAR)"LINKTYPE=%d\n",linktype1);
str.Format((PCHAR)"LINKTYPE=%d\n",linktype1);
pfFile->Write(str, str.GetLength());
linktype1 = 0;
}
EXEC SQL CLOSE cur1;
return sqlca.sqlcode;
notfoundLAPD:
PrintMsg((PCHAR)"LINKTYPE=%d\n",linktype1);
str.Format((PCHAR)"LINKTYPE=%d\n",linktype1);
pfFile->Write(str, str.GetLength());
linktype1 = 0;
EXEC SQL CLOSE cur1;
return sqlca.sqlcode;
}
/********************************************************************
*函数名称: ReadAFromDataBase6()
*函数功能: 显示A口接续关系(包括带远端模块)
*输入参数: TIC板所在的:BSCID、RACKNO、SHELFNO、SLOTNO、PCMNO、TS
*输出参数:
*实现算法:
*作者/日期: /2001-02-20
*修改记录:
********************************************************************/
CReadCircuit::ReadAFromDataBase6(WORD16 byBscId,WORD16 byRackNo,WORD16 byShelfNo,WORD16 bySlotNo,WORD16 byPcmNo,WORD16 byTs)
{
int count;
PrintMsg((PCHAR)"[COMM]\n");
str.Format((PCHAR)"[COMM]\n");
pfFile->Write(str, str.GetLength());
PrintMsg((PCHAR)"TYPE=A,");
str.Format((PCHAR)"TYPE=A,");
pfFile->Write(str, str.GetLength());
PrintMsg((PCHAR)"BSCID=%d\n",byBscId);
str.Format((PCHAR)"BSCID=%d\n",byBscId);
pfFile->Write(str, str.GetLength());
EXEC SQL BEGIN DECLARE SECTION;
int m_BscId;
int m_RackNo;
int m_ShelfNo;
int m_SlotNo;
int m_PcmNo;
int m_TsNo;
EXEC SQL END DECLARE SECTION;
m_BscId = byBscId;
m_RackNo = byRackNo;
m_ShelfNo = byShelfNo;
m_SlotNo = bySlotNo;
m_PcmNo = byPcmNo;
m_TsNo = byTs;
count=0;
EXEC SQL WHENEVER NOT FOUND GOTO notfounda;
EXEC SQL SELECT MUNIT,UNIT
INTO :tBscBoard
FROM R_Board
WHERE BSCID =:m_BscId AND RACKNO =:m_RackNo AND SHELFNO =:m_ShelfNo AND SLOTNO =:m_SlotNo;
EXEC SQL SELECT AIPPHW,AIPPTS,TNETHW,TNETTS,TNETSUBTS,KIND
INTO :tATrunk
FROM R_ATRUNK
WHERE BSCID =:m_BscId AND MUNIT =:tBscBoard.m_Munit AND UNIT=:tBscBoard.m_Unit AND PCM =:m_PcmNo AND TS =: m_TsNo;
PrintMsg((PCHAR)"\n[A_%d]\nTIC:RACKNO = %d,SHELFNO = %d, SLOTNO= %d, PCMNO=%d,TS=%d,MUNIT=%d,UNIT=%d\n",(++count),m_RackNo,m_ShelfNo,m_SlotNo,m_PcmNo,m_TsNo,tBscBoard.m_Munit,tBscBoard.m_Unit);
str.Format((PCHAR)"\n[A_%d]\nTIC:RACKNO = %d,SHELFNO = %d, SLOTNO= %d, PCMNO=%d,TS=%d,MUNIT=%d,UNIT=%d\n",(count),m_RackNo,m_ShelfNo,m_SlotNo,m_PcmNo,m_TsNo,tBscBoard.m_Munit,tBscBoard.m_Unit);
pfFile->Write(str, str.GetLength());
PrintMsg((PCHAR)"Connection between AIPP and TIC: AIPPHW=%d,AIPPTS=%d,\nConnection between TCPP and Tnet:TNETHW=%d,TNETTS=%d,TNETSUTBS=%d,KIND=%d\n",tATrunk.m_AippHw,tATrunk.m_AippTs,tATrunk.m_TNetHw,tATrunk.m_TNetTs,tATrunk.m_TNetSubTs,tATrunk.m_Kind);
str.Format((PCHAR)"Connection between AIPP and TIC: AIPPHW=%d,AIPPTS=%d,\nConnection between TCPP and Tnet:TNETHW=%d,TNETTS=%d,TNETSUTBS=%d,KIND=%d\n",tATrunk.m_AippHw,tATrunk.m_AippTs,tATrunk.m_TNetHw,tATrunk.m_TNetTs,tATrunk.m_TNetSubTs,tATrunk.m_Kind);
pfFile->Write(str, str.GetLength());
EXEC SQL SELECT TCPPMUNIT,TCPPUNIT,TCPPHW,TCPPTS
INTO :tATsCom
FROM R_ATSCOM
WHERE BSCID =:m_BscId AND AIPPMUNIT =:tBscBoard.m_Munit AND AIPPUNIT= 0 AND AIPPHW =:tATrunk.m_AippHw AND AIPPTS =: tATrunk.m_AippTs;
PrintMsg((PCHAR)"TCPP:TCPPMUNIT=%d,TCPPUNIT=%d,TCPPHW=%d,TCPPTS=%d\n",tATsCom.m_TcppMUnit,tATsCom.m_TcppUnit,tATsCom.m_TcppHw,tATsCom.m_TcppTs);
str.Format((PCHAR)"TCPP:TCPPMUNIT=%d,TCPPUNIT=%d,TCPPHW=%d,TCPPTS=%d\n",tATsCom.m_TcppMUnit,tATsCom.m_TcppUnit,tATsCom.m_TcppHw,tATsCom.m_TcppTs);
pfFile->Write(str, str.GetLength());
//4
EXEC SQL SELECT UNIT,DSP
INTO :tATCCOM
FROM R_TCPOOL
WHERE TCPPMUNIT=:tATsCom.m_TcppMUnit AND TCPPUNIT=:tATsCom.m_TcppUnit AND TCPPHW=:tATsCom.m_TcppHw AND TCPPTS=:tATsCom.m_TcppTs;
PrintMsg((PCHAR)"DRT: DRTUNIT=%d,DSP=%d\n",tATCCOM.m_Unit,tATCCOM.m_DSP);
str.Format((PCHAR)"DRT: DRTUNIT=%d,DSP=%d\n",tATCCOM.m_Unit,tATCCOM.m_DSP);
pfFile->Write(str, str.GetLength());
if(tATrunk.m_Kind==2)
{
EXEC SQL SELECT CSLOTNO,BCH,COMMTNETHW,COMMTNETTS
INTO :tTsCom
FROM R_TSCOM
WHERE BSCID =:m_BscId AND TNETHW =:tATrunk.m_TNetHw AND TNETTS =:tATrunk.m_TNetTs;
PrintMsg((PCHAR)"MTPBOARD: CSLOTNO=%d,BCH=%d,COMMTNETHW=%d,COMMTNETTS=%d\n",tTsCom.m_CSlotNo,tTsCom.m_Bch,tTsCom.m_CommTNetHw,tTsCom.m_CommTNetTs);
str.Format((PCHAR)"MTPBOARD:CSLOTNO=%d,BCH=%d,COMMTNETHW=%d,COMMTNETTS=%d\n",tTsCom.m_CSlotNo,tTsCom.m_Bch,tTsCom.m_CommTNetHw,tTsCom.m_CommTNetTs);
pfFile->Write(str, str.GetLength());
}
//6
EXEC SQL WHENEVER NOT FOUND GOTO AStep1;
EXEC SQL SELECT FARSMPPMUNIT,FARSMPPUNIT,FARSMPPPCM,FARSMPPTS,FARSMPPSUBTS,FSPPHW1,FSPPTS1,FSPPHW2,FSPPTS2
INTO :tFSOM
FROM R_FSCOM
WHERE BSCID =:m_BscId AND TNETHW =:tATrunk.m_TNetHw AND TNETTS=:tATrunk.m_TNetTs AND TNETSUBTS=:tATrunk.m_TNetSubTs;
PrintMsg((PCHAR)"FARSMPPMUNIT=%d,FARSMPPUNIT=%d,FARSMPPPCM=%d,FARSMPPTS=%d,FARSMPPSUBTS=%d,FSPPHW1=%d,FSPPTS1=%d,FSPPHW2=%d,m_FSPPTS2=%d,\n",tFSOM.m_FARSMPPMUNIT,tFSOM.m_FARSMPPUNIT,tFSOM.m_FARSMPPPCM,tFSOM.m_FARSMPPTS,tFSOM.m_FARSMPPSUBTS,tFSOM.m_FSPPHW1,tFSOM.m_FSPPTS1,tFSOM.m_FSPPHW2,tFSOM.m_FSPPTS2);
str.Format((PCHAR)"FARSMPPMUNIT=%d,FARSMPPUNIT=%d,FARSMPPPCM=%d,FARSMPPTS=%d,FARSMPPSUBTS=%d,FSPPHW1=%d,FSPPTS1=%d,FSPPHW2=%d,m_FSPPTS2=%d,\n",tFSOM.m_FARSMPPMUNIT,tFSOM.m_FARSMPPUNIT,tFSOM.m_FARSMPPPCM,tFSOM.m_FARSMPPTS,tFSOM.m_FARSMPPSUBTS,tFSOM.m_FSPPHW1,tFSOM.m_FSPPTS1,tFSOM.m_FSPPHW2,tFSOM.m_FSPPTS2);
pfFile->Write(str, str.GetLength());
//7
EXEC SQL SELECT NEARSMPPMUNIT,NEARSMPPUNIT,NSPPHW,NSPPTS
INTO :tNSOM
FROM R_NSCOM
WHERE BSCID=:m_BscId AND TNETHW=:tATrunk.m_TNetHw AND TNETTS=:tATrunk.m_TNetTs;
PrintMsg((PCHAR)"NEARSMPPMUNIT=%d,NEARSMPPUNIT=%d,m_NSPPHW=%d,m_NSPPTS=%d\n",tNSOM.m_NEARSMPPMUNIT,tNSOM.m_NEARSMPPUNIT,tNSOM.m_NSPPHW,tNSOM.m_NSPPTS);
str.Format((PCHAR)"NEARSMPPMUNIT=%d,NEARSMPPUNIT=%d,m_NSPPHW=%d,m_NSPPTS=%d\n",tNSOM.m_NEARSMPPMUNIT,tNSOM.m_NEARSMPPUNIT,tNSOM.m_NSPPHW,tNSOM.m_NSPPTS);
pfFile->Write(str, str.GetLength());
AStep1:
return sqlca.sqlcode;
notfounda:
return sqlca.sqlcode;
}
/********************************************************************
*函数名称: ReadAFromDataBase1()
*函数功能: 显示A口接续关系(包括带远端模块)
*输入参数: TIC板所在的:BSCID
*输出参数:
*实现算法:
*作者/日期: /2001-02-20
*修改记录:
********************************************************************/
CReadCircuit::ReadAFromDataBase1(WORD16 byBscId)
{
int count;
count=0;
PrintMsg((PCHAR)"[COMM]\n");
str.Format((PCHAR)"[COMM]\n");
pfFile->Write(str, str.GetLength());
PrintMsg((PCHAR)"TYPE=A,");
str.Format((PCHAR)"TYPE=A,");
pfFile->Write(str, str.GetLength());
PrintMsg((PCHAR)"BSCID=%d\n",byBscId);
str.Format((PCHAR)"BSCID=%d\n",byBscId);
pfFile->Write(str, str.GetLength());
EXEC SQL BEGIN DECLARE SECTION;
int m_BscId;
int TICType;
int ShelfType;
char * R_A1 ="SELECT RACKNO FROM R_Board WHERE BSCID=:para0 AND BOARDTYPE=:para1";
char * R_A12="SELECT SLOTNO,MUNIT,UNIT FROM R_Board WHERE BSCID=:para0 AND RACKNO=:para1 AND SHELFNO=:para2 AND BOARDTYPE=:para3";
char * R_A13="SELECT PCM, TS, AIPPHW,AIPPTS,TNETHW,TNETTS,TNETSUBTS,KIND FROM R_ATRUNK WHERE BSCID =:para0 AND MUNIT =:para1 AND UNIT=:para2";
char * R_A14="SELECT SHELFNO FROM R_SHELF WHERE BSCID=:para0 AND RACKNO=:para1 AND SHELFTYPE=:para2";
EXEC SQL END DECLARE SECTION;
m_BscId = (int)byBscId;
TICType = 28;
ShelfType = 6;
EXEC SQL WHENEVER NOT FOUND GOTO notfounda;
EXEC SQL PREPARE A1 FROM :R_A1;
EXEC SQL DECLARE acur1 CURSOR FOR A1;
EXEC SQL EXECUTE A1 USING :m_BscId,:TICType;
EXEC SQL OPEN acur1;
EXEC SQL WHENEVER NOT FOUND DO break; //共四重循环
for(; ;)
{
//1 //这里有可能查出的是ABIS口的数据,导致2找不到而跳出!多条
EXEC SQL FETCH acur1 INTO :tAKBscBoard1;
//PrintMsg((PCHAR)"RackNo=%d, ",tAKBscBoard1.m_RackNo);
//补充1-1 得出shelfno 多条
EXEC SQL PREPARE A14 FROM :R_A14;
EXEC SQL DECLARE acur14 CURSOR FOR A14;
EXEC SQL EXECUTE A14 USING :m_BscId,:tAKBscBoard1.m_RackNo,:ShelfType;
EXEC SQL OPEN acur14;
EXEC SQL WHENEVER NOT FOUND DO break;
for(; ;)
{
EXEC SQL FETCH acur14 INTO :tSHELF1;
//PrintMsg((PCHAR)"ShelfNo=%d, ",tSHELF1.m_ShelfNo);
//补充1-2 多条 得出slotno
EXEC SQL PREPARE A12 FROM :R_A12;
EXEC SQL DECLARE acur12 CURSOR FOR A12;
EXEC SQL EXECUTE A12 USING :m_BscId,:tAKBscBoard1.m_RackNo,:tSHELF1.m_ShelfNo,:TICType;
EXEC SQL OPEN acur12;
EXEC SQL WHENEVER NOT FOUND DO break;
for(; ;)
{
EXEC SQL FETCH acur12 INTO :tABscBoard1;
//PrintMsg((PCHAR)"SLOTNO=%d,MUNIT=%d,UNIT=%d\n",tABscBoard1.m_SlotNo,tABscBoard1.m_Munit,tABscBoard1.m_Unit);
//2
EXEC SQL PREPARE A13 FROM :R_A13;
EXEC SQL DECLARE acur13 CURSOR FOR A13;
EXEC SQL EXECUTE A13 USING :m_BscId,:tABscBoard1.m_Munit,:tABscBoard1.m_Unit;
EXEC SQL OPEN acu
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -