mlg.cpp

来自「一个以前收集的基于C/S架构的ERP客户端源代码」· C++ 代码 · 共 113 行

CPP
113
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include "mLg.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)
TKSLg *sdLg;
//---------------------------------------------------------------------------
__fastcall TKSLg::TKSLg()
  :TKSMidBase()
{
}
//---------------------------------------------------------------------------
void __fastcall TKSLg::ValidHeadValues()
{

   AnsiString  m_LgLocCode;
   AnsiString  b_LgLocCode;
   m_LgLocCode=GetMasterValue("LgLocCode");
   b_LgLocCode=GetMasterOldValue("LgLocCode");
   if(m_LgLocCode.IsEmpty())
      throw Exception("货位代码不能为空");
   if(m_LgLocCode.Length()>18)
      throw Exception("货位编码长度不能大于18");
   if(m_LgLocCode.UpperCase()!=b_LgLocCode.UpperCase())
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("SELECT LocCODE FROM SDLoc WHERE LocCODE='" +m_LgLocCode+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
         Query->Close();
         throw Exception("货位编码'"+m_LgLocCode+"'未定义");
      }
      Query->Close();
    }

   AnsiString  m_LgGoodsCode;
   AnsiString  b_LgGoodsCode;
   m_LgGoodsCode=GetMasterValue("LgGoodsCode");
   b_LgGoodsCode=GetMasterOldValue("LgGoodsCode");
  // AnsiString   m_LgLocCode;
   m_LgLocCode=GetMasterValue("LgLocCode");
    if(m_LgLocCode.IsEmpty())
      throw Exception("货位不能为空");
    if(m_LgGoodsCode.IsEmpty())
      throw Exception("物料代码不能为空");
    if(m_LgGoodsCode.Length()>18)
      throw Exception("物料编码长度不能大于18");
    if(m_LgGoodsCode.UpperCase()!=b_LgGoodsCode.UpperCase())
    {
      Query->Close();
      Query->SQL->Clear();
      AnsiString tempS;
      tempS=AnsiString("SELECT GoodsCode from sdGoods where goodsstate=2 and goodscancel=0 and GoodsCode='"+m_LgGoodsCode+"'");
      Query->SQL->Add(tempS);
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("物料编码'"+m_LgGoodsCode+"'未定义或不可用");
      }
      Query->Close();

      Query->SQL->Clear();
      tempS=AnsiString("SELECT LgLocCode from sdLg Where LgGoodsCode='"+m_LgGoodsCode+"' and LgLocCode='"+m_LgLocCode+"'");
      Query->SQL->Add(tempS);
      Query->Open();
      if(Query->RecordCount>0)
      {
        Query->Close();
        throw Exception("该货位物料已经存在");
      }
      Query->Close();
    }

   int m_LgState;
   m_LgState=GetMasterValue("LgState");
   //AnsiString   m_LgLocCode;
   m_LgLocCode=GetMasterValue("LgLocCode");
   //AnsiString   m_LgGoodsCode;
   m_LgGoodsCode=GetMasterValue("LgGoodsCode");
    if(m_LgLocCode.IsEmpty())
      throw Exception("货位不能为空");
    if(m_LgGoodsCode.IsEmpty())
      throw Exception("物料不能为空");
    if(m_LgState!=1 && m_LgState!=2 && m_LgState!=3)
      throw Exception("货位物料状态只能取值:1-正在使用,2-正在停用,3-已停用");
    if(m_LgState==3)
    {
      Query->Close();
      Query->SQL->Clear();
    //  Query->SQL->Add("select maccaoyqty from sdmacc where maccfmonth='"+g_sdFMonth+"' and MaccLoc='"+m_LgLocCode+"' and MaccGoods='"+m_LgGoodsCode+"' and MaccAoyQty>0");
      Query->Open();
      if(Query->RecordCount>0)
      {
        Query->Close();
        throw Exception("货位物料尚未用完,不能停用");
      }
      Query->Close();
    }
}
//---------------------------------------------------------------------------
void __fastcall TKSLg::CmdExec(AnsiString Param)
{

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

⌨️ 快捷键说明

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