📄 crfile.cpp
字号:
#include "../h/crfile.h"
int main( int argc, char **argv )
{
int i;
if ( argc != 4 )
{
printf( "Usage: crfile gateway tracefile envfile\n" );
return ( -1);
}
if ( ( ffp = fopen( argv[2], "a+" ) ) == NULL )
{
printf( "open tracefile %s err!\n", argv[2] );
return ( -1);
}
if ( i = Get_All_Env( argv[3] ) )
{
sprintf( tmpss, "Get_All_Env %s Err! Code=%d=", argv[3], i );
PTrace( TIMEDEBUG, tmpss );
return ( -1);
}
while ( 1 )
{
if ( i = Deal_Proc() )
{
sprintf( tmpss, "Deal Proc Err! Code=%d=", i );
PTrace( TIMEDEBUG, tmpss );
return ( -1);
}
sleep( STime );
}
fclose(ffp);
return (0);
}
int Get_All_Env( char *envfile )
{
int i;
char ss[80], dbfile[200];
char DBName[80], DBSid[80];
sprintf(tmpss, "\n### Create Meter Bill Program,Complete at 2003-2-14 ###");
PTrace( DEBUG, tmpss );
sprintf(tmpss, "########## Copyright 2003 Poson Company. ##########\n");
PTrace( DEBUG, tmpss );
strcpy( ss, "LOCAL_CODE" );
if ( GetEnv( envfile, ss ) )
return ( -1);
strcpy( LNet, RtnBuf[0] );
strcpy( ss, "MODULE_ID" );
if ( GetEnv( envfile, ss ) )
return ( -1);
Module_ID = atoi( RtnBuf[0] );
strcpy( ss, "SLEEPTIME" );
if ( GetEnv( envfile, ss ) )
return ( -1);
STime = atoi( RtnBuf[0] );
strcpy( ss, "DATABASEFILE" );
if ( GetEnv( envfile, ss ) )
return ( -1);
strcpy( dbfile, RtnBuf[0] );
strcpy( ss, "UNAME" );
if ( GetEnv( dbfile, ss ) )
return ( -1);
strcpy( DBName, RtnBuf[0] );
strcpy( ss, "SID" );
if ( GetEnv( dbfile, ss ) )
return ( -1);
strcpy( DBSid, RtnBuf[0] );
if ( ConnectDB( DBName, DBSid ) )
return ( -1);
if ( Search_Module( Module_ID, LNet ) )
return ( -1);
if ( Search_Local_Exchange( LNet ) )
return ( -2);
sprintf( tmpss, "LOCAL_CODE=%s=", LNet );
PTrace( DEBUG, tmpss );
sprintf( tmpss, "MODULE_ID=%d=", Module_ID );
PTrace( DEBUG, tmpss );
sprintf( tmpss, "SLEEPTIME=%d=", STime );
PTrace( DEBUG, tmpss );
sprintf( tmpss, "\n###################################################\n" );
PTrace( DEBUG, tmpss );
return (0);
}
int Deal_Proc()
{
int i, j;
char _ecode[80];
for ( i = 0;i < Net2Exch.Exch_Num;i++ )
{
strcpy( _ecode, Net2Exch.Exchange_Code[i] );
if ( j = Search_InPut_Tab( _ecode, i ) )
{
sprintf( tmpss, "Search Input Tab %s Err! Code=%d=", _ecode, j );
PTrace( TIMEDEBUG, tmpss );
return ( -1);
}
sprintf( tmpss, "Deal Proc End !!!" );
PTrace( TIMEDEBUG, tmpss );
}
return (0);
}
int Deal_File( char *fname, int _nn )
{
int i, j;
long CNums;
char f1[800], f2[800];
File_Create _fc;
sprintf( f1, "%s%s%s", Net2Exch.Exch_Dir[_nn], IN_MDir, fname );
if ( i = CheckFileSize( f1 ) )
return (i);
sprintf( f1, "%s%s", Net2Exch.Exch_Dir[_nn], OUT_MDir );
if ( _fc.Set_Env( f1 ) )
{
sprintf( tmpss, "Set Env OutPut Dir %s Err!", f1 );
PTrace( TIMEDEBUG, tmpss );
return ( -1);
}
sprintf( f1, "%s%s", Net2Exch.Exch_Dir[_nn], IN_MDir );
if ( j = _fc.CreateFile( f1, fname ) )
{
sprintf( tmpss, "Create File %s%s Err!code=%d=", f1, fname, j );
PTrace( TIMEDEBUG, tmpss );
for ( i = 0;i < _fc.CDir_Nums;i++ )
{
sprintf( f1, "%s%s", _fc.Complete_Dir[i], fname );
unlink( f1 );
j = strlen( f1 );
f1[j - 4] = 0;
sprintf( f2, "%s.IDX", f1 );
unlink( f2 );
}
return ( -1);
}
strcpy( f1, Net2Exch.Exchange_Code[_nn] );
FileLen = _fc.File_Lens;
for ( i = 0;i < _fc.CDir_Nums;i++ )
{
strcpy( f2, _fc.Complete_Dir[i] );
if ( Insert_Complete_Info( f2, fname, f1 ) )
{
sprintf( tmpss, "Insert Complete_Info %s %s %s", f2, fname, f1 );
PTrace( TIMEDEBUG, tmpss );
return ( -2);
}
}
return (0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -