using System;
|
using System.Collections.Generic;
|
using System.Text;
|
using System.Data;
|
|
namespace DAL
|
{
|
public class ClsKf_POStockInBill_K3:DBUtility.ClsXt_BaseBill
|
{
|
public Model.ClsKf_POStockInBillMain_K3 omodel = new Model.ClsKf_POStockInBillMain_K3();
|
public List<Model.ClsKf_POStockInBillSub_K3> DetailColl = new List<Model.ClsKf_POStockInBillSub_K3>();
|
public List<Model.ClsKf_POStockInBillScheme_K3> DetailSubColl = new List<Model.ClsKf_POStockInBillScheme_K3>();
|
public SQLHelper.ClsCNK3 oCnK3 = new SQLHelper.ClsCNK3();
|
|
public ClsKf_POStockInBill_K3()
|
{
|
base.MvarItemKeySub = "ICStockBillEntry";
|
base.MvarItemKeySub2 = "";
|
base.MvarItemKeySub3 = "";
|
base.MvarItemKeySub4 = "";
|
base.MvarItemKey = "ICStockBill";
|
base.MvarReportTitle = "采购验收入库单";
|
base.BillType="1";
|
}
|
|
#region 固定代码
|
|
~ClsKf_POStockInBill_K3()
|
{
|
DetailColl = null;
|
}
|
|
#endregion 自定义方法
|
//修改单据
|
public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
|
{
|
try
|
{
|
//得到用户ID
|
DataSet DsBiller;
|
string HSourceBillType = "";
|
DsBiller = oK3Cn.RunProcReturn("select top 1 fuserid from t_User where fname='" + DBUtility.ClsPub.CurUserName + "'", "t_User");
|
if (DsBiller.Tables[0].Rows.Count != 0)
|
{
|
omodel.HBillerID = DBUtility.ClsPub.isLong(DsBiller.Tables[0].Rows[0][0]);
|
}
|
else
|
{
|
omodel.HBillerID = 16394;
|
}
|
omodel.HBillType = this.BillType;
|
//
|
DataSet Ds1;
|
oCnK3.BeginTran();
|
omodel.HInterID = lngBillKey;
|
//删除主表
|
oCnK3.RunProc("Delete From ICStockBill where FInterID=" + lngBillKey.ToString());
|
//插入子表
|
foreach (Model.ClsKf_POStockInBillSub_K3 oSub in DetailColl)
|
{
|
oSub.HInterID = omodel.HInterID;
|
oCnK3.RunProc(K3_BaseFun.Fun_GetAddBillSubSQL_POStockIn(oSub, DBUtility.ClsPub.VersionNum));
|
HSourceBillType = oSub.HSourceBillType;
|
}
|
//更新主表
|
//主表
|
oCnK3.RunProc(K3_BaseFun.Fun_GetAddBillMainSQL_POStockIn(omodel, DBUtility.ClsPub.VersionNum));
|
//更新关联数量
|
//更新K3关联数量
|
oCnK3.RunProc("EXEC p_UpdateBillRelateData " + this.BillType + "," + omodel.HInterID.ToString() + ",'ICStockBill','ICStockBillEntry'");
|
|
if (HSourceBillType == "72")
|
{
|
//收料通知单
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_POStockIn " + omodel.HInterID.ToString());
|
}
|
else
|
{
|
//检验申请单
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_POStockIn " + omodel.HInterID.ToString());
|
}
|
|
sReturn = "修改单据成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
//新增单据
|
public override bool AddBill(ref string sReturn)
|
{
|
try
|
{
|
//得到用户ID
|
DataSet DsBiller;
|
string HSourceBillType = "";
|
DsBiller = oK3Cn.RunProcReturn("select top 1 fuserid from t_User where fname='" + DBUtility.ClsPub.CurUserName + "'", "t_User");
|
if (DsBiller.Tables[0].Rows.Count != 0)
|
{
|
omodel.HBillerID = DBUtility.ClsPub.isLong(DsBiller.Tables[0].Rows[0][0]);
|
}
|
else
|
{
|
omodel.HBillerID = 16394;
|
}
|
omodel.HBillType = this.BillType;
|
//
|
DataSet Ds1;
|
//得到mainid
|
Ds1 = oCnK3.RunProcReturn("declare @InterID int set @InterID=0 exec GetICMaxNumOld 'ICStockBill',@InterID output select ltrim(@InterID)", "xt_xtgnb");
|
if (Ds1.Tables[0].Rows.Count != 0)
|
{
|
omodel.HInterID = DBUtility.ClsPub.isLong(Ds1.Tables[0].Rows[0][0]);
|
}
|
//若MAINDI重复则重新获取
|
oCnK3.BeginTran();
|
//插入子表
|
foreach (Model.ClsKf_POStockInBillSub_K3 oSub in DetailColl)
|
{
|
oSub.HInterID = omodel.HInterID;
|
oCnK3.RunProc(K3_BaseFun.Fun_GetAddBillSubSQL_POStockIn(oSub, DBUtility.ClsPub.VersionNum));
|
HSourceBillType = oSub.HSourceBillType;
|
}
|
//主表
|
oCnK3.RunProc(K3_BaseFun.Fun_GetAddBillMainSQL_POStockIn(omodel, DBUtility.ClsPub.VersionNum));
|
//更新K3关联数量
|
oCnK3.RunProc("EXEC p_UpdateBillRelateData " + this.BillType + "," + omodel.HInterID.ToString() + ",'ICStockBill','ICStockBillEntry'");
|
if (HSourceBillType == "72")
|
{
|
//收料通知单
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_POStockIn " + omodel.HInterID.ToString());
|
}
|
else
|
{
|
//检验申请单
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_POStockInByCheck " + omodel.HInterID.ToString());
|
}
|
//更新关联数量
|
sReturn = "新增单据成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
//显示单据
|
public override bool ShowBill(Int64 lngBillKey, ref string sReturn)
|
{
|
try
|
{
|
//查询主表
|
DataSet Ds ;
|
Ds = oCnK3.RunProcReturn("Select * from ICStockBill Where FInterID=" + lngBillKey.ToString(), "ICStockBill");
|
if(Ds.Tables[0].Rows.Count==0)
|
{
|
sReturn = "单据未找到!";
|
return false;
|
}
|
//赋值
|
omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FInterID"].ToString());
|
omodel.HBillNo = Ds.Tables[0].Rows[0]["FBillNo"].ToString().Trim();
|
omodel.HDate = Convert.ToDateTime(Ds.Tables[0].Rows[0]["Fdate"].ToString().Trim());
|
omodel.HRemark = Ds.Tables[0].Rows[0]["FNote"].ToString().Trim();
|
omodel.HDeptID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FDeptID"].ToString());
|
omodel.HEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FEmpID"].ToString());
|
omodel.HManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FManagerID"].ToString());
|
omodel.HSupID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FSupplyID"].ToString());
|
omodel.HSecManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FFManagerID"].ToString());
|
omodel.HWHID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FDCStockID"].ToString());
|
omodel.HKeeperID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FSManagerID"].ToString());
|
omodel.HExplanation = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FExplanation"].ToString());
|
if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FROB"]) == 1)
|
{
|
omodel.HRedBlueFlag = true;
|
}
|
else
|
{
|
omodel.HRedBlueFlag =false;
|
}
|
omodel.HSCWHID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FSCStockID"].ToString());
|
//
|
omodel.HCussentAcctID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FCussentAcctID"].ToString());
|
omodel.HPOStyle = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FPOStyle"].ToString());
|
//
|
DataSet Ds1;
|
Ds1 = oCnK3.RunProcReturn("select fname from t_User where fuserid=" + DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FBillerID"]), "t_User");
|
if (Ds1.Tables[0].Rows.Count != 0)
|
{
|
omodel.HMaker = Ds1.Tables[0].Rows[0][0].ToString();
|
}
|
omodel.HCheckDate = Ds.Tables[0].Rows[0]["FCheckDate"].ToString().Trim();
|
if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FCheckerID"]) != 0)
|
{
|
DataSet Ds2;
|
Ds2 = oCnK3.RunProcReturn("select fname from t_User where fuserid=" + DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FCheckerID"]), "t_User");
|
if (Ds2.Tables[0].Rows.Count != 0)
|
{
|
omodel.HChecker = Ds2.Tables[0].Rows[0][0].ToString();
|
}
|
}
|
else
|
{
|
omodel.HChecker = "";
|
}
|
//循环
|
DataSet DsSub;
|
DsSub = oCnK3.RunProcReturn("Select * from ICStockBillEntry Where FInterID=" + lngBillKey.ToString() + " order by HEntryID ", "ICStockBillEntry");
|
DetailColl.Clear();//清空
|
for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++)
|
{
|
Model.ClsKf_POStockInBillSub_K3 oSub = new Model.ClsKf_POStockInBillSub_K3();
|
oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FInterID"].ToString());
|
oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FEntryID"].ToString());
|
oSub.HMaterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FItemID"].ToString());
|
oSub.HPropertyID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FAuxPropID"].ToString());
|
oSub.HUnitID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FUnitID"].ToString());
|
oSub.HSecUnitRate = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FSecCoefficient"].ToString());
|
oSub.HWHID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FDCStockID"].ToString());
|
oSub.HSCWHID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FSCStockID"].ToString());
|
oSub.HSPID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FDCSPID"].ToString());
|
oSub.HRemark = DsSub.Tables[0].Rows[i]["FNote"].ToString().Trim();
|
oSub.HQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FQty"].ToString());
|
oSub.HAuxQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FAuxQty"].ToString());
|
oSub.HQtyMust = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FQtyMust"].ToString());
|
oSub.HPrice = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["Fauxprice"].ToString());
|
oSub.HMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FAmount"].ToString());
|
oSub.HBatchNo = DsSub.Tables[0].Rows[i]["FBatchNo"].ToString().Trim();
|
|
//
|
oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FSourceInterId"].ToString());
|
oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FSourceEntryID"].ToString());
|
oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["FSourceTranType"].ToString().Trim();
|
oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["FSourceBillNo"].ToString().Trim();
|
oSub.HPOOrderBillNo = DsSub.Tables[0].Rows[i]["FOrderBillNo"].ToString().Trim();
|
oSub.HPOOrderInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FOrderInterID"].ToString());
|
oSub.HPOOrderEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FOrderEntryID"].ToString());
|
DetailColl.Add(oSub);
|
}
|
sReturn = "显示单据成功!";
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
throw (e);
|
}
|
}
|
|
//删除单据
|
public virtual bool DeleteBill(Int64 lngBillKey, ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//
|
//Ds = oCnK3.RunProcReturn("select FSourceInterID from ICStockBillEntry where finterid=" + lngBillKey, "ICStockBillEntry");
|
//删除关联
|
//删除明细表
|
//oCnK3.RunProc("Delete From ICStockBillEntry where FInterID=" + lngBillKey.ToString());
|
//删除主表
|
//DeleteBillMain(lngBillKey);
|
oCnK3.RunProc("Delete From icstockbill where FInterID=" + lngBillKey.ToString());
|
//删除关联
|
|
sReturn = "删除单据成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
|
//删除关联
|
public override void DeleteRelation(ref string sReturn, Int64 lngBillKey)
|
{
|
//oCn.RunProc("exec h_p_K3_ProductInRequestRelationQtyBack " + lngBillKey + ",'3710'");
|
//sReturn = "";
|
return;
|
}
|
//单据号是否重复
|
public virtual bool IsExistBillNo(ref string sReturn, string sBillNo, DBUtility.ClsPub.Enum_BillStatus oBillStatus, Int64 lngBillKey)
|
{
|
try
|
{
|
string sSql = "";
|
if (oBillStatus == DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew)
|
{
|
sSql = "Select FInterID from ICStockBill where FTranType='" + MvarItemKey + "' and FBillNo ='" + sBillNo + "'";
|
}
|
else
|
{
|
sSql = "Select FInterID from ICStockBill where FTranType='" + MvarItemKey + "' and FBillNo ='" + sBillNo + "' and FInterID<>" + lngBillKey.ToString();
|
}
|
DataSet Ds;
|
Ds = oCnK3.RunProcReturn(sSql, "ICStockBill");
|
if (Ds.Tables[0].Rows.Count != 0)
|
{
|
sReturn = "单号重复";
|
return true;
|
}
|
sReturn = "单号未重复";
|
return false;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
return false;
|
}
|
}
|
|
//条码扫描记录,新增到采购入库
|
public bool AddBill_PDA(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//删除主表
|
//oCnK3.RunProc("Delete From ICStockBill where FInterID=" + omodel.HInterID.ToString());
|
//插入子表
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBillSub_Insert_K3 " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
|
//插入主表
|
oCnK3.RunProc("Insert Into ICStockBill " +
|
"(FInterID,FBillNo,FBrNo,FTranType,FCancellation,FStatus" +
|
",FUpStockWhenSave,FVchInterID,FROB,FHookStatus,Fdate,FSupplyID" +
|
",FCheckDate,FFManagerID,FSManagerID,FBillerID,FPOStyle,FMultiCheckLevel1" +
|
",FMultiCheckDate1,FMultiCheckLevel2,FMultiCheckDate2,FMultiCheckLevel3,FMultiCheckDate3,FMultiCheckLevel4" +
|
",FMultiCheckDate4,FMultiCheckLevel5,FMultiCheckDate5,FMultiCheckLevel6,FMultiCheckDate6" +
|
",FPOOrdBillNo,FRelateBrID,FOrgBillInterID,FSelTranType" +
|
",FBrID,FExplanation,FDeptID,FManagerID,FEmpID,FCussentAcctID" +
|
",FManageType,FSettleDate,FPrintCount,FPOMode" +
|
") " +
|
" values(" + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','0','" + omodel.HBillType + "',0,0" +
|
",0,0,1,0,convert(varchar(10),getdate(),120)," + omodel.HSupID.ToString() +
|
",null," + omodel.HSecManagerID.ToString() + "," + omodel.HKeeperID.ToString() + "," + omodel.HBillerID + "," + omodel.HPOStyle.ToString() + ",null" +
|
",null,null,null,null,null,null" +
|
",null,null,null,null,null" +
|
",'',0,0,72" +
|
",0,'" + omodel.HExplanation + "'," + omodel.HDeptID.ToString() + "," + omodel.HManagerID.ToString() + "," + omodel.HEmpID.ToString() + ",1041" +
|
",0,convert(varchar(10),getdate(),120),0,36680" +
|
") ");
|
//更新K3关联数量
|
//oCnK3.RunProc("EXEC p_UpdateBillRelateData " + this.BillType + "," + omodel.HInterID.ToString() + ",'ICStockBill','ICStockBillEntry'");
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_POStockIn_New " + omodel.HInterID.ToString());
|
//更新单据NEWid
|
//oCnK3.RunProc("UPDATE ICStockBill SET FUUID=NEWID() WHERE FInterID=" + omodel.HInterID.ToString());
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBill_Check_K3 " + omodel.HInterID.ToString() + "," + omodel.HBillerID.ToString());
|
//判断条码库存是否异常(负库存、库存大于条码初始化)
|
//Ds = oCnK3.RunProcReturn("EXEC h_p_KF_ICInventoryBarCodeQtyCtrl " + omodel.HInterID.ToString(), "h_p_KF_ICInventoryBarCodeQtyCtrl");
|
|
//if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
|
//{
|
|
//}
|
//else
|
//{
|
// sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0][1]);
|
// oCnK3.RollBack();
|
// return false;
|
//}
|
sReturn = "新增单据成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
|
//条码扫描记录,新增到采购入库(红字)
|
public bool AddBill_PDA_Red(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//删除主表
|
//oCnK3.RunProc("Delete From ICStockBill where FInterID=" + omodel.HInterID.ToString());
|
//插入子表
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBillSub_Red_Insert_K3 " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
|
//插入主表
|
oCnK3.RunProc("Insert Into ICStockBill " +
|
"(FInterID,FBillNo,FBrNo,FTranType,FCancellation,FStatus" +
|
",FUpStockWhenSave,FVchInterID,FROB,FHookStatus,Fdate,FSupplyID" +
|
",FCheckDate,FFManagerID,FSManagerID,FBillerID,FPOStyle,FMultiCheckLevel1" +
|
",FMultiCheckDate1,FMultiCheckLevel2,FMultiCheckDate2,FMultiCheckLevel3,FMultiCheckDate3,FMultiCheckLevel4" +
|
",FMultiCheckDate4,FMultiCheckLevel5,FMultiCheckDate5,FMultiCheckLevel6,FMultiCheckDate6" +
|
",FPOOrdBillNo,FRelateBrID,FOrgBillInterID,FSelTranType" +
|
",FBrID,FExplanation,FDeptID,FManagerID,FEmpID,FCussentAcctID" +
|
",FManageType,FSettleDate,FPrintCount,FPOMode,FPayCondition" +
|
") " +
|
" values(" + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','0','" + omodel.HBillType + "',0,0" +
|
",0,0,-1,0,convert(varchar(10),getdate(),120)," + omodel.HSupID.ToString() +
|
",null," + omodel.HSecManagerID.ToString() + "," + omodel.HKeeperID.ToString() + "," + omodel.HBillerID + "," + omodel.HPOStyle.ToString() + ",null" +
|
",null,null,null,null,null,null" +
|
",null,null,null,null,null" +
|
",'',0,0,73" +
|
",0,'" + omodel.HExplanation + "'," + omodel.HDeptID.ToString() + "," + omodel.HManagerID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HCussentAcctID.ToString() +
|
",0,convert(varchar(10),getdate(),120),0,36680,0" +
|
") ");
|
//更新K3关联数量
|
//oCnK3.RunProc("EXEC p_UpdateBillRelateData " + this.BillType + "," + omodel.HInterID.ToString() + ",'ICStockBill','ICStockBillEntry'");
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_POStockIn_Red_New " + omodel.HInterID.ToString());
|
//更新单据NEWid
|
//oCnK3.RunProc("UPDATE ICStockBill SET FUUID=NEWID() WHERE FInterID=" + omodel.HInterID.ToString());
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBill_Check_K3 " + omodel.HInterID.ToString() + "," + omodel.HBillerID.ToString());
|
//判断条码库存是否异常(负库存、库存大于条码初始化)
|
//Ds = oCnK3.RunProcReturn("EXEC h_p_KF_ICInventoryBarCodeQtyCtrl " + omodel.HInterID.ToString(), "h_p_KF_ICInventoryBarCodeQtyCtrl");
|
|
//if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
|
//{
|
|
//}
|
//else
|
//{
|
// sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0][1]);
|
// oCnK3.RollBack();
|
// return false;
|
//}
|
sReturn = "新增单据成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
|
//条码扫描记录,新增到采购入库(源单为 采购订单)
|
public bool AddBill_PDA_POOrder(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//删除主表
|
//oCnK3.RunProc("Delete From ICStockBill where FInterID=" + omodel.HInterID.ToString());
|
//插入子表
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBillSub_Insert_K3_POOrder " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
|
//插入主表
|
oCnK3.RunProc("Insert Into ICStockBill " +
|
"(FInterID,FBillNo,FBrNo,FTranType,FCancellation,FStatus" +
|
",FUpStockWhenSave,FVchInterID,FROB,FHookStatus,Fdate,FSupplyID" +
|
",FCheckDate,FFManagerID,FSManagerID,FBillerID,FPOStyle" +
|
",FMultiCheckDate1,FMultiCheckDate2,FMultiCheckDate3" +
|
",FMultiCheckDate4,FMultiCheckDate5,FMultiCheckDate6" +
|
",FPOOrdBillNo,FRelateBrID,FOrgBillInterID,FSelTranType" +
|
",FBrID,FExplanation,FDeptID,FManagerID,FEmpID,FCussentAcctID" +
|
",FManageType,FSettleDate,FPrintCount" +
|
") " +
|
" values(" + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','0','" + omodel.HBillType + "',0,0" +
|
",0,0,1,0,convert(varchar(10),getdate(),120)," + omodel.HSupID.ToString() +
|
",null," + omodel.HSecManagerID.ToString() + "," + omodel.HKeeperID.ToString() + "," + omodel.HBillerID + "," + omodel.HPOStyle.ToString() +
|
",null,null,null" +
|
",null,null,null" +
|
",'',0,0,71" +
|
",0,'" + omodel.HExplanation + "'," + omodel.HDeptID.ToString() + "," + omodel.HManagerID.ToString() + "," + omodel.HEmpID.ToString() + ",1396" +
|
",0,convert(varchar(10),getdate(),120),0" +
|
") ");
|
//更新K3关联数量
|
//oCnK3.RunProc("EXEC p_UpdateBillRelateData " + this.BillType + "," + omodel.HInterID.ToString() + ",'ICStockBill','ICStockBillEntry'");
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_POStockIn_New_POOrder " + omodel.HInterID.ToString());
|
//更新单据NEWid
|
//oCnK3.RunProc("UPDATE ICStockBill SET FUUID=NEWID() WHERE FInterID=" + omodel.HInterID.ToString());
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBill_Check_K3 " + omodel.HInterID.ToString() + "," + omodel.HBillerID.ToString());
|
sReturn = "新增单据成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
|
|
//条码扫描记录,新增到采购入库(源单为 采购订单)(红字)
|
public bool AddBill_PDA_POOrder_Red(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//删除主表
|
//oCnK3.RunProc("Delete From ICStockBill where FInterID=" + omodel.HInterID.ToString());
|
//插入子表
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBillSub_Red_Insert_K3_POOrder " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
|
//插入主表
|
oCnK3.RunProc("Insert Into ICStockBill " +
|
"(FInterID,FBillNo,FBrNo,FTranType,FCancellation,FStatus" +
|
",FUpStockWhenSave,FVchInterID,FROB,FHookStatus,Fdate,FSupplyID" +
|
",FCheckDate,FFManagerID,FSManagerID,FBillerID,FPOStyle" +
|
",FMultiCheckDate1,FMultiCheckDate2,FMultiCheckDate3" +
|
",FMultiCheckDate4,FMultiCheckDate5,FMultiCheckDate6" +
|
",FPOOrdBillNo,FRelateBrID,FOrgBillInterID,FSelTranType" +
|
",FBrID,FExplanation,FDeptID,FManagerID,FEmpID,FCussentAcctID" +
|
",FManageType,FSettleDate,FPrintCount,FPOMode,FPayCondition" +
|
") " +
|
" values(" + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','0','" + omodel.HBillType + "',0,0" +
|
",0,0,-1,0,convert(varchar(10),getdate(),120)," + omodel.HSupID.ToString() +
|
",null," + omodel.HSecManagerID.ToString() + "," + omodel.HKeeperID.ToString() + "," + omodel.HBillerID + "," + omodel.HPOStyle.ToString() +
|
",null,null,null" +
|
",null,null,null" +
|
",'',0,0,71" +
|
",0,'" + omodel.HExplanation + "'," + omodel.HDeptID.ToString() + "," + omodel.HManagerID.ToString() + "," + omodel.HEmpID.ToString() + ",1396" +
|
",0,convert(varchar(10),getdate(),120),0,36680,0" +
|
") ");
|
//更新K3关联数量
|
//oCnK3.RunProc("EXEC p_UpdateBillRelateData " + this.BillType + "," + omodel.HInterID.ToString() + ",'ICStockBill','ICStockBillEntry'");
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_POStockIn_Red_New_POOrder " + omodel.HInterID.ToString());
|
//更新单据NEWid
|
//oCnK3.RunProc("UPDATE ICStockBill SET FUUID=NEWID() WHERE FInterID=" + omodel.HInterID.ToString());
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBill_Check_K3 " + omodel.HInterID.ToString() + "," + omodel.HBillerID.ToString());
|
sReturn = "新增单据成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
|
|
//条码扫描记录,核对生单(红字)
|
public bool CheckAddBill_RedPDA(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//插入子表
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBillSub_Red_CheckInsert_K3 " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
|
//更新K3关联数量
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_POStockIn_Red_New " + omodel.HInterID.ToString());
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBill_Check_K3 " + omodel.HInterID.ToString() + "," + omodel.HBillerID.ToString());
|
//判断条码库存是否异常(负库存、库存大于条码初始化)
|
//Ds = oCnK3.RunProcReturn("EXEC h_p_KF_ICInventoryBarCodeQtyCtrl " + omodel.HInterID.ToString(), "h_p_KF_ICInventoryBarCodeQtyCtrl");
|
|
//if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
|
//{
|
|
//}
|
//else
|
//{
|
// sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0][1]);
|
// oCnK3.RollBack();
|
// return false;
|
//}
|
sReturn = "新增成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
|
//条码扫描记录,审核单据
|
public bool CheckBill_PDA(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//新增条码出入库记录
|
oCnK3.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Insert " + omodel.HInterID.ToString() + "," + omodel.HMainSourceInterID.ToString() + ",'" + this.BillType + "','" + omodel.HBillNo + "'");
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBill_Check_K3 " + omodel.HInterID.ToString() + "," + omodel.HBillerID.ToString());
|
//判断条码库存是否异常(负库存、库存大于条码初始化)
|
//Ds = oCnK3.RunProcReturn("EXEC h_p_KF_ICInventoryBarCodeQtyCtrl " + omodel.HMainSourceInterID.ToString(), "h_p_KF_ICInventoryBarCodeQtyCtrl");
|
|
//if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
|
//{
|
|
//}
|
//else
|
//{
|
// sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0][1]);
|
// oCnK3.RollBack();
|
// return false;
|
//}
|
sReturn = "新增成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
|
|
//条码扫描记录,新增到条码出入库表
|
public bool AddBill_WMS_PDA(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCn.BeginTran();
|
//删除主表
|
//oCn.RunProc("Delete From Kf_ICStockBillSub_WMS where HInterID=" + omodel.HInterID.ToString());
|
//插入子表
|
oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Insert " + omodel.HInterID.ToString() + ",'" + this.BillType + "','" + omodel.HBillNo + "'");
|
//
|
sReturn = "新增成功!";
|
oCn.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCn.RollBack();
|
throw (e);
|
}
|
}
|
|
|
//条码扫描记录,稽核单据
|
public bool Audit_PDA(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//新增条码出入库记录
|
oCnK3.RunProc("EXEC h_p_Kf_ICStockBillSub_Audit_WMS_Insert " + omodel.HInterID.ToString() + ",'" + this.BillType + "','" + omodel.HBillNo + "'");
|
//稽核单据
|
oCnK3.RunProc("EXEC h_p_Kf_POStockInBill_Check_K3 " + omodel.HInterID.ToString() + "," + omodel.HBillerID.ToString());
|
|
sReturn = "稽核成功!";
|
oCnK3.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCnK3.RollBack();
|
throw (e);
|
}
|
}
|
|
|
|
//显示单据条码信息
|
public bool ShowBill_Scheme(Int64 lngBillKey, ref string sReturn)
|
{
|
try
|
{
|
//循环子表2
|
DataSet DsSubSec;
|
DsSubSec = oCn.RunProcReturn("Select * from Kf_ICStockBillSub_WMS with (nolock) Where HInterID=" + lngBillKey.ToString() + " and HBillType='" + this.BillType + "'", "Kf_ICStockBillSub_WMS");
|
DetailSubColl.Clear();//清空
|
for (int i = 0; i < DsSubSec.Tables[0].Rows.Count; i++)
|
{
|
Model.ClsKf_POStockInBillScheme_K3 oSubSec = new Model.ClsKf_POStockInBillScheme_K3();
|
oSubSec.HInterID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HInterID"].ToString());
|
oSubSec.HEntryID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HEntryID"].ToString());
|
oSubSec.HItemID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HItemID"].ToString());
|
oSubSec.HBillType = DsSubSec.Tables[0].Rows[i]["HBillType"].ToString();
|
oSubSec.HMaterID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HMaterID"].ToString());
|
oSubSec.HProcID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HProcID"].ToString());
|
oSubSec.HWhID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HWhID"].ToString());
|
oSubSec.HGroupID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HGroupID"].ToString());
|
oSubSec.HQty = DBUtility.ClsPub.isDoule(DsSubSec.Tables[0].Rows[i]["HQty"].ToString());
|
oSubSec.HBarCode = DsSubSec.Tables[0].Rows[i]["HBarCode"].ToString();
|
oSubSec.HAddr = DsSubSec.Tables[0].Rows[i]["HAddr"].ToString();
|
oSubSec.HMaker = DsSubSec.Tables[0].Rows[i]["HMaker"].ToString();
|
oSubSec.HMakeDate = DBUtility.ClsPub.isDate(DsSubSec.Tables[0].Rows[i]["HMakeDate"].ToString());
|
oSubSec.HSourceInterID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HSourceInterID"].ToString());
|
oSubSec.HSourceEntryID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HSourceEntryID"].ToString());
|
oSubSec.HSourceBillType = DsSubSec.Tables[0].Rows[i]["HSourceBillType"].ToString();
|
oSubSec.HSourceBillNo = DsSubSec.Tables[0].Rows[i]["HSourceBillNo"].ToString();
|
oSubSec.HSourceItemID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HSourceItemID"].ToString());
|
//
|
DetailSubColl.Add(oSubSec);
|
}
|
sReturn = "显示单据成功!";
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
throw (e);
|
}
|
}
|
|
}
|
|
}
|