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

📄 uffdy.pas

📁 行业应急系统 包括: 应急系统(待遇核发) 发放系统 开发环境:Delphi5 (sp1)+ Oracle 8.05 MultiExport是一个可以将数据按指定字段倒出
💻 PAS
字号:
{
*
* 添加一个单位对应表,将发放系统中的单位与应急系统单位进行对应
*

DROP TABLE TFF_DWDY CASCADE CONSTRAINTS ;

CREATE TABLE TFF_DWDY (
  FFDWID  CHAR (10)     NOT NULL,
  YJDWID  CHAR (10)     NOT NULL,
  CONSTRAINT PK_TFF_DWDY
  PRIMARY KEY ( YJDWID, FFDWID )
)

*
*
*
}
unit uFFDY;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  uSimpleTemp, DBTables, Db, Wwquery, Wwdatsrc, ExtCtrls, ImgList,
  ActnList, ComCtrls, StdCtrls, Buttons, Grids, Wwdbigrd, Wwdbgrid;

type
  TfrmFFDY = class(TfrmSimpleTemp)
    pnlLeft: TPanel;
    wwDBGrid1: TwwDBGrid;
    Panel3: TPanel;
    pnlRight: TPanel;
    Panel6: TPanel;
    wwDBGrid2: TwwDBGrid;
    Label1: TLabel;
    Label2: TLabel;
    souRight: TwwDataSource;
    qryRight: TwwQuery;
    Panel2: TPanel;
    Panel5: TPanel;
    Label3: TLabel;
    Label4: TLabel;
    Button1: TButton;
    Panel7: TPanel;
    btnLink: TSpeedButton;
    btnUnlink: TSpeedButton;
    cmbSelect: TComboBox;
    CheckBox1: TCheckBox;
    Button2: TButton;
    edtFFDW: TEdit;
    edtYJDW: TEdit;
    btnYJDW_Select: TSpeedButton;
    btnFFDY_Select: TSpeedButton;
    procedure FormResize(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure souDetailDataChange(Sender: TObject; Field: TField);
    procedure wwDBGrid1CalcCellColors(Sender: TObject; Field: TField;
      State: TGridDrawState; Highlight: Boolean; AFont: TFont;
      ABrush: TBrush);
    procedure btnLinkClick(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure btnFFDY_SelectClick(Sender: TObject);
    procedure btnYJDW_SelectClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmFFDY: TfrmFFDY;
  ffdwid: string; //发放单位ID
  yjdwdm: string; //应急系统代码

implementation

uses dMain, uCommon;

{$R *.DFM}

procedure TfrmFFDY.FormResize(Sender: TObject);
begin
  inherited;
{
  pnlLeft.Width := Round(pagTemp.Width / 2);
  pnlRight.Width := pagTemp.Width - pnlLeft.Width;
}
end;

procedure TfrmFFDY.FormCreate(Sender: TObject);
begin
  inherited;
  sTitleName := '调整发放/应急系统的人员对应关系';

  btnCheck.Visible := False;
  btnInsert.Visible := False;
  btnSave.Visible := False;
  btnDelete.Visible := False;
  btnUndo.Visible := False;

  cmbSelect.ItemIndex := 0;
end;

procedure TfrmFFDY.Button1Click(Sender: TObject);
begin
  inherited;
  //显示发放单位信息
  with qryDetail do
  begin
    close;
    SQL.Clear;

    Sql.Add('SELECT *');
    Sql.Add('  FROM tff_ryxx');
    Sql.Add(' WHERE dwid_ff = ''1000000027''');
    SQL.Add('ORDER BY XM');
    Open;
  end;

  Label1.Caption := '发放系统:' + IntToStr(qryDetail.RecordCount) + '人';

  with qryRight do
  begin
    close;
    SQL.Clear;

    Sql.Add('SELECT *');
    Sql.Add('  FROM tryjbxx');
    Sql.Add(' WHERE dwid = ''1000000102'' and ryzt=2');
    SQL.Add('ORDER BY XM');
    Open;
  end;
  Label2.Caption := '应急系统:' + IntToStr(qryDetail.RecordCount) + '人';
end;

procedure TfrmFFDY.souDetailDataChange(Sender: TObject; Field: TField);
begin
  inherited;
  if Field = nil then
  begin
        //查找状态 查找对应的应急系统中人员
    if qryRight.active then
        //显示对应
      btnLink.Enabled := qryRight.Locate('xm;sfzh',
        VarArrayOf([qryDetail.FieldByName('xm').AsString,
        qryDetail.FieldByName('sfzh').AsString]), []);
    btnUnLink.Enabled := not btnLink.Enabled;
    begin
    end;
  end;
end;

procedure TfrmFFDY.wwDBGrid1CalcCellColors(Sender: TObject; Field: TField;
  State: TGridDrawState; Highlight: Boolean; AFont: TFont; ABrush: TBrush);
begin
  inherited;

  //如果关联了数据,则显示黄色
  //未关联的数据,显示白色
  if Trim(qryDetail.FieldByName('Ryid').AsString) = '' then
    ABrush.color := clWhite
  else
    ABrush.Color := $00C0FFFF;

  if highlight then
  begin
    Afont.color := clWhite;
    ABrush.Color := clBlue;
  end;
end;

procedure TfrmFFDY.btnLinkClick(Sender: TObject);
var
  bookmark: TBookmark;
begin
  inherited;
  //修改发放信息前保留Bookmark

{
  qryDetail.DisableControls;
  qryRight.DisableControls;
}
  bookmark := qryDetail.GetBookmark;

  dfmMain.dbsMain.StartTransaction;
  with TQuery.Create(Self) do
  try
    DatabaseName := dfmMain.dbsMain.DatabaseName;
    SQL.Add('update tff_ryxx set ryid=''' + qryRight.FieldByName('RYID').AsString
      + ''' where ryid_ff=''' + qryDetail.FieldByName('RYID_FF').AsString +
      '''');
    ExecSQL;
  finally
    Free;
  end;
  dfmMain.dbsMain.Commit;

  qryDetail.Close;
  qryDetail.Open;
  qryDetail.GotoBookmark(bookmark);
  qryDetail.FreeBookmark(bookmark);
{
  qryDetail.EnableControls;
  qryRight.EnableControls;
}
end;

procedure TfrmFFDY.Button2Click(Sender: TObject);
begin
  inherited;
 //对应操作
  with TQuery.create(Self) do
  begin
    Databasename := dfmMain.dbsMain.DatabaseName;
    SQL.Add('update tff_ryxx');

  end;

end;

procedure TfrmFFDY.btnFFDY_SelectClick(Sender: TObject);
begin
  inherited;
  if Trim(edtFFDW.Text) = '' then
  begin
    gfShowError('请输入单位在发放系统中的单位代码');
    Abort;
  end;

  //取得发放单位ID
  with TQuery.Create(Self) do
  try
    DatabaseName := dfmMain.dbsMain.DataBaseName;
    SQL.Add('SELECT dwid_ff FROM tff_dwxx WHERE dwdm =''' + trim(edtFFDW.Text) +
      '''');
    Open;
    ffdwid := Fields[0].AsString;
  finally
    Free;
  end;

end;

procedure TfrmFFDY.btnYJDW_SelectClick(Sender: TObject);
begin
  inherited;
  if Trim(edtYJDW.Text) = '' then
  begin
    gfShowError('请输入单位在应急系统中的单位代码');
    Abort;
  end;

  YJDWDM := Trim(edtYJDW.Text);
end;

end.

⌨️ 快捷键说明

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