Esempio n. 1
0
        public void RepeatedDisposal_DoesNotThrow()
        {
            var command = new AseCommand();

            command.Dispose();
            command.Dispose();
        }
Esempio n. 2
0
        /// <summary>
        /// 执行查询,返回查询结果的第一行第一列
        /// </summary>
        /// <typeparam name="T">返回值类型</typeparam>
        /// <param name="sql">SQL查询语句</param>
        /// <param name="parameters">参数集合</param>
        /// <returns>查询结果的第一行第一列</returns>
        public override T ExecuteScalar <T>(string sql, KdtParameterCollection parameters)
        {
            try
            {
                T value = default(T);

                // 执行SQL命令
                using (AseCommand cmd = new AseCommand(ReplaceSqlText(ReplaceSqlText(sql, parameters), parameters), _sybaseCn))
                {
                    InitCommand(cmd); // 初始化

                    // 赋值参数
                    var hasConvertParams = ConvertToSqlParameter(parameters);
                    foreach (var item in hasConvertParams)
                    {
                        cmd.Parameters.Add(item.Value);
                    }

                    value = cmd.ExecuteScalar().Convert <T>();

                    cmd.Cancel();
                    cmd.Dispose();
                }

                return(value);
            }
            catch (Exception ex)
            {
                KdtLoger.Instance.Error(ex);
                throw new DataException(string.Format("执行查询,返回查询结果的第一行第一列错误,原因为:{0}", ex.Message));
            }
        }
Esempio n. 3
0
        public int ExecuteSql(string SQLString)
        {
            int num;

            using (AseConnection connection = new AseConnection(this.connectionString))
            {
                AseCommand command = new AseCommand(SQLString, connection);
                try
                {
                    connection.Open();
                    num = command.ExecuteNonQuery();
                }
                catch (Exception exception1)
                {
                    connection.Close();
                    throw new Exception(exception1.Message);
                }
                finally
                {
                    if (command != null)
                    {
                        command.Dispose();
                    }
                }
            }
            return(num);
        }
Esempio n. 4
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="query"></param>
 /// <param name="commandType"></param>
 /// <param name="closeConnection"></param>
 /// <returns></returns>
 public int ExecuteNonQuery(string query, CommandType commandType = CommandType.Text, bool closeConnection = true)
 {
     comm.CommandText = query.ToString();
     comm.CommandType = commandType;
     try
     {
         if (_conn.State != ConnectionState.Open)
         {
             _conn.Open();
         }
         return(comm.ExecuteNonQuery());
     }
     catch (Exception ex)
     {
         throw;
     }
     finally
     {
         comm = new AseCommand();
         if (closeConnection)
         {
             comm.Dispose();
             if (_conn.State != ConnectionState.Closed)
             {
                 _conn.Close();
             }
         }
     }
 }
Esempio n. 5
0
        /// <summary>
        /// 执行非查询SQL语句
        /// </summary>
        /// <param name="sql">SQL语句</param>
        /// <param name="parameters">参数集合</param>
        /// <returns>受影响的记录数</returns>
        public override int ExecuteNoQuery(string sql, KdtParameterCollection parameters)
        {
            try
            {
                int effected = 0;

                // 执行SQL命令
                using (AseCommand cmd = new AseCommand(ReplaceSqlText(sql, parameters), _sybaseCn))
                {
                    InitCommand(cmd); // 初始化

                    // 赋值参数
                    var hasConvertParams = ConvertToSqlParameter(parameters);
                    foreach (var item in hasConvertParams)
                    {
                        cmd.Parameters.Add(item.Value);
                    }

                    effected = cmd.ExecuteNonQuery();

                    cmd.Cancel();
                    cmd.Dispose();
                }

                return(effected);
            }
            catch (Exception ex)
            {
                KdtLoger.Instance.Error(ex);
                throw new DataException(string.Format("执行非查询SQL语句错误,原因为:{0}", ex.Message));
            }
        }
Esempio n. 6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="query"></param>
        /// <param name="commandType"></param>
        /// <param name="closeConnection"></param>
        /// <returns></returns>
        public List <RespObj> ExecuteReader(string query, CommandType commandType = CommandType.Text, bool closeConnection = true)
        {
            comm.CommandText = query.ToString();
            comm.CommandType = commandType;
            DataTable resultTable = new DataTable();

            try
            {
                if (_conn.State != ConnectionState.Open)
                {
                    _conn.Open();
                }
                AseDataAdapter Adapter = new AseDataAdapter(comm);
                Adapter.Fill(resultTable);

                List <RespObj> ReturnObject = _util.convertDataTable <RespObj>(resultTable);
                return(ReturnObject);
            }
            catch (Exception ex)
            {
                throw;
            }
            finally
            {
                comm = new AseCommand();
                if (closeConnection)
                {
                    comm.Dispose();
                    if (_conn.State != ConnectionState.Closed)
                    {
                        _conn.Close();
                    }
                }
            }
        }
Esempio n. 7
0
        public object GetSingle(string SQLString, params AseParameter[] cmdParms)
        {
            object obj3;

            using (AseConnection connection = new AseConnection(this.connectionString))
            {
                AseCommand cmd = new AseCommand();
                try
                {
                    this.PrepareCommand(cmd, connection, null, SQLString, cmdParms);
                    object objA = cmd.ExecuteScalar();
                    cmd.Parameters.Clear();
                    if (object.Equals(objA, null) || object.Equals(objA, DBNull.Value))
                    {
                        return(null);
                    }
                    obj3 = objA;
                }
                catch (Exception exception1)
                {
                    throw new Exception(exception1.Message);
                }
                finally
                {
                    if (cmd != null)
                    {
                        cmd.Dispose();
                    }
                }
            }
            return(obj3);
        }
Esempio n. 8
0
        public object GetSingle(string SQLString)
        {
            object obj3;

            using (AseConnection connection = new AseConnection(this.connectionString))
            {
                AseCommand command = new AseCommand(SQLString, connection);
                try
                {
                    connection.Open();
                    object objA = command.ExecuteScalar();
                    if (object.Equals(objA, null) || object.Equals(objA, DBNull.Value))
                    {
                        return(null);
                    }
                    obj3 = objA;
                }
                catch (Exception exception1)
                {
                    connection.Close();
                    throw new Exception(exception1.Message);
                }
                finally
                {
                    if (command != null)
                    {
                        command.Dispose();
                    }
                }
            }
            return(obj3);
        }
Esempio n. 9
0
        public int ExecuteSqlInsertImg(string strSQL, byte[] fs)
        {
            int num;

            using (AseConnection connection = new AseConnection(this.connectionString))
            {
                AseCommand   command = new AseCommand(strSQL, connection);
                AseParameter p       = new AseParameter("@fs", AseDbType.Image)
                {
                    Value = fs
                };
                command.Parameters.Add(p);
                try
                {
                    connection.Open();
                    num = command.ExecuteNonQuery();
                }
                catch (Exception exception1)
                {
                    throw new Exception(exception1.Message);
                }
                finally
                {
                    command.Dispose();
                    connection.Close();
                }
            }
            return(num);
        }
Esempio n. 10
0
        public int ExecuteSql(string SQLString, params AseParameter[] cmdParms)
        {
            int num;

            using (AseConnection connection = new AseConnection(this.connectionString))
            {
                AseCommand cmd = new AseCommand();
                try
                {
                    this.PrepareCommand(cmd, connection, null, SQLString, cmdParms);
                    cmd.Parameters.Clear();
                    num = cmd.ExecuteNonQuery();
                }
                catch (Exception exception1)
                {
                    throw new Exception(exception1.Message);
                }
                finally
                {
                    if (cmd != null)
                    {
                        cmd.Dispose();
                    }
                }
            }
            return(num);
        }
Esempio n. 11
0
        public int ExecuteSql(string SQLString, string content)
        {
            int num;

            using (AseConnection connection = new AseConnection(this.connectionString))
            {
                AseCommand   command = new AseCommand(SQLString, connection);
                AseParameter p       = new AseParameter("@content", OracleType.NVarChar)
                {
                    Value = content
                };
                command.Parameters.Add(p);
                try
                {
                    connection.Open();
                    num = command.ExecuteNonQuery();
                }
                catch (Exception exception1)
                {
                    throw new Exception(exception1.Message);
                }
                finally
                {
                    command.Dispose();
                    connection.Close();
                }
            }
            return(num);
        }
Esempio n. 12
0
 /// <summary>
 ///
 /// </summary>
 public void CloseConnection()
 {
     comm.Dispose();
     if (_conn.State != ConnectionState.Closed)
     {
         _conn.Close();
     }
 }
Esempio n. 13
0
        /// <summary>
        /// 读取KEY VALUE值
        /// </summary>
        /// <param name="sql"></param>
        /// <param name="parameters"></param>
        /// <returns></returns>
        public override KeyValueCollection ExecuteKVCollection(string sql, KdtParameterCollection parameters)
        {
            try
            {
                KeyValueCollection entity = new KeyValueCollection();
                // 执行SQL命令
                using (AseCommand cmd = new AseCommand(ReplaceSqlText(sql, parameters), _sybaseCn))
                {
                    InitCommand(cmd); // 初始化

                    // 赋值参数
                    var hasConvertParams = ConvertToSqlParameter(parameters);
                    foreach (var item in hasConvertParams)
                    {
                        cmd.Parameters.Add(item.Value);
                    }

                    // 执行填充数据
                    using (AseDataReader reader = cmd.ExecuteReader())
                    {
                        entity = GetEntity(reader);
                        // 反射参数值
                        ReflectParamValue(parameters, hasConvertParams);

                        reader.Close();
                        reader.Dispose();
                    }

                    cmd.Cancel();
                    cmd.Dispose();
                }

                return(entity);
            }
            catch (AseException me)
            {
                KdtLoger.Instance.Error(me);
                throw new DataException(me.Message);
            }
            catch (Exception ex)
            {
                KdtLoger.Instance.Error(ex);
                throw new DataException(string.Format("执行SQL查询,返回数据集合错误,原因为:{0}", ex.Message));
            }
        }
Esempio n. 14
0
        public List <Branch> GetBranchList()
        {
            List <Branch> brList   = new List <Branch>();
            AseCommand    cmd      = null;
            AseConnection conn     = null;
            string        cnstring = ConfigurationManager.ConnectionStrings["phoenixConnectionString"].ConnectionString;

            try
            {
                conn = new AseConnection(cnstring);
                string sqlquery = "select branch_no,name_1 from phoenix..ad_gb_branch where status = 'Active' order by name_1";

                cmd = new AseCommand(sqlquery, conn);
                cmd.CommandTimeout = 0;
                conn.Open();
                AseDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                while (reader.Read())
                {
                    Branch br = new Branch();
                    br.BranchNo   = Convert.ToInt16(reader["branch_no"].ToString());
                    br.BranchName = reader["name_1"].ToString();
                    brList.Add(br);
                }
                reader.Close();
            }
            catch (Exception ex)
            {
                throw;
            }
            finally
            {
                cmd.Dispose();

                if (conn.State != System.Data.ConnectionState.Closed)
                {
                    conn.Close();
                    conn.Dispose();
                }
            }

            return(brList);
        }
