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

📄 unitbomrequery.~pas

📁 BOM表
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:


procedure TFormBomRequery.cxDBMaskEditXSXSPropertiesEditValueChanged(
  Sender: TObject);
var
  TempVal : Double;
begin

    with ADOQueryPrice do
    begin
      if active  then
      begin
        if Not (State in [dsInsert , dsEdit] ) then Edit;
        TempVal  := TempSum;// + FieldByName('MuBiaoZZS').AsFloat;
        FieldByName('MuBiaoZZS').Value := FieldByName('MuBiaoZZSXS').Value *TempVal;
        TempVal  := TempVal + FieldByName('MuBiaoZZS').AsFloat;
        TempVal  := TempVal + FieldByName('MuBiaoFJS').AsFloat;
        TempVal  := TempVal + FieldByName('MuBiaoGJ').AsFloat;
        FieldByName('MuBiaoQT').Value := FieldByName('MuBiaoQTXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoQT').AsFloat;
        FieldByName('MuBiaoXSY').Value := FieldByName('MuBiaoXSYXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoXSY').AsFloat;
        FieldByName('MuBiaoDQ').Value := FieldByName('MuBiaoDQXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoDQ').AsFloat;
        FieldByName('MuBiaoBaoJia').Value := TempVal;
       // UpdateBatch(arAll);
      end;
    end;

end;



procedure TFormBomRequery.cxDBMaskEditDQXSPropertiesEditValueChanged(
  Sender: TObject);

var
  TempVal : Double;
begin

    with ADOQueryPrice do
    begin
      if active  then
      begin
        if Not (State in [dsInsert , dsEdit] ) then Edit;
        TempVal  := TempSum;// + FieldByName('MuBiaoZZS').AsFloat;
        FieldByName('MuBiaoZZS').Value := FieldByName('MuBiaoZZSXS').Value *TempVal;
        TempVal  := TempVal + FieldByName('MuBiaoZZS').AsFloat;
        TempVal  := TempVal + FieldByName('MuBiaoFJS').AsFloat;
        TempVal  := TempVal + FieldByName('MuBiaoGJ').AsFloat;
        FieldByName('MuBiaoQT').Value := FieldByName('MuBiaoQTXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoQT').AsFloat;
        FieldByName('MuBiaoXSY').Value := FieldByName('MuBiaoXSYXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoXSY').AsFloat;
        FieldByName('MuBiaoDQ').Value := FieldByName('MuBiaoDQXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoDQ').AsFloat;
        FieldByName('MuBiaoBaoJia').Value := TempVal;
        //UpdateBatch(arAll);
      end;
    end;
end;


procedure TFormBomRequery.FormShow(Sender: TObject);
begin

  cxDBMaskEditGJCB.Properties.ReadOnly := True;
  cxDBMaskEditQTCB.Properties.ReadOnly := True;
  cxDBMaskEditXSCB.Properties.ReadOnly := True;
  cxDBMaskEditDQCB.Properties.ReadOnly := True;
  cxDBMaskEditMBBJ.Properties.ReadOnly := True;
  cxDBMaskEditZZS.Properties.ReadOnly := True;
   cxMaskEditXiaoJi.Properties.ReadOnly := True;

  cxDBMaskEditQTXS.Properties.ReadOnly := True;
  cxDBMaskEditXSXS.Properties.ReadOnly := True;
  cxDBMaskEditDQXS.Properties.ReadOnly := True;
  cxDBMaskEditZZSXS.Properties.ReadOnly := True;
  cxDBMaskEditFJS.Properties.ReadOnly := True;
  Button1.Enabled := False;

end;

procedure TFormBomRequery.Button2Click(Sender: TObject);
begin

  cxDBMaskEditGJCB.Properties.ReadOnly := False;
  cxDBMaskEditQTXS.Properties.ReadOnly := False;
  cxDBMaskEditXSXS.Properties.ReadOnly := False;
  cxDBMaskEditDQXS.Properties.ReadOnly := False;
  cxDBMaskEditFJSXS.Properties.ReadOnly := False;
 // cxDBMaskEditZZSXS.Properties.ReadOnly := False;

  Button1.Enabled := True;
