📄 sy_sjndfpjh_lm.pas
字号:
var
i: integer;
begin
case index of
bnAdd:
DoADDFPJH;
bnDelete:
begin
if Qry_FPJH.IsEmpty then
begin
CHQMsgBox('没有可删除的数据!');
exit;
end;
if CHQMsgBox('确定要删除记录吗?', 2) = IDYES then
begin
Qry_FPJH.Edit;
Qry_FPJH.Delete;
Qry_FPJH.ApplyUpdates;
Qry_FPJH.CommitUpdates;
end;
end;
bnEdit:
begin
if Qry_FPJH.IsEmpty then
begin
CHQMsgBox('没有可修改的数据!');
exit;
end;
SetState(dtEdit);
Qry_FPJH.Edit;
end;
bnSave:
Save;
bnCancel:
if CHQMsgBox('取消编辑, 确定吗?', 2) = IDYES then
try
Qry_FPJH.Cancel;
Qry_FPJH.CancelUpdates;
finally
SetState(dtBrowse);
end;
bnClose:
Close;
end;
end;
procedure Tfrm_SJNDFPJH_LM.FormCreate(Sender: TObject);
begin
inherited;
DWMC.Caption := '使用单位:' + VG_UnitName;
ND.Value := VG_Year;
DBG_FXJHEnter(DBG_FXJH);
SetState(dtBrowse);
end;
procedure Tfrm_SJNDFPJH_LM.NDChange(Sender: TObject);
begin
Qry_FPJH.AfterScroll := nil;
Qry_FXJH.AfterScroll := nil;
Qry_FXJH.Close;
Qry_FXJH.Params[0].AsString := ND.Text;
Qry_FXJH.Open;
Qry_FPJH.Close;
Qry_FPJH.Params[0].AsString := ND.Text;
Qry_FPJH.Open;
Qry_FPJH.AfterScroll := Qry_FPJHAfterScroll;
Qry_FXJH.AfterScroll := Qry_FXJHAfterScroll;
end;
procedure Tfrm_SJNDFPJH_LM.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin
CanCLose := CheckExit;
end;
function Tfrm_SJNDFPJH_LM.CheckExit(): boolean;
begin
result := true;
if FDtState in [dtInsert, dtEdit] then
case CHQMsgBox('数据已经被更改,是否保存所做修改?', 3) of
IDYes:
ModiPanel1BtnClick(bnSave);
IDNo:
ModiPanel1BtnClick(bnCancel);
IDCancel:
result := false;
end
end;
procedure Tfrm_SJNDFPJH_LM.Qry_FXJHAfterScroll(DataSet: TDataSet);
begin
if DBG_FXJH.TitleFont.Color = clNavy then
with Qry_FXJH do
Qry_FPJH.Locate('JHH;TX', VarArrayOf([FieldByName('JHH').AsString, FieldByName('TX').AsString]), []);
end;
procedure Tfrm_SJNDFPJH_LM.Qry_FPJH1AfterScroll(DataSet: TDataSet);
begin
if Qry_FPJH.IsEmpty then
exit;
if DBG_FPJH.TitleFont.Color = clNavy then
with Qry_FPJH do
Qry_FXJH.Locate('JHH;TX', VarArrayOf([FieldByName('JHH').AsString, FieldByName('TX').AsString]), []);
end;
procedure Tfrm_SJNDFPJH_LM.DBG_FXJHEnter(Sender: TObject);
begin
if Sender = DBG_FXJH then
begin
DBG_FXJH.TitleFont.Color := clNavy;
DBG_FPJH.TitleFont.Color := clWindowText;
end
else
begin
DBG_FXJH.TitleFont.Color := clWindowText;
DBG_FPJH.TitleFont.Color := clNavy;
end;
end;
procedure Tfrm_SJNDFPJH_LM.Qry_FPJH1JHFPZTSSetText(Sender: TField;
const Text: string);
var
TextValue: Integer;
begin
try
TextValue := StrToInt(Text);
if TextValue < 0 then
begin
CHQMsgBox('非法数值!');
abort;
end;
Sender.AsInteger := TextValue;
except
if not (TextValue < 0) then
chqmsgbox('非法数值');
abort;
end;
end;
procedure Tfrm_SJNDFPJH_LM.MI_ExcClick(Sender: TObject);
begin
if DBG_FPJH.DataSource.DataSet.IsEmpty then
exit;
dbge_csh.Export_To_Excel(DBG_FPJH);
end;
procedure Tfrm_SJNDFPJH_LM.MI_txtClick(Sender: TObject);
begin
if DBG_FPJH.DataSource.DataSet.IsEmpty then
exit;
dbge_csh.Export_To_Txt(DBG_FPJH);
end;
procedure Tfrm_SJNDFPJH_LM.Qry_FPJH1BeforeInsert(DataSet: TDataSet);
begin
Abort;
end;
procedure Tfrm_SJNDFPJH_LM.PM_ExpPopup(Sender: TObject);
begin
N1.Enabled := (FDtState <> dtBrowse) and (DBG_FPJH.SelectedIndex in [2, 3]);
end;
procedure Tfrm_SJNDFPJH_LM.N3Click(Sender: TObject);
var
v_zbr, v_JHH, v_TX: string;
v_zbrq: TDateTime;
begin
case DBG_FPJH.SelectedIndex of
2:
v_zbr := Qry_FPJH.FieldByName('ZBR').AsString;
3:
v_zbrq := Qry_FPJH.FieldByName('ZDRQ').AsDateTime;
end;
v_JHH := Qry_FPJH.FieldByName('JHH').AsString;
v_TX := Qry_FPJH.FieldByName('TX').AsString;
Qry_FPJH.First;
while not Qry_FPJH.Eof do
begin
Qry_FPJH.Edit;
if TMenuItem(Sender).Tag = 11 then
case DBG_FPJH.SelectedIndex of
2:
Qry_FPJH.FieldByName('ZBR').AsString := v_zbr;
3:
Qry_FPJH.FieldByName('ZDRQ').AsDateTime := v_zbrq;
end
else
case DBG_FPJH.SelectedIndex of
2:
if Qry_FPJH.FieldByName('ZBR').AsString = '' then
Qry_FPJH.FieldByName('ZBR').AsString := v_zbr;
3:
if Qry_FPJH.FieldByName('ZDRQ').IsNull then
Qry_FPJH.FieldByName('ZDRQ').AsDateTime := v_zbrq;
end;
Qry_FPJH.Next;
end;
Qry_FPJH.Locate('JHH;TX', VarArrayOf([v_JHH, v_TX]), []);
end;
procedure Tfrm_SJNDFPJH_LM.Edt_ypmcKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key <> 13 then
exit;
if (trim(Edt_ypmc.Text) = '') then
exit;
if (trim(Edt_ypmc.Text) <> V_S_locPPMC) then
begin
V_S_locPPMC := trim(Edt_ypmc.Text);
Qry_FXJH.First;
Qry_FXJH.Filter := 'JHH<>''''';
Qry_FXJH.FindFirst;
end
else
Qry_FXJH.FindNext;
end;
procedure Tfrm_SJNDFPJH_LM.Qry_FXJHFilterRecord(DataSet: TDataSet;
var Accept: Boolean);
begin
accept := false;
if (V_S_locPPMC <> '') then
if (pos(V_S_locPPMC, DataSet.fieldbyname('PPMC').asstring) <> 0) then
accept := true;
end;
procedure Tfrm_SJNDFPJH_LM.DBG_FPJHEnter(Sender: TObject);
begin
if Sender = DBG_FXJH then
begin
DBG_FXJH.TitleFont.Color := clNavy;
DBG_FPJH.TitleFont.Color := clWindowText;
end
else
begin
DBG_FXJH.TitleFont.Color := clWindowText;
DBG_FPJH.TitleFont.Color := clNavy;
end;
end;
procedure Tfrm_SJNDFPJH_LM.Qry_FPJHBeforeInsert(DataSet: TDataSet);
begin
abort;
end;
procedure Tfrm_SJNDFPJH_LM.Qry_FPJHAfterScroll(DataSet: TDataSet);
begin
if Qry_FPJH.IsEmpty then
exit;
if DBG_FPJH.TitleFont.Color = clNavy then
with Qry_FPJH do
Qry_FXJH.Locate('JHH;TX', VarArrayOf([FieldByName('JHH').AsString, FieldByName('TX').AsString]), []);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -