⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 retail.cs

📁 WINCE数据库sqlce 通讯stock 代码
💻 CS
📖 第 1 页 / 共 4 页
字号:
		TryAgain:
			CEData lo;
			lo=new CEData();
			Len = new SubStr();
			SqlCeConnection conn=lo.conn;
			string SqlText;
			//从词库中获取产品名称
			try
			{
				SqlText = null;
				SqlCeDataReader myReader=null;
				SqlText = "SELECT TACAB,TACAC FROM TAC WHERE TACAC='"+ProductID+"'";
				SqlCeCommand cmd=new SqlCeCommand(SqlText,conn);
				myReader=cmd.ExecuteReader();
				myReader.Read();
				ProductName=myReader.GetString(0);
				myReader.Close();
				conn.Dispose();
				ScanData="";
				ScanSize=0;
				return true;
			}
			catch
			{
				//MessageBOX.Text=" 产品信息错误,交易失败!";
				//MsgBox(rm.GetString("10005"),MsgTitle,3);
				conn.Dispose();
				ScanData="";
				ScanSize=0;
				
				if(IsExit)
					goto Exit;
				GoNet();  //开始通讯上传下载配额
				IsExit=true;	
				goto TryAgain;
			Exit:
				//MessageBOX.Text=" 暂时无交易配额,小心假冒!";
				MsgBox(rm.GetString("10004"),MsgTitle,30);
				return false;

			}	

		}
		//---------------------------------------------------------------END--------------------------------------------------------------------------------




		//---------------------------------根据扫描的条码从数据库中获取信息数据 (ZJNET ADD 2005.8.1)----------------------------------
		private bool Getparms()
		{
			CEData lo;
			lo=new CEData();
			Len = new SubStr();
			SqlCeConnection conn=lo.conn;

			string SqlText;

			//从词库中获取产品包装名称
			try
			{
				SqlText = null;
				SqlCeDataReader myReader=null;
				SqlText = "SELECT TAEAA,TAEAB,TAEAD FROM TAE WHERE TAEAA='"+ProductID+"' AND TAEAD='"+PackID+"'";
				SqlCeCommand cmd=new SqlCeCommand(SqlText,conn);
				myReader=cmd.ExecuteReader();
				myReader.Read();
				PackName=myReader.GetString(1);
				TBox_ThName.Text=ProductName + "(" + PackName + ")";
				myReader.Close();
				conn.Dispose();
				ScanData="";
				ScanSize=0;
				return true;
			}
			catch
			{
				//MessageBOX.Text=" 产品信息错误,交易失败!";
				conn.Dispose();
				ScanData="";
				ScanSize=0;
				return false;
			}
		}

		//----------------------获取事物交易批次信息ZJNET EDIT (2005.8.5)----------------------
        private void GetPath()	
		{
			CEData lo;
			lo=new CEData();
			Len = new SubStr();
			SqlCeConnection conn=lo.conn;
			string SqlText;
			try
			{
				SqlText=null;
				SqlCeDataReader myReader=null;
				SqlText = "SELECT TAFAA,TAFAD FROM TAF WHERE TAFAA='"+ProductID.ToString()+"'";
				SqlCeCommand cmd=new SqlCeCommand(SqlText,conn);
				myReader=cmd.ExecuteReader();
				myReader.Read();
				Path =myReader.GetValue(1).ToString(); 
				myReader.Close();
				conn.Dispose();	
				ScanData="";
				ScanSize=0;
			}
			catch
			{
				conn.Dispose();
				ScanData="";
				ScanSize=0;
				Path = "";
			}	
		}
		//-------------------------------------------------------END-------------------------------------------------------------------------------------------------------


        //-------------------------------------------获取生产时间和剩余有效期时间----------------------------------------------------------------------------------------
		private void time() 
		{
			Len = new SubStr();
            string TimeYY,TimeMM,TimeDD,TimeHH,TimeMI,TimeSS;
      
			//----------------------------------获取生产时间并计算剩余有效期时间(ZJNET ADD 2005.8.1)----------------
			try
			{   
				TimeYY = Len.SubTimeYY(CharacterID).ToString();//年	
				TimeMM = Len.SubTimeMM(CharacterID).ToString();//月
				TimeDD = Len.SubTimeDD(CharacterID).ToString();//日
				TimeHH = Len.SubTimeHH(CharacterID).ToString();//时
				TimeMI = Len.SubTimeMI(CharacterID).ToString();//分
				TimeSS = Len.SubTimeSS(CharacterID).ToString();//秒

				//TBox_StartTime.Text = TimeYY + "年" + TimeMM + "月" + TimeDD + "日" + TimeHH + "时" + TimeMI + "分" + TimeSS + "秒";//从事物特征码解析得到生产时间
		        stempTime= "生产日期:"+ TimeYY + "年" + TimeMM + "月" + TimeDD + "日" + TimeHH + "时" + TimeMI + "分" + TimeSS + "秒";
			
				//------------------------计算有效期剩余时间(ZJNET ADD 2005.8.1)----------------------------------
				DateTime time = DateTime.Now;
				string AvaTimeYY,AvaTimeMM,AvaTimeDD,AvaTimeHH;
				int AvaTime,YY,MM,DD,HH;

				AvaTime = System.Convert.ToInt32(Len.SubAvaTime(CharacterID));  //获取有效期数值  

				AvaTimeYY = time.ToString().Substring(2,2);//当前年
				AvaTimeMM = time.Month.ToString();//当前月
				AvaTimeDD = time.Day.ToString();//当前天
				AvaTimeHH = time.Hour.ToString();//当前时

				YY = System.Convert.ToInt32(AvaTimeYY) - System.Convert.ToInt32(TimeYY);
				MM = Math.Abs(System.Convert.ToInt32(AvaTimeMM) + (YY*12-System.Convert.ToInt32(TimeMM)));
				DD = Math.Abs(System.Convert.ToInt32(AvaTimeDD) + (MM*30-System.Convert.ToInt32(TimeDD)));
				HH = Math.Abs(System.Convert.ToInt32(AvaTimeHH) + (DD*24-System.Convert.ToInt32(TimeHH)));

				switch (Len.SubAvaTimeType(CharacterID))
				{

					case "0"://如果效期单位是年
						TBox_Validity.Text = "剩余"+ (AvaTime*365-YY*365+MM*30+DD).ToString()+"天";
						TBox_StartTime.Text=TBox_Validity.Text ;
						break;
					case "1"://如果效期单位是月
						TBox_Validity.Text = "剩余"+ (AvaTime*30-YY*365+MM*30+DD).ToString()+"天";
						TBox_StartTime.Text=TBox_Validity.Text ;
						break;
					case "2"://如果效期单位是日
						TBox_Validity.Text = "剩余"+ (AvaTime-YY*365+MM*30+DD).ToString()+"天";
						TBox_StartTime.Text=TBox_Validity.Text ;
						break;
					case "3"://如果效期单位是时
						TBox_Validity.Text = "剩余"+(AvaTime-(YY*365 + MM*30 + DD)*24 + HH).ToString()+"小时";
						TBox_StartTime.Text=TBox_Validity.Text;	
						break;					
				}	
			}
			catch
			{
				ScanData="";
				ScanSize=0;
			}
		}
		//---------------------------------------------------------------END--------------------------------------------------------------------------------



	    //-----------------------------------------------判断事物配额信息  ZJNET EDIT (2005.9.13)---------------------------------------------------------
		private bool NOQuota()  
		{
			bool IsExit=false;
		TryAgain:
			CEData lo;
			lo=new CEData();
			SqlCeConnection conn=lo.conn;
			SqlCeDataReader myReader=null;
			string SqlText;

			
			//从配额中取出相应的配额数量
			try
			{
				SqlText=null;
				SqlText = "SELECT TAFAA,TAFAB FROM TAF WHERE TAFAA='"+ProductID.ToString()+"'";
				SqlCeCommand cmd=new SqlCeCommand(SqlText,conn);
				myReader=cmd.ExecuteReader();
				myReader.Read();
				NPE = System.Convert.ToDouble(myReader.GetValue(1).ToString());
				myReader.Close();
				conn.Dispose();
				ScanData="";
				ScanSize=0;
				return true;
			}
			catch
			{
				NPE=0.0;
				//MessageBOX.Text=" 无事物配额信息!";
				//MsgBox(rm.GetString("10005"),MsgTitle,3);
				conn.Dispose();
				ScanData="";
				ScanSize=0;

				if(IsExit)
					goto Exit;
				GoNet();  //开始通讯上传下载配额
				IsExit=true;	
				goto TryAgain;
			Exit:
				//MessageBOX.Text=" 暂时无交易配额,小心假冒!";
				MsgBox(rm.GetString("10008"),MsgTitle,3);
				return false;
			}
		}
		//---------------------------------------------------------------END--------------------------------------------------------------------------------



        //---------------------------------------------------------从词库中获取产品对应包装类别量纲数量 ZJNET EDIT (2005.9.13)----------------------------------
		private bool Quota()  
		{	
			CEData lo;
			lo=new CEData();
			SqlCeConnection conn=lo.conn;
			SqlCeDataReader myReader=null;
			string SqlText;

			try
			{
				SqlText=null;
				SqlText = "SELECT TAEAA,TAEAD,TAEAF FROM TAE WHERE TAEAD='"+PackID+"' AND  TAEAA ='"+ProductID+"'";
				myReader=lo.ExeSQL(SqlText);
				myReader.Read();
				NLG = System.Convert.ToDouble(myReader.GetValue(2).ToString());
				myReader.Close();
				return true;
			}
			catch
			{
				NLG=0.0;
				//MessageBOX.Text=" 交易失败,小心假冒!";
				return false;
			}
			finally
			{
				conn.Dispose();
				ScanData="";
				ScanSize=0;	
			}
		}
		//---------------------------------------------------------------END--------------------------------------------------------------------------------



		//-----------------------------------------------判断事物配额信息是否满足交易数量  ZJNET EDIT (2005.9.13)---------------------------------------------------------
		private bool LackQuota()  
		{

			if( NPE<NLG )
			{
				GoNet();  //开始通讯上传下载配额

				CEData lo;
				lo=new CEData();
				SqlCeConnection conn=lo.conn;
				SqlCeDataReader myReader=null;
				string SqlText;
			
				try
				{
					SqlText=null;
					SqlText = "SELECT TAFAA,TAFAB FROM TAF WHERE TAFAA='"+ProductID.ToString()+"'";
					SqlCeCommand cmd=new SqlCeCommand(SqlText,conn);
					myReader=cmd.ExecuteReader();
					myReader.Read();
					NPE = System.Convert.ToDouble(myReader.GetValue(1).ToString());
					myReader.Close();
					conn.Dispose();
					ScanData="";
					ScanSize=0;
					if (NPE<NLG)
					{
						//MessageBOX.Text=" 交易配额不足,交易失败!";
						MsgBox(rm.GetString("10008"),MsgTitle,3);
						return false;
					}
					else
					{
						return true;
					}
				}
				catch
				{
					//MessageBOX.Text=" 交易失败,小心假冒!";
					conn.Dispose();
					ScanData="";
					ScanSize=0;
					//MsgBox(rm.GetString("10004"),MsgTitle,3);
					return false;
				}
			}
			else
			{
				return true;
			}
			
		}

//###################################################################### 主过程方法定义区  结束  ########################################################




//###################################################################### 判断扫描重复的128位事物特征码 ###################################################################### 
		private bool Repeat()
		{
			CEData lo;
			lo=new CEData();
			SqlCeConnection conn=lo.conn;
			DateTime Atime = DateTime.Now;
			SqlCeDataReader myReader=null;
			SqlCeTransaction myTrans;
			myTrans=conn.BeginTransaction();
			SqlCeCommand mycmd=conn.CreateCommand();
			mycmd.Connection=conn;
			mycmd.Transaction=myTrans;

			string JYLJ,SqlText;//获取交易数量
			double NUMTH;//更新退货数量
			double RNLG=0;
			double RNPE=0;

			try
			{ 
				SqlText=null;
				SqlText = "SELECT TAAAH FROM TAA WHERE TAAAH = '"+CharacterID+"'";
				SqlCeCommand cmd=new SqlCeCommand(SqlText,conn);
				myReader=cmd.ExecuteReader();
				if (myReader.Read())
				{
					//从词库中获取产品对应包装类别量纲数量
					try
					{
						SqlText=null;
						SqlText = "SELECT TAEAA,TAEAD,TAEAF FROM TAE WHERE TAEAD='"+PackID+"' AND  TAEAA ='"+ProductID+"'";
						myReader=lo.ExeSQL(SqlText);
						myReader.Read();
						RNLG = System.Convert.ToDouble(myReader.GetValue(2).ToString());
						myReader.Close();
					}
					catch
					{
						RNLG=0.0;
						conn.Dispose();
						ScanData="";
						ScanSize=0;
						return true;
					}

					//从配额中取出相应的配额数量
					try
					{
						SqlText=null;
						SqlText = "SELECT TAFAA,TAFAB FROM TAF WHERE TAFAA='"+ProductID.ToString()+"'";
						myReader=lo.ExeSQL(SqlText);
						myReader.Read();
						RNPE = System.Convert.ToDouble(myReader.GetValue(1).ToString());
						myReader.Close();
					}
					catch
					{
						RNPE=0.0;
						conn.Dispose();
						ScanData="";
						ScanSize=0;
						return true;
					}

					if(Path.ToString().Length==0)
					{
						JYLJ=HCuppID.ToString();
					}
					else
					{
						JYLJ = Path.ToString() + "^" + HCuppID.ToString();//获取交易路径
					}

					NUMTH = RNPE-RNLG;//更新配额数量
					
					//更新异常事物特征码
					try
					{
						mycmd.CommandText = "insert into TAA (TAAAA,TAAAB,TAAAD,TAAAE,TAAAF,TAAAG,TAAAH,TAAAI) values ('"+ProductID.ToString()+"','"+DeviceID+"',"+RNLG+",'"+Atime+"','"+JYLJ+"',0,'"+CharacterID+"','01XXX')";
						mycmd.ExecuteNonQuery();
						mycmd.CommandText = "UPDATE TAF SET TAFAB = "+NUMTH.ToString()+" WHERE TAFAA = '"+ProductID.ToString()+"'";
						mycmd.ExecuteNonQuery();
						//MessageBox.Show("小心假冒!");
						MsgBox(rm.GetString("10004"),MsgTitle,3);
						ScanData="";
						ScanSize=0;
						myTrans.Commit();
						conn.Dispose();
						Clear();
						myReader.Close();
						return true;
					}
					catch
					{	
						myTrans.Rollback();
						conn.Dispose();	
						return true;		
					}

				}
				else
				{
					myReader.Close();
					conn.Dispose();					
					return false;	
				}
			}
			catch
			{
               // MessageBox.Show("交易异常!");
				myReader.Close();
				conn.Dispose();	
				ScanData="";
				ScanSize=0;
				return true;
			}
		}
//###################################################################### 判断扫描重复的128位事物特征码 结束 ######################################################################################################



//#######################################################################  交易过程(ZJNET ADD 2005.8.5) #######################################################################
		private void Business()
		{
			if (GetProduct()==false)//获取事物名称  ZJNET EDIT (2005.9.13)
			{
				Singularity();//异常信息的处理
				return;

			}

			if (Quota()==false) //获取事物基类包装数量  ZJNET EDIT (2005.9.13)
				return;


			if (NOQuota()==false)//获取事物配额数量  ZJNET EDIT (2005.9.13)

⌨️ 快捷键说明

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