📄 msogh_n.cpp
字号:
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 + -