2026821
This commit is contained in:
@@ -0,0 +1,479 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Configuration;
|
||||
using System.Collections;
|
||||
using System.Web;
|
||||
using System.Web.Security;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using System.Web.UI.WebControls.WebParts;
|
||||
using System.Web.UI.HtmlControls;
|
||||
using GThinking.N_MISPRO;
|
||||
using GThinking.N_MISPRO.Data;
|
||||
using GThinking.N_MODEL.Page;
|
||||
using GThinking.N_MISPRO.Utility;
|
||||
using GThinking.N_PUBLIC;
|
||||
using System.Collections.Generic;
|
||||
using GThinking.N_MISPRO.Caching;
|
||||
|
||||
namespace GThinking.N_XLXSBJ
|
||||
{
|
||||
public partial class JGBPZ_HQFZJGBInfo : SingleCardBase
|
||||
{
|
||||
JGBPZ_HQFZJGB entity = new JGBPZ_HQFZJGB();
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
this.UMID = 100860036;
|
||||
this.UMName = "线缆销售报价价格目录配置";
|
||||
this.CurMaster = Master;
|
||||
this.CurEntity = entity;
|
||||
this.PageHeight = 180;
|
||||
this.PageWidth = 420;
|
||||
|
||||
Master.EnableAttachBtn = false;
|
||||
Master.EnableCancelBtn = false;
|
||||
Master.EnableCopyBtn = false;
|
||||
Master.EnableDeleteBtn = false;
|
||||
Master.EnableEditBtn = false;
|
||||
Master.EnableInsertBtn = false;
|
||||
Master.EnablePrintBtn = false;
|
||||
Master.EnableRefreshBtn = false;
|
||||
Master.EnableSaveBtn = false;
|
||||
|
||||
base.InitPage();
|
||||
}
|
||||
|
||||
#region 模板继承事件
|
||||
|
||||
#endregion
|
||||
|
||||
#region 自定义函数
|
||||
|
||||
#endregion
|
||||
|
||||
#region 控件事件
|
||||
|
||||
protected void btnQR_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (txtJGBMC.Text.Trim().Equals(""))
|
||||
{
|
||||
ShowMessage("价格表名称--不允许为空!");
|
||||
return;
|
||||
}
|
||||
|
||||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||||
TSQL SQL = new TSQL(dberp);
|
||||
string sGetJGBID = PageParam.GetRTrimString("JGBID");
|
||||
string sGetJGBMC = PageParam.GetRTrimString("JGBMC");
|
||||
if (sGetJGBID.Equals(""))
|
||||
{
|
||||
//同之前的操作包含两层含义:
|
||||
//1、单一价格表的直接新增
|
||||
//2、组合价格表的直接新增
|
||||
try
|
||||
{
|
||||
dberp.BeginTrans();
|
||||
|
||||
#region 如果是组合产品目录,先进行判断,构建出JGCIDS
|
||||
|
||||
string sJGCIDs = "";
|
||||
if (PageParam.GetRTrimString("CPMLLX").Equals("Y"))//组合产品目录
|
||||
{
|
||||
string sErrorMsg = "";
|
||||
sJGCIDs = JGBPZ.GetJGCIDS(dberp, SQL, PageParam.GetRTrimString("JGBPZDH"), PageParam.GetRTrimString("CLHQZH"),
|
||||
PageParam.GetRTrimString("CPMLIDS"), PageParam.GetRTrimString("BJCLIDS"), ref sErrorMsg);
|
||||
if (!sErrorMsg.Equals(""))
|
||||
{
|
||||
ShowMessage(sErrorMsg);
|
||||
dberp.CommitTrans();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
string sJGBID = JGBMLInfo.getNewJGBBH();
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("update XLXSJGBPZJGB set XLXSJGBPZJGB_JGBID=:pJGBID,XLXSJGBPZJGB_JGBMC=:pJGBMC where XLXSJGBPZJGB_JGBPZDH=:pJGBPZDH and XLXSJGBPZJGB_CLHQZH=:pCLHQZH");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pJGBMC").Value = txtJGBMC.Text.Trim();
|
||||
SQL.ParamByName("pJGBPZDH").Value = PageParam.GetRTrimString("JGBPZDH");
|
||||
SQL.ParamByName("pCLHQZH").Value = PageParam.GetRTrimString("CLHQZH");
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSJGB(XLXSJGB_MXBH,XLXSJGB_JGBID,XLXSJGB_JGBMC,XLXSJGB_YXQS,XLXSJGB_TJYS,XLXSJGB_JJLY,XLXSJGB_BJLY,XLXSJGB_WHRID,XLXSJGB_WHR,XLXSJGB_WHSJ,XLXSJGB_JGCIDS,XLXSJGB_CPMLID) ");
|
||||
SQL.Add("values(:XLXSJGB_MXBH,:XLXSJGB_JGBID,:XLXSJGB_JGBMC,:XLXSJGB_YXQS,:XLXSJGB_TJYS,:XLXSJGB_JJLY,:XLXSJGB_BJLY,:XLXSJGB_WHRID,:XLXSJGB_WHR,:XLXSJGB_WHSJ,:XLXSJGB_JGCIDS,:XLXSJGB_CPMLID)");
|
||||
SQL.ParamByName("XLXSJGB_MXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("XLXSJGB_JGBID").Value = sJGBID;
|
||||
SQL.ParamByName("XLXSJGB_JGBMC").Value = txtJGBMC.Text.Trim();
|
||||
SQL.ParamByName("XLXSJGB_YXQS").Value = DateTime.Now.ToShortDateString();
|
||||
//J|按调价因素计算-D|直接导入-C|基价价格表表价
|
||||
if (PageParam.GetRTrimString("CPMLLX").Equals("Y"))//组合产品目录
|
||||
{
|
||||
SQL.ParamByName("XLXSJGB_BJLY").Value = "C";
|
||||
}
|
||||
else
|
||||
{
|
||||
SQL.ParamByName("XLXSJGB_BJLY").Value = "J";
|
||||
}
|
||||
SQL.ParamByName("XLXSJGB_TJYS").Value = PageParam.GetRTrimString("TJYS");
|
||||
SQL.ParamByName("XLXSJGB_JJLY").Value = JGBPZ.GetJJLY(PageParam.GetRTrimString("TJYS"));
|
||||
SQL.ParamByName("XLXSJGB_WHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("XLXSJGB_WHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("XLXSJGB_WHSJ").Value = DateTime.Now;
|
||||
SQL.ParamByName("XLXSJGB_JGCIDS").Value = sJGCIDs;
|
||||
SQL.ParamByName("XLXSJGB_CPMLID").Value = PageParam.GetRTrimString("CPMLID");
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSJGBCLHQFD(XLXSJGBCLHQFD_MXBH,XLXSJGBCLHQFD_JGBID,XLXSJGBCLHQFD_BJCLID,XLXSJGBCLHQFD_HSJGS,XLXSJGBCLHQFD_HSJGZ,XLXSJGBCLHQFD_CLJGS,XLXSJGBCLHQFD_CLJGZ,XLXSJGBCLHQFD_WHRID,XLXSJGBCLHQFD_WHR,XLXSJGBCLHQFD_WHSJ) ");
|
||||
SQL.Add("select :pMXBH,:pJGBID,XLXSCLHQFD_BJCLID,XLXSCLHQFD_HSJGS,XLXSCLHQFD_HSJGZ,XLXSCLHQFD_CLJGS,XLXSCLHQFD_CLJGZ,:pWHRID,:pWHR,:pWHSJ");
|
||||
SQL.Add(" from XLXSJGBPZCLHQFD,XLXSCLHQFD");
|
||||
SQL.Add(" where XLXSJGBPZCLHQFD_JGBPZDH=:pJGBPZDH");
|
||||
SQL.Add(" and XLXSJGBPZCLHQFD_CLHQZH=:pCLHQZH");
|
||||
SQL.Add(" and XLXSCLHQFD_BJCLID=XLXSJGBPZCLHQFD_BJCLID");
|
||||
SQL.Add(" and XLXSCLHQFD_CLHQDH=XLXSJGBPZCLHQFD_CLHQDH");
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||||
SQL.ParamByName("pJGBPZDH").Value = PageParam.GetRTrimString("JGBPZDH");
|
||||
SQL.ParamByName("pCLHQZH").Value = PageParam.GetRTrimString("CLHQZH");
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
if (PageParam.GetRTrimString("MXBH").Equals("JGB") || PageParam.GetRTrimString("MXBH").Equals("JGC"))
|
||||
{
|
||||
//取材料行情插入新价格表的材料行情
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSCLHQ(XLXSCLHQ_JGBID,XLXSCLHQ_BJCLID,XLXSCLHQ_HSJG,XLXSCLHQ_WSJG,XLXSCLHQ_YXQS,XLXSCLHQ_YXQZ,XLXSCLHQ_BZ,XLXSCLHQ_WHRID,XLXSCLHQ_WHR,XLXSCLHQ_WHSJ) ");
|
||||
SQL.Add("select :pJGBID as JGBID,XLXSBJCL_BJCLID as BJCLID,isnull(HSJG,0.0) as HSJG,isnull(CLJG,0.0) as CLJG,convert(datetime,'1900-01-01 00:00:00') as YXQS,convert(datetime,'1900-01-01 00:00:00') as YXQZ,");
|
||||
SQL.Add(" ' ' as BZ,:pWHRID as WHRID,:pWHR as WHR,:pWHSJ as WHSJ ");
|
||||
SQL.Add("from XLXSBJCL left join ");
|
||||
SQL.Add("(");
|
||||
SQL.Add("select XLXSCLHQ_BJCLID as BJCLID,XLXSCLHQ_HSJG as HSJG,XLXSCLHQ_WSJG as CLJG ");
|
||||
SQL.Add("from XLXSCLHQ, ");
|
||||
SQL.Add("(");
|
||||
SQL.Add("select XLXSCLHQ_BJCLID as BJCLID,max(XLXSCLHQ_YXQS) as maxYXQS ");
|
||||
SQL.Add("from XLXSCLHQ ");
|
||||
SQL.Add("where XLXSCLHQ_JGBID='ZZZZZZZZ' ");
|
||||
SQL.Add("and XLXSCLHQ_YXQS<=:pYXQS ");
|
||||
SQL.Add("and XLXSCLHQ_YXQZ is null ");
|
||||
SQL.Add("group by XLXSCLHQ_BJCLID ");
|
||||
SQL.Add(") a ");
|
||||
SQL.Add("where XLXSCLHQ_JGBID='ZZZZZZZZ' ");
|
||||
SQL.Add("and XLXSCLHQ_BJCLID=BJCLID ");
|
||||
SQL.Add("and XLXSCLHQ_YXQS=maxYXQS ");
|
||||
SQL.Add(") b on BJCLID=XLXSBJCL_BJCLID ");
|
||||
SQL.Add("where isnull(XLXSBJCL_BJCLMC,' ')<>' ' and isnull(XLXSBJCL_TYBZ,'N') <> 'Y' ");
|
||||
SQL.Add("and not exists (select 1 from XLXSCLHQ where XLXSCLHQ_JGBID=:pJGBID and XLXSCLHQ_BJCLID=XLXSBJCL_BJCLID and XLXSCLHQ_YXQS='1900-01-01 00:00:00.000') ");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||||
SQL.ParamByName("pYXQS").Value = DateTime.Now.ToShortDateString();
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
if (XLBJDUtils.HasJGBWLHQ(sJGBID))//判断价格表是否记录物料行情
|
||||
{
|
||||
//取物料行情插入新价格表的物料行情
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSWLHQ(XLXSWLHQ_JGBID,XLXSWLHQ_WLID,XLXSWLHQ_HSJG,XLXSWLHQ_WSJG,XLXSWLHQ_YXQS,XLXSWLHQ_YXQZ,XLXSWLHQ_BZ,XLXSWLHQ_WHRID,XLXSWLHQ_WHR,XLXSWLHQ_WHSJ) ");
|
||||
SQL.Add("select :pJGBID as JGBID,XLXSBJCLWL_WLID as WLID,isnull(HSJG,0.0) as HSJG,isnull(CLJG,0.0) as CLJG,convert(datetime,'1900-01-01 00:00:00') as YXQS,convert(datetime,'1900-01-01 00:00:00') as YXQZ,");
|
||||
SQL.Add(" ' ' as BZ,:pWHRID as WHRID,:pWHR as WHR,:pWHSJ as WHSJ ");
|
||||
SQL.Add("from XLXSBJCLWL left join ");
|
||||
SQL.Add("(");
|
||||
SQL.Add("select XLXSWLHQ_WLID as WLID,XLXSWLHQ_HSJG as HSJG,XLXSWLHQ_WSJG as CLJG ");
|
||||
SQL.Add("from XLXSWLHQ, ");
|
||||
SQL.Add("(");
|
||||
SQL.Add("select XLXSWLHQ_WLID as WLID,max(XLXSWLHQ_YXQS) as maxYXQS ");
|
||||
SQL.Add("from XLXSWLHQ ");
|
||||
SQL.Add("where XLXSWLHQ_JGBID=' ' ");
|
||||
SQL.Add("and XLXSWLHQ_YXQS<=:pYXQS ");
|
||||
SQL.Add("and XLXSWLHQ_YXQZ is null ");
|
||||
SQL.Add("group by XLXSWLHQ_WLID ");
|
||||
SQL.Add(") a ");
|
||||
SQL.Add("where XLXSWLHQ_JGBID=' ' ");
|
||||
SQL.Add("and XLXSWLHQ_WLID=WLID ");
|
||||
SQL.Add("and XLXSWLHQ_YXQS=maxYXQS ");
|
||||
SQL.Add(") b on WLID=XLXSBJCLWL_WLID ");
|
||||
SQL.Add("where exists(select 1 from XLXSBJCL where XLXSBJCL_BJCLID=XLXSBJCLWL_BJCLID and XLXSBJCL_BJHQ='2') ");
|
||||
SQL.Add("and not exists (select 1 from XLXSWLHQ where XLXSWLHQ_JGBID=:pJGBID and XLXSWLHQ_WLID=XLXSBJCLWL_WLID and XLXSWLHQ_YXQS='1900-01-01 00:00:00.000') ");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||||
SQL.ParamByName("pYXQS").Value = DateTime.Now.ToShortDateString();
|
||||
dberp.ExecSQL(SQL);
|
||||
}
|
||||
}
|
||||
|
||||
dberp.CommitTrans();
|
||||
if (PageParam.GetRTrimString("MXBH").Equals("JGB"))
|
||||
{
|
||||
ShowMessage("已成功派生报价价格表:" + sJGBID + "|" + txtJGBMC.Text.Trim());
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowMessage("已成功派生基价价格表:" + sJGBID + "|" + txtJGBMC.Text.Trim());
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowMessage(ex.Message);
|
||||
dberp.RollbackTrans();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
//sGetJGBID不为空,表明需要用新建的价格表替换sGetJGBID
|
||||
//仅单一价格表能打开替换(仅能派生基价价格表),组合价格表的打开替换
|
||||
string sWarnMsg = "";
|
||||
sWarnMsg = "是否需要用新派生的价格表替换原价格表【" + sGetJGBID + "|" + sGetJGBMC + "】?";
|
||||
Confirm.Register("IsQD", sWarnMsg);
|
||||
Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No;
|
||||
if (Confirm.GetValue("IsQD").Trim().Equals(""))
|
||||
{
|
||||
Confirm.Ask("IsQD");
|
||||
return;
|
||||
}
|
||||
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
|
||||
{
|
||||
Confirm.Clear();
|
||||
return;
|
||||
}
|
||||
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
|
||||
{
|
||||
Confirm.Clear();
|
||||
}
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
dberp.BeginTrans();
|
||||
|
||||
string sJGCIDs = " ";
|
||||
string sJGBMC = txtJGBMC.Text.Trim();
|
||||
string sJGBID = JGBMLInfo.getNewJGBBH();
|
||||
|
||||
#region 先完成价格表的新增--JGC
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSJGB(XLXSJGB_MXBH,XLXSJGB_JGBID,XLXSJGB_JGBMC,XLXSJGB_YXQS,XLXSJGB_TJYS,XLXSJGB_JJLY,XLXSJGB_BJLY,XLXSJGB_WHRID,XLXSJGB_WHR,XLXSJGB_WHSJ,XLXSJGB_JGCIDS,XLXSJGB_CPMLID) ");
|
||||
SQL.Add("values(:XLXSJGB_MXBH,:XLXSJGB_JGBID,:XLXSJGB_JGBMC,:XLXSJGB_YXQS,:XLXSJGB_TJYS,:XLXSJGB_JJLY,:XLXSJGB_BJLY,:XLXSJGB_WHRID,:XLXSJGB_WHR,:XLXSJGB_WHSJ,:XLXSJGB_JGCIDS,:XLXSJGB_CPMLID)");
|
||||
SQL.ParamByName("XLXSJGB_MXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("XLXSJGB_JGBID").Value = sJGBID;
|
||||
SQL.ParamByName("XLXSJGB_JGBMC").Value = txtJGBMC.Text.Trim();
|
||||
SQL.ParamByName("XLXSJGB_YXQS").Value = DateTime.Now.ToShortDateString();
|
||||
//J|按调价因素计算-D|直接导入-C|基价价格表表价
|
||||
SQL.ParamByName("XLXSJGB_BJLY").Value = "J";
|
||||
SQL.ParamByName("XLXSJGB_TJYS").Value = PageParam.GetRTrimString("TJYS");
|
||||
SQL.ParamByName("XLXSJGB_JJLY").Value = JGBPZ.GetJJLY(PageParam.GetRTrimString("TJYS"));
|
||||
SQL.ParamByName("XLXSJGB_WHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("XLXSJGB_WHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("XLXSJGB_WHSJ").Value = DateTime.Now;
|
||||
SQL.ParamByName("XLXSJGB_JGCIDS").Value = sJGCIDs;
|
||||
SQL.ParamByName("XLXSJGB_CPMLID").Value = PageParam.GetRTrimString("CPMLID");
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("update XLXSJGBPZJGB set XLXSJGBPZJGB_JGBID=:pJGBID,XLXSJGBPZJGB_JGBMC=:pJGBMC where XLXSJGBPZJGB_JGBPZDH=:pJGBPZDH and XLXSJGBPZJGB_CLHQZH=:pCLHQZH");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pJGBMC").Value = txtJGBMC.Text.Trim();
|
||||
SQL.ParamByName("pJGBPZDH").Value = PageParam.GetRTrimString("JGBPZDH");
|
||||
SQL.ParamByName("pCLHQZH").Value = PageParam.GetRTrimString("CLHQZH");
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
//后续插入
|
||||
//SQL.Clear();
|
||||
//SQL.Add("insert into XLXSJGBCLHQFD(XLXSJGBCLHQFD_MXBH,XLXSJGBCLHQFD_JGBID,XLXSJGBCLHQFD_BJCLID,XLXSJGBCLHQFD_HSJGS,XLXSJGBCLHQFD_HSJGZ,XLXSJGBCLHQFD_CLJGS,XLXSJGBCLHQFD_CLJGZ,XLXSJGBCLHQFD_WHRID,XLXSJGBCLHQFD_WHR,XLXSJGBCLHQFD_WHSJ) ");
|
||||
//SQL.Add("select :pMXBH,:pJGBID,XLXSCLHQFD_BJCLID,XLXSCLHQFD_HSJGS,XLXSCLHQFD_HSJGZ,XLXSCLHQFD_CLJGS,XLXSCLHQFD_CLJGZ,:pWHRID,:pWHR,:pWHSJ");
|
||||
//SQL.Add(" from XLXSJGBPZCLHQFD,XLXSCLHQFD");
|
||||
//SQL.Add(" where XLXSJGBPZCLHQFD_JGBPZDH=:pJGBPZDH");
|
||||
//SQL.Add(" and XLXSJGBPZCLHQFD_CLHQZH=:pCLHQZH");
|
||||
//SQL.Add(" and XLXSCLHQFD_BJCLID=XLXSJGBPZCLHQFD_BJCLID");
|
||||
//SQL.Add(" and XLXSCLHQFD_CLHQDH=XLXSJGBPZCLHQFD_CLHQDH");
|
||||
//SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
//SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
//SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||||
//SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||||
//SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||||
//SQL.ParamByName("pJGBPZDH").Value = PageParam.GetRTrimString("JGBPZDH");
|
||||
//SQL.ParamByName("pCLHQZH").Value = PageParam.GetRTrimString("CLHQZH");
|
||||
//dberp.ExecSQL(SQL);
|
||||
|
||||
if (PageParam.GetRTrimString("MXBH").Equals("JGB") || PageParam.GetRTrimString("MXBH").Equals("JGC"))
|
||||
{
|
||||
//取材料行情插入新价格表的材料行情
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSCLHQ(XLXSCLHQ_JGBID,XLXSCLHQ_BJCLID,XLXSCLHQ_HSJG,XLXSCLHQ_WSJG,XLXSCLHQ_YXQS,XLXSCLHQ_YXQZ,XLXSCLHQ_BZ,XLXSCLHQ_WHRID,XLXSCLHQ_WHR,XLXSCLHQ_WHSJ) ");
|
||||
SQL.Add("select :pJGBID as JGBID,XLXSBJCL_BJCLID as BJCLID,isnull(HSJG,0.0) as HSJG,isnull(CLJG,0.0) as CLJG,convert(datetime,'1900-01-01 00:00:00') as YXQS,convert(datetime,'1900-01-01 00:00:00') as YXQZ,");
|
||||
SQL.Add(" ' ' as BZ,:pWHRID as WHRID,:pWHR as WHR,:pWHSJ as WHSJ ");
|
||||
SQL.Add("from XLXSBJCL left join ");
|
||||
SQL.Add("(");
|
||||
SQL.Add("select XLXSCLHQ_BJCLID as BJCLID,XLXSCLHQ_HSJG as HSJG,XLXSCLHQ_WSJG as CLJG ");
|
||||
SQL.Add("from XLXSCLHQ, ");
|
||||
SQL.Add("(");
|
||||
SQL.Add("select XLXSCLHQ_BJCLID as BJCLID,max(XLXSCLHQ_YXQS) as maxYXQS ");
|
||||
SQL.Add("from XLXSCLHQ ");
|
||||
SQL.Add("where XLXSCLHQ_JGBID='ZZZZZZZZ' ");
|
||||
SQL.Add("and XLXSCLHQ_YXQS<=:pYXQS ");
|
||||
SQL.Add("and XLXSCLHQ_YXQZ is null ");
|
||||
SQL.Add("group by XLXSCLHQ_BJCLID ");
|
||||
SQL.Add(") a ");
|
||||
SQL.Add("where XLXSCLHQ_JGBID='ZZZZZZZZ' ");
|
||||
SQL.Add("and XLXSCLHQ_BJCLID=BJCLID ");
|
||||
SQL.Add("and XLXSCLHQ_YXQS=maxYXQS ");
|
||||
SQL.Add(") b on BJCLID=XLXSBJCL_BJCLID ");
|
||||
SQL.Add("where isnull(XLXSBJCL_BJCLMC,' ')<>' ' and isnull(XLXSBJCL_TYBZ,'N') <> 'Y' ");
|
||||
SQL.Add("and not exists (select 1 from XLXSCLHQ where XLXSCLHQ_JGBID=:pJGBID and XLXSCLHQ_BJCLID=XLXSBJCL_BJCLID and XLXSCLHQ_YXQS='1900-01-01 00:00:00.000') ");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||||
SQL.ParamByName("pYXQS").Value = DateTime.Now.ToShortDateString();
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
if (XLBJDUtils.HasJGBWLHQ(sJGBID))//判断价格表是否记录物料行情
|
||||
{
|
||||
//取物料行情插入新价格表的物料行情
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSWLHQ(XLXSWLHQ_JGBID,XLXSWLHQ_WLID,XLXSWLHQ_HSJG,XLXSWLHQ_WSJG,XLXSWLHQ_YXQS,XLXSWLHQ_YXQZ,XLXSWLHQ_BZ,XLXSWLHQ_WHRID,XLXSWLHQ_WHR,XLXSWLHQ_WHSJ) ");
|
||||
SQL.Add("select :pJGBID as JGBID,XLXSBJCLWL_WLID as WLID,isnull(HSJG,0.0) as HSJG,isnull(CLJG,0.0) as CLJG,convert(datetime,'1900-01-01 00:00:00') as YXQS,convert(datetime,'1900-01-01 00:00:00') as YXQZ,");
|
||||
SQL.Add(" ' ' as BZ,:pWHRID as WHRID,:pWHR as WHR,:pWHSJ as WHSJ ");
|
||||
SQL.Add("from XLXSBJCLWL left join ");
|
||||
SQL.Add("(");
|
||||
SQL.Add("select XLXSWLHQ_WLID as WLID,XLXSWLHQ_HSJG as HSJG,XLXSWLHQ_WSJG as CLJG ");
|
||||
SQL.Add("from XLXSWLHQ, ");
|
||||
SQL.Add("(");
|
||||
SQL.Add("select XLXSWLHQ_WLID as WLID,max(XLXSWLHQ_YXQS) as maxYXQS ");
|
||||
SQL.Add("from XLXSWLHQ ");
|
||||
SQL.Add("where XLXSWLHQ_JGBID=' ' ");
|
||||
SQL.Add("and XLXSWLHQ_YXQS<=:pYXQS ");
|
||||
SQL.Add("and XLXSWLHQ_YXQZ is null ");
|
||||
SQL.Add("group by XLXSWLHQ_WLID ");
|
||||
SQL.Add(") a ");
|
||||
SQL.Add("where XLXSWLHQ_JGBID=' ' ");
|
||||
SQL.Add("and XLXSWLHQ_WLID=WLID ");
|
||||
SQL.Add("and XLXSWLHQ_YXQS=maxYXQS ");
|
||||
SQL.Add(") b on WLID=XLXSBJCLWL_WLID ");
|
||||
SQL.Add("where exists(select 1 from XLXSBJCL where XLXSBJCL_BJCLID=XLXSBJCLWL_BJCLID and XLXSBJCL_BJHQ='2') ");
|
||||
SQL.Add("and not exists (select 1 from XLXSWLHQ where XLXSWLHQ_JGBID=:pJGBID and XLXSWLHQ_WLID=XLXSBJCLWL_WLID and XLXSWLHQ_YXQS='1900-01-01 00:00:00.000') ");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||||
SQL.ParamByName("pYXQS").Value = DateTime.Now.ToShortDateString();
|
||||
dberp.ExecSQL(SQL);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 完成更新,以下代码同JGBPZ_HQFZJGBList.aspx.cs的grdJGB_RowDoubleClick
|
||||
|
||||
SQL.Clear();
|
||||
#region 处理替换的价格表B
|
||||
//新增价格表已经处理
|
||||
//if (sBJLY.Equals("C"))//单一产品目录此分支走不到
|
||||
//{
|
||||
// SQL.Add("update XLXSJGB set XLXSJGB_CPMLID=:pCPMLID,XLXSJGB_JGCIDS=:pJGCIDS,XLXSJGB_BJLY='J' where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID");
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// SQL.Add("update XLXSJGB set XLXSJGB_CPMLID=:pCPMLID,XLXSJGB_JGCIDS=:pJGCIDS where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID");
|
||||
//}
|
||||
//SQL.ParamByName("pCPMLID").Value = PageParam.GetRTrimString("CPMLID");
|
||||
//SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
//SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
//SQL.ParamByName("pJGCIDS").Value = sJGCIDs;
|
||||
//dberp.ExecSQL(SQL);
|
||||
|
||||
//使用新价格表进行旧价格表替换
|
||||
SQL.Clear();
|
||||
SQL.Add("update XLXSJGBPZJGB set XLXSJGBPZJGB_JGBID=:pJGBID,XLXSJGBPZJGB_JGBMC=:pJGBMC where XLXSJGBPZJGB_JGBPZDH=:pJGBPZDH and XLXSJGBPZJGB_JGBID = :pOLDJGBID ");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pJGBMC").Value = sJGBMC;
|
||||
SQL.ParamByName("pJGBPZDH").Value = PageParam.GetRTrimString("JGBPZDH");
|
||||
SQL.ParamByName("pOLDJGBID").Value = sGetJGBID;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("delete from XLXSJGBCLHQFD where XLXSJGBCLHQFD_MXBH=:pMXBH and XLXSJGBCLHQFD_JGBID=:pJGBID");
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSJGBCLHQFD(XLXSJGBCLHQFD_MXBH,XLXSJGBCLHQFD_JGBID,XLXSJGBCLHQFD_BJCLID,XLXSJGBCLHQFD_HSJGS,XLXSJGBCLHQFD_HSJGZ,XLXSJGBCLHQFD_CLJGS,XLXSJGBCLHQFD_CLJGZ,XLXSJGBCLHQFD_WHRID,XLXSJGBCLHQFD_WHR,XLXSJGBCLHQFD_WHSJ) ");
|
||||
SQL.Add("select XLXSJGBCLHQFD_MXBH,:pNEWJGBID,XLXSJGBCLHQFD_BJCLID,XLXSJGBCLHQFD_HSJGS,XLXSJGBCLHQFD_HSJGZ,XLXSJGBCLHQFD_CLJGS,XLXSJGBCLHQFD_CLJGZ,:pWHRID,:pWHR,:pWHSJ");
|
||||
SQL.Add(" from XLXSJGBCLHQFD");
|
||||
SQL.Add(" where XLXSJGBCLHQFD_MXBH=:pMXBH");
|
||||
SQL.Add(" and XLXSJGBCLHQFD_JGBID=:pOLDJGBID");
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pOLDJGBID").Value = sGetJGBID;
|
||||
SQL.ParamByName("pNEWJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||||
dberp.ExecSQL(SQL);
|
||||
#endregion
|
||||
|
||||
#region 处理被替换的--价格表A
|
||||
SQL.Clear();
|
||||
SQL.Add("delete from XLXSJGBCLHQFD where XLXSJGBCLHQFD_MXBH=:pMXBH and XLXSJGBCLHQFD_JGBID=:pJGBID");
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGBID").Value = sGetJGBID;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("update XLXSJGB set XLXSJGB_CPMLID=null,XLXSJGB_JGCIDS=:pJGCIDS where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID");
|
||||
SQL.ParamByName("pCPMLID").Value = PageParam.GetRTrimString("CPMLID");
|
||||
SQL.ParamByName("pJGBID").Value = sGetJGBID;
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGCIDS").Value = sJGCIDs;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
#endregion
|
||||
|
||||
#region 完成组合价格表XLXSJGB_JGCIDS的替换
|
||||
SQL.Clear();
|
||||
SQL.Add(" update XLXSJGB set XLXSJGB_JGCIDS = REPLACE(XLXSJGB_JGCIDS,:pOLDJGBID,:pNEWJGBID)");
|
||||
SQL.Add(" where XLXSJGB_JGCIDS like '%'||:pOLDJGBID||'%' and XLXSJGB_MXBH='JGB' ");
|
||||
SQL.ParamByName("pOLDJGBID").Value = sGetJGBID;
|
||||
SQL.ParamByName("pNEWJGBID").Value = sJGBID;
|
||||
dberp.ExecSQL(SQL);
|
||||
#endregion
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
dberp.CommitTrans();
|
||||
ShowMessage("已成功派生基价价格表并完成替换:" + sJGBID + "|" + txtJGBMC.Text.Trim());
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowMessage(ex.Message);
|
||||
dberp.RollbackTrans();
|
||||
}
|
||||
}
|
||||
|
||||
CacheNotify.TableIsUpdated("DBERP", "XLXSJGB");
|
||||
DialogOperationScript dos = new DialogOperationScript(this);
|
||||
dos.ClickOwnerButton(PageParam.GetRTrimString("btnRefresh1CID"));
|
||||
dos.CloseSelf();
|
||||
dos.Execute();
|
||||
}
|
||||
|
||||
protected void btnQX_Click(object sender, EventArgs e)
|
||||
{
|
||||
CloseWindow();
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user