⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sy_sjndfpjh_lm.pas

📁 省级集邮品管理ERP
💻 PAS
📖 第 1 页 / 共 2 页
字号:
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 + -