1571 lines
81 KiB
C#
1571 lines
81 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.Utility;
|
||
using GThinking.N_MISPRO;
|
||
using GThinking.N_CONTROL;
|
||
using GThinking.N_MISPRO.Data;
|
||
using GThinking.N_WORKFLOW;
|
||
using System.Text;
|
||
using System.Collections.Generic;
|
||
using GThinking.N_MISPRO.MISPROAS;
|
||
|
||
namespace GThinking.N_XLXSBJ
|
||
{
|
||
public partial class XLJGB_BJZSDCList : SingleGridBase
|
||
{
|
||
XLJGB_BJZSDC entity = new XLJGB_BJZSDC();
|
||
XLJGB_BJZSDC_M queryentity = new XLJGB_BJZSDC_M();
|
||
Dictionary<string, string> dicJGBTJYZ = new Dictionary<string, string>();
|
||
//报价材料
|
||
Dictionary<string, string> dicBJCL = new Dictionary<string, string>();
|
||
Dictionary<string, string> dicBJCL_Visible = new Dictionary<string, string>();
|
||
Dictionary<string, string> dicBJCL_WL = new Dictionary<string, string>();
|
||
Dictionary<string, string> dicCZBLMCL = new Dictionary<string, string>();
|
||
|
||
//材料物料
|
||
Dictionary<string, string> dicCLWL = new Dictionary<string, string>();
|
||
|
||
Dictionary<string, double> dicCLHQ = new Dictionary<string, double>();
|
||
Dictionary<string, double> dicWLHQ = new Dictionary<string, double>();
|
||
|
||
|
||
#region Page_Load
|
||
protected void Page_Load(object sender, EventArgs e)
|
||
{
|
||
this.UMID = 100860001;
|
||
this.UMName = "表价追溯导出";
|
||
this.CurMaster = Master;
|
||
this.ModuleGV = grdXLJGBMX;
|
||
this.CurEntity = entity;
|
||
this.CurQueryEntity = queryentity;
|
||
this.PageHeight = 600;
|
||
this.PageWidth = 1000;
|
||
this.sQueryURLTarget = "XLJGB_BJZSDCQuery.aspx";
|
||
base.DataKeyNames = new string[] { "XLXSJGBMX_XLXHID", "XLXSJGBMX_XLGGID", "XLXSJGBMX_XLBZID", "XLXSJGBMX_DYDJID", "XLXSJGBMX_XH" };
|
||
|
||
|
||
this.Master.EnableNewBtn = false;
|
||
this.Master.EnableCopyBtn = false;
|
||
this.Master.EnableViewBtn = false;
|
||
this.Master.EnableEditBtn = false;
|
||
this.Master.EnableDeleteBtn = false;
|
||
this.Master.EnableAttachBtn = false;
|
||
|
||
if (!IsPostBack)
|
||
{
|
||
CurQueryEntity.FieldByName("ZSBJZC").Value = "True";
|
||
CurQueryEntity.FieldByName("HSBZ").Value = "True";
|
||
CurQueryEntity.FieldByName("XSCLCB").Value = "True";
|
||
CurQueryEntity.FieldByName("ZSJJZC").Value = "True";
|
||
}
|
||
|
||
base.InitPage();
|
||
|
||
this.ModuleGV.OnClientDblClick = "return false;";
|
||
|
||
if (!IsPostBack)
|
||
{
|
||
Master_OnStandardQuery(null, null);
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
#region 模板继承事件
|
||
|
||
protected override void Master_OnStandardQuery(object sender, EventArgs e)
|
||
{
|
||
base.InitEntityByCondition();
|
||
entity.EntityTable.QuerySelSql = "select top 1 XLXSJGBMX_JGBID from XLXSJGBMX where 1<>1";
|
||
base.Master_OnStandardQuery(sender, e);
|
||
DataSet ds = GetSQLDataSet();
|
||
entity.GridDataBind(grdXLJGBMX, tSession);
|
||
entity.GridDataBind(grdXLJGBMX, ds.Tables[0], ds.Tables[0].Rows.Count);
|
||
grdXLJGBMX.DataSource = ds;
|
||
}
|
||
|
||
protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e)
|
||
{
|
||
base.InitEntityByCondition();
|
||
entity.EntityTable.QuerySelSql = "select top 1 XLXSJGBMX_JGBID from XLXSJGBMX where 1<>1";
|
||
grdXLJGBMX.SelectedIndex = -1;
|
||
base.moduleGV_PageIndexChanging(sender, e);
|
||
DataSet ds = GetSQLDataSet();
|
||
entity.GridDataBind(grdXLJGBMX, tSession);
|
||
entity.GridDataBind(grdXLJGBMX, ds.Tables[0], ds.Tables[0].Rows.Count);
|
||
grdXLJGBMX.DataSource = ds;
|
||
}
|
||
|
||
protected override void ReportRecordSetAdd()
|
||
{
|
||
DataSet ds = GetSQLDataSet();
|
||
AddUserReportDataSet("CX_XLXSJGBMX_BJZS", ds);
|
||
base.ReportRecordSetAdd();
|
||
|
||
}
|
||
|
||
protected override void ReportDataSetAdd()
|
||
{
|
||
DataSet ds = GetSQLDataSet();
|
||
for (int i = 0; i < grdXLJGBMX.Columns.Count; i++)
|
||
{
|
||
string sDataField = ((System.Web.UI.WebControls.BoundField)(grdXLJGBMX.Columns[i])).DataField.ToString().Trim();
|
||
string sHeaderText = grdXLJGBMX.Columns[i].HeaderText;
|
||
AddUserReportField("CX_XLXSJGBMX_BJZS", sDataField, sHeaderText, "S");
|
||
}
|
||
|
||
base.ReportDataSetAdd();
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 自定义事件
|
||
|
||
private DataSet GetSQLDataSet()
|
||
{
|
||
Mac.MacLog.TraceFormat(String.Format("GetSQLDataSet-Begin"));
|
||
bool bXSCLCB = false;
|
||
if (CurQueryEntity.FieldByName("XSCLCB").Value == "True")
|
||
{
|
||
bXSCLCB = true;
|
||
}
|
||
while (grdXLJGBMX.Columns.Count > 5)
|
||
{
|
||
grdXLJGBMX.Columns.RemoveAt(grdXLJGBMX.Columns.Count - 1);
|
||
}
|
||
DataTable dt1 = new DataTable();
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
Dictionary<string, string> DicJGYWLID = new Dictionary<string, string>();
|
||
#region 物料加工原物料ID
|
||
TSQL sql = new TSQL(dberp);
|
||
sql.Clear();
|
||
sql.Add(" select XLXSBJCLWL_WLID,XLXSBJCLWL_JGYWLID ");
|
||
sql.Add(" from XLXSBJCLWL ");
|
||
sql.Add(" where XLXSBJCLWL_JGYWLID <> '-' ");
|
||
DataSet dsWLJGYWL = dberp.OpenDataSet(sql);
|
||
if (dsWLJGYWL.Tables[0].Rows.Count > 0)
|
||
{
|
||
foreach (DataRow trow in dsWLJGYWL.Tables[0].Rows)
|
||
{
|
||
string sWLID = trow["XLXSBJCLWL_WLID"].ToString().Trim();
|
||
string sJGYWLID = trow["XLXSBJCLWL_JGYWLID"].ToString().Trim();
|
||
if (!DicJGYWLID.ContainsKey(sWLID))
|
||
{
|
||
DicJGYWLID.Add(sWLID, sJGYWLID);
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
TSQL SQL = new TSQL(dberp);
|
||
StringBuilder strSQL = new StringBuilder();
|
||
strSQL.AppendLine(" select XLXSJGBMX_JGBID,XLXSJGBMX_XH, XLXSJGBMX_XLXHID, XLXSJGBMX_XLGGID,XLXSJGBMX_XLBZID, rtrim(XLXSJGBMX_XLBZID)||'|'||rtrim(XLBZ_XLBZLXMC) as XLBZ,XLXSJGBMX_DYDJID,");
|
||
dt1.Columns.Add("XLXSJGBMX_JGBID", typeof(string));
|
||
dt1.Columns.Add("XLXSJGBMX_XH", typeof(double));
|
||
dt1.Columns.Add("XLXSJGBMX_XLXHID", typeof(string));
|
||
dt1.Columns.Add("XLXSJGBMX_XLGGID", typeof(string));
|
||
dt1.Columns.Add("XLXSJGBMX_XLBZID", typeof(string));
|
||
dt1.Columns.Add("XLBZ", typeof(string));
|
||
dt1.Columns.Add("XLXSJGBMX_DYDJID", typeof(string));
|
||
dt1.Columns.Add("XLXSJGBMX_JJ", typeof(double));
|
||
|
||
bool bHSBZ = CurQueryEntity.FieldByName("HSBZ").Value.ToString().Trim().ToUpper().Equals("TRUE");
|
||
if (bHSBZ)
|
||
{
|
||
strSQL.AppendLine(" XLXSJGBMX_HSJJ as XLXSJGBMX_JJ");
|
||
AddColumn("XLXSJGBMX_JJ", "含税基价", CMISproConvert.StrToInt(GetOption("BJU002"), 5), 80);
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSJGBMX_WSJJ as XLXSJGBMX_JJ");
|
||
AddColumn("XLXSJGBMX_JJ", "无税基价", CMISproConvert.StrToInt(GetOption("BJU002"), 5), 80);
|
||
}
|
||
|
||
bool bZSBJZC = CurQueryEntity.FieldByName("ZSBJZC").Value.ToString().Trim().ToUpper().Equals("TRUE");
|
||
if (bZSBJZC)
|
||
{
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ01 as TZYZ_JZ01 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ02 as TZYZ_JZ02 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ03 as TZYZ_JZ03 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ04 as TZYZ_JZ04 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ05 as TZYZ_JZ05 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ06 as TZYZ_JZ06 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ07 as TZYZ_JZ07 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ08 as TZYZ_JZ08 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ09 as TZYZ_JZ09 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ10 as TZYZ_JZ10 ");
|
||
dt1.Columns.Add("TZYZ_JZ01", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ02", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ03", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ04", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ05", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ06", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ07", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ08", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ09", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ10", typeof(double));
|
||
SQL.Clear();
|
||
SQL.Add("select XLXSTZYZ_YZID, XLXSTZYZ_YZMC,XLXSTZYZ_JJFS ");
|
||
SQL.Add(" from XLXSTZYZ");
|
||
SQL.Add(" where XLXSTZYZ_MXBH = 'JZJ' ");
|
||
if (!PageParam.GetRTrimString("JGBID").Equals(""))
|
||
{
|
||
SQL.Add(" and exists(select 1 from XLXSJGBYZ where XLXSJGBYZ_JGBID=:pJGBID and XLXSJGBYZ_YZID=XLXSTZYZ_YZID)");//必须是当前价格表所用的调价因子
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID");
|
||
}
|
||
SQL.Add(" order by XLXSTZYZ_XSXH,XLXSTZYZ_YZID ");
|
||
|
||
DataSet ds = dberp.OpenDataSet(SQL);
|
||
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
|
||
{
|
||
string sJJFS = ds.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim();
|
||
string sJJ = sJJFS.Equals("JJ") ? "(元)" : (sJJFS.Equals("") ? "" : "(%)");
|
||
string sYZMC = ds.Tables[0].Rows[i]["XLXSTZYZ_YZMC"].ToString().Trim() + sJJ;
|
||
string sYZID = "TZYZ_" + ds.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim();
|
||
int iDecimal = XLBJDUtils.JGBYZZDecimal;
|
||
if (sJJFS.Equals("JJ"))
|
||
iDecimal = CMISproConvert.StrToInt(GetOption("BJU002"), 2);
|
||
AddColumn(sYZID, sYZMC, iDecimal, 80);
|
||
}
|
||
}
|
||
dt1.Columns.Add("XLXSJGBMX_BJ", typeof(double));
|
||
|
||
if (bHSBZ)
|
||
{
|
||
strSQL.AppendLine(" ,XLXSJGBMX_HSBJ as XLXSJGBMX_BJ ");
|
||
AddColumn("XLXSJGBMX_BJ", "含税表价", CMISproConvert.StrToInt(GetOption(100860000, "BJU002"), 5), 80);
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" ,XLXSJGBMX_WSBJ as XLXSJGBMX_BJ ");
|
||
AddColumn("XLXSJGBMX_BJ", "无税表价", CMISproConvert.StrToInt(GetOption(100860000, "BJU002"), 5), 80);
|
||
}
|
||
|
||
|
||
bool bZSJJZC = CurQueryEntity.FieldByName("ZSJJZC").Value.ToString().Trim().ToUpper().Equals("TRUE");
|
||
if (bZSJJZC)
|
||
{
|
||
strSQL.AppendLine(" ,'" + GetOption("BJU003") + "' as JLDW ");
|
||
dt1.Columns.Add("JLDW", typeof(string));
|
||
AddColumn("JLDW", "计量单位", 80);
|
||
|
||
strSQL.AppendLine(" ,XLXSCLQD_CLZL,XLXSCLQD_JGCZBID ");
|
||
dt1.Columns.Add("XLXSCLQD_CLZL", typeof(double));
|
||
AddColumn("XLXSCLQD_CLZL", "材料重量", 3, 80);
|
||
|
||
int iDecimal = CMISproConvert.StrToInt(GetOption("BJU002"), 2);
|
||
|
||
//构建物料信息字典
|
||
if (dicCLWL.Count <= 0)
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add(" select WL_WLID,WL_MC,WL_GG ");
|
||
SQL.Add(" from XLXSBJCLWL ");
|
||
SQL.Add(" left join WL on XLXSBJCLWL_WLID = WL_WLID ");
|
||
SQL.Add(" where 1=1 ");
|
||
SQL.Add(" order by XLXSBJCLWL_WLID ");
|
||
DataSet dsWL = dberp.OpenDataSet(SQL);
|
||
foreach (DataRow wlRow in dsWL.Tables[0].Rows)
|
||
{
|
||
string sWLID = wlRow["WL_WLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
string sWLXX = wlRow["WL_MC"].ToString().Trim() + " " + wlRow["WL_GG"].ToString().Trim();
|
||
if (!dicCLWL.ContainsKey(sWLID))
|
||
{
|
||
dicCLWL.Add(sWLID, sWLXX);
|
||
}
|
||
}
|
||
}
|
||
dicCLHQ.Clear();
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSCLHQ_BJCLID,XLXSCLHQ_HSJG,XLXSCLHQ_WSJG from XLXSCLHQ where XLXSCLHQ_JGBID=:pJGBID ");
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID");
|
||
DataSet dsCLHQ = dberp.OpenDataSet(SQL);
|
||
foreach (DataRow clhqRow in dsCLHQ.Tables[0].Rows)
|
||
{
|
||
string sBJCLID = clhqRow["XLXSCLHQ_BJCLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
double dHSJG = CMISproConvert.StrToFloat(clhqRow["XLXSCLHQ_HSJG"].ToString().Trim());
|
||
double dWSJG = CMISproConvert.StrToFloat(clhqRow["XLXSCLHQ_WSJG"].ToString().Trim());
|
||
if (!dicCLHQ.ContainsKey(sBJCLID))
|
||
{
|
||
if (bHSBZ)
|
||
dicCLHQ.Add(sBJCLID, dHSJG);
|
||
else
|
||
dicCLHQ.Add(sBJCLID, dWSJG);
|
||
}
|
||
}
|
||
dicWLHQ.Clear();
|
||
if (XLJGB_CLJGTZList.NeedJGBJJFP())
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSWLHQ_WLID,XLXSWLHQ_HSJG,XLXSWLHQ_WSJG from XLXSWLHQ where XLXSWLHQ_JGBID=:pJGBID ");
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID");
|
||
DataSet dsWLHQ = dberp.OpenDataSet(SQL);
|
||
foreach (DataRow wlhqRow in dsWLHQ.Tables[0].Rows)
|
||
{
|
||
string sWLID = wlhqRow["XLXSWLHQ_WLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
double dHSJG = CMISproConvert.StrToFloat(wlhqRow["XLXSWLHQ_HSJG"].ToString().Trim());
|
||
double dWSJG = CMISproConvert.StrToFloat(wlhqRow["XLXSWLHQ_WSJG"].ToString().Trim());
|
||
if (!dicWLHQ.ContainsKey(sWLID))
|
||
{
|
||
if (bHSBZ)
|
||
dicWLHQ.Add(sWLID, dHSJG);
|
||
else
|
||
dicWLHQ.Add(sWLID, dWSJG);
|
||
}
|
||
}
|
||
}
|
||
if (dicWLHQ.Count <= 0)
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSWLHQ_WLID,XLXSWLHQ_HSJG,XLXSWLHQ_WSJG from XLXSWLHQ where 1=1 ");
|
||
SQL.Add(" and XLXSWLHQ_JGBID=' '");
|
||
SQL.Add(" and XLXSWLHQ_YXQS<=:pRQ and (XLXSWLHQ_YXQZ>=:pRQ or XLXSWLHQ_YXQZ is null)");
|
||
SQL.ParamByName("pRQ").Value = DateTime.Now.ToShortDateString();
|
||
DataSet dsWLHQ = dberp.OpenDataSet(SQL);
|
||
foreach (DataRow wlhqRow in dsWLHQ.Tables[0].Rows)
|
||
{
|
||
string sWLID = wlhqRow["XLXSWLHQ_WLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
double dHSJG = CMISproConvert.StrToFloat(wlhqRow["XLXSWLHQ_HSJG"].ToString().Trim());
|
||
double dWSJG = CMISproConvert.StrToFloat(wlhqRow["XLXSWLHQ_WSJG"].ToString().Trim());
|
||
if (!dicWLHQ.ContainsKey(sWLID))
|
||
{
|
||
if (bHSBZ)
|
||
dicWLHQ.Add(sWLID, dHSJG);
|
||
else
|
||
dicWLHQ.Add(sWLID, dWSJG);
|
||
}
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("if (dicBJCL_WL.Count <= 0)"));
|
||
//构建包含物料的报价材料字典
|
||
if (dicBJCL_WL.Count <= 0)
|
||
{
|
||
Mac.MacLog.TraceFormat(String.Format("dicBJCL_WL-begin"));
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSCLQD_JGCZBID,XLJGCZBLM_CLQDL,XLJGCZBLM_BJCLID, isnull(XLXSBJCL_BJHQ,'1') as BJHQ,XLXSBJCL_BJCLMC, ");
|
||
SQL.Add(" case when isnull(XLXSBJCL_BJHQ,'1')='1' then isnull(XLJGCZBLM_BJCLID,' ') ");
|
||
for (int i = 1; i <= 80; i++)
|
||
{
|
||
SQL.Add(string.Format(" when isnull(XLXSBJCL_BJHQ,'1')='2' and isnull(XLJGCZBLM_CLQDL,' ')='第{0}列' then isnull(XLXSCLQDWL_WLID{0},' ') ", i.ToString().PadLeft(2, '0').Trim()));
|
||
}
|
||
SQL.Add(" else ' ' end as CLID ");
|
||
SQL.Add(" from XLXSJGBMX ");
|
||
SQL.Add(" left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSJGBMX_XLXHID and XLXSCLQD_XLGGID=XLXSJGBMX_XLGGID and XLXSCLQD_XLBZID=XLXSJGBMX_XLBZID and XLXSCLQD_DYDJID=isnull(XLXSJGBMX_DYDJID,' ') ");
|
||
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(" left join XLJGCZBLM on XLJGCZBLM_JGCZBID=XLXSCLQD_JGCZBID and XLJGCZBLM_JGCZBBBID=XLXSCLQD_JGCZBBBID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' ");
|
||
SQL.Add(" left join XLXSBJCL on XLXSBJCL_BJCLID=XLJGCZBLM_BJCLID ");
|
||
SQL.Add(" where XLXSJGBMX_JGBID = :pJGBID ");
|
||
SQL.Add(" order by XLXSJGBMX_XH ");
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID").Trim();
|
||
DataSet dsBJCL_WL = dberp.OpenDataSet(SQL);
|
||
Mac.MacLog.TraceFormat(String.Format("dsBJCL_WL.Tables[0].Rows:" + dsBJCL_WL.Tables[0].Rows.Count.ToString().Trim()));
|
||
foreach (DataRow bjclRow in dsBJCL_WL.Tables[0].Rows)
|
||
{
|
||
string sJGCZBID = bjclRow["XLXSCLQD_JGCZBID"].ToString().Trim();
|
||
string sCLQDL = bjclRow["XLJGCZBLM_CLQDL"].ToString().Trim();
|
||
sCLQDL = sCLQDL.Replace("第", "").Replace("列", "");
|
||
string sKey = sJGCZBID + "|" + sCLQDL;
|
||
string sCLID = bjclRow["CLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
string sBJHQ = bjclRow["BJHQ"].ToString().Trim();
|
||
|
||
string sBJCLID = bjclRow["XLJGCZBLM_BJCLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
string sBJCLMC = bjclRow["XLXSBJCL_BJCLMC"].ToString().Trim();
|
||
|
||
if (!sBJCLID.Equals(""))
|
||
{
|
||
if (!dicBJCL.ContainsKey(sBJCLID))
|
||
{
|
||
dicBJCL.Add(sBJCLID, sBJCLMC);
|
||
}
|
||
|
||
if (sBJHQ.Equals("2"))
|
||
{
|
||
sCLID = sBJCLID + "|" + sCLID;
|
||
if (!dicBJCL_WL.ContainsKey(sBJCLID))
|
||
{
|
||
dicBJCL_WL.Add(sBJCLID, sCLID);
|
||
}
|
||
}
|
||
|
||
if (!dicCZBLMCL.ContainsKey(sKey))
|
||
{
|
||
dicCZBLMCL.Add(sKey, sCLID);
|
||
}
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("dicBJCL_WL-end"));
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("dicCZBLMCL.Count:" + dicCZBLMCL.Count.ToString().Trim()));
|
||
//报价材料是否显示
|
||
dicBJCL_Visible.Clear();
|
||
//构建报价材料字典和查询列
|
||
Mac.MacLog.TraceFormat(String.Format(" if (dicBJCL.Count :" + dicBJCL.Keys.Count.ToString().Trim()));
|
||
if (dicBJCL.Count > 0)
|
||
{
|
||
foreach (string sBJCLID in dicBJCL.Keys)
|
||
{
|
||
dicBJCL_Visible.Add(sBJCLID, "N");
|
||
string sBJCLMC = dicBJCL[sBJCLID];
|
||
strSQL.AppendLine(" ,0 as " + sBJCLID + "_SL ");
|
||
dt1.Columns.Add(sBJCLID + "_SL", typeof(string));
|
||
AddColumn(sBJCLID + "_SL", sBJCLMC, 6, 60);
|
||
if (dicBJCL_WL.ContainsKey(sBJCLID))
|
||
{
|
||
strSQL.AppendLine(" ,' ' as " + sBJCLID + "_WLXX ");
|
||
strSQL.AppendLine(" ,0 as " + sBJCLID + "_WLJG ");
|
||
strSQL.AppendLine(" ,0 as " + sBJCLID + "_WLCB ");
|
||
dt1.Columns.Add(sBJCLID + "_WLXX", typeof(string));
|
||
dt1.Columns.Add(sBJCLID + "_WLJG", typeof(double));
|
||
dt1.Columns.Add(sBJCLID + "_WLCB", typeof(double));
|
||
AddColumn(sBJCLID + "_WLXX", "材料物料", 80);
|
||
AddColumn(sBJCLID + "_WLJG", "物料价格(元/Kg)", XLBJDUtils.BJCLPriceDecimal, 60);
|
||
if (bXSCLCB)
|
||
AddColumn(sBJCLID + "_WLCB", "物料成本", iDecimal, 60);
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" ,' ' as " + sBJCLID + "_CLJG ");
|
||
strSQL.AppendLine(" ,0 as " + sBJCLID + "_CLCB ");
|
||
dt1.Columns.Add(sBJCLID + "_CLJG", typeof(double));
|
||
dt1.Columns.Add(sBJCLID + "_CLCB", typeof(double));
|
||
AddColumn(sBJCLID + "_CLJG", "材料价格(元/Kg)", XLBJDUtils.BJCLPriceDecimal, 60);
|
||
if (bXSCLCB)
|
||
AddColumn(sBJCLID + "_CLCB", "材料成本", iDecimal, 60);
|
||
}
|
||
}
|
||
}
|
||
|
||
for (int i = 1; i <= 80; i++)
|
||
{
|
||
strSQL.AppendLine(string.Format(" ,XLXSCLQD_SL{0} * (1+XLXSCLQD_SHL{0}/100) * XLXSCLQD_CLJGBL{0} as SL{0} ", i.ToString().PadLeft(2, '0').Trim()));
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format(" if (dicBJCL.Count > 0)-end"));
|
||
//栏目超限省略符号
|
||
strSQL.AppendLine(" ,'...' as LMCXSLF ");
|
||
dt1.Columns.Add("LMCXSLF", typeof(string));
|
||
|
||
strSQL.AppendLine(" from XLXSJGBMX ");
|
||
strSQL.AppendLine(" left join XLBZ on XLBZ_XLBZID = XLXSJGBMX_XLBZID ");
|
||
if (bZSBJZC)
|
||
{
|
||
strSQL.AppendLine(" left join XLXSJGBYZZ0 on XLXSJGBYZZ0_JGBID=XLXSJGBMX_JGBID and XLXSJGBYZZ0_XH=XLXSJGBMX_XH ");
|
||
}
|
||
if (bZSJJZC)
|
||
{
|
||
strSQL.AppendLine(" left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSJGBMX_XLXHID and XLXSCLQD_XLGGID=XLXSJGBMX_XLGGID and XLXSCLQD_XLBZID=XLXSJGBMX_XLBZID and XLXSCLQD_DYDJID=isnull(XLXSJGBMX_DYDJID,' ') ");
|
||
}
|
||
strSQL.AppendLine(" where 1=1 and XLXSJGBMX_JGBID = :pJGBID and XLXSJGBMX_SYXH = 0 ");
|
||
strSQL.AppendLine(" order by XLXSJGBMX_XH ");
|
||
SQL.Clear();
|
||
SQL.Add(strSQL.ToString().Trim());
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID").Trim();
|
||
Mac.MacLog.TraceFormat(String.Format("dberp.OpenDataSet(SQL)"));
|
||
DataSet dsQry = dberp.OpenDataSet(SQL);
|
||
Mac.MacLog.TraceFormat(String.Format("dsQry.Tables[0].Rows.Count" + dsQry.Tables[0].Rows.Count.ToString().Trim()));
|
||
int icount = 0;
|
||
if (dsQry.Tables[0].Rows.Count > 0)
|
||
{
|
||
foreach (DataRow towQry in dsQry.Tables[0].Rows)
|
||
{
|
||
DataRow dtrow = dt1.NewRow();
|
||
dtrow["XLXSJGBMX_JGBID"] = towQry["XLXSJGBMX_JGBID"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_XH"] = CMISproConvert.StrToFloat(towQry["XLXSJGBMX_XH"].ToString().Trim());
|
||
dtrow["XLXSJGBMX_XLXHID"] = towQry["XLXSJGBMX_XLXHID"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_XLGGID"] = towQry["XLXSJGBMX_XLGGID"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_XLBZID"] = towQry["XLXSJGBMX_XLBZID"].ToString().Trim();
|
||
dtrow["XLBZ"] = towQry["XLBZ"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_DYDJID"] = towQry["XLXSJGBMX_DYDJID"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_JJ"] = CMISproConvert.StrToFloat(towQry["XLXSJGBMX_JJ"].ToString().Trim());
|
||
dtrow["LMCXSLF"] = towQry["LMCXSLF"].ToString().Trim();
|
||
if (bZSBJZC)
|
||
{
|
||
dtrow["TZYZ_JZ01"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ01"].ToString().Trim());
|
||
dtrow["TZYZ_JZ02"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ02"].ToString().Trim());
|
||
dtrow["TZYZ_JZ03"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ03"].ToString().Trim());
|
||
dtrow["TZYZ_JZ04"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ04"].ToString().Trim());
|
||
dtrow["TZYZ_JZ05"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ05"].ToString().Trim());
|
||
dtrow["TZYZ_JZ06"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ06"].ToString().Trim());
|
||
dtrow["TZYZ_JZ07"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ07"].ToString().Trim());
|
||
dtrow["TZYZ_JZ08"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ08"].ToString().Trim());
|
||
dtrow["TZYZ_JZ09"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ09"].ToString().Trim());
|
||
dtrow["TZYZ_JZ10"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ10"].ToString().Trim());
|
||
}
|
||
|
||
dtrow["XLXSJGBMX_BJ"] = CMISproConvert.StrToFloat(towQry["XLXSJGBMX_BJ"].ToString().Trim());
|
||
|
||
if (bZSJJZC)
|
||
{
|
||
dtrow["JLDW"] = towQry["JLDW"].ToString().Trim();
|
||
dtrow["XLXSCLQD_CLZL"] = CMISproConvert.StrToFloat(towQry["XLXSCLQD_CLZL"].ToString().Trim());
|
||
string sJGCZBID = towQry["XLXSCLQD_JGCZBID"].ToString().Trim();
|
||
for (int i = 1; i <= 80; i++)
|
||
{
|
||
icount++;
|
||
string sLMH = i.ToString().PadLeft(2, '0').Trim();
|
||
string sKey = sJGCZBID + "|" + sLMH;
|
||
if (dicCZBLMCL.ContainsKey(sKey))
|
||
{
|
||
string sCLID = dicCZBLMCL[sKey];
|
||
double dYL = CMISproConvert.StrToFloat(towQry["SL" + sLMH].ToString().Trim());
|
||
if (sCLID.Contains("|"))
|
||
{
|
||
string sWLID = sCLID.Split('|')[1];
|
||
if (DicJGYWLID.ContainsKey(sWLID))
|
||
sWLID = DicJGYWLID[sWLID];
|
||
|
||
sCLID = sCLID.Split('|')[0];
|
||
if (dicBJCL.ContainsKey(sCLID))
|
||
{
|
||
double dJG = 0;
|
||
if (dicWLHQ.ContainsKey(sWLID))
|
||
dJG = dicWLHQ[sWLID];
|
||
if (dYL != 0)
|
||
dicBJCL_Visible[sCLID] = "Y";
|
||
dtrow[sCLID + "_SL"] = CMISproConvert.StrToFloat(dtrow[sCLID + "_SL"].ToString(), 0.0) + dYL;//相同栏目的用量要合并
|
||
if (dicCLWL.ContainsKey(sWLID))
|
||
{
|
||
if (dtrow[sCLID + "_WLXX"].ToString().Trim().Equals(""))
|
||
{
|
||
dtrow[sCLID + "_WLXX"] = sWLID + "|" + dicCLWL[sWLID];
|
||
}
|
||
else
|
||
{
|
||
if (!dtrow[sCLID + "_WLXX"].ToString().Trim().Contains(sWLID + "|" + dicCLWL[sWLID]))
|
||
{
|
||
dtrow[sCLID + "_WLXX"] = dtrow[sCLID + "_WLXX"].ToString().Trim() + "...";
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (dtrow[sCLID + "_WLXX"].ToString().Trim().Equals(""))
|
||
{
|
||
dtrow[sCLID + "_WLXX"] = sWLID;
|
||
}
|
||
else
|
||
{
|
||
if (!dtrow[sCLID + "_WLXX"].ToString().Trim().Contains(sWLID) || (sWLID.Equals("") && !dtrow[sCLID + "_WLXX"].ToString().Trim().Equals("")))
|
||
{
|
||
dtrow[sCLID + "_WLXX"] = dtrow[sCLID + "_WLXX"].ToString().Trim() + "...";
|
||
}
|
||
}
|
||
}
|
||
if (dtrow[sCLID + "_WLXX"].ToString().EndsWith("..."))
|
||
dtrow[sCLID + "_WLJG"] = 0;
|
||
else
|
||
dtrow[sCLID + "_WLJG"] = dJG;
|
||
|
||
dtrow[sCLID + "_WLCB"] = CMISproConvert.StrToFloat(dtrow[sCLID + "_WLCB"].ToString(), 0.0) + dJG * dYL;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (dicBJCL.ContainsKey(sCLID))
|
||
{
|
||
double dJG = 0;
|
||
if (dicCLHQ.ContainsKey(sCLID))
|
||
dJG = dicCLHQ[sCLID];
|
||
if (dYL != 0)
|
||
dicBJCL_Visible[sCLID] = "Y";
|
||
dtrow[sCLID + "_SL"] = CMISproConvert.StrToFloat(dtrow[sCLID + "_SL"].ToString(), 0.0) + dYL;//相同栏目的用量要合并
|
||
dtrow[sCLID + "_CLJG"] = dJG;
|
||
dtrow[sCLID + "_CLCB"] = dJG * CMISproConvert.StrToFloat(dtrow[sCLID + "_SL"].ToString(), 0.0);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
dt1.Rows.Add(dtrow);
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("dicBJCL_Visible-begin:" + icount.ToString().Trim()));
|
||
foreach (string sBJCLID in dicBJCL_Visible.Keys)
|
||
{
|
||
if (dicBJCL_Visible[sBJCLID].Equals("N"))//不显示的栏目需要删除,否则记录导出时会因为最大栏目数256的限制导致栏目导出不全
|
||
{
|
||
grdXLJGBMX.Columns.Remove(grdXLJGBMX.FindColumnByFieldName(sBJCLID + "_SL"));
|
||
if (dt1.Columns.Contains(sBJCLID + "_SL"))
|
||
dt1.Columns.Remove(sBJCLID + "_SL");
|
||
|
||
if (dicBJCL_WL.ContainsKey(sBJCLID))
|
||
{
|
||
grdXLJGBMX.Columns.Remove(grdXLJGBMX.FindColumnByFieldName(sBJCLID + "_WLXX"));
|
||
grdXLJGBMX.Columns.Remove(grdXLJGBMX.FindColumnByFieldName(sBJCLID + "_WLJG"));
|
||
grdXLJGBMX.Columns.Remove(grdXLJGBMX.FindColumnByFieldName(sBJCLID + "_WLCB"));
|
||
if (dt1.Columns.Contains(sBJCLID + "_WLXX"))
|
||
dt1.Columns.Remove(sBJCLID + "_WLXX");
|
||
if (dt1.Columns.Contains(sBJCLID + "_WLJG"))
|
||
dt1.Columns.Remove(sBJCLID + "_WLJG");
|
||
if (dt1.Columns.Contains(sBJCLID + "_WLCB"))
|
||
dt1.Columns.Remove(sBJCLID + "_WLCB");
|
||
}
|
||
else
|
||
{
|
||
grdXLJGBMX.Columns.Remove(grdXLJGBMX.FindColumnByFieldName(sBJCLID + "_CLJG"));
|
||
grdXLJGBMX.Columns.Remove(grdXLJGBMX.FindColumnByFieldName(sBJCLID + "_CLCB"));
|
||
if (dt1.Columns.Contains(sBJCLID + "_CLJG"))
|
||
dt1.Columns.Remove(sBJCLID + "_CLJG");
|
||
if (dt1.Columns.Contains(sBJCLID + "_CLCB"))
|
||
dt1.Columns.Remove(sBJCLID + "_CLCB");
|
||
}
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("dicBJCL_Visible-end"));
|
||
|
||
if (grdXLJGBMX.Columns.Count > 450)
|
||
{
|
||
for (int i = grdXLJGBMX.Columns.Count - 1; i >= 449; i--)
|
||
{
|
||
grdXLJGBMX.Columns.Remove(grdXLJGBMX.Columns[i]);
|
||
}
|
||
AddColumn("LMCXSLF", "...", 60, HorizontalAlign.Center);
|
||
}
|
||
|
||
DataSet dsResult = new DataSet();
|
||
dsResult.Tables.Add(dt1);
|
||
Mac.MacLog.TraceFormat(String.Format("GetSQLDataSet-end"));
|
||
return dsResult;
|
||
}
|
||
|
||
private void InitDic()
|
||
{
|
||
if (dicJGBTJYZ.Count > 0)
|
||
return;
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSTZYZ_YZID,XLXSTZYZ_YZMC from XLXSTZYZ where XLXSTZYZ_MXBH = 'JZJ' ");
|
||
DataSet ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
foreach (DataRow trow in ds.Tables[0].Rows)
|
||
{
|
||
dicJGBTJYZ.Add(trow["XLXSTZYZ_YZID"].ToString().Trim(), trow["XLXSTZYZ_YZMC"].ToString().Trim());
|
||
}
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 控件事件
|
||
|
||
protected void btnRefresh_Click(object sender, EventArgs e)
|
||
{
|
||
int tmpIndex = grdXLJGBMX.SelectedIndex;
|
||
|
||
moduleGV_PageIndexChanging(null, null);
|
||
grdXLJGBMX.SelectedIndex = tmpIndex;
|
||
}
|
||
|
||
#region 导出数据
|
||
|
||
protected void btnSJDC_Click(object sender, EventArgs e)
|
||
{
|
||
Mac.MacLog.TraceFormat(String.Format("btnSJDC_Click-Begin"));
|
||
base.InitEntityByCondition();
|
||
bool bXSCLCB = false;
|
||
if (CurQueryEntity.FieldByName("XSCLCB").Value == "True")
|
||
{
|
||
bXSCLCB = true;
|
||
}
|
||
string sFileName = "";
|
||
sFileName = PageParam.GetRTrimString("JGBID") + "价格表表价";
|
||
string m_tmpFilePath = FileService.CombineTempPath(sFileName + ".xlsx");
|
||
Dictionary<string, string> dicColumns = new Dictionary<string, string>();
|
||
DataTable dt1 = new DataTable();
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
Dictionary<string, string> DicJGYWLID = new Dictionary<string, string>();
|
||
#region 物料加工原物料ID
|
||
TSQL sql = new TSQL(dberp);
|
||
sql.Clear();
|
||
sql.Add(" select XLXSBJCLWL_WLID,XLXSBJCLWL_JGYWLID ");
|
||
sql.Add(" from XLXSBJCLWL ");
|
||
sql.Add(" where XLXSBJCLWL_JGYWLID <> '-' ");
|
||
DataSet dsWLJGYWL = dberp.OpenDataSet(sql);
|
||
if (dsWLJGYWL.Tables[0].Rows.Count > 0)
|
||
{
|
||
foreach (DataRow trow in dsWLJGYWL.Tables[0].Rows)
|
||
{
|
||
string sWLID = trow["XLXSBJCLWL_WLID"].ToString().Trim();
|
||
string sJGYWLID = trow["XLXSBJCLWL_JGYWLID"].ToString().Trim();
|
||
if (!DicJGYWLID.ContainsKey(sWLID))
|
||
{
|
||
DicJGYWLID.Add(sWLID, sJGYWLID);
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
TSQL SQL = new TSQL(dberp);
|
||
StringBuilder strSQL = new StringBuilder();
|
||
strSQL.AppendLine(" select XLXSJGBMX_JGBID,XLXSJGBMX_XH, XLXSJGBMX_XLXHID, XLXSJGBMX_XLGGID,XLXSJGBMX_XLBZID, rtrim(XLXSJGBMX_XLBZID)||'|'||rtrim(XLBZ_XLBZLXMC) as XLBZ,XLXSJGBMX_DYDJID,");
|
||
dt1.Columns.Add("XLXSJGBMX_JGBID", typeof(string));
|
||
dt1.Columns.Add("XLXSJGBMX_XH", typeof(double));
|
||
dicColumns.Add("XLXSJGBMX_XH", "序号");
|
||
dt1.Columns.Add("XLXSJGBMX_XLXHID", typeof(string));
|
||
dicColumns.Add("XLXSJGBMX_XLXHID", "型号");
|
||
dt1.Columns.Add("XLXSJGBMX_XLGGID", typeof(string));
|
||
dicColumns.Add("XLXSJGBMX_XLGGID", "规格");
|
||
dt1.Columns.Add("XLXSJGBMX_XLBZID", typeof(string));
|
||
dt1.Columns.Add("XLBZ", typeof(string));
|
||
dicColumns.Add("XLBZ", "标准");
|
||
dt1.Columns.Add("XLXSJGBMX_DYDJID", typeof(string));
|
||
dicColumns.Add("XLXSJGBMX_DYDJID", "电压等级");
|
||
dt1.Columns.Add("XLXSJGBMX_JJ", typeof(double));
|
||
|
||
bool bHSBZ = CurQueryEntity.FieldByName("HSBZ").Value.ToString().Trim().ToUpper().Equals("TRUE");
|
||
if (bHSBZ)
|
||
{
|
||
dicColumns.Add("XLXSJGBMX_JJ", "含税基价");
|
||
strSQL.AppendLine(" XLXSJGBMX_HSJJ as XLXSJGBMX_JJ");
|
||
}
|
||
else
|
||
{
|
||
dicColumns.Add("XLXSJGBMX_JJ", "无税基价");
|
||
strSQL.AppendLine(" XLXSJGBMX_WSJJ as XLXSJGBMX_JJ");
|
||
}
|
||
|
||
bool bZSBJZC = CurQueryEntity.FieldByName("ZSBJZC").Value.ToString().Trim().ToUpper().Equals("TRUE");
|
||
if (bZSBJZC)
|
||
{
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ01 as TZYZ_JZ01 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ02 as TZYZ_JZ02 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ03 as TZYZ_JZ03 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ04 as TZYZ_JZ04 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ05 as TZYZ_JZ05 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ06 as TZYZ_JZ06 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ07 as TZYZ_JZ07 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ08 as TZYZ_JZ08 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ09 as TZYZ_JZ09 ");
|
||
strSQL.AppendLine(",XLXSJGBYZZ0_YZZ10 as TZYZ_JZ10 ");
|
||
dt1.Columns.Add("TZYZ_JZ01", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ02", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ03", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ04", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ05", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ06", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ07", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ08", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ09", typeof(double));
|
||
dt1.Columns.Add("TZYZ_JZ10", typeof(double));
|
||
SQL.Clear();
|
||
SQL.Add("select XLXSTZYZ_YZID, XLXSTZYZ_YZMC,XLXSTZYZ_JJFS ");
|
||
SQL.Add(" from XLXSTZYZ");
|
||
SQL.Add(" where XLXSTZYZ_MXBH = 'JZJ' ");
|
||
if (!PageParam.GetRTrimString("JGBID").Equals(""))
|
||
{
|
||
SQL.Add(" and exists(select 1 from XLXSJGBYZ where XLXSJGBYZ_JGBID=:pJGBID and XLXSJGBYZ_YZID=XLXSTZYZ_YZID)");//必须是当前价格表所用的调价因子
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID");
|
||
}
|
||
SQL.Add(" order by XLXSTZYZ_XSXH,XLXSTZYZ_YZID ");
|
||
|
||
DataSet ds = dberp.OpenDataSet(SQL);
|
||
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
|
||
{
|
||
string sJJFS = ds.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim();
|
||
string sJJ = sJJFS.Equals("JJ") ? "(元)" : (sJJFS.Equals("") ? "" : "(%)");
|
||
string sYZMC = ds.Tables[0].Rows[i]["XLXSTZYZ_YZMC"].ToString().Trim() + sJJ;
|
||
string sYZID = "TZYZ_" + ds.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim();
|
||
int iDecimal = XLBJDUtils.JGBYZZDecimal;
|
||
dicColumns.Add(sYZID, sYZMC);
|
||
}
|
||
}
|
||
dt1.Columns.Add("XLXSJGBMX_BJ", typeof(double));
|
||
|
||
if (bHSBZ)
|
||
{
|
||
dicColumns.Add("XLXSJGBMX_BJ", "含税表价");
|
||
strSQL.AppendLine(" ,XLXSJGBMX_HSBJ as XLXSJGBMX_BJ ");
|
||
}
|
||
else
|
||
{
|
||
dicColumns.Add("XLXSJGBMX_BJ", "无税表价");
|
||
strSQL.AppendLine(" ,XLXSJGBMX_WSBJ as XLXSJGBMX_BJ ");
|
||
}
|
||
|
||
|
||
bool bZSJJZC = CurQueryEntity.FieldByName("ZSJJZC").Value.ToString().Trim().ToUpper().Equals("TRUE");
|
||
if (bZSJJZC)
|
||
{
|
||
strSQL.AppendLine(" ,'" + GetOption("BJU003") + "' as JLDW ");
|
||
dt1.Columns.Add("JLDW", typeof(string));
|
||
dicColumns.Add("JLDW", "计量单位");
|
||
|
||
strSQL.AppendLine(" ,XLXSCLQD_CLZL,XLXSCLQD_JGCZBID ");
|
||
dt1.Columns.Add("XLXSCLQD_CLZL", typeof(double));
|
||
dicColumns.Add("XLXSCLQD_CLZL", "材料重量");
|
||
|
||
int iDecimal = CMISproConvert.StrToInt(GetOption("BJU002"), 2);
|
||
|
||
//构建物料信息字典
|
||
if (dicCLWL.Count <= 0)
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add(" select WL_WLID,WL_MC,WL_GG ");
|
||
SQL.Add(" from XLXSBJCLWL ");
|
||
SQL.Add(" left join WL on XLXSBJCLWL_WLID = WL_WLID ");
|
||
SQL.Add(" where 1=1 ");
|
||
SQL.Add(" order by XLXSBJCLWL_WLID ");
|
||
DataSet dsWL = dberp.OpenDataSet(SQL);
|
||
foreach (DataRow wlRow in dsWL.Tables[0].Rows)
|
||
{
|
||
string sWLID = wlRow["WL_WLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
string sWLXX = wlRow["WL_MC"].ToString().Trim() + " " + wlRow["WL_GG"].ToString().Trim();
|
||
if (!dicCLWL.ContainsKey(sWLID))
|
||
{
|
||
dicCLWL.Add(sWLID, sWLXX);
|
||
}
|
||
}
|
||
}
|
||
dicCLHQ.Clear();
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSCLHQ_BJCLID,XLXSCLHQ_HSJG,XLXSCLHQ_WSJG from XLXSCLHQ where XLXSCLHQ_JGBID=:pJGBID ");
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID");
|
||
DataSet dsCLHQ = dberp.OpenDataSet(SQL);
|
||
foreach (DataRow clhqRow in dsCLHQ.Tables[0].Rows)
|
||
{
|
||
string sBJCLID = clhqRow["XLXSCLHQ_BJCLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
double dHSJG = CMISproConvert.StrToFloat(clhqRow["XLXSCLHQ_HSJG"].ToString().Trim());
|
||
double dWSJG = CMISproConvert.StrToFloat(clhqRow["XLXSCLHQ_WSJG"].ToString().Trim());
|
||
if (!dicCLHQ.ContainsKey(sBJCLID))
|
||
{
|
||
if (bHSBZ)
|
||
dicCLHQ.Add(sBJCLID, dHSJG);
|
||
else
|
||
dicCLHQ.Add(sBJCLID, dWSJG);
|
||
}
|
||
}
|
||
dicWLHQ.Clear();
|
||
if (XLJGB_CLJGTZList.NeedJGBJJFP())
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSWLHQ_WLID,XLXSWLHQ_HSJG,XLXSWLHQ_WSJG from XLXSWLHQ where XLXSWLHQ_JGBID=:pJGBID ");
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID");
|
||
DataSet dsWLHQ = dberp.OpenDataSet(SQL);
|
||
foreach (DataRow wlhqRow in dsWLHQ.Tables[0].Rows)
|
||
{
|
||
string sWLID = wlhqRow["XLXSWLHQ_WLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
double dHSJG = CMISproConvert.StrToFloat(wlhqRow["XLXSWLHQ_HSJG"].ToString().Trim());
|
||
double dWSJG = CMISproConvert.StrToFloat(wlhqRow["XLXSWLHQ_WSJG"].ToString().Trim());
|
||
if (!dicWLHQ.ContainsKey(sWLID))
|
||
{
|
||
if (bHSBZ)
|
||
dicWLHQ.Add(sWLID, dHSJG);
|
||
else
|
||
dicWLHQ.Add(sWLID, dWSJG);
|
||
}
|
||
}
|
||
}
|
||
if (dicWLHQ.Count <= 0)
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSWLHQ_WLID,XLXSWLHQ_HSJG,XLXSWLHQ_WSJG from XLXSWLHQ where 1=1 ");
|
||
SQL.Add(" and XLXSWLHQ_JGBID=' '");
|
||
SQL.Add(" and XLXSWLHQ_YXQS<=:pRQ and (XLXSWLHQ_YXQZ>=:pRQ or XLXSWLHQ_YXQZ is null)");
|
||
SQL.ParamByName("pRQ").Value = DateTime.Now.ToShortDateString();
|
||
DataSet dsWLHQ = dberp.OpenDataSet(SQL);
|
||
foreach (DataRow wlhqRow in dsWLHQ.Tables[0].Rows)
|
||
{
|
||
string sWLID = wlhqRow["XLXSWLHQ_WLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
double dHSJG = CMISproConvert.StrToFloat(wlhqRow["XLXSWLHQ_HSJG"].ToString().Trim());
|
||
double dWSJG = CMISproConvert.StrToFloat(wlhqRow["XLXSWLHQ_WSJG"].ToString().Trim());
|
||
if (!dicWLHQ.ContainsKey(sWLID))
|
||
{
|
||
if (bHSBZ)
|
||
dicWLHQ.Add(sWLID, dHSJG);
|
||
else
|
||
dicWLHQ.Add(sWLID, dWSJG);
|
||
}
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("if (dicBJCL_WL.Count <= 0)"));
|
||
//构建包含物料的报价材料字典
|
||
if (dicBJCL_WL.Count <= 0)
|
||
{
|
||
Mac.MacLog.TraceFormat(String.Format("dicBJCL_WL-begin"));
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSCLQD_JGCZBID,XLJGCZBLM_CLQDL,XLJGCZBLM_BJCLID, isnull(XLXSBJCL_BJHQ,'1') as BJHQ,XLXSBJCL_BJCLMC, ");
|
||
SQL.Add(" case when isnull(XLXSBJCL_BJHQ,'1')='1' then isnull(XLJGCZBLM_BJCLID,' ') ");
|
||
for (int i = 1; i <= 80; i++)
|
||
{
|
||
SQL.Add(string.Format(" when isnull(XLXSBJCL_BJHQ,'1')='2' and isnull(XLJGCZBLM_CLQDL,' ')='第{0}列' then isnull(XLXSCLQDWL_WLID{0},' ') ", i.ToString().PadLeft(2, '0').Trim()));
|
||
}
|
||
SQL.Add(" else ' ' end as CLID ");
|
||
SQL.Add(" from XLXSJGBMX ");
|
||
SQL.Add(" left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSJGBMX_XLXHID and XLXSCLQD_XLGGID=XLXSJGBMX_XLGGID and XLXSCLQD_XLBZID=XLXSJGBMX_XLBZID and XLXSCLQD_DYDJID=isnull(XLXSJGBMX_DYDJID,' ') ");
|
||
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(" left join XLJGCZBLM on XLJGCZBLM_JGCZBID=XLXSCLQD_JGCZBID and XLJGCZBLM_JGCZBBBID=XLXSCLQD_JGCZBBBID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' ");
|
||
SQL.Add(" left join XLXSBJCL on XLXSBJCL_BJCLID=XLJGCZBLM_BJCLID ");
|
||
SQL.Add(" where XLXSJGBMX_JGBID = :pJGBID ");
|
||
SQL.Add(" order by XLXSJGBMX_XH ");
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID").Trim();
|
||
DataSet dsBJCL_WL = dberp.OpenDataSet(SQL);
|
||
Mac.MacLog.TraceFormat(String.Format("dsBJCL_WL.Tables[0].Rows:" + dsBJCL_WL.Tables[0].Rows.Count.ToString().Trim()));
|
||
foreach (DataRow bjclRow in dsBJCL_WL.Tables[0].Rows)
|
||
{
|
||
string sJGCZBID = bjclRow["XLXSCLQD_JGCZBID"].ToString().Trim();
|
||
string sCLQDL = bjclRow["XLJGCZBLM_CLQDL"].ToString().Trim();
|
||
sCLQDL = sCLQDL.Replace("第", "").Replace("列", "");
|
||
string sKey = sJGCZBID + "|" + sCLQDL;
|
||
string sCLID = bjclRow["CLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
string sBJHQ = bjclRow["BJHQ"].ToString().Trim();
|
||
|
||
string sBJCLID = bjclRow["XLJGCZBLM_BJCLID"].ToString().Trim().Replace("-", "_").Replace("(", "(").Replace(")", ")").Replace(")", "").Replace("(", "");
|
||
string sBJCLMC = bjclRow["XLXSBJCL_BJCLMC"].ToString().Trim();
|
||
|
||
if (!sBJCLID.Equals(""))
|
||
{
|
||
if (!dicBJCL.ContainsKey(sBJCLID))
|
||
{
|
||
dicBJCL.Add(sBJCLID, sBJCLMC);
|
||
}
|
||
|
||
if (sBJHQ.Equals("2"))
|
||
{
|
||
sCLID = sBJCLID + "|" + sCLID;
|
||
if (!dicBJCL_WL.ContainsKey(sBJCLID))
|
||
{
|
||
dicBJCL_WL.Add(sBJCLID, sCLID);
|
||
}
|
||
}
|
||
|
||
if (!dicCZBLMCL.ContainsKey(sKey))
|
||
{
|
||
dicCZBLMCL.Add(sKey, sCLID);
|
||
}
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("dicBJCL_WL-end"));
|
||
}
|
||
//报价材料是否显示
|
||
dicBJCL_Visible.Clear();
|
||
//构建报价材料字典和查询列
|
||
Mac.MacLog.TraceFormat(String.Format(" if (dicBJCL.Count :" + dicBJCL.Keys.Count.ToString().Trim()));
|
||
if (dicBJCL.Count > 0)
|
||
{
|
||
foreach (string sBJCLID in dicBJCL.Keys)
|
||
{
|
||
dicBJCL_Visible.Add(sBJCLID, "N");
|
||
string sBJCLMC = dicBJCL[sBJCLID];
|
||
strSQL.AppendLine(" ,0 as " + sBJCLID + "_SL ");
|
||
dt1.Columns.Add(sBJCLID + "_SL", typeof(string));
|
||
dicColumns.Add(sBJCLID + "_SL", sBJCLMC);
|
||
if (dicBJCL_WL.ContainsKey(sBJCLID))
|
||
{
|
||
strSQL.AppendLine(" ,' ' as " + sBJCLID + "_WLXX ");
|
||
strSQL.AppendLine(" ,0 as " + sBJCLID + "_WLJG ");
|
||
strSQL.AppendLine(" ,0 as " + sBJCLID + "_WLCB ");
|
||
dt1.Columns.Add(sBJCLID + "_WLXX", typeof(string));
|
||
dt1.Columns.Add(sBJCLID + "_WLJG", typeof(double));
|
||
dt1.Columns.Add(sBJCLID + "_WLCB", typeof(double));
|
||
dicColumns.Add(sBJCLID + "_WLXX", "材料物料");
|
||
dicColumns.Add(sBJCLID + "_WLJG", "物料价格(元/Kg)");
|
||
if (bXSCLCB)
|
||
dicColumns.Add(sBJCLID + "_WLCB", "物料成本");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" ,' ' as " + sBJCLID + "_CLJG ");
|
||
strSQL.AppendLine(" ,0 as " + sBJCLID + "_CLCB ");
|
||
dt1.Columns.Add(sBJCLID + "_CLJG", typeof(double));
|
||
dt1.Columns.Add(sBJCLID + "_CLCB", typeof(double));
|
||
dicColumns.Add(sBJCLID + "_CLJG", "材料价格(元/Kg)");
|
||
if (bXSCLCB)
|
||
dicColumns.Add(sBJCLID + "_CLCB", "材料成本");
|
||
}
|
||
}
|
||
}
|
||
|
||
for (int i = 1; i <= 80; i++)
|
||
{
|
||
strSQL.AppendLine(string.Format(" ,XLXSCLQD_SL{0} * (1+XLXSCLQD_SHL{0}/100) * XLXSCLQD_CLJGBL{0} as SL{0} ", i.ToString().PadLeft(2, '0').Trim()));
|
||
}
|
||
}
|
||
|
||
Mac.MacLog.TraceFormat(String.Format(" if (dicBJCL.Count > 0)-end"));
|
||
|
||
strSQL.AppendLine(" from XLXSJGBMX ");
|
||
strSQL.AppendLine(" left join XLBZ on XLBZ_XLBZID = XLXSJGBMX_XLBZID ");
|
||
if (bZSBJZC)
|
||
{
|
||
strSQL.AppendLine(" left join XLXSJGBYZZ0 on XLXSJGBYZZ0_JGBID=XLXSJGBMX_JGBID and XLXSJGBYZZ0_XH=XLXSJGBMX_XH ");
|
||
}
|
||
if (bZSJJZC)
|
||
{
|
||
strSQL.AppendLine(" left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSJGBMX_XLXHID and XLXSCLQD_XLGGID=XLXSJGBMX_XLGGID and XLXSCLQD_XLBZID=XLXSJGBMX_XLBZID and XLXSCLQD_DYDJID=isnull(XLXSJGBMX_DYDJID,' ') ");
|
||
}
|
||
strSQL.AppendLine(" where 1=1 and XLXSJGBMX_JGBID = :pJGBID and XLXSJGBMX_SYXH = 0 ");
|
||
strSQL.AppendLine(" order by XLXSJGBMX_XH ");
|
||
SQL.Clear();
|
||
SQL.Add(strSQL.ToString().Trim());
|
||
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID").Trim();
|
||
Mac.MacLog.TraceFormat(String.Format("dberp.OpenDataSet(SQL)"));
|
||
DataSet dsQry = dberp.OpenDataSet(SQL);
|
||
Mac.MacLog.TraceFormat(String.Format("dsQry.Tables[0].Rows.Count" + dsQry.Tables[0].Rows.Count.ToString().Trim()));
|
||
if (dsQry.Tables[0].Rows.Count > 0)
|
||
{
|
||
foreach (DataRow towQry in dsQry.Tables[0].Rows)
|
||
{
|
||
DataRow dtrow = dt1.NewRow();
|
||
dtrow["XLXSJGBMX_JGBID"] = towQry["XLXSJGBMX_JGBID"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_XH"] = CMISproConvert.StrToFloat(towQry["XLXSJGBMX_XH"].ToString().Trim());
|
||
dtrow["XLXSJGBMX_XLXHID"] = towQry["XLXSJGBMX_XLXHID"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_XLGGID"] = towQry["XLXSJGBMX_XLGGID"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_XLBZID"] = towQry["XLXSJGBMX_XLBZID"].ToString().Trim();
|
||
dtrow["XLBZ"] = towQry["XLBZ"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_DYDJID"] = towQry["XLXSJGBMX_DYDJID"].ToString().Trim();
|
||
dtrow["XLXSJGBMX_JJ"] = CMISproConvert.StrToFloat(towQry["XLXSJGBMX_JJ"].ToString().Trim());
|
||
if (bZSBJZC)
|
||
{
|
||
dtrow["TZYZ_JZ01"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ01"].ToString().Trim());
|
||
dtrow["TZYZ_JZ02"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ02"].ToString().Trim());
|
||
dtrow["TZYZ_JZ03"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ03"].ToString().Trim());
|
||
dtrow["TZYZ_JZ04"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ04"].ToString().Trim());
|
||
dtrow["TZYZ_JZ05"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ05"].ToString().Trim());
|
||
dtrow["TZYZ_JZ06"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ06"].ToString().Trim());
|
||
dtrow["TZYZ_JZ07"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ07"].ToString().Trim());
|
||
dtrow["TZYZ_JZ08"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ08"].ToString().Trim());
|
||
dtrow["TZYZ_JZ09"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ09"].ToString().Trim());
|
||
dtrow["TZYZ_JZ10"] = CMISproConvert.StrToFloat(towQry["TZYZ_JZ10"].ToString().Trim());
|
||
}
|
||
|
||
dtrow["XLXSJGBMX_BJ"] = CMISproConvert.StrToFloat(towQry["XLXSJGBMX_BJ"].ToString().Trim());
|
||
|
||
if (bZSJJZC)
|
||
{
|
||
dtrow["JLDW"] = towQry["JLDW"].ToString().Trim();
|
||
dtrow["XLXSCLQD_CLZL"] = CMISproConvert.StrToFloat(towQry["XLXSCLQD_CLZL"].ToString().Trim());
|
||
string sJGCZBID = towQry["XLXSCLQD_JGCZBID"].ToString().Trim();
|
||
for (int i = 1; i <= 80; i++)
|
||
{
|
||
string sLMH = i.ToString().PadLeft(2, '0').Trim();
|
||
string sKey = sJGCZBID + "|" + sLMH;
|
||
if (dicCZBLMCL.ContainsKey(sKey))
|
||
{
|
||
string sCLID = dicCZBLMCL[sKey];
|
||
double dYL = CMISproConvert.StrToFloat(towQry["SL" + sLMH].ToString().Trim());
|
||
if (sCLID.Contains("|"))
|
||
{
|
||
string sWLID = sCLID.Split('|')[1];
|
||
if (DicJGYWLID.ContainsKey(sWLID))
|
||
sWLID = DicJGYWLID[sWLID];
|
||
sCLID = sCLID.Split('|')[0];
|
||
if (dicBJCL.ContainsKey(sCLID))
|
||
{
|
||
double dJG = 0;
|
||
if (dicWLHQ.ContainsKey(sWLID))
|
||
dJG = dicWLHQ[sWLID];
|
||
if (dYL != 0)
|
||
dicBJCL_Visible[sCLID] = "Y";
|
||
dtrow[sCLID + "_SL"] = CMISproConvert.StrToFloat(dtrow[sCLID + "_SL"].ToString(), 0.0) + dYL;//相同栏目的用量要合并
|
||
if (dicCLWL.ContainsKey(sWLID))
|
||
{
|
||
if (dtrow[sCLID + "_WLXX"].ToString().Trim().Equals(""))
|
||
{
|
||
dtrow[sCLID + "_WLXX"] = sWLID + "|" + dicCLWL[sWLID];
|
||
}
|
||
else
|
||
{
|
||
if (!dtrow[sCLID + "_WLXX"].ToString().Trim().Contains(sWLID + "|" + dicCLWL[sWLID]))
|
||
{
|
||
dtrow[sCLID + "_WLXX"] = dtrow[sCLID + "_WLXX"].ToString().Trim() + "...";
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (dtrow[sCLID + "_WLXX"].ToString().Trim().Equals(""))
|
||
{
|
||
dtrow[sCLID + "_WLXX"] = sWLID;
|
||
}
|
||
else
|
||
{
|
||
if (!dtrow[sCLID + "_WLXX"].ToString().Trim().Contains(sWLID) || (sWLID.Equals("") && !dtrow[sCLID + "_WLXX"].ToString().Trim().Equals("")))
|
||
{
|
||
dtrow[sCLID + "_WLXX"] = dtrow[sCLID + "_WLXX"].ToString().Trim() + "...";
|
||
}
|
||
}
|
||
}
|
||
if (dtrow[sCLID + "_WLXX"].ToString().EndsWith("..."))
|
||
dtrow[sCLID + "_WLJG"] = 0;
|
||
else
|
||
dtrow[sCLID + "_WLJG"] = dJG;
|
||
|
||
dtrow[sCLID + "_WLCB"] = CMISproConvert.StrToFloat(dtrow[sCLID + "_WLCB"].ToString(), 0.0) + dJG * dYL;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (dicBJCL.ContainsKey(sCLID))
|
||
{
|
||
double dJG = 0;
|
||
if (dicCLHQ.ContainsKey(sCLID))
|
||
dJG = dicCLHQ[sCLID];
|
||
if (dYL != 0)
|
||
dicBJCL_Visible[sCLID] = "Y";
|
||
dtrow[sCLID + "_SL"] = CMISproConvert.StrToFloat(dtrow[sCLID + "_SL"].ToString(), 0.0) + dYL;//相同栏目的用量要合并
|
||
dtrow[sCLID + "_CLJG"] = dJG;
|
||
dtrow[sCLID + "_CLCB"] = dJG * CMISproConvert.StrToFloat(dtrow[sCLID + "_SL"].ToString(), 0.0);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
dt1.Rows.Add(dtrow);
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("dicBJCL_Visible-begin"));
|
||
foreach (string sBJCLID in dicBJCL_Visible.Keys)
|
||
{
|
||
if (dicBJCL_Visible[sBJCLID].Equals("N"))//不显示的栏目需要删除,否则记录导出时会因为最大栏目数256的限制导致栏目导出不全
|
||
{
|
||
dicColumns.Remove(sBJCLID + "_SL");
|
||
if (dt1.Columns.Contains(sBJCLID + "_SL"))
|
||
dt1.Columns.Remove(sBJCLID + "_SL");
|
||
|
||
if (dicBJCL_WL.ContainsKey(sBJCLID))
|
||
{
|
||
dicColumns.Remove(sBJCLID + "_WLXX");
|
||
dicColumns.Remove(sBJCLID + "_WLJG");
|
||
dicColumns.Remove(sBJCLID + "_WLCB");
|
||
if (dt1.Columns.Contains(sBJCLID + "_WLXX"))
|
||
dt1.Columns.Remove(sBJCLID + "_WLXX");
|
||
if (dt1.Columns.Contains(sBJCLID + "_WLJG"))
|
||
dt1.Columns.Remove(sBJCLID + "_WLJG");
|
||
if (dt1.Columns.Contains(sBJCLID + "_WLCB"))
|
||
dt1.Columns.Remove(sBJCLID + "_WLCB");
|
||
}
|
||
else
|
||
{
|
||
dicColumns.Remove(sBJCLID + "_CLJG");
|
||
dicColumns.Remove(sBJCLID + "_CLCB");
|
||
if (dt1.Columns.Contains(sBJCLID + "_CLJG"))
|
||
dt1.Columns.Remove(sBJCLID + "_CLJG");
|
||
if (dt1.Columns.Contains(sBJCLID + "_CLCB"))
|
||
dt1.Columns.Remove(sBJCLID + "_CLCB");
|
||
}
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("dicBJCL_Visible-end"));
|
||
if (grdXLJGBMX.Columns.Count > 450)
|
||
{
|
||
for (int i = grdXLJGBMX.Columns.Count - 1; i >= 449; i--)
|
||
{
|
||
grdXLJGBMX.Columns.Remove(grdXLJGBMX.Columns[i]);
|
||
}
|
||
AddColumn("LMCXSLF", "...", 60, HorizontalAlign.Center);
|
||
}
|
||
|
||
DataSet dsResult = new DataSet();
|
||
dsResult.Tables.Add(dt1);
|
||
Mac.MacLog.TraceFormat(String.Format("dsResult.Tables.Add"));
|
||
|
||
string sColName = "";
|
||
|
||
//循环列名,进行赋值
|
||
for (int i = 0; i < dsResult.Tables[0].Columns.Count; i++)
|
||
{
|
||
if (dicColumns.ContainsKey(dsResult.Tables[0].Columns[i].ColumnName))
|
||
{
|
||
sColName = dsResult.Tables[0].Columns[i].ColumnName;
|
||
dsResult.Tables[0].Columns[i].Caption = "待处理列&_" + dicColumns[sColName];
|
||
}
|
||
|
||
}
|
||
|
||
//循环,删除列
|
||
for (int i = dsResult.Tables[0].Columns.Count - 1; i >= 0; i--)
|
||
{
|
||
if (dsResult.Tables[0].Columns[i].Caption.StartsWith("待处理列&_"))
|
||
{
|
||
dsResult.Tables[0].Columns[i].Caption = dsResult.Tables[0].Columns[i].Caption.Replace("待处理列&_", "");
|
||
}
|
||
else
|
||
{
|
||
dsResult.Tables[0].Columns.RemoveAt(i);
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("dsResult.Tables[0].Rows.Count:" + dsResult.Tables[0].Rows.Count.ToString().Trim()));
|
||
if (dsResult.Tables[0].Rows.Count > 0)
|
||
{
|
||
string smessage = "";
|
||
string sLet = "";
|
||
//
|
||
NpoiSheetData sd = new NpoiSheetData();
|
||
sd.ColumnStyle = new System.Collections.Generic.Dictionary<string, NpoiColumnStyle>();
|
||
NpoiColumnStyle ct = new NpoiColumnStyle();
|
||
ct.DataFormat = "@";
|
||
sd.ColumnStyle.Add("B", ct);
|
||
sd.ColumnType = new System.Collections.Generic.Dictionary<string, NpoiColumnType>();
|
||
|
||
string sCellStr = "";
|
||
string sCellStrBJ = GetBJJSGS(PageParam.GetRTrimString("JGBID"));
|
||
if (!bZSBJZC)
|
||
sCellStrBJ = "";
|
||
string sJJLM = "";
|
||
string sBJLM = "";
|
||
Dictionary<int, string> sCLJGCellIndexs = new Dictionary<int, string>();
|
||
List<int> CellIndexsList = new List<int>();
|
||
for (int k = 0; k < dicColumns.Count; k++)
|
||
{
|
||
if (dsResult.Tables[0].Columns[k].ColumnName.StartsWith("XLXSJGBMX_XH"))
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
}
|
||
else if (dsResult.Tables[0].Columns[k].ColumnName.StartsWith("XLXSJGBMX_JJ"))
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
sJJLM = GetLMZF(k + 1);
|
||
}
|
||
else if (dsResult.Tables[0].Columns[k].ColumnName.StartsWith("XLXSJGBMX_BJ"))
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
sBJLM = GetLMZF(k + 1);
|
||
}
|
||
else if (dsResult.Tables[0].Columns[k].ColumnName.StartsWith("TZYZ_JZ"))//因子值要设为数值型
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
string sYZNAME = dsResult.Tables[0].Columns[k].ColumnName;
|
||
sYZNAME = sYZNAME.Replace("TZYZ_", "");
|
||
sCellStrBJ = sCellStrBJ.Replace(sYZNAME, GetLMZF(k + 1) + "row");
|
||
}
|
||
else if (dsResult.Tables[0].Columns[k].ColumnName.StartsWith("CLZL"))
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
}
|
||
else if (dsResult.Tables[0].Columns[k].ColumnName.EndsWith("_SL"))
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
sCellStr += "+" + GetLMZF(k + 1) + "row";
|
||
}
|
||
else if (dsResult.Tables[0].Columns[k].ColumnName.EndsWith("_WLJG"))
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
sCellStr += "*" + GetLMZF(k + 1) + "row";
|
||
}
|
||
else if (dsResult.Tables[0].Columns[k].ColumnName.EndsWith("_WLCB"))
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
}
|
||
else if (dsResult.Tables[0].Columns[k].ColumnName.EndsWith("_CLJG"))
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
sCellStr += "*" + GetLMZF(k + 1) + "row";
|
||
sCLJGCellIndexs.Add(k + 1, "1");
|
||
CellIndexsList.Add(k + 1);
|
||
}
|
||
else if (dsResult.Tables[0].Columns[k].ColumnName.EndsWith("_CLCB"))
|
||
{
|
||
sLet = TExcelData.ColIndexToReference(k);
|
||
sd.ColumnType.Add(sLet, NpoiColumnType.Double);
|
||
}
|
||
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("NpoiCellData cd = new NpoiCellData();"));
|
||
NpoiCellData cd = new NpoiCellData();
|
||
cd.CellFormula = new Dictionary<string, string>();
|
||
if (!sCellStr.Equals("") || !sCellStrBJ.Equals(""))
|
||
{
|
||
for (int k = 0; k < dsResult.Tables[0].Rows.Count; k++)
|
||
{
|
||
int tk = k + 2;
|
||
string sk = tk.ToString().Trim();
|
||
if (!sCellStr.Equals(""))
|
||
{
|
||
sCellStr = sCellStr.TrimStart('+');
|
||
string stCellStr = sCellStr.Replace("row", sk);
|
||
cd.CellFormula.Add(sJJLM + sk, stCellStr);
|
||
foreach (int cellIndex in CellIndexsList)
|
||
{
|
||
double dSL = CMISproConvert.StrToFloat(dsResult.Tables[0].Rows[k][cellIndex - 1].ToString(), 0);
|
||
if (dSL == 0)
|
||
continue;
|
||
if (sCLJGCellIndexs[cellIndex].Equals("1"))
|
||
{
|
||
sCLJGCellIndexs[cellIndex] = sk;
|
||
continue;
|
||
}
|
||
cd.CellFormula.Add(GetLMZF(cellIndex) + sk, GetLMZF(cellIndex) + sCLJGCellIndexs[cellIndex]);
|
||
}
|
||
}
|
||
if (!sCellStrBJ.Equals(""))
|
||
{
|
||
if (!sCellStr.Equals(""))
|
||
sCellStrBJ = sCellStrBJ.Replace("JGBJJ", "(" + sCellStr + ")");
|
||
else
|
||
sCellStrBJ = sCellStrBJ.Replace("JGBJJ", sJJLM + "row");
|
||
string stCellStrBJ = sCellStrBJ.Replace("row", sk);
|
||
cd.CellFormula.Add(sBJLM + sk, stCellStrBJ);
|
||
}
|
||
}
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("cd.CellFormula-end"));
|
||
|
||
TExcelData.CreateExcel_XLSX_NPOI(m_tmpFilePath, dsResult, true, cd, sd, ref smessage);
|
||
Mac.MacLog.TraceFormat(String.Format("CreateExcel_XLSX_NPOI-end"));
|
||
if (smessage.Equals(""))
|
||
{
|
||
System.IO.FileInfo file = new System.IO.FileInfo(m_tmpFilePath);
|
||
string URL = Page.ResolveClientUrl("~") + "/N_MODEL/Dialog/TempFileDownload.ashx?TempFileName=" + file.Name + "&FileName=" + sFileName + file.Extension;
|
||
string jsript = @"var JLDCDiv = document.createElement('div');JLDCDiv.style.width=0;JLDCDiv.style.height=0;JLDCDiv.id = 'DivifrDownLoad';"
|
||
+ " var ele=document.documentElement||document.body;ele.appendChild(JLDCDiv);var iJLDCfrm = document.createElement('iframe');iJLDCfrm.id = 'iJLDCfrmDownLoad';iJLDCfrm.src = '" + URL + "';"
|
||
+ "iJLDCfrm.style.width = 0;iJLDCfrm.style.height = 0; JLDCDiv.appendChild(iJLDCfrm);";
|
||
AJAXRunScript(this, "OPENJLDC", jsript);
|
||
}
|
||
else
|
||
{
|
||
ShowMessage(smessage);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
ShowMessage("无记录可以导出!");
|
||
}
|
||
Mac.MacLog.TraceFormat(String.Format("btnSJDC_Click-end"));
|
||
}
|
||
|
||
public static string GetLMZF(int i)
|
||
{
|
||
string sLMZF = "";
|
||
Dictionary<int, string> sZF = new Dictionary<int, string>();
|
||
sZF.Add(1, "A"); sZF.Add(2, "B"); sZF.Add(3, "C"); sZF.Add(4, "D"); sZF.Add(5, "E"); sZF.Add(6, "F"); sZF.Add(7, "G");
|
||
sZF.Add(8, "H"); sZF.Add(9, "I"); sZF.Add(10, "J"); sZF.Add(11, "K"); sZF.Add(12, "L"); sZF.Add(13, "M"); sZF.Add(14, "N");
|
||
sZF.Add(15, "O"); sZF.Add(16, "P"); sZF.Add(17, "Q"); sZF.Add(18, "R"); sZF.Add(19, "S"); sZF.Add(20, "T"); sZF.Add(21, "U");
|
||
sZF.Add(22, "V"); sZF.Add(23, "W"); sZF.Add(24, "X"); sZF.Add(25, "Y"); sZF.Add(26, "Z"); sZF.Add(0, ""); sZF.Add(-1, "");
|
||
int j = i / 26;
|
||
int k = i % 26;
|
||
if (k == 0)
|
||
sLMZF = sZF[j - 1] + "Z";
|
||
else
|
||
sLMZF = sZF[j] + sZF[k];
|
||
return sLMZF;
|
||
}
|
||
|
||
public static string GetBJJSGS(string sJGBID)
|
||
{
|
||
string sJSGS = "";
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
SQL.Clear();
|
||
SQL.Add("select XLXSJGB_JSGS from XLXSJGB where XLXSJGB_JGBID=:pJGBID ");
|
||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||
DataSet ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
sJSGS = ds.Tables[0].Rows[0]["XLXSJGB_JSGS"].ToString().Trim();
|
||
}
|
||
if (sJSGS.Equals(""))
|
||
{
|
||
DataSet dsJGBYZ = new DataSet();
|
||
XLBJDUtils.GetdsJGBYZ_JGE(sJGBID, ref dsJGBYZ);
|
||
Dictionary<string, string> DicTJYZ = new Dictionary<string, string>();
|
||
Dictionary<string, string> DicJJFS = new Dictionary<string, string>();
|
||
string sFistJJFS = "";
|
||
foreach (DataRow trow in dsJGBYZ.Tables[0].Rows)
|
||
{
|
||
string sTJYZ = trow["XLXSTZYZ_TJYZID"].ToString().Trim();
|
||
string sYZID = trow["XLXSJGBYZ_YZID"].ToString().Trim();
|
||
string sJJFS = trow["XLXSTZYZ_JJFS"].ToString().Trim();
|
||
if (sJJFS.Equals("SX"))
|
||
return sJSGS;
|
||
if (sFistJJFS.Equals(""))
|
||
sFistJJFS = sJJFS;
|
||
if (!DicJJFS.ContainsKey(sTJYZ))
|
||
DicJJFS.Add(sTJYZ, sJJFS);
|
||
if (DicTJYZ.ContainsKey(sTJYZ))
|
||
{
|
||
string sTJYZGS = DicTJYZ[sTJYZ] + "+" + sYZID;
|
||
DicTJYZ[sTJYZ] = sTJYZGS;
|
||
}
|
||
else
|
||
DicTJYZ.Add(sTJYZ, sYZID);
|
||
}
|
||
string sJDGS = "";
|
||
string sJJGS = "";
|
||
string sKDGS = "";
|
||
foreach (string sKey in DicTJYZ.Keys)
|
||
{
|
||
if (DicJJFS[sKey].Equals("JD"))
|
||
{
|
||
sJDGS += "*(1+(" + DicTJYZ[sKey] + ")/100.00)";
|
||
}
|
||
else if (DicJJFS[sKey].Equals("JJ"))
|
||
{
|
||
sJJGS += "+" + DicTJYZ[sKey];
|
||
}
|
||
else if (DicJJFS[sKey].Equals("KD"))
|
||
{
|
||
sKDGS += "/(1-(" + DicTJYZ[sKey] + ")/100.00)";
|
||
}
|
||
}
|
||
sJSGS = "JGBJJ";
|
||
if (XLBJDUtils.JJFirst_JGBYZ(sJGBID))
|
||
{
|
||
if (!sJJGS.Equals(""))
|
||
{
|
||
sJSGS += sJJGS;
|
||
sJSGS = "(" + sJSGS + ")";
|
||
}
|
||
if (!sJJGS.Equals(""))
|
||
sJSGS += sJJGS;
|
||
if (!sJDGS.Equals(""))
|
||
sJSGS += sJDGS;
|
||
if (!sKDGS.Equals(""))
|
||
sJSGS += sKDGS;
|
||
}
|
||
else
|
||
{
|
||
if (!sJDGS.Equals(""))
|
||
sJSGS += sJDGS;
|
||
if (!sKDGS.Equals(""))
|
||
sJSGS += sKDGS;
|
||
if (!sJJGS.Equals(""))
|
||
sJSGS += sJJGS;
|
||
}
|
||
}
|
||
return sJSGS;
|
||
}
|
||
|
||
#endregion
|
||
|
||
#endregion
|
||
|
||
#region GridView增加列
|
||
|
||
/// <summary>
|
||
/// 设置etCheckBox列的属性
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="Width"></param>
|
||
/// <param name="CheckBox"></param>
|
||
private void AddColumn(string sDataField, string HeadText, int Width, TEditType CheckBox)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)Width;
|
||
Column.HeaderStyle.Width = (Unit)Width;
|
||
grdXLJGBMX.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etCheckBox;
|
||
grdXLJGBMX.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置etString列的属性
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="Width"></param>
|
||
private void AddColumn(string sDataField, string HeadText, int Width)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)Width;
|
||
Column.HeaderStyle.Width = (Unit)Width;
|
||
grdXLJGBMX.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etString;
|
||
ColumnEx.ShowHint = true;
|
||
grdXLJGBMX.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置etString列的属性
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="Width"></param>
|
||
/// <param name="Align"></param>
|
||
private void AddColumn(string sDataField, string HeadText, int Width, HorizontalAlign Align)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)Width;
|
||
Column.ItemStyle.HorizontalAlign = Align;
|
||
Column.HeaderStyle.Width = (Unit)Width;
|
||
grdXLJGBMX.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etString;
|
||
ColumnEx.ShowHint = true;
|
||
grdXLJGBMX.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置etNumber列的属
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="NumberDecimalPlace"></param>
|
||
/// <param name="Width"></param>
|
||
private void AddColumn(string sDataField, string HeadText, int NumberDecimalPlace, int Width)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)Width;
|
||
Column.HeaderStyle.Width = (Unit)Width;
|
||
Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
|
||
grdXLJGBMX.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etNumber;
|
||
ColumnEx.ShowHint = true;
|
||
ColumnEx.NumberDecimalPlace = NumberDecimalPlace;
|
||
grdXLJGBMX.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置etDateTime列的属性
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="DateTimeKind"></param>
|
||
/// <param name="Width"></param>
|
||
private void AddColumn(string sDataField, string HeadText, TDateTimeEditKinds DateTimeKind)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)(DateTimeKind == TDateTimeEditKinds.dtDateTime ? 125 : 72);
|
||
Column.HeaderStyle.Width = (Unit)(DateTimeKind == TDateTimeEditKinds.dtDateTime ? 125 : 72);
|
||
grdXLJGBMX.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etDateTime;
|
||
ColumnEx.DateTimeEditKins = DateTimeKind;
|
||
grdXLJGBMX.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
#endregion
|
||
|
||
}
|
||
}
|