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

622 lines
28 KiB
C#

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_MODEL.Page;
using GThinking.N_MISPRO.Data;
using System.Collections.Generic;
using GThinking.N_MISPRO.Utility;
using GThinking.N_MISPRO;
namespace GThinking.N_XLXSBJ
{
public partial class CLYLZD_CBZSList : SingleGridBase
{
CLYLZD_CBZSEntity entity = new CLYLZD_CBZSEntity();
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860064;
this.UMName = "实时含税料价追溯";
this.CurMaster = Master;
this.ModuleGV = grdContentGrid;
this.CurEntity = entity;
this.PageWidth = 700;
this.PageHeight = 500;
Master.EnableQueryBtn = false;
Master.EnableAttachBtn = false;
Master.EnableNewBtn = false;
Master.EnableViewBtn = false;
Master.EnableEditBtn = false;
Master.EnableCopyBtn = false;
Master.EnableDeleteBtn = false;
base.InitPage();
ModuleGV.OnClientDblClick = "return false;";
grdContentGrid.FindColumnByFieldName("px0").Visible = false;
if (GetOption(100860000, "BJU002") != null)
{
grdContentGrid.FindColumnExByFieldName("CLCB").NumberDecimalPlace = CMISproConvert.StrToInt(GetOption(100860000, "BJU002"), 2);
txtCLCB.DecimalPlaces = CMISproConvert.StrToInt(GetOption(100860000, "BJU002"), 2);
}
if (GetOption(100860000, "BJU003") != null)
{
grdContentGrid.FindColumnByFieldName("CLSL").HeaderText = "材料用量(Kg/" + GetOption(100860000, "BJU003") + ")";
grdContentGrid.FindColumnByFieldName("CLCB").HeaderText = "材料成本(元/" + GetOption(100860000, "BJU003") + ")";
lblDW.Text = "元/" + GetOption(100860000, "BJU003") + "";
}
if (!IsPostBack)
{
Master_OnStandardQuery(null, null);
string sXLXHID = PageParam.GetRTrimString("XLXHID");
string sXLGGID = PageParam.GetRTrimString("XLGGID");
string sXLBZID = PageParam.GetRTrimString("XLBZID");
string sDYDJID = PageParam.GetRTrimString("DYDJID");
lblBJCP.Text = GetBJCP(sXLXHID, sXLGGID, GetXLBZXX(sXLBZID), sDYDJID);
}
grdContentGrid.FindColumnExByFieldName("CLJG").NumberDecimalPlace = XLBJDUtils.BJCLPriceDecimal;
}
#region 模板继承事件
protected override void Master_OnStandardQuery(object sender, EventArgs e)
{
entity.EntityTable.QuerySelSql = "select 1 from XLXSCLQD where 1<>1";
base.Master_OnStandardQuery(sender, e);
DataSet ds = GetTable();
entity.GridDataBind(grdContentGrid, tSession);
entity.GridDataBind(grdContentGrid, ds.Tables[0], ds.Tables[0].Rows.Count);
grdContentGrid.DataSource = ds;
}
protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
entity.EntityTable.QuerySelSql = "select 1 from XLXSCLQD where 1<>1";
base.moduleGV_PageIndexChanging(sender, e);
grdContentGrid.SelectedIndex = -1;
DataSet ds = GetTable();
entity.GridDataBind(grdContentGrid, tSession);
entity.GridDataBind(grdContentGrid, ds.Tables[0], ds.Tables[0].Rows.Count);
grdContentGrid.DataSource = ds;
}
protected override void moduleGV_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
}
base.moduleGV_RowDataBound(sender, e);
}
#endregion
#region 自定义事件
private DataSet GetTable()
{
string sXLXHID = PageParam.GetRTrimString("XLXHID");
string sXLGGID = PageParam.GetRTrimString("XLGGID");
string sXLBZID = PageParam.GetRTrimString("XLBZID");
string sDYDJID = PageParam.GetRTrimString("DYDJID");
Dictionary<string, string> dicCLHQ = new Dictionary<string, string>();
Dictionary<string, string> dicWLHQ = new Dictionary<string, string>();
DataSet dsWLHQ = null;
int iXSWS = string.IsNullOrEmpty(GetOption(100860000, "BJU002")) ? 5 : CMISproConvert.StrToInt(GetOption(100860000, "BJU002"));
if (iXSWS < 0)
{
iXSWS = 0;
}
else if (iXSWS > 8)
{
iXSWS = 8;
}
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL tSql = new TSQL(dberp);
tSql.Clear();
tSql.Add("select XLJGCZBLM_CLQDL,XLJGCZBLM_BJCLID,XLXSBJCL_BJHQ");
tSql.Add(" from XLJGCZBLM");
tSql.Add(" left join XLXSCLQD on XLXSCLQD_JGCZBID=XLJGCZBLM_JGCZBID and XLXSCLQD_JGCZBBBID = XLJGCZBLM_JGCZBBBID ");
tSql.Add(" left join XLXSBJCL on XLXSBJCL_BJCLID=XLJGCZBLM_BJCLID");
tSql.Add(" where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
tSql.Add(" and XLXSCLQD_WPID='ZZZZ'");
tSql.Add(" and isnull(XLJGCZBLM_CLQDL,' ')<>' ' ");
tSql.Add(" order by XLJGCZBLM_CLQDL");
tSql.ParamByName("pXLXHID").Value = sXLXHID;
tSql.ParamByName("pXLGGID").Value = sXLGGID;
tSql.ParamByName("pXLBZID").Value = sXLBZID;
tSql.ParamByName("pDYDJID").Value = sDYDJID;
DataSet dsCZB = dberp.OpenDataSet(tSql);
for (int i = 0; i < dsCZB.Tables[0].Rows.Count; i++)
{
if (dsCZB.Tables[0].Rows[i]["XLXSBJCL_BJHQ"].ToString().Trim().Equals("1"))//1|材料行情
dicCLHQ.Add(dsCZB.Tables[0].Rows[i]["XLJGCZBLM_CLQDL"].ToString().Trim(), dsCZB.Tables[0].Rows[i]["XLJGCZBLM_BJCLID"].ToString().Trim());
else if (dsCZB.Tables[0].Rows[i]["XLXSBJCL_BJHQ"].ToString().Trim().Equals("2"))//2|物料行情
dicWLHQ.Add(dsCZB.Tables[0].Rows[i]["XLJGCZBLM_CLQDL"].ToString().Trim(), dsCZB.Tables[0].Rows[i]["XLJGCZBLM_BJCLID"].ToString().Trim());
}
//存在物料行情材料
if (dicWLHQ.Keys.Count > 0)
{
tSql.Clear();
tSql.Add("select XLXSCLQD_JGCZBID,XLXSCLQD_JGCZBBBID,XLXSCLQD_JGCZBXH,XLXSCLQD_DRHH");
tSql.Add(" from XLXSCLQD ");
tSql.Add(" where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
tSql.ParamByName("pXLXHID").Value = sXLXHID;
tSql.ParamByName("pXLGGID").Value = sXLGGID;
tSql.ParamByName("pXLBZID").Value = sXLBZID;
tSql.ParamByName("pDYDJID").Value = sDYDJID;
DataSet dsCZBXL = dberp.OpenDataSet(tSql);
if (dsCZBXL.Tables[0].Rows.Count > 0)
{
string sJGCZBID = dsCZBXL.Tables[0].Rows[0]["XLXSCLQD_JGCZBID"].ToString().Trim();
string sJGCZBBBID = dsCZBXL.Tables[0].Rows[0]["XLXSCLQD_JGCZBBBID"].ToString().Trim();
string sJGCZBXH = dsCZBXL.Tables[0].Rows[0]["XLXSCLQD_JGCZBXH"].ToString().Trim();
string sDRHH = dsCZBXL.Tables[0].Rows[0]["XLXSCLQD_DRHH"].ToString().Trim();
#region 创建临时表
DateTime TimeStamp = MISproUtils.GetServerTime();
int VnewID = CMISproDataBase.GetMaxXH("DBERP", "V_XLXSCLQDWLHQ", "V_XLXSCLQDWLHQ_ID", "") + 1;
tSql.Clear();
tSql.Add(@"insert into V_XLXSCLQDWLHQ(V_XLXSCLQDWLHQ_ID,V_XLXSCLQDWLHQ_TIMESTAMP,V_XLXSCLQDWLHQ_JGCZBID,V_XLXSCLQDWLHQ_JGCZBBBID,V_XLXSCLQDWLHQ_JGCZBXH,V_XLXSCLQDWLHQ_DRHH,V_XLXSCLQDWLHQ_HSBZ)
select :pID,:pTime,XLXSCLQD_JGCZBID, XLXSCLQD_JGCZBBBID,XLXSCLQD_JGCZBXH,XLXSCLQD_DRHH,:pHSBZ from XLXSCLQD
where XLXSCLQD_JGCZBID=:pJGCZBID and XLXSCLQD_JGCZBBBID=:pJGCZBBBID and XLXSCLQD_JGCZBXH=:pJGCZBXH and XLXSCLQD_DRHH=:pDRHH
");
tSql.ParamByName("pID").Value = VnewID;
tSql.ParamByName("pTime").Value = TimeStamp;
tSql.ParamByName("pHSBZ").Value = "Y";
tSql.ParamByName("pJGCZBID").Value = sJGCZBID;
tSql.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
tSql.ParamByName("pJGCZBXH").Value = CMISproConvert.StrToFloat(sJGCZBXH);
tSql.ParamByName("pDRHH").Value = CMISproConvert.StrToFloat(sDRHH);
dberp.ExecSQL(tSql);
#endregion
#region 循环dsCLQDL更新临时表
#region 含税
string sSQL_1 = " merge into V_XLXSCLQDWLHQ tar "
+ " using ( "
+ " select XLXSCLQDWL_JGCZBID,XLXSCLQDWL_JGCZBBBID,XLXSCLQDWL_JGCZBXH,XLXSCLQDWL_DRHH, ";
string sSQL_2 = string.Empty;
string sSQL_3 = " ' ' as MJBZ from XLXSCLQDWL ";
string sSQL_4 = string.Empty;
string sSQL_5 = " where XLXSCLQDWL_JGCZBID=:pJGCZBID and XLXSCLQDWL_JGCZBBBID=:pJGCZBBBID and XLXSCLQDWL_JGCZBXH=:pJGCZBXH and XLXSCLQDWL_DRHH=:pDRHH "
+ " ) sor "
+ " on ( "
+ " XLXSCLQDWL_JGCZBID=V_XLXSCLQDWLHQ_JGCZBID and XLXSCLQDWL_JGCZBBBID=V_XLXSCLQDWLHQ_JGCZBBBID and XLXSCLQDWL_JGCZBXH=V_XLXSCLQDWLHQ_JGCZBXH and XLXSCLQDWL_DRHH=V_XLXSCLQDWLHQ_DRHH and V_XLXSCLQDWLHQ_HSBZ=:pHSBZ and V_XLXSCLQDWLHQ_ID=:pID "
+ " ) when matched then update set V_XLXSCLQDWLHQ_HSBZ=:pHSBZ";
string sSQL_6 = string.Empty;
int count = 0;//记录已经拼接的列数
foreach (string sCLQDL in dicWLHQ.Keys)
{
sSQL_2 += string.Format("XLXSCLQDWL_WLID{0},", sCLQDL.Replace("第", "").Replace("列", ""));
sSQL_2 += string.Format("isnull(c{0}.XLXSWLHQ_HSJG,0) as HSJG{0},", sCLQDL.Replace("第", "").Replace("列", ""));
sSQL_4 += " left join";
sSQL_4 += " (";
sSQL_4 += " select XLXSWLHQ_WLID,XLXSWLHQ_WSJG,XLXSWLHQ_HSJG";
sSQL_4 += " from XLXSWLHQ,";
sSQL_4 += " (";
sSQL_4 += " select XLXSWLHQ_WLID as WLID,max(XLXSWLHQ_YXQS)as maxYXQS";
sSQL_4 += " from XLXSWLHQ";
sSQL_4 += " where XLXSWLHQ_JGBID=' '";
sSQL_4 += " and XLXSWLHQ_YXQS<=:pRQ and (XLXSWLHQ_YXQZ>=:pRQ or XLXSWLHQ_YXQZ is null)";
sSQL_4 += " group by XLXSWLHQ_WLID";
sSQL_4 += string.Format(") a{0} ", sCLQDL.Replace("第", "").Replace("列", ""));
sSQL_4 += " where XLXSWLHQ_JGBID=' ' and XLXSWLHQ_WLID=WLID and XLXSWLHQ_YXQS=maxYXQS";
sSQL_4 += string.Format(") c{0} on c{0}.XLXSWLHQ_WLID=XLXSCLQDWL_WLID{0} ", sCLQDL.Replace("第", "").Replace("列", ""));
sSQL_6 += string.Format(" ,V_XLXSCLQDWLHQ_JG{0} = HSJG{0} ", sCLQDL.Replace("第", "").Replace("列", ""));
count++;
if (count % 25 == 0 || count == dicWLHQ.Count)
{
tSql.Clear();
tSql.Add(sSQL_1);
tSql.Add(sSQL_2);
tSql.Add(sSQL_3);
tSql.Add(sSQL_4);
tSql.Add(sSQL_5);
tSql.Add(sSQL_6);
tSql.ParamByName("pID").Value = VnewID;
tSql.ParamByName("pHSBZ").Value = "Y";
tSql.ParamByName("pRQ").Value = DateTime.Now.Date;
tSql.ParamByName("pJGCZBID").Value = sJGCZBID;
tSql.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
tSql.ParamByName("pJGCZBXH").Value = CMISproConvert.StrToFloat(sJGCZBXH);
tSql.ParamByName("pDRHH").Value = CMISproConvert.StrToFloat(sDRHH);
dberp.ExecSQL(tSql);
sSQL_2 = string.Empty;
sSQL_4 = string.Empty;
sSQL_6 = string.Empty;
}
}
#endregion
#endregion
#region 查询物料行情
tSql.Clear();
tSql.Add("select ");
bool bFirst = true;
foreach (string sCLQDL in dicWLHQ.Keys)
{
if (!bFirst)
tSql.Add(",");
bFirst = false;
tSql.Add(string.Format("XLXSCLQDWL_WLID{0},isnull(a.V_XLXSCLQDWLHQ_JG{0},0) as HSJG{0}", sCLQDL.Replace("第", "").Replace("列", "")));
}
tSql.Add(" from XLXSCLQDWL");
tSql.Add(" left join");
tSql.Add(" V_XLXSCLQDWLHQ a on ");
tSql.Add(" XLXSCLQDWL_JGCZBID=a.V_XLXSCLQDWLHQ_JGCZBID and XLXSCLQDWL_JGCZBBBID=a.V_XLXSCLQDWLHQ_JGCZBBBID and XLXSCLQDWL_JGCZBXH=a.V_XLXSCLQDWLHQ_JGCZBXH and XLXSCLQDWL_DRHH=a.V_XLXSCLQDWLHQ_DRHH and a.V_XLXSCLQDWLHQ_HSBZ='Y' and a.V_XLXSCLQDWLHQ_ID =:pID ");
tSql.Add(" where XLXSCLQDWL_JGCZBID=:pJGCZBID and XLXSCLQDWL_JGCZBBBID=:pJGCZBBBID and XLXSCLQDWL_JGCZBXH=:pJGCZBXH and XLXSCLQDWL_DRHH=:pDRHH");
tSql.ParamByName("pID").Value = VnewID;
tSql.ParamByName("pRQ").Value = DateTime.Now.Date;
tSql.ParamByName("pJGCZBID").Value = sJGCZBID;
tSql.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
tSql.ParamByName("pJGCZBXH").Value = sJGCZBXH;
tSql.ParamByName("pDRHH").Value = sDRHH;
dsWLHQ = dberp.OpenDataSet(tSql);
#endregion
//删除临时表
tSql.Clear();
tSql.Add("delete from V_XLXSCLQDWLHQ where V_XLXSCLQDWLHQ_ID=:pID ");
tSql.ParamByName("pID").Value = VnewID;
dberp.ExecSQL(tSql);
}
}
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add("select XLJGCZBLM_BJCLID,bjcl.XLXSBJCL_BJCLMC,");
//物料信息
if (dicCLHQ.Count != 0 || dicWLHQ.Count != 0)
{
SQL.Add(" case ");
foreach (string sCLQDL in dicCLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then ' ' ", sCLQDL));
}
foreach (string sCLQDL in dicWLHQ.Keys)
{
if (dsWLHQ != null && dsWLHQ.Tables[0].Rows.Count > 0)
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then '{1}' ", sCLQDL, GetWLXX(dsWLHQ.Tables[0].Rows[0]["XLXSCLQDWL_WLID" + sCLQDL.Replace("第", "").Replace("列", "")].ToString().Trim())));
else
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then ' ' ", sCLQDL));
}
SQL.Add(" end as WLXX, ");
}
else
{
SQL.Add(" ' ' as WLXX, ");
}
//材料价格
if (dicCLHQ.Count != 0 || dicWLHQ.Count != 0)
{
SQL.Add(" case ");
foreach (string sCLQDL in dicCLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then isnull(HSJG,0.0) ", sCLQDL));
}
foreach (string sCLQDL in dicWLHQ.Keys)
{
if (dsWLHQ != null && dsWLHQ.Tables[0].Rows.Count > 0)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then {1} ", sCLQDL, dsWLHQ.Tables[0].Rows[0]["HSJG" + sCLQDL.Replace("第", "").Replace("列", "")].ToString().Trim()));
}
else
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then 0.0 ", sCLQDL));
}
}
SQL.Add(" end as CLJG, ");
}
else
{
SQL.Add(" 0 as CLJG, ");
}
//材料数量
if (dicCLHQ.Count != 0 || dicWLHQ.Count != 0)
{
SQL.Add(" case ");
foreach (string sCLQDL in dicCLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then XLXSCLQD_SL{1} ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", "")));
}
foreach (string sCLQDL in dicWLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then XLXSCLQD_SL{1} ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", "")));
}
SQL.Add(" end as CLSL, ");
}
else
{
SQL.Add(" 0 as CLSL, ");
}
if (dicCLHQ.Count != 0 || dicWLHQ.Count != 0)
{
SQL.Add(" case ");
foreach (string sCLQDL in dicCLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then ( case when XLXSCLQD_SL{1} = 0 then 0 else 1 end) ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", "")));
}
foreach (string sCLQDL in dicWLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then ( case when XLXSCLQD_SL{1} = 0 then 0 else 1 end) ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", "")));
}
SQL.Add(" end as px0, ");
}
else
{
SQL.Add(" 0 as px0, ");
}
//损耗率
if (dicCLHQ.Count != 0 || dicWLHQ.Count != 0)
{
SQL.Add(" case ");
foreach (string sCLQDL in dicCLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then XLXSCLQD_SHL{1} ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", "")));
}
foreach (string sCLQDL in dicWLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then XLXSCLQD_SHL{1} ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", "")));
}
SQL.Add(" end as SHL, ");
}
else
{
SQL.Add(" 0 as SHL, ");
}
//材料用量比例
if (dicCLHQ.Count != 0 || dicWLHQ.Count != 0)
{
SQL.Add(" case ");
foreach (string sCLQDL in dicCLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then XLXSCLQD_CLJGBL{1} ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", "")));
}
foreach (string sCLQDL in dicWLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then XLXSCLQD_CLJGBL{1} ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", "")));
}
SQL.Add(" end as CLJGBL, ");
}
else
{
SQL.Add(" 0 as CLJGBL, ");
}
//材料成本
if (dicCLHQ.Count != 0 || dicWLHQ.Count != 0)
{
SQL.Add(" case ");
foreach (string sCLQDL in dicCLHQ.Keys)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then isnull(HSJG,0.0)*XLXSCLQD_SL{1}*(1+XLXSCLQD_SHL{1}/100)*XLXSCLQD_CLJGBL{1} ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", "")));
}
foreach (string sCLQDL in dicWLHQ.Keys)
{
if (dsWLHQ != null && dsWLHQ.Tables[0].Rows.Count > 0)
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then {2}*XLXSCLQD_SL{1}*(1+XLXSCLQD_SHL{1}/100)*XLXSCLQD_CLJGBL{1} ", sCLQDL, sCLQDL.Replace("第", "").Replace("列", ""),
dsWLHQ.Tables[0].Rows[0]["HSJG" + sCLQDL.Replace("第", "").Replace("列", "")].ToString().Trim()));
}
else
{
SQL.Add(string.Format(" when XLJGCZBLM_CLQDL='{0}' then 0.0 ", sCLQDL));
}
}
SQL.Add(" end as CLCB ");
}
else
{
SQL.Add(" 0 as CLCB ");
}
SQL.Add(" from XLXSCLQD, ");
SQL.Add(" XLJGCZBLM");
SQL.Add(" left join XLXSBJCL bjcl on bjcl.XLXSBJCL_BJCLID=XLJGCZBLM_BJCLID");
//SQL.Add(" left join XLJGCZBML on XLJGCZBML_JGCZBID = XLJGCZBLM_JGCZBID ");
SQL.Add(" left join ");
SQL.Add(" (");
SQL.Add(XLBJD_CLHQTZ.GetBJRHQSql().ToString());
SQL.Add(" ) curbjdhq on curbjdhq.XLXSBJCL_BJCLID=bjcl.XLXSBJCL_BJCLID ");
SQL.Add("where XLJGCZBLM_JGCZBID=XLXSCLQD_JGCZBID and XLXSCLQD_JGCZBBBID = XLJGCZBLM_JGCZBBBID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' ");
SQL.Add(" and XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID ");
SQL.Add(" and XLXSCLQD_WPID='ZZZZ'");
SQL.Add(" order by px0 desc,XLJGCZBLM_CLQDL,XLJGCZBLM_BJCLID ");
SQL.ParamByName("pBJRQ").Value = DateTime.Now.Date;
SQL.ParamByName("pXLXHID").Value = sXLXHID;
SQL.ParamByName("pXLGGID").Value = sXLGGID;
SQL.ParamByName("pXLBZID").Value = sXLBZID;
SQL.ParamByName("pDYDJID").Value = sDYDJID;
DataSet dsResult = dberp.OpenDataSet(SQL);
txtCLCB.Value = 0;
for (int i = 0; i < dsResult.Tables[0].Rows.Count; i++)
{
txtCLCB.Value += CMISproConvert.StrToFloat(dsResult.Tables[0].Rows[i]["CLCB"].ToString());
}
return dsResult;
}
private string GetWLXX(string sWLID)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("select WL_MC,WL_GG from WL where WL_WLID=:pWLID");
sql.ParamByName("pWLID").Value = sWLID.Trim();
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
return sWLID.Trim() + "|" + ds.Tables[0].Rows[0]["WL_MC"].ToString().Trim() + "|" + ds.Tables[0].Rows[0]["WL_GG"].ToString().Trim();
else
return sWLID.Trim();
}
private string GetBJCP(string sXLXHID, string sXLGGID, string sXLBZID, string sDYDJID)
{
string sRetValue = "";
if (!sXLXHID.Equals(""))
{
sRetValue = sRetValue + "&nbsp;&nbsp;" + sXLXHID;
}
if (!sXLGGID.Equals(""))
{
sRetValue = sRetValue + "&nbsp;&nbsp;" + sXLGGID;
}
if (!sXLBZID.Equals(""))
{
sRetValue = sRetValue + "&nbsp;&nbsp;" + sXLBZID;
}
if (!sDYDJID.Equals(""))
{
sRetValue = sRetValue + "&nbsp;&nbsp;" + sDYDJID;
}
sRetValue = sRetValue.Trim();
return sRetValue;
}
private string GetXLBZXX(string sXLBZID)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add(" select rtrim(XLBZ_XLBZID)||'|'||rtrim(XLBZ_XLBZLXMC) as XLBZ_XLBZID from XLBZ where XLBZ_XLBZID= :pXLBZID ");
SQL.ParamByName("pXLBZID").Value = sXLBZID;
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
return ds.Tables[0].Rows[0][0].ToString().Trim();
}
else
return "";
}
private string strPadRight(string s, int x)
{
string str = s;
if (str.Split('.').Length == 2)
{
str = str.Split('.')[0] + "." + str.Split('.')[1].PadRight(x, '0');
}
else
{
string tmp = "0";
if (x > 0)
{
tmp = tmp.PadRight(x, '0');
str = str + "." + tmp;
}
}
return str;
}
#endregion
#region 按钮事件
protected void btnRefreshCLHQTZ_Click(object sender, EventArgs e)
{
int iIndex = grdContentGrid.SelectedIndex;
moduleGV_PageIndexChanging(null, null);
grdContentGrid.SelectedIndex = iIndex;
}
protected void lblBJCP_Click(object sender, EventArgs e)
{
string sJGCZBIDFromJGCZBML = "";
string sJGCZBBBIDFromJGCZBML = "";
string sXLXHID = PageParam.GetRTrimString("XLXHID");
string sXLGGID = PageParam.GetRTrimString("XLGGID");
string sXLBZID = PageParam.GetRTrimString("XLBZID");
string sDYDJID = PageParam.GetRTrimString("DYDJID");
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Clear();
sql.Add(" select XLXSCLQD_JGCZBID as JGCZBID, XLXSCLQD_JGCZBBBID as JGCZBBBID");
sql.Add(" from XLXSCLQD where 1=1 and XLXSCLQD_WPID ='ZZZZ' ");
sql.Add(" and XLXSCLQD_XLXHID = :pXLXHID ");
sql.Add(" and XLXSCLQD_XLGGID = :pXLGGID ");
sql.Add(" and XLXSCLQD_XLBZID = :pXLBZID ");
sql.Add(" and XLXSCLQD_DYDJID = :pDYDJID ");
sql.ParamByName("pXLXHID").Value = sXLXHID;
sql.ParamByName("pXLGGID").Value = sXLGGID;
sql.ParamByName("pXLBZID").Value = sXLBZID;
sql.ParamByName("pDYDJID").Value = sDYDJID.Equals("") ? " " : sDYDJID;
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
sJGCZBBBIDFromJGCZBML = ds.Tables[0].Rows[0]["JGCZBBBID"].ToString().Trim();
sJGCZBIDFromJGCZBML = ds.Tables[0].Rows[0]["JGCZBID"].ToString().Trim() + "|" + sJGCZBBBIDFromJGCZBML;
}
else
{
ShowMessage("未查询到结构尺重表信息,请在100860014|线缆销售报价材料用量模块检查该记录是否补充完整并流转结束!");
return;
}
TPageParams tpp = new TPageParams();
tpp.UrlPath = "CLQDList.aspx";
tpp.CallAction = TPageCallAction.pcaBrowse;
tpp.AddString("JGCZBIDFromJGCZBML", sJGCZBIDFromJGCZBML);
tpp.AddString("JGCZBBBIDFromJGCZBML", sJGCZBBBIDFromJGCZBML);
OpenFuncModuleDialog(100860002, tpp);
}
#endregion
}
}