U_fzlr_clbm.pas
上传用户:psxgmh
上传日期:2013-04-08
资源大小:15112k
文件大小:3k
源码类别:

Delphi/CppBuilder

开发平台:

Delphi

  1. unit U_fzlr_clbm;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  5.   ComCtrls, ExtCtrls, Db, DBClient, MConnect, Grids, DBGrids, StdCtrls,
  6.   Buttons;
  7. type
  8.   TfrmCLBM_FZLR = class(TForm)
  9.     Panel2: TPanel;
  10.     StatusBar1: TStatusBar;
  11.     DataSource1: TDataSource;
  12.     Panel4: TPanel;
  13.     btnOK: TSpeedButton;
  14.     btnCancel: TSpeedButton;
  15.     Panel1: TPanel;
  16.     Label1: TLabel;
  17.     Label2: TLabel;
  18.     Label3: TLabel;
  19.     btnQuery: TSpeedButton;
  20.     Edit1: TEdit;
  21.     Edit2: TEdit;
  22.     Edit3: TEdit;
  23.     DBGrid: TDBGrid;
  24.     procedure btnQueryClick(Sender: TObject);
  25.     procedure btnOKClick(Sender: TObject);
  26.     procedure btnCancelClick(Sender: TObject);
  27.     procedure FormCreate(Sender: TObject);
  28.   private
  29.     { Private declarations }
  30.   public
  31.     { Public declarations }
  32.   end;
  33. type
  34.   TClbmRec = record
  35.     clbm: string[11];
  36.     clmc: string[40];
  37.     ggxh: string[40];
  38.     jldw: string[20];
  39.     djdw: string[20];
  40.     jhdj: real;
  41.   end;
  42. var
  43.   frmCLBM_FZLR: TfrmCLBM_FZLR;
  44.   ClbmRec: array of TClbmRec;
  45. implementation
  46. uses U_mainform, WzglDB;
  47. {$R *.DFM}
  48. procedure TfrmCLBM_FZLR.btnQueryClick(Sender: TObject);
  49. begin
  50.   DM.CDS_CLBM_TEMP_INDEX.filter := '材料编码 like' + '''' + trim(edit1.text) + '%''' + ' and 材料名称 like ' + '''%' + trim(edit2.text) + '%''' + ' and 规格型号 like' + '''%' + trim(edit3.text) + '%''';
  51.   DM.CDS_CLBM_TEMP_INDEX.filtered := true;
  52. end;
  53. procedure TfrmCLBM_FZLR.btnOKClick(Sender: TObject);
  54. var
  55.   I: integer;
  56. begin
  57.   //设置动态数组长度
  58.   setLength(ClbmRec, dbgrid.SelectedRows.Count);
  59.   //将DbGrid里的数据传进到全局数组clbmRec中
  60.   for i := 0 to dbgrid.SelectedRows.Count - 1 do
  61.   begin
  62.     DBGrid.DataSource.DataSet.GotoBookmark(pointer(DBGrid.SelectedRows.Items[i]));
  63.     clbmRec[i].clbm := DM.CDS_CLBM_TEMP_INDEX.fieldbyname('材料编码').asstring;
  64.     clbmRec[i].clmc := DM.CDS_CLBM_TEMP_INDEX.fieldbyname('材料名称').asstring;
  65.     clbmRec[i].ggxh := DM.CDS_CLBM_TEMP_INDEX.fieldbyname('规格型号').asstring;
  66.     clbmRec[i].jldw := DM.CDS_CLBM_TEMP_INDEX.fieldbyname('计量单位').asstring;
  67.     clbmRec[i].jhdj := DM.CDS_CLBM_TEMP_INDEX.fieldbyname('计划单价').value;
  68.     clbmRec[i].djdw := DM.CDS_CLBM_TEMP_INDEX.fieldbyname('单价单位').asstring;
  69.   end;
  70.   close;
  71. end;
  72. procedure TfrmCLBM_FZLR.btnCancelClick(Sender: TObject);
  73. begin
  74.   close;
  75. end;
  76. procedure TfrmCLBM_FZLR.FormCreate(Sender: TObject);
  77. begin
  78. //初始化变量
  79.   setLength(clbmRec,0);
  80.   DM.CDS_CLBM_TEMP_INDEX.Active := True;
  81. end;
  82. end.