📄 sdbaselib.h
字号:
#ifndef _BASE_LIB
#define _BASE_LIB
#define _EXPORT_TYPE __declspec(dllexport)
#include <ADODB.hpp>
#include <Db.hpp>
#include "DataComm.h"
#include "func.h"
class _EXPORT_TYPE TsdStandard;
class _EXPORT_TYPE TsdDetail;
class _EXPORT_TYPE TsdHead;
class __declspec(dllexport) TMidBase;
//===================================================
//(TsdStand)标准单据基类
//===================================================
class TsdStandard
{
private:
TsdCollection *m_Standard;
TDataComm *m_DataComm;
AnsiString m_BookMark;
char m_Queryed_ID;
char m_Action_ID;
char m_Found_ID;
int m_InsertIndex;
AnsiString m_QueryString;
AnsiString m_FilterString;
AnsiString m_OrderString;
int __fastcall GetCount();
int __fastcall GetCurRecNo();
void __fastcall SetBookMark(AnsiString value);
AnsiString __fastcall GetBookMark();
bool __fastcall GetFound();
bool __fastcall GetBof();
bool __fastcall GetEof();
int __fastcall GetIndex();
AnsiString __fastcall GetKey();
TADOConnection *get_Connection();
TApplication *get_Application();
public:
TsdStandard(TDataComm *DC);
TsdStandard();
~TsdStandard();
TADOQuery *m_Query;
TADOStoredProc *m_StoredProc;
void AddNew();
void Insert(int Index);
void Edit();
void FreeRecord();
virtual void Update();
virtual void Delete();
virtual bool Find(AnsiString WhereStr);
virtual void Execute(AnsiString Param);
virtual void AddToObject();
void Cancel();
virtual int Query();
void MoveFirst();
void MoveLast();
void MoveNext();
void MovePrious();
void MoveBy(int Distance);
bool LocateByIndex(int Index);
bool LocateByKey(AnsiString Key);
bool FindKey(AnsiString Key);
virtual void Check(int IsCheck);
virtual void BatchCheck(int IsCheck);
virtual void Close(int IsClose);
virtual void BatchClose(int IsClose);
virtual void Revoke(int IsRevoke);
virtual void BatchRevoke(int IsRevoke);
virtual void Tally(int IsTally);
virtual void BatchTally(int IsTally);
void InitGlobalVar(AnsiString CompanyCode,AnsiString UserCode,AnsiString FMonth,
AnsiString IMonth,AnsiString PMonth,AnsiString SMonth,AnsiString MMonth,
AnsiString CMonth,AnsiString EMonth,AnsiString HMonth,
AnsiString CurrencyCode,AnsiString TaxCode,AnsiString CurDate,AnsiString SysDate);
__property char CurStatus = { read = m_Action_ID };
__property int Count = { read = GetCount };
__property int FieldCount={read=GetFieldCount};
__property AnsiString FieldName[int Index]={read=GetFieldName};
__property int DataType[int Index]={read=GetDataType};
__property int CurRecNo = { read = GetCurRecNo };
__property AnsiString BookMark = { read = GetBookMark, write = SetBookMark };
__property bool Found = { read = GetFound };
__property bool Bof = { read = GetBof };
__property bool Eof = { read = GetEof };
__property AnsiString FilterString={read=m_FilterString,write=m_FilterString};
__property AnsiString OrderString={read=m_OrderString,write=m_OrderString};
__property TADOConnection *ADOConnection = {read=get_Connection};
__property TApplication *DllApplication = {read=get_Application};
__property TDataComm *DataComm={read=m_DataComm};
public:
AnsiString g_sdCompanyCode;
AnsiString g_sdUserCode;
AnsiString g_sdFMonth;
AnsiString g_sdIMonth;
AnsiString g_sdPMonth;
AnsiString g_sdSMonth;
AnsiString g_sdMMonth;
AnsiString g_sdCMonth;
AnsiString g_sdEMonth;
AnsiString g_sdHMonth;
AnsiString g_sdCurrencyCode;
AnsiString g_sdTaxCode;
AnsiString g_sdCurDate;
AnsiString g_sdSysDate;
protected:
void SetActionID(char Action);
virtual void BackupValue();
virtual void RestoreValue();
virtual void EmptyValue(int Index);
virtual void BatchLetValue();
virtual void AssignValue();
virtual int __fastcall GetFieldCount();
virtual AnsiString __fastcall GetFieldName(int Index);
virtual int __fastcall GetDataType(int Index);
void AddRecord(void * Record, AnsiString Key);
void InsertRecord(void * Record, AnsiString Key, int Index);
void DeleteRecord(AnsiString Key);
void RemoveRecord(int Index);
void ChangeRecord(void * Record, AnsiString NewKey, AnsiString OldKey);
void * Records(int Index);
void * RecordByKey(AnsiString Key);
void ClearRecord();
__property int InsertIndex={read=m_InsertIndex};
__property int Index = { read = GetIndex };
__property AnsiString Key = { read = GetKey };
__property AnsiString QueryString={read=m_QueryString,write=m_QueryString};
};
//================================================================
//(TsdDetail)单据明细基类
//================================================================
class TsdDetail
{
private:
TsdCollection *m_Detail;
TDataComm *m_DataComm;
AnsiString m_BookMark;
char m_Queryed_ID;
char m_Action_ID;
char m_Found_ID;
int m_InsertIndex;
AnsiString m_QueryString;
AnsiString m_FilterString;
AnsiString m_OrderString;
int __fastcall GetCount();
int __fastcall GetCurRecNo();
void __fastcall SetBookMark(AnsiString value);
AnsiString __fastcall GetBookMark();
bool __fastcall GetFound();
bool __fastcall GetBof();
bool __fastcall GetEof();
int __fastcall GetIndex();
AnsiString __fastcall GetKey();
TADOConnection *get_Connection();
TApplication *get_Application();
public:
TsdDetail(TDataComm *DC);
TsdDetail();
~TsdDetail();
TADOQuery *m_Query;
TADOStoredProc *m_StoredProc;
void AddNew();
void Insert(int Index);
void Edit();
void FreeRecord();
virtual void Update();
virtual void Delete();
virtual bool Find(AnsiString WhereStr);
virtual void Execute(AnsiString Param);
//virtual void Close();
//virtual void BatchClose();
void Cancel();
virtual int Query();
void MoveFirst();
void MoveLast();
void MoveNext();
void MovePrious();
void MoveBy(int Distance);
bool LocateByIndex(int Index);
bool LocateByKey(AnsiString Key);
bool FindKey(AnsiString Key);
__property char CurStatus = { read = m_Action_ID };
__property int Count = { read = GetCount };
__property int FieldCount={read=GetFieldCount};
__property AnsiString FieldName[int Index]={read=GetFieldName};
__property int DataType[int Index]={read=GetDataType};
__property int CurRecNo = { read = GetCurRecNo };
__property AnsiString BookMark = { read = GetBookMark, write = SetBookMark };
__property bool Found = { read = GetFound };
__property bool Bof = { read = GetBof };
__property bool Eof = { read = GetEof };
__property AnsiString FilterString={read=m_FilterString,write=m_FilterString};
__property AnsiString OrderString={read=m_OrderString,write=m_OrderString};
public:
virtual void BackupValue();
virtual void RestoreValue();
protected:
void SetActionID(char Action);
virtual void EmptyValue(int Index);
virtual void BatchLetValue();
virtual void AssignValue();
virtual int __fastcall GetFieldCount();
virtual AnsiString __fastcall GetFieldName(int Index);
virtual int __fastcall GetDataType(int Index);
public:
void AddRecord(void * Record, AnsiString Key);
void InsertRecord(void * Record, AnsiString Key, int Index);
void DeleteRecord(AnsiString Key);
void RemoveRecord(int Index);
void ChangeRecord(void * Record, AnsiString NewKey, AnsiString OldKey);
void * Records(int Index);
void * RecordByKey(AnsiString Key);
void ClearRecord();
__property int InsertIndex={read=m_InsertIndex};
__property int Index = { read = GetIndex };
__property AnsiString Key = { read = GetKey };
__property AnsiString QueryString={read=m_QueryString,write=m_QueryString};
__property TADOConnection *ADOConnection = {read=get_Connection};
__property TApplication *DllApplication = {read=get_Application};
__property TDataComm *DataComm={read=m_DataComm};
};
//================================================================
//(TsdHead)单据头基类
//================================================================
class TsdHead
{
private:
TsdCollection *m_Head;
TDataComm *m_DataComm;
AnsiString m_BookMark;
char m_Queryed_ID;
char m_Action_ID;
char m_Found_ID;
int m_InsertIndex;
AnsiString m_QueryString;
AnsiString m_FilterString;
AnsiString m_OrderString;
int __fastcall GetCount();
int __fastcall GetCurRecNo();
void __fastcall SetBookMark(AnsiString value);
AnsiString __fastcall GetBookMark();
bool __fastcall GetFound();
bool __fastcall GetBof();
bool __fastcall GetEof();
int __fastcall GetIndex();
AnsiString __fastcall GetKey();
TADOConnection *get_Connection();
TApplication *get_Application();
public:
TsdHead(TDataComm *DC);
TsdHead();
~TsdHead();
TADOQuery *m_Query;
TADOStoredProc *m_StoredProc;
void AddNew();
void Insert(int Index);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -