using System;
|
using System.Collections.Generic;
|
using System.Text;
|
using System.Data;
|
|
namespace DAL
|
{
|
public class ClsKf_EntrustOutBill_K3:DBUtility.ClsXt_BaseBill
|
{
|
public Model.ClsKf_EntrustOutBillMain_K3 omodel = new Model.ClsKf_EntrustOutBillMain_K3();
|
public List<Model.ClsKf_EntrustOutBillSub_K3> DetailColl = new List<Model.ClsKf_EntrustOutBillSub_K3>();
|
public List<Model.ClsKf_EntrustOutBillScheme_K3> DetailSubColl = new List<Model.ClsKf_EntrustOutBillScheme_K3>();
|
public SQLHelper.ClsCNK3 oCnK3 = new SQLHelper.ClsCNK3();
|
|
public ClsKf_EntrustOutBill_K3()
|
{
|
base.MvarItemKeySub = "ICStockBillEntry";
|
base.MvarItemKeySub2 = "";
|
base.MvarItemKeySub3 = "";
|
base.MvarItemKeySub4 = "";
|
base.MvarItemKey = "ICStockBill";
|
base.MvarReportTitle = "委外加工出库单";
|
base.BillType = "28";
|
}
|
|
#region 固定代码
|
|
~ClsKf_EntrustOutBill_K3()
|
{
|
DetailColl = null;
|
}
|
|
#endregion 自定义方法
|
//修改单据
|
public override bool ModifyBill(Int64 lngBillKey, ref string sReturn)
|
{
|
try
|
{
|
// //得到用户ID
|
long FBillerID = 16394;
|
DataSet Ds1;
|
oCnK3.BeginTran();
|
omodel.HInterID = lngBillKey;
|
//删除主表
|
oCnK3.RunProc("Delete From ICStockBill where FInterID=" + lngBillKey.ToString());
|
//插入子表
|
foreach (Model.ClsKf_EntrustOutBillSub_K3 oSub in DetailColl)
|
{
|
oCnK3.RunProc("INSERT INTO ICStockBillEntry "+
|
"(FInterID,FEntryID,FBrNo,FMapNumber,FMapName "+
|
",FItemID,FAuxPropID,FBatchNo,FQty,FQtyMust "+
|
",FUnitID,FAuxQtyMust,Fauxqty,FSecCoefficient,FSecQty "+
|
",FAuxPlanPrice,FPlanAmount,Fauxprice,Famount,FRealPrice "+
|
",FRealAmount,Fnote,FKFDate,FKFPeriod,FPeriodDate "+
|
",FIsVMI,FEntrySupply,FDCStockID,FDCSPID,FSNListID "+
|
",FSourceBillNo,FSourceTranType,FSourceInterId,FSourceEntryID "+
|
",FOrderBillNo,FOrderInterID,FOrderEntryID,FFatherProductID "+
|
",FICMOInterID,FPPBomEntryID,FInStockID,FPlanMode,FMTONo "+
|
",FPositionNo,FItemSize,FItemSuite,FDiscardID " +
|
") VALUES (" +
|
omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'0','',''" +
|
"," + oSub.HMaterID.ToString() + ",0,'" + oSub.HBatchNo + "'," + oSub.HQty.ToString() + "," + oSub.HQtyMust.ToString() +
|
"," + oSub.HUnitID.ToString() + "," + oSub.HQtyMust.ToString() + "," + oSub.HQty.ToString() + ",'0,0'" +
|
"," + oSub.HPlanPrice.ToString() + "," + oSub.HPlanAmount.ToString() + "," + oSub.HPrice.ToString() + "," + oSub.HAmount.ToString() + "," + oSub.HPrice.ToString() +
|
"," + oSub.HAmount.ToString() + ",'" + oSub.HRemark + "',null,0,null" +
|
",0,0," + oSub.HWhID.ToString() + "," + oSub.HSPID.ToString() + ",0" +
|
",'" + oSub.HSourceBillNo + "'," + oSub.HSourceTranType + "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() +
|
",'" + oSub.HSourceBillNo + "'," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + "," + oSub.HProductID.ToString() +
|
"," + oSub.HPPBomInterID.ToString() + "," + oSub.HPPBomEntryID.ToString() + ",0,14036,''" +
|
",'','','',0" +
|
")");
|
}
|
//更新主表
|
oCnK3.RunProc("INSERT INTO ICStockBill "+
|
"(FInterID,FBillNo,FBrNo,FTranType,FCancellation "+
|
",FStatus,FUpStockWhenSave,FROB,FHookStatus,Fdate "+
|
",FSupplyID,FPurposeID,Fnote,FCheckDate "+
|
",FSManagerID,FFManagerID,FBillerID "+
|
",FMultiCheckDate1,FMultiCheckDate2,FMultiCheckDate3 "+
|
",FMultiCheckDate4,FMultiCheckDate5,FMultiCheckDate6 "+
|
",FVchInterID,FSelTranType,FBackFlushed,FManageType "+
|
",FRelateBrID,FPOOrdBillNo,FBrID,FPrintCount " +
|
") VALUES (" +
|
omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','0','" + this.BillType + "',0" +
|
",0,0,1,0,'" + omodel.HDate.ToString() + "'" +
|
"," + omodel.HSupID + ",14190,'" + omodel.HRemark + "',null" +
|
"," + omodel.HKeeperID + "," + omodel.HSecManagerID + "," + FBillerID +
|
",null,null,null" +
|
",null,null,null" +
|
",0,1007105,0,0" +
|
",0,'',0,0" + ")");
|
//更新关联数量
|
//更新K3关联数量
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_EntrustOut_New " + 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
|
long FBillerID=16394;
|
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_EntrustOutBillSub_K3 oSub in DetailColl)
|
{
|
oCnK3.RunProc("INSERT INTO ICStockBillEntry " +
|
"(FInterID,FEntryID,FBrNo,FMapNumber,FMapName " +
|
",FItemID,FAuxPropID,FBatchNo,FQty,FQtyMust " +
|
",FUnitID,FAuxQtyMust,Fauxqty,FSecCoefficient,FSecQty " +
|
",FAuxPlanPrice,FPlanAmount,Fauxprice,Famount,FRealPrice " +
|
",FRealAmount,Fnote,FKFDate,FKFPeriod,FPeriodDate " +
|
",FIsVMI,FEntrySupply,FDCStockID,FDCSPID,FSNListID " +
|
",FSourceBillNo,FSourceTranType,FSourceInterId,FSourceEntryID " +
|
",FOrderBillNo,FOrderInterID,FOrderEntryID,FFatherProductID " +
|
",FICMOInterID,FPPBomEntryID,FInStockID,FPlanMode,FMTONo " +
|
",FPositionNo,FItemSize,FItemSuite,FDiscardID " +
|
") VALUES (" +
|
omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'0','',''" +
|
"," + oSub.HMaterID.ToString() + ",0,'" + oSub.HBatchNo + "'," + oSub.HQty.ToString() + "," + oSub.HQtyMust.ToString() +
|
"," + oSub.HUnitID.ToString() + "," + oSub.HQtyMust.ToString() + "," + oSub.HQty.ToString() + ",'0,0'" +
|
"," + oSub.HPlanPrice.ToString() + "," + oSub.HPlanAmount.ToString() + "," + oSub.HPrice.ToString() + "," + oSub.HAmount.ToString() + "," + oSub.HPrice.ToString() +
|
"," + oSub.HAmount.ToString() + ",'" + oSub.HRemark + "',null,0,null" +
|
",0,0," + oSub.HWhID.ToString() + "," + oSub.HSPID.ToString() + ",0" +
|
",'" + oSub.HSourceBillNo + "'," + oSub.HSourceTranType + "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() +
|
",'" + oSub.HSourceBillNo + "'," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + "," + oSub.HProductID.ToString() +
|
"," + oSub.HPPBomInterID.ToString() + "," + oSub.HPPBomEntryID.ToString() + ",0,14036,''" +
|
",'','','',0" +
|
")");
|
}
|
//主表
|
oCnK3.RunProc("INSERT INTO ICStockBill " +
|
"(FInterID,FBillNo,FBrNo,FTranType,FCancellation " +
|
",FStatus,FUpStockWhenSave,FROB,FHookStatus,Fdate " +
|
",FSupplyID,FPurposeID,Fnote,FCheckDate " +
|
",FSManagerID,FFManagerID,FBillerID " +
|
",FMultiCheckDate1,FMultiCheckDate2,FMultiCheckDate3 " +
|
",FMultiCheckDate4,FMultiCheckDate5,FMultiCheckDate6 " +
|
",FVchInterID,FSelTranType,FBackFlushed,FManageType " +
|
",FRelateBrID,FPOOrdBillNo,FBrID,FPrintCount " +
|
") VALUES (" +
|
omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','0','" + this.BillType + "',0" +
|
",0,0,1,0,'" + omodel.HDate.ToString() + "'" +
|
"," + omodel.HSupID + ",14190,'" + omodel.HRemark + "',null" +
|
"," + omodel.HKeeperID + "," + omodel.HSecManagerID + "," + FBillerID +
|
",null,null,null" +
|
",null,null,null" +
|
",0,1007105,0,0" +
|
",0,'',0,0" + ")");
|
|
//更新K3关联数量
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_EntrustOut_New " + 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.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.HKeeperID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["FSManagerID"].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.HExplanation = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FExplanation"].ToString());
|
omodel.HRemark = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FNote"].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_EntrustOutBillSub_K3 oSub = new Model.ClsKf_EntrustOutBillSub_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.HAuxPropID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FAuxPropID"].ToString());
|
oSub.HUnitID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FUnitID"].ToString());
|
//oSub.FSecUnitID = ClsPub.isLong(DsSub.Tables[0].Rows[i]["FSecUnitID"].ToString());
|
oSub.HSecCoefficient = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FSecCoefficient"].ToString());
|
oSub.HBatchNo = DsSub.Tables[0].Rows[i]["FBatchNo"].ToString().Trim();
|
oSub.HQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FQty"].ToString());
|
oSub.HQtyMust = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FQtyMust"].ToString());
|
|
oSub.HSecQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FSecQty"].ToString());
|
|
oSub.HAmount = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FAmount"].ToString());
|
oSub.HPlanAmount = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["FPlanAmount"].ToString());
|
//oSub.FEntrySupply = ClsPub.isLong(DsSub.Tables[0].Rows[i]["FEntrySupply"].ToString());
|
oSub.HWhID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FDCStockID"].ToString());
|
oSub.HSPID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FDCSPID"].ToString());
|
oSub.HRemark = DsSub.Tables[0].Rows[i]["FNote"].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.HSourceBillNo = DsSub.Tables[0].Rows[i]["FSourceBillNo"].ToString().Trim();
|
oSub.HSourceTranType = DsSub.Tables[0].Rows[i]["FSourceTranType"].ToString().Trim();
|
oSub.HOrderInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FOrderInterID"].ToString());
|
oSub.HOrderEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FOrderEntryID"].ToString());
|
oSub.HOrderBillNo = DsSub.Tables[0].Rows[i]["FOrderBillNo"].ToString().Trim();
|
oSub.HPPBomInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FICMOInterID"].ToString());
|
oSub.HPPBomEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["FPPBomEntryID"].ToString());
|
//oSub.HPPBomBillNo = DsSub.Tables[0].Rows[i]["FOrderBillNo"].ToString().Trim();
|
//oSub.FSEOutInterID = ClsPub.isLong(DsSub.Tables[0].Rows[i]["FSEOutInterID"].ToString());
|
//oSub.FSEOutEntryID = ClsPub.isLong(DsSub.Tables[0].Rows[i]["FSEOutEntryID"].ToString());
|
//oSub.FSEOutBillNo = DsSub.Tables[0].Rows[i]["FSEOutBillNo"].ToString().Trim();
|
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 Model.ClsKf_EntrustOutBillSub_K3 get_EntrustOutInfoByBarCode(string sBarCode)
|
{
|
try
|
{
|
Model.ClsKf_EntrustOutBillSub_K3 oSub=new Model.ClsKf_EntrustOutBillSub_K3();
|
DataSet Ds;
|
Ds = oCn.RunProcReturn("exec h_p_Kf_EntrustOutInfoByBarCode '" + sBarCode + "'", "xt_xtgnb", ref DBUtility.ClsPub.sExeReturnInfo);
|
if (Ds == null || Ds.Tables[0].Rows.Count == 0)
|
{
|
return null;
|
}
|
//oSub.HAmount = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HAmount"]);
|
//oSub.HAuxPrice = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HPrice"]);
|
//oSub.HAuxQty = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HQty"]);
|
//oSub.HBarCode = sBarCode;
|
//oSub.HBatchNo = Ds.Tables[0].Rows[0]["HBatchNo"].ToString();
|
//oSub.HMaterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMaterID"]);
|
return oSub;
|
}
|
catch (Exception e)
|
{
|
DBUtility.ClsPub.sExeReturnInfo += "根据条码获取相应信息失败!" + e.Message;
|
return null;
|
}
|
}
|
|
//条码扫描记录,新增到产品入库
|
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_EntrustOutBillSub_Insert_K3 " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
|
//插入主表
|
oCnK3.RunProc("INSERT INTO ICStockBill " +
|
"(FInterID,FBillNo,FBrNo,FTranType,FCancellation " +
|
",FStatus,FUpStockWhenSave,FROB,FHookStatus,Fdate " +
|
",FSupplyID,FPurposeID,Fnote,FCheckDate " +
|
",FSManagerID,FFManagerID,FBillerID " +
|
",FMultiCheckDate1,FMultiCheckDate2,FMultiCheckDate3 " +
|
",FMultiCheckDate4,FMultiCheckDate5,FMultiCheckDate6 " +
|
",FVchInterID,FSelTranType,FBackFlushed,FManageType " +
|
",FRelateBrID,FPOOrdBillNo,FBrID,FPrintCount " +//FHeadSelfB0837
|
") VALUES (" +
|
omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','0','" + this.BillType + "',0" +
|
",0,0,1,0,convert(varchar(10),getdate(),120)" +
|
"," + omodel.HSupID + ",14190,'" + omodel.HRemark + "',null" +
|
"," + omodel.HKeeperID + "," + omodel.HSecManagerID + "," + omodel.HBillerID.ToString() +
|
",null,null,null" +
|
",null,null,null" +
|
",0,1007105,0,0" +
|
",0,'',0,0 )");
|
//更新K3关联数量
|
//oCnK3.RunProc("EXEC p_UpdateBillRelateData " + this.BillType + "," + omodel.HInterID.ToString() + ",'ICStockBill','ICStockBillEntry'");
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_EntrustOut_New " + omodel.HInterID.ToString());
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_EntrustOutBill_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_EntrustOutBillSub_Red_Insert_K3 " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
|
//插入主表
|
oCnK3.RunProc("INSERT INTO ICStockBill " +
|
"(FInterID,FBillNo,FBrNo,FTranType,FCancellation " +
|
",FStatus,FUpStockWhenSave,FROB,FHookStatus,Fdate " +
|
",FSupplyID,FPurposeID,Fnote,FCheckDate " +
|
",FSManagerID,FFManagerID,FBillerID " +
|
",FMultiCheckDate1,FMultiCheckDate2,FMultiCheckDate3 " +
|
",FMultiCheckDate4,FMultiCheckDate5,FMultiCheckDate6 " +
|
",FVchInterID,FSelTranType,FBackFlushed,FManageType " +
|
",FRelateBrID,FPOOrdBillNo,FBrID,FPrintCount " +//FHeadSelfB0837
|
") VALUES (" +
|
omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','0','" + this.BillType + "',0" +
|
",0,0,-1,0,convert(varchar(10),getdate(),120)" +
|
"," + omodel.HSupID + ",14190,'" + omodel.HRemark + "',null" +
|
"," + omodel.HKeeperID + "," + omodel.HSecManagerID + "," + omodel.HBillerID.ToString() +
|
",null,null,null" +
|
",null,null,null" +
|
",0,1007105,0,0" +
|
",0,'',0,0 )");//,convert(varchar(10),getdate(),120)
|
//更新K3关联数量
|
//oCnK3.RunProc("EXEC p_UpdateBillRelateData " + this.BillType + "," + omodel.HInterID.ToString() + ",'ICStockBill','ICStockBillEntry'");
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_EntrustOut_New " + omodel.HInterID.ToString());
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_EntrustOutBill_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 CheckAddBill_PDA(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//删除子表
|
oCnK3.RunProc("Delete From ICStockBillEntry where FInterID=" + omodel.HInterID.ToString());
|
//更新K3关联数量
|
//oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_EntrustOut_Delete " + omodel.HInterID.ToString());
|
//插入子表
|
oCnK3.RunProc("EXEC h_p_Kf_EntrustOutBillSub_Insert_K3 " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
|
//更新K3关联数量
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_EntrustOut_New " + omodel.HInterID.ToString());
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_EntrustOutBill_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 CheckAddBill_RedPDA(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//插入子表
|
oCnK3.RunProc("EXEC h_p_Kf_EntrustOutBillSub_Red_CheckInsert_K3 " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
|
//更新K3关联数量
|
oCnK3.RunProc("EXEC h_p_K3_UpdateBillRelateData_EntrustOut_Red_New " + omodel.HInterID.ToString());
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_EntrustOutBill_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_WMS_PDA(ref string sReturn)
|
{
|
try
|
{
|
DataSet Ds;
|
oCnK3.BeginTran();
|
//删除主表
|
//oCnK3.RunProc("Delete From Kf_ICStockBillSub_WMS where HInterID=" + omodel.HInterID.ToString());
|
//插入子表
|
oCnK3.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Insert " + omodel.HInterID.ToString() + ",'" + this.BillType + "','" + omodel.HBillNo + "'");
|
//审核单据
|
oCnK3.RunProc("EXEC h_p_Kf_EntrustOutBill_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_WMS_PDA(Int64 sHSourceInterID, Int64 sHSourceEntryID, 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_RowInsert " + sHSourceEntryID.ToString() + "," + sHSourceEntryID.ToString() + ",'" + this.BillType + "'");
|
//更新 单据自定义字段(已提交)
|
oCn.RunProc("EXEC h_p_K3_EntrustOut_Status_UPDate " + sHSourceEntryID.ToString() + "," + sHSourceEntryID.ToString() + ",'" + this.BillType + "'");
|
//
|
sReturn = "新增成功!";
|
oCn.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCn.RollBack();
|
throw (e);
|
}
|
}
|
|
|
//根据供应商、物料、指令单号、销售订单号返回源单信息
|
public DataSet GetInfoBySource(long HSupID, long HMaterID, long HInstructID, long HSeOrderBillID, string sWhere)
|
{
|
DataSet DS;
|
try
|
{
|
DS = oCn.RunProcReturn("exec h_p_K3_EntrustOutBill_Source " + HSupID + "," + HMaterID + "," + HInstructID + "," + HSeOrderBillID, "h_p_K3_EntrustOutBill_Source", ref DBUtility.ClsPub.sExeReturnInfo);
|
if (DS.Tables[0].Rows.Count == 0)
|
return null;
|
else
|
{
|
return DS;
|
}
|
}
|
catch (Exception e)
|
{
|
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_EntrustOutBill_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_EntrustOutBillScheme_K3 oSubSec = new Model.ClsKf_EntrustOutBillScheme_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);
|
}
|
}
|
}
|
}
|