end;

procedure TFormBomRequery.cxDBMaskEditZZSPropertiesEditValueChanged(
  Sender: TObject);
var
  TempVal : Double;
begin

    with ADOQueryPrice do
    begin
      if active  then
      begin
        if Not (State in [dsInsert , dsEdit] ) then Edit;
        TempVal  := TempSum;
        FieldByName('MuBiaoZZS').Value := FieldByName('MuBiaoZZSXS').Value *TempVal;
        TempVal  := TempVal + FieldByName('MuBiaoZZS').AsFloat;
        TempVal  := TempVal + FieldByName('MuBiaoFJS').AsFloat;
        TempVal  := TempVal + FieldByName('MuBiaoGJ').AsFloat;

        cxMaskEditXiaoJi.Text := FormatFloat('0.00',TempVal);

        FieldByName('MuBiaoQT').Value := FieldByName('MuBiaoQTXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoQT').AsFloat;
        FieldByName('MuBiaoXSY').Value := FieldByName('MuBiaoXSYXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoXSY').AsFloat;
        FieldByName('MuBiaoDQ').Value := FieldByName('MuBiaoDQXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoDQ').AsFloat;
        FieldByName('MuBiaoBaoJia').Value := TempVal;
      // UpdateBatch(arAll);
        
      end;
    end;

end;

procedure TFormBomRequery.cxDBMaskEditFJSXSPropertiesEditValueChanged(
  Sender: TObject);
var
  TempVal : Double;
begin

    with ADOQueryPrice do
    begin
      if active  then
      begin
        if Not (State in [dsInsert , dsEdit] ) then Edit;
        TempVal  := TempSum ;//+ FieldByName('MuBiaoZZS').AsFloat;
        FieldByName('MuBiaoZZS').Value := FieldByName('MuBiaoZZSXS').Value *TempVal;
        TempVal  := TempVal + FieldByName('MuBiaoZZS').AsFloat;
        FieldByName('MuBiaoFJS').Value := FieldByName('MuBiaoFJSXS').Value *TempVal; 
        TempVal  := TempVal + FieldByName('MuBiaoFJS').AsFloat;
        TempVal  := TempVal + FieldByName('MuBiaoGJ').AsFloat;
        FieldByName('MuBiaoQT').Value := FieldByName('MuBiaoQTXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoQT').AsFloat;
        FieldByName('MuBiaoXSY').Value := FieldByName('MuBiaoXSYXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoXSY').AsFloat;
        FieldByName('MuBiaoDQ').Value := FieldByName('MuBiaoDQXS').Value *TempVal;
        TempVal :=  TempVal + FieldByName('MuBiaoDQ').AsFloat;
        FieldByName('MuBiaoBaoJia').Value := TempVal;
       //UpdateBatch(arAll);
      end;
    end;

end;  