Esempio n. 15
0
        public Account getCorporateAccountInfo(string acct_no, string initiator_number)
        {
            List <Loan>   loans    = new List <Loan>();
            Account       acct     = null;
            AseConnection conn     = null;
            AseCommand    command  = null;
            AseDataReader reader   = null;
            StringBuilder s        = new StringBuilder();
            StringBuilder output   = new StringBuilder();
            string        cnstring = ConfigurationManager.ConnectionStrings["phoenixConnectionString"].ConnectionString;

            string sqltext = "zsp_cust_information";

            //string sqltext = "select title_1,acct_no,acct_type,a.rsm_id as 'AccountRSMID'";
            //sqltext += ",(select name from phoenix..ad_gb_rsm where employee_id = a.rsm_id) as 'AccountRSMName'";
            //sqltext += ",b.rsm_id as 'RIMRSMID'";
            //sqltext += ",(select name from phoenix..ad_gb_rsm where employee_id = b.rsm_id) as 'RIMRSMName'";
            //sqltext += ",(select user_name from phoenix..ad_gb_rsm where employee_id = b.rsm_id) as 'RIMUSerName'";
            //sqltext += ",(select d.staff_id from phoenix..ad_gb_rsm c, zib_applications_users d where c.user_name = d.user_id and ";
            //sqltext += "employee_id = b.rsm_id) as 'StaffNo' ";
            //sqltext += "from phoenix..dp_acct a, phoenix..rm_acct b ";
            //sqltext += "where a.acct_no = @corperateacct_no ";// -----'1020041488'
            //sqltext += "and a.rim_no = b.rim_no ";

            try
            {
                using (conn = new AseConnection(cnstring))
                {
                    conn.Open();

                    using (command = new AseCommand(sqltext, conn))
                    {
                        command.CommandType = System.Data.CommandType.StoredProcedure;
                        command.Parameters.AddWithValue("@psCorperateacct_no", acct_no);
                        command.Parameters.AddWithValue("@initiator_staffnumber", initiator_number);
                        reader = command.ExecuteReader();

                        while (reader.Read())
                        {
                            acct = new Account();
                            acct.account_name         = reader["title_1"].ToString();
                            acct.acct_no              = reader["acct_no"].ToString();
                            acct.acct_type            = reader["acct_type"].ToString();
                            acct.domicile_branch_no   = reader["BranchNo"].ToString();
                            acct.domicile_branch_name = reader["BranchName"].ToString();
                            acct.rim_no          = reader["RIMNO"].ToString();
                            acct.rsm_id          = reader["AccountRSMID"].ToString();
                            acct.rsm_name        = reader["AccountRSMName"].ToString();
                            acct.rimrsm_id       = reader["RIMRSMID"].ToString();
                            acct.rimrsm_name     = reader["RIMRSMName"].ToString();
                            acct.rimrsm_username = reader["RIMUSerName"].ToString();
                            acct.rsm_staffno     = reader["StaffNo"].ToString();

                            //New properties to be returned//
                            acct.sex = reader["sex"].ToString();
                            //acct.marital_status   = reader["familystatus"].ToString();
                            acct.dob             = reader["date_of_birth"].ToString();
                            acct.home_address    = reader["home_address"].ToString();
                            acct.state_of_origin = reader["state_of_origin"].ToString();
                            acct.phonenumber     = reader["phone_number"].ToString();
                            acct.email           = reader["email_address"].ToString();
                            acct.next_of_kin     = reader["next_of_kin"].ToString();

                            //New property to be returned - bvn - 03 NOV 2015//
                            acct.bvn            = reader["bvn"].ToString();
                            acct.acct_type_desc = reader["acct_type_desc"].ToString();

                            //New property to be returned - bvn - 25 OCT 2016//
                            acct.initiator_branch              = reader["initiator_branch"].ToString();
                            acct.initiator_branchcode          = reader["initiator_branchcode"].ToString();
                            acct.initiator_phoenix_username    = reader["initiator_phoenix_username"].ToString();
                            acct.initiator_phoenix_employee_id = reader["initiator_phoenix_employee_id"].ToString();
                            acct.initiator_phoenix_status      = reader["initiator_phoenix_status"].ToString();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
            finally
            {
                command.Dispose();

                if (conn.State != System.Data.ConnectionState.Closed)
                {
                    conn.Close();
                    conn.Dispose();
                }
            }


            return(acct);
        }
Esempio n. 16
0
        public GlobalLimit getRimInfo(string schemerimno, string schemeclasscode)
        {
            GlobalLimit   gLimit   = null;
            AseConnection conn     = null;
            AseCommand    command  = null;
            AseDataReader reader   = null;
            StringBuilder s        = new StringBuilder();
            StringBuilder output   = new StringBuilder();
            string        cnstring = ConfigurationManager.ConnectionStrings["phoenixConnectionString"].ConnectionString;

            string sqltext = "zsp_loans_GlobalLimit";

            //string sqltext = "select sum(amt) as 'GlobalLimit'";
            //sqltext += ",sum(undisbursed) as 'GlobalBalance'";
            //sqltext += ",rsm_id as 'RIMRSMID' ";
            //sqltext += "from phoenix..ln_umb ";
            //sqltext += "where rim_no = @SchemeRimNo ";
            //sqltext += "and class_code = @SchemeClassCode ";
            //sqltext += "and status = 'Active' ";

            try
            {
                using (conn = new AseConnection(cnstring))
                {
                    conn.Open();

                    using (command = new AseCommand(sqltext, conn))
                    {
                        //command.Parameters.AddWithValue("@SchemeRimNo", int.Parse(schemerimno));
                        //command.Parameters.AddWithValue("@SchemeClassCode", int.Parse(schemeclasscode));
                        command.CommandType = System.Data.CommandType.StoredProcedure;
                        command.Parameters.AddWithValue("@pnSchemeRimNo", int.Parse(schemerimno));
                        command.Parameters.AddWithValue("@pnSchemeClassCode", int.Parse(schemeclasscode));
                        reader = command.ExecuteReader();

                        while (reader.Read())
                        {
                            gLimit               = new GlobalLimit();
                            gLimit.Limit         = reader["GlobalLimit"].ToString();
                            gLimit.GlobalBalance = reader["GlobalBalance"].ToString();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
            finally
            {
                command.Dispose();

                if (conn.State != System.Data.ConnectionState.Closed)
                {
                    conn.Close();
                    conn.Dispose();
                }
            }


            return(gLimit);
        }
Esempio n. 17
0
        public List <Loan> getApplicantLoans(string acct_no)
        {
            List <Loan>   loans    = new List <Loan>();
            Loan          loan     = null;
            AseConnection conn     = null;
            AseCommand    command  = null;
            AseDataReader reader   = null;
            StringBuilder s        = new StringBuilder();
            StringBuilder output   = new StringBuilder();
            string        cnstring = ConfigurationManager.ConnectionStrings["phoenixConnectionString"].ConnectionString;
            string        sqltext  = "zsp_cust_exist_loans";

            //string sqltext = "select (select description from phoenix..ad_ln_cls where class_code = a.class_code) as 'FacilityType',a.acct_no";
            //sqltext += ",a.amt as 'FacilityAmount'";
            //sqltext += ",a.period as 'RepaymentFreq'";
            //sqltext += ",a.last_pmt_amt as 'LastRepaymentAmount'";
            //sqltext += ",a.nxt_pmt_amt as 'NextRepaymentAmount'";
            //sqltext += ",a.col_bal as 'CurrentBalance'";
            //sqltext += ",a.mat_dt as 'FacilityMaturityDate'";
            //sqltext += " from phoenix..ln_display a, phoenix..dp_acct b ";
            //sqltext += "where b.acct_no = @applicantacct_no ";// -----'1020041488'
            //sqltext += "and a.rim_no = b.rim_no ";
            //sqltext += "and a.class_code != 585 ";
            //sqltext += "and a.col_bal != 0 ";
            //sqltext += "and a.status != 'Closed' ";

            try
            {
                using (conn = new AseConnection(cnstring))
                {
                    conn.Open();

                    using (command = new AseCommand(sqltext, conn))
                    {
                        command.CommandType = System.Data.CommandType.StoredProcedure;
                        //command.Parameters.AddWithValue("@applicantacct_no", acct_no);
                        //AseParameter param = new AseParameter();
                        //param.ParameterName = "@applicantacct_no";
                        //param.Value = acct_no;

                        AseParameter param = new AseParameter();
                        param.ParameterName = "@psApplicantacct_no";
                        param.Value         = acct_no;

                        command.Parameters.Add(param);
                        reader = command.ExecuteReader();

                        while (reader.Read())
                        {
                            loan = new Loan();
                            loan.FacilityType         = reader["FacilityType"].ToString();
                            loan.acct_no              = reader["acct_no"].ToString();
                            loan.FacilityAmount       = reader["FacilityAmount"].ToString();
                            loan.RepaymentFreq        = reader["RepaymentFreq"].ToString();
                            loan.LastRepaymentAmount  = reader["LastRepaymentAmount"].ToString();
                            loan.NextRepaymentAmount  = reader["NextRepaymentAmount"].ToString();
                            loan.FacilityMaturityDate = reader["FacilityMaturityDate"].ToString();
                            loan.CurrentBalance       = reader["CurrentBalance"].ToString();
                            loans.Add(loan);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
            finally
            {
                command.Dispose();

                if (conn.State != System.Data.ConnectionState.Closed)
                {
                    conn.Close();
                    conn.Dispose();
                }
            }


            return(loans);
        }
Esempio n. 18
0
        static int Main(string[] args)
        {
            int
                Result = -1,
                tmpInt;

            decimal
                tmpDecimal;

            object
                tmpObject;

            StreamWriter
                fstr_out = null;

            string
                tmpString,
                OutputFileName = "log.log";

                        #if WITH_TRACE
            string
                TraceFileName = "trace.log";
                        #endif

            AseConnection
                conn = null;

            AseCommand
                cmd = null;

            AseTransaction
                Transaction = null;

            AseDataReader
                reader = null;

            AseParameter
                Parameter = null;

            AseDataAdapter
                da = null;

            DataTable
                tmpDataTable = null;

            try
            {
                try
                {
                    fstr_out           = new StreamWriter(OutputFileName, false, System.Text.Encoding.GetEncoding(1251));
                    fstr_out.AutoFlush = true;

                                        #if WITH_REFLECTION
                    Assembly[]
                    asms = AppDomain.CurrentDomain.GetAssemblies();

                    Assembly
                        asm = null;

                    foreach (Assembly a in asms)
                    {
                        if (a.FullName.ToLower().IndexOf("sybase.data.aseclient") > -1)
                        {
                            asm = a;
                        }

                        fstr_out.WriteLine("Assembly.CodeBase: " + a.CodeBase);
                        fstr_out.WriteLine("Assembly.EscapedCodeBase: " + a.EscapedCodeBase);
                        fstr_out.WriteLine("Assembly.FullName: " + a.FullName);
                        fstr_out.WriteLine("Assembly.GlobalAssemblyCache: " + a.GlobalAssemblyCache.ToString().ToLower());
                        fstr_out.WriteLine("Assembly.ImageRuntimeVersion: " + a.ImageRuntimeVersion);
                        fstr_out.WriteLine("Assembly.Location: " + a.Location);
                        fstr_out.WriteLine();
                    }

                    if (asm != null)
                    {
                        Type[]
                        alltypes = asm.GetTypes();

                        for (tmpInt = 0; tmpInt < alltypes.Length; ++tmpInt)
                        {
                            fstr_out.WriteLine("Обнаружено: " + alltypes[tmpInt].Name);
                            if (alltypes[tmpInt].Name.CompareTo("AseConnection") == 0)
                            {
                                Type
                                    t = alltypes[tmpInt];

                                FieldInfo[]
                                fi = t.GetFields(BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public);

                                fstr_out.WriteLine("Анализ Field, определенных в " + t.Name);
                                foreach (FieldInfo f in fi)
                                {
                                    fstr_out.Write("   " + f.Name);
                                    fstr_out.WriteLine();
                                }
                                fstr_out.WriteLine();

                                PropertyInfo[]
                                //pi_=t.GetProperties(BindingFlags.Instance|BindingFlags.NonPublic|BindingFlags.Static); // AseConnection.Language
                                pi_ = t.GetProperties(BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public);

                                fstr_out.WriteLine("Анализ Property, определенных в " + t.Name);
                                foreach (PropertyInfo p_ in pi_)
                                {
                                    fstr_out.Write("   " + p_.Name);
                                    fstr_out.WriteLine();
                                }
                                fstr_out.WriteLine();

                                fstr_out.WriteLine("Поддерживаемые методы:");

                                ParameterInfo[]
                                pi;

                                MethodInfo[]
                                mi;

                                //mi=t.GetMethods();
                                mi = t.GetMethods(BindingFlags.DeclaredOnly
                                                  | BindingFlags.Instance
                                                  | BindingFlags.Public);

                                foreach (MethodInfo m in mi)
                                {
                                    fstr_out.Write("   " + m.ReturnType.Name + " " + m.Name + "(");
                                    pi = m.GetParameters();

                                    for (int i = 0; i < pi.Length; ++i)
                                    {
                                        fstr_out.Write(pi[i].ParameterType.Name + " " + pi[i].Name);
                                        if (i + 1 < pi.Length)
                                        {
                                            fstr_out.Write(", ");
                                        }
                                    }
                                    fstr_out.WriteLine(")");
                                }
                                fstr_out.WriteLine();
                            }
                        }
                        fstr_out.WriteLine();
                    }
                                        #endif

                                        #if WITH_TRACE
                    _strmWriter           = new StreamWriter(TraceFileName, false, System.Text.Encoding.GetEncoding(1251));
                    _strmWriter.AutoFlush = true;
                                        #endif

                    if ((tmpString = ConfigurationSettings.AppSettings["connectionString"]) == null ||
                        tmpString == string.Empty)
                    {
                        fstr_out.WriteLine("ConfigurationSettings.AppSettings[\"connectionString\"] is empty!!!");
                        return(Result);
                    }

                    conn              = new AseConnection(tmpString);
                    conn.InfoMessage += new AseInfoMessageEventHandler(conn_InfoMessage);
                    conn.StateChange += new System.Data.StateChangeEventHandler(conn_StateChange);
                                        #if WITH_TRACE
                    conn.TraceEnter += new TraceEnterEventHandler(conn_TraceEnter);
                    conn.TraceExit  += new TraceExitEventHandler(conn_TraceExit);
                                        #endif
                    conn.Open();

                    fstr_out.WriteLine("AseConnection.ConnectionString: " + conn.ConnectionString);
                    fstr_out.WriteLine("AseConnection.ConnectionTimeout: " + conn.ConnectionTimeout);
                    fstr_out.WriteLine("AseConnection.Database: " + conn.Database);
                    fstr_out.WriteLine("AseConnection.NamedParameters: " + conn.NamedParameters.ToString().ToLower());
                    fstr_out.WriteLine("AseConnection.State: " + conn.State);
                    fstr_out.WriteLine("AseConnection.DriverVersion: " + AseConnection.DriverVersion);
                    //fstr_out.WriteLine("AseConnection.Language: "+AseConnection.Language);
                    fstr_out.WriteLine();

                    cmd             = conn.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = "select @@spid";

                    if ((tmpObject = cmd.ExecuteScalar()) != null)
                    {
                        tmpString = Convert.ToString(tmpObject);
                    }

                                        #if TEST_CHARSET
                    cmd.CommandText = "select cast(val as date) from T4 where GroupId=4 and Id=1";
                    if (da == null)
                    {
                        da = new AseDataAdapter(cmd);
                    }
                    else
                    {
                        da.SelectCommand = cmd;
                    }

                    if (tmpDataTable == null)
                    {
                        tmpDataTable = new DataTable();
                    }
                    else
                    {
                        tmpDataTable.Reset();
                    }

                    da.Fill(tmpDataTable);
                                        #endif

                                        #if TEST_EXECUTE_NON_QUERY
                    if (cmd == null)
                    {
                        cmd = conn.CreateCommand();
                    }
                    cmd.NamedParameters = false;
                    cmd.CommandType     = CommandType.Text;
                    cmd.Parameters.Clear();
                    cmd.CommandText = "update Victim set Val = ? where Id = ?";
                    cmd.Parameters.Add("Val", AseDbType.Integer);
                    cmd.Parameters.Add("Id", AseDbType.Integer);
                    for (int Id = 1; Id <= 5; Id += 2)
                    {
                        cmd.Parameters["Val"].Value = Id;
                        cmd.Parameters["Id"].Value  = Id;
                        tmpInt = cmd.ExecuteNonQuery();
                    }
                    cmd.NamedParameters = true;
                                        #endif

                                        #if TEST_BLOB
                    if (cmd == null)
                    {
                        cmd = conn.CreateCommand();
                    }

                    cmd.CommandType = CommandType.Text;

                    FileStream
                        fs;

                    byte[]
                    Blob;

                                                #if TEST_BLOB_SAVE
                    tmpString       = "@FImage";
                    cmd.CommandText = "update TestTypes set FImage = " + tmpString;
                    cmd.Parameters.Clear();
                    cmd.Parameters.Add(tmpString, AseDbType.Image);
                    fs   = new FileStream("welcome.bmp", FileMode.Open, FileAccess.Read);
                    Blob = new byte[fs.Length];
                    fs.Read(Blob, 0, Blob.Length);
                    cmd.Parameters[tmpString].Value = Blob;
                    tmpInt = cmd.ExecuteNonQuery();
                                                #endif

                    cmd.Parameters.Clear();
                    cmd.CommandText = "select * from TestTypes";
                    reader          = cmd.ExecuteReader();

                    do
                    {
                        if (reader.HasRows)
                        {
                            for (int i = 0; i < reader.FieldCount; ++i)
                            {
                                fstr_out.WriteLine(reader.GetName(i) + " GetDataTypeName(): \"" + reader.GetDataTypeName(i) + "\" GetFieldType(): \"" + reader.GetFieldType(i) + "\"");
                            }

                            tmpInt = reader.GetOrdinal("FImage");

                            while (reader.Read())
                            {
                                tmpString = "FromBlob.bmp";
                                if (File.Exists(tmpString))
                                {
                                    File.Delete(tmpString);
                                }

                                Blob = (byte[])reader["FImage"];
                                fs   = new FileStream(tmpString, FileMode.Create);
                                fs.Write(Blob, 0, Blob.Length);
                                fs.Close();

                                tmpString = "FromBlob_1.bmp";
                                if (File.Exists(tmpString))
                                {
                                    File.Delete(tmpString);
                                }

                                Blob = new byte[reader.GetBytes(tmpInt, 0, null, 0, int.MaxValue)];
                                reader.GetBytes(tmpInt, 0, Blob, 0, Blob.Length);
                                fs = new FileStream(tmpString, FileMode.Create);
                                fs.Write(Blob, 0, Blob.Length);
                                fs.Close();
                            }
                        }
                    }while(reader.NextResult());
                    reader.Close();
                                        #endif

                                        #if TEST_SMTH
                    if (cmd == null)
                    {
                        cmd = conn.CreateCommand();
                    }

                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = "select * from TestDate order by FDate";
                    cmd.Parameters.Clear();

                    if (da == null)
                    {
                        da = new AseDataAdapter(cmd);
                    }
                    else
                    {
                        da.SelectCommand = cmd;
                    }

                    if (tmpDataTable != null)
                    {
                        tmpDataTable.Reset();
                    }
                    else
                    {
                        tmpDataTable = new DataTable();
                    }

                    da.Fill(tmpDataTable);

                    tmpString = "";
                    for (int i = 0; i < tmpDataTable.Rows.Count; ++i)
                    {
                        if (tmpString != string.Empty)
                        {
                            tmpString += " ";
                        }
                        tmpString += Convert.ToDateTime(tmpDataTable.Rows[i]["FDate"]).ToString("yyyy-MM-dd");
                    }

                    cmd.NamedParameters = false;
                    cmd.CommandText     = "update TestTypes set FDatetime = ?";
                    cmd.Parameters.Clear();
                    cmd.Parameters.Add("FDate", AseDbType.DateTime).Value = DateTime.Now;
                    tmpInt = cmd.ExecuteNonQuery();

                    cmd.NamedParameters = true;
                    cmd.CommandText     = "update TestTypes set FDatetime = @FDatetime";
                    cmd.Parameters.Clear();
                    cmd.Parameters.Add("@FDatetime", AseDbType.DateTime).Value = DateTime.Now;
                    tmpInt = cmd.ExecuteNonQuery();
                                        #endif

                                        #if TEST_DATA_ADAPTER_FILL_SCHEMA
                    if (cmd == null)
                    {
                        cmd = conn.CreateCommand();
                    }

                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = "select * from Staff";

                    if (da == null)
                    {
                        da = new AseDataAdapter(cmd);
                    }
                    else
                    {
                        da.SelectCommand = cmd;
                    }

                    if (tmpDataTable != null)
                    {
                        tmpDataTable.Reset();
                    }
                    else
                    {
                        tmpDataTable = new DataTable();
                    }

                    da.FillSchema(tmpDataTable, SchemaType.Source);
                                        #endif

                                        #if TEST_STORED_PROCEDURES
                    if (cmd == null)
                    {
                        cmd = conn.CreateCommand();
                    }

                    object[]
                    tmpObjects = new object[] { 5, 6 };

                    cmd.CommandType     = CommandType.StoredProcedure;
                    cmd.NamedParameters = false;
                    cmd.CommandType     = CommandType.StoredProcedure;
                    cmd.CommandText     = "mathtutor";
                    for (int i = 0; i < tmpObjects.Length; ++i)
                    {
                        Parameter = new AseParameter();
                        Parameter.ParameterName = "Param" + i;
                        switch (Type.GetTypeCode(tmpObjects[i].GetType()))
                        {
                        case System.TypeCode.Int32:
                        {
                            Parameter.DbType = DbType.Int32;
                            break;
                        }
                        }
                        Parameter.Value = tmpObjects[i];
                        cmd.Parameters.Add(Parameter);
                    }
                    Parameter = new AseParameter();
                    Parameter.ParameterName = "Param3";
                    Parameter.DbType        = DbType.Int32;
                    Parameter.Direction     = ParameterDirection.Output;
                    cmd.Parameters.Add(Parameter);
                    cmd.ExecuteNonQuery();
                    tmpInt = !Convert.IsDBNull(cmd.Parameters["Param3"].Value) ? Convert.ToInt32(cmd.Parameters["Param3"].Value) : Int32.MinValue;

                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.CommandText = "sp_TestTypes_Decimal_10_6";
                    AseCommandBuilder.DeriveParameters(cmd);
                    cmd.Parameters["@FDecimal_10_6"].Value = 123.45m;
                    cmd.ExecuteNonQuery();
                    tmpDecimal = !Convert.IsDBNull(cmd.Parameters["@FDecimal_10_6_out"].Value) ? Convert.ToDecimal(cmd.Parameters["@FDecimal_10_6_out"].Value) : decimal.MinValue;

                    cmd.Parameters.Clear();
                    cmd.CommandType     = CommandType.Text;
                    cmd.CommandText     = "{? = call sp_TestTypes_Decimal_10_6(? ,?)}";
                    cmd.NamedParameters = false;

                    Parameter           = new AseParameter("@RETURN_VALUE", AseDbType.Integer);
                    Parameter.Direction = ParameterDirection.ReturnValue;
                    cmd.Parameters.Add(Parameter);

                    Parameter = new AseParameter("@FDecimal_10_6", AseDbType.Decimal);                          //AseDbType.Numeric
                    //Parameter=new AseParameter();
                    //Parameter.ParameterName="@FDecimal_10_6";
                    //Parameter.DbType=DbType.Decimal;
                    //Parameter.AseDbType=AseDbType.Decimal; //AseDbType.Numeric
                    Parameter.Direction = ParameterDirection.Input;
                    //Parameter.Precision=10;
                    //Parameter.Scale=6;
                    Parameter.Value = 123.45m;
                    cmd.Parameters.Add(Parameter);

                    Parameter           = new AseParameter("@FDecimal_10_6_out", AseDbType.Decimal);                 //AseDbType.Numeric
                    Parameter.Direction = ParameterDirection.Output;
                    Parameter.Precision = 10;
                    Parameter.Scale     = 6;
                    cmd.Parameters.Add(Parameter);

                    cmd.ExecuteNonQuery();
                    tmpDecimal = !Convert.IsDBNull(cmd.Parameters["@FDecimal_10_6_out"].Value) ? Convert.ToDecimal(cmd.Parameters["@FDecimal_10_6_out"].Value) : decimal.MinValue;

                    tmpDecimal = 2;

                    if (cmd == null)
                    {
                        cmd = conn.CreateCommand();
                    }

                    cmd.Parameters.Clear();
                    cmd.CommandType     = CommandType.Text;
                    cmd.CommandText     = "{call UpdateTestTypes(?)}";
                    cmd.NamedParameters = false;

                    Parameter           = new AseParameter("@rate", AseDbType.Decimal);
                    Parameter.Direction = ParameterDirection.Input;
                    Parameter.Value     = tmpDecimal;
                    cmd.Parameters.Add(Parameter);

                    /*
                     * if(cmd==null)
                     *      cmd=conn.CreateCommand();
                     *
                     * cmd.CommandType=CommandType.StoredProcedure;
                     * cmd.CommandText="UpdateTestTypes";
                     * AseCommandBuilder.DeriveParameters(cmd);
                     * cmd.Parameters["@Decimal_18_4"].Value=tmpDecimal;
                     */

                    tmpInt = cmd.ExecuteNonQuery();

                    cmd.CommandType = CommandType.StoredProcedure;
                    for (int size = 255; size <= 258; ++size)
                    {
                        cmd.CommandText = "sp_ReturnAndOutputVarChar" + size;
                        AseCommandBuilder.DeriveParameters(cmd);
                        cmd.ExecuteNonQuery();
                        tmpString = !Convert.IsDBNull(cmd.Parameters["@OutParam"].Value) ? Convert.ToString(cmd.Parameters["@OutParam"].Value) : "NULL";
                    }

                    conn.ChangeDatabase("master");
                    cmd.CommandText = "testdb..sp_ReturnAndOutput";
                    AseCommandBuilder.DeriveParameters(cmd);
                    conn.ChangeDatabase("testdb");
                                        #endif

                    Transaction = conn.BeginTransaction(IsolationLevel.ReadCommitted);

                    if (cmd == null)
                    {
                        cmd = conn.CreateCommand();
                    }
                    cmd.Transaction = Transaction;
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.CommandText = "sp_Staff_Save";
                    //cmd.CommandText="sp_TestTypes";
                    fstr_out.WriteLine("AseCommandBuilder.DeriveParameters(\"" + cmd.CommandText + "\")");
                    AseCommandBuilder.DeriveParameters(cmd);
                    foreach (AseParameter parameter in cmd.Parameters)
                    {
                        fstr_out.WriteLine("\tParameterIndex: " + parameter.ParameterIndex + Environment.NewLine +
                                           "\tParameterName: " + parameter.ParameterName + Environment.NewLine +
                                           "\tDirection: " + parameter.Direction + Environment.NewLine +
                                           "\tDbType: " + parameter.DbType + Environment.NewLine +
                                           "\tAseDbType: " + parameter.AseDbType + Environment.NewLine +
                                           "\tSize: " + parameter.Size + Environment.NewLine +
                                           "\tPrecision: " + parameter.Precision + Environment.NewLine +
                                           "\tScale: " + parameter.Scale + Environment.NewLine +
                                           "\tIsNullable: " + parameter.IsNullable.ToString().ToLower() + Environment.NewLine +
                                           "\tSourceColumn: " + parameter.SourceColumn + Environment.NewLine +
                                           "\tSourceVersion: " + parameter.SourceVersion + Environment.NewLine);
                    }
                    fstr_out.WriteLine();

                    conn.ChangeDatabase("veksel");
                    cmd.CommandText = "sp_CONTRACT_SAVE";
                    fstr_out.WriteLine("AseCommandBuilder.DeriveParameters(\"" + cmd.CommandText + "\")");
                    AseCommandBuilder.DeriveParameters(cmd);
                    foreach (AseParameter parameter in cmd.Parameters)
                    {
                        fstr_out.WriteLine("\tParameterIndex: " + parameter.ParameterIndex + Environment.NewLine +
                                           "\tParameterName: " + parameter.ParameterName + Environment.NewLine +
                                           "\tDirection: " + parameter.Direction + Environment.NewLine +
                                           "\tDbType: " + parameter.DbType + Environment.NewLine +
                                           "\tAseDbType: " + parameter.AseDbType + Environment.NewLine +
                                           "\tSize: " + parameter.Size + Environment.NewLine +
                                           "\tPrecision: " + parameter.Precision + Environment.NewLine +
                                           "\tScale: " + parameter.Scale + Environment.NewLine +
                                           "\tIsNullable: " + parameter.IsNullable.ToString().ToLower() + Environment.NewLine +
                                           "\tSourceColumn: " + parameter.SourceColumn + Environment.NewLine +
                                           "\tSourceVersion: " + parameter.SourceVersion + Environment.NewLine);
                    }
                    fstr_out.WriteLine();

                    Transaction.Rollback();
                    Transaction = null;

                    Result = 0;
                }
                catch (AseException eException)
                {
                    Console.WriteLine(eException.GetType().FullName + Environment.NewLine +
                                      "Errors:" + Environment.NewLine + ErrorsToString(eException.Errors) + Environment.NewLine +
                                      "Message: " + eException.Message + Environment.NewLine +
                                      "Source: " + eException.Source + Environment.NewLine +
                                      "StackTrace:" + Environment.NewLine + eException.StackTrace + Environment.NewLine +
                                      "TargetSite: " + eException.TargetSite + Environment.NewLine);
                }
                catch (Exception eException)
                {
                    Console.WriteLine(eException.GetType().FullName + Environment.NewLine +
                                      "Message: " + eException.Message + Environment.NewLine +
                                      "Source: " + eException.Source + Environment.NewLine +
                                      "StackTrace:" + Environment.NewLine + eException.StackTrace + Environment.NewLine +
                                      "TargetSite: " + eException.TargetSite + Environment.NewLine +
                                      "InnerException:" + Environment.NewLine + eException.InnerException.GetType().FullName + Environment.NewLine +
                                      "InnerException.Message: " + eException.InnerException.Message + Environment.NewLine +
                                      "InnerException.Source: " + eException.InnerException.Source + Environment.NewLine +
                                      "InnerException.StackTrace:" + Environment.NewLine + eException.InnerException.StackTrace + Environment.NewLine +
                                      "InnerException.TargetSite: " + eException.InnerException.TargetSite);
                }
            }
            finally
            {
                if (Transaction != null)
                {
                    try
                    {
                        Transaction.Rollback();
                    }
                    catch
                    {
                        ;
                    }
                }

                if (reader != null && !reader.IsClosed)
                {
                    reader.Close();
                }

                if (cmd != null)
                {
                    cmd.Dispose();
                }

                if (conn != null && conn.State == System.Data.ConnectionState.Open)
                {
                    conn.Close();
                }

                if (fstr_out != null)
                {
                    fstr_out.Close();
                }

                                #if WITH_TRACE
                if (_strmWriter != null)
                {
                    _strmWriter.Close();
                }
                                #endif
            }

            return(Result);
        }
Esempio n. 19
0
    private void FillList()
    {
        AseConnection oCon = new AseConnection(strCon);
        SuggestionListFlash = "";
        SuggestionListDtc = "";
        try
        {
            string strHandler = Convert.ToString(Utility.GetFromSession("Handler"));
            int intTimeout;
            AseCommand oCmd;
            oCmd = new AseCommand("FLSH_RPT_ALL", oCon);
            oCmd.CommandType = CommandType.StoredProcedure;
            AseParameter oParam1 = new AseParameter("@recon_handle", AseDbType.VarChar, 25);
            oParam1.Value = strHandler;
            oCmd.Parameters.Add(oParam1);
            intTimeout = oCmd.CommandTimeout;
            oCmd.CommandTimeout = 0;
            oCon.Open();
            AseDataReader reader = oCmd.ExecuteReader();
            while (reader.Read())
            {
                if (string.IsNullOrEmpty(SuggestionListFlash))
                {
                    flashList.Insert(0, reader["flashAccountNumber"].ToString());
                    SuggestionListFlash += "\"" + reader["flashAccountNumber"].ToString() + "\"";
                }
                else
                {
                    flashList.Add(reader["flashAccountNumber"].ToString());
                    SuggestionListFlash += ", \"" + reader["flashAccountNumber"].ToString() + "\"";
                }
               

            }
            hdnFlash.Value = SuggestionListFlash;
            oCmd.CommandTimeout = intTimeout;
            oCmd = new AseCommand("DISTINCT_DTC_ALL", oCon);
            oCmd.CommandType = CommandType.StoredProcedure;
            AseParameter oParam2 = new AseParameter("@recon_handle", AseDbType.VarChar, 25);
            oParam2.Value = strHandler;
            oCmd.Parameters.Add(oParam2);
            intTimeout = oCmd.CommandTimeout;
            oCmd.CommandTimeout = 0;
            oCon.Open();
            reader = oCmd.ExecuteReader();
            while (reader.Read())
            {
                if (string.IsNullOrEmpty(SuggestionListDtc))
                {
                    dtcList.Insert(0, reader["dtcAccountNumber"].ToString());
                    SuggestionListDtc += "\"" + reader["dtcAccountNumber"].ToString() + "\"";
                }
                else
                {
                    dtcList.Add(reader["dtcAccountNumber"].ToString());
                    SuggestionListDtc += ", \"" + reader["dtcAccountNumber"].ToString() + "\"";
                }
            }
            hdnDtc.Value = SuggestionListDtc;
            oCmd.CommandTimeout = intTimeout;
            oCmd.Dispose();
            oCon.Close();

            oCon.Dispose();
            oCmd = null;
            oCon = null;
        }
        catch (Exception ex)
        {
            log.Info("Exception occured-while filling autoomplete data:", ex);
            oCon.Close();
            oCon.Dispose();
            oCon = null;

            throw;
        }
    }
Esempio n. 20
0
    public int CheckMappingData(string dtcTicket, string flashTicket)
    {
        int noOfRowReturned;
        AseConnection oCon = new AseConnection(strCon);

        try
        {
            string strHandler = Convert.ToString(GetFromSession("Handler"));
            int intTimeout;
            AseCommand oCmd;
            oCmd = new AseCommand("CheckMapping", oCon);
            oCmd.CommandType = CommandType.StoredProcedure;
            intTimeout = oCmd.CommandTimeout;
            oCmd.CommandTimeout = 0;
            AseParameter oParam0 = new AseParameter("@recon_handle", AseDbType.VarChar, 25);
            oParam0.Value = strHandler;
            oCmd.Parameters.Add(oParam0);
            AseParameter oParam2 = new AseParameter("@dtc_number", AseDbType.VarChar, 25);
            oParam2.Value = dtcTicket;
            oCmd.Parameters.Add(oParam2);
            AseParameter oParam3 = new AseParameter("@flash_number", AseDbType.VarChar, 25);
            oParam3.Value = flashTicket;
            oCmd.Parameters.Add(oParam3);
            oCon.Open();
            noOfRowReturned = Convert.ToInt32(oCmd.ExecuteScalar());
            oCmd.CommandTimeout = intTimeout;
            oCmd.Dispose();
            oCon.Close();
            oCon.Dispose();
            oCmd = null;
            oCon = null;
        }
        catch (Exception ex)
        {
            log.Info("Exception occured-CekMapping():", ex);
            oCon.Close();
            oCon.Dispose();
            oCon = null;
            if (ex.Message == "No Flash Record found")
            {
                return 0;
            }
            throw;
        }
        return noOfRowReturned;
    }