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

886 lines
32 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 GThinking.N_MISPRO;
using GThinking.N_CONTROL;
using GThinking.N_MODEL.Dialog;
namespace GThinking.N_XLXSBJ
{
public partial class XSYBJSQFJXXInfo : SingleCardBase
{
XSYBJSQFJXX entity = new XSYBJSQFJXX();
#region Page类事件
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860082;
this.UMName = "线缆销售报价附加信息";
base.CurMaster = Master;
this.CurEntity = entity;
this.PageHeight = 500;
this.PageWidth = 700;
base.InitPage();
}
#endregion
#region 模板继承事件
protected override void LoadRecord()
{
if (!IsPostBack)
{
this.entity.Param.Add("XLXSBJKZXXSZ_BH", PageParam.GetRTrimString("XLXSBJKZXXSZ_BH"));
}
else
{
this.entity.Param.Add("XLXSBJKZXXSZ_BH", txtBH.Value.Trim());
}
base.LoadRecord();
if (cbxSJLX.SelectedValue.Trim().Equals("A"))
{
txtSZXQSZ.Text = txtQSZ_hid.Value.ToString().Trim();
}
else if (cbxSJLX.SelectedValue.Trim().Equals("B") || cbxSJLX.SelectedValue.Trim().Equals("D"))
{
txtZFXQSZ.Text = txtQSZ_hid.Value.ToString().Trim();
}
else
{
datRQXQSZ.Text = txtQSZ_hid.Value.ToString().Trim();
}
}
protected override void OnNewRecorder()
{
base.OnNewRecorder();
txtZFXQSZ.Style["display"] = "none";
datRQXQSZ.Style["display"] = "none";
txtKZZD.Value = "";
cbxSJLX.SelectedValue = "A";
cbxSRFS.SelectedValue = "A";
txtWHR.Text = tSession.UserName;
txtWHRID.Value = tSession.UserId;
datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now);
}
protected override void OnCopyRecorder()
{
base.OnCopyRecorder();
txtWHR.Text = tSession.UserName;
txtWHRID.Value = tSession.UserId;
datWHSJ.Value = Convert.ToString(System.DateTime.Now);
}
protected override void SetControlState()
{
base.SetControlState();
txtWHR.Enabled = false;
datWHSJ.Enabled = false;
if (ControlState != TControlState.ctsBrowse && ControlState != TControlState.ctsNull)
{
cbxSJLX.Enabled = true;
cbxSRFS.Enabled = cbxSJLX.SelectedValue.Trim().Equals("B");
txtJLDW.Enabled = cbxSJLX.SelectedValue.Trim().Equals("A");
txtROWS.Enabled = cbxSJLX.SelectedValue.Trim().Equals("D");
txtWIDTH.Enabled = !cbxSJLX.SelectedValue.Trim().Equals("A") && !cbxSJLX.SelectedValue.Trim().Equals("C");
txtMJLB.Enabled = !cbxSRFS.SelectedValue.Trim().Equals("A") && txtMJSQL.Text.Trim().Equals("");
txtMJSQL.Enabled = !cbxSRFS.SelectedValue.Trim().Equals("A") && txtMJLB.Text.Trim().Equals("");
if (ControlState == TControlState.ctsEdit)
{
cbxSJLX.Enabled = false;
}
}
}
protected override bool DataLogicValid()
{
if (txtWIDTH.Value < 0)
{
ShowMessage("显示宽度不允许小于零!");
return false;
}
if (txtROWS.Value < 0)
{
ShowMessage("显示行数不允许小于零!");
return false;
}
if (txtBJSX.Value < 0)
{
ShowMessage("编辑顺序不允许小于零!");
return false;
}
if (!cbxSRFS.SelectedValue.Trim().Equals("A"))
{
if (txtMJSQL.Text.Trim().Equals("") && txtMJLB.Text.Trim().Equals(""))
{
ShowMessage("枚举列表与SQL命令不允许同时为空!");
return false;
}
if (!txtMJLB.Text.Trim().Equals("") && !txtZFXQSZ.Text.Trim().Equals(""))
{
string[] array = txtMJLB.Text.Trim().Replace("\r\n", ",").Split(',');
ArrayList list = new ArrayList(array);
if (cbxSRFS.SelectedValue.Trim().Equals("C"))
{
string[] arrayQSZ = txtZFXQSZ.Text.Trim().Replace("\r\n", ",").Split(',');
ArrayList QSZlist = new ArrayList(arrayQSZ);
for (int i = 0; i < QSZlist.Count; i++)
{
if (!list.Contains(QSZlist[i].ToString().Trim()))
{
ShowMessage("缺省值不在枚举的值域中!");
return false;
}
}
}
else if (cbxSRFS.SelectedValue.Trim().Equals("B"))
{
if (!list.Contains(txtZFXQSZ.Text.Trim()))
{
ShowMessage("缺省值不在枚举的值域中!");
return false;
}
}
}
}
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSBJKZXXSZ where XLXSBJKZXXSZ_MC = '{0}' and XLXSBJKZXXSZ_BH <> '{1}'", txtKZXXMC.Text.Trim(), txtBH.Value.Trim())))
{
ShowMessage("已存在名称相同的附加信息,不允许保存!");
return false;
}
if (txtKZZD.Value.Trim().Equals("溢出"))
{
if (cbxSJLX.SelectedValue.Trim().Equals("A"))
{
ShowMessage("数值型附加信息已超过五个!");
return false;
}
else if (cbxSJLX.SelectedValue.Trim().Equals("B"))
{
ShowMessage("字符型附加信息已超过十个!");
return false;
}
else if (cbxSJLX.SelectedValue.Trim().Equals("C"))
{
ShowMessage("日期型附加信息已超过五个!");
return false;
}
else if (cbxSJLX.SelectedValue.Trim().Equals("D"))
{
ShowMessage("文本型附加信息已超过五个!");
return false;
}
}
return base.DataLogicValid();
}
protected override bool Master_BeforeSaveAction(object sender, EventArgs e)
{
if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy)
{
txtBH.Value = CMISproDataBase.GetYWBHByN("DBERP", "XLXSBJKZXXSZ", "XLXSBJKZXXSZ_BH", 6);
LoadKZZD(cbxSJLX.SelectedValue.Trim());
}
if (cbxSJLX.SelectedValue.Trim().Equals("A"))
{
txtQSZ_hid.Value = txtSZXQSZ.Text;
}
else if (cbxSJLX.SelectedValue.Trim().Equals("B") || cbxSJLX.SelectedValue.Trim().Equals("D"))
{
txtQSZ_hid.Value = txtZFXQSZ.Text;
}
else
{
txtQSZ_hid.Value = datRQXQSZ.Text;
}
return base.Master_BeforeSaveAction(sender, e);
}
protected override bool CanDelete()
{
if (XSYBJSQFJXX.bUsed(txtBH.Value.Trim()))
{
return false;
}
return base.CanDelete();
}
protected override void SetComboxItems()
{
base.SetComboxItems();
cbxSJLX.Items.Add(new ListItem("数值型", "A"));
cbxSJLX.Items.Add(new ListItem("字符型", "B"));
cbxSJLX.Items.Add(new ListItem("日期型", "C"));
cbxSJLX.Items.Add(new ListItem("文本型", "D"));
cbxSJLX.ShowValue = false;
cbxSRFS.Items.Add(new ListItem("直接输入", "A"));
cbxSRFS.Items.Add(new ListItem("单选", "B"));
cbxSRFS.Items.Add(new ListItem("多选", "C"));
cbxSRFS.ShowValue = false;
WorkFlowUtils.SetCheckedDropDownList_WFPROC("XLXSBJ_BJD", cbxWHBZ);
WorkFlowUtils.SetCheckedDropDownList_WFPROC("XLXSBJ_BJD", cbxXSBZ);
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
if (ControlState == TControlState.ctsBrowse)
SQL.Add(" select XLXSBJFL_BJFLID,case isnull(XLXSBJFL_TYBZ,'N') when 'Y' then rtrim(XLXSBJFL_BJFLMC)||'(停用)' else XLXSBJFL_BJFLMC end as BJFLMC from XLXSBJFL where 1=1 order by XLXSBJFL_XSXH,XLXSBJFL_BJFLID ");
else
SQL.Add(" select XLXSBJFL_BJFLID, XLXSBJFL_BJFLMC from XLXSBJFL where 1=1 and isnull(XLXSBJFL_TYBZ,'N') <> 'Y' order by XLXSBJFL_XSXH,XLXSBJFL_BJFLID ");
DataSet ds = dberp.OpenDataSet(SQL);
cbxSYBJFL.ClearItems();
if (ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
cbxSYBJFL.Items.Add(new ListItem(ds.Tables[0].Rows[i][1].ToString().Trim(), ds.Tables[0].Rows[i][0].ToString().Trim()));
}
}
}
#endregion
#region 控件事件
protected void cbxSRFS_SelectedIndexChanged(object sender, EventArgs e)
{
if (cbxSRFS.SelectedValue.Trim().Equals("A"))
{
txtMJLB.Text = "";
txtMJSQL.Text = "";
txtMJLB.Enabled = false;
txtMJSQL.Enabled = false;
}
else
{
txtROWS.Value = 0;
txtMJLB.Enabled = txtMJSQL.Text.Trim().Equals("");
txtMJSQL.Enabled = txtMJLB.Text.Trim().Equals("");
}
txtROWS.Enabled = cbxSJLX.SelectedValue.Trim().Equals("D") && cbxSRFS.SelectedValue.Trim().Equals("A");
}
protected void cbxSJLX_SelectedIndexChanged(object sender, EventArgs e)
{
if (!cbxSJLX.SelectedValue.Trim().Equals("A"))
{
txtJLDW.Enabled = false;
txtJLDW.Text = "";
}
else
{
txtJLDW.Enabled = true;
txtWIDTH.Enabled = true;
}
if (cbxSJLX.SelectedValue.Trim().Equals("B"))
{
cbxSRFS.Enabled = true;
txtWIDTH.Enabled = true;
txtROWS.Enabled = false;
}
else if (cbxSJLX.SelectedValue.Trim().Equals("D"))
{
cbxSRFS.SelectedValue = "A";
txtMJLB.Text = "";
txtMJSQL.Text = "";
txtMJLB.Enabled = false;
txtMJSQL.Enabled = false;
cbxSRFS.Enabled = false;
txtWIDTH.Enabled = false;
txtROWS.Enabled = cbxSRFS.SelectedValue.Trim().Equals("A");
}
else
{
cbxSRFS.SelectedValue = "A";
cbxSRFS.Enabled = false;
txtMJLB.Text = "";
txtMJSQL.Text = "";
txtMJLB.Enabled = false;
txtMJSQL.Enabled = false;
if (cbxSJLX.SelectedValue.Trim().Equals("C"))
{
txtWIDTH.Value = 72;
txtWIDTH.Enabled = false;
}
txtROWS.Enabled = false;
}
if (cbxSJLX.SelectedValue.Trim().Equals("A"))
{
txtSZXQSZ.Style["display"] = "block";
txtZFXQSZ.Style["display"] = "none";
datRQXQSZ.Style["display"] = "none";
txtZFXQSZ.Text = "";
datRQXQSZ.Text = "";
}
else if (cbxSJLX.SelectedValue.Trim().Equals("B") || cbxSJLX.SelectedValue.Trim().Equals("D"))
{
txtSZXQSZ.Style["display"] = "none";
txtZFXQSZ.Style["display"] = "block";
datRQXQSZ.Style["display"] = "none";
txtSZXQSZ.Text = "";
datRQXQSZ.Text = "";
}
else
{
txtSZXQSZ.Style["display"] = "none";
txtZFXQSZ.Style["display"] = "none";
datRQXQSZ.Style["display"] = "block";
txtZFXQSZ.Text = "";
txtSZXQSZ.Text = "";
}
}
protected void txtMJLB_TextChanged(object sender, EventArgs e)
{
if (txtMJLB.Text.Trim().Equals(""))
{
txtMJSQL.Enabled = true;
}
else
{
txtMJSQL.Text = "";
txtMJSQL.Enabled = false;
}
}
protected void txtMJSQL_TextChanged(object sender, EventArgs e)
{
if (txtMJSQL.Text.Trim().Equals(""))
{
if (cbxSJLX.SelectedValue.Trim().Equals("B"))
txtMJLB.Enabled = true;
}
else
{
txtMJLB.Text = "";
txtMJLB.Enabled = false;
}
}
#endregion
#region 自定义事件
private void LoadKZZD(string sSJLX)
{
string sKZZDList = GetKZZD(sSJLX).Trim();
string sResult = "";
if (sSJLX.Trim().Equals("A"))
{
if (sKZZDList.Trim().Equals(""))
{
sResult = "KZSZ01";
}
else
{
sKZZDList = "," + sKZZDList.Trim() + ",";
if (!sKZZDList.Contains(",KZSZ01,"))
{
sResult = "KZSZ01";
}
else if (!sKZZDList.Contains(",KZSZ02,"))
{
sResult = "KZSZ02";
}
else if (!sKZZDList.Contains(",KZSZ03,"))
{
sResult = "KZSZ03";
}
else if (!sKZZDList.Contains(",KZSZ04,"))
{
sResult = "KZSZ04";
}
else if (!sKZZDList.Contains(",KZSZ05,"))
{
sResult = "KZSZ05";
}
else
{
sResult = "溢出";
}
}
}
else if (sSJLX.Trim().Equals("B"))
{
if (sKZZDList.Trim().Equals(""))
{
sResult = "KZZF01";
}
else
{
sKZZDList = "," + sKZZDList.Trim() + ",";
if (!sKZZDList.Contains(",KZZF01,"))
{
sResult = "KZZF01";
}
else if (!sKZZDList.Contains(",KZZF02,"))
{
sResult = "KZZF02";
}
else if (!sKZZDList.Contains(",KZZF03,"))
{
sResult = "KZZF03";
}
else if (!sKZZDList.Contains(",KZZF04,"))
{
sResult = "KZZF04";
}
else if (!sKZZDList.Contains(",KZZF05,"))
{
sResult = "KZZF05";
}
else if (!sKZZDList.Contains(",KZZF06,"))
{
sResult = "KZZF06";
}
else if (!sKZZDList.Contains(",KZZF07,"))
{
sResult = "KZZF07";
}
else if (!sKZZDList.Contains(",KZZF08,"))
{
sResult = "KZZF08";
}
else if (!sKZZDList.Contains(",KZZF09,"))
{
sResult = "KZZF09";
}
else if (!sKZZDList.Contains(",KZZF10,"))
{
sResult = "KZZF10";
}
else
{
sResult = "溢出";
}
}
}
else if (sSJLX.Trim().Equals("C"))
{
if (sKZZDList.Trim().Equals(""))
{
sResult = "KZRQ01";
}
else
{
sKZZDList = "," + sKZZDList.Trim() + ",";
if (!sKZZDList.Contains(",KZRQ01,"))
{
sResult = "KZRQ01";
}
else if (!sKZZDList.Contains(",KZRQ02,"))
{
sResult = "KZRQ02";
}
else if (!sKZZDList.Contains(",KZRQ03,"))
{
sResult = "KZRQ03";
}
else if (!sKZZDList.Contains(",KZRQ04,"))
{
sResult = "KZRQ04";
}
else if (!sKZZDList.Contains(",KZRQ05,"))
{
sResult = "KZRQ05";
}
else
{
sResult = "溢出";
}
}
}
else if (sSJLX.Trim().Equals("D"))
{
if (sKZZDList.Trim().Equals(""))
{
sResult = "KZWB01";
}
else
{
sKZZDList = "," + sKZZDList.Trim() + ",";
if (!sKZZDList.Contains(",KZWB01,"))
{
sResult = "KZWB01";
}
else if (!sKZZDList.Contains(",KZWB02,"))
{
sResult = "KZWB02";
}
else if (!sKZZDList.Contains(",KZWB03,"))
{
sResult = "KZWB03";
}
else if (!sKZZDList.Contains(",KZWB04,"))
{
sResult = "KZWB04";
}
else if (!sKZZDList.Contains(",KZWB05,"))
{
sResult = "KZWB05";
}
else
{
sResult = "溢出";
}
}
}
txtKZZD.Value = sResult;
}
private string GetKZZD(string sSJLX)
{
string sKZZD = "";
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sSQL = new TSQL(dberp);
sSQL.Clear();
sSQL.Add("select XLXSBJKZXXSZ_DYZD from XLXSBJKZXXSZ where XLXSBJKZXXSZ_SJLX = :pSJLX ");
sSQL.ParamByName("pSJLX").Value = sSJLX;
DataSet ds = dberp.OpenDataSet(sSQL);
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
sKZZD += ds.Tables[0].Rows[i][0].ToString().Trim() + ",";
}
return sKZZD.TrimEnd(',');
}
#endregion
}
public class XLXSBJFJXX
{
//标签单元格
public static void createLabel(TableRow parentControl, string sDYZD, string sMC, int iRow)
{
TableCell CellFJXX = new TableCell();
CellFJXX.ColumnSpan = 1;
if (iRow > 1)
{
CellFJXX.Attributes.Add("align", "right");
CellFJXX.Attributes.Add("valign", "top");
}
else
CellFJXX.Attributes.Add("align", "right");
//CellFJXX.Style.Add("width", "12%");
gtLabel lblMC = new gtLabel();
lblMC.ID = "lbl" + sDYZD;
lblMC.Text = sMC + ":";
lblMC.Width = 100;
CellFJXX.Controls.Add(lblMC);
parentControl.Cells.Add(CellFJXX);
}
//数值框控件
public static void createNumTextBox(TableRow parentControl, string sDYZD, bool bBT, double fValue, string sJLDW)
{
TableCell CellFJXX = new TableCell();
CellFJXX.ColumnSpan = 1;
CellFJXX.Attributes.Add("align", "left");
gtNumTextBox txtKZSZ = new gtNumTextBox();
txtKZSZ.ID = "txt" + sDYZD;
txtKZSZ.DecimalPlaces = 2;
txtKZSZ.Value = fValue;
txtKZSZ.Width = 100;
if (bBT)
txtKZSZ.Tag = gtNumTextBox.DTagStates.Star;
CellFJXX.Controls.Add(txtKZSZ);
if (!sJLDW.Trim().Equals(""))
{
gtLabel lblJLDW = new gtLabel();
lblJLDW.ID = "txtJLDW" + sDYZD;
lblJLDW.Text = sJLDW;
CellFJXX.Controls.Add(lblJLDW);
}
parentControl.Cells.Add(CellFJXX);
}
//编辑框控件
public static void createTextBox(TableRow parentControl, string sDYZD, bool bBT, string sValue, int iRow, int iWidth, int iColumnSpan,int itotalWidth)
{
TableCell CellFJXX = new TableCell();
CellFJXX.ColumnSpan = 1;
CellFJXX.Attributes.Add("align", "left");
gtTextBox txtKZZF = new gtTextBox();
txtKZZF.ID = "txt" + sDYZD;
txtKZZF.Text = sValue;
if(iRow>0)
txtKZZF.MaxLength = 4000;
else
txtKZZF.MaxLength = 250;
if (bBT)
txtKZZF.Tag = gtTextBox.DTagStates.Star;
if (iRow > 0)
{
txtKZZF.TextMode = TextBoxMode.MultiLine;
txtKZZF.Rows = iRow > 6 ? 6 : iRow;
if (itotalWidth > 0)
{
txtKZZF.Width = itotalWidth - 150;
}
else
{
txtKZZF.Style.Add("width", "90%");
}
CellFJXX.ColumnSpan = iColumnSpan;
}
else
{
if (iWidth == 0)
txtKZZF.Width = 120;
else
txtKZZF.Width = iWidth;
}
CellFJXX.Controls.Add(txtKZZF);
parentControl.Cells.Add(CellFJXX);
}
//下拉单选
public static void createComboBox(TableRow parentControl, string sDYZD, bool bBT, string sValue, string sMJLB, string sMJSQL, int iWidth)
{
TableCell CellFJXX = new TableCell();
CellFJXX.ColumnSpan = 1;
CellFJXX.Attributes.Add("align", "left");
gtComboBox cbxKZZF = new gtComboBox();
cbxKZZF.ID = "cbx" + sDYZD;
if (iWidth == 0)
cbxKZZF.Width = 120;
else
cbxKZZF.Width = iWidth;
if (bBT)
cbxKZZF.Tag = gtComboBox.DTagStates.Star;
if (!sMJLB.Trim().Equals(""))
{
string[] array = sMJLB.Trim().Replace("\r\n", ",").Split(',');
if (!bBT)
cbxKZZF.Items.Add(new ListItem("", ""));
foreach (string sItem in array)
{
cbxKZZF.Items.Add(new ListItem(sItem, sItem));
}
cbxKZZF.ShowValue = false;
}
else if (!sMJSQL.Trim().Equals(""))
TComboBox.SetComboBox("DBERP", cbxKZZF, sMJSQL.Trim(), !bBT);
cbxKZZF.SelectedValue = sValue;
CellFJXX.Controls.Add(cbxKZZF);
parentControl.Cells.Add(CellFJXX);
}
//下拉多选
public static void createCheckedDropDownList(TableRow parentControl, string sDYZD, bool bBT, string sValue, string sMJLB, string sMJSQL, int iWidth)
{
TableCell CellFJXX = new TableCell();
CellFJXX.ColumnSpan = 1;
CellFJXX.Attributes.Add("align", "left");
gtCheckedDropDownList cbxKZZF = new gtCheckedDropDownList();
cbxKZZF.ID = "cbx" + sDYZD;
if (iWidth == 0)
cbxKZZF.Width = 120;
else
cbxKZZF.Width = iWidth;
if (bBT)
cbxKZZF.Tag = gtCheckedDropDownList.DTagStates.Star;
if (!sMJLB.Trim().Equals(""))
{
string[] array = sMJLB.Trim().Replace("\r\n", ",").Split(',');
foreach (string sItem in array)
{
cbxKZZF.Items.Add(new ListItem(sItem, sItem));
}
cbxKZZF.ShowValue = false;
}
else if (!sMJSQL.Trim().Equals(""))
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sSQL = new TSQL(dberp);
sSQL.Clear();
sSQL.Add(sMJSQL);
DataSet dsSQL = dberp.OpenDataSet(sSQL);
for (int j = 0; j < dsSQL.Tables[0].Rows.Count; j++)
{
cbxKZZF.Items.Add(new ListItem(dsSQL.Tables[0].Rows[j][1].ToString().Trim(), dsSQL.Tables[0].Rows[j][0].ToString().Trim()));
}
}
cbxKZZF.SelectedValue = sValue;
CellFJXX.Controls.Add(cbxKZZF);
parentControl.Cells.Add(CellFJXX);
}
//日期控件
public static void createDateTimeTextBox(TableRow parentControl, string sDYZD, bool bBT, string sValue)
{
TableCell CellFJXX = new TableCell();
CellFJXX.ColumnSpan = 1;
CellFJXX.Attributes.Add("align", "left");
gtDateTimeTextBox datKZRQ = new gtDateTimeTextBox();
datKZRQ.ID = "dat" + sDYZD;
datKZRQ.Width = 72;
if (bBT)
datKZRQ.Tag = gtDateTimeTextBox.DTagStates.Star;
datKZRQ.Text = CMISproConvert.ConvertDate(sValue);
CellFJXX.Controls.Add(datKZRQ);
parentControl.Cells.Add(CellFJXX);
}
//空白单元格
public static void createTableCell(TableRow parentControl, int iColumnSpan, int irow)
{
TableCell CellFJXX = new TableCell();
CellFJXX.ColumnSpan = iColumnSpan;
gtLabel lblMC = new gtLabel();
lblMC.ID = "lblKZXXKBG" + irow.ToString().Trim();
lblMC.Text = "";
lblMC.Width = 100 * iColumnSpan;
CellFJXX.Controls.Add(lblMC);
parentControl.Cells.Add(CellFJXX);
}
public static void UpdateLBXSFJXX(string sBJDID)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add(" select XLXSBJKZXXSZ_DYZD,XLXSBJKZXXSZ_MC,XLXSBJKZXXSZ_SJLX,XLXSBJKZXXSZ_SRFS,XLXSBJKZXXSZ_MJLB,XLXSBJKZXXSZ_MJSQL ");
SQL.Add(" from XLXSBJKZXXSZ where isnull(XLXSBJKZXXSZ_LBXS,'N') = 'Y' order by XLXSBJKZXXSZ_BJSX,XLXSBJKZXXSZ_BH ");
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
string sLBXSFJXX = "";
SQL.Clear();
SQL.Add(" select XLXSBJKZXX_BJDID ");
for (int i = 1; i <= 5; i++)
{
SQL.Add(" ,XLXSBJKZXX_KZSZ" + i.ToString().PadLeft(2, '0'));
}
for (int j = 1; j <= 10; j++)
{
SQL.Add(" ,XLXSBJKZXX_KZZF" + j.ToString().PadLeft(2, '0'));
}
for (int k = 1; k <= 5; k++)
{
SQL.Add(" ,XLXSBJKZXX_KZRQ" + k.ToString().PadLeft(2, '0'));
}
for (int l = 1; l <= 5; l++)
{
SQL.Add(" ,XLXSBJKZXX_KZWB" + l.ToString().PadLeft(2, '0'));
}
SQL.Add(" from XLXSBJKZXX where XLXSBJKZXX_BJDID = :pBJDID ");
SQL.ParamByName("pBJDID").Value = sBJDID;
DataSet dsKZXX = dberp.OpenDataSet(SQL);
if (dsKZXX.Tables[0].Rows.Count > 0)
{
foreach (DataRow trow in ds.Tables[0].Rows)
{
if (!sLBXSFJXX.Equals(""))
sLBXSFJXX += "\r\n";
string sDYZD = trow["XLXSBJKZXXSZ_DYZD"].ToString().Trim();
string sMC = trow["XLXSBJKZXXSZ_MC"].ToString().Trim();
string sSJLX = trow["XLXSBJKZXXSZ_SJLX"].ToString().Trim();
string sSRFS = trow["XLXSBJKZXXSZ_SRFS"].ToString().Trim();
string sValues = dsKZXX.Tables[0].Rows[0]["XLXSBJKZXX_" + sDYZD].ToString().Trim();
if (sSJLX.Equals("A"))
{
if (sValues.Equals("") || sValues.Equals("0"))
sValues = "";
else
sValues = strPadRight(sValues, 2);
}
else if (sSJLX.Equals("B"))
{
if (!sSRFS.Equals("A"))
{
string sMJLB = trow["XLXSBJKZXXSZ_MJLB"].ToString().Trim();
if (sMJLB.Equals(""))
{
string sMJSQL = trow["XLXSBJKZXXSZ_MJSQL"].ToString().Trim();
SQL.Clear();
SQL.Add(sMJSQL);
DataSet dsMJ = dberp.OpenDataSet(SQL);
if (dsMJ.Tables[0].Rows.Count > 0)
{
string sMJNAME = "";
string sMJValue = "," + sValues + ",";
foreach (DataRow mjROW in dsMJ.Tables[0].Rows)
{
string sMJID = mjROW[0].ToString().Trim();
string sMJMC = mjROW[1].ToString().Trim();
if (sMJValue.Contains("," + sMJID + ","))
{
if (!sMJNAME.Equals(""))
sMJNAME += ",";
sMJNAME += sMJMC;
}
}
sValues = sMJNAME;
}
}
}
}
else if (sSJLX.Equals("C"))
{
if (!sValues.Equals(""))
sValues = CMISproConvert.StrToDateTime(sValues).ToShortDateString().Trim();
}
sLBXSFJXX += sMC + ":" + sValues;
}
}
SQL.Clear();
SQL.Add(" update XLXSBJD set XLXSBJD_LBXSFJXX = :pLBXSFJXX where XLXSBJD_BJDID = :pBJDID ");
SQL.ParamByName("pLBXSFJXX").Value = sLBXSFJXX;
SQL.ParamByName("pBJDID").Value = sBJDID;
dberp.ExecSQL(SQL);
}
}
public static 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;
}
}
}