procedure TFormBomRequery.ButtonRefreshClick(Sender: TObject);
begin
 with TFormCost.Create(nil) do
 begin
   ReplaceAll := False;
   with ADOQueryCostReplace do
   begin
     Connection := Env.ADOConnection;
     SQL.Text := 'SELECT *  FROM App_MaterailPrice ' +
            ' WHERE (ISNULL(MaterailCost, 0) = 0) AND (ObjectID IN '+
            ' (SELECT ObjectID FROM pub_Objects '+
            ' WHERE ObjectParentID = '+ IntToStr(ObjID)  +
            ' AND Isnull(ObjectdeleteFlag, 0) = 0))';
     Open;
   end;
   ShowModal;
   if ModalResult = mrOK then
   begin
    { if self.ADOQueryPrice.Active then
     begin
       self.ADOQueryPrice.Close;
       self.ADOQueryPrice.Open;
     end;
     showmessage('33333333333'); }

     with Self do
     begin
       with ADOQueryBOM do
        begin
          if Active then Close;
          Connection := env.ADOConnection;
          SQl.Text := ' SELECT  MaterailClass, MaterailName, MaterailType, SUM(MaterailCount) as MaterailCount, ' +
                      ' SUM(MaterailCostSum)  as MaterailCostSum,  ' +
                      ' MaterailCost  FROM View_BomRequery  ' +
                      ' where  (ObjectID IN   (SELECT ObjectID FROM Pub_Objects WHERE ObjectParentID =  '+IntToStr(ObjID) + '))'+
                      ' GROUP BY  MaterailClass, MaterailName, MaterailType, MaterailProgID,MaterailCost  ';
           Open;
           First;
        end;

         with TADOQuery.Create(nil) do
        begin
          Connection := Env.ADOConnection;
          SQL.Text := 'SELECT Count(*)  as CountRcd FROM App_MaterailPrice ' +
                      ' WHERE (ISNULL(MaterailCost, 0) = 0) AND (ObjectID IN '+
                      ' (SELECT ObjectID FROM pub_Objects '+
                      ' WHERE ObjectParentID = '+ IntToStr(ObjID)  +
                      ' AND Isnull(ObjectdeleteFlag, 0) = 0))';
          Open;
          IF FieldByName('CountRcd').AsInteger > 0 then
            ButtonRefresh.Enabled := True
          Else
            ButtonRefresh.Enabled := False;
          Free;
        end;

        with TADOQuery.Create(nil) do
        begin
          Connection := env.ADOConnection;
          SQl.Text := ' SELECT  SUM(MaterailCostSum)  as MaterailCostSum   FROM View_BomRequery ' +
                      '  where  (ObjectID IN   (SELECT ObjectID FROM Pub_Objects WHERE ObjectParentID =  '+IntToStr(ObjID) + '))';
           Open;
           First;
           TempText := StrToFloat(FormatFloat('0.00',FieldByName('MaterailCostSum').AsFloat));
           Free;
        end;
      //dxDBGridBOM

     end;
   end;
   Free;
 end;





end;

procedure TFormBomRequery.Button3Click(Sender: TObject);
var
 TitleStr :String;
begin
//  dxComponentPrinter1.PageSetupEx()
with TADOQuery.Create(nil) do
begin
  Connection := Env.ADOConnection;
  SQl.Text := ' select ''项目名称:'' +(select ObjectName from Pub_Objects where ' +
              ' ObjectID = (select ObjectParentID from Pub_Objects where ObjectID = ' +  IntToStr(ObjID)  +
              ' )) +   ''     报价名称:'' + ObjectName  + ''     打印日期 :'' + convert(nvarchar(10),getdate(), 20) as ObjName ' +
              '  From Pub_Objects where ObjectID = ' + IntToStr(ObjID);
  Open;
  if not Eof then
    TitleStr := FieldByName('ObjName').AsString;
  Free;
end;
dxDBGridBOMColumn2.Width := 160;
dxDBGridBOMColumn3.Width := 200;
dxDBGridBOMColumn4.Width := 100;
dxDBGridBOMColumn5.Width := 100;
dxDBGridBOMColumn6.Width := 100;


dxComponentPrinter1Link1.ReportTitle.Text := TitleStr;
//dxComponentPrinter1.Preview(True,dxComponentPrinter1Link1);
dxComponentPrinter1.Print(True,nil,dxComponentPrinter1Link1);
dxDBGridBOMColumn2.Width := 152;
dxDBGridBOMColumn3.Width := 147;
dxDBGridBOMColumn4.Width := 109;
dxDBGridBOMColumn5.Width := 126;
dxDBGridBOMColumn6.Width := 94;
end;

end.

⌨️ 快捷键说明

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