Files
N_XLXSBJ----MX/CLYLInfo.aspx.cs
T
2026-08-21 17:03:02 +08:00

1283 lines
66 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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 GThinking.N_MODEL.Dialog;
using GThinking.N_WORKFLOW;
using System.Collections.Generic;
using GThinking.N_MISPRO.TableCache;
namespace GThinking.N_XLXSBJ
{
public partial class CLYLInfo : SingleCardBase
{
CLYL entity = new CLYL();
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860014;
this.UMName = "线缆销售报价材料用量";
this.CurMaster = Master;
this.CurEntity = entity;
this.PageHeight = 500;
this.PageWidth = 700;
if (!this.IsPostBack)
{
InitControls();
}
base.InitPage();
this.WorkFlowId = _curWorkFlow.GetWFID("XLXSBJCLYL");
}
#region 模板事件继承
protected override void SetControlState()
{
base.SetControlState();
if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy)
{
_curWorkFlow.SetFormRights(this.Page, _curWorkFlow.GetWFID("XLXSBJCLYL"), ControlState);
}
txtLCZT.Enabled = false;
txtWLMC.Enabled = false;
txtWLGG.Enabled = false;
txtWLTZ.Enabled = false;
txtWLCL.Enabled = false;
txtJLDW.Enabled = false;
txtWHR.Enabled = false;
datWHSJ.Enabled = false;
cbxCPMLID.Enabled = false;
btnCLYL.Enabled = ControlState == TControlState.ctsBrowse;
lblJGCZB.Enabled = true;
if (ControlState == TControlState.ctsEdit)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select 1 from XLXSCLQD where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
sql.Add(" and (XLXSCLQD_SL01<>0");
for (int i = 2; i <= 80; i++)
{
sql.Add(string.Format(" or XLXSCLQD_SL{0}<>0 ", i.ToString().PadLeft(2, '0')));
}
sql.Add(" )");
sql.ParamByName("pXLXHID").Value = txtOLD_XLXHID.Value.Trim();
sql.ParamByName("pXLGGID").Value = txtOLD_XLGGID.Value.Trim();
sql.ParamByName("pXLBZID").Value = txtOLD_XLBZID.Value.Trim();
sql.ParamByName("pDYDJID").Value = txtOLD_DYDJID.Value.Trim().Equals("") ? " " : txtOLD_DYDJID.Value.Trim();
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)//一旦维护过材料用量,则不允许调整结构尺重表
{
cbxJGCZB.Enabled = false;
}
sql.Clear();
sql.Add("select 1 from XLXSCLQDWL ");
sql.Add("where exists(select 1 from XLXSCLQD ");
sql.Add(" where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
sql.Add(" and XLXSCLQD_JGCZBID=XLXSCLQDWL_JGCZBID and XLXSCLQD_JGCZBBBID=XLXSCLQDWL_JGCZBBBID and XLXSCLQD_JGCZBXH=XLXSCLQDWL_JGCZBXH and XLXSCLQD_DRHH=XLXSCLQDWL_DRHH");
sql.Add(" )");
sql.ParamByName("pXLXHID").Value = txtOLD_XLXHID.Value.Trim();
sql.ParamByName("pXLGGID").Value = txtOLD_XLGGID.Value.Trim();
sql.ParamByName("pXLBZID").Value = txtOLD_XLBZID.Value.Trim();
sql.ParamByName("pDYDJID").Value = txtOLD_DYDJID.Value.Trim().Equals("") ? " " : txtOLD_DYDJID.Value.Trim();
DataSet dsWL = dberp.OpenDataSet(sql);
if (dsWL.Tables[0].Rows.Count > 0)//一旦维护过材料物料,则不允许调整结构尺重表
{
cbxJGCZB.Enabled = false;
}
}
if (CheckModule("101421008"))
{
btnJGCZB.Visible = true;
}
else
{
btnJGCZB.Visible = false;
}
}
protected override void LoadRecord()
{
if (!IsPostBack)
{
if (!PageParam.ContainsKey("XLXSCLQD_XLXHID"))
{
entity.EntityTable.EntitySelSql = @"select XLXSCLQD_XLXHID,XLXSCLQD_XLGGID,XLXSCLQD_XLBZID,XLXSCLQD_DYDJID,XLXSCLQD_WLID,WL_MC,WL_GG,WL_TZ,WL_CL,WL_JLDW,XLXSCLQD_GCID,
XLXSCLQD_BZ,XLXSCLQD_WHR,XLXSCLQD_WHRID,XLXSCLQD_WHSJ,XLXSCLQD_JGCZBID,XLXSCLQD_JGCZBBBID,XLXSCLQD_CPMLID,
XLXSCLQD_WFID,XLXSCLQD_WPID,XLXSCLQD_WFINST,XLXSCLQD_WFAWAITER,XLXSCLQD_WFHANDLER,XLXSCLQD_ACTNAME
from XLXSCLQD left join WL on WL_WLID=XLXSCLQD_WLID
where XLXSCLQD_WFID=:XLXSCLQD_WFID and XLXSCLQD_WFINST=:XLXSCLQD_WFINST";
entity.Param.Add("XLXSCLQD_WFID", PageParam.GetRTrimString("WFID"));
entity.Param.Add("XLXSCLQD_WFINST", PageParam.GetRTrimString("WFInst"));
}
else
{
entity.Param.Add("XLXSCLQD_XLXHID", PageParam.GetRTrimString("XLXSCLQD_XLXHID"));
entity.Param.Add("XLXSCLQD_XLGGID", PageParam.GetRTrimString("XLXSCLQD_XLGGID"));
entity.Param.Add("XLXSCLQD_XLBZID", PageParam.GetRTrimString("XLXSCLQD_XLBZID"));
entity.Param.Add("XLXSCLQD_DYDJID", PageParam.GetRTrimString("XLXSCLQD_DYDJID").Equals("") ? " " : PageParam.GetRTrimString("XLXSCLQD_DYDJID"));
}
}
else
{
entity.Param.Add("XLXSCLQD_XLXHID", txtOLD_XLXHID.Value.Trim());
entity.Param.Add("XLXSCLQD_XLGGID", txtOLD_XLGGID.Value.Trim());
entity.Param.Add("XLXSCLQD_XLBZID", txtOLD_XLBZID.Value.Trim());
entity.Param.Add("XLXSCLQD_DYDJID", txtOLD_DYDJID.Value.Trim().Equals("") ? " " : txtOLD_DYDJID.Value.Trim());
}
base.LoadRecord();
txtLCZT.Text = this._curWorkFlow.GetWPName(this.WorkFlowId, txtWPID.Value.Trim());
txtOLD_XLXHID.Value = cbxXLXHID.SelectedValue.Trim();
txtOLD_XLGGID.Value = txtXLGGID.Text.Trim();
txtOLD_XLBZID.Value = cbxXLBZID.SelectedValue.Trim();
txtOLD_DYDJID.Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim();
txtOLD_CPWLID.Value = txtXLWLID.Text.Trim();
txtOLD_GCID.Value = cbxGCID.SelectedValue.Trim();
cbxJGCZB.SelectedValue = txtJGCZBID.Value.Trim() + "|" + txtJGCZBBBID.Value.Trim();
txtOldJGCZBID.Value = cbxJGCZB.SelectedValue.Trim();
}
protected override void OnNewRecorder()
{
base.OnNewRecorder();
if (cbxJGCZB.ItemsCount == 1)
cbxJGCZB.SelectedIndex = 0;
txtWPID.Value = "";
txtLCZT.Text = "";
txtOLD_XLXHID.Value = "";
txtOLD_XLGGID.Value = "";
txtOLD_XLBZID.Value = "";
txtOLD_DYDJID.Value = "";
txtWHR.Text = tSession.UserName;
txtWHRID.Value = tSession.UserId;
datWHSJ.Text = CMISproConvert.ConvertTime(DateTime.Now);
txtOLD_CPWLID.Value = "";
txtOLD_GCID.Value = "";
txtInsXLXLB.Value = "N";
txtOldJGCZBID.Value = "";
}
protected override void OnCopyRecorder()
{
base.OnCopyRecorder();
txtWPID.Value = "";
txtLCZT.Text = "";
txtOLD_XLXHID.Value = "";
txtOLD_XLGGID.Value = "";
txtOLD_XLBZID.Value = "";
txtOLD_DYDJID.Value = "";
txtWHR.Text = tSession.UserName;
txtWHRID.Value = tSession.UserId;
datWHSJ.Text = CMISproConvert.ConvertTime(DateTime.Now);
txtOLD_CPWLID.Value = "";
txtOLD_GCID.Value = "";
txtInsXLXLB.Value = "N";
txtOldJGCZBID.Value = "";
}
protected override bool DataLogicValid()
{
if (!base.DataLogicValid()) return false;
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
if (cbxXLXHID.SelectedValue.Trim().Equals(""))
{
ShowMessage("型号--不允许为空!");
return false;
}
if (txtXLGGID.Text.Trim().Equals(""))
{
ShowMessage("规格--不允许为空!");
return false;
}
if (cbxXLBZID.SelectedValue.Trim().Equals(""))
{
ShowMessage("标准--不允许为空!");
return false;
}
if (!txtXLWLID.Text.Trim().Equals(""))
{
sql.Clear();
sql.Add("select WL_TYBZ from WL where WL_WLID=:pWLID");
sql.ParamByName("pWLID").Value = txtXLWLID.Text.Trim();
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
if (ds.Tables[0].Rows[0][0].ToString().Trim().Equals("Y"))
{
ShowMessage("物料编码已停用,不允许保存!");
return false;
}
}
else
{
ShowMessage("物料编码不存在,不允许保存!");
return false;
}
}
if (!cbxGCID.SelectedValue.Trim().Equals(""))
{
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from GC where GC_GCID='{0}' and GC_TYBZ='Y'", cbxGCID.SelectedValue.Trim())))
{
ShowMessage("工厂已停用,不允许保存!");
return false;
}
}
if ((txtXLWLID.Text.Trim().Equals("") && !cbxGCID.SelectedValue.Trim().Equals(""))
|| (!txtXLWLID.Text.Trim().Equals("") && cbxGCID.SelectedValue.Trim().Equals("")))
{
ShowMessage("物料编码和工厂必须同时为空或同时维护!");
return false;
}
if (!txtXLWLID.Text.Trim().Equals(""))
{
sql.Clear();
sql.Clear();
sql.Add("select case when isnull(XSBJXHTH_BJXLXHID,' ') = ' ' then XLXLB_XLXHID else XSBJXHTH_BJXLXHID end as XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID ");
sql.Add(" from XLXLB");
sql.Add(" left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID ");
sql.Add(" where XLXLB_WLID = :pWLID ");
sql.ParamByName("pWLID").Value = txtXLWLID.Text.Trim();
DataSet dsWLID = dberp.OpenDataSet(sql);
if (dsWLID.Tables[0].Rows.Count > 0)
{
if (!dsWLID.Tables[0].Rows[0]["XLXLB_XLXHID"].ToString().Trim().Equals(cbxXLXHID.SelectedValue.Trim())
|| !dsWLID.Tables[0].Rows[0]["XLXLB_XLGGID"].ToString().Trim().Replace('*','×').Equals(txtXLGGID.Text.Trim().Replace('*','×'))
|| !dsWLID.Tables[0].Rows[0]["XLXLB_XLBZID"].ToString().Trim().Equals(cbxXLBZID.SelectedValue.Trim())
|| !dsWLID.Tables[0].Rows[0]["XLXLB_DYDJID"].ToString().Trim().Equals(cbxDYDJID.SelectedValue.Trim()))
{
ShowMessage("物料编码与型号、规格、标准、电压等级不匹配!");
return false;
}
else
{
txtInsXLXLB.Value = "N";
}
}
else
{
string sMsg = "是否需要同步插入线缆物料数据,建立物料编码与型号、规格、标准、电压等级的对应关系?";
Confirm.Register("IsQD", sMsg);
Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No;
if (Confirm.GetValue("IsQD").Trim().Equals(""))
{
Confirm.Ask("IsQD");
return false;
}
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
{
//表示进行了提示并选择了取消,直接返回或其他处理
Confirm.Clear();
txtInsXLXLB.Value = "N";
}
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
{
//表示进行了提示并选择了确认
Confirm.Clear();
txtInsXLXLB.Value = "Y";
}
}
}
else
{
txtInsXLXLB.Value = "N";
}
//引入涵盖范围的限制
sql.Clear();
sql.Add("select XLXHJGCZBML_XLXHID,XLXHJGCZBML_DYDJID,XLXHJGCZBML_XLBZID");
sql.Add(" from XLXHJGCZBML");
sql.Add(" where XLXHJGCZBML_JGCZBID=:pJGCZBID and XLXHJGCZBML_JGCZBXH<0");
sql.Add(" and (isnull(XLXHJGCZBML_XLXHID,' ')<>' ' or isnull(XLXHJGCZBML_DYDJID,' ')<>' ' or isnull(XLXHJGCZBML_XLBZID,' ')<>' ')");
sql.Add(" order by XLXHJGCZBML_JGCZBXH");
sql.ParamByName("pJGCZBID").Value = txtJGCZBID.Value.Trim();
DataSet dsXHML = dberp.OpenDataSet(sql);
bool bValid = false;//涵盖范围限制是否校验通过
if (dsXHML.Tables[0].Rows.Count == 0)
bValid = true;
for (int i = 0; i < dsXHML.Tables[0].Rows.Count; i++)
{
string tmpXLXHID = dsXHML.Tables[0].Rows[i]["XLXHJGCZBML_XLXHID"].ToString().Trim();
string tmpDYDJID = dsXHML.Tables[0].Rows[i]["XLXHJGCZBML_DYDJID"].ToString().Trim();
string tmpXLBZID = dsXHML.Tables[0].Rows[i]["XLXHJGCZBML_XLBZID"].ToString().Trim();
if (tmpXLXHID.Equals("") ||
(!tmpXLXHID.Equals("") && tmpXLXHID.Equals(cbxXLXHID.SelectedValue.Trim()))
)
{
if (tmpDYDJID.Equals("") ||
(!tmpDYDJID.Equals("") && tmpDYDJID.Equals(cbxDYDJID.SelectedValue.Trim()))
)
{
if (tmpXLBZID.Equals("") ||
(!tmpXLBZID.Equals("") && tmpXLBZID.Equals(cbxXLBZID.SelectedValue.Trim()))
)
{
bValid = true;
}
}
}
}
if (bValid == false)
{
ShowMessage("型号、标准、电压等级不在规划的尺重表涵盖范围内,请和尺重表负责人联系!");
return false;
}
if (txtXLGGID.Text.Trim().Contains("*"))
{
if (GetOption(100860020, "XLJGU007").Equals("A"))
{
string sXLGG = txtXLGGID.Text.Trim().Replace("*", "×");
ShowMessage("规格【" + txtXLGGID.Text.Trim() + "】格式有误,应为【" + sXLGG + "】!");
return false;
}
}
if (txtXLGGID.Text.Trim().Contains("×"))
{
if (GetOption(100860020, "XLJGU007").Equals("B"))
{
string sXLGG = txtXLGGID.Text.Trim().Replace("×", "*");
ShowMessage("规格【" + txtXLGGID.Text.Trim() + "】格式有误,应为【" + sXLGG + "】!");
return false;
}
}
return true;
}
protected override bool Master_BeforeSaveAction(object sender, EventArgs e)
{
if (!base.Master_BeforeSaveAction(sender, e)) return false;
if (cbxJGCZB.SelectedValue.Trim().Equals(""))
{
ShowMessage("结构尺重表--不允许为空!");
return false;
}
else
{
txtJGCZBID.Value = cbxJGCZB.SelectedValue.Trim().Split('|')[0].Trim();
txtJGCZBBBID.Value = cbxJGCZB.SelectedValue.Trim().Split('|')[1].Trim();
}
txtWHR.Text = tSession.UserName;
txtWHRID.Value = tSession.UserId;
datWHSJ.Text = CMISproConvert.ConvertTime(System.DateTime.Now);
cbxDYDJID.SelectedValue = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim();
return true;
}
protected override void AfterSave(TDatabase db, ref bool ActionIsDone)
{
TSQL SQL = new TSQL(db);
if (txtInsXLXLB.Value.Trim().Equals("Y"))
{
SQL.Clear();
SQL.Add("insert into XLXLB(XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,");
SQL.Add(" XLXLB_WLID,XLXLB_WLMC,XLXLB_WLGG,XLXLB_QYRQ,XLXLB_TYBZ,");
SQL.Add(" XLXLB_WHR,XLXLB_WHRID,XLXLB_WHSJ,XLXLB_XLYSID,XLXLB_DRBZ ");
SQL.Add(" ) ");
SQL.Add(" values( ");
SQL.Add(" :XLXLB_XLXHID,:XLXLB_XLGGID,:XLXLB_XLBZID,:XLXLB_DYDJID,");
SQL.Add(" :XLXLB_WLID,:XLXLB_WLMC,:XLXLB_WLGG,:XLXLB_QYRQ,:XLXLB_TYBZ,");
SQL.Add(" :XLXLB_WHR,:XLXLB_WHRID,:XLXLB_WHSJ,:XLXLB_XLYSID,:XLXLB_DRBZ ");
SQL.Add(" ) ");
SQL.ParamByName("XLXLB_XLXHID").Value = cbxXLXHID.SelectedValue.Trim();
SQL.ParamByName("XLXLB_XLGGID").Value = txtXLGGID.Text.Trim().Replace('*','×');
SQL.ParamByName("XLXLB_XLBZID").Value = cbxXLBZID.SelectedValue.Trim();
SQL.ParamByName("XLXLB_DYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim();
SQL.ParamByName("XLXLB_WLID").Value = txtXLWLID.Text.Trim();
SQL.ParamByName("XLXLB_WLMC").Value = txtWLMC.Text.Trim();
SQL.ParamByName("XLXLB_WLGG").Value = txtWLGG.Text.Trim();
SQL.ParamByName("XLXLB_QYRQ").Value = CMISproConvert.ConvertDate(System.DateTime.Now);
SQL.ParamByName("XLXLB_TYBZ").Value = "N";
SQL.ParamByName("XLXLB_WHR").Value = tSession.UserName; ;
SQL.ParamByName("XLXLB_WHRID").Value = tSession.UserId; ;
SQL.ParamByName("XLXLB_WHSJ").Value = CMISproConvert.ConvertTime(System.DateTime.Now);
//XLXLB_XLYSID赋值为BK|黑色;
SQL.ParamByName("XLXLB_XLYSID").Value = "BK";
//表示这个物料编码在物料基本信息中已经存在,这边只是导入过来
SQL.ParamByName("XLXLB_DRBZ").Value = "Y";
db.ExecSQL(SQL);
}
base.AfterSave(db, ref ActionIsDone);
}
protected override bool Master_AfterSaveAction(object sender, EventArgs e)
{
txtOLD_XLXHID.Value = cbxXLXHID.SelectedValue.Trim();
txtOLD_XLGGID.Value = txtXLGGID.Text.Trim();
txtOLD_XLBZID.Value = cbxXLBZID.SelectedValue.Trim();
txtOLD_DYDJID.Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim();
/*物料、工厂不为空材料用量从BOM取底层材料用量的代码先去除
if (txtOLD_CPWLID.Value != txtXLWLID.Text.Trim() || txtOLD_GCID.Value != cbxGCID.SelectedValue.Trim())
{
if (!txtXLWLID.Text.Trim().Equals(""))
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
//sql.Clear();
//sql.Add("insert into XLXSCLWLYL(XLXSCLWLYL_GCID,XLXSCLWLYL_CPWLID,XLXSCLWLYL_WLID,XLXSCLWLYL_SL,XLXSCLWLYL_WHR,XLXSCLWLYL_WHRID,XLXSCLWLYL_WHSJ) ");
//sql.Add("select CLYLJSJG_GCID,CLYLJSJG_CPWLID,CLYLJSJG_WLID,CLYLJSJG_SL,:pWHR,:pWHRID,:pWHSJ ");
//sql.Add(" from CLYLJSJG ");
//sql.Add(" left join XLXSBJCLWL on XLXSBJCLWL_WLID=CLYLJSJG_WLID ");
//sql.Add(" where CLYLJSJG_GCID=:pGCID and CLYLJSJG_CPWLID=:pCPWLID and isnull(XLXSBJCLWL_WLID,' ')<>' ' ");
//sql.Add(" and not exists(select 1 from XLXSCLWLYL where XLXSCLWLYL_GCID=CLYLJSJG_GCID and XLXSCLWLYL_CPWLID=CLYLJSJG_CPWLID and XLXSCLWLYL_WLID=CLYLJSJG_WLID) ");
//sql.ParamByName("pWHR").Value = tSession.UserName;
//sql.ParamByName("pWHRID").Value = tSession.UserId;
//sql.ParamByName("pWHSJ").Value = DateTime.Now.ToString();
//sql.ParamByName("pGCID").Value = cbxGCID.SelectedValue.Trim();
//sql.ParamByName("pCPWLID").Value = txtXLWLID.Text.Trim();
//dberp.ExecSQL(sql);
sql.Clear();
sql.Add("select CLYLJSJG_CPWLID as WLID, ");
for (int i = 1; i < 80; i++)
{
sql.Add(string.Format("sum(case when XLXSBJCLWL_BJCLID='{0}' then CLYLJSJG_SL else 0.0 end) as SL{1}, ", "BJCL" + i.ToString().PadLeft(2, '0') + "0000", i.ToString().PadLeft(2, '0')));
}
sql.Add("sum(case when XLXSBJCLWL_BJCLID='BJCL800000' then CLYLJSJG_SL else 0.0 end) as SL80 ");
sql.Add(" from CLYLJSJG,XLXSBJCLWL ");
sql.Add(" where CLYLJSJG_GCID=:pGCID ");
sql.Add(" and CLYLJSJG_CPWLID=:pCPWLID ");
sql.Add(" and CLYLJSJG_WLID=XLXSBJCLWL_WLID ");
sql.Add("group by CLYLJSJG_CPWLID");
sql.ParamByName("pGCID").Value = cbxGCID.SelectedValue.Trim();
sql.ParamByName("pCPWLID").Value = txtXLWLID.Text.Trim();
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
sql.Clear();
sql.Add("update XLXSCLQD set ");
for (int i = 1; i < 80; i++)
{
sql.Add(string.Format("XLXSCLQD_SL{0}={1},XLXSCLQD_SHL{0}=0.0,XLXSCLQD_CLJGBL{0}=1.0, ", i.ToString().PadLeft(2, '0'),
CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["SL" + i.ToString().PadLeft(2, '0')].ToString())));
}
sql.Add(string.Format("XLXSCLQD_SL80={0},XLXSCLQD_SHL80=0.0,XLXSCLQD_CLJGBL80=1.0 ", CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["SL80"].ToString())));
sql.Add("where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
sql.ParamByName("pXLXHID").Value = txtOLD_XLXHID.Value;
sql.ParamByName("pXLGGID").Value = txtOLD_XLGGID.Value;
sql.ParamByName("pXLBZID").Value = txtOLD_XLBZID.Value;
sql.ParamByName("pDYDJID").Value = txtOLD_DYDJID.Value;
dberp.ExecSQL(sql);
}
}
}
*/
txtOLD_CPWLID.Value = txtXLWLID.Text.Trim();
txtOLD_GCID.Value = cbxGCID.SelectedValue.Trim();
if ((txtOldJGCZBID.Value.Trim().Equals("") || txtOldJGCZBID.Value.Trim().Equals("|")) && !cbxJGCZB.SelectedValue.Trim().Equals(""))
{
TPageParams pageParams = new TPageParams();
pageParams.UrlPath = "CLYL_JGCZBInfo.aspx";
pageParams.AddString("BJDID", txtBJDID.Value.Trim());
pageParams.AddString("XLXHID", cbxXLXHID.SelectedValue.Trim());
pageParams.AddString("DYDJID", cbxDYDJID.SelectedValue.Trim());
if (!cbxJGCZB.SelectedValue.Trim().Equals(""))
pageParams.AddString("JGCZB", cbxJGCZB.SelectedValue.Trim());
else
pageParams.AddString("JGCZB", "");
pageParams.AddString("btnRefreshClientID", btnRefresh1.ClientID);
OpenDialog(pageParams);
}
txtOldJGCZBID.Value = cbxJGCZB.SelectedValue;
return base.Master_AfterSaveAction(sender, e);
}
protected override void AfterDelete(TDatabase db, ref bool ActionIsDone)
{
base.AfterDelete(db, ref ActionIsDone);
TSQL tmpSQL = new TSQL(db);
tmpSQL.Clear();
tmpSQL.Add("delete from XLXSCLQDWL ");
tmpSQL.Add("where not exists(select 1 from XLXSCLQD ");
tmpSQL.Add(" where XLXSCLQD_JGCZBID=XLXSCLQDWL_JGCZBID and XLXSCLQD_JGCZBBBID=XLXSCLQDWL_JGCZBBBID and XLXSCLQD_JGCZBXH=XLXSCLQDWL_JGCZBXH and XLXSCLQD_DRHH=XLXSCLQDWL_DRHH");
tmpSQL.Add(" )");
db.ExecSQL(tmpSQL);
}
protected override bool CanSubmit()
{
string workparamer = this._curWorkFlow.GetWPOption(_curWorkFlow.GetWFID("XLXSBJCLYL"), txtWPID.Value.Trim(), "结构尺重表为空不允许提交");
if (workparamer.Equals("Y"))
{
if (txtJGCZBID.Value.Trim().Equals(""))
{
ShowMessage("结构尺重表--不允许为空!");
return false;
}
else if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLJGCZBML where XLJGCZBML_JGCZBID='{0}' and XLJGCZBML_CZBLX='A'", txtJGCZBID.Value.Trim())))
{
ShowMessage("非“A|材料用量(直接维护)”类结构尺重表,请重新选择!");
return false;
}
}
string sXLXHID = cbxXLXHID.SelectedValue.Trim();
string sXLGGID = txtXLGGID.Text.Trim();
string sXLBZID = cbxXLBZID.SelectedValue.Trim();
string sDYDJID = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim();
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select XLXSCLQD_JGCZBID,XLXSCLQD_JGCZBBBID,XLXSCLQD_WPID,XLXSCLQD_WFID,");
for (int i = 1; i < 80; i++)
{
sql.Add(string.Format("XLXSCLQD_SL{0},XLXSCLQDWL_WLID{0},", i.ToString().PadLeft(2, '0')));
}
sql.Add(" XLXSCLQD_SL80,XLXSCLQDWL_WLID80 ");
sql.Add(" from XLXSCLQD ");
sql.Add(" left join XLXSCLQDWL on XLXSCLQDWL_JGCZBID=XLXSCLQD_JGCZBID and XLXSCLQDWL_JGCZBBBID=XLXSCLQD_JGCZBBBID and XLXSCLQDWL_JGCZBXH=XLXSCLQD_JGCZBXH and XLXSCLQDWL_DRHH=XLXSCLQD_DRHH");
sql.Add(" where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
sql.ParamByName("pXLXHID").Value = sXLXHID;
sql.ParamByName("pXLGGID").Value = sXLGGID;
sql.ParamByName("pXLBZID").Value = sXLBZID;
sql.ParamByName("pDYDJID").Value = sDYDJID;
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
//校验:报价材料需要细分至物料而还没细分的
sql.Clear();
sql.Add("select XLJGCZBLM_CLQDL,XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC");
sql.Add(" from XLJGCZBLM");
sql.Add(" left join XLXSBJCL on XLXSBJCL_BJCLID=XLJGCZBLM_BJCLID");
sql.Add(" where XLJGCZBLM_JGCZBID=:pJGCZBID and XLJGCZBLM_JGCZBBBID=:pJGCZBBBID and XLXSBJCL_BJHQ='2'");
sql.Add(" order by XLJGCZBLM_CLQDL");
sql.ParamByName("pJGCZBID").Value = ds.Tables[0].Rows[0]["XLXSCLQD_JGCZBID"].ToString().Trim();
sql.ParamByName("pJGCZBBBID").Value = ds.Tables[0].Rows[0]["XLXSCLQD_JGCZBBBID"].ToString().Trim();
DataSet dsLM = dberp.OpenDataSet(sql);
for (int i = 0; i < dsLM.Tables[0].Rows.Count; i++)
{
string sCLQDL = dsLM.Tables[0].Rows[i]["XLJGCZBLM_CLQDL"].ToString().Trim();
string tmpXH = sCLQDL.Replace("第", "").Replace("列", "");
double tmpSL = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSCLQD_SL" + tmpXH].ToString());
string tmpWLID = ds.Tables[0].Rows[0]["XLXSCLQDWL_WLID" + tmpXH].ToString().Trim();
if (tmpSL > 0 && tmpWLID.Equals(""))
{
ShowMessage(string.Format("{0}|{1}--已维护了材料用量,需要继续指定对应的材料物料才能提交!", dsLM.Tables[0].Rows[i]["XLXSBJCL_BJCLID"].ToString().Trim(),
dsLM.Tables[0].Rows[i]["XLXSBJCL_BJCLMC"].ToString().Trim()));
return false;
}
}
}
return base.CanSubmit();
}
protected override void Master_wfAfterActionEvent(TWorkflow Sender, TWFAction Action, bool ActionIsDone)
{
base.Master_wfAfterActionEvent(Sender, Action, ActionIsDone);
if (!ActionIsDone)
return;
string sDYDJID = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim();
TSQL sSQL = new TSQL(Sender.dbe);
sSQL.Clear();
sSQL.Add("select XLXSCLQD_WPID,XLXSCLQD_DRHH,XLXSCLQD_JGCZBXH,XLXSCLQD_JGCZBID,XLJGCZBML_CZBLX from XLXSCLQD ");
sSQL.Add("LEFT JOIN XLJGCZBML ON XLJGCZBML_JGCZBID = XLXSCLQD_JGCZBID ");
sSQL.Add(" where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
sSQL.ParamByName("pXLXHID").Value = cbxXLXHID.SelectedValue.Trim();
sSQL.ParamByName("pXLGGID").Value = txtXLGGID.Text.Trim();
sSQL.ParamByName("pXLBZID").Value = cbxXLBZID.SelectedValue.Trim();
sSQL.ParamByName("pDYDJID").Value = sDYDJID;
DataSet ds = Sender.dbe.OpenDataSet(sSQL);
string sWPID = "";
double dDRHH = 0;
double dJGCZBXH = 0;
string sJGCZBID = "";
string sJGCZBLX = "";
if (ds.Tables[0].Rows.Count > 0)
{
sWPID = ds.Tables[0].Rows[0]["XLXSCLQD_WPID"].ToString().Trim();
dDRHH = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSCLQD_DRHH"].ToString());
dJGCZBXH = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSCLQD_JGCZBXH"].ToString());
sJGCZBID = ds.Tables[0].Rows[0]["XLXSCLQD_JGCZBID"].ToString().Trim();
sJGCZBLX = ds.Tables[0].Rows[0]["XLJGCZBML_CZBLX"].ToString().Trim();
}
if (Sender.WPID.Equals("ZZZZ"))
{
if (Action == TWFAction.wfaSubmit )
{
if (sJGCZBID.Equals(""))
{
ActionIsDone = false;
throw new Exception("结构尺重表不允许为空!");
}
else if (!sJGCZBLX.Equals("A"))
{
ActionIsDone = false;
throw new Exception("非“A|材料用量(直接维护)”类结构尺重表,请重新选择!");
}
}
}
Sender.dbe.ExecSQL(string.Format("update XLXSCLQD set XLXSCLQD_WFID = '{0}', XLXSCLQD_WPID = '{1}', XLXSCLQD_WFAWAITER= '{2}',XLXSCLQD_WFHANDLER = '{3}',XLXSCLQD_WFINST = {4}, XLXSCLQD_ACTNAME = '{5}' where XLXSCLQD_XLXHID='{6}' and XLXSCLQD_XLGGID='{7}' and XLXSCLQD_XLBZID='{8}' and XLXSCLQD_DYDJID='{9}'",
Sender.WFID, Sender.WPID, Sender.Awaiter, Sender.Handler, Sender.WFInst, Sender.GetWFActionName(Action),
cbxXLXHID.SelectedValue.Trim(), txtXLGGID.Text.Trim(), cbxXLBZID.SelectedValue.Trim(), sDYDJID));
txtWPID.Value = Sender.WPID;
txtLCZT.Text = this._curWorkFlow.GetWPName(this.WorkFlowId, Sender.WPID);
//提交至结束,补齐XLXHJGCZBML和XLXHJGCZBNR的数据
if (Sender.WPID.Equals("ZZZZ") && Action == TWFAction.wfaSubmit)
{
UpdateXLXSCLQD(Sender.dbe, txtJGCZBID.Value.Trim(), txtJGCZBBBID.Value.Trim(), cbxXLXHID.SelectedValue.Trim(), txtXLGGID.Text.Trim(), cbxXLBZID.SelectedValue.Trim(), sDYDJID, tSession.UserId, tSession.UserName);
//交由“100860000|线缆销售报价单”手动触发更新
//UpdateBJDHQCLCB(Sender.dbe, cbxXLXHID.SelectedValue.Trim(), txtXLGGID.Text.Trim(), cbxXLBZID.SelectedValue.Trim(), sDYDJID, cbxCPMLID.SelectedValue.Trim(), GetOption(100860001, "BJU002"), GetOption("BJU003"));
}
//从结束撤回或调度时
if (sWPID.Trim().Equals("ZZZZ") && !Sender.WPID.Trim().Equals("ZZZZ"))
{
UpdateXLXSCLQD2(Sender.dbe, txtJGCZBID.Value.Trim(), txtJGCZBBBID.Value.Trim(), dJGCZBXH, dDRHH, cbxXLXHID.SelectedValue.Trim(), txtXLGGID.Text.Trim(), cbxXLBZID.SelectedValue.Trim(), sDYDJID);
}
}
protected override void SetComboxItems()
{
if (ControlState == TControlState.ctsBrowse)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select XLJGCZBML_JGCZBID,XLJGCZBML_JGCZBMC,XLJGCZBML_JGCZBBBID ");
sql.Add(" from XLJGCZBML ");
sql.Add(" where XLJGCZBML_JGCZBID=:pJGCZBID and XLJGCZBML_JGCZBBBID=:pJGCZBBBID ");
sql.Add(" order by XLJGCZBML_JGCZBID ");
sql.ParamByName("pJGCZBID").Value = txtJGCZBID.Value;
sql.ParamByName("pJGCZBBBID").Value = txtJGCZBBBID.Value;
DataSet ds = dberp.OpenDataSet(sql);
cbxJGCZB.ClearItems();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
string sJGCZBBBID = ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBBBID"].ToString().Trim();
cbxJGCZB.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBMC"].ToString().Trim() + "|" + sJGCZBBBID
, ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + sJGCZBBBID));
}
cbxXLXHID.ClearItems();
cbxXLXHID.Items.Add(new ListItem(cbxXLXHID.SelectedValue.Trim(), cbxXLXHID.SelectedValue.Trim()));
cbxDYDJID.ClearItems();
cbxDYDJID.Items.Add(new ListItem(cbxDYDJID.SelectedValue.Trim(), cbxDYDJID.SelectedValue.Trim()));
string sSQL = string.Format("SELECT XLXSCPML_CPMLID,XLXSCPML_CPMLMC FROM XLXSCPML where 1 = 1 and XLXSCPML_CPMLID = '{0}' ", cbxCPMLID.SelectedValue.Trim());
TComboBox.SetComboBox("DBERP", cbxCPMLID, sSQL, false);
}
else if (ControlState == TControlState.ctsCopy || ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsEdit)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select XLJGCZBML_JGCZBID,XLJGCZBML_JGCZBMC,XLJGCZBML_JGCZBBBID ");
sql.Add(" from XLJGCZBML ");
sql.Add(" where XLJGCZBML_CZBLX = 'A'");
sql.Add(" order by XLJGCZBML_JGCZBID");
DataSet ds = dberp.OpenDataSet(sql);
cbxJGCZB.ClearItems();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
string sJGCZBBBID = ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBBBID"].ToString().Trim();
cbxJGCZB.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBMC"].ToString().Trim() + "|" + sJGCZBBBID
, ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + sJGCZBBBID));
}
TComboBox.SetComboBox("DBERP", cbxXLXHID, "select XLXHB_XLXHID as ID,XLXHB_XLXHID as Name from XLXHB where isnull(XLXHB_TYBZ,'N')<>'Y' order by ID ", false);
TComboBox.SetComboBox("DBERP", cbxDYDJID, "select distinct XLDYDJB_DYDJID as ID,XLDYDJB_DYDJID as Name from XLDYDJB where isnull(XLDYDJB_TYBZ,'N')<>'Y' order by ID ", true);
TComboBox.SetComboBox("DBERP", cbxCPMLID, "SELECT XLXSCPML_CPMLID,XLXSCPML_CPMLMC FROM XLXSCPML where isnull(XLXSCPML_TYBZ,'N')<>'Y' order by XLXSCPML_CPMLID ", false);
}
base.SetComboxItems();
}
protected override string CodeClass(string ComponentID)
{
string sResult = base.CodeClass(ComponentID);
if (ComponentID.Trim().ToUpper().Equals("TXTXLWLID"))
{
sResult += "!!select XLXLB_WLID as CODE,"
+ " rtrim(rtrim(rtrim(rtrim(isnull(WL_MC,' '))||' '||rtrim(isnull(WL_GG,' ')))||' '||rtrim(isnull(WL_TZ,' ')))||' '||rtrim(isnull(WL_CL,' ')))||'|'||rtrim(isnull(WL_JLDW,' ')) as MESSAGE "
+ " from XLXLB left join WL on WL_WLID=XLXLB_WLID "
+ " left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID "
+ " where isnull(XLXLB_DYDJID,' ')=:DYDJID "
+ " and case when isnull(XSBJXHTH_BJXLXHID,' ') = ' ' then XLXLB_XLXHID else XSBJXHTH_BJXLXHID end=:XLXHID "
+ " and XLXLB_XLGGID=:XLGGID "
+ " and XLXLB_XLBZID=:XLBZID "
+ " order by CODE";
}
return sResult;
}
protected override Dictionary<string, Control> CodeSQLParam()
{
Dictionary<string, Control> htResult = base.CodeSQLParam();
htResult.Add("DYDJID", cbxDYDJID);
htResult.Add("XLXHID", cbxXLXHID);
htResult.Add("XLGGID", txtXLGGID);
htResult.Add("XLBZID", cbxXLBZID);
return htResult;
}
#endregion
#region 自定义函数
protected void InitControls()
{
TComboBox.SetComboBox("DBERP", cbxXLBZID, "select XLBZ_XLBZID,XLBZ_XLBZLXMC from XLBZ order by XLBZ_PX,XLBZ_XLBZID", false);
TComboBox.SetComboBox("DBERP", cbxGCID, "select GC_GCID,case when GC_TYBZ='Y' then rtrim(GC_GCMC)||'(停用)' else GC_GCMC end as Name from GC where 1=1 order by isnull(GC_TYBZ,'N'),GC_GCID ", true);
}
public static void UpdateXLXSCLQD(TDatabase dberp, string sJGCZBID, string sJGCZBBBID, string sXLXHID, string sXLGGID, string sXLBZID, string sDYDJID, string sWHRID, string sWHR)
{
TSQL sql = new TSQL(dberp);
sql.Add("select max(XLXSCLQD_DRHH) as maxDRHH ");
sql.Add(" from XLXSCLQD");
sql.Add(" where XLXSCLQD_JGCZBID=:pJGCZBID");
sql.Add(" and XLXSCLQD_DRHH>0");
sql.ParamByName("pJGCZBID").Value = sJGCZBID;
DataSet dsCLQD = dberp.OpenDataSet(sql);
double newDRHH = 1;
if (dsCLQD.Tables[0].Rows.Count > 0)
{
newDRHH = CMISproConvert.StrToFloat(dsCLQD.Tables[0].Rows[0][0].ToString()) + 1;
}
double dJGCZBXH = 0;
sql.Clear();
sql.Add("select XLXHJGCZBML_JGCZBXH");
sql.Add(" from XLXHJGCZBML");
sql.Add(" where XLXHJGCZBML_JGCZBID=:pJGCZBID");
sql.Add(" and XLXHJGCZBML_XLXHID=:pXLXHID");
sql.Add(" and XLXHJGCZBML_DYDJID=:pDYDJID");
sql.Add(" and XLXHJGCZBML_XLBZID=:pXLBZID");
sql.ParamByName("pJGCZBID").Value = sJGCZBID;
sql.ParamByName("pXLXHID").Value = sXLXHID;
sql.ParamByName("pDYDJID").Value = sDYDJID;
sql.ParamByName("pXLBZID").Value = sXLBZID;
DataSet dsXHML = dberp.OpenDataSet(sql);
if (dsXHML.Tables[0].Rows.Count > 0)
{
dJGCZBXH = CMISproConvert.StrToFloat(dsXHML.Tables[0].Rows[0][0].ToString());
}
else
{
//先插入XLXHJGCZBML,再赋值XLXSCLQD_JGCZBXH
sql.Clear();
sql.Add("select max(XLXHJGCZBML_JGCZBXH) from XLXHJGCZBML where XLXHJGCZBML_JGCZBID=:pJGCZBID");
sql.ParamByName("pJGCZBID").Value = sJGCZBID;
DataSet dsTmp = dberp.OpenDataSet(sql);
double newJGCZBXH = 1;
if (dsTmp.Tables[0].Rows.Count > 0)
{
newJGCZBXH = CMISproConvert.StrToFloat(dsTmp.Tables[0].Rows[0][0].ToString()) + 1;
}
sql.Clear();
sql.Add("insert into XLXHJGCZBML(XLXHJGCZBML_JGCZBID,XLXHJGCZBML_JGCZBXH,XLXHJGCZBML_XLXHID,XLXHJGCZBML_DYDJID,XLXHJGCZBML_XLBZID,XLXHJGCZBML_WHRID,XLXHJGCZBML_WHR,XLXHJGCZBML_WHSJ)");
sql.Add(" values(:pJGCZBID,:pJGCZBXH,:pXLXHID,:pDYDJID,:pXLBZID,:pWHRID,:pWHR,:pWHSJ)");
sql.ParamByName("pJGCZBID").Value = sJGCZBID;
sql.ParamByName("pJGCZBXH").Value = newJGCZBXH;
sql.ParamByName("pXLXHID").Value = sXLXHID;
sql.ParamByName("pDYDJID").Value = sDYDJID;
sql.ParamByName("pXLBZID").Value = sXLBZID;
sql.ParamByName("pWHRID").Value = sWHRID;
sql.ParamByName("pWHR").Value = sWHR;
sql.ParamByName("pWHSJ").Value = DateTime.Now;
dberp.ExecSQL(sql);
dJGCZBXH = newJGCZBXH;
}
//更新XLXSCLQDWL_DRHH,XLXSCLQDWL_JGCZBXH
sql.Clear();
sql.Add("update XLXSCLQDWL set XLXSCLQDWL_DRHH=:pDRHH,XLXSCLQDWL_JGCZBXH=:pJGCZBXH ");
sql.Add("where exists(select 1 from XLXSCLQD ");
sql.Add(" where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
sql.Add(" and XLXSCLQD_JGCZBID=XLXSCLQDWL_JGCZBID and XLXSCLQD_JGCZBBBID=XLXSCLQDWL_JGCZBBBID and XLXSCLQD_JGCZBXH=XLXSCLQDWL_JGCZBXH and XLXSCLQD_DRHH=XLXSCLQDWL_DRHH");
sql.Add(" )");
sql.ParamByName("pDRHH").Value = newDRHH;
sql.ParamByName("pJGCZBXH").Value = dJGCZBXH;
sql.ParamByName("pXLXHID").Value = sXLXHID;
sql.ParamByName("pXLGGID").Value = sXLGGID;
sql.ParamByName("pXLBZID").Value = sXLBZID;
sql.ParamByName("pDYDJID").Value = sDYDJID;
dberp.ExecSQL(sql);
//更新XLXSCLQD_DRHH,XLXSCLQD_JGCZBXH
sql.Clear();
sql.Add("update XLXSCLQD set XLXSCLQD_DRHH=:pDRHH,XLXSCLQD_JGCZBXH=:pJGCZBXH ");
sql.Add("where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
sql.ParamByName("pDRHH").Value = newDRHH;
sql.ParamByName("pJGCZBXH").Value = dJGCZBXH;
sql.ParamByName("pXLXHID").Value = sXLXHID;
sql.ParamByName("pXLGGID").Value = sXLGGID;
sql.ParamByName("pXLBZID").Value = sXLBZID;
sql.ParamByName("pDYDJID").Value = sDYDJID;
dberp.ExecSQL(sql);
//插入XLXHJGCZBNR
sql.Clear();
sql.Add("insert into XLXHJGCZBNR(XLXHJGCZBNR_JGCZBID,XLXHJGCZBNR_JGCZBBBID,XLXHJGCZBNR_JGCZBXH,XLXHJGCZBNR_DRHH,XLXHJGCZBNR_XLGGID,XLXHJGCZBNR_CLFLAG) ");
sql.Add("values(:XLXHJGCZBNR_JGCZBID,:XLXHJGCZBNR_JGCZBBBID,:XLXHJGCZBNR_JGCZBXH,:XLXHJGCZBNR_DRHH,:XLXHJGCZBNR_XLGGID,:XLXHJGCZBNR_CLFLAG)");
sql.ParamByName("XLXHJGCZBNR_JGCZBID").Value = sJGCZBID;
sql.ParamByName("XLXHJGCZBNR_JGCZBBBID").Value = sJGCZBBBID;
sql.ParamByName("XLXHJGCZBNR_JGCZBXH").Value = dJGCZBXH;
sql.ParamByName("XLXHJGCZBNR_DRHH").Value = newDRHH;
sql.ParamByName("XLXHJGCZBNR_XLGGID").Value = sXLGGID;
sql.ParamByName("XLXHJGCZBNR_CLFLAG").Value = "已插入";
dberp.ExecSQL(sql);
//更新材料重量
CLQDList.UpdatCLZL(dberp, sql, sJGCZBID, sJGCZBBBID, sXLXHID, sXLGGID, sXLBZID, sDYDJID);
}
//从结束状态撤回、调度
public static void UpdateXLXSCLQD2(TDatabase dberp, string sJGCZBID, string sJGCZBBBID, double dJGCZBXH, double dDRHH, string sXLXHID, string sXLGGID, string sXLBZID, string sDYDJID)
{
TSQL sql = new TSQL(dberp);
//先更新XLXSCLQDWL
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSCLQDWL where XLXSCLQDWL_JGCZBID='{0}' and XLXSCLQDWL_JGCZBBBID='{1}' and XLXSCLQDWL_JGCZBXH={2} and XLXSCLQDWL_DRHH={3}",
sJGCZBID, sJGCZBBBID, dJGCZBXH, dDRHH)))
{
double newDRHH = -1;
sql.Clear();
sql.Add("select min(XLXSCLQD_DRHH) as minDRHH ");
sql.Add(" from XLXSCLQD");
sql.Add(" where XLXSCLQD_JGCZBID=:pJGCZBID");
sql.Add(" and XLXSCLQD_DRHH<0");//DRHH为负,用于临时建立XLXSCLQD和XLXSCLQDWL之间的关系
sql.ParamByName("pJGCZBID").Value = sJGCZBID;
DataSet dsCLQD = dberp.OpenDataSet(sql);
if (dsCLQD.Tables[0].Rows.Count > 0)
{
newDRHH = CMISproConvert.StrToFloat(dsCLQD.Tables[0].Rows[0][0].ToString()) - 1;
}
else
newDRHH = -1;//特殊处理
sql.Clear();
sql.Add("update XLXSCLQDWL set XLXSCLQDWL_JGCZBXH=0,XLXSCLQDWL_DRHH=:pNewDRHH ");
sql.Add("where XLXSCLQDWL_JGCZBID=:pJGCZBID and XLXSCLQDWL_JGCZBBBID=:pJGCZBBBID and XLXSCLQDWL_JGCZBXH=:pJGCZBXH and XLXSCLQDWL_DRHH=:pDRHH ");
sql.ParamByName("pNewDRHH").Value = newDRHH;
sql.ParamByName("pJGCZBID").Value = sJGCZBID;
sql.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
sql.ParamByName("pJGCZBXH").Value = dJGCZBXH;
sql.ParamByName("pDRHH").Value = dDRHH;
dberp.ExecSQL(sql);
sql.Clear();
sql.Add("update XLXSCLQD set XLXSCLQD_JGCZBXH=0,XLXSCLQD_DRHH=:pDRHH ");
sql.Add("where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID ");
sql.ParamByName("pDRHH").Value = newDRHH;
sql.ParamByName("pXLXHID").Value = sXLXHID;
sql.ParamByName("pXLGGID").Value = sXLGGID;
sql.ParamByName("pXLBZID").Value = sXLBZID;
sql.ParamByName("pDYDJID").Value = sDYDJID;
dberp.ExecSQL(sql);
}
else
{
//更新XLXSCLQD_DRHH,XLXSCLQD_JGCZBXH
sql.Clear();
sql.Add("update XLXSCLQD set XLXSCLQD_DRHH=0,XLXSCLQD_JGCZBXH=0 ");
sql.Add("where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
sql.ParamByName("pXLXHID").Value = sXLXHID;
sql.ParamByName("pXLGGID").Value = sXLGGID;
sql.ParamByName("pXLBZID").Value = sXLBZID;
sql.ParamByName("pDYDJID").Value = sDYDJID;
dberp.ExecSQL(sql);
}
//删除XLXHJGCZBNR
sql.Clear();
sql.Add("delete from XLXHJGCZBNR where XLXHJGCZBNR_JGCZBID=:XLXHJGCZBNR_JGCZBID and XLXHJGCZBNR_JGCZBBBID=:XLXHJGCZBNR_JGCZBBBID");
sql.Add(" and XLXHJGCZBNR_JGCZBXH=:XLXHJGCZBNR_JGCZBXH and XLXHJGCZBNR_DRHH=:XLXHJGCZBNR_DRHH");
sql.ParamByName("XLXHJGCZBNR_JGCZBID").Value = sJGCZBID;
sql.ParamByName("XLXHJGCZBNR_JGCZBBBID").Value = sJGCZBBBID;
sql.ParamByName("XLXHJGCZBNR_JGCZBXH").Value = dJGCZBXH;
sql.ParamByName("XLXHJGCZBNR_DRHH").Value = dDRHH;
dberp.ExecSQL(sql);
//判断是否需要删除XLXHJGCZBML
if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSCLQD where XLXSCLQD_WPID='ZZZZ' and XLXSCLQD_JGCZBID='{0}' and XLXSCLQD_XLXHID='{1}' and XLXSCLQD_XLBZID='{2}' and XLXSCLQD_DYDJID='{3}'",
sJGCZBID, sXLXHID, sXLBZID, sDYDJID)))
{
sql.Clear();
sql.Add("delete from XLXHJGCZBML where XLXHJGCZBML_JGCZBID=:XLXHJGCZBML_JGCZBID and XLXHJGCZBML_JGCZBXH=:XLXHJGCZBML_JGCZBXH");
sql.Add(" and XLXHJGCZBML_XLXHID=:XLXHJGCZBML_XLXHID and XLXHJGCZBML_XLBZID=:XLXHJGCZBML_XLBZID and XLXHJGCZBML_DYDJID=:XLXHJGCZBML_DYDJID");
sql.ParamByName("XLXHJGCZBML_JGCZBID").Value = sJGCZBID;
sql.ParamByName("XLXHJGCZBML_JGCZBXH").Value = dJGCZBXH;
sql.ParamByName("XLXHJGCZBML_XLXHID").Value = sXLXHID;
sql.ParamByName("XLXHJGCZBML_XLBZID").Value = sXLBZID;
sql.ParamByName("XLXHJGCZBML_DYDJID").Value = sDYDJID;
dberp.ExecSQL(sql);
}
}
//判断模块是否存在并且是否有权限
private bool CheckModule(string sUMID)
{
int iUMID = CMISproConvert.StrToInt(sUMID);
UserRight UR = OpRightUtils.GetUserRight(tSession.UserId, iUMID);
return (DSActiveModule.IsActiveModule(iUMID) && UR.Insert);
}
#endregion
#region 控件事件
//标准标签
protected void lblXLBZID_Click(object sender, EventArgs e)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add(" select XLBZ_XLBZID from XLBZ where XLBZ_DZSC ='Y' ");
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
dtNow.Value = DateTime.Now.ToString();
TPageParams pageParams = new TPageParams();
pageParams.CallAction = TPageCallAction.pcaInsert;
pageParams.UrlPath = "../Components/N_XLJC/XLDZBZInfo.aspx";
OpenFuncModuleDialog(101421011, pageParams, btnRefresh.ClientID);
}
else
{
ShowMessage("请至“101421003|线缆标准类型”模块勾选能用于定制生产的标准类型!");
return;
}
}
protected void btnRefresh_Click(object sender, EventArgs e)
{
string oldXLBZID = cbxXLBZID.SelectedValue.Trim();
cbxXLBZID.ClearItems();
TComboBox.SetComboBox("DBERP", cbxXLBZID, "select XLBZ_XLBZID,XLBZ_XLBZLXMC from XLBZ order by XLBZ_PX,XLBZ_XLBZID", false);
cbxXLBZID.SelectedValue = oldXLBZID;
string oldJGCZB = cbxJGCZB.SelectedValue.Trim();
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select XLJGCZBML_JGCZBID,XLJGCZBML_JGCZBMC,XLJGCZBML_JGCZBBBID ");
sql.Add(" from XLJGCZBML ");
sql.Add(" where XLJGCZBML_CZBLX = 'A'");
sql.Add(" order by XLJGCZBML_JGCZBID");
DataSet ds = dberp.OpenDataSet(sql);
cbxJGCZB.ClearItems();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
string sJGCZBBBID = ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBBBID"].ToString().Trim();
cbxJGCZB.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBMC"].ToString().Trim() + "|" + sJGCZBBBID
, ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + sJGCZBBBID));
}
sql.Clear();
sql.Add(" select top 1 XLJGCZBML_JGCZBID,XLJGCZBML_JGCZBMC,XLJGCZBML_JGCZBBBID ");
sql.Add(" from XLJGCZBML ");
sql.Add(" where XLJGCZBML_CZBLX = 'A'");
sql.Add(" and XLJGCZBML_WHRID = :pWHRID and XLJGCZBML_WHSJ > :pWHSJ");
sql.Add(" order by XLJGCZBML_WHSJ desc ");
sql.ParamByName("pWHRID").Value = tSession.UserId;
sql.ParamByName("pWHSJ").Value = dtNow.Value;
ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0 && cbxJGCZB.Enabled)
{
cbxJGCZB.SelectedValue = ds.Tables[0].Rows[0]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + ds.Tables[0].Rows[0]["XLJGCZBML_JGCZBBBID"].ToString().Trim();
cbxJGCZB_SelectedIndexChanged(null, null);
}
else
cbxJGCZB.SelectedValue = oldJGCZB;
FormAreaUpdate();
}
protected void btnJGCZB_Click(object sender, EventArgs e)
{
dtNow.Value = DateTime.Now.ToString();
TPageParams tpp = new TPageParams();
tpp.UrlPath = "../Components/N_XLJC/XLJGCZBInfo.aspx";
tpp.CallAction = TPageCallAction.pcaInsert;
tpp.AddString("FromCLYL", "Y");
OpenFuncModuleDialog(101421008, tpp, btnRefresh.ClientID);
}
//结构尺重表标签
protected void lblJGCZB_Click(object sender, EventArgs e)
{
if (!cbxJGCZB.SelectedValue.Trim().Equals(""))
{
TPageParams tpp = new TPageParams();
tpp.UrlPath = "CLQDList.aspx";
tpp.CallAction = TPageCallAction.pcaBrowse;
tpp.AddString("JGCZBIDFromJGCZBML", cbxJGCZB.SelectedValue.Trim());
tpp.AddString("JGCZBBBIDFromJGCZBML", cbxJGCZB.SelectedValue.Trim().Split('|')[1].Trim());
OpenFuncModuleDialog(100860002, tpp);
}
}
protected void txtXLWLID_TextChanged(object sender, EventArgs e)
{
txtWLMC.Text = "";
txtWLGG.Text = "";
txtWLTZ.Text = "";
txtWLCL.Text = "";
txtJLDW.Text = "";
if (!txtXLWLID.Text.Trim().Equals(""))
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select WL_MC,WL_GG,WL_TZ,WL_CL,WL_JLDW from WL where WL_WLID=:pWLID");
sql.ParamByName("pWLID").Value = txtXLWLID.Text.Trim();
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
txtWLMC.Text = ds.Tables[0].Rows[0]["WL_MC"].ToString().Trim();
txtWLGG.Text = ds.Tables[0].Rows[0]["WL_GG"].ToString().Trim();
txtWLTZ.Text = ds.Tables[0].Rows[0]["WL_TZ"].ToString().Trim();
txtWLCL.Text = ds.Tables[0].Rows[0]["WL_CL"].ToString().Trim();
txtJLDW.Text = ds.Tables[0].Rows[0]["WL_JLDW"].ToString().Trim();
}
}
}
protected void cbxXLXHID_SelectedIndexChanged(object sender, EventArgs e)
{
if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy || ControlState == TControlState.ctsEdit)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select XLJGCZBML_JGCZBID,XLJGCZBML_JGCZBMC,XLJGCZBML_JGCZBBBID,XLJGCZBML_CPMLID ");
sql.Add(" from XLJGCZBML ");
sql.Add(" where XLJGCZBML_CZBLX = 'A'");
sql.Add(" and XLJGCZBML_SYXLXHID=:pSYXLXHID");
sql.Add(" order by XLJGCZBML_JGCZBID");
sql.ParamByName("pSYXLXHID").Value = cbxXLXHID.SelectedValue.Trim();
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
string sJGCZBBBID = ds.Tables[0].Rows[0]["XLJGCZBML_JGCZBBBID"].ToString().Trim();
cbxJGCZB.SelectedValue = ds.Tables[0].Rows[0]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + sJGCZBBBID;
cbxCPMLID.SelectedValue = ds.Tables[0].Rows[0]["XLJGCZBML_CPMLID"].ToString().Trim();
}
else
{
cbxJGCZB.SelectedValue = "XLXSBJ0001|" + "1.0";
sql.Clear();
sql.Add("select XLJGCZBML_CPMLID ");
sql.Add(" from XLJGCZBML ");
sql.Add(" where XLJGCZBML_JGCZBID = :pJGCZBID ");
sql.ParamByName("pJGCZBID").Value = "XLXSBJ0001";
ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
cbxCPMLID.SelectedValue = ds.Tables[0].Rows[0]["XLJGCZBML_CPMLID"].ToString().Trim();
}
else
{
cbxCPMLID.SelectedValue = "";
}
}
if (!cbxXLXHID.SelectedValue.Trim().Equals("") && !txtXLGGID.Text.Trim().Equals("") && !cbxXLBZID.SelectedValue.Trim().Equals(""))
{
sql.Clear();
sql.Add("select XLXLB_WLID,WL_MC,WL_GG,WL_TZ,WL_CL,WL_JLDW ");
sql.Add("from XLXLB left join WL on WL_WLID=XLXLB_WLID ");
sql.Add(" left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID ");
sql.Add("where isnull(XLXLB_DYDJID,' ')=:pDYDJID ");
sql.Add(" and case when isnull(XSBJXHTH_BJXLXHID,' ') = ' ' then XLXLB_XLXHID else XSBJXHTH_BJXLXHID end=:pXLXHID ");
sql.Add(" and XLXLB_XLGGID=:pXLGGID ");
sql.Add(" and XLXLB_XLBZID=:pXLBZID ");
sql.Add("order by XLXLB_WLID");
sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim();
sql.ParamByName("pXLXHID").Value = cbxXLXHID.SelectedValue.Trim();
sql.ParamByName("pXLGGID").Value = txtXLGGID.Text.Trim();
sql.ParamByName("pXLBZID").Value = cbxXLBZID.SelectedValue.Trim();
ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count == 1)
{
txtXLWLID.Text = ds.Tables[0].Rows[0]["XLXLB_WLID"].ToString().Trim();
txtWLMC.Text = ds.Tables[0].Rows[0]["WL_MC"].ToString().Trim();
txtWLGG.Text = ds.Tables[0].Rows[0]["WL_GG"].ToString().Trim();
txtWLTZ.Text = ds.Tables[0].Rows[0]["WL_TZ"].ToString().Trim();
txtWLCL.Text = ds.Tables[0].Rows[0]["WL_CL"].ToString().Trim();
txtJLDW.Text = ds.Tables[0].Rows[0]["WL_JLDW"].ToString().Trim();
}
else if (ds.Tables[0].Rows.Count > 1)
{
TPageParams param = new TPageParams();
param.UrlPath = "CLYL_XZWLList.aspx";
param.AddString("DYDJID", cbxDYDJID.SelectedValue.Trim());
param.AddString("XLXHID", cbxXLXHID.SelectedValue.Trim());
param.AddString("XLGGID", txtXLGGID.Text.Trim());
param.AddString("XLBZID", cbxXLBZID.SelectedValue.Trim());
param.AddString("WLIDCtrlID", txtXLWLID.ClientID);
param.AddString("WLMCCtrlID", txtWLMC.ClientID);
param.AddString("WLGGCtrlID", txtWLGG.ClientID);
param.AddString("WLTZCtrlID", txtWLTZ.ClientID);
param.AddString("WLCLCtrlID", txtWLCL.ClientID);
param.AddString("JLDWCtrlID", txtJLDW.ClientID);
OpenDialog(param);
}
}
}
}
protected void txtXLGGID_TextChanged(object sender, EventArgs e)
{
if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy || ControlState == TControlState.ctsEdit)
{
if (!cbxXLXHID.SelectedValue.Trim().Equals("") && !txtXLGGID.Text.Trim().Equals("") && !cbxXLBZID.SelectedValue.Trim().Equals(""))
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select XLXLB_WLID,WL_MC,WL_GG,WL_TZ,WL_CL,WL_JLDW ");
sql.Add("from XLXLB left join WL on WL_WLID=XLXLB_WLID ");
sql.Add(" left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID ");
sql.Add("where isnull(XLXLB_DYDJID,' ')=:pDYDJID ");
sql.Add(" and case when isnull(XSBJXHTH_BJXLXHID,' ') = ' ' then XLXLB_XLXHID else XSBJXHTH_BJXLXHID end =:pXLXHID ");
sql.Add(" and XLXLB_XLGGID=:pXLGGID ");
sql.Add(" and XLXLB_XLBZID=:pXLBZID ");
sql.Add("order by XLXLB_WLID");
sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim();
sql.ParamByName("pXLXHID").Value = cbxXLXHID.SelectedValue.Trim();
sql.ParamByName("pXLGGID").Value = txtXLGGID.Text.Trim();
sql.ParamByName("pXLBZID").Value = cbxXLBZID.SelectedValue.Trim();
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count == 1)
{
txtXLWLID.Text = ds.Tables[0].Rows[0]["XLXLB_WLID"].ToString().Trim();
txtWLMC.Text = ds.Tables[0].Rows[0]["WL_MC"].ToString().Trim();
txtWLGG.Text = ds.Tables[0].Rows[0]["WL_GG"].ToString().Trim();
txtWLTZ.Text = ds.Tables[0].Rows[0]["WL_TZ"].ToString().Trim();
txtWLCL.Text = ds.Tables[0].Rows[0]["WL_CL"].ToString().Trim();
txtJLDW.Text = ds.Tables[0].Rows[0]["WL_JLDW"].ToString().Trim();
}
else if (ds.Tables[0].Rows.Count > 1)
{
TPageParams param = new TPageParams();
param.UrlPath = "CLYL_XZWLList.aspx";
param.AddString("DYDJID", cbxDYDJID.SelectedValue.Trim());
param.AddString("XLXHID", cbxXLXHID.SelectedValue.Trim());
param.AddString("XLGGID", txtXLGGID.Text.Trim());
param.AddString("XLBZID", cbxXLBZID.SelectedValue.Trim());
param.AddString("WLIDCtrlID", txtXLWLID.ClientID);
param.AddString("WLMCCtrlID", txtWLMC.ClientID);
param.AddString("WLGGCtrlID", txtWLGG.ClientID);
param.AddString("WLTZCtrlID", txtWLTZ.ClientID);
param.AddString("WLCLCtrlID", txtWLCL.ClientID);
param.AddString("JLDWCtrlID", txtJLDW.ClientID);
OpenDialog(param);
}
}
}
}
protected void cbxJGCZB_SelectedIndexChanged(object sender, EventArgs e)
{
if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy || ControlState == TControlState.ctsEdit)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Clear();
sql.Add("select XLJGCZBML_CPMLID from XLJGCZBML where XLJGCZBML_JGCZBID=:pJGCZBID");
sql.ParamByName("pJGCZBID").Value = cbxJGCZB.SelectedValue.Trim().Split('|')[0].Trim();
DataSet dsCZB = dberp.OpenDataSet(sql);
if (dsCZB.Tables[0].Rows.Count > 0)
{
cbxCPMLID.SelectedValue = dsCZB.Tables[0].Rows[0][0].ToString().Trim();
}
}
}
protected void btnCLYL_Click(object sender, EventArgs e)
{
string sXLXHID = cbxXLXHID.SelectedValue.Trim();
string sXLGGID = txtXLGGID.Text.Trim();
string sXLBZID = cbxXLBZID.SelectedValue.Trim();
string sXLBZ = "";
if (!cbxXLBZID.SelectedValue.Trim().Equals(""))
sXLBZ = sXLBZID + "|" + cbxXLBZID.SelectedItem.Text.Trim();
string sDYDJID = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim();
string sCZBJLDW = "Kg/Km";
TPageParams pageParams = new TPageParams();
pageParams.UrlPath = "CLYL_CLYLList.aspx";
pageParams.AddString("XLXHID", sXLXHID);
pageParams.AddString("XLGGID", sXLGGID);
pageParams.AddString("XLBZID", sXLBZID);
pageParams.AddString("DYDJID", sDYDJID);
pageParams.AddString("XLBZ", sXLBZ);
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select XLXSCLQD_WFAWAITER,XLXSCLQD_JGCZBID,XLXSCLQD_JGCZBBBID,XLJGCZBML_CZBJLDW from XLXSCLQD ");
sql.Add(" left join XLJGCZBML on XLJGCZBML_JGCZBID=XLXSCLQD_JGCZBID");
sql.Add(" where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID ");
sql.ParamByName("pXLXHID").Value = sXLXHID;
sql.ParamByName("pXLGGID").Value = sXLGGID;
sql.ParamByName("pXLBZID").Value = sXLBZID;
sql.ParamByName("pDYDJID").Value = sDYDJID;
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
if (ds.Tables[0].Rows[0]["XLXSCLQD_WFAWAITER"].ToString().Trim().Contains("," + tSession.UserId + ","))
{
pageParams.AddString("CanE", "Y");
}
pageParams.AddString("JGCZBID", ds.Tables[0].Rows[0]["XLXSCLQD_JGCZBID"].ToString().Trim());
pageParams.AddString("JGCZBBBID", ds.Tables[0].Rows[0]["XLXSCLQD_JGCZBBBID"].ToString().Trim());
if (ds.Tables[0].Rows[0]["XLJGCZBML_CZBJLDW"].ToString().Trim().Equals("1"))
{
sCZBJLDW = "Kg/Km";
}
else if (ds.Tables[0].Rows[0]["XLJGCZBML_CZBJLDW"].ToString().Trim().Equals("2"))
{
sCZBJLDW = "Kg/m";
}
}
pageParams.AddString("CZBJLDW", sCZBJLDW);
pageParams.AddString("GCID", cbxGCID.SelectedValue.Trim());
pageParams.AddString("CPWLID", txtXLWLID.Text.Trim());
OpenDialog(pageParams);
}
#endregion
}
}