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

📄 msogh_n.cpp

📁 科思ERP部分源码及控件
💻 CPP
📖 第 1 页 / 共 3 页
字号:
    if(GetMasterValue("SoghType")==1)
    {
      if(m_SogdSoCode.IsEmpty())
        throw Exception("订单号不能为空");
      if(m_SogdSoCode.Length()>18)
        throw Exception("订单号长度不能大于18");
/*      if(m_SogdSoCode!=b_SogdSoCode)
      {
        Query->Close();
        Query->SQL->Clear();
        Query->SQL->Add("select sohcode,sohcheck from sdsoh where sohcode='"+m_SogdSoCode+"'");
        Query->Open();
        if(Query->RecordCount<=0)
        {
          Query->Close();
          throw Exception("订单:"+m_SogdSoCode+"不存在");
        }
        if(Query->FieldValues["sohcheck"]!=1)
        {
          Query->Close();
          throw Exception("订单:"+m_SogdSoCode+"尚未审核!");
        }
        Query->Close();
      }
      b_SogdSoCode = m_SogdSoCode;*/
    }
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdSodLine()
{
   int m_SogdSodLine;
//   int b_SogdSodLine;
   AnsiString m_SogdGoods=ReturnNeedValue(GetDetailValue("SogdGoods"),"");
   AnsiString m_SogdSoCode=ReturnNeedValue(GetDetailValue("SogdSoCode"),"");
   m_SogdSodLine=ReturnNeedValue(GetDetailValue("SogdSodLine"),0);
//   b_SogdSodLine=GetDetailOldValue("SogdSodLine");
    if(GetMasterValue("SoghType")==1)
    {
      if(m_SogdSoCode.IsEmpty())
        throw Exception("销售订单号不能为空");
      if(m_SogdSodLine<=0)
        throw Exception("订单行号不存在");
/*      if(m_SogdSodLine!=b_SogdSodLine)
      {
        Query->Close();
        Query->SQL->Clear();
        Query->SQL->Add("select SodGoods,SodUnit,SodConv,SodRecDate,SodClose From sdSod where SodCode='"+m_SogdSoCode+"' and SodLine="+AnsiString(m_SogdSodLine));
        Query->Open();
        if(Query->RecordCount>0)
        {
          if(Query->FieldValues["SodClose"]==1)
          {
            Query->Close();
            throw Exception("订单:'"+m_SogdSoCode+"'的行:'"+AnsiString(m_SogdSodLine)+"'的货物已结清!!!");
          }
          //m_SogdGoods=Query->FieldValues["SodGoods"];
          //m_SogdUnit=Query->FieldValues["SodUnit"];
          //m_SogdConv=Query->FieldValues["SodConv"];
          //m_SogdRecDate=Query->FieldValues["SodRecDate"];
          Query->Close();
        }
        else
        {
          Query->Close();
          throw Exception("订单:'"+m_SogdSoCode+"'行:'"+m_SogdSodLine+"'不存在!!!");
        }
        b_SogdSodLine = m_SogdSodLine;
      }*/
    }
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdGoods()
{
   AnsiString  m_SogdGoods;
   AnsiString  b_SogdGoods;
   m_SogdGoods=ReturnNeedValue(GetDetailValue("SogdGoods"),"");
   b_SogdGoods=ReturnNeedValue(GetDetailOldValue("SogdGoods"),"");
    if(m_SogdGoods.IsEmpty())
       throw Exception("发货单的货物编码不能为空!!!");
    if(m_SogdGoods.Length()>18)
      throw Exception("发货单物料编码长度不能大于18");
    if(m_SogdGoods!=b_SogdGoods)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select GoodsCode from sdGoods,sdsgd where goodscode=sgdgoodscode and sgdclientcode='"+GetMasterValue("SoghClient")+"' and GoodsCode='"+m_SogdGoods+"'");
      Query->Open();
      if(Query->RecordCount<1)
      {
        Query->Close();
        throw Exception("货物编码:'"+m_SogdGoods+"'不存在或客户未定义该物料!!");
      }
      Query->Close();
    }
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdUnit()
{
   AnsiString  m_SogdUnit;
   AnsiString  b_SogdUnit;
   AnsiString  m_SogdGoods=ReturnNeedValue(GetDetailValue("SogdGoods"),"");
   m_SogdUnit=ReturnNeedValue(GetDetailValue("SogdUnit"),"");
   b_SogdUnit=ReturnNeedValue(GetDetailOldValue("SogdUnit"),"");
    AnsiString FUnit;
    if(m_SogdUnit.IsEmpty())
      throw Exception("计量单位不能为空");
    if(m_SogdUnit.Length()>18)
      throw Exception("计量单位长度不能大于18");
    if(m_SogdGoods.IsEmpty())
      throw Exception("发出物料不能为空");
    if(m_SogdUnit!=b_SogdUnit)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("Select unitcode from sdunit where unitcode='"+m_SogdUnit+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("计量单位:"+m_SogdUnit+"未定义");
      }
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select goodsunitcode,goodsmunit from sdgoods where goodscode='"+m_SogdGoods+"'");
      Query->Open();
      if(Query->RecordCount<1)
      {
        Query->Close();
        throw Exception("当前物料在物料主文件中未找到");
      }
      if(Query->FieldValues["GoodsMunit"]!=1)
      {
        FUnit=Query->FieldValues["GoodsUnitCode"];
        if(FUnit!=m_SogdUnit)
        {
          Query->Close();
          throw Exception("当前物料不是多计量单位");
        }
      }
      Query->Close();
    }
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdConv()
{                   /*
  double m_SogdConv;
  double b_SogdConv;
  AnsiString m_SogdGoods=ReturnNeedValue(GetDetailValue("SogdGoods"),"");
  AnsiString m_SogdUnit=ReturnNeedValue(GetDetailValue("SogdUnit"),"");
   m_SogdConv=ReturnNeedValue(GetDetailValue("SogdConv"),0);
   b_SogdConv=ReturnNeedValue(GetDetailOldValue("SogdConv"),0);
    if(m_SogdConv<=0)
      throw Exception("换算系数不能小于等于零");
    if(m_SogdGoods.IsEmpty())
      throw Exception("物料编码不能为空");
    if(m_SogdUnit.IsEmpty())
      throw Exception("计量单位不能为空,请先为计量单位赋值");
    if(m_SogdConv!=b_SogdConv)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select goodsunitcode,goodsmunit from sdgoods where goodscode='"+m_SogdGoods+"'");
      Query->Open();
      if(Query->RecordCount<1)
      {
        Query->Close();
        throw Exception("物料:"+m_SogdGoods+"不存在");
      }
      Query->Close();
    }                 */
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdQty()
{
  double m_SogdQty;
   m_SogdQty=ReturnNeedValue(GetDetailValue("SogdQty"),0);
  if(m_SogdQty<=0)
    throw Exception("发货数量需大于零");
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdPrice()
{
  double m_SogdPrice;
   m_SogdPrice=ReturnNeedValue(GetDetailValue("SogdPrice"),0);
   if(m_SogdPrice<0)
     throw Exception("单价不能小于零");
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdAmt()
{
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdTaxAmt()
{
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdDisc()
{
  double m_SogdDisc;
   m_SogdDisc=ReturnNeedValue(GetDetailValue("SogdDisc"),-1);
  if(m_SogdDisc<0)
    throw Exception("折扣率不能小于零");
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdDAmt()
{
  double m_SogdDAmt;
   m_SogdDAmt=ReturnNeedValue(GetDetailValue("SogdDAmt"),-1);
   if(m_SogdDAmt<0)
     throw Exception("折扣金额不能小于零");
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdLoc()
{                    /*
   AnsiString  m_SogdLoc;
   AnsiString  b_SogdLoc;
   AnsiString  m_SogdGoods=ReturnNeedValue(GetDetailValue("SogdGoods"),"");
   m_SogdLoc=ReturnNeedValue(GetDetailValue("SogdLoc"),"");
   b_SogdLoc=ReturnNeedValue(GetDetailOldValue("SogdLoc"),"");
    if(m_SogdGoods.IsEmpty())
      throw Exception("物料编码不能为空");
    if(m_SogdLoc.IsEmpty())
      throw Exception("货位编码不能为空");
    if(m_SogdLoc.Length()>18)
      throw Exception("货位编码长度不能大于18");
    if(m_SogdLoc!=b_SogdLoc)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select loccode from sdloc,sdlg where lgloccode=loccode and loccode='"+m_SogdLoc+"' and lggoodscode='"+m_SogdGoods+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("货位编码:"+m_SogdLoc+"未定义或货位不能存储物料:"+m_SogdGoods);
      }
      Query->Close();
    }                  */
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdBatch()
{                    /*
   AnsiString  m_SogdBatch;
   AnsiString  b_SogdBatch;
   AnsiString  m_SogdGoods=ReturnNeedValue(GetDetailValue("SogdGoods"),"");
   m_SogdBatch=ReturnNeedValue(GetDetailValue("SogdBatch"),"");
   b_SogdBatch=ReturnNeedValue(GetDetailOldValue("SogdBatch"),"");
    if(m_SogdBatch.Length()>18)
      throw Exception("批号长度不能大于18");
    if(m_SogdGoods.IsEmpty())
      throw Exception("发货物料不能为空");
    if(m_SogdBatch.IsEmpty()==false && m_SogdBatch!=b_SogdBatch)
    {
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select GoodsBatch from sdgoods where goodscode='"+m_SogdGoods+"'");
      Query->Open();
      if(Query->RecordCount<1)
      {
        Query->Close();
        throw Exception("发货物料不存在");
      }
      else
      {
        if(Query->FieldValues["GoodsBatch"]!=1)
        {
          Query->Close();
          throw Exception("当前物料不能进行批号管理");
        }
      }
      Query->Close();
      Query->SQL->Clear();
      Query->SQL->Add("select batchcode from sdbatch where batchcode='"+m_SogdBatch+"'");
      Query->Open();
      if(Query->RecordCount<=0)
      {
        Query->Close();
        throw Exception("批号:"+m_SogdBatch+"未定义");
      }
      Query->Close();
    }                  */
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdRecDate()
{
   AnsiString  m_SogdRecDate;
   m_SogdRecDate=ReturnNeedValue(GetDetailValue("SogdRecDate"),"");
    if(m_SogdRecDate.IsEmpty())
       throw Exception("发货日期不能为空");
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdClose()
{
/*   int m_SogdClose;
   m_SogdClose=GetDetailValue("SogdClose");
    if(m_SogdClose!=0 && m_SogdClose!=1)
      throw Exception("结清标志只能取值0-未结清,1-已结清");*/
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdCloseDate()
{
/*   AnsiString  m_SogdCloseDate;
   m_SogdCloseDate=GetDetailValue("SogdCloseDate");
    if(GetDetailValue("SogdClose")==1)
    {
      if(m_SogdCloseDate.IsEmpty())
        throw Exception("结清日期不能为空");
    }*/
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::ValidSogdDesc()
{
   AnsiString  m_SogdDesc;
   m_SogdDesc=ReturnNeedValue(GetDetailValue("SogdDesc"),"");
    if(m_SogdDesc.Length()>40)
      throw Exception("备注长度不能大于40");
}
//---------------------------------------------------------------------------
void __fastcall TKSSogh_N::CmdExec(AnsiString Param)
{

}

⌨️ 快捷键说明

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