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

📄 uhm.pas

📁 在打沙场用的最简单
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit uhm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, MDIbaseinfo, Menus, FR_Class, FR_DSet, FR_DBSet, DB, DBClient,
  ImgList, ActnList, Grids, DBGridEh, wwdbdatetimepicker, StdCtrls, Mask,inifiles,
  comobj, Excel2000,wwdbedit, Buttons, ExtCtrls, wwdblook, PDJComEdit,common,
  ADODB, DBTables;

type
  Tfrmhm = class(TfrmMDIbaseinfo)
    Label5: TLabel;
    wwDBEdit4: TwwDBEdit;
    Label6: TLabel;
    wwDBEdit5: TwwDBEdit;
    Label9: TLabel;
    wwDBEdit8: TwwDBEdit;
    wwDBDateTimePicker2: TwwDBDateTimePicker;
    Label8: TLabel;
    Label7: TLabel;
    wwDBLookupCombo1: TwwDBLookupCombo;
    CDSmasterfid: TAutoIncField;
    CDSmasterfresid: TIntegerField;
    CDSmasterfrefno: TWideStringField;
    CDSmasterfstoreno: TWideStringField;
    CDSmasterfprovider: TWideStringField;
    CDSmasterfpurer: TWideStringField;
    CDSmasterfpurstore: TWideStringField;
    CDSmasterfdelivdate: TDateTimeField;
    CDSmasterfnote: TWideStringField;
    CDSmasterfcreadate: TDateTimeField;
    CDSmasterfcreauser: TWideStringField;
    CDSsubfid: TAutoIncField;
    CDSsubfresid: TIntegerField;
    CDSsubfitemid: TIntegerField;
    CDSsubfqty: TBCDField;
    CDSsubfprice: TBCDField;
    CDSsubfamount: TFloatField;
    CDSstore: TClientDataSet;
    CDSstoreField: TStringField;
    Timer1: TTimer;
    BitBtn1: TBitBtn;
    PDJComEdit1: TPDJComEdit;
    OpenDialog1: TOpenDialog;
    CDSsubcolorno: TStringField;
    CDSsubgno: TStringField;
    CDSsubzs: TStringField;
    CDSsubfnote: TStringField;
    con1: TADOConnection;
    ADOQuery1: TADOQuery;
    ADOQuery2: TADOQuery;
    ADOQuery3: TADOQuery;
    CDSmasterpno: TStringField;
    wwDBEdit2: TwwDBEdit;
    Label10: TLabel;
    Label11: TLabel;
    wwDBEdit3: TwwDBEdit;
    CDSmasterfprice: TFloatField;
    CDSsubcolor: TStringField;
    CDSsubfcode: TStringField;
    CDSsubfname: TStringField;
    CDSsubfunit: TStringField;
    CDSsubftype: TStringField;
    CDSsubtotal: TBCDField;
    CDSsuboldfqty: TFloatField;
    wwDBEdit19: TwwDBEdit;
    wwDBEdit22: TwwDBEdit;
    wwDBEdit21: TwwDBEdit;
    Label15: TLabel;
    Label16: TLabel;
    Label13: TLabel;
    CDSmasterfks: TStringField;
    CDSmasterfkh: TStringField;
    CDSmasterfgx: TStringField;
    Query1: TQuery;
    Query2: TQuery;
    procedure CDSsubCalcFields(DataSet: TDataSet);
    procedure GridColumns2EditButtonDown(Sender: TObject;
      TopButton: Boolean; var AutoRepeat, Handled: Boolean);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure acsaveExecute(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure PDJComEdit1ClickButton(Sender: TObject);
    procedure p05Execute(Sender: TObject);
    procedure acaddExecute(Sender: TObject);
    procedure GridColExit(Sender: TObject);
    procedure GridKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
      procedure creastoredata;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmhm: Tfrmhm;

implementation

uses ustore_f, Global, data;

{$R *.dfm}

procedure Tfrmhm.CDSsubCalcFields(DataSet: TDataSet);
begin
  inherited;
  with CDSSub do
    begin
      Fieldbyname('famount').AsFloat:=fieldbyname('fqty').AsFloat*
                    fieldbyname('fprice').AsFloat;
    end;
end;

procedure Tfrmhm.creastoredata;
begin
  with CDSstore do
    begin
      close;
      FieldDefs.Add('选项',ftString,20);
      CreateDataSet;
      AppendRecord(['公司内部仓库']);
      open;
    end;
end;

procedure Tfrmhm.GridColumns2EditButtonDown(Sender: TObject;
  TopButton: Boolean; var AutoRepeat, Handled: Boolean);
begin
  inherited;
  Selectsub;
end;

procedure Tfrmhm.FormCreate(Sender: TObject);
begin
  inherited;
  titlecaption:='回毛管理';
  Maintable:='Thm';
  MainView:='Vhm';
  SubTable:='Thmsub';
  Subview:='Vhmsub';
  Searchfrm:=Tfrmstore_f;
  frname:=gs_appPath+'\Prints\frhm.frf';
  Keyfield:='fid';
  iBillTypeid:=2;
//  adoconnection1.ConnectionString:=gs_appPath+'kc.udl';
//  adoconnection1.Connected:=true;
end;

procedure Tfrmhm.FormShow(Sender: TObject);
var
  s:string;
  ini:Tinifile;
  usercode:string;
  serverIP:string;
begin
  inherited;
  creastoredata;
  s:=Extractfilepath(application.ExeName);
  if s[length(s)]<>'\' then
    s:=s+'\'+'Default.ini'
    else
    s:=s+'Default.ini';
  try
    ini:=Tinifile.Create(s);
    serverIP:=ini.ReadString('ADO','FILE NAME','');
  finally
    ini.Free;
  end;

  if Serverip<>'' then
    con1.ConnectionString:='FILE NAME='+serverip
    else
    con1.ConnectionString:='FILE NAME=\kc.udl';
    con1.Connected:=true;
end;

procedure Tfrmhm.acsaveExecute(Sender: TObject);
var
  cmdStr:string;
  yy,mm,dd:word;
begin
   decodedate(wwDBDateTimePicker2.Date,yy,mm,dd);
   cdssub.DisableControls;
   CDSsub.First;
   while not CDSsub.eof do
   begin
     with query2 do
     begin
     SQL.Clear;
     SQL.Add('select ck from tpurreturnsub   where  colorno =:colorno and gno=:gno ');
     sql.add(' and  fcode=:fcode  and ck=:ck and years=:years and months=:months');
     ParamByName('colorno').asstring:=cdssub.fieldbyname('colorno').asstring;
     ParamByName('gno').asstring:=cdssub.fieldbyname('gno').asstring;
     ParamByName('fcode').asstring:=cdssub.fieldbyname('fcode').asstring;
     ParamByName('ck').asstring:=wwDBLookupCombo1.Text;
     ParamByName('years').asinteger:=yy;
     ParamByName('months').asinteger:=mm;
     Open;
     end;

     if query2.RecordCount>0 then
     begin
     with query1 do
     begin
      if editstate=1 then
      begin
      SQL.Clear;
      SQL.Add('update  tpurreturnsub set fjqty=fjqty+:qty where  colorno =:colorno and gno=:gno ');
      sql.add(' and   fcode=:fcode   and ck=:ck and years=:years and months=:months');
      ParamByName('colorno').asstring:=cdssub.fieldbyname('colorno').asstring;
      ParamByName('gno').asstring:=cdssub.fieldbyname('gno').asstring;
      ParamByName('fcode').asstring:=cdssub.fieldbyname('fcode').asstring;
      ParamByName('qty').asfloat:=cdssub.fieldbyname('fqty').asfloat;      
      ParamByName('ck').asstring:=wwDBLookupCombo1.Text;
      ParamByName('years').asinteger:=yy;
      ParamByName('months').asinteger:=mm;
      execsql;     
      end;
      if editstate=2 then
      begin
      SQL.Clear;
      SQL.Add('update  tpurreturnsub set fjqty=fjqty+:qty where  colorno =:colorno and gno=:gno ');
      sql.add(' and fcode=:fcode   and ck=:ck and years=:years and months=:months');
      ParamByName('colorno').asstring:=cdssub.fieldbyname('colorno').asstring;
      ParamByName('gno').asstring:=cdssub.fieldbyname('gno').asstring;
      ParamByName('fcode').asstring:=cdssub.fieldbyname('fcode').asstring;
      ParamByName('qty').asfloat:=cdssub.fieldbyname('fqty').asfloat-cdssub.fieldbyname('oldfqty').asfloat;      
      ParamByName('ck').asstring:=wwDBLookupCombo1.Text;
      ParamByName('years').asinteger:=yy;
      ParamByName('months').asinteger:=mm;
      execsql;

      end;
     end;
     end else
     begin
     with  query1 do
     begin
      sql.clear;
      sql.Add('insert into tpurreturnsub(funit,ftype,fresid,color,zs,fcode,fname,fjqty,colorno,gno,ck,years,months,pno ) values (:funit,:ftype,1,:color,:zs,:fcode,:fname,:fjqty,:colorno,:gno,:ck,:years,:months,:pno)');
      ParamByName('funit').asstring:=cdssub.fieldbyname('funit').asstring;
      ParamByName('ftype').asstring:=cdssub.fieldbyname('ftype').asstring;      
      ParamByName('colorno').asstring:=cdssub.fieldbyname('colorno').asstring;
      ParamByName('gno').asstring:=cdssub.fieldbyname('gno').asstring;
      ParamByName('fjqty').asfloat:=cdssub.fieldbyname('fqty').asfloat;
      ParamByName('color').asstring:=cdssub.fieldbyname('color').asstring;
      ParamByName('zs').asstring:=cdssub.fieldbyname('zs').asstring;
      ParamByName('fcode').asstring:=cdssub.fieldbyname('fcode').asstring;
      ParamByName('fname').asstring:=cdssub.fieldbyname('fname').asstring;
      ParamByName('pno').asstring:=wwdbedit2.Text;      
      ParamByName('ck').asstring:=wwDBLookupCombo1.Text;
      ParamByName('years').asinteger:=yy;
      ParamByName('months').asinteger:=mm;
      execsql;
     end;
     end;
     cdssub.next;
   end;
  cdssub.EnableControls;
  inherited;
  cmdStr:='Insert into tptotal(fpid) values('+vartosql(inNumber)+')';
  Execsql(cmdStr);  
end;

procedure Tfrmhm.BitBtn1Click(Sender: TObject);
var
  s,str1,str2,str3,str4:string;
i,  ii,jj:integer;
  ini:textfile;
 Searcht, usercode:string;
begin
  inherited;
    s:=OpenDialog1.FileName;
    if not FileExists(s) then    //判断此文件是否存在
    showmessage('该文件不存在')
    else
    begin
    AssignFile(ini,s);
    reset(ini);
    CDSmaster.Append;
   // i:=1;
    while not eof(ini) do
    begin

⌨️ 快捷键说明

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