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

📄 mtsh.cpp

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

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

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

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

   AnsiString  m_TshCode;
   AnsiString  b_TshCode;
   m_TshCode=GetMasterValue("TshCode");
   b_TshCode=GetMasterOldValue("TshCode");
    if(m_TshCode.IsEmpty())
        throw Exception("盘点单单头编码不能为空!");
    if(m_TshCode.Length()>18)
      throw Exception("盘点单号长度不能大于18");
    if(m_TshCode.UpperCase()    !=  b_TshCode.UpperCase())
    {
        Query->Close();
        Query->SQL->Clear();
        Query->SQL->Add("SELECT TshCODE FROM SDTsh WHERE TshCODE='" +m_TshCode+"'");
        Query->Open();
        if(Query->RecordCount>0)
        {
            Query->Close();
            throw Exception("盘点单单头编码'"+m_TshCode+"'已存在");
        }
        Query->Close();
    }
    b_TshCode = m_TshCode;

   AnsiString  m_TshDate;
   m_TshDate=GetMasterValue("TshDate");
    if(m_TshDate.IsEmpty())
      throw Exception("盘点日期不能为空");

   AnsiString  m_TshFmonth;
   AnsiString  b_TshFmonth;
   m_TshFmonth=GetMasterValue("TshFmonth");
   b_TshFmonth=GetMasterOldValue("TshFmonth");
    AnsiString s;
    if(m_TshFmonth.IsEmpty())
      throw Exception("财务月份不能为空");
/*
    if(m_TshFmonth!=b_TshFmonth)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select fcmonth from sdfc where fcmonth='"+m_TshFmonth+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("财务月份:"+m_TshFmonth+"未定义");
      }
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select fcmonth from sdfc where fccurrent=1");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("未定义当前财务月份");
      }
      s=Query->FieldValues["FcMonth"];
      if(m_TshFmonth<s)
      {
        Query->Close();
        throw Exception("财务月份不能小于当前月份");
      }
      Query->Close();
    }
*/

   AnsiString  m_TshPosType;
   AnsiString  b_TshPosType;
   m_TshPosType=GetMasterValue("TshPosType");
   b_TshPosType=GetMasterOldValue("TshPosType");
    if(m_TshPosType.IsEmpty())
      throw Exception("收发存项目编码不能为空");
    if(m_TshPosType.Length()>18)
      throw Exception("项目编码长度不能大于18");
    if(m_TshPosType!=b_TshPosType)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select postypecode from sdpostype where postypecode='"+m_TshPosType+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("收发存项目编码:"+m_TshPosType+"未定义");
      }
      Query->Close();
    }

   int m_TshType;
   m_TshType=GetMasterValue("TshType");
    if(m_TshType!=1 && m_TshType!=2)
      throw Exception("盘点类型只能是1-一般盘点,2-循环盘点");

   AnsiString  m_TshDept;
   AnsiString  b_TshDept;
   m_TshDept=GetMasterValue("TshDept");
   b_TshDept=GetMasterOldValue("TshDept");
    if(m_TshDept.IsEmpty())
      throw Exception("部门编码不能为空");
    if(m_TshDept.Length()>18)
      throw Exception("部门编码长度不能大于18");
    if(m_TshDept!=b_TshDept)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select deptcode from sddept where deptcode='"+m_TshDept+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("部门编码:"+m_TshDept+"未定义");
      }
      Query->Close();
    }

   AnsiString  m_TshCDate;
   m_TshCDate=GetMasterValue("TshCDate");
    if(m_TshCDate.IsEmpty())
      throw Exception("完成日期不能为空");

/*
   AnsiString  m_TshKeeper;
   AnsiString  b_TshKeeper;
   m_TshKeeper=GetMasterValue("TshKeeper");
   b_TshKeeper=GetMasterOldValue("TshKeeper");
    if(m_TshKeeper.IsEmpty())
      throw Exception("仓管员代码不能为空");
    if(m_TshKeeper.Length()>18)
      throw Exception("仓管员代码长度不能大于18");
    if(m_TshKeeper!=b_TshKeeper)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select Keepercode from sdKeeper where Keepercode='"+m_TshKeeper+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("仓管员代码:"+m_TshKeeper+"未定义");
      }
      Query->Close();
    }
*/

   AnsiString  m_TshDesc;
   m_TshDesc=GetMasterValue("TshDesc");
    if(m_TshDesc.Length()>40)
      throw Exception("备注长度不能大于40");

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

