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

887 lines
43 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_MODEL.Page;
using GThinking.N_MISPRO.Data;
using GThinking.N_MISPRO.Utility;
using System.Text;
using GThinking.N_CONTROL;
using GThinking.N_MISPRO;
using System.Collections.Generic;
using System.Xml;
using GThinking.N_MISPROAS.Compress;
namespace GThinking.N_XLXSBJ
{
public partial class XLBJD_WBXLWLDRList : SingleGridBase
{
XLBJD_WBXLWLDREntity entity = new XLBJD_WBXLWLDREntity();
private string sWBBJDID = "";
private string sXLBJDID = "";
//指定栏目类型-栏目编号
Dictionary<string, string> dicLMBH = new Dictionary<string, string>();
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860073;
this.UMName = "按线缆物料导入";
this.CurMaster = Master;
this.ModuleGV = ContentGrid;
this.CurEntity = entity;
this.PageHeight = 600;
this.PageWidth = 750;
base.DataKeyNames = new string[] { "XLWBBJDML_WBBJDID", "XLWBBJDML_BJDID" };
this.Master.EnableNewBtn = false;
this.Master.EnableCopyBtn = false;
this.Master.EnableEditBtn = false;
this.Master.EnableDeleteBtn = false;
this.Master.EnableViewBtn = false;
this.Master.EnablePrintBtn = false;
this.Master.EnableQueryBtn = false;
base.InitPage();
if (!PageParam.GetRTrimString("BJDID").Equals(""))
{
sXLBJDID = PageParam.GetRTrimString("BJDID");
}
if (!IsPostBack)
{
Master_OnStandardQuery(null, null);
}
if (Request.Form["BBYS"] != null)
{
string sRepXML = Request.Form["BBYS"].ToString();
string sBJDID = Request.Form["BJDID"].ToString();
string sTimeSpan = Request.Form["TimeSpan"].ToString();
ReadBBYS(sRepXML, sBJDID, sTimeSpan);
}
}
#region 模板继承事件
protected override void Master_OnStandardQuery(object sender, EventArgs e)
{
entity.EntityTable.QuerySelSql = GetQuerySql();
base.Master_OnStandardQuery(sender, e);
entity.GridDataBind(ContentGrid, tSession);
}
protected override void moduleGV_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
}
base.moduleGV_RowDataBound(sender, e);
}
protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
entity.EntityTable.QuerySelSql = GetQuerySql();
ContentGrid.SelectedIndex = -1;
base.moduleGV_PageIndexChanging(sender, e);
}
#endregion
#region 控件事件
//导入
protected void btnDR_Click(object sender, EventArgs e)
{
TPageParams pageParams = new TPageParams();
pageParams.UrlPath = "XLBJD_WBXLWLDRInfo.aspx";
pageParams.Title = "导入Excel文件";
pageParams.AddString("BJRQ", PageParam.GetRTrimString("BJRQ"));
pageParams.AddString("BJFLID", PageParam.GetRTrimString("BJFLID"));
pageParams.AddString("BJDID", PageParam.GetRTrimString("BJDID"));
pageParams.AddString("JGBID", PageParam.GetRTrimString("JGBID"));
pageParams.AddString("JGCIDS", PageParam.GetRTrimString("JGCIDS"));
pageParams.AddString("BJLY", PageParam.GetRTrimString("BJLY"));
pageParams.AddString("XSQYID", PageParam.GetRTrimString("XSQYID"));
pageParams.AddString("PJLX", PageParam.GetRTrimString("PJLX"));
pageParams.AddString("FKQXNR", PageParam.GetRTrimString("FKQXNR"));
pageParams.AddString("HSBZ", PageParam.GetRTrimString("HSBZ"));
pageParams.AddString("JCLLX", PageParam.GetRTrimString("JCLLX"));
pageParams.AddString("LJJCLLX", PageParam.GetRTrimString("LJJCLLX"));
pageParams.AddString("NeedUpdBJDHQCLCB", PageParam.GetRTrimString("NeedUpdBJDHQCLCB"));
OpenDialogClickBtn(pageParams, btnCallBack.ClientID);
}
protected void btnDR_OnDropDown(object sender, EventArgs e)
{
btnDR.Nodes.Clear();
btnDR.Nodes.Add(new gtTreeNode("1", "复制内容导入"));
MenuAreaUpdate();
}
protected void btnDR_MenuItemClick(object sender, string value)
{
if (value.Equals("1"))
{
string sStr = tSession.UserId + "|" + DateTime.Now.ToString().Trim();
string sScript = "";
sScript = "document.getElementById('" + this.txtTimeSpan.ClientID.ToString().Trim() + "').value = '" + sStr + "';";
AjaxRunScript(this, "setTreePic", sScript);
OpenBB(PageParam.GetRTrimString("BJDID"), sStr);
}
}
//查看外部报价单明细
//直接点击
protected void btnWBBJDMX_Click(object sender, EventArgs e)
{
if (ContentGrid.SelectedIndex < 0)
{
ShowMessage("请选择处理记录!");
return;
}
sWBBJDID = ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLWBBJDML_WBBJDID"].ToString().Trim();
sXLBJDID = XLBJDUtils.FetEmptyStr(ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLWBBJDML_BJDID"].ToString().Trim());
////////////////////////////////////////////////////////////
TPageParams pageParams = new TPageParams();
pageParams.UrlPath = "XLBJD_WBBJDMXList.aspx";
pageParams.AddString("BJRQ", PageParam.GetRTrimString("BJRQ"));
pageParams.AddString("BJFLID", PageParam.GetRTrimString("BJFLID"));
pageParams.AddString("BJDID", PageParam.GetRTrimString("BJDID"));
pageParams.AddString("JGBID", PageParam.GetRTrimString("JGBID"));
pageParams.AddString("JGCIDS", PageParam.GetRTrimString("JGCIDS"));
pageParams.AddString("BJLY", PageParam.GetRTrimString("BJLY"));
pageParams.AddString("XSQYID", PageParam.GetRTrimString("XSQYID"));
pageParams.AddString("PJLX", PageParam.GetRTrimString("PJLX"));
pageParams.AddString("FKQXNR", PageParam.GetRTrimString("FKQXNR"));
pageParams.AddString("SYDWID", PageParam.GetRTrimString("SYDWID"));
pageParams.AddString("HSBZ", PageParam.GetRTrimString("HSBZ"));
pageParams.AddString("JCLLX", PageParam.GetRTrimString("JCLLX"));
pageParams.AddString("LJJCLLX", PageParam.GetRTrimString("LJJCLLX"));
pageParams.AddString("NeedUpdBJDHQCLCB", PageParam.GetRTrimString("NeedUpdBJDHQCLCB"));
pageParams.AddString("BJDHQLY", PageParam.GetRTrimString("BJDHQLY"));
pageParams.AddString("TBJCLID", PageParam.GetRTrimString("TBJCLID"));
pageParams.AddString("LBJCLID", PageParam.GetRTrimString("LBJCLID"));
pageParams.AddString("TJ", PageParam.GetRTrimString("TJ"));
pageParams.AddString("LJ", PageParam.GetRTrimString("LJ"));
pageParams.AddString("CPBJMRXSWS", PageParam.GetRTrimString("CPBJMRXSWS"));
pageParams.AddString("YXLRBJCP", PageParam.GetRTrimString("YXLRBJCP"));
pageParams.AddString("WBBJDID", sWBBJDID);
//当前选中行的报价单ID
pageParams.AddString("SELBJDID", sXLBJDID);
pageParams.AddString("txtOpen", txtOpen.ClientID);
OpenDialogClickBtn(pageParams, btnAutoClose.ClientID);
}
protected void btnWBBJDMX_OnDropDown(object sender, EventArgs e)
{
btnWBBJDMX.Nodes.Clear();
btnWBBJDMX.Nodes.Add(new gtTreeNode("0", "重新导入报价单明细"));
MenuAreaUpdate();
}
protected void btnWBBJDMX_MenuItemClick(object sender, string value)
{
if (value.Equals("0"))
{
if (ContentGrid.SelectedIndex < 0)
{
ShowMessage("请选择处理记录!");
return;
}
sWBBJDID = ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLWBBJDML_WBBJDID"].ToString().Trim();
sXLBJDID = XLBJDUtils.FetEmptyStr(ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLWBBJDML_BJDID"].ToString().Trim());
Confirm.Register("IsQD", "重新导入将覆盖报价单明细,是否继续?");
Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No;
if (Confirm.GetValue("IsQD").Trim().Equals(""))
{
Confirm.Ask("IsQD");
return;
}
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
{
//表示进行了提示并选择了取消,直接返回或其他处理
Confirm.Clear();
return;
}
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
{
//表示进行了提示并选择了确认
Confirm.Clear();
}
string sMsg = "";
XLWBBJDUtils.Reimport(GetOption(100860000, "BJU002"), GetOption(100860000, "BJU003"),GetOption(100860000, "BJU018"), PageParam.GetRTrimString("BJLY"), PageParam.GetRTrimString("BJFLID"), PageParam.GetRTrimString("BJDHQLY"),
PageParam.GetRTrimString("BJRQ"), PageParam.GetRTrimString("JGBID"), PageParam.GetRTrimString("JGCIDS"), PageParam.GetRTrimString("XSQYID"), PageParam.GetRTrimString("HSBZ"),
PageParam.GetRTrimString("TBJCLID"), PageParam.GetRTrimString("LBJCLID"), PageParam.GetRTrimString("TJ"), PageParam.GetRTrimString("LJ"),
PageParam.GetRTrimString("NeedUpdBJDHQCLCB"), PageParam.GetRTrimString("JCLLX"), PageParam.GetRTrimString("LJJCLLX"), PageParam.GetRTrimString("BJLJJCLLX"),
PageParam.GetRTrimString("PJLX"), PageParam.GetRTrimString("FKQXNR"), PageParam.GetRTrimString("SYDWID"), PageParam.GetRTrimString("CPBJMRXSWS"),
sWBBJDID, sXLBJDID, sXLBJDID, "BJWL", tSession, ref sMsg);
if (!sMsg.Equals(""))
{
ShowMessage(sMsg);
}
}
}
#region 以下内容由程序内置打开页面
//查看外部报价单明细
//由内容页程序打开
protected void btnOpen_Click(object sender, EventArgs e)
{
if (ContentGrid.SelectedIndex < 0)
{
ShowMessage("请选择处理记录!");
return;
}
sWBBJDID = ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLWBBJDML_WBBJDID"].ToString().Trim();
sXLBJDID = XLBJDUtils.FetEmptyStr(ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLWBBJDML_BJDID"].ToString().Trim());
TPageParams pageParams = new TPageParams();
pageParams.UrlPath = "XLBJD_WBBJDMXList.aspx";
pageParams.AddString("BJRQ", PageParam.GetRTrimString("BJRQ"));
pageParams.AddString("BJFLID", PageParam.GetRTrimString("BJFLID"));
pageParams.AddString("BJDID", PageParam.GetRTrimString("BJDID"));
pageParams.AddString("JGBID", PageParam.GetRTrimString("JGBID"));
pageParams.AddString("JGCIDS", PageParam.GetRTrimString("JGCIDS"));
pageParams.AddString("BJLY", PageParam.GetRTrimString("BJLY"));
pageParams.AddString("XSQYID", PageParam.GetRTrimString("XSQYID"));
pageParams.AddString("PJLX", PageParam.GetRTrimString("PJLX"));
pageParams.AddString("FKQXNR", PageParam.GetRTrimString("FKQXNR"));
pageParams.AddString("SYDWID", PageParam.GetRTrimString("SYDWID"));
pageParams.AddString("HSBZ", PageParam.GetRTrimString("HSBZ"));
pageParams.AddString("JCLLX", PageParam.GetRTrimString("JCLLX"));
pageParams.AddString("LJJCLLX", PageParam.GetRTrimString("LJJCLLX"));
pageParams.AddString("NeedUpdBJDHQCLCB", PageParam.GetRTrimString("NeedUpdBJDHQCLCB"));
pageParams.AddString("BJDHQLY", PageParam.GetRTrimString("BJDHQLY"));
pageParams.AddString("TBJCLID", PageParam.GetRTrimString("TBJCLID"));
pageParams.AddString("LBJCLID", PageParam.GetRTrimString("LBJCLID"));
pageParams.AddString("TJ", PageParam.GetRTrimString("TJ"));
pageParams.AddString("LJ", PageParam.GetRTrimString("LJ"));
pageParams.AddString("CPBJMRXSWS", PageParam.GetRTrimString("CPBJMRXSWS"));
pageParams.AddString("YXLRBJCP", PageParam.GetRTrimString("YXLRBJCP"));
pageParams.AddString("WBBJDID", sWBBJDID);
//当前选中行的报价单ID
pageParams.AddString("SELBJDID", sXLBJDID);
//由程序打开说明是第一次进入,传递参数
pageParams.AddExtString("First_Open", "First_Open");
pageParams.AddString("txtOpen", txtOpen.ClientID);
OpenDialogClickBtn(pageParams, btnAutoClose.ClientID);
}
//查看外部报价单明细
//由复制内容程序打开
protected void btnOpenMXByFZNR_Click(object sender, EventArgs e)
{
if (!txtTimeSpan.Value.Trim().Equals(""))
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add("select XLWBBJDML_WBBJDID from XLWBBJDML where XLWBBJDML_DRSJ = :pDRSJ and XLWBBJDML_WHRID = :pWHRID");
SQL.ParamByName("pWHRID").Value = txtTimeSpan.Value.Split('|')[0];
SQL.ParamByName("pDRSJ").Value = CMISproConvert.StrToDateTime(txtTimeSpan.Value.Split('|')[1]);
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
sWBBJDID = ds.Tables[0].Rows[0][0].ToString().Trim();
}
else
{
return;
}
sXLBJDID = XLBJDUtils.FetEmptyStr(PageParam.GetRTrimString("BJDID"));
TPageParams pageParams = new TPageParams();
pageParams.UrlPath = "XLBJD_WBBJDMXList.aspx";
pageParams.AddString("BJRQ", PageParam.GetRTrimString("BJRQ"));
pageParams.AddString("BJFLID", PageParam.GetRTrimString("BJFLID"));
pageParams.AddString("BJDID", PageParam.GetRTrimString("BJDID"));
pageParams.AddString("JGBID", PageParam.GetRTrimString("JGBID"));
pageParams.AddString("JGCIDS", PageParam.GetRTrimString("JGCIDS"));
pageParams.AddString("BJLY", PageParam.GetRTrimString("BJLY"));
pageParams.AddString("XSQYID", PageParam.GetRTrimString("XSQYID"));
pageParams.AddString("PJLX", PageParam.GetRTrimString("PJLX"));
pageParams.AddString("FKQXNR", PageParam.GetRTrimString("FKQXNR"));
pageParams.AddString("SYDWID", PageParam.GetRTrimString("SYDWID"));
pageParams.AddString("HSBZ", PageParam.GetRTrimString("HSBZ"));
pageParams.AddString("JCLLX", PageParam.GetRTrimString("JCLLX"));
pageParams.AddString("LJJCLLX", PageParam.GetRTrimString("LJJCLLX"));
pageParams.AddString("NeedUpdBJDHQCLCB", PageParam.GetRTrimString("NeedUpdBJDHQCLCB"));
pageParams.AddString("BJDHQLY", PageParam.GetRTrimString("BJDHQLY"));
pageParams.AddString("TBJCLID", PageParam.GetRTrimString("TBJCLID"));
pageParams.AddString("LBJCLID", PageParam.GetRTrimString("LBJCLID"));
pageParams.AddString("TJ", PageParam.GetRTrimString("TJ"));
pageParams.AddString("LJ", PageParam.GetRTrimString("LJ"));
pageParams.AddString("CPBJMRXSWS", PageParam.GetRTrimString("CPBJMRXSWS"));
pageParams.AddString("YXLRBJCP", PageParam.GetRTrimString("YXLRBJCP"));
pageParams.AddString("WBBJDID", sWBBJDID);
//当前选中行的报价单ID
pageParams.AddString("SELBJDID", sXLBJDID);
//由程序打开说明是第一次进入,传递参数
pageParams.AddExtString("First_Open", "First_Open");
pageParams.AddString("txtOpen", txtOpen.ClientID);
OpenDialogClickBtn(pageParams, btnAutoClose.ClientID);
}
}
//外部报价单内容页回调
protected void btnOpenMXJL_Click(object sender, EventArgs e)
{
if (txtSource.Value.Trim().Equals("OPEN"))
{
btnOpen_Click(null, null);
}
}
//复制内容回调
protected void btnOpenFZR_Click(object sender, EventArgs e)
{
btnOpenMXByFZNR_Click(null, null);
}
//外部报价单明细页回调
protected void btnAutoClose_Click(object sender, EventArgs e)
{
if (txtOpen.Value.Trim().Equals("CLOSE"))
{
CloseWindow();
}
}
#endregion
//删除导入
protected void btnSCDRNR_Click(object sender, EventArgs e)
{
//判断是否导入报价单了
sWBBJDID = ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLWBBJDML_WBBJDID"].ToString().Trim();
sXLBJDID = XLBJDUtils.FetEmptyStr(ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLWBBJDML_BJDID"].ToString().Trim());
string sErrorMsg = "";
string sSQL = "";
//未导入过
if (sXLBJDID.Trim().Equals(""))
{
Confirm.Register("IsQD", "是否确认删除导入内容?");
Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No;
if (Confirm.GetValue("IsQD").Trim().Equals(""))
{
Confirm.Ask("IsQD");
return;
}
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
{
//表示进行了提示并选择了取消,直接返回或其他处理
Confirm.Clear();
return;
}
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
{
//表示进行了提示并选择了确认
Confirm.Clear();
}
if (!XLWBBJDUtils.DeleteXLWBBJD(sWBBJDID, sXLBJDID, out sErrorMsg))
{
ShowMessage(sErrorMsg);
}
}
else
{
//导入判断
sSQL = string.Format("select top 1 XLXSBJDMX_BJDID from XLXSBJDMX "
+ " where 1 = 1 "
+ " and XLXSBJDMX_WBBJDID= '{0}' "
+ " and XLXSBJDMX_BJDID= '{1}' ", sWBBJDID, sXLBJDID);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("已经导入报价单,不允许删除!");
return;
}
else
{
Confirm.Register("IsQD", "是否确认删除导入内容?");
Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No;
if (Confirm.GetValue("IsQD").Trim().Equals(""))
{
Confirm.Ask("IsQD");
return;
}
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
{
//表示进行了提示并选择了取消,直接返回或其他处理
Confirm.Clear();
return;
}
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
{
//表示进行了提示并选择了确认
Confirm.Clear();
}
if (!XLWBBJDUtils.DeleteXLWBBJD(sWBBJDID, sXLBJDID, out sErrorMsg))
{
ShowMessage(sErrorMsg);
}
}
}
btnCallBack_Click(null, null);
}
/// <summary>
/// 刷新界面使用
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnCallBack_Click(object sender, EventArgs e)
{
moduleGV_PageIndexChanging(null, null);
}
protected void ContentGrid_RowDoubleClick(object sender, GThinking.N_CONTROL.RowDoubleClickEventArgs e)
{
btnWBBJDMX_Click(null, null);
}
#endregion
#region 私有函数
private string GetQuerySql()
{
StringBuilder sbSql = new StringBuilder();
sbSql.AppendLine("SELECT XLWBBJDML_WBBJDID,XLWBBJDML_BJDID,XLWBBJDML_WBBJDMC,XLWBBJDML_EXCEL,XLWBBJDML_SHEET,XLWBBJDML_DRSJ,");
sbSql.AppendLine(" XLWBBJDML_WHR,XLWBBJDML_WHSJ ");
sbSql.AppendLine(" from XLWBBJDML ");
sbSql.AppendLine(" where 1=1 ");
//BJCP|报价产品、BJTP|报价图片
//BJWL|报价物料、XSHT|销售合同
sbSql.AppendLine(" and XLWBBJDML_SJLY = 'BJWL' ");
sbSql.AppendLine(" and XLWBBJDML_BJDID =:pBJDID ");
entity.Param.Add("pBJDID", sXLBJDID);
sbSql.AppendLine(" order by XLWBBJDML_WBBJDID ");
return sbSql.ToString();
}
//sWBBJDID:当前外部报价单ID、sSELBJDID:当前外部报价单对应的报价单ID、sBJDID:主页面传入的报价单ID,实际与选中的报价单ID一致
#endregion
#region 报表事件
protected void OpenBB(string sBJDID, string sTimeSpan)
{
string sWizard = "";
string sBBYSJS = "";
string sReportizard = "";
string sBBMB = "";
//导入前的缺省样式
string sXML = "<?xml version=\"1.0\" encoding=\"GB2312\"?><Report Version=\"1.3\" Name=\"新报表\" Created=\"2015-08-20 08:59:13\" Modified=\"2015-08-20 "
+ " 08:59:13\" PaperWidth=\"8268\" PaperHeight=\"11693\" RowCount=\"1\" ColumnCount= "
+ " \"9\"><DataSets></DataSets><Variables></Variables><AliasList></AliasList><Images></Images><Rows></Rows><Columns><Column Column=\"4\" Width= "
+ " \"1271\"/></Columns><Cells><Style Type=\"A\" DisplayFormat=\"\" FontName=\"宋体\" FontSize=\"9\" FontColor=\"#000000\" FontBold=\"N\" "
+ " FontItalic=\"N\" FontUnderline=\"N\" FontStrikeout=\"N\" LeftBorderStyle=\"0\" LeftBorderColor=\"#000000\" LeftBorderWidth=\"0\" "
+ " TopBorderStyle=\"0\" TopBorderColor=\"#000000\" TopBorderWidth=\"0\" RightBorderStyle=\"0\" RightBorderColor=\"#000000\" RightBorderWidth= "
+ " \"0\" BottomBorderStyle=\"0\" BottomBorderColor=\"#000000\" BottomBorderWidth=\"0\" DiagLT2RBStyle=\"0\" DiagLT2RBColor=\"#000000\" "
+ " DiagLT2RBWidth=\"0\" DiagLB2RTStyle=\"0\" DiagLB2RTColor=\"#000000\" DiagLB2RTWidth=\"0\" Color=\"#FFFFFF\" Transparent=\"N\" Pattern=\"1\" "
+ " PatternColor=\"#000000\" HAlignment=\"A\" VAlignment=\"C\" LeftMargin=\"39\" TopMargin=\"39\" RightMargin=\"39\" BottomMargin=\"39\" "
+ " ThreePartText=\"N\" TextControl=\"C\" LineSpace=\"1\" Locked=\"N\" Preview=\"Y\" Print=\"Y\" SmallFontWordWrap=\"N\" FormatFont=\"N\"><Cell Row=\"0\" Column=\"0\" Name=\"新报表\"/></Style> "
+ " <Style FontSize=\"12\" FontBold=\"Y\" HAlignment=\"C\"><Cell Row=\"1\" Column=\"1\" Value=\"物料编码\"/> "
+ " <Cell Row=\"1\" Column=\"2\" Value=\"计量单位\"/> "
+ " <Cell Row=\"1\" Column=\"3\" Value=\"报价数量\"/> "
+ " </Style></Cells></Report> ";
byte[] b4 = new byte[0];
b4 = Encoding.Default.GetBytes(sXML);
byte[] zipbuf4 = ZlibCompress.CompressBytes(b4);
sBBMB = Convert.ToBase64String(zipbuf4);
try
{
string clientid = this.txtSource.ClientID;
string sRun = string.Format("document.all.ActiveXBBForBBYS.OperationType = 'DesignReport';document.all.ActiveXBBForBBYS.EncodedReport = \'{0}\';", sBBMB);
sBBYSJS = @" <script language='JavaScript' for='ActiveXBBForBBYS' event='OnSave'> "
+ " function AddPostParam1(sParamsPref, sParamName, sParamValue) "
+ " { "
+ " if (sParamsPref.length > 0) "
+ " sParamsPref += '&'; "
+ " return sParamsPref + encodeURIComponent(sParamName) + '=' + "
+ " encodeURIComponent(sParamValue); "
+ " } "
+ " function ShowCodeClassDialog1(executor, eventArgs) "
+ " { "
+ " top._GT_CURRENT.owner.document.getElementById('ctl00_CPHButton_btnCallBack').click();"
+ " top._GT_CURRENT.owner.GT_MinWindow._close();"
+ " if (executor.get_responseAvailable()) "
+ " { "
+ " } "
+ " else "
+ " { "
+ " if (executor.get_timedOut()) "
+ " { "
+ " alert('连接超时!'); "
+ " } "
+ " else if (executor.get_aborted()) "
+ " { "
+ " alert('操作被终止!'); "
+ " } "
+ " } "
+ " } "
+ " function SaveBB(sBBYS) "
+ " { "
+ " var sParams = ''; "
+ " sParams = AddPostParam1(sParams, 'BBYS', sBBYS); "
+ " sParams = AddPostParam1(sParams, 'BJDID', '" + sBJDID + "'); "
+ " sParams = AddPostParam1(sParams, 'TimeSpan', '" + sTimeSpan + "'); "
+ " var wRequest = new Sys.Net.WebRequest(); "
+ " wRequest.set_url('../../components/N_XLXSBJ/XLBJD_WBXLWLDRList.aspx'); "
+ " wRequest.set_httpVerb('POST'); "
+ " wRequest.set_body(sParams); "
+ " wRequest.add_completed(ShowCodeClassDialog1); "
+ " wRequest.invoke(); "
+ " } "
+ " SaveBB(ActiveXBBForBBYS.EncodedReport); "
+ " </script> ";
TPageParams tpp = new TPageParams();
tpp.Title = "复制内容导入";
tpp.UrlPath = "../N_MODEL/Dialog/BBYS_YSSJ.aspx";
tpp.AddString("BBLink", "Y");
tpp.AddExtString("sRun", sRun.Trim());
tpp.AddExtString("Save", sBBYSJS);
tpp.AddExtString("Wizard", sWizard);
tpp.AddExtString("ReportWizard", sReportizard);
tpp.AddString("FormTitle", "报表样式");
string sFunction = "function CallBackOpenMXFun() {"
+ " document.getElementById('" + btnOpenFZR.ClientID.ToString() + "').click();"
+ " }";
OpenFuncModuleDialogWithCallBack(100210034, tpp, "CallBackOpenMXFun", sFunction);
//OpenFuncModuleDialog(100210034, tpp);
}
catch
{
ShowMessage("打开报表失败!");
}
}
public void ReadBBYS(string sRep, string sBJDID, string sTimeSpan)
{
Dictionary<string, string> dicColumn = new Dictionary<string, string>();
dicColumn.Clear();
dicColumn.Add("1", "XLWBBJDNR_LMNR01");
dicColumn.Add("2", "XLWBBJDNR_LMNR02");
dicColumn.Add("3", "XLWBBJDNR_LMNR03");
List<string> lst = new List<string>();
lst.Clear();
int leng = dicColumn.Count;
string sBBMB = "";
string sRow = "";
string sColumn = "";
string sValue = "";
sBJDID = XLBJDUtils.FetEmptyStr(sBJDID);
bool Success = false;
string sWBBJDID = "";
double pCount = 0;
string sDateTime = sTimeSpan.Split('|')[1];
byte[] b = Convert.FromBase64String(sRep);
byte[] zipbuf = new byte[0];
zipbuf = ZlibCompress.DecompressBytes(b);
sBBMB = System.Text.Encoding.Default.GetString(zipbuf, 0, zipbuf.Length);
if (!string.IsNullOrEmpty(sBBMB.Trim()))
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sSQL = new TSQL(dberp);
try
{
dberp.BeginTrans();
sSQL.Clear();
sSQL.Add("insert into XLWBBJDNR(");
sSQL.Add(" XLWBBJDNR_BJDID, XLWBBJDNR_WBBJDID, XLWBBJDNR_DRHH, ");
sSQL.Add(" XLWBBJDNR_LMNR01, XLWBBJDNR_LMNR02, XLWBBJDNR_LMNR03, XLWBBJDNR_LMNR04, XLWBBJDNR_LMNR05, XLWBBJDNR_LMNR06,");
sSQL.Add(" XLWBBJDNR_LMNR07, XLWBBJDNR_LMNR08, XLWBBJDNR_LMNR09)");
sSQL.Add("values (:XLWBBJDNR_BJDID, :XLWBBJDNR_WBBJDID, :XLWBBJDNR_DRHH, ");
sSQL.Add(" :XLWBBJDNR_LMNR01, :XLWBBJDNR_LMNR02, :XLWBBJDNR_LMNR03, :XLWBBJDNR_LMNR04, :XLWBBJDNR_LMNR05, :XLWBBJDNR_LMNR06,");
sSQL.Add(" :XLWBBJDNR_LMNR07, :XLWBBJDNR_LMNR08, :XLWBBJDNR_LMNR09)");
XmlDocument xml = new XmlDocument();
xml.LoadXml(sBBMB);
XmlNode XmlRoot = xml.SelectSingleNode("Report");
XmlNodeList XmlRootList = XmlRoot.SelectNodes("Cells");
foreach (XmlNode XmlKey in XmlRootList)
{
//XmlNodeList XmlKey1 = XmlKey.SelectSingleNode("Style");
for (int i = 0; i < XmlKey.ChildNodes.Count; i++)
{
/*
<Cells>
<Style Type="A" DisplayFormat="" FontName="宋体" FontSize="9" ******>
<Cell Row="0" Column="0" Name="新报表"/>
<Cell Row="2" Column="1" Value="DJYVP"/>
<Cell Row="2" Column="2" Value="12×3×1"/>
<Cell Row="2" Column="10" Value="111"/>
<Cell Row="3" Column="1" Value="DJYVP"/>
<Cell Row="3" Column="2" Value="12×4×1"/>
<Cell Row="3" Column="10" Value="222"/>
</Style>
<Style FontSize="12" FontBold="Y" HAlignment="C">
<Cell Row="1" Column="1" Value="物料编码"/>
<Cell Row="1" Column="2" Value="计量单位"/>
<Cell Row="1" Column="3" Value="报价数量"/>
</Style>
</Cells>
*/
XmlNode XmlKeyC = XmlKey.ChildNodes[i];
if (XmlKeyC.ChildNodes.Count > 0)
{
int j = 0;
for (; j < XmlKeyC.ChildNodes.Count; j++)
{
sRow = XmlKeyC.ChildNodes[j].Attributes["Row"].Value.Trim();
sColumn = XmlKeyC.ChildNodes[j].Attributes["Column"].Value.Trim();
if (CMISproConvert.StrToFloat(sRow) >= 2)
{
sValue = XmlKeyC.ChildNodes[j].Attributes["Value"].Value.Trim();
break;
}
}
lst.Clear();
j++;
for (; j < XmlKeyC.ChildNodes.Count; j++)
{
if (!sRow.Equals(XmlKeyC.ChildNodes[j].Attributes["Row"].Value.Trim()))
{
if (dicColumn.ContainsKey(sColumn))
{
sSQL.ParamByName(dicColumn[sColumn]).Value = sValue;
lst.Add(sColumn);
}
if (!Success)
{
sWBBJDID = XLWBBJDUtils.GetNewWBBJDID();
}
for (int m = 1; m <= leng; m++)
{
if (!lst.Contains(m.ToString().Trim()))
{
sSQL.ParamByName(dicColumn[m.ToString().Trim()]).Value = "";
}
}
sSQL.ParamByName("XLWBBJDNR_BJDID").Value = sBJDID;
sSQL.ParamByName("XLWBBJDNR_WBBJDID").Value = sWBBJDID;
sSQL.ParamByName("XLWBBJDNR_DRHH").Value = CMISproConvert.StrToFloat(sRow);
dberp.ExecSQL(sSQL);
lst.Clear();
Success = true;
}
else
{
if (dicColumn.ContainsKey(sColumn))
{
sSQL.ParamByName(dicColumn[sColumn]).Value = sValue;
lst.Add(sColumn);
}
}
sRow = XmlKeyC.ChildNodes[j].Attributes["Row"].Value.Trim();
sColumn = XmlKeyC.ChildNodes[j].Attributes["Column"].Value.Trim();
sValue = XmlKeyC.ChildNodes[j].Attributes["Value"].Value.Trim();
}
//处理最后一行
if (CMISproConvert.StrToFloat(sRow) >= 2)
{
if (dicColumn.ContainsKey(sColumn))
{
sSQL.ParamByName(dicColumn[sColumn]).Value = sValue;
lst.Add(sColumn);
}
if (!Success)
{
sWBBJDID = XLWBBJDUtils.GetNewWBBJDID();
}
for (int m = 1; m <= leng; m++)
{
if (!lst.Contains(m.ToString().Trim()))
{
sSQL.ParamByName(dicColumn[m.ToString().Trim()]).Value = "";
}
}
sSQL.ParamByName("XLWBBJDNR_BJDID").Value = sBJDID;
sSQL.ParamByName("XLWBBJDNR_WBBJDID").Value = sWBBJDID;
sSQL.ParamByName("XLWBBJDNR_DRHH").Value = CMISproConvert.StrToFloat(sRow);
dberp.ExecSQL(sSQL);
lst.Clear();
Success = true;
if (CMISproConvert.StrToFloat(sRow) > pCount)
{
pCount = CMISproConvert.StrToFloat(sRow);
}
}
}
}
}
if (Success)
{
//插入默认数据
ComplementXLWBBJDML(sWBBJDID, sBJDID, sDateTime, pCount.ToString().Trim());
//处理标准
//XLWBBJDUtils.ConvertWBBJDMX_XLBZID(dberp, sSQL, sWBBJDID, sBJDID, sDateTime, tSession.UserId);
}
dberp.CommitTrans();
}
catch (Exception ex)
{
Success = false;
dberp.RollbackTrans();
ShowMessage(ex.Message);
}
}
}
/// <summary>
/// 插入赋值内容导入的默认格式
/// </summary>
/// <param name="sWBBJDID"></param>
/// <param name="sBJDID"></param>
/// <param name="sRow"></param>
private void ComplementXLWBBJDML(string sWBBJDID, string sXLBJDID, string sDateTime, string sRow)
{
string sMC = "复制内容导入:" + tSession.UserName + "-" + DateTime.Now.ToString().Trim();
string sErrMsg = "";
//导入时同步指定“02|计量单位”栏目对应XLWBBJDLM_ZDLMLX为“4|计量单位”、“03|报价数量”栏目对应XLWBBJDLM_ZDLMLX为“5|报价数量”。
Dictionary<string, string> dicLMMC = new Dictionary<string, string>();
dicLMMC.Clear();
dicLMMC.Add("02", "计量单位");
dicLMMC.Add("03", "报价数量");
Dictionary<string, string> dicZDLMLX = new Dictionary<string, string>();
dicZDLMLX.Clear();
dicZDLMLX.Add("02", "4");
dicZDLMLX.Add("03", "5");
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
#region 生成XLWBBJDML表数据--WBBJDID|外部报价单/BJDID
SQL.Clear();
SQL.Add("insert into XLWBBJDML");
SQL.Add(" ( XLWBBJDML_BJDID,XLWBBJDML_WBBJDID,XLWBBJDML_SJLY,XLWBBJDML_WBBJDMC, ");
SQL.Add(" XLWBBJDML_LMHHS,XLWBBJDML_LMHHZ,XLWBBJDML_NRHHS,XLWBBJDML_NRHHZ, ");
SQL.Add(" XLWBBJDML_DRSJ,XLWBBJDML_YCL,XLWBBJDML_WHR,XLWBBJDML_WHRID,XLWBBJDML_WHSJ ) ");
SQL.Add(" values ");
SQL.Add(" ( :pXLBJDID,:pWBBJDID,'BJWL',:pWBBJDMC, ");
SQL.Add(" :pLMHHS,:pLMHHZ,:pNRHHS,:pNRHHZ, ");
SQL.Add(" :pDRSJ, :pYCL, :pWHR,:pWHRID,:pWHSJ ) ");
SQL.ParamByName("pXLBJDID").Value = sXLBJDID;
SQL.ParamByName("pWBBJDID").Value = sWBBJDID;
SQL.ParamByName("pWBBJDMC").Value = sMC;
SQL.ParamByName("pLMHHS").Value = 1;
SQL.ParamByName("pLMHHZ").Value = 1;
SQL.ParamByName("pNRHHS").Value = 2;
SQL.ParamByName("pNRHHZ").Value = CMISproConvert.StrToFloat(sRow);
SQL.ParamByName("pDRSJ").Value = CMISproConvert.StrToDateTime(sDateTime);
SQL.ParamByName("pYCL").Value = "Y";
SQL.ParamByName("pWHR").Value = tSession.UserName;
SQL.ParamByName("pWHRID").Value = tSession.UserId;
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
dberp.ExecSQL(SQL);
#endregion
#region 生成XLWBBJDLM表数据----WBBJDID|外部报价单ID=======LMBH|栏目编号/BJDID
//此处支持报价产品与型号规格一并插入
SQL.Clear();
SQL.Add("insert into XLWBBJDLM ( ");
SQL.Add(" XLWBBJDLM_BJDID,XLWBBJDLM_WBBJDID,XLWBBJDLM_LMBH,XLWBBJDLM_LMMC,XLWBBJDLM_ZDLMLX,XLWBBJDLM_WHR,XLWBBJDLM_WHRID,XLWBBJDLM_WHSJ) ");
SQL.Add("values ( ");
SQL.Add(" :pXLBJDID,:pWBBJDID,:pLMBH,:pLMMC,:pZDLMLX,:pWHR,:pWHRID,:pWHSJ) ");
//循环dic
foreach (KeyValuePair<string, string> kvp in dicLMMC)
{
SQL.ParamByName("pXLBJDID").Value = sXLBJDID;
SQL.ParamByName("pWBBJDID").Value = sWBBJDID;
SQL.ParamByName("pLMBH").Value = kvp.Key.PadLeft(2, '0');
SQL.ParamByName("pLMMC").Value = kvp.Value;
SQL.ParamByName("pZDLMLX").Value = dicZDLMLX[kvp.Key];
SQL.ParamByName("pWHRID").Value = tSession.UserId;
SQL.ParamByName("pWHR").Value = tSession.UserName;
SQL.ParamByName("pWHSJ").Value = CMISproConvert.StrToDateTime(sDateTime);
dberp.ExecSQL(SQL);
}
#endregion
#region 生成XLWBBJDMX记录
XLWBBJDUtils.InsXLWBBJDMX(dberp, SQL, sWBBJDID, sXLBJDID, tSession, ref sErrMsg);
if (!sErrMsg.Equals(""))
{
throw new Exception(sErrMsg);
}
//A|× B|*
//string sXLJGU007 = GetOption(102579000, "XLJGU007");
//SQL.Clear();
//SQL.Add("insert into XLWBBJDMX(XLWBBJDMX_WBBJDID,XLWBBJDMX_DRHH,XLWBBJDMX_BJDID, ");
//SQL.Add(" XLWBBJDMX_WLID,XLWBBJDMX_XLXHID,XLWBBJDMX_XLGGID, ");
//SQL.Add(" XLWBBJDMX_XLBZID,XLWBBJDMX_DYDJID,XLWBBJDMX_XLYSID, ");
//SQL.Add(" XLWBBJDMX_JLDW,XLWBBJDMX_BJSL,XLWBBJDMX_WHR,XLWBBJDMX_WHRID,XLWBBJDMX_WHSJ)");
//SQL.Add("select XLWBBJDNR_WBBJDID,XLWBBJDNR_DRHH,XLWBBJDNR_BJDID, ");
//SQL.Add(" XLWBBJDNR_LMNR01,XLXLB_XLXHID, ");
////A|× B|*
//if (sXLJGU007.Equals("B"))
//{
// SQL.Add(" replace( XLXLB_XLGGID,'×','*') as XLGGID, ");
//}
//else
//{
// SQL.Add(" replace( XLXLB_XLGGID,'*','×') as XLGGID, ");
//}
//SQL.Add(" XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID, ");
//SQL.Add(" XLWBBJDNR_LMNR02,XLWBBJDNR_LMNR03,:pWHR,:pWHRID,:pWHSJ ");
//SQL.Add("from XLWBBJDNR ");
//SQL.Add(" left join XLXLB on XLXLB_WLID=XLWBBJDNR_LMNR01 ");
//SQL.Add(" where XLWBBJDNR_WBBJDID=:pWBBJDID ");
//SQL.Add(" and XLWBBJDNR_BJDID=:pBJDID ");
//SQL.Add(" and not exists(select 1 from XLWBBJDMX where XLWBBJDMX_WBBJDID=XLWBBJDNR_WBBJDID and XLWBBJDMX_BJDID=XLWBBJDNR_BJDID and XLWBBJDMX_DRHH=XLWBBJDNR_DRHH) ");
//SQL.ParamByName("pWBBJDID").Value = sWBBJDID;
//SQL.ParamByName("pBJDID").Value = sBJDID;
//SQL.ParamByName("pWHR").Value = tSession.UserName;
//SQL.ParamByName("pWHRID").Value = tSession.UserId;
//SQL.ParamByName("pWHSJ").Value = CMISproConvert.StrToDateTime(sDateTime);
//dberp.ExecSQL(SQL);
#endregion
}
#endregion
}
}