📄 qckmye_view.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using com.unicafe.ui;
using com.unicafe.common;
using com.unicafe.security;
using com.ascs.plp.common;
using com.ascs.plp.publics;
namespace PLP.CWZZ.QCKMYE
{
/// <summary>
/// QCKMYE_VIEW 的摘要说明。
/// </summary>
public class QCKMYE_VIEW :com.unicafe.ui.UnicafePage
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.DropDownList DropDownList1;
protected System.Web.UI.WebControls.DataGrid DataGrid1;
protected System.Web.UI.WebControls.Label Label2;
protected System.Web.UI.WebControls.Label Label3;
protected System.Web.UI.WebControls.Label Label4;
protected System.Web.UI.WebControls.LinkButton LinkButton1;
protected System.Web.UI.HtmlControls.HtmlForm Form1;
SqlConnection cn = new SqlConnection (com.unicafe.common.Configuration.GetDBConnectionString());
protected System.Web.UI.WebControls.DropDownList DDL_KJND;
Com.Ascs.Plp.CW.CW_KMYEMgr CW_KMYEMgr = new Com.Ascs.Plp.CW.CW_KMYEMgr();
Com.Ascs.Plp.CW.CW_KJQJMgr CW_KJQJMgr = new Com.Ascs.Plp.CW.CW_KJQJMgr();
Com.Ascs.Plp.CW.CW_KMYE CW_KMYE = new Com.Ascs.Plp.CW.CW_KMYE();
private void Page_Load(object sender, System.EventArgs e)
{
try
{
// 在此处放置用户代码以初始化页面
this.VerifyPage();
this.VerifyPage("zt_qcye_mgr");//登录检查
if (!this.IsPostBack) //判断第一次显示
{
try
{
//判断期初余额是否初始化
ViewState["QCYECount"]="FALSE";
//判断期初会计期间是否结转
ViewState["JZBJ"]="FALSE";
this.Label1.Text=this.CurrentEmployee.EmplName;
//机构代码
ViewState["JGDM"]=this.CurrentJGXX.JGDM.ToString();
//会计年度
ViewState["KJND"]=this.Request.QueryString["KJND"];
if(ViewState["KJND"]==null)
ViewState["KJND"]=this.CW_KJQJMgr.GetDQKJQJ(ViewState["JGDM"].ToString())[1];
if(ViewState["KJND"].ToString()!="NULL")
{
this.DDL_KJNDBind(ViewState["KJND"].ToString());
//获得帐套启用的会计期间编号
ViewState["KJQJ"]=this.CW_KJQJMgr.GetQYKJQJ(ViewState["JGDM"].ToString(),ViewState["KJND"].ToString())[0];
//获得帐套启用的会计期间的结转标记值,添加结转标记
ViewState["JZBJ"]=this.CW_KJQJMgr.GetQYKJQJ(ViewState["JGDM"].ToString(),ViewState["KJND"].ToString())[2];
//起初余额初始化
if(ViewState["KJQJ"].ToString()!="NUll")
this.CW_KMYEMgr.FillKJKM(ViewState["JGDM"].ToString(),this.DDL_KJND.SelectedItem.Value,ViewState["KJQJ"].ToString());
string sqlQCYE=string.Format("select KJKM from CW_KMYE where KJND='{0}' AND KJQJ='{1}' and JGDM='{2}'",ViewState["KJND"].ToString(),ViewState["KJQJ"].ToString(),ViewState["JGDM"].ToString());
DataTable dt=this.CW_KJQJMgr.CreateDataTableFromSql(sqlQCYE);
if(dt.Rows.Count==0)
{
ViewState["QCYECount"]="TRUE";
}
string[] sReturns=this.CW_KMYEMgr.SSPH(this.DDL_KJND.SelectedItem.Value,ViewState["KJQJ"].ToString(),ViewState["JGDM"].ToString());
try
{
ViewState["JFQCYE"]=sReturns[0];
ViewState["DFQCYE"]=sReturns[1];
ViewState["sReturn"]=sReturns[2];
ViewState["CE"]=sReturns[3];
}
catch
{
ViewState["sReturn"]="NULL";
ViewState["JFQCYE"]="NULL";
ViewState["DFQCYE"]="NULL";
ViewState["CE"]="NULL";
}
}
//ViewState["credit"] = credit; //首次加载时,将判断标志赋值给一个视图状态值保存在客户端z
ViewState["sql"]= string.Format("select * from VIEW_KMYE where JGDM='{0}' and KJND='{1}' and KJQJ='{2}'",ViewState["JGDM"].ToString(),ViewState["KJND"].ToString(),ViewState["KJQJ"].ToString());
}
catch
{
ViewState["sql"]= string.Format("select * from VIEW_KMYE where 1=0");
}
//处理DataGrid控件(绑定DataGrid控件 -> 检查是否需要定位 -> 给导航文本赋值)
if(CommonService.HandleDataGrid(this, ViewState["sql"].ToString(), DataGrid1, "Data", Label2, Label3, Label4) == false)
this.Response.Redirect("../../publics/Error.aspx?errmsg=在处理数据时发生错误。");
}
else
{
//检查回发的请求操作是否是要进入上页或下页
if(CommonService.PageNavigate(this, DataGrid1, "Data", Label2, Label3, Label4) == false)
this.Response.Redirect("../../publics/Error.aspx?errmsg=在处理数据时发生错误。");
}
}
catch(Exception e1)
{
LogService.Write ("显示期初余额时产生异常。");
LogService.Write (e1.Message);
Prompt.PromptError(this,"显示期初余额时产生异常。");
}
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.DDL_KJND.SelectedIndexChanged += new System.EventHandler(this.DDL_KJND_SelectedIndexChanged);
this.DropDownList1.SelectedIndexChanged += new System.EventHandler(this.DropDownList1_SelectedIndexChanged);
this.LinkButton1.Click += new System.EventHandler(this.LinkButton1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void LinkButton1_Click(object sender, System.EventArgs e)
{
try
{
string[] DataTypes = {"string","string","string","string"};
string[] pk = {"Hidden1","Hidden2","Hidden3","Hidden4"};
ArrayList al=this.GetPk("CheckBox1",DataTypes,pk,this.DataGrid1);
if(al.Count==1)
{
try
{
object[] obj=(object[])al[0];
this.CW_KMYE = this.CW_KMYEMgr.GetCW_KMYE(obj[0].ToString(),obj[1].ToString(),obj[2].ToString(),obj[3].ToString());
this.cn.Open();//启动连接
SqlCommand mySqlCommand = new SqlCommand();
mySqlCommand.Connection=cn;
SqlTransaction myTrans = this.cn.BeginTransaction();//建立事务
mySqlCommand.Transaction = myTrans;//绑定事务
//重新汇总科目余额
//调用修改方法进行修改
bool Flag = this.CW_KMYEMgr.DelKMYEHZ(mySqlCommand,this.CW_KMYE);
if(Flag)
{
//修改会计科目使用标记为0
myTrans.Commit();
CommonService.BindDataGrid(this,ViewState["sql"].ToString(),this.DataGrid1,"Data",true);
}
else
{
myTrans.Rollback();
}
cn.Close();
}
catch(Exception e1)
{
LogService.Write(e1.Message);
this.Response.Redirect("../../Publics/Error.aspx?errmsg=未能删除会计期间。");
return;
}
}
string[] sReturns=this.CW_KMYEMgr.SSPH(this.DDL_KJND.SelectedItem.Value,ViewState["KJQJ"].ToString(),ViewState["JGDM"].ToString());
try
{
ViewState["JFQCYE"]=sReturns[0];
ViewState["DFQCYE"]=sReturns[1];
ViewState["sReturn"]=sReturns[2];
ViewState["CE"]=sReturns[3];
}
catch
{
ViewState["sReturn"]="NULL";
ViewState["JFQCYE"]="NULL";
ViewState["DFQCYE"]="NULL";
ViewState["CE"]="NULL";
}
//调用删除方法对选中的数据进行删除
CommonService.DelSelectRecord(this,DataGrid1,ViewState["sql"].ToString(),"Data","CheckBox1",DataTypes,pk,"Com.Ascs.Plp.CW.CW_KMYEMgr","DelCW_KMYE","该起初余额不能删除。");
//对页面导航文本进行重新赋值
CommonService.PageNavigatorText(DataGrid1,Label2, Label3, Label4);
}
catch(Exception e1)
{
LogService.Write ("删除期初余额时产生异常。");
LogService.Write (e1.Message);
Prompt.PromptError(this,"删除期初余额时产生异常。");
}
}
private void DDL_KJND_SelectedIndexChanged(object sender, System.EventArgs e)
{
try
{
ViewState["KJND"]=this.DDL_KJND.SelectedItem.Value;
ViewState["KJQJ"]=this.CW_KJQJMgr.GetQYKJQJ(ViewState["JGDM"].ToString(),this.DDL_KJND.SelectedItem.Value)[0];
ViewState["sql"]= string.Format("select * from VIEW_KMYE where JGDM='{0}' and KJND='{1}' and KJQJ='{2}'",ViewState["JGDM"].ToString(),this.DDL_KJND.SelectedItem.Value.ToString(),ViewState["KJQJ"].ToString());
//添加结转标记
ViewState["JZBJ"]=this.CW_KJQJMgr.GetQYKJQJ(ViewState["JGDM"].ToString(),this.DDL_KJND.SelectedItem.Value)[2];
//起初余额初始化
if(ViewState["KJQJ"].ToString()!="NUll")
this.CW_KMYEMgr.FillKJKM(ViewState["JGDM"].ToString(),this.DDL_KJND.SelectedItem.Value,ViewState["KJQJ"].ToString());
string sqlQCYE=string.Format("select KJKM from CW_KMYE where KJND='{0}' AND KJQJ='{1}' and JGDM='{2}'",ViewState["KJND"].ToString(),ViewState["KJQJ"].ToString(),ViewState["JGDM"].ToString());
DataTable dt=this.CW_KJQJMgr.CreateDataTableFromSql(sqlQCYE);
if(dt.Rows.Count==0)
{
ViewState["QCYECount"]="TRUE";
}
string[] sReturns=this.CW_KMYEMgr.SSPH(this.DDL_KJND.SelectedItem.Value,ViewState["KJQJ"].ToString(),ViewState["JGDM"].ToString());
try
{
ViewState["JFQCYE"]=sReturns[0];
ViewState["DFQCYE"]=sReturns[1];
ViewState["sReturn"]=sReturns[2];
ViewState["CE"]=sReturns[3];
}
catch
{
ViewState["sReturn"]="NULL";
ViewState["JFQCYE"]="NULL";
ViewState["DFQCYE"]="NULL";
ViewState["CE"]="NULL";
}
//处理DataGrid控件(绑定DataGrid控件 -> 检查是否需要定位 -> 给导航文本赋值)
if(CommonService.HandleDataGrid(this, ViewState["sql"].ToString(), DataGrid1, "Data", Label2, Label3, Label4) == false)
this.Response.Redirect("../../publics/Error.aspx?errmsg=在处理数据时发生错误。");
}
catch(Exception e1)
{
LogService.Write ("会计年度选择时产生异常。");
LogService.Write (e1.Message);
Prompt.PromptError(this,"会计年度选择时产生异常。");
}
}
private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e)
{
try
{
if(this.DropDownList1.SelectedItem.Value.ToString()!="0")
{
ViewState["sql"]= string.Format("SELECT * FROM VIEW_KMYE where JGDM='{0}' and KJND='{1}' and LB='{2}' and KJQJ='{3}'",ViewState["JGDM"].ToString(),this.DDL_KJND.SelectedItem.Value.ToString(),this.DropDownList1.SelectedItem.Value.ToString(),ViewState["KJQJ"].ToString());
}
else
{
ViewState["sql"]= string.Format("SELECT * FROM VIEW_KMYE where JGDM='{0}' and KJND='{1}' and KJQJ='{2}'",ViewState["JGDM"].ToString(),this.DDL_KJND.SelectedItem.Value.ToString(),ViewState["KJQJ"].ToString());
}
//处理DataGrid控件(绑定DataGrid控件 -> 检查是否需要定位 -> 给导航文本赋值)
if(CommonService.HandleDataGrid(this, ViewState["sql"].ToString(), DataGrid1, "Data", Label2, Label3, Label4) == false)
this.Response.Redirect("../../publics/Error.aspx?errmsg=在处理数据时发生错误。");
}
catch(Exception e1)
{
LogService.Write ("科目类型选择时产生异常。");
LogService.Write (e1.Message);
Prompt.PromptError(this,"科目类型选择时产生异常。");
}
}
private void DDL_KJNDBind(string KJND)
{
string strsql2=string.Format("SELECT distinct KJND FROM CW_KJQJ where JGDM='{0}'",ViewState["JGDM"].ToString());
DataTable dtKJND=this.CW_KMYEMgr.CreateDataTableFromSql(strsql2);
this.DDL_KJND.DataSource=dtKJND;
this.DDL_KJND.DataTextField="KJND";
this.DDL_KJND.DataValueField="KJND";
this.DDL_KJND.DataBind();
this.DDL_KJND.SelectedIndex=-1;
if(KJND.Trim()!=string.Empty)
this.DDL_KJND.Items.FindByValue(KJND).Selected=true;
}
private ArrayList GetPk(string CheckBoxName,string[] DataTypes,string[] Pk,DataGrid dg)
{
ArrayList ArPks=new ArrayList();
int n=0;
if(dg.Items.Count>0)
{
for (int i=0; i<dg.Items.Count; i++)
{
//将当前行赋值给一个DataGridItem对象
DataGridItem _item = dg.Items[i];
//判断当前行上的CheckBox控件赋值给一个CheckBox对象
CheckBox CheckFlag = (CheckBox)_item.FindControl(CheckBoxName);
//判断当前行上的复选框是否被选中,如果被选中则进行删除处理,否则不予处理
if(CheckFlag.Checked == true)
{
//获取关键字的值,逐个加入对象数组obj
object[] obj = new object[DataTypes.Length];
for (int j=0; j<Pk.Length; j++)
{
obj[j] = ((System.Web.UI.HtmlControls.HtmlInputHidden)_item.FindControl(Pk[j].ToString())).Value; //取各项主关键字
}
ArPks.Insert(n,obj);
n++;
}
}
}
return ArPks;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -