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

📄 madjinvh.cpp

📁 一个以前收集的基于C/S架构的ERP客户端源代码
💻 CPP
字号:
//---------------------------------------------------------------------------

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

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

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

   AnsiString  m_AdjInvhCode;
   AnsiString  b_AdjInvhCode;
   m_AdjInvhCode=GetMasterValue("AdjInvhCode");
   b_AdjInvhCode=GetMasterOldValue("AdjInvhCode");
    if(m_AdjInvhCode.IsEmpty())
        throw Exception("调整单编码不能为空!");
    if(m_AdjInvhCode.Length()>18)
      throw Exception("调整单号长度不能大于18");
    if(m_AdjInvhCode.UpperCase()    !=  b_AdjInvhCode.UpperCase())
    {
        Query->Close();
        Query->SQL->Clear();
        Query->SQL->Add("SELECT AdjInvhCODE FROM SDAdjInvh WHERE AdjInvhCODE='" +m_AdjInvhCode+"'");
        Query->Open();
        if(Query->RecordCount>0)
        {
            Query->Close();
            throw Exception("调整单号'"+m_AdjInvhCode+"'已存在");
        }
        Query->Close();
    }

   AnsiString  m_AdjInvhDate;
   m_AdjInvhDate=GetMasterValue("AdjInvhDate");
    if(m_AdjInvhDate.IsEmpty())
      throw Exception("调整日期不能为空");

   AnsiString  m_AdjInvhFmonth;
   m_AdjInvhFmonth=GetMasterValue("AdjInvhFmonth");
    if(m_AdjInvhFmonth.IsEmpty())
      throw Exception("财务月份不能为空");

   int m_AdjInvhType;
   m_AdjInvhType=GetMasterValue("AdjInvhType");
    if(m_AdjInvhType!=1 && m_AdjInvhType!=2)
      throw Exception("调整类型只能为1-据盘点单调整,2-直接调整");

   AnsiString  m_AdjInvhDesc;
   m_AdjInvhDesc=GetMasterValue("AdjInvhDesc");

   int m_AdjInvhCheck;
   m_AdjInvhCheck=GetMasterValue("AdjInvhCheck");
    if(m_AdjInvhCheck!=0 && m_AdjInvhCheck!=1)
      throw Exception("审核标志只能取值0-未审核1-已审");

   AnsiString  m_AdjInvhSysDate;
   m_AdjInvhSysDate=GetMasterValue("AdjInvhSysDate");
}
//---------------------------------------------------------------------------
void __fastcall TKSAdjInvh::ValidItemValues()
{

   AnsiString  m_AdjInvdCode;
   m_AdjInvdCode=GetDetailValue("AdjInvdCode");
    if(m_AdjInvdCode.IsEmpty())
       throw Exception("调整单号不能为空!");
    if(m_AdjInvdCode.Length()>18)
      throw Exception("调整单号长度不能大于18");

   int m_AdjInvdLine;
   int b_AdjInvdLine;
   m_AdjInvdLine=GetDetailValue("AdjInvdLine");
   b_AdjInvdLine=GetDetailOldValue("AdjInvdLine");
    if(m_AdjInvdLine<=0)
      throw Exception("调整单行号不能小于等于零");

   AnsiString  m_AdjInvdTsCode;
   AnsiString  b_AdjInvdTsCode;
   m_AdjInvdTsCode=GetDetailValue("AdjInvdTsCode");
   b_AdjInvdTsCode=GetDetailOldValue("AdjInvdTsCode");
    if(m_AdjInvdTsCode.Length()>18)
      throw Exception("盘点单号长度不能大于18");
    if(m_AdjInvdTsCode.IsEmpty() == false && m_AdjInvdTsCode!=b_AdjInvdTsCode)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select TshCode from sdTsh where TshCheck=1 and TshCode='"+m_AdjInvdTsCode+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("盘点单:"+m_AdjInvdTsCode+"未定义或尚未生效");
      }
      Query->Close();
    }

   int m_AdjInvdTKSLine;
   int b_AdjInvdTKSLine;
   m_AdjInvdTKSLine=GetDetailValue("AdjInvdTsdLine");
   b_AdjInvdTKSLine=GetDetailOldValue("AdjInvdTsdLine");
   //AnsiString  m_AdjInvdTsCode;
   m_AdjInvdTsCode=GetDetailValue("AdjInvdTsCode");
    if(m_AdjInvdTKSLine < 0)
      throw Exception("盘点行号不能小于零");
    if(m_AdjInvdTsCode.IsEmpty() == false && m_AdjInvdTKSLine!=b_AdjInvdTKSLine)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select TsdLine from sdTsd where TsdCode='"+m_AdjInvdTsCode+"' and TsdLine='"+AnsiString(m_AdjInvdTKSLine)+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("盘点行号:"+AnsiString(m_AdjInvdTKSLine)+"未定义");
      }
      Query->Close();
    }

   AnsiString  m_AdjInvdLoc;
   AnsiString  b_AdjInvdLoc;
   m_AdjInvdLoc=GetDetailValue("AdjInvdLoc");
   b_AdjInvdLoc=GetDetailOldValue("AdjInvdLoc");
    if(m_AdjInvdLoc.IsEmpty())
      throw Exception("调整货位不能为空");
    if(m_AdjInvdLoc.Length()>18)
      throw Exception("调整货位编码长度不能大于18");


   AnsiString  m_AdjInvdGoods;
   AnsiString  b_AdjInvdGoods;
   m_AdjInvdGoods=GetDetailValue("AdjInvdGoods");
   b_AdjInvdGoods=GetDetailOldValue("AdjInvdGoods");
   //AnsiString  m_AdjInvdLoc;
   m_AdjInvdLoc=GetDetailValue("AdjInvdLoc");
    if(m_AdjInvdLoc.IsEmpty())
      throw Exception("调整货位不能为空");
    if(m_AdjInvdGoods.IsEmpty())
      throw Exception("物料编码不能为空");
    if(m_AdjInvdGoods.Length()>18)
      throw Exception("物料编码长度不能大于18");
    if(m_AdjInvdGoods!=b_AdjInvdGoods)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add(" select goodscode from sdgoods,sdlg where lgstate=1  and goodscode=lggoodscode and ");
      Query->SQL->Add(" goodscode='"+m_AdjInvdGoods+"' and lgloccode='"+m_AdjInvdLoc+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("物料编码:"+m_AdjInvdGoods+"无效,或货位:"+m_AdjInvdLoc+"未定义该物料");
      }
      Query->Close();
    }

   AnsiString  m_AdjInvdUnit;
   AnsiString  b_AdjInvdUnit;
   m_AdjInvdUnit=GetDetailValue("AdjInvdUnit");
   b_AdjInvdUnit=GetDetailOldValue("AdjInvdUnit");
    if(m_AdjInvdUnit.IsEmpty())
      throw Exception("计量单位不能为空");
    if(m_AdjInvdUnit.Length()>18)
      throw Exception("计量单位长度不能大于18");
    Query->Close();
    Query->SQL->Clear();
    if(m_AdjInvdUnit!=b_AdjInvdUnit)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("Select Unitcode from sdUnit where Unitcode='"+m_AdjInvdUnit+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("计量单位:"+m_AdjInvdUnit+"不存在");
      }
      Query->Close();
    }


  double m_AdjInvdQty;
   m_AdjInvdQty=GetDetailValue("AdjInvdQty");

  int m_AdjInvdState;
   m_AdjInvdState=GetDetailValue("AdjInvdState");

  AnsiString  m_AdjInvdDesc;
   m_AdjInvdDesc=GetDetailValue("AdjInvdDesc");
}
//---------------------------------------------------------------------------
void __fastcall TKSAdjInvh::CmdExec(AnsiString Param)
{

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

⌨️ 快捷键说明

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