📄 kssdset.h
字号:
//---------------------------------------------------------------------------
#ifndef KSSDSetH
#define KSSDSetH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <adodb.hpp>
#include <db.hpp>
#include <ScktComp.hpp>
#include "container.h"
#include <stdio.h>
//---------------------------------------------------------------------------
class TKSSDSet : public TThread
{
private:
HWND l_AOwner;
HWND l_Handle;
TADOQuery *l_HeadDataSet;
TADOQuery *l_ItemDataSet;
TADOQuery *l_Query;
TADOQuery *l_DQuery;
TADOStoredProc *l_StoredProc;
TADOConnection *l_SCnt;
TADOConnection *l_DCnt;
TCustomWinSocket *l_Socket;
AnsiString l_MidCode;
bool l_Active;
int l_Needvalid;
int l_Status;
int l_DataSetType;
AnsiString l_UserField;
AnsiString l_HeadSQLStr;
AnsiString l_ItemSQLStr;
AnsiString l_HeadWhereStr;
AnsiString l_ItemWhereStr;
AnsiString l_HeadOrderStr;
AnsiString l_ItemOrderStr;
AnsiString l_HeadDisplayName;
AnsiString l_ItemDisplayName;
TStringList *l_HeadLinkFields;
TStringList *l_ItemLinkFields;
TStringList *l_ServerBuffer;
AnsiString l_HeadKeyFields;
AnsiString l_ItemKeyFields;
AnsiString l_ClientDataSetHandle;
AnsiString l_HeadFileName;
AnsiString l_ItemFileName;
AnsiString l_QueryFileName;
public:
__fastcall TKSSDSet(bool CreateSuspended);
__fastcall TKSSDSet(HWND AOwner,TCustomWinSocket *Socket,AnsiString Clientid,AnsiString MidCode);
__fastcall ~TKSSDSet();
protected:
void __fastcall SDSetTerminate(TObject *Sender);
void __fastcall InitSDSet();
void __fastcall Execute();
void __fastcall AnalyzeStr();
void __fastcall WndProc(TMessage &Message);
void __fastcall Open(TKSStrData *stream);
void __fastcall Update(TKSStrData *stream);
void __fastcall Delete(TKSStrData *stream);
void __fastcall DeleteDetail(TKSStrData *stream);
void __fastcall CmdExec(TKSStrData *stream);
void __fastcall Check(TKSStrData *stream);
void __fastcall CloseOff(TKSStrData *stream);
void __fastcall Revoke(TKSStrData *stream);
void __fastcall Tally(TKSStrData *stream);
void __fastcall ExecSQL(TKSStrData *stream);
void __fastcall ValidateData(TKSStrData *stream);
void __fastcall QueryOpen(TKSStrData *stream);
void __fastcall QueryUpdate(TKSStrData *stream);
void __fastcall QueryDelete(TKSStrData *stream);
void __fastcall QueryExecSQL(TKSStrData *stream);
public:
__property AnsiString HeadSQLStr={read=GetHeadSQLStr,write=SetHeadSQLStr};
__property AnsiString ItemSQLStr={read=GetItemSQLStr,write=SetItemSQLStr};
__property AnsiString HeadWhereStr={read=GetHeadWhereStr,write=SetHeadWhereStr};
__property AnsiString ItemWhereStr={read=GetItemWhereStr,write=SetItemWhereStr};
__property AnsiString HeadOrderStr={read=GetHeadOrderStr,write=SetHeadOrderStr};
__property AnsiString ItemOrderStr={read=GetItemOrderStr,write=SetItemOrderStr};
__property AnsiString HeadKeyFields={read=GetHeadKeyFields,write=SetHeadKeyFields};
__property AnsiString ItemKeyFields={read=GetItemKeyFields,write=SetItemKeyFields};
__property AnsiString LinkFields={read=GetLinkFields,write=SetLinkFields};
__property AnsiString HeadSort={read=GetHeadSort,write=SetHeadSort};
__property AnsiString ItemSort={read=GetItemSort,write=SetItemSort};
__property AnsiString Filter={read=GetFilter,write=SetFilter};
__property bool Filtered={read=GetFiltered,write=SetFiltered};
__property TDataSetState HeadStatus={read=GetHeadStatus};
__property TDataSetState ItemStatus={read=GetItemStatus};
__property int DataSetType={read=GetDataSetType};
__property TADOQuery *Query={read=l_Query};
__property TADOConnection *Connection={read=GetConnection,write=SetConnection};
__property TADOConnection *BuildConn={read=GetBuildConn,write=SetBuildConn};
__property bool Active={read=GetActive,write=SetActive};
__property HWND LocalHandle={read=l_Handle};
private:
AnsiString __fastcall GetHeadSQLStr();
void __fastcall SetHeadSQLStr(AnsiString value);
AnsiString __fastcall GetItemSQLStr();
void __fastcall SetItemSQLStr(AnsiString value);
AnsiString __fastcall GetHeadWhereStr();
void __fastcall SetHeadWhereStr(AnsiString value);
AnsiString __fastcall GetItemWhereStr();
void __fastcall SetItemWhereStr(AnsiString value);
AnsiString __fastcall GetHeadOrderStr();
void __fastcall SetHeadOrderStr(AnsiString value);
AnsiString __fastcall GetItemOrderStr();
void __fastcall SetItemOrderStr(AnsiString value);
AnsiString __fastcall GetHeadKeyFields();
void __fastcall SetHeadKeyFields(AnsiString value);
AnsiString __fastcall GetItemKeyFields();
void __fastcall SetItemKeyFields(AnsiString value);
AnsiString __fastcall GetLinkFields();
void __fastcall SetLinkFields(AnsiString value);
AnsiString __fastcall GetHeadSort();
void __fastcall SetHeadSort(AnsiString value);
AnsiString __fastcall GetItemSort();
void __fastcall SetItemSort(AnsiString value);
TDataSetState __fastcall GetHeadStatus();
TDataSetState __fastcall GetItemStatus();
AnsiString __fastcall GetFilter();
void __fastcall SetFilter(AnsiString value);
bool __fastcall GetFiltered();
void __fastcall SetFiltered(bool value);
int __fastcall GetDataSetType();
bool __fastcall GetBof();
bool __fastcall GetEof();
bool __fastcall GetItemBof();
bool __fastcall GetItemEof();
int __fastcall GetRecordCount();
int __fastcall GetCurRecNo();
int __fastcall GetItemCount();
int __fastcall GetItemRecNo();
int __fastcall GetHeadFieldCount();
int __fastcall GetItemFieldCount();
TFields *__fastcall GetHeadFields();
TFields *__fastcall GetItemFields();
AnsiString __fastcall BuildLinkStr();
AnsiString __fastcall BuildLinkFields();
void __fastcall ExtractLinkFields(AnsiString value);
void __fastcall BuildDetailFilter();
int __fastcall CheckFieldType(TField *Field);
TADOConnection *__fastcall GetConnection();
void __fastcall SetConnection(TADOConnection *value);
TADOConnection *__fastcall GetBuildConn();
void __fastcall SetBuildConn(TADOConnection *value);
bool __fastcall GetActive();
void __fastcall SetActive(bool value);
private:
void __fastcall SendInitResult();
void __fastcall SendErrorMsg(int errortype,int errorcode,AnsiString errormessage);
void __fastcall SendFailMsg(AnsiString operate,AnsiString errormessage);
bool __fastcall VerifyValue(AnsiString operate,TKSStrData *stream);
AnsiString __fastcall MakeRangeStr(AnsiString range);
};
class TKSSRSet : public TThread
{
private:
HWND l_AOwner;
HWND l_Handle;
TADOQuery *l_Query;
TADOConnection *l_SCnt;
TCustomWinSocket *l_Socket;
TADOQuery *l_DQuery;
TADOConnection *l_DCnt;
FILE *logfile;
bool l_Active;
int l_Status;
AnsiString l_ClientRecordSetHandle;
TStringList *l_ServerBuffer;
AnsiString l_FileName;
public:
__fastcall TKSSRSet(HWND AOwner,TCustomWinSocket *Socket,AnsiString Clientid,
TADOConnection *AConn,TADOConnection *BConn);
__fastcall ~TKSSRSet();
void __fastcall ExitSvrRSet();
protected:
void __fastcall SvrRSetTerminate(TObject *Sender);
void __fastcall InitSvrRSet();
void __fastcall Execute();
void __fastcall AnalyzeStr();
void __fastcall WndProc(TMessage &Message);
void __fastcall AsynOpen(TKSStrData *stream);
void __fastcall AsynUpdate(TKSStrData *stream);
void __fastcall AsynDelete(TKSStrData *stream);
void __fastcall AsynClose(TKSStrData *stream);
void __fastcall AsynExecSQL(TKSStrData *stream);
public:
__property TADOConnection *Connection={read=GetConnection,write=SetConnection};
__property TADOConnection *BuildConn={read=GetBuildConn,write=SetBuildConn};
__property HWND LocalHandle={read=l_Handle};
private:
TADOConnection * __fastcall GetConnection();
void __fastcall SetConnection(TADOConnection *value);
TADOConnection * __fastcall GetBuildConn();
void __fastcall SetBuildConn(TADOConnection *value);
void __fastcall SendErrorMsg(int errortype,int errorcode,AnsiString errormessage);
void __fastcall SendFailMsg(AnsiString operate,AnsiString errormessage);
};//---------------------------------------------------------------------------
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -