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

📄 gdzclr.~pas

📁 由delphi7.0+sql2000开发的固定资产管理程序
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:
    TDateTimePicker(FindNextControl(ActiveControl,True,False,False)).SetFocus;
end;

procedure TForm6.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_ReTurn then
    FindNext
  else if  Key = VK_Shift then
    FindPrior;
end;

procedure TForm6.FindPrior;
begin
  if FindNextControl(ActiveControl,False,False,False)is TEdit then
  begin
    if TEdit(FindNextControl(ActiveControl,False,False,False)).Enabled = True then
      TEdit(FindNextControl(ActiveControl,False,False,False)).SetFocus;
  end
  else if  FindNextControl(ActiveControl,False,False,False)is TComboBox then
     TComboBox(FindNextControl(ActiveControl,False,False,False)).SetFocus
  else if FindNextControl(ActiveControl,False,False,False)is TDateTimePicker then
    TDateTimePicker(FindNextControl(ActiveControl,False,False,False)).SetFocus;
end;

procedure TForm6.Edit4Change(Sender: TObject);
begin
  if Trim(Edit3.Text)<>'' then
  begin
    if (Trim(Edit10.Text)<>'')and(Trim(ComboBox4.Text)='年限平均法(1)') then
      Edit11.Text := Format('%15.2f',[StrToFloat(Edit3.Text)*StrToFloat(Edit10.Text)/100])
    else if  (Trim(Edit10.Text)<>'')and(Trim(ComboBox4.Text)='年限平均法(2)')then
    begin
      if (Trim(Edit4.Text)<>'')and(Trim(Edit7.Text)<>'')and(Trim(Edit8.Text)<>'')and(Trim(Edit9.Text)<>'')then
        Edit11.Text := Format('%15.2f',[(StrToFloat(Edit3.Text)-StrToFloat(Edit4.Text)-StrToFloat(Edit7.Text))/(StrToInt(Edit8.Text)-StrToInt(Edit9.Text))])
      else
        Edit11.Clear;
    end
    else
      Edit11.Clear;
  if Trim(Edit4.Text)<>''then
      Edit5.Text := Format('%15.2f',[StrToFloat(Edit3.Text)-StrToFloat(Edit4.Text)])
    else
      Edit5.Clear;
    if Trim(Edit6.Text)<>'' then
      Edit7.Text := Format('%15.2f',[StrToFloat(Edit3.Text)*StrToFloat(Edit6.Text)/100]);
  end
  else
  begin
    Edit5.Clear;
    Edit7.Clear;
    Edit11.Clear;
  end;
end;

procedure TForm6.Edit6Change(Sender: TObject);
begin
  if Trim(Edit6.Text)<>'' then
  begin
    if StrToFloat(Edit6.Text)>100 then
    begin
      Application.MessageBox('净残值率不能大于100。','提示',64);
      Edit6.Clear;
      Exit;
    end
    else if Trim(Edit3.Text)<>'' then
      Edit7.Text := Format('%15.2f',[StrToFloat(Edit3.Text)*StrToFloat(Edit6.Text)/100])
    else
      Edit7.Clear;
  end
  else
    Edit7.Clear;
  Edit8.OnChange(Sender);
end;

procedure TForm6.Edit8Change(Sender: TObject);
begin
  Edit7.OnChange(Sender);
  if (Trim(Edit8.Text)<>'')and(Trim(Edit6.Text)<>'')then
    Edit10.Text := Format('%8.4f',[(1- StrToFloat(Edit6.Text)/100)/StrToFloat(Edit8.Text)*100])
  else
    Edit10.Clear;
end;

procedure TForm6.ComboBox4Change(Sender: TObject);
begin
  if Trim(ComboBox4.Text)<>'' then
  begin
    if Trim(ComboBox4.Text)='年限平均法(1)' then
    begin
      if (Trim(Edit3.Text)<>'')and(Trim(Edit10.Text)<>'') then
        Edit11.Text := Format('%15.2f',[StrToFloat(Edit3.Text)*StrToFloat(Edit10.Text)/100])
      else
        Edit11.Clear;
    end
    else if Trim(ComboBox4.Text)='年限平均法(2)' then
      Edit7.OnChange(Sender);
  end;
end;

procedure TForm6.Edit7Change(Sender: TObject);
begin
  if Trim(ComboBox4.Text)='年限平均法(2)' then
  begin
    if (Trim(Edit3.Text)<>'')and(Trim(Edit4.Text)<>'')and (Trim(Edit7.Text)<>'')and(Trim(Edit8.Text)<>'')
      and(Trim(Edit9.Text)<>'') then
    begin
      if StrToFloat(Edit8.Text)>StrToFloat(Edit9.Text)then
        Edit11.Text := Format('%15.2f',[(StrToFloat(Edit3.Text)-StrToFloat(Edit4.Text)-StrToFloat(Edit7.Text))/(StrToInt(Edit8.Text)-StrToInt(Edit9.Text))])
      else
        Edit11.Clear;  
    end
    else
      Edit11.Clear;
  end;
end;

procedure TForm6.Edit10Change(Sender: TObject);
begin
  if (Trim(Edit10.Text)<>'')and(Trim(ComboBox4.Text)='年限平均法(1)') then
    Edit11.Text := Format('%15.2f',[StrToFloat(Edit3.Text)*StrToFloat(Edit10.Text)/100])
    
end;

procedure TForm6.Edit15Change(Sender: TObject);
begin
  if Trim(Edit15.Text)<>'' then
  begin
    if (Trim(Edit13.Text)<>'')and(Trim(Edit14.Text)<>'') then
      Edit12.Text := Format('%15.2f',[StrToFloat(Edit15.Text)+ StrToFloat(Edit13.Text)-StrToFloat(Edit14.Text)])
    else if (Trim(Edit13.Text)='')and(Trim(Edit14.Text)<>'') then
      Edit12.Text := Format('%15.2f',[StrToFloat(Edit15.Text)-StrToFloat(Edit14.Text)])
    else if (Trim(Edit13.Text)<>'')and(Trim(Edit14.Text)='') then
      Edit12.Text := Format('%15.2f',[StrToFloat(Edit15.Text)+StrToFloat(Edit13.Text)])
    else
      Edit12.Text := Edit15.Text;
  end
  else
    Edit12.Clear;
end;

procedure TForm6.Edit19Change(Sender: TObject);
begin
  if Trim(Edit19.Text)<>'' then
  begin
    if (Trim(Edit17.Text)<>'')and(Trim(Edit18.Text)<>'') then
      Edit16.Text := Format('%15.2f',[StrToFloat(Edit19.Text)+ StrToFloat(Edit17.Text)-StrToFloat(Edit18.Text)])
    else if (Trim(Edit17.Text)='')and(Trim(Edit18.Text)<>'') then
      Edit16.Text := Format('%15.2f',[StrToFloat(Edit19.Text)-StrToFloat(Edit18.Text)])
    else if (Trim(Edit17.Text)<>'')and(Trim(Edit18.Text)='') then
      Edit16.Text := Format('%15.2f',[StrToFloat(Edit19.Text)+StrToFloat(Edit17.Text)])
    else
      Edit16.Text := Edit19.Text;
  end
  else
    Edit16.Clear;
end;

function TForm6.ISWF: Boolean;
begin
  Iswf := False;
  if (StrToFloat(Edit3.Text)<0)or(StrToFloat(Edit4.Text)<0)or(StrToFloat(Edit5.Text)<0)or
    (StrToFloat(Edit6.Text)<0)or(StrToFloat(Edit7.Text)<0)or(StrToFloat(Edit10.Text)<0)or(StrToFloat(Edit11.Text)<0) then
      Iswf := True;
end;

function TForm6.IsNull: Boolean;
begin
  IsNull := False;
  if (Trim(label3.Caption)='')or(Trim(Edit1.Text)='')or(Trim(ComboBox1.Text)='')or(Trim(ComboBox2.Text)='')or(Trim(Edit3.Text)='')or
   (Trim(Edit4.Text)='')or(Trim(Edit5.Text)='')or(Trim(ComboBox3.Text)='')or(Trim(Edit6.Text)='')or(Trim(Edit7.Text)='')or(Trim(Edit8.Text)='')or
   (Trim(Edit9.Text)='')or(Trim(ComboBox4.Text)='')or(Trim(Edit10.Text)='')or(Trim(Edit11.Text)='') then
     IsNull := True;
end;

procedure TForm6.BitBtn2Click(Sender: TObject);
begin
  if IsNull = False then
  begin
    if IsWf = False then
    begin
      Try
        with Daz.ADOQuery1 do
        begin
          Close;
          SQL.Clear;
          SQL.Add('Insert 固定资产信息表 values(:a,:b,:c,:d,:e,:f,:g,:h,:i,:j,:k,:l,:m,:n,:o,:p,:q,:r,:s,:t,:u,:v,:w,:x,Default,:y)');
          Parameters.ParamByName('a').Value := Trim(Label3.Caption);
          Parameters.ParamByName('b').Value := Trim(Edit1.Text);
          Parameters.ParamByName('c').Value := Trim(ComboBox1.Text);
          Parameters.ParamByName('d').Value := Trim(Edit2.Text);
          Parameters.ParamByName('e').Value := Trim(ComboBox2.Text);
          Parameters.ParamByName('f').Value := Trim(ComboBox3.Text);
          Parameters.ParamByName('g').Value := StrToFloat(Edit3.Text);
          Parameters.ParamByName('h').Value := StrToFloat(Edit4.Text);
          Parameters.ParamByName('i').Value := StrToFloat(Edit5.Text);
          Parameters.ParamByName('j').Value := StrToFloat(Edit6.Text);
          Parameters.ParamByName('k').Value := StrToFloat(Edit7.Text);
          Parameters.ParamByName('l').Value := Trim(ComboBox4.Text);
          Parameters.ParamByName('m').Value := StrToInt(Edit8.Text);
          Parameters.ParamByName('n').Value := StrtoInt(Edit9.Text);
          Parameters.ParamByName('o').Value := StrToFloat(Edit10.Text);
          parameters.ParamByName('p').Value := StrToFloat(Edit11.Text);
          if Trim(Edit12.Text)<>'' then
            Parameters.ParamByName('q').Value := StrToFloat(Edit12.Text)
          else
            Parameters.ParamByName('q').Value := Null;
          if Trim(Edit13.Text)<>'' then
            Parameters.ParamByName('r').Value := StrToFloat(Edit13.Text)
          else
            Parameters.ParamByName('r').Value := Null;
          if Trim(Edit14.Text)<>'' then
            Parameters.ParamByName('s').Value := StrToFloat(Edit14.Text)
          else
            Parameters.ParamByName('s').Value := Null;
          if Trim(Edit15.Text)<>'' then
            Parameters.ParamByName('t').Value := StrToFloat(Edit15.Text)
          else
            Parameters.ParamByName('t').Value := Null;
          if Trim(Edit16.Text)<>'' then
            Parameters.ParamByName('u').Value := StrToFloat(Edit16.Text)
          else
            Parameters.ParamByName('u').Value := Null;
          if Trim(Edit17.Text)<>'' then
            Parameters.ParamByName('v').Value := StrToFloat(Edit17.Text)
          else
            Parameters.ParamByName('v').Value := Null;
          if Trim(Edit18.Text)<>'' then
            Parameters.ParamByName('w').Value := StrToFloat(Edit18.Text)
          else
            Parameters.ParamByName('w').Value := Null;
          if Trim(Edit19.Text)<>'' then
            Parameters.ParamByName('x').Value := StrToFloat(Edit19.Text)
          else
            Parameters.ParamByName('x').Value := Null;
            Parameters.ParamByName('y').Value := DateTimepicker1.Date;
          ExecSQL;
        end;
        Application.MessageBox('操作成功。','提示',64);
        BitBtn3.OnClick(Sender);
      Except
        Application.MessageBox('操作失败。','提示',64);
        Close;
      end;
    end
    else
      Application.MessageBox('项目列表数据不能小于零。','提示',64);
  end
  else
    Application.MessageBox('基础信息有空项。','提示',64);
end;

end.


⌨️ 快捷键说明

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