comsoft.asmx.cs

来自「ASP.NET的一些开发实例,有论坛管理系统等」· CS 代码 · 共 182 行

CS
182
字号
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Web;
using System.Web.Services;
using System.Data.SqlClient;

namespace ERPWebService.sysbase
{
	/// <summary>
	/// COMSoft 的摘要说明。
	/// </summary>
	public class COMSoft : System.Web.Services.WebService
	{
		
		public COMSoft()
		{
			//CODEGEN:该调用是 ASP.NET Web 服务设计器所必需的
			InitializeComponent();
		}

		#region Component Designer generated code
		
		//Web 服务设计器所必需的
		private IContainer components = null;
				
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{			
		}

		/// <summary>
		/// 清理所有正在使用的资源。
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if(disposing && components != null)
			{
				components.Dispose();
			}
			base.Dispose(disposing);		
		}
		
		#endregion

		// WEB 服务示例
		// HelloWorld() 示例服务返回字符串 Hello World
		// 若要生成,请取消注释下列行,然后保存并生成项目
		// 若要测试此 Web 服务,请按 F5 键

//		[WebMethod]
//		public string HelloWorld()
//		{
//			return "Hello World";
//		}

		[WebMethod]
		public string T_Maxnum(string myTableName)
		{
			SqlTransaction myTrans;			

			string s_value;
			int i_num;
			string num_base;
			string s_num,s_num1,s_num2;

			string str =(string)Application["db_connstring"];

			SqlConnection erp_Conn=new SqlConnection((string)Application["db_connstring"]);
			SqlCommand sqlSelectCommand;
			SqlCommand sqlUpdateCommand = new SqlCommand();
			SqlDataReader f_Reader;
			string SelectQuery="select * from system_table where table_name='"+myTableName+"' and Lock='0'";
			erp_Conn.Open();
			sqlSelectCommand=new SqlCommand(SelectQuery,erp_Conn);
			f_Reader=sqlSelectCommand.ExecuteReader();
			if(f_Reader.Read())
			{
				num_base=f_Reader.GetString(1)+f_Reader.GetString(2);
				i_num=Int32.Parse(f_Reader.GetString(2))+1;
				s_num=i_num.ToString();
				s_value=num_base.Substring(0,num_base.Length-s_num.Length)+s_num;
				s_num2=f_Reader.GetString(2);

				f_Reader.Close();
				/*更新状态*/
				s_num1=s_num2.Substring(0,s_num2.Length-s_num.Length)+s_num;
				string SqlUpdate="update system_table set max_num='"+s_num1+"',Lock='0'  where table_name='"+myTableName+"'";
				myTrans = erp_Conn.BeginTransaction();
				sqlUpdateCommand.Connection = erp_Conn;
				sqlUpdateCommand.Transaction = myTrans;
				sqlUpdateCommand.CommandText = SqlUpdate;				
				try
				{
					sqlUpdateCommand.ExecuteNonQuery();
					myTrans.Commit();
					erp_Conn.Close();
				}
				catch(SqlException e)
				{
					if(e.Number==2627)
					{
						s_value="NumError";
					}
					else
					{
						s_value="NumError";
					}
					erp_Conn.Close();
					myTrans.Rollback();
				}
			}
			else
			{
				s_value="NumError";
			}
			
			return s_value;
		}

		
		[WebMethod]
		public string GetMaxnum(string myTableName,ref SqlCommand mySqlCommand,ref SqlConnection myConn,ref SqlTransaction myTrans)
		{
			string s_value;
			int i_num;
			string num_base;
			string s_num,s_num1,s_num2;

			SqlDataReader f_Reader;
			string SelectQuery="select * from system_table where table_name='"+myTableName+"' and isnull(Lock,'0')='0'";
			SqlCommand sqlSelectCommand=new SqlCommand(SelectQuery,myConn);
			sqlSelectCommand.Transaction=myTrans;
			f_Reader=sqlSelectCommand.ExecuteReader();
			if(f_Reader.Read())
			{
				num_base=f_Reader.GetString(1)+f_Reader.GetString(2);
				i_num=Int32.Parse(f_Reader.GetString(2))+1;
				s_num=i_num.ToString();
				s_value=num_base.Substring(0,num_base.Length-s_num.Length)+s_num;
				s_num2=f_Reader.GetString(2);

				f_Reader.Close();
				/*更新状态*/
				s_num1=s_num2.Substring(0,s_num2.Length-s_num.Length)+s_num;
				string SqlUpdate="update system_table set max_num='"+s_num1+"',Lock='0'  where table_name='"+myTableName+"'";
				mySqlCommand.CommandText = SqlUpdate;	
			
				try
				{
					mySqlCommand.ExecuteNonQuery();
				}
				catch(SqlException e)
				{
					if(e.Number==2627)
					{
						s_value="NumError";
					}
					else
					{
						s_value="NumError";
					}
					myTrans.Rollback();
					myConn.Close();
				}
			}
			else
			{
				s_value="NumError";
				myConn.Close();
			}

			return s_value;
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?