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

📄 ufkxxlr.~pas

📁 行业应急系统 包括: 应急系统(待遇核发) 发放系统 开发环境:Delphi5 (sp1)+ Oracle 8.05 MultiExport是一个可以将数据按指定字段倒出
💻 ~PAS
字号:
unit uFKXXLR;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, ComCtrls, StdCtrls, Mask, DBCtrls, Db, DBTables;

type
  TfrmFKXXLR = class(TForm)
    Panel2: TPanel;
    pagMain: TPageControl;
    tabRYFKXX: TTabSheet;
    tabZFKXX: TTabSheet;
    Panel1: TPanel;
    btnAdd: TButton;
    btnClear: TButton;
    btnClose: TButton;
    Label2: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    Label1: TLabel;
    edtXM_1: TEdit;
    edtSFZH_1: TEdit;
    edtZH_1: TEdit;
    edtKHH_1: TEdit;
    edtHRDD_1: TEdit;
    edtYZBM_1: TEdit;
    edtDZ_1: TEdit;
    edtFFJE_1: TEdit;
    edtDQDM_1: TEdit;
    edtDQMC_1: TEdit;
    edtDWDM_1: TEdit;
    edtCWBZ_1: TEdit;
    edtFFYF_1: TEdit;
    edtRYID_FF_1: TEdit;
    edtBZ_1: TEdit;
    Label3: TLabel;
    Label4: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Label21: TLabel;
    Label23: TLabel;
    Label24: TLabel;
    Label26: TLabel;
    Label27: TLabel;
    Label28: TLabel;
    Label29: TLabel;
    edtXM_2: TEdit;
    edtZH_2: TEdit;
    edtKHH_2: TEdit;
    edtHRDD_2: TEdit;
    edtYZBM_2: TEdit;
    edtFFJE_2: TEdit;
    edtDQDM_2: TEdit;
    edtDWDM_2: TEdit;
    edtCWBZ_2: TEdit;
    edtFFYF_2: TEdit;
    edtDWID_FF_2: TEdit;
    edtBZ_2: TEdit;
    Label30: TLabel;
    Label17: TLabel;
    edtZRS_2: TEdit;
    Label22: TLabel;
    edtDQMC_2: TEdit;
    qryRYFKXX: TQuery;
    qryRYFKXXRYID_FF: TStringField;
    qryRYFKXXFFYF: TDateTimeField;
    qryRYFKXXFFBZ: TFloatField;
    qryRYFKXXXM: TStringField;
    qryRYFKXXSFZH: TStringField;
    qryRYFKXXZH: TStringField;
    qryRYFKXXKHH: TStringField;
    qryRYFKXXHRDD: TStringField;
    qryRYFKXXYZBM: TStringField;
    qryRYFKXXDZ: TStringField;
    qryRYFKXXFFJE: TFloatField;
    qryRYFKXXDQDM: TStringField;
    qryRYFKXXDQMC: TStringField;
    qryRYFKXXDWDM: TStringField;
    qryRYFKXXCWBZ: TFloatField;
    qryRYFKXXBZ: TStringField;
    UpdateSQL1: TUpdateSQL;
    Label25: TLabel;
    edtDZ_2: TEdit;
    Label31: TLabel;
    cmbFFJG_1: TComboBox;
    cmbFFJG_2: TComboBox;
    Label32: TLabel;
    procedure btnClearClick(Sender: TObject);
    procedure btnAddClick(Sender: TObject);
    procedure edtDQDM_1Exit(Sender: TObject);
    procedure edtDQDM_2Exit(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure edtRYID_FF_1Exit(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmFKXXLR: TfrmFKXXLR;

implementation

uses dMain, uCommon;

{$R *.DFM}

procedure TfrmFKXXLR.btnClearClick(Sender: TObject);
var
  i: Integer;
begin
  for i := 0 to Self.ComponentCount - 1 do
    if Self.Components[i] is TEdit then
      TEdit(Self.Components[i]).Text := '';
end;

procedure TfrmFKXXLR.btnAddClick(Sender: TObject);
begin
  //1 插入前检查数据是否完整
  //2 检查数据库中是否有重复记录
  //3 插入记录
{
//人员反馈信息
人员标识
发放月份
发放标志
错误标志
//组反馈信息
人员标识
发放月份
发放标志
错误标志
}
  if pagMain.ActivePageIndex = 0 then
  begin
    if Trim(edtFFJE_1.Text) = '' then
    begin
      gfShowError('发放金额不能为空');
      edtFFJE_1.SetFocus;
      Abort;
    end;

    if Trim(edtRYID_FF_1.Text) = '' then
    begin
      gfShowError('人员标识不能为空');
      edtRYID_FF_1.SetFocus;
      Abort;
    end;

    if Trim(edtCWBZ_1.Text) = '' then
    begin
      gfShowError('错误标志不能为空');
      edtCWBZ_1.SetFocus;
      Abort;
    end;

    if Trim(edtFFYF_1.Text) = '' then
    begin
      gfShowError('发放月份不能为空');
      edtFFYF_1.SetFocus;
      Abort;
    end;

    if cmbFFJG_1.ItemIndex = 0 then
    begin
      gfShowError('发放机构不能为空');
      cmbFFJG_1.SetFocus;
      Abort;
    end;

    //检查发放月份是否正确
    with TQuery.Create(Self) do
    try
      DatabaseName := dfmMain.dbsMain.DataBaseName;
      SQL.Add('INSERT INTO tFF_RYFKXX');
      SQL.Add('(RYID_FF, FFYF, FFBZ, XM, SFZH, ZH, KHH, HRDD, YZBM, DZ, FFJE, DQDM,');
      SQL.Add('DQMC, DWDM, CWBZ, BZ,FFJGID)');
      SQL.Add('values');
      SQL.Add('  (''' + Trim(edtRYID_FF_1.Text) + '''');
      SQL.Add(',to_Date(''' + Trim(edtFFYF_1.Text) + ''',''YYYYMM'')');
      SQL.Add(',1');
      SQL.Add(',''' + Trim(edtXM_1.Text) + '''');
      SQL.Add(',''' + Trim(edtSFZH_1.Text) + '''');
      SQL.Add(',''' + Trim(edtZH_1.Text) + '''');
      SQL.Add(',''' + Trim(edtKHH_1.Text) + '''');
      SQL.Add(',''' + Trim(edtHRDD_1.Text) + '''');
      SQL.Add(',''' + Trim(edtYZBM_1.Text) + '''');
      SQL.Add(',''' + Trim(edtDZ_1.Text) + '''');
      SQL.Add(',' + Trim(edtFFJE_1.Text));
      SQL.Add(',''' + Trim(edtDQDM_1.Text) + '''');
      SQL.Add(',''' + Trim(edtDQMC_1.Text) + '''');
      SQL.Add(',''' + Trim(edtDWDM_1.Text) + '''');
      SQL.Add(',' + Trim(edtCWBZ_1.Text));
      SQL.Add(',''' + Trim(edtBZ_1.Text) + '''');
      SQL.Add(',''' + IntToStr(1000000001 + cmbFFJG_1.ItemIndex) + ''')');

      try
        ExecSQL;
        btnClear.Click;
      except
        on E: Exception do
          gfShowError(PChar('插入记录出现错误,错误信息是' + #13 + E.Message));
      end;
    finally
      Free;
    end;
  end
  else
    if pagMain.ActivePageIndex = 1 then
    begin
      if Trim(edtDWID_FF_2.Text) = '' then
      begin
        gfShowError('单位标识不能为空');
        edtRYID_FF_1.SetFocus;
        Abort;
      end;

      if Trim(edtFFJE_2.Text) = '' then
      begin
        gfShowError('发放金额不能为空');
        edtFFJE_2.SetFocus;
        Abort;
      end;

      if Trim(edtZRS_2.Text) = '' then
      begin
        gfShowError('组人数不能为空');
        edtZRS_2.SetFocus;
        Abort;
      end;

      if Trim(edtCWBZ_2.Text) = '' then
      begin
        gfShowError('错误标志不能为空');
        edtCWBZ_1.SetFocus;
        Abort;
      end;

      if Trim(edtFFYF_2.Text) = '' then
      begin
        gfShowError('发放月份不能为空');
        edtFFYF_1.SetFocus;
        Abort;
      end;

      if cmbFFJG_1.ItemIndex = -1 then
      begin
        gfShowError('发放机构不能为空');
        cmbFFJG_1.SetFocus;
        Abort;
      end;

      //检查发放月份是否正确
      with TQuery.Create(Self) do
      try
        DatabaseName := dfmMain.dbsMain.DataBaseName;
        SQL.Add(' insert into tFF_ZFKXX ');
        SQL.Add('    (DWID_FF, FFYF, FFBZ, XM, ZH, KHH, HRDD, YZBM, DZ, FFJE, ');
        SQL.Add('      DQDM, DQMC, DWDM, ZRS, CWBZ, BZ,FFJGID) ');
        SQL.Add('values');
        SQL.Add('  (''' + Trim(edtDWID_FF_2.Text) + '''');
        SQL.Add(',to_Date(''' + Trim(edtFFYF_2.Text) + ''',''YYYYMM'')');
        SQL.Add(',1');
        SQL.Add(',''' + Trim(edtXM_2.Text) + '''');
        SQL.Add(',''' + Trim(edtZH_2.Text) + '''');
        SQL.Add(',''' + Trim(edtKHH_2.Text) + '''');
        SQL.Add(',''' + Trim(edtHRDD_2.Text) + '''');
        SQL.Add(',''' + Trim(edtYZBM_2.Text) + '''');
        SQL.Add(',''' + Trim(edtDZ_2.Text) + '''');
        SQL.Add(',' + Trim(edtFFJE_2.Text));
        SQL.Add(',''' + Trim(edtDQDM_2.Text) + '''');
        SQL.Add(',''' + Trim(edtDQMC_2.Text) + '''');
        SQL.Add(',''' + Trim(edtDWDM_2.Text) + '''');
        SQL.Add(',''' + Trim(edtZRS_2.Text) + '''');
        SQL.Add(',' + Trim(edtCWBZ_2.Text));
        SQL.Add(',''' + Trim(edtBZ_2.Text) + '''');
        SQL.Add(',''' + IntToStr(1000000001 + cmbFFJG_1.ItemIndex) + ''')');

        try
          ExecSQL;
          btnClear.Click;
        except
          on E: Exception do
            gfShowError(PChar('插入记录出现错误,错误信息是' + #13 +
              E.Message));
        end;
      finally
        Free;
      end;
    end;
end;

procedure TfrmFKXXLR.edtDQDM_1Exit(Sender: TObject);
begin
  //得到地区名称
  with TQuery.Create(Self) do
  try
    DatabaseName := dfmMain.dbsMain.DatabaseName;
    SQL.Add('select MC from tXZQH where DM =''' + Trim(TEdit(Sender).Text) +
      '''');
    Open;
    if RecordCount <> 0 then
      edtDQMC_1.Text := FieldByName('MC').AsString
    else
      edtDQMC_1.Text := '';
  finally
    Free;
  end;
end;

procedure TfrmFKXXLR.edtDQDM_2Exit(Sender: TObject);
begin
  with TQuery.Create(Self) do
  try
    DatabaseName := dfmMain.dbsMain.DatabaseName;
    SQL.Add('select MC from tXZQH where DM =''' + Trim(TEdit(Sender).Text) +
      '''');
    Open;
    if RecordCount <> 0 then
      edtDQMC_2.Text := FieldByName('MC').AsString
    else
      edtDQMC_2.Text := '';
  finally
    Free;
  end;

end;

procedure TfrmFKXXLR.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #13 then
  begin
    SelectNext(ActiveControl as tWinControl, True, True);
    Key := #0;
  end;

end;

procedure TfrmFKXXLR.edtRYID_FF_1Exit(Sender: TObject);
begin
  //根据人员标识查询数据
  with TQuery.Create(Self) do
  try
    DataBaseName := dfmMain.dbsMain.DatabaseName;

    SQL.Add('select dqxx.dm,dqxx.mc,ryxx.*,dwxx.dwdm');
    SQL.Add('from tff_ryxx ryxx,tff_dwxx dwxx,tff_rydqxx dqxx');
    SQL.Add('where ryxx.ryid_ff=dqxx.ryid_ff and dwxx.dwid_ff=ryxx.ssdwid');
    SQL.Add(' and ryxx.ryid_ff=''' + edtRYID_FF_1.Text + '''');

    Open;
    if RecordCount = 1 then
    begin
      edtXM_1.Text := FieldByName('XM').AsString;
      edtSFZH_1.Text := FieldByName('SFZH').AsString;
      edtZH_1.Text := FieldByName('ZH').AsString;
      edtKHH_1.Text := FieldByName('KHH').AsString;
      edtHRDD_1.Text := FieldByName('HRDD').AsString;
      edtYZBM_1.Text := FieldByName('YZBM').AsString;
      edtDZ_1.Text := FieldByName('DZ').AsString;
      edtFFJE_1.Text := FieldByName('BZJE').AsString;
      edtDQDM_1.Text := FieldByName('DM').AsString;
      edtDQMC_1.Text := FieldByName('MC').AsString;
      edtDWDM_1.Text := FieldByName('DWDM').AsString;


    end;
  finally
    Free;
  end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -