Class TSynchForm (unit SynchDlg) |
Inherits from
TForm
procedure ClientSocket1Connect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ClientSocket1Connecting(Sender: TObject;
Socket: TCustomWinSocket);
procedure ClientSocket1Disconnect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ClientSocket1Error(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);
procedure ClientSocket1Lookup(Sender: TObject;
Socket: TCustomWinSocket);
procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
ErrorCode := 0;
procedure ConnectButClick(Sender: TObject);
******************************************************************** TSynchForm - Client
procedure DisconButClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure FormCreate(Sender: TObject);
******************************************************************** TSynchForm
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ListenButClick(Sender: TObject);
procedure MinTrayButClick(Sender: TObject);
******************************************************************** TSynchForm - Server
procedure RestoreServerClick(Sender: TObject);
procedure SendButClick(Sender: TObject);
procedure ServerSocket1Accept(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1ClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1ClientDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1ClientError(Sender: TObject;
Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
var ErrorCode: Integer);
procedure ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1Listen(Sender: TObject;
Socket: TCustomWinSocket);
procedure Shutdown1Click(Sender: TObject);
procedure ShutdownButClick(Sender: TObject);
procedure SynchButClick(Sender: TObject);
function AdlerFields(Table: TTable): integer;
General
procedure BeginSynch;
procedure Check_Missing_Records;
Process_Record_Request(True);
procedure ClientButs;
procedure ClientStat(const s: string);
procedure Command_PostRecord;
pk
procedure Command_SendRecord;
procedure Command_SynchAll;
procedure Command_SynchTable;
procedure Command_TableNames;
procedure Do_Manual_Synchronization;
function FindTable(TableName: string): TTable;
******************************************************************** General Helper functions
function FindTablePK(Table: TTable; pks: string): boolean;
procedure Get_User_Choice(InRemote: boolean);
******************************************************************** TSynchForm - Client - Manual Synchronization Functions
procedure OnClientMsg(const s: string);
******************************************************************** TSynchForm - Client - "Message Loop"
procedure OnServerMsg(const s: string);
******************************************************************** TSynchForm - Server - "Message Loop"
procedure OnSynchTableMsg(const s: string);
Process all records that are in the Local Table but NOT Remote
procedure Process_Record_Request(InLocal, InRemote: boolean);
PK
procedure Record_to_StringList(Table: TTable; pk: string; sl: TStringList);
procedure Send_Record_Request(const TableName: string; pk: string);
ClientStat(Format('%-20s %s', ['Record Match', s]));
procedure ServerButs;
procedure ServerStat(const s: string);
procedure Use_Local_Values;
Process the User's choice
procedure Use_Remote_Values;
pk
ClientList : TListBox;
ClientPanel : TPanel;
ClientSocket1 : TClientSocket;
ConnectBut : TButton;
DataSynchronizationServer1 : TMenuItem;
DisconBut : TButton;
FormSettings1 : TFormSettings;
Label1 : TLabel;
Label2 : TLabel;
Label3 : TLabel;
ListenBut : TButton;
MinTrayBut : TButton;
N1 : TMenuItem;
PageControl1 : TPageControl;
RemoteAddressEdit : TEdit;
RemotePortEdit : TEdit;
SendBut : TButton;
SendEdit : TEdit;
ServerPanel : TPanel;
ServerPortEdit : TEdit;
ServerSocket1 : TServerSocket;
Shutdown1 : TMenuItem;
ShutdownBut : TButton;
SvrList : TListBox;
SynchBut : TButton;
TableSet : TTableSetHelper;
TabSheet1 : TTabSheet;
TabSheet2 : TTabSheet;
TrayIcon1 : TTrayIcon;
TrayPopup : TPopupMenu;
ClientBuf : array[0..8192] of char;
ClientCom : TStringList;
ClientTab : TTable;
ClientTabName : string;
ClntChoice : TUserChoice;
CompForm : TCompRecordForm;
Con : TCustomWinSocket;
CurCom : TStringList;
current Connection to client
NumClient : integer;
Client
NumServer : integer;
Server
PKList : TStringList;
ServerBuf : array[0..8192] of char;
SRecList : TSynchRecList;
procedure ClientSocket1Connect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ClientSocket1Connecting(Sender: TObject;
Socket: TCustomWinSocket);
procedure ClientSocket1Disconnect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ClientSocket1Error(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);
procedure ClientSocket1Lookup(Sender: TObject;
Socket: TCustomWinSocket);
procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
ErrorCode := 0;
procedure ConnectButClick(Sender: TObject);
******************************************************************** TSynchForm - Client
procedure DisconButClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure FormCreate(Sender: TObject);
******************************************************************** TSynchForm
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ListenButClick(Sender: TObject);
procedure MinTrayButClick(Sender: TObject);
******************************************************************** TSynchForm - Server
procedure RestoreServerClick(Sender: TObject);
procedure SendButClick(Sender: TObject);
procedure ServerSocket1Accept(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1ClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1ClientDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1ClientError(Sender: TObject;
Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
var ErrorCode: Integer);
procedure ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocket1Listen(Sender: TObject;
Socket: TCustomWinSocket);
procedure Shutdown1Click(Sender: TObject);
procedure ShutdownButClick(Sender: TObject);
procedure SynchButClick(Sender: TObject);
function AdlerFields(Table: TTable): integer;
General
procedure BeginSynch;
procedure Check_Missing_Records;
Process_Record_Request(True);
procedure ClientButs;
procedure ClientStat(const s: string);
procedure Command_PostRecord;
pk
procedure Command_SendRecord;
procedure Command_SynchAll;
procedure Command_SynchTable;
procedure Command_TableNames;
procedure Do_Manual_Synchronization;
function FindTable(TableName: string): TTable;
******************************************************************** General Helper functions
function FindTablePK(Table: TTable; pks: string): boolean;
procedure Get_User_Choice(InRemote: boolean);
******************************************************************** TSynchForm - Client - Manual Synchronization Functions
procedure OnClientMsg(const s: string);
******************************************************************** TSynchForm - Client - "Message Loop"
procedure OnServerMsg(const s: string);
******************************************************************** TSynchForm - Server - "Message Loop"
procedure OnSynchTableMsg(const s: string);
Process all records that are in the Local Table but NOT Remote
procedure Process_Record_Request(InLocal, InRemote: boolean);
PK
procedure Record_to_StringList(Table: TTable; pk: string; sl: TStringList);
procedure Send_Record_Request(const TableName: string; pk: string);
ClientStat(Format('%-20s %s', ['Record Match', s]));
procedure ServerButs;
procedure ServerStat(const s: string);
procedure Use_Local_Values;
Process the User's choice
procedure Use_Remote_Values;
pk
ClientList : TListBox;
ClientPanel : TPanel;
ClientSocket1 : TClientSocket;
ConnectBut : TButton;
DataSynchronizationServer1 : TMenuItem;
DisconBut : TButton;
FormSettings1 : TFormSettings;
Label1 : TLabel;
Label2 : TLabel;
Label3 : TLabel;
ListenBut : TButton;
MinTrayBut : TButton;
N1 : TMenuItem;
PageControl1 : TPageControl;
RemoteAddressEdit : TEdit;
RemotePortEdit : TEdit;
SendBut : TButton;
SendEdit : TEdit;
ServerPanel : TPanel;
ServerPortEdit : TEdit;
ServerSocket1 : TServerSocket;
Shutdown1 : TMenuItem;
ShutdownBut : TButton;
SvrList : TListBox;
SynchBut : TButton;
TableSet : TTableSetHelper;
TabSheet1 : TTabSheet;
TabSheet2 : TTabSheet;
TrayIcon1 : TTrayIcon;
TrayPopup : TPopupMenu;
ClientBuf : array[0..8192] of char;
ClientCom : TStringList;
ClientTab : TTable;
ClientTabName : string;
ClntChoice : TUserChoice;
CompForm : TCompRecordForm;
Con : TCustomWinSocket;
CurCom : TStringList;
current Connection to client
NumClient : integer;
Client
NumServer : integer;
Server
PKList : TStringList;
ServerBuf : array[0..8192] of char;
SRecList : TSynchRecList;