【delphi开源代码栏目提醒】:网学会员在delphi开源代码频道为大家收集整理了UNPOSM.pas提供大家参考,希望对大家有所帮助!
unit UNPOSM;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, JLOOKUPD, SELOOKUPD, Menus, Grids, DBGrids, Mask,
DBCtrls, JEdit, ExtCtrls, ComCtrls;
type
TFMPOSM = class(TForm)
StatusBar: TStatusBar;
Panel2: TPanel;
MainMenu: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
Panel1: TPanel;
BTNQUT: TBitBtn;
BTNCAL: TBitBtn;
BTNYES: TBitBtn;
BTNDEL: TBitBtn;
BTNINS: TBitBtn;
BTNPRN: TBitBtn;
GroupBox1: TGroupBox;
LB1: TLabel;
LB2: TLabel;
LB3: TLabel;
Label7: TLabel;
Label9: TLabel;
Label1: TLabel;
LB11: TJEdit;
LB31: TJEdit;
LB12: TJEdit;
LB32: TJEdit;
LB21: TJEdit;
LB22: TJEdit;
BTNSER: TBitBtn;
BTNCLR: TBitBtn;
BTNPRE: TBitBtn;
N6: TMenuItem;
MENPRE: TMenuItem;
MENPRN: TMenuItem;
LBBGENO: TLabel;
LBPMPRI: TLabel;
LBPMDT1: TLabel;
LBPMDT2: TLabel;
PMPRI: TDBEdit;
PMDT1: TJDBEdit;
PMDT2: TJDBEdit;
BGENO: JDBLOOKUPBOX;
DBGrid: TDBGrid;
LBPNDAT: TLabel;
PMDAT: TJDBEdit;
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure FormCreate(Sender: TObject);
procedure BTNQUTClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BTNINSClick(Sender: TObject);
procedure BTNDELClick(Sender: TObject);
procedure BTNYESClick(Sender: TObject);
procedure BTNCALClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BTNPRNClick(Sender: TObject);
procedure BTNSERClick(Sender: TObject);
procedure BTNCLRClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
FORMMODE : STRING;
procedure BTNMODE;
procedure INSERTMODE;
procedure UPDATEMODE;
procedure NORMALMODE;
end;
var
FMPOSM: TFMPOSM;
implementation
uses SYSINI, FM_UTL, DB_UTL, MAIND, MAINU,
UNPOSMD, UNPOSMP;
{$R *.DFM}
procedure TFMPOSM.BTNMODE;
begin
//一般模式
DBGrid.Enabled := FALSE;
BTNINS.Enabled := FALSE;
BTNDEL.Enabled := FALSE;
BTNYES.Enabled := FALSE;
BTNCAL.Enabled := FALSE;
BTNSER.Enabled := FALSE;
BTNCLR.Enabled := FALSE;
BTNPRE.Enabled := FALSE;
BTNPRN.Enabled := FALSE;
BTNQUT.Enabled := FALSE;
//新增修改模式
if (FORMMODE = 'INS' ) or (FORMMODE = 'UPD' ) then
BEGIN
DBGrid.Enabled := FALSE;
BTNINS.Enabled := FALSE;
BTNDEL.Enabled := FALSE;
BTNYES.Enabled := TRUE;
BTNCAL.Enabled := TRUE;
BTNSER.Enabled := FALSE;
BTNCLR.Enabled := FALSE;
BTNPRE.Enabled := FALSE;
BTNPRN.Enabled := FALSE;
BTNQUT.Enabled := FALSE;
END;
//一般模式
if (FORMMODE = 'CAN' ) then
BEGIN
DBGrid.Enabled := TRUE;
BTNINS.Enabled := TRUE;
BTNDEL.Enabled := TRUE;
BTNYES.Enabled := FALSE;
BTNCAL.Enabled := FALSE;
BTNSER.Enabled := TRUE;
BTNCLR.Enabled := TRUE;
BTNPRE.Enabled := TRUE;
BTNPRN.Enabled := TRUE;
BTNQUT.Enabled := TRUE;
END;
{新增才可改编号} BGENO.Enabled := FALSE;
IF FORMMODE = 'INS' THEN BGENO.Enabled := TRUE;
end;
procedure TFMPOSM.INSERTMODE;
begin
FORMMODE := 'INS';
BTNMODE;
BGENO.SetFocus;
end;
procedure TFMPOSM.UPDATEMODE;
begin
FORMMODE := 'UPD';
BTNMODE;
end;
procedure TFMPOSM.NORMALMODE;
begin
FORMMODE := 'CAN';
BTNMODE;
DBGRID.SetFocus;
end;
procedure TFMPOSM.FormCreate(Sender: TObject);
begin
IF FormExists('FMPOSMD')=FALSE THEN Application.CreateForm(TFMPOSMD, FMPOSMD );
//按钮图形加载
BTNINS.Glyph := INS_TB;
BTNDEL.Glyph := DEL_TB;
BTNYES.Glyph := YES_TB;
BTNCAL.Glyph := CAL_TB;
BTNSER.Glyph := SER_TB;
BTNCLR.Glyph := CLR_TB;
BTNPRE.Glyph := PRE_TB;
BTNPRN.Glyph := PRN_TB;
BTNQUT.Glyph := QUT_TB;
FMPOSMD.UPOSM.InsertSQL.CLEAR;
FMPOSMD.UPOSM.InsertSQL.Add('INSERT INTO POSM ');
FMPOSMD.UPOSM.InsertSQL.Add(' ( BGENO, PMPRI, PMDT1, PMDT2, PMDAT ) ');
FMPOSMD.UPOSM.InsertSQL.Add('VALUES ');
FMPOSMD.UPOSM.InsertSQL.Add(' (:BGENO,:PMPRI,:PMDT1,:PMDT2,:PMDAT ) ');
FMPOSMD.UPOSM.ModifySQL.CLEAR;
FMPOSMD.UPOSM.ModifySQL.Add('UPDATE POSM ');
FMPOSMD.UPOSM.ModifySQL.Add('SET ');
FMPOSMD.UPOSM.ModifySQL.Add('BGENO = :BGENO ,');
FMPOSMD.UPOSM.ModifySQL.Add('PMPRI = :PMPRI ,');
FMPOSMD.UPOSM.ModifySQL.Add('PMDT1 = :PMDT1 ,');
FMPOSMD.UPOSM.ModifySQL.Add('PMDT2 = :PMDT2 ,');
FMPOSMD.UPOSM.ModifySQL.Add('PMDAT = :PMDAT ');
FMPOSMD.UPOSM.ModifySQL.Add('WHERE BGENO = :OLD_BGENO');
FMPOSMD.UPOSM.DeleteSQL.CLEAR;
FMPOSMD.UPOSM.DeleteSQL.Add('DELETE FROM POSM ');
FMPOSMD.UPOSM.DeleteSQL.Add('WHERE BGENO = :OLD_BGENO');
FMPOSMD.QPOSM.