/*
   AnsiString  m_TshChecker;
   AnsiString  b_TshChecker;
   m_TshChecker=GetMasterValue("TshChecker");
   b_TshChecker=GetMasterOldValue("TshChecker");
   int m_TshCheck;
   m_TshCheck=GetMasterValue("TshCheck");
    if(m_TshCheck==1)
    {
      if(m_TshChecker.IsEmpty())
        throw Exception("审核员代码不能为空");
      if(m_TshChecker.Length()>18)
        throw Exception("审核员代码长度不能大于18");
      if(m_TshChecker!=b_TshChecker)
      {
        Query->Close();
        Query->SQL->Clear();
        Query->SQL->Add("select keepercode from sdkeeper where keepercode='"+m_TshChecker+"' and Keepercheck=1");
        Query->Open();
        if(Query->RecordCount<=0)
        {
          Query->Close();
          throw Exception("审核员代码未定义或没有审核权限");
        }
        Query->Close();
      }
    }
    else
      b_TshChecker="";
*/

   AnsiString  m_TshCheckDate;
   m_TshCheckDate=GetMasterValue("TshCheckDate");
  // int m_TshCheck;
   m_TshCheck=GetMasterValue("TshCheck");
    if(m_TshCheck==1)
    {
      if(m_TshCheckDate.IsEmpty())
        throw Exception("审核日期不能为空");
    }

   int m_TshCancel;
   m_TshCancel=GetMasterValue("TshCancel");
    if(m_TshCancel!=0 && m_TshCancel!=1)
      throw Exception("取消标志只能取值0-正常,1-取消");

   AnsiString  m_TshCancelDate;
   m_TshCancelDate=GetMasterValue("TshCancelDate");
   //int m_TshCancel;
   m_TshCancel=GetMasterValue("TshCancel");
    if(m_TshCancel==1)
    {
      if(m_TshCancelDate.IsEmpty())
        throw Exception("取消日期不能为空");
    }

/*
   AnsiString  m_TshUser;
   AnsiString  b_TshUser;
   m_TshUser=GetMasterValue("TshUser");
   b_TshUser=GetMasterOldValue("TshUser");
    if(m_TshUser.IsEmpty())
      throw Exception("操作员代码不能为空");
    if(m_TshUser.Length()>18)
      throw Exception("操作员代码长度不能大于18");
    if(m_TshUser!=b_TshUser)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select usercode from sduser where usercode='"+m_TshUser+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("操作员代码:"+m_TshUser+"未定义");
      }
      Query->Close();
    }
*/

}
//---------------------------------------------------------------------------
void __fastcall TKSTsh::ValidItemValues()
{

   AnsiString  m_TKSCode;
   m_TKSCode=GetDetailValue("TsdCode");
    if(m_TKSCode.IsEmpty())
       throw Exception("盘点单号不能为空!");
    if(m_TKSCode.Length()>18)
      throw Exception("盘点单号长度不能大于18");

   int m_TKSLine;
   int b_TKSLine;
   m_TKSLine=GetDetailValue("TsdLine");
   b_TKSLine=GetDetailOldValue("TsdLine");
  // AnsiString  m_TKSCode;
   m_TKSCode=GetDetailValue("TsdCode");
    if(m_TKSCode.IsEmpty())
      throw Exception("盘点单号不能为空");
    if(m_TKSLine<=0)
      throw Exception("盘点单行号不能小于等于零");
    if(m_TKSLine != b_TKSLine)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select TsdLine from sdTsd where TsdCode='"+m_TKSCode+"' and TsdLine='"+AnsiString(m_TKSLine)+"'");
      Query->Open();
      if(Query->RecordCount>0)
      {
        Query->Close();
        throw Exception("盘点行号:"+AnsiString(m_TKSLine)+"已存在");
      }
      Query->Close();
    }

   AnsiString  m_TKSLoc;

⌨️ 快捷键说明

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