📄 querybaseform.h
字号:
//---------------------------------------------------------------------------
#ifndef QueryBaseFormH
#define QueryBaseFormH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ComCtrls.hpp>
#include <ImgList.hpp>
#include <Menus.hpp>
#include <ToolWin.hpp>
#include <Dialogs.hpp>
#include "RPTView.h"
#include "BaseGlobeVars.h"
#include "KSFunction.h"
#include "CommFunction.h"
#include "WhereForm.h"
#include "FormSet.h"
#include "WnQuery.h"
#include "container.h"
#include "ClientDcom.h"
#include "KSAdvReport.h"
#define WM_YW_UPDATE_MSG (WM_USER+1)
//---------------------------------------------------------------------------
//define the dbf file struct
typedef struct{
char type; //no memo-0x03,foxpro with memo-0xf5,foxbase+,dbaseiii+ with memo-0x83
char date[3]; //yymmdd
char recordcount[4]; //a+b*256+c*4096+d* 65536
char headernum[2]; //a+b*256
char recordnum[2]; //a+b*256
char reserved1[2]; //0x00
char dbaseflag; //0x00
char encryptionflag; //0x01 or 0x00
char dbasmulti_user[12]; //dbaseiv multi-user environment user
char proindex; //0x01 or 0x00
char languageid; //dbaseiv language driver id
char reserved2[2]; //0x00
}FileHead;
//32-n is field descriptor array;
typedef struct{
char fieldname[11]; //ascii padded with 0x00
char fieldtype; //c,d,f,l,m,m,(p,g-forpro)
char fielddisp[4];//={0x00,0x00,0x00,0x00};
char fieldlength;
char fielddecimal;//=0x00;
char reserved1[2];//={0x00,0x00};
char dbasworkareaid;
char reserved2[10];//={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
char IsIndex;//=0x00; //0x01 or 0x00
}FieldDefine;
//n+1 header record terminator-0x0d;
//note all dbf field records begin with a deleted flag field.
//if record is deleted-0x2a(asterisk) else ox20(space)
//end of fils is marked with 0x1a
typedef struct{
char deletedflag;//0x2a else 0x20
char ItemdIndex[20];
char ItemdCode[20];
char ItemdValue[20];
}Record;
class TQueryBaseForm : public TForm
{
__published: // IDE-managed Components
TStatusBar *sbBar;
TMainMenu *MainMenu1;
TMenuItem *muFile;
TMenuItem *muPrintSetup;
TMenuItem *muPrint;
TMenuItem *S2;
TMenuItem *muExit;
TMenuItem *muEdit;
TMenuItem *muUnDo;
TMenuItem *N5;
TMenuItem *muCut;
TMenuItem *muCopy;
TMenuItem *muPaste;
TMenuItem *muView;
TMenuItem *muToolBar;
TMenuItem *muStatusBar;
TMenuItem *N8;
TMenuItem *muFind;
TMenuItem *N9;
TMenuItem *muFirst;
TMenuItem *muPrevious;
TMenuItem *muNext;
TMenuItem *muLast;
TMenuItem *muQuery;
TMenuItem *muReport;
TMenuItem *muTools;
TMenuItem *muOptons;
TMenuItem *muHelp;
TMenuItem *muContext;
TMenuItem *muWebSite;
TMenuItem *N11;
TMenuItem *muAbout;
TImageList *ImageList1;
TCoolBar *CoolBar1;
TToolBar *tbMainBar;
TToolButton *tbRefresh;
TToolButton *tbFirst;
TToolButton *tbPrevious;
TToolButton *tbNext;
TToolButton *tbLast;
TToolButton *tbQuery;
TToolButton *tbPrint;
TToolButton *tbHelp;
TToolButton *tbControl;
TToolButton *ToolButton4;
TToolButton *ToolButton3;
TToolButton *ToolButton1;
TPrintDialog *QueryPrnDlg;
TPrinterSetupDialog *PrnSetupDlg;
TToolButton *tbExport;
TToolButton *tbGenDetail;
TToolButton *ToolButton2;
TToolButton *tbCheck;
TToolButton *ToolButton5;
TToolButton *tbClose;
TPopupMenu *pmDetail;
TMenuItem *puClose;
TMenuItem *muUnCheck;
TMenuItem *muUnClose;
TMenuItem *N1;
TPopupMenu *puQueryGrid;
TMenuItem *puSetFixCol;
TSaveDialog *ExportSaveDlg;
TAdvReport *AdvReport;
TMenuItem *N2;
TMenuItem *E1;
void __fastcall muPrintClick(TObject *Sender);
void __fastcall muToolBarClick(TObject *Sender);
void __fastcall muStatusBarClick(TObject *Sender);
void __fastcall muFirstClick(TObject *Sender);
void __fastcall muPreviousClick(TObject *Sender);
void __fastcall muNextClick(TObject *Sender);
void __fastcall muLastClick(TObject *Sender);
void __fastcall muContextClick(TObject *Sender);
void __fastcall muWebSiteClick(TObject *Sender);
void __fastcall muAboutClick(TObject *Sender);
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
void __fastcall tbQueryClick(TObject *Sender);
void __fastcall tbRefreshClick(TObject *Sender);
void __fastcall muPrintSetupClick(TObject *Sender);
void __fastcall FormActivate(TObject *Sender);
void __fastcall tbExportClick(TObject *Sender);
void __fastcall tbGenDetailClick(TObject *Sender);
void __fastcall tbCheckClick(TObject *Sender);
void __fastcall tbCloseClick(TObject *Sender);
void __fastcall muUnCheckClick(TObject *Sender);
void __fastcall muUnCloseClick(TObject *Sender);
void __fastcall muExitClick(TObject *Sender);
void __fastcall FormKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift);
void __fastcall puSetFixColClick(TObject *Sender);
private:
//this variable indicate the current state of form
TControlAction CurState;
long ComErrNum;
bool IsCreate;
bool l_BillCanceled;
bool l_BillChecked;
bool l_BillClosed;
AnsiString FixedFilStr;
void __fastcall SetQueryGrid(TSDGrid *ParaQueryGrid);
TSDGrid* l_QueryGrid;
protected:
DYNAMIC void __fastcall GenDetail();
virtual void __fastcall GenData();
virtual void __fastcall CheckRecord();
virtual void __fastcall UnCheckRecord();
virtual bool __fastcall ShowCheckDlg();
__property TSDGrid* QueryGrid={read=l_QueryGrid,write=SetQueryGrid};
public:
TControlGroups *ClientGroup;
TComServer *comServer;
TComponent *DataComponent;
protected:
int __fastcall ShowMessageWindow(AnsiString Msg,TMessageWindowStyle mStyle);
AnsiString __fastcall GetCurrentStateString();
void __fastcall ShowHelp();
void __fastcall ConnectToInternet(AnsiString wwwStr);
void __fastcall ShowAboutWindow();
DYNAMIC void __fastcall SetControlState(TControlAction mAct);
DYNAMIC void __fastcall SetToolBarState(TControlAction mAct);
DYNAMIC void __fastcall SetStatusBarInfo(TControlAction mAct);
DYNAMIC void __fastcall SetMenuState(TControlAction mAct);
DYNAMIC void __fastcall GetControlInfo();
DYNAMIC void __fastcall MoveToFirst();
DYNAMIC void __fastcall MoveToPrevious();
DYNAMIC void __fastcall MoveToNext();
DYNAMIC void __fastcall MoveToLast();
//if need show confirm dialog,the parameter is true,else to false
DYNAMIC void __fastcall PrintBill(bool ShowDialog);
DYNAMIC void __fastcall SendDataToPrinter();
// this function Show FindWindow let user select or browse records
// in a windows Named "FindWindow" .
// the parameter is browseno which stored in SDEdit's property BrowseNo
// the return value is AnsiString value.
virtual bool __fastcall ShowQueryWindow();
DYNAMIC bool __fastcall ResponseQueryMenu(TMenuItem *MItem);
DYNAMIC bool __fastcall ResponseReportMenu(TMenuItem *MItem);
DYNAMIC void __fastcall ExitThisForm();
DYNAMIC void __fastcall SelectFirstObject();
DYNAMIC void __fastcall SelectPreviousObject();
DYNAMIC void __fastcall SelectNextObject();
DYNAMIC void __fastcall SelectLastObject();
DYNAMIC bool __fastcall ObjectCanBeDeleted();
DYNAMIC void __fastcall ComServerQuery();
DYNAMIC void __fastcall RefreshComObject();
// this function clear all the control in TControlGroups or
// User Specify if the parameter BringToNext is true,it does
// not clear the control else clear it.
virtual void __fastcall InitEditControl();
virtual void __fastcall ClearControl(bool BringToNext);
virtual void __fastcall GetDataFromComObject();
virtual void __fastcall WaitUserInput();
virtual void __fastcall RefreshGridData(int mAction);
virtual void __fastcall DisplayBill();
virtual void __fastcall GetBill(AnsiString BillID);
virtual void __fastcall FillGridWithData();
virtual void __fastcall ExportData();
virtual void __fastcall SaveDataToFile();
virtual void __fastcall SaveAsText(AnsiString sFileName);
virtual void __fastcall SaveAsExcel(AnsiString sFileName);
virtual void __fastcall CloseComObject();
virtual void __fastcall CloseBill();
virtual void __fastcall UnCloseBill();
virtual void __fastcall SetFixedRow();
//
__property TControlAction CurrentState={read=CurState};
private: // User declarations
void __fastcall VerifyFormRight();
TComResultSet *RsFieldsName;
AnsiString FWhereString;
protected:
public:
TComResultSet *g_sdRsGlkm;
TComResultSet *g_sdRsGoods;
TComResultSet *l_Query;
TKSSet *l_RsGoods;
TKSSet *l_RsSupply;
TKSSet *l_RsClient;
AnsiString __fastcall GetGlkmValue(AnsiString mFieldName);
AnsiString __fastcall GetGoodsValue(TGetValueType GetValueType,AnsiString mFieldName);//GetValueType枚举变量:{gtInitRs,gtOpenForm}
AnsiString __fastcall GetSupplyValue(TGetValueType GetValueType,AnsiString mFieldName);
AnsiString __fastcall GetClientValue(TGetValueType GetValueType,AnsiString mFieldName);
bool __fastcall OpenGoodsForm(AnsiString WhereStr) ;
bool __fastcall OpenSupplyForm(AnsiString WhereStr);
bool __fastcall OpenClientForm(AnsiString WhereStr);
void __fastcall InitRsGlkm();
bool __fastcall InitRsGoods(AnsiString L_goodsCode);
bool __fastcall InitRsSupply(AnsiString L_SupplysCode);
bool __fastcall InitRsClient(AnsiString L_ClientsCode) ;
__property AnsiString FilterStr={read=FWhereString,write=FWhereString};
public: // User declarations
__fastcall TQueryBaseForm(TComponent* Owner);
__fastcall TQueryBaseForm(TComponent* Owner,HWND chWnd,AnsiString MidCode,AnsiString WhereStr);
__fastcall ~TQueryBaseForm();
};
//---------------------------------------------------------------------------
extern PACKAGE TQueryBaseForm *QueryBaseForm;
//---------------------------------------------------------------------------
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -