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

📄 unitsulfinput.pas

📁 此代码为企业原料管理代码
💻 PAS
📖 第 1 页 / 共 2 页
字号:

unit UnitSulfInput;
interface

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

type
  TfrmSulfInput = class(TForm)
    Panel1: TPanel;
    Panel22: TPanel;
    DBGrid1: TDBGrid;
    Panel2: TPanel;
    Panel5: TPanel;
    Table1: TTable;
    Panel10: TPanel;
    Table1Name: TStringField;
    Table1TDate: TDateField;
    Table1QcNum: TIntegerField;
    Table1LackNum: TSmallintField;
    Table1ImpuNum: TSmallintField;
    Table1PoleNum: TSmallintField;
    Table1RipNum: TSmallintField;
    Table1ElseNum: TSmallintField;
    Table1SubSalary: TFloatField;
    Table1DisSalary: TFloatField;
    Table1TMonth: TStringField;
    Table1RubbMixID: TStringField;
    Table1MaterWeight: TFloatField;
    Table1Check: TStringField;
    Table1DrawWeight: TFloatField;
    Table1ProdNameID: TStringField;
    Panel15: TPanel;
    DBEprodnameID: TDBEdit;
    DBEmonth: TDBEdit;
    DBEdate: TDBEdit;
    Panel4: TPanel;
    Panel16: TPanel;
    Panel17: TPanel;
    Panel7: TPanel;
    Panel19: TPanel;
    Panel30: TPanel;
    Panel8: TPanel;
    Panel9: TPanel;
    Panel21: TPanel;
    Panel18: TPanel;
    Panel11: TPanel;
    BBPost: TBitBtn;
    BBEdit: TBitBtn;
    BBDelete: TBitBtn;
    BBInsert: TBitBtn;
    BBNext: TBitBtn;
    BBPrior: TBitBtn;
    Panel3: TPanel;
    Panel14: TPanel;
    Panel6: TPanel;
    DateTimePicker1: TDateTimePicker;
    Panel25: TPanel;
    Panel24: TPanel;
    Panel12: TPanel;
    Panel13: TPanel;
    echeck: TEdit;
    eprodn: TEdit;
    efigid: TEdit;
    ename: TEdit;
    esourceid: TEdit;
    eRubbCardID: TEdit;
    eRubbMixID: TEdit;
    Panel20: TPanel;
    Panel23: TPanel;
    CheckBoxdic: TCheckBox;
    Label1: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Label2: TLabel;
    Label3: TLabel;
    BitBtn1: TBitBtn;
    Table1RubbCardID: TStringField;
    Table1SourceID: TStringField;
    Table1FigID: TStringField;
    Table1ProdName: TStringField;
    echeckerid: TEdit;
    SpeedButton1: TSpeedButton;
    DataSource1: TDataSource;
    elack: TDBEdit;
    eImpu: TDBEdit;
    epole: TDBEdit;
    erip: TDBEdit;
    eElse: TDBEdit;
    edraww: TDBEdit;
    emastew: TDBEdit;
    eSubsa: TDBEdit;
    eDisSa: TDBEdit;
    eqcnum: TDBEdit;
    Label4: TLabel;
    Qry_exe: TQuery;
    Panel26: TPanel;
    DBEdit1: TDBEdit;
    Table1Moshu: TSmallintField;
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure BBPriorClick(Sender: TObject);
    procedure BBNextClick(Sender: TObject);
    procedure BBInsertClick(Sender: TObject);
    procedure BBDeleteClick(Sender: TObject);
    procedure BBEditClick(Sender: TObject);
    procedure BBPostClick(Sender: TObject);
    procedure DateTimePicker1Change(Sender: TObject);
    procedure DBENameIDEnter(Sender: TObject);
    procedure DBENameIDExit(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure DBECheckIDEnter(Sender: TObject);
    procedure DBENameIDKeyPress(Sender: TObject; var Key: Char);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure enameEnter(Sender: TObject);
    procedure eprodnEnter(Sender: TObject);
    procedure echeckEnter(Sender: TObject);
    procedure Label3MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure Panel20MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure Label2Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure CheckBoxdicClick(Sender: TObject);
    procedure elackEnter(Sender: TObject);
    procedure elackExit(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure eqcnumKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure eqcnumExit(Sender: TObject);
    procedure eprodnExit(Sender: TObject);
    procedure eqcnumEnter(Sender: TObject);
    procedure echeckExit(Sender: TObject);
  private
    { Private declarations }

  public
    { Public declarations }
  end;

var
  frmSulfInput: TfrmSulfInput;
   snum,kg,i:integer;
   sprodid:string;
   sdate:Tdate;
implementation

uses  UnitQueryID, UnitSulfInputPrint, UnitDM,
  UnitProdStock, Unit_Mater_tishi, UnitProdMain;

{$R *.DFM}

procedure TfrmSulfInput.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if key = #13 then
  begin
    key:=#0;
    perform(WM_NEXTDLGCTL,0,0);
  end; //if
end;

procedure TfrmSulfInput.BBPriorClick(Sender: TObject);
begin     //上一条
  BBNext.Enabled:=true;
  if not table1.Bof  then
    begin
     BBPrior.Enabled:=true;
     dbgrid1.SetFocus;
     table1.Prior;
     end
   else
     BBPrior.Enabled:=false;
end;

procedure TfrmSulfInput.BBNextClick(Sender: TObject);
begin       //下一条
   BBPrior.Enabled:=true;
  if not table1.Eof  then
    begin
     BBNext.Enabled:=true;
     dbgrid1.SetFocus;
     table1.Next;
     end
   else
     BBNext.Enabled:=false;
end;
//===============添加记录==========================
procedure TfrmSulfInput.BBInsertClick(Sender: TObject);
begin
  
  kg:=1;
 i:=1;
 table1.append;    //==添加===
 table1.disablecontrols;
 ename.Clear;
 eprodn.Clear;
 efigid.Clear;
 eqcnum.Clear;
 elack.Clear;
 eImpu.Clear;
 epole.Clear;
 erip.Clear;
 eElse.Clear;
 edraww.Clear;
 emastew.Clear;
 eSubsa.Clear;
 eDisSa.Clear;
 echeck.Clear;
 eRubbMixID.Clear;
 ename.SetFocus;

end;

procedure TfrmSulfInput.BBDeleteClick(Sender: TObject);
begin       //删除记录
   
  if MessageDLG('请您检查数据,确定要删除一条记录吗?',MtConfirmation,[mbYes,mbNo],0) =mrYes then
    begin
     table1.enablecontrols;
     table1.delete;
    end
end;

procedure TfrmSulfInput.BBEditClick(Sender: TObject);
begin      //编辑记录
  i:=1;
  //kg:=0;
  DateTimePicker1.date:=table1.fieldbyname('tdate').asdatetime;
  sdate:=table1.fieldbyname('tdate').asdatetime;
  eprodn.text:=table1.fieldbyname('prodname').asstring;
  efigid.text:=table1.fieldbyname('figid').asstring;
  dbeprodnameid.text:=table1.fieldbyname('prodnameid').asstring;
  sprodid:=table1.fieldbyname('prodnameid').asstring;
  eqcnum.text:=table1.fieldbyname('qcnum').asstring;
  snum:=strtoint(table1.fieldbyname('qcnum').asstring);
  ename.text:=table1.fieldbyname('name').asstring;
  edraww.text:=table1.fieldbyname('drawweight').asstring;
  emastew.text:=table1.fieldbyname('materweight').asstring;
  echeck.text:=table1.fieldbyname('check').asstring;
  esourceid.text:=table1.fieldbyname('sourceid').asstring;
  eRubbMixID.text:=table1.fieldbyname('RubbMixID').asstring;
  eRubbcardID.text:=table1.fieldbyname('生产批号').asstring;
  esubsa.text:=table1.fieldbyname('SubSalary').asstring;
  edissa.text:=table1.fieldbyname('DisSalary').asstring;
  elack.text:=table1.fieldbyname('lacknum').asstring;
  eimpu.text:=table1.fieldbyname('impunum').asstring;
  epole.text:=table1.fieldbyname('polenum').asstring;
  erip.text:=table1.fieldbyname('ripnum').asstring;
  eelse.text:=table1.fieldbyname('Elsenum').asstring;
  table1.edit;
  table1.disablecontrols;
end;


procedure TfrmSulfInput.BBPostClick(Sender: TObject);
var
  iNum:integer;
  sProdID,sProcBat,sCheckerID,sNote:string;
  vdate:tdate;
begin
  if (dm.zdyGetProdCheckDate >= DateTimePicker1.date) then
    begin
      showmessage('您选择的结帐日期早于上次结帐日期!'+#13+#13+'上次结帐日期是:'+datetostr(dm.zdyGetprodCheckDate));
      // showmodal;
       //frmProdMain.Visible:=true;
      exit;
    end; // if
if i=1 then //if1
begin
if (table1.State=dsinsert) or(table1.State=dsedit) then   begin
if ((ename.text = '') or ((eprodn.text = '') and (efigid.text = '')) or (eqcnum.text = '')
   or (edraww.text='') or (emastew.text='')  or
   (eRubbCardID.text='') or (echeck.text=''))or (esourceid.Text='') or (DBEdit1.text='') then
  begin
     showmessage('您填的数据不完整!');
     exit;
  end
else
  begin
    dbedate.text:=datetostr(DateTimePicker1.Date);
    dbemonth.text:=formatdatetime('yy"-"mm',strtodate(dbedate.text));
    table1.fieldbyname('tmonth').asstring:=dbemonth.text;
    table1.fieldbyname('tdate').asdatetime:=strtodate(dbedate.text);
    table1.fieldbyname('figid').asstring:=efigid.text;
    table1.fieldbyname('prodnameid').asstring:=dbeprodnameid.text;
    table1.fieldbyname('prodname').asstring:=eprodn.text;
    table1.fieldbyname('qcnum').asinteger:=strtoint(eqcnum.text);
    table1.fieldbyname('drawweight').asfloat:=strtofloat(edraww.text);
    table1.fieldbyname('materweight').asfloat:=strtofloat(emastew.text);
    table1.fieldbyname('name').asstring:=ename.text;
    table1.fieldbyname('check').asstring:=echeck.text;
    table1.fieldbyname('sourceid').asstring:=esourceid.text;
    table1.fieldbyname('RubbMixID').asstring:=eRubbMixID.text;
    table1.fieldbyname('生产批号').asstring:=eRubbCardID.text;

// 为第4部分保留数据
    sNote:=eRubbMixID.text;
    iNum:=strtoint(eqcnum.text);
    sProdID:=DBEprodnameID.text;
    sProcBat:=eRubbCardID.text;
    sCheckerID:=echeckerid.text;
    vdate:=DateTimePicker1.date;
    if (elack.text='') then
         table1.fieldbyname('lacknum').asinteger:=0
    else table1.fieldbyname('lacknum').asinteger:=strtoint(elack.text);
    if (eimpu.text='') then
         table1.fieldbyname('impunum').asinteger:=0
    else table1.fieldbyname('impunum').asinteger:=strtoint(eimpu.text);
    if (epole.text='') then
         table1.fieldbyname('polenum').asinteger:=0
    else table1.fieldbyname('polenum').asinteger:=strtoint(epole.text);
    if (erip.text='') then
         table1.fieldbyname('ripnum').asinteger:=0
    else table1.fieldbyname('ripnum').asinteger:=strtoint(erip.text);
    if (eElse.text='') then
         table1.fieldbyname('Elsenum').asinteger:=0
    else table1.fieldbyname('Elsenum').asinteger:=strtoint(eElse.text);
    if (esubsa.text='') then
         table1.fieldbyname('SubSalary').asfloat:=0
    else table1.fieldbyname('SubSalary').asfloat:=strtofloat(esubsa.text);
    if (edissa.text='') then
         table1.fieldbyname('DisSalary').asfloat:=0
    else table1.fieldbyname('DisSalary').asfloat:=strtofloat(edissa.text);
    table1.Post;
     table1.open;
    table1.enablecontrols;

   // showmessage('数据提交成功');
   // if SpeedButton1.down then
   // begin
   // Form_Mater_tishi.Caption:='          请 稍 后 , 正 在 入 库 记 帐 !';
   // Form_Mater_tishi.show;
   // end
  end;
 end//if状态判断

⌨️ 快捷键说明

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