using System;
|
using System.Collections.Generic;
|
using System.ComponentModel;
|
using System.Data;
|
using System.Drawing;
|
using System.Text;
|
using System.Windows.Forms;
|
using SQLHelper;
|
using Pub_Class;
|
|
namespace BLL
|
{
|
public partial class KF_ICInventoryList_K3 : Form
|
{
|
private int HItemIDCol = 0;
|
private int HNumberCol = 0;
|
public DBUtility.frmBillQueryCondition_New frmCondition;
|
public string ViewName = "h_v_KF_ICInventoryList_K3";
|
public string ModName = "物料仓库资料";
|
////权限
|
//public const string ModRightName = "KF_ICInventory_K3";
|
//public const string ModRightNameEdit = ModRightName + "_Edit";
|
//public const string ModRightNameCheck = ModRightName + "_Check";
|
//
|
public DBUtility.ClsPub.Enum_InputModeGroup InputMode; //录入状态标志
|
public string sDlgWhere = "";
|
public long HItemID;//项目ID
|
public long HItemGroupID;
|
ClsCN oCn = new ClsCN();
|
ClsCNK3 oCnK3 = new ClsCNK3();
|
ClsGridListSum oSumGrid = new ClsGridListSum(); //new
|
public Pub_Class.ClsPub.Enum_OKTag OKTag;
|
|
TreeNode CurNode = new TreeNode();
|
ClsPub oPub = new ClsPub();
|
//拆分字符
|
char spChar =Convert.ToChar( "~");
|
|
public KF_ICInventoryList_K3()
|
{
|
InitializeComponent();
|
}
|
|
|
//以下代码基本不需要修改
|
#region 固定代码
|
private void ck_Click(object sender, EventArgs e)
|
{
|
ck.Checked = true;
|
wl.Checked = false;
|
LoadTree();
|
Display();
|
}
|
|
private void wl_Click(object sender, EventArgs e)
|
{
|
ck.Checked = false;
|
wl.Checked = true;
|
LoadTree();
|
Display();
|
}
|
//窗体加载
|
private void KF_ICInventory_Load(object sender, EventArgs e)
|
{
|
lblCaption.Text = ModName;
|
this.Text = ModName;
|
frmCondition = new DBUtility.frmBillQueryCondition_New();
|
oSumGrid.ogrdMain = grdMain; //初始化 new
|
oSumGrid.oGridsum = grdSum;
|
LoadTree();
|
initGrid();
|
InputMode = DBUtility.ClsPub.Enum_InputModeGroup.InputMode_View;
|
}
|
//退出模块
|
private void tc_Click(object sender, EventArgs e)
|
{
|
this.Close();
|
}
|
//刷新
|
private void xs_Click(object sender, EventArgs e)
|
{
|
Display();
|
}
|
//查询
|
private void cx_Click(object sender, EventArgs e)
|
{
|
frmCondition = new DBUtility.frmBillQueryCondition_New();
|
frmCondition.Tag = "";
|
frmCondition.ViewName = ViewName;
|
frmCondition.ModName = this.Name;
|
frmCondition.ShowDialog();
|
if (frmCondition.Tag.ToString() == "OK")
|
{
|
Display();
|
}
|
}
|
//得到对应列
|
public Int32 Fun_GetCol(string sCol)
|
{
|
return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain);
|
}
|
|
|
|
//树型 单击
|
private void tv_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
|
{
|
CurNode = e.Node;
|
if (CurNode != null)
|
{
|
if (CurNode.Nodes.Count == 0)
|
{
|
LoadAllNodes(CurNode);
|
}
|
frmCondition.SqlStr = "";
|
//找到选中结点
|
Display();
|
}
|
|
}
|
|
|
|
//选中行是否正常
|
private bool AllowRow()
|
{
|
if (grdMain.CurrentRow.Index >= 0 && grdMain.CurrentRow.Index <= grdMain.RowCount - 1)
|
return true;
|
else
|
return false;
|
}
|
|
private void bclk_Click(object sender, EventArgs e)
|
{
|
//保存列宽
|
ClsPub.SaveGridView(grdMain, this.Name, ClsPub.AppPath);
|
}
|
|
private void mrlk_Click(object sender, EventArgs e)
|
{
|
DBUtility.Xt_BaseBillFun.DefaultGridView(grdMain, this.Name);
|
}
|
//时间控件
|
private void timer1_Tick(object sender, EventArgs e)
|
{
|
timer1.Enabled = false;
|
Display();
|
}
|
|
//初始化GRID
|
private void initGrid()
|
{
|
DBUtility.Xt_BaseBillFun.initGridRpt(grdMain, this.Name);
|
}
|
|
|
#endregion
|
|
//显示列表
|
private void Display()
|
{
|
ClsCN SubCn = new ClsCN();
|
DataSet DSet ;
|
string sSql = "";
|
string sWhere = "";
|
string HParentID ="";
|
//树形节点
|
if (CurNode.Name.Trim().Length == 0)
|
{
|
HParentID ="";
|
}
|
else
|
{
|
char c = Convert.ToChar(spChar);
|
string[] sr;
|
sr = CurNode.Text.Split(c);
|
HParentID = sr[0].ToString();
|
}
|
//过滤条件
|
if (frmCondition.SqlStr.Trim().Length == 0)
|
{
|
if (HParentID == "" || HParentID == "物料资料" || HParentID == "仓库资料")
|
{
|
sSql = "Select top 1000 * from " + ViewName + " where 1=1 " + sWhere + sDlgWhere + " order by " + ModName + "代码";
|
}
|
else
|
{
|
if (wl.Checked == false)
|
{
|
sSql = "Select top 1000 * from " + ViewName + " where 仓库代码 like '" + HParentID.ToString() + "' " + sWhere + sDlgWhere + " order by " + ModName + "代码";
|
}
|
else
|
{
|
sSql = "Select top 1000 * from " + ViewName + " where 物料代码 like '" + HParentID.ToString() + ".%' " + sWhere + sDlgWhere + " order by " + ModName + "代码";
|
}
|
|
}
|
}
|
else
|
{
|
sSql = frmCondition.SqlStr + " " + sWhere + sDlgWhere + " order by " + ModName + "代码";
|
}
|
//执行SQL
|
DSet = SubCn.RunProcReturn(sSql, ViewName);
|
//生成首行标题
|
if (DSet == null)
|
{
|
MessageBox.Show("没有返回任何结果,请在过滤框中点击【恢复】按钮,尝试再次查询!" + ClsPub.sExeReturnInfo);
|
return;
|
}
|
//
|
for (int i = 0; i < grdMain.ColumnCount; i++)
|
{
|
grdMain.Columns[i].Frozen = false;
|
}
|
//
|
grdMain.DataSource = DSet.Tables[0].DefaultView;
|
//设置合计列 new
|
string sTotalCol = "";
|
sTotalCol = DBUtility.Gy_BaseFun.GetTotalCols(DSet);
|
string[] sT;
|
sT = sTotalCol.Split(Convert.ToChar(","));
|
oSumGrid.BuildTotalCols(sT);
|
//
|
//合计
|
|
//加载列宽,隐藏列
|
DBUtility.Xt_BaseBillFun.DisplayGrid(grdMain, this.Name, "是", 0);
|
//int HColourCol = Fun_GetCol("HColour");
|
//设置字体颜色
|
//for (int i = 0; i < grdMain.RowCount; i++)
|
//{
|
// if (ClsPub.isStrNull(grdMain.Rows[i].Cells[HColourCol].Value) == "Red")
|
// {
|
// //当及时库存小于最低库存时,字体显示红色
|
// grdMain.Rows[i].DefaultCellStyle.ForeColor = Color.Red;
|
// }
|
// if (ClsPub.isStrNull(grdMain.Rows[i].Cells[HColourCol].Value) == "Yellow")
|
// {
|
// //当及时库存大于最高库存时,字体显示黄色
|
// grdMain.Rows[i].DefaultCellStyle.ForeColor = Color.Orange;
|
// }
|
//}
|
ClsPub.GetGridView(this.grdMain, this.Name, ClsPub.AppPath);
|
|
// new
|
Total();
|
}
|
|
//加载子结点
|
private void LoadAllNodes(TreeNode sNode)
|
{
|
string sBill;
|
if (wl.Checked == true)
|
sBill = "h_v_K3_Material_IC";
|
else
|
sBill = "h_v_K3_WareHouse";
|
if (sNode != null)
|
{
|
try
|
{
|
sNode.Nodes.Clear();
|
DataSet Ds = oCn.RunProcReturn("select hitemid,hnumber,hname from " + sBill + " where HStopflag=0 and HParentID=" + sNode.Name.Trim().Substring(1, sNode.Name.Trim().Length-1) + " order by HNumber ", sBill);
|
for (int i = 0; i < Ds.Tables[0].Rows.Count; i++)
|
{
|
TreeNode oNode = sNode.Nodes.Add("T" + Ds.Tables[0].Rows[i]["HItemID"].ToString(), Ds.Tables[0].Rows[i]["HNumber"].ToString() + spChar + Ds.Tables[0].Rows[i]["HName"].ToString(), 0, 1);
|
}
|
sNode.Expand();
|
}
|
catch (Exception e)
|
{
|
MessageBox.Show("加载子项目失败!" + e.Message, "提示");
|
}
|
}
|
}
|
//加载树形
|
private void LoadTree()
|
{
|
string sItemName;
|
if (wl.Checked == true)
|
{
|
sItemName = "物料资料";
|
}
|
else
|
{
|
sItemName = "仓库资料";
|
}
|
try
|
{
|
tv.Nodes.Clear();
|
tv.ImageList = imageList1;
|
TreeNode sNode = tv.Nodes.Add("T0", sItemName, 0, 1);
|
LoadAllNodes(sNode);
|
}
|
catch (Exception e)
|
{
|
MessageBox.Show("加载树型失败!" + e.Message, "提示");
|
}
|
}
|
|
|
//合计 new
|
private void Total()
|
{
|
if (grdMain.Rows.Count > 0 && grdMain.ColumnCount > 0)
|
{
|
oSumGrid.SetGridsum();
|
oSumGrid.Total();
|
}
|
}
|
//合计 new
|
private void grdMain_ColumnWidthChanged(object sender, DataGridViewColumnEventArgs e)
|
{
|
Total();
|
}
|
//合计 new
|
private void grdMain_CellMouseUp(object sender, DataGridViewCellMouseEventArgs e)
|
{
|
Total();
|
}
|
|
private void fh_Click(object sender, EventArgs e)
|
{
|
Sub_DataBack();
|
}
|
|
|
//返回信息
|
private void Sub_DataBack()
|
{
|
OKTag = Pub_Class.ClsPub.Enum_OKTag.OKTag_OK;
|
this.Visible = false;
|
}
|
|
|
}
|
}
|