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

📄 mrmbh.cpp

📁 科思ERP部分源码及控件
💻 CPP
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include "mRmbh.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)

TKSRmbh *sdRmbh;
//---------------------------------------------------------------------------
__fastcall TKSRmbh::TKSRmbh()
  :TKSMidBase()
{
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidHeadValues()
{
  //退料单号
      ValidRmbhCode();
  //财务月份
      ValidRmbhFmonth();
  //退料日期
      ValidRmbhDate();
  //收发类型
      ValidRmbhPosType();
  //工单号
      ValidRmbhWoCode();
  //备注
      ValidRmbhDesc();
  //操作员
      ValidRmbhUser();
  //审核标志
      ValidRmbhCheck();
  //审核人
      ValidRmbhChecker();
  //审核日期
      ValidRmbhCheckDate();
  //系统日期
      ValidRmbhSysDate();
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhCode()  //退料单号
{

}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhFmonth()  //财务月份
{
    AnsiString  m_RmbhFmonth;
    m_RmbhFmonth=GetMasterValue("RmbhFmonth");

    if(m_RmbhFmonth.Length()>6)
       throw Exception("财务月份的长度不能大于6!");
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhDate()  //退料日期
{

}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhPosType()  //收发类型
{

}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhWoCode()  //工单号
{
   AnsiString  m_RmbhWoCode;
   AnsiString  b_RmbhWoCode;
   m_RmbhWoCode=GetMasterValue("RmbhWoCode");
   b_RmbhWoCode=GetMasterOldValue("RmbhWoCode");

   if(m_RmbhWoCode!=b_RmbhWoCode)
   {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select * from sdWo where WoCheck=1 and WoCancel=0 and WoClose=0 and WoCode='"+m_RmbhWoCode+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
         Query->Close();
         throw Exception("加工单:'"+m_RmbhWoCode+"'不存在,或已结清,或已作废,或未审核!");
      }
      Query->Close();
   }
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhDesc()  //备注
{

}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhUser()  //操作员
{

}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhCheck()  //审核标志
{
   int m_RmbhCheck;
   m_RmbhCheck=GetMasterValue("RmbhCheck");
   if(m_RmbhCheck!=0 && m_RmbhCheck!=1)
       throw Exception("审核标志只能取值(0-未审核,1-已审核)!");
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhChecker()  //审核人
{
   int m_RmbhCheck;
   AnsiString  m_RmbhChecker;
   AnsiString  b_RmbhChecker;
   m_RmbhCheck=GetMasterValue("RmbhCheck");
   m_RmbhChecker=GetMasterValue("RmbhChecker");
   b_RmbhChecker=GetMasterOldValue("RmbhChecker");
   if(m_RmbhCheck==1)
   {
      if(m_RmbhChecker.UpperCase()!=b_RmbhChecker.UpperCase())
      {
        Query->Close();
        Query->SQL->Clear();
        Query->SQL->Add("select ProducterCode from sdProducter where ProducterCode='"+m_RmbhChecker+"' and ProducterCheck=1");
        Query->Open();
        if(Query->RecordCount<=0)
        {
           Query->Close();
           throw Exception("审核人'"+m_RmbhChecker+"'没有定义或无审核的权限!");
        }
        Query->Close();
      }
   }
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhCheckDate()  //审核日期
{
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbhSysDate()    //系统日期
{
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidItemValues()
{
      ValidRmbdCode();
      ValidRmbdLine();
      ValidRmbdProcess();
      ValidRmbdRLoc();
      ValidRmbdLoc();
      ValidRmbdGoods();
      ValidRmbdUnit();
      ValidRmbdQty();
      ValidRmbdBatch();
      ValidRmbdDesc();
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdCode()
{

}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdLine()
{
   int m_RmbdLine;
   AnsiString m_RmbhCode;
   m_RmbdLine=GetDetailValue("RmbdLine");
   m_RmbhCode=GetMasterValue("RmbhCode");
   if(m_RmbdLine<=0)
      throw Exception("退料单行号不能小于等于零!");
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdProcess()
{
   AnsiString  m_RmbhWoCode;
   AnsiString  m_RmbdProcess;
   AnsiString  b_RmbdProcess;
   m_RmbhWoCode=GetMasterValue("RmbhWoCode");
   m_RmbdProcess=GetDetailValue("RmbdProcess");
   b_RmbdProcess=GetDetailOldValue("RmbdProcess");

   if(m_RmbdProcess.UpperCase()!=b_RmbdProcess.UpperCase())
   {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("Select WrgLoc from sdWrg where WrgWo='"+m_RmbhWoCode+"' and WrgProcess='"+m_RmbdProcess+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("工单工序:'"+m_RmbdProcess+"'的资料不存在!");
      }
      Query->Close();
   }
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdRLoc()
{

}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdLoc()
{
    AnsiString  m_RmbdGoods;
    AnsiString  m_RmbdRLoc;
    AnsiString  m_RmbdLoc,b_RmbdLoc;
    m_RmbdLoc=GetDetailValue("RmbdLoc");
    b_RmbdLoc=GetDetailOldValue("RmbdLoc");
    m_RmbdRLoc=GetDetailValue("RmbdRLoc");
    m_RmbdGoods=GetDetailValue("RmbdGoods");

    if(m_RmbdLoc.UpperCase()==m_RmbdRLoc.UpperCase())
      throw Exception("入库货位:'"+m_RmbdLoc+"'不能和退料货位:'"+m_RmbdRLoc+"'相同!");
    if(m_RmbdLoc.UpperCase()!=b_RmbdLoc.UpperCase())
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("SELECT LocCode,LgGoodsCode from sdLoc,sdLg where LocCode=LgLocCode and LocCode='"+m_RmbdLoc+"' and LgGoodsCode='"+m_RmbdGoods+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("入库货位:'"+m_RmbdLoc+"'不能存放物料:'"+m_RmbdGoods+"'!");
      }
      Query->Close();
    }
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdGoods()
{
    AnsiString  m_RmbdGoods;
    AnsiString  b_RmbdGoods;
    AnsiString  m_RmbdProcess,m_RmbhWoCode;
    m_RmbdGoods=GetDetailValue("RmbdGoods");
    b_RmbdGoods=GetDetailOldValue("RmbdGoods");
    m_RmbdProcess=GetDetailValue("RmbdProcess");

}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdUnit()
{
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdQty()
{
   double m_RmbdQty;
   m_RmbdQty=GetDetailValue("RmbdQty");
   if(m_RmbdQty<=0 ||m_RmbdQty==0)
      throw Exception("退料数量不能小于或等于零!");
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdBatch()
{

}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::ValidRmbdDesc()
{
}
//---------------------------------------------------------------------------
void __fastcall TKSRmbh::CmdExec(AnsiString Param)
{

}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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