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

📄 wmu.cpp

📁 科思ERP部分源码及控件
💻 CPP
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include "Wmu.h"
#include "wnquery.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
#pragma link "DateEdit"
#pragma link "SDComboBox"
#pragma link "SDEdit"
#pragma link "SDGrid"
#pragma resource "*.dfm"

TfrmWmu *frmWmu;
//---------------------------------------------------------------------------
__fastcall TfrmWmu::TfrmWmu(TComponent* Owner,HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
    : TStdBaseForm(Owner,chWnd,MidCode,WhereStr)
{
    int iPos;
    iPos=WhereStr.Pos("\t");
    FChecked=WhereStr.SubString(1,iPos-1);
    WhereStr=WhereStr.SubString(iPos+1,WhereStr.Length());

    iPos=WhereStr.Pos("\t");
    FWmuPdrCode=WhereStr.SubString(1,iPos-1);
    WhereStr=WhereStr.SubString(iPos+1,WhereStr.Length());

    iPos=WhereStr.Pos("\t");
    FWmuPdrdLine=StrToInt(WhereStr.SubString(1,iPos-1));
    WhereStr=WhereStr.SubString(iPos+1,WhereStr.Length());

    iPos=WhereStr.Pos("\t");
    FWmuWoCode=WhereStr.SubString(1,iPos-1);
    FWmuProcess=WhereStr.SubString(iPos+1,WhereStr.Length());
}
//---------------------------------------------------------------------------
void __fastcall TfrmWmu::FormShow(TObject *Sender)
{
    AnsiString SqlStr,ItemStr;
    TComResultSet *RsWmu;
    SqlStr="select WmdGoods,GoodsName,WmdLoc,WmdQty,WmdUQty,WmdBQty,WmdLQty,WmuUQty=Coalesce(WmuUQty,0),WmuDQty=Coalesce(WmuDQty,0),WmuUdr=coalesce(WmuUdr,'') from sdWmd,sdGoods,sdWmu where WmdGoods=GoodsCode ";
    SqlStr+=" and WmdWoCode='"+FWmuWoCode+"' and WmdProcess='"+FWmuProcess+"'  and WmdWoCode*=WmuWo and WmdProcess*=WmuProcess and WmdGoods*=WmuGoods and WmuPdrCode='"+FWmuPdrCode+"'";
    SqlStr+=" and WmuPdrdLine="+FWmuPdrdLine+" order by WmdGoods";
    seWmuPdrCode->Text=FWmuPdrCode;
    seWmuPdrdLine->Text=FWmuPdrdLine;
    seWmuWoCode->Text=FWmuWoCode;
    seWmuProcess->Text=FWmuProcess;
    GroupBox1->Enabled=false;
    RsWmu=new  TComResultSet(Handle,g_ClientHandle);
    RsWmu->Open(SqlStr,"");
    RsWmu->MoveFirst();
    sgWmu->RowCount=1;
    while(RsWmu->Eof==0)
    {
      ItemStr =  RsWmu->FieldByName("WmdGoods")+
                 "\t" +RsWmu->FieldByName("Goodsname")+
                 "\t" +RsWmu->FieldByName("WmdLoc")+
                 "\t" +RsWmu->FieldByName("WmdQty")+
                 "\t" +RsWmu->FieldByName("WmdUQty")+
                 "\t" +RsWmu->FieldByName("WmdBQty")+
                 "\t" +RsWmu->FieldByName("WmdLQty")+
                 "\t" +RsWmu->FieldByName("WmuUQty")+
                 "\t" +RsWmu->FieldByName("WmuDQty")+
                 "\t" +RsWmu->FieldByName("WmuUdr");
      sgWmu->AddItem(ItemStr);
      RsWmu->MoveNext();
    }
    RsWmu->Close();
    delete RsWmu;
    if(FChecked==1)
    {
      bbOK->Enabled=false;
      stWmuCheck->Visible=true;
      sgWmu->ReadOnly=true;
    }
    else
    {
      bbOK->Enabled=true;
      stWmuCheck->Visible=false;
      sgWmu->ReadOnly=false;
    }
    if(sgWmu->RowCount<2)
      bbOK->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TfrmWmu::sgWmuDblClick(TObject *Sender)
{
  AnsiString SqlStr;
  TfrmWnQuery *p;
  if(sgWmu->Col==9 && sgWmu->Row>0)
  {
    if(FChecked!=1)
    {
      SqlStr="002[原因代码][损坏原因]SELECT UdrCode,UdrDesc from sdUdr order by UdrCode";
      try
      {
        StartWaitForm("正在查询,请稍候...");
        p=new TfrmWnQuery(this,"损坏原因查询",SqlStr);
      }
      __finally
      {
        EndWaitForm();
      }
      if(p->ShowModal()==mrOk)
      {
        sgWmu->Cells[9][sgWmu->Row]=p->ColData[1];
      }
      delete p;
    }
  }
}
//---------------------------------------------------------------------------
void __fastcall TfrmWmu::bbOKClick(TObject *Sender)
{
  int ErrNum;
  try
  {
    StartWaitForm("正在保存工序材料消耗数据,请稍候...");
    if(sgWmu->RowCount>1)
    {
      try
      {
        comServer=new TComServer(Handle,g_ClientHandle,"1061108");
        for(int i=1;i<sgWmu->RowCount;i++)
        {
          comServer->AddNew();
          SetFieldValue("WmuPdrCode",FWmuPdrCode);
          SetFieldValue("WmuPdrdLine",FWmuPdrdLine);
          SetFieldValue("WmuWo",FWmuWoCode);
          SetFieldValue("WmuProcess",FWmuProcess);
          SetFieldValue("WmuGoods",sgWmu->Cells[0][i]);
          SetFieldValue("WmuLoc",sgWmu->Cells[2][i]);
          if(sgWmu->Cells[7][i]!="")
            SetFieldValue("WmuUQty",sgWmu->Cells[7][i]);
          else
            SetFieldValue("WmuUQty","0");
          if(sgWmu->Cells[8][i]!="")
            SetFieldValue("WmuDQty",sgWmu->Cells[8][i]);
          else
            SetFieldValue("WmuDQty","0");
          SetFieldValue("WmuUdr",sgWmu->Cells[9][i]);
          SetFieldValue("WmuDate",g_sdCurDate);
          SetFieldValue("WmuUser",g_sdUserCode);
          comServer->Post();
        }
      }
      catch(Exception &e)
      {
        this->ModalResult=0;
        throw Exception(e.Message);
      }
    }
  }
  __finally
  {
    EndWaitForm();
  }
  Close();
}
//---------------------------------------------------------------------------
void __fastcall TfrmWmu::bbCancelClick(TObject *Sender)
{
  Close();
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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