public void Create(IEnumerable <string> columnDefinitions)
        {
            var sb = new StringBuilder();

            if (!string.IsNullOrEmpty(_schemaName))
            {
                sb.AppendFormat("CREATE SCHEMA \"{0}\";", _schemaName);
            }

            sb.Append("CREATE TABLE ");

            sb.Append(NameWithSchema);
            sb.Append(" (");

            foreach (string definition in columnDefinitions)
            {
                sb.Append(definition);
                sb.Append(", ");
            }

            sb.Remove(sb.Length - 2, 2);
            sb.Append(")");

            var s = sb.ToString();

            using (var command = new HanaCommand(s, Connection, Transaction))
                command.ExecuteNonQuery();
        }
示例#2
0
        public DataTable SapListaPrecioDT()
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VTAS_WEB_LISTA_PRECIO";

                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch (SqlException)
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
示例#3
0
        public void Create(IEnumerable<string> columnDefinitions)
        {
            var sb = new StringBuilder();

            if (!string.IsNullOrEmpty(_schemaName))
                sb.AppendFormat("CREATE SCHEMA \"{0}\";", _schemaName);

            sb.Append("CREATE TABLE ");

            sb.Append(NameWithSchema);
            sb.Append(" (");

            foreach (string definition in columnDefinitions)
            {
                sb.Append(definition);
                sb.Append(", ");
            }

            sb.Remove(sb.Length - 2, 2);
            sb.Append(")");

            var s = sb.ToString();
            using (var command = new HanaCommand(s, Connection, Transaction))
                command.ExecuteNonQuery();
        }
        public void WithDefaultValueOn(string column)
        {
            const int defaultValue = 1;

            using (var command = new HanaCommand(string.Format(" ALTER TABLE {0}.{1} ALTER {2} SET DEFAULT {3}", quoter.QuoteSchemaName(_schemaName), quoter.QuoteTableName(Name), quoter.QuoteColumnName(column), defaultValue), Connection, Transaction))
                command.ExecuteNonQuery();
        }
示例#5
0
        /// <summary>
        /// 新增、修改、刪除
        /// 傳入參數對SQL資料做更動
        /// 此方法可自行設定要用哪種Type(SP OR SQLString)
        /// 不含交易物件的方法
        /// </summary>
        /// <param name="sqlString">SqlSreing語法或SP名稱</param>
        /// <param name="cmdType">使用的Type</param>
        /// <param name="paramsArr">HanaParameter參數陣列</param>
        /// <returns>回傳資料異動數</returns>
        public int ExcuteSQL(string sqlString, CommandType cmdType, object[] paramsArr)
        {
            int num;

            using (HanaConnection connection = new HanaConnection(_connectionString))
            {
                int         result = 0;
                HanaCommand cmd    = new HanaCommand()
                {
                    CommandType = cmdType
                };

                HanaParameter[] cmdParams = null;
                if (paramsArr != null)
                {
                    cmdParams = new HanaParameter[paramsArr.Length];
                    SettingParams(cmdParams, paramsArr);
                }

                CmdSettingModel cmdSetModel = new CmdSettingModel()
                {
                    Conn = connection, Trans = null, Text = sqlString
                };
                SettingCommand(cmd, cmdSetModel, cmdParams);

                try
                {
                    if (connection.State != ConnectionState.Open)
                    {
                        connection.Open();
                    }

                    result = cmd.ExecuteNonQuery();
                    SqlParameterOutputSetting(cmdParams);

                    cmd.Parameters.Clear();
                    num = result;
                }
                catch (HanaException sqlException)
                {
                    throw new Exception(string.Concat("存取SQL Server發生錯誤. SysInfo=", sqlException.Message));
                }
                catch (Exception exception)
                {
                    throw exception;
                }
                finally
                {
                    if (connection.State != ConnectionState.Closed)
                    {
                        connection.Close();
                    }

                    connection.Dispose();
                    cmd.Dispose();
                }
            }
            return(num);
        }
示例#6
0
        public DataSet VentasGeneralesDetalladaSAPDS(string Marca)
        {
            DataSet dts = new DataSet();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VTAS_WEB_LISTAPRECIOSTOCK";

                HanaParameter mar = new HanaParameter();


                // Parametro Canal.
                mar            = cmd.CreateParameter();
                mar.HanaDbType = HanaDbType.VarChar;
                mar.Direction  = ParameterDirection.Input;
                mar.Value      = Marca;
                cmd.Parameters.Add(mar);


                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dts, "ACSA_VTAS_WEB_LISTAPRECIOSTOCK");
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            finally
            {
                cmd.Parameters.Clear();
            }

            //return (dts.Tables["VentasMensualesGCDetalladoxCanal"]);
            return(dts);

            /*
             *
             * catch (SqlException)
             * {
             *
             *   throw new Exception();
             *
             * }
             * finally
             * {
             *   if (cnx.State == ConnectionState.Open)
             *   {
             *       cnx.Close();
             *   }
             *   cmd.Parameters.Clear();
             * }*/
        }
示例#7
0
        public DataTable VentasGCSAPConsultar(DateTime fecha1, DateTime fecha2, string Canal)
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VTAS_WEB_VentaGC";

                HanaParameter f1 = new HanaParameter();
                HanaParameter f2 = new HanaParameter();
                HanaParameter pc = new HanaParameter();

                // Parametro Fecha 1.
                f1            = cmd.CreateParameter();
                f1.HanaDbType = HanaDbType.Date;
                f1.Direction  = ParameterDirection.Input;
                f1.Value      = fecha1;
                cmd.Parameters.Add(f1);

                // Parametro Fecha 2.
                f2            = cmd.CreateParameter();
                f2.HanaDbType = HanaDbType.Date;
                f2.Direction  = ParameterDirection.Input;
                f2.Value      = fecha2;;
                cmd.Parameters.Add(f2);

                // Parametro Canal.
                pc            = cmd.CreateParameter();
                pc.HanaDbType = HanaDbType.VarChar;
                pc.Direction  = ParameterDirection.Input;
                pc.Value      = Canal;
                cmd.Parameters.Add(pc);


                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch (SqlException)
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
示例#8
0
        public void WithUniqueConstraintOn(string column, string name)
        {
            var sb = new StringBuilder();

            sb.Append(string.Format("ALTER TABLE {0} ADD CONSTRAINT {1} UNIQUE ({2})", _quoter.QuoteTableName(Name), _quoter.QuoteConstraintName(name), _quoter.QuoteColumnName(column)));
            using (var command = new HanaCommand(sb.ToString(), Connection, Transaction))
                command.ExecuteNonQuery();
        }
示例#9
0
        public void Drop()
        {
            var sb = new StringBuilder();
            sb.AppendFormat("DROP TABLE {0}", NameWithSchema);
            if (!string.IsNullOrEmpty(_schemaName))
                sb.AppendFormat(";DROP SCHEMA \"{0}\"", _schemaName);

            using (var command = new HanaCommand(sb.ToString(), Connection, Transaction))
                command.ExecuteNonQuery();
        }
示例#10
0
        public void Drop()
        {
            using (var command = new HanaCommand("DROP SEQUENCE " + NameWithSchema, Connection, Transaction))
                command.ExecuteNonQuery();

            if (!string.IsNullOrEmpty(_schemaName))
            {
                using (var command = new HanaCommand(string.Format("DROP SCHEMA \"{0}\"", _schemaName), Connection, Transaction))
                    command.ExecuteNonQuery();
            }
        }
示例#11
0
        public void Drop()
        {
            using (var command = new HanaCommand("DROP SEQUENCE " + NameWithSchema, Connection, Transaction))
                command.ExecuteNonQuery();

            if (!string.IsNullOrEmpty(_schemaName))
            {
                using (var command = new HanaCommand($"DROP SCHEMA \"{_schemaName}\"", Connection, Transaction))
                    command.ExecuteNonQuery();
            }
        }
示例#12
0
        public void Create()
        {
            if (!string.IsNullOrEmpty(_schemaName))
            {
                using (var command = new HanaCommand(string.Format("CREATE SCHEMA \"{0}\";", _schemaName), Connection, Transaction))
                    command.ExecuteNonQuery();
            }

            string createCommand = string.Format("CREATE SEQUENCE {0} INCREMENT BY 2 MINVALUE 0 MAXVALUE 100 START WITH 2 CACHE 10 CYCLE", NameWithSchema);
            using (var command = new HanaCommand(createCommand, Connection, Transaction))
                command.ExecuteNonQuery();
        }
示例#13
0
        public void Drop()
        {
            var sb = new StringBuilder();

            sb.AppendFormat("DROP TABLE {0}", NameWithSchema);
            if (!string.IsNullOrEmpty(_schemaName))
            {
                sb.AppendFormat(";DROP SCHEMA \"{0}\"", _schemaName);
            }

            using (var command = new HanaCommand(sb.ToString(), Connection, Transaction))
                command.ExecuteNonQuery();
        }
示例#14
0
        public void Create()
        {
            if (!string.IsNullOrEmpty(_schemaName))
            {
                using (var command = new HanaCommand(string.Format("CREATE SCHEMA \"{0}\";", _schemaName), Connection, Transaction))
                    command.ExecuteNonQuery();
            }

            string createCommand = string.Format("CREATE SEQUENCE {0} INCREMENT BY 2 MINVALUE 0 MAXVALUE 100 START WITH 2 CACHE 10 CYCLE", NameWithSchema);

            using (var command = new HanaCommand(createCommand, Connection, Transaction))
                command.ExecuteNonQuery();
        }
示例#15
0
        public string WithIndexOn(string column)
        {
            var indexName = string.Format("idx_{0}", column);

            var quotedObjectName = _quoter.QuoteTableName(Name);

            var quotedIndexName = _quoter.QuoteIndexName(indexName);

            using (var command = new HanaCommand(string.Format("CREATE INDEX {0} ON {1} ({2})", quotedIndexName, quotedObjectName, _quoter.QuoteColumnName(column)), Connection, Transaction))
                command.ExecuteNonQuery();

            return(indexName);
        }
        public DataTable VentaClienteDT(DateTime fechaInicial, DateTime fechaFinal)
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VEN_RPT_VENTACLIENTES";

                HanaParameter f1 = new HanaParameter();
                HanaParameter f2 = new HanaParameter();

                // Parametro Fecha 1.
                f1            = cmd.CreateParameter();
                f1.HanaDbType = HanaDbType.Date;
                f1.Direction  = ParameterDirection.Input;
                f1.Value      = fechaInicial;
                cmd.Parameters.Add(f1);

                // Parametro Fecha 2.
                f2            = cmd.CreateParameter();
                f2.HanaDbType = HanaDbType.Date;
                f2.Direction  = ParameterDirection.Input;
                f2.Value      = fechaFinal;;
                cmd.Parameters.Add(f2);

                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch (SqlException)
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
示例#17
0
        public static void addData(Form1.allFields data, int param)
        {
            using (HanaCommand command = new HanaCommand()
            {
                Connection = connection
            })
            {
                connection.Open();

                data.createDate  = (data.createDate != null) ? data.createDate.Replace(".", string.Empty) : null;
                data.instDate    = (data.instDate != null) ? data.instDate.Replace(".", string.Empty) : null;
                data.shipingDate = (data.shipingDate != null) ? data.shipingDate.Replace(".", string.Empty) : null;
                data.snDate      = (data.snDate != null) ? data.snDate.Replace(".", string.Empty) : null;

                data.instDate = (data.instDate == "") ? null : data.instDate;
                data.snDate   = (data.snDate == "") ? null : data.snDate;
                data.insID    = (data.insID == "") ? null : data.insID;

                string cmdAdd = "";
                if (param == 1)
                {
                    cmdAdd = string.Format(@"INSERT INTO ""BRANCHES_EURO"".""@ACC_PAINTS_IT"" (""DocEntry"",""LineId"",""U_Code"",""U_Name"",""U_Picture"",""U_SerialNumber"",""U_Articul"",""U_EAN"",""U_InstDate"",""U_LifeTime"",""U_drDownDate"",""U_Comment"",""U_Warning"",""U_Characteristics"",""U_Modification"",""U_insID"") VALUES ({0}, {1}, '{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}',{15})", Int32.Parse(data.docEntry), Int32.Parse(data.lineId), data.code1, data.title, data.photo, data.serialNumber, data.articul, data.EAN, data.instDate, data.srokExpl, data.snDate, data.comment, data.warning, data.charact, data.modif, Int32.Parse(data.insID));


                    //  cmdAdd = string.Format(@"INSERT INTO ""BRANCHES_EURO"".""@ACC_PAINTS_IT"" (""DocEntry"",""LineId"",""U_Code"",""U_Name"",""U_Picture"",""U_SerialNumber"",""U_Articul"",""U_EAN"",""U_InstDate"",""U_LifeTime"",""U_drDownDate"",""U_Comment"",""U_Warning"",""U_Characteristics"",""U_Modification"",""U_insID"") VALUES (" + Int32.Parse(data.docEntry) + "," + Int32.Parse(data.lineId) + "," + data.code1 + "," + data.title + "," + data.photo + "," + data.serialNumber + "," + data.articul + "," + data.EAN + "," + data.instDate + "," + data.srokExpl + "," + data.snDate + "," + data.comment + "," + data.warning + "," + data.charact + "," + data.modif + "," + Int32.Parse(data.insID) + ")");
                    using (HanaCommand cmd = new HanaCommand()
                    {
                        CommandText = cmdAdd, Connection = connection
                    })
                    {
                        cmd.ExecuteNonQuery();
                    }

                    //command.CommandText = string.Format(@"INSERT INTO ""BRANCHES_EURO"".""@ACC_PAINTS_IT"" (""DocEntry"",""LineId"",""U_Code"",""U_Name"",""U_Picture"",""U_SerialNumber"",""U_Articul"",""U_EAN"",""U_InstDate"",""U_LifeTime"",""U_drDownDate"",""U_Comment"",""U_Warning"",""U_Characteristics"",""U_Modification"",""U_insID"") VALUES ({0}, {1}, '{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}',{15})", Int32.Parse(data.docEntry), Int32.Parse(data.lineId), data.code1, data.title, data.photo, data.serialNumber, data.articul, data.EAN, data.instDate, data.srokExpl, data.snDate, data.comment, data.warning, data.charact, data.modif, Int32.Parse(data.insID));
                    //command.CommandText = string.Format(@"insert into ""@ACC_PAINTS_IT"" (""DocEntry"",""LineId"",""U_Code"",""U_Name"",""U_InstDate"",""U_drDownDate"",""U_insID"") values ({0},{1},'{2}','{3}','{4}','{5}',{6})", Int32.Parse(data.docEntry), Int32.Parse(data.lineId), data.code1, data.title, data.instDate, data.snDate, Int32.Parse(data.insID));
                    //string cmdAdd = @"INSERT INTO ""BRANCHES_EURO"".""@ACC_PAINTS_IT"" (""DocEntry"",""LineId"",""U_Code"",""U_Name"",""U_InstDate"",""U_insID"") VALUES (" + Int32.Parse(data.docEntry) + "," + Int32.Parse(data.lineId) + "," + data.code1 + "," + data.title + "," + data.instDate + "," + Int32.Parse(data.insID) + ")";

                    //command.CommandText = string.Format(@"INSERT INTO ""BRANCHES_EURO"".""@ACC_PAINTS_IT"" (""DocEntry"",""LineId"",""U_InstDate"",""U_drDownDate"",""U_insID"") VALUES ({0},{1},'{2}','{3}',{4})", Int32.Parse(data.docEntry), Int32.Parse(data.lineId), data.instDate, data.snDate, Int32.Parse(data.insID));
                    //command.ExecuteNonQuery();
                }
                else if (param == 2)
                {
                    cmdAdd = @"INSERT INTO ""BRANCHES_EURO"".""@ACC_PAINTS_ITEMS_2"" (""DocEntry"",""LineId"",""U_Code"",""U_TitlePaint"",""U_BatchNumber"",""U_Articul"",""U_EAN"",""U_ManufDate"",""U_ShelfLife"",""U_DeliveryDate"",""U_Comment"",""U_Warning"",""U_insID"") VALUES (" + Int32.Parse(data.docEntry) + "," + Int32.Parse(data.lineId) + "," + data.code1 + "," + data.title + "," + data.batchNumber + "," + data.serialNumber + "," + data.articul + "," + data.EAN + "," + data.createDate + "," + data.srokExpl + "," + data.shipingDate + "," + data.comment + "," + data.warning + "," + Int32.Parse(data.insID) + ")";
                    //command.CommandText = string.Format(@"INSERT INTO ""BRANCHES_EURO"".""@ACC_PAINTS_ITEMS_2"" (""DocEntry"",""LineId"",""U_Code"",""U_TitlePaint"",""U_BatchNumber"",""U_Articul"",""U_EAN"",""U_ManufDate"",""U_ShelfLife"",""U_DeliveryDate"",""U_Comment"",""U_Warning"",""U_insID"") VALUES ({0}, {1},'{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}',{12})", Int32.Parse(data.docEntry), Int32.Parse(data.lineId), data.code1, data.title, data.batchNumber, data.articul, data.EAN, data.createDate, data.srokExpl, data.shipingDate, data.comment,data.warning,Int32.Parse(data.insID));
                }

                connection.Close();
            }
        }
示例#18
0
        public DataTable VentasGeneralesDetalladaSAPDT(DateTime FechaInicial, DateTime FechaFinal)
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VEN_RPT_VENTAXARTICULO";

                HanaParameter fechaInicial = new HanaParameter();
                HanaParameter fechaFinal   = new HanaParameter();

                // Parametro Fecha Inicial.
                fechaInicial            = cmd.CreateParameter();
                fechaInicial.HanaDbType = HanaDbType.Date;
                fechaInicial.Direction  = ParameterDirection.Input;
                fechaInicial.Value      = FechaInicial;
                cmd.Parameters.Add(fechaInicial);

                // Parametro Fecha Final.
                fechaFinal            = cmd.CreateParameter();
                fechaFinal.HanaDbType = HanaDbType.Date;
                fechaFinal.Direction  = ParameterDirection.Input;
                fechaFinal.Value      = FechaFinal;
                cmd.Parameters.Add(fechaFinal);

                cmd.ExecuteNonQuery();
                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch (SqlException)
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
示例#19
0
        public static void updateData(Form1.allFields data, int param)
        {
            using (HanaCommand command = new HanaCommand()
            {
                Connection = connection
            })
            {
                connection.Open();

                string cmdAdd = "";
                if (param == 1)
                {
                    using (HanaCommand cmd = new HanaCommand()
                    {
                        CommandText = cmdAdd, Connection = connection
                    })
                    {
                        command.CommandText  = @"UPDATE ""BRANCHES_EURO"".""@ACC_PAINTS_IT"" SET (";
                        command.CommandText += string.Format(@"""DocEntry""={0}", 1);                 //Int32.Parse(data.docEntry));
                        command.CommandText += string.Format(@"""LineId""={0}", 1);                   //Int32.Parse(data.lineId));
                        command.CommandText += string.Format(@"""U_Code""='{0}'", "001");             //data.code1);
                        command.CommandText += string.Format(@"""U_Name""='{0}'", "Товар 1 [Batch]"); //data.title);
                        command.CommandText += string.Format(@"where ""insID""={0}", 2);              //Int32.Parse(data.insID));

                        connection.Open();
                        command.ExecuteNonQuery();
                        connection.Close();
                    }
                    cmdAdd = @"UPDATE ""BRANCHES_EURO"".""@ACC_PAINTS_IT"" SET (""DocEntry"",""LineId"",""U_Code"",""U_Name"",""U_Picture"",""U_SerialNumber"",""U_Articul"",""U_EAN"",""U_InstDate"",""U_LifeTime"",""U_drDownDate"",""U_Comment"",""U_Warning"",""U_Characteristics"",""U_Modification"") VALUES (" + Int32.Parse(data.docEntry) + "," + Int32.Parse(data.lineId) + "," + data.code1 + "," + data.title + "," + data.photo + "," + data.serialNumber + "," + data.articul + "," + data.EAN + "," + data.instDate + "," + data.srokExpl + "," + data.snDate + "," + data.comment + "," + data.warning + "," + data.charact + "," + data.modif + ")";
                    //cmdAdd = @"UPDATE ""BRANCHES_EURO"".""@ACC_PAINTS_ITEMS_2"" SET ""LineId""=" + Int32.Parse(data.lineId) + "WHERE \"DocEntry\"=" + Int32.Parse(data.docEntry);
                    //cmdAdd = @"UPDATE ""BRANCHES_EURO"".""@ACC_PAINTS_ITEMS_2"" SET ""LineId""= ' WHERE \"DocEntry\"=" + Int32.Parse(data.docEntry);
                }
                else if (param == 2)
                {
                    cmdAdd = @"UPDATE ""BRANCHES_EURO"".""@ACC_PAINTS_ITEMS_2"" SET ""LineId""=" + Int32.Parse(data.lineId) + "WHERE \"U_insID\"=" + Int32.Parse(data.insID);
                }

                using (HanaCommand cmd = new HanaCommand()
                {
                    CommandText = cmdAdd, Connection = connection
                })
                {
                    cmd.ExecuteNonQuery();
                }

                connection.Close();
            }
        }
示例#20
0
 public void CallUpdateProcedure(HanaConnection connection, int docEntry, int result)
 {
     try
     {
         HanaCommand cmd = new HanaCommand(Queries.UpdateResult, connection);
         cmd.CommandType = CommandType.StoredProcedure;
         cmd.Parameters.Add("@DocEntry", SqlDbType.Int).Value = docEntry;
         cmd.Parameters.Add("@Result", SqlDbType.Int).Value   = result;
         cmd.ExecuteNonQuery();
     }
     catch (Exception e)
     {
         Console.WriteLine(e.Message);
         CallUpdateProcedure(connection, docEntry, 3);
     }
 }
示例#21
0
        public void Create()
        {
            if (Connection.State != ConnectionState.Open)
            {
                Connection.Open();
            }

            if (!string.IsNullOrEmpty(_schemaName))
            {
                using (var command = new HanaCommand($"CREATE SCHEMA \"{_schemaName}\";", Connection, Transaction))
                    command.ExecuteNonQuery();
            }

            string createCommand = $"CREATE SEQUENCE {NameWithSchema} INCREMENT BY 2 MINVALUE 0 MAXVALUE 100 START WITH 2 CACHE 10 CYCLE";

            using (var command = new HanaCommand(createCommand, Connection, Transaction))
                command.ExecuteNonQuery();
        }
示例#22
0
        public DataTable VentasGeneralesDetalladaSAPDT(string Marca)
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VTAS_WEB_LISTAPRECIOSTOCK";

                HanaParameter mar = new HanaParameter();

                // Parametro Canal.
                mar            = cmd.CreateParameter();
                mar.HanaDbType = HanaDbType.VarChar;
                mar.Direction  = ParameterDirection.Input;
                mar.Value      = Marca;
                cmd.Parameters.Add(mar);


                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch (SqlException)
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
示例#23
0
        public DataTable SapListaPrecioDetalleDT(string Lista)
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VTAS_WEB_LISTA_PRECIO_DETALLES";

                HanaParameter List = new HanaParameter();

                // Parametro Canal.
                List            = cmd.CreateParameter();
                List.HanaDbType = HanaDbType.VarChar;
                List.Direction  = ParameterDirection.Input;
                List.Value      = Lista;
                cmd.Parameters.Add(List);


                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch (SqlException)
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
示例#24
0
        public static void Execute(string commandText
                                   , HanaParameter parameter         = null
                                   , List <HanaParameter> parameters = null
                                   , Dictionary <string, object> paramsOutputValue = null
                                   , CommandType type            = CommandType.StoredProcedure
                                   , HanaConnection connection   = null
                                   , HanaTransaction transaction = null)
        {
            HanaCommand command = null;

            try
            {
                if (connection == null)
                {
                    connection = OpenConnection();
                }

                command = PrepareCommand(commandText, connection, type, parameter, parameters, transaction);
                command.ExecuteNonQuery();
                if (parameter != null || parameters != null)
                {
                    foreach (HanaParameter x in parameters)
                    {
                        if (x.Direction == ParameterDirection.Output)
                        {
                            paramsOutputValue.Add(x.ParameterName, command.Parameters[x.ParameterName].Value);
                        }
                    }
                }
            }
            catch (HanaException)
            {
                throw;
            }
            finally
            {
                CloseCommand(command);
                if (transaction == null)
                {
                    CloseConnection(connection);
                }
            }
        }
示例#25
0
        /// <summary>
        /// 新增、修改、刪除
        /// 傳入參數對SQL資料做更動
        /// 此方法可自行設定要用哪種Type(SP OR SQLString)
        /// 包含交易物件
        /// </summary>
        /// <param name="sqlString">SqlSreing語法或SP名稱</param>
        /// <param name="cmdType">使用的Type</param>
        /// <param name="connection">連線物件(為了確保同一個連線)</param>
        /// <param name="tran">交易物件(為了確保同一筆交易)</param>
        /// <param name="paramsArr">HanaParameter參數陣列</param>
        /// <returns>回傳資料異動數</returns>
        public int ExcuteSQL(string sqlString, CommandType cmdType, ref HanaConnection connection, ref HanaTransaction tran, object[] paramsArr)
        {
            int num;
            int result = 0;

            HanaCommand cmd = new HanaCommand()
            {
                CommandType = cmdType
            };

            HanaParameter[] cmdParams = null;
            if (paramsArr != null)
            {
                cmdParams = new HanaParameter[paramsArr.Length];
                SettingParams(cmdParams, paramsArr);
            }

            CmdSettingModel cmdSetModel = new CmdSettingModel()
            {
                Conn = connection, Trans = tran, Text = sqlString
            };

            SettingCommand(cmd, cmdSetModel, cmdParams);

            try
            {
                result = cmd.ExecuteNonQuery();
                SqlParameterOutputSetting(cmdParams);
                num = result;
            }
            catch (HanaException sqlException)
            {
                throw new Exception(string.Concat("存取SQL Server發生錯誤. SysInfo=", sqlException.Message));
            }
            catch (Exception exception)
            {
                throw exception;
            }
            return(num);
        }
示例#26
0
        public DataTable VentasSTOCKSAPConsultar(String CodigoStock)
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_LOG_WEB_Stock";
                HanaParameter param = new HanaParameter();
                param            = cmd.CreateParameter();
                param.HanaDbType = HanaDbType.NVarChar;
                param.Direction  = ParameterDirection.Input;
                param.Value      = CodigoStock;
                cmd.Parameters.Add(param);

                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch (SqlException)
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
        public static void SaveLayout(System.IO.MemoryStream stream, string id)
        {
            try
            {
                HanaConnection conn = new HanaConnection(string.Format("Server={0};UserID={1};Password={2}", ConfigurationManager.AppSettings["SAPServer"], ConfigurationManager.AppSettings["SAPUsername"], ConfigurationManager.AppSettings["SAPPassword"]));
                conn.Open();
                HanaCommand   insertCmd = new HanaCommand(string.Format("UPDATE {0}.\"@PRINTDOCUMENT\" SET \"LAYOUT\" = ? WHERE \"Code\" LIKE ?", System.Configuration.ConfigurationManager.AppSettings["SAPDatabase"]), conn);
                HanaParameter parm      = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarBinary;
                insertCmd.Parameters.Add(parm);
                parm            = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarChar;
                insertCmd.Parameters.Add(parm);

                insertCmd.Parameters[0].Value = stream.ToArray();
                insertCmd.Parameters[1].Value = id;
                int recordsAffected = insertCmd.ExecuteNonQuery();
                conn.Close();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#28
0
        public DataSet SAPSeguimientoOCDS(DateTime FechaInicio, DateTime FechaFin, string CodProveedor, string NomProveedor, string Solicitud, string Orden, string Entrada, string Factura)
        {
            DataSet dts = new DataSet();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_LOG_RPT_SEGUIMIENTO_OC";

                HanaParameter fechaI   = new HanaParameter();
                HanaParameter fechaFin = new HanaParameter();
                HanaParameter codPro   = new HanaParameter();
                HanaParameter nomPro   = new HanaParameter();
                HanaParameter Soli     = new HanaParameter();
                HanaParameter Ord      = new HanaParameter();
                HanaParameter entrada  = new HanaParameter();
                HanaParameter factura  = new HanaParameter();

                // Parametro Fecha 1.
                fechaI            = cmd.CreateParameter();
                fechaI.HanaDbType = HanaDbType.Date;
                fechaI.Direction  = ParameterDirection.Input;
                fechaI.Value      = FechaInicio;
                cmd.Parameters.Add(fechaI);

                // Parametro Fecha 2.
                fechaFin            = cmd.CreateParameter();
                fechaFin.HanaDbType = HanaDbType.Date;
                fechaFin.Direction  = ParameterDirection.Input;
                fechaFin.Value      = FechaFin;;
                cmd.Parameters.Add(fechaFin);


                codPro            = cmd.CreateParameter();
                codPro.HanaDbType = HanaDbType.VarChar;
                codPro.Direction  = ParameterDirection.Input;
                codPro.Value      = CodProveedor;
                cmd.Parameters.Add(codPro);

                nomPro            = cmd.CreateParameter();
                nomPro.HanaDbType = HanaDbType.VarChar;
                nomPro.Direction  = ParameterDirection.Input;
                nomPro.Value      = NomProveedor;
                cmd.Parameters.Add(nomPro);

                Soli            = cmd.CreateParameter();
                Soli.HanaDbType = HanaDbType.VarChar;
                Soli.Direction  = ParameterDirection.Input;
                Soli.Value      = Solicitud;
                cmd.Parameters.Add(Soli);

                Ord            = cmd.CreateParameter();
                Ord.HanaDbType = HanaDbType.VarChar;
                Ord.Direction  = ParameterDirection.Input;
                Ord.Value      = Orden;
                cmd.Parameters.Add(Ord);

                entrada            = cmd.CreateParameter();
                entrada.HanaDbType = HanaDbType.VarChar;
                entrada.Direction  = ParameterDirection.Input;
                entrada.Value      = Entrada;
                cmd.Parameters.Add(entrada);

                factura            = cmd.CreateParameter();
                factura.HanaDbType = HanaDbType.VarChar;
                factura.Direction  = ParameterDirection.Input;
                factura.Value      = Factura;
                cmd.Parameters.Add(factura);


                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dts, "ACSA_LOG_RPT_SEGUIMIENTO_OC");
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            finally
            {
                cmd.Parameters.Clear();
            }

            //return (dts.Tables["VentasMensualesGCDetalladoxCanal"]);
            return(dts);

            /*
             *
             * catch (SqlException)
             * {
             *
             *   throw new Exception();
             *
             * }
             * finally
             * {
             *   if (cnx.State == ConnectionState.Open)
             *   {
             *       cnx.Close();
             *   }
             *   cmd.Parameters.Clear();
             * }*/
        }
        public static string InsertUpdatePrintDocument(string name, string group,
                                                       string sqlQuery, string printDocumentID,
                                                       DateTime?modifiedDate = null)
        {
            var cmd      = "";
            var isInsert = false;

            if (printDocumentID == "" || printDocumentID == "0")
            {
                var printID = Utility.hanaConnection(string.Format("SELECT TOP 1 \"Code\" FROM {0}.\"@PRINTDOCUMENT\" ORDER BY \"Code\" * 1 DESC", System.Configuration.ConfigurationManager.AppSettings["SAPDatabase"]));
                if (printID == null)
                {
                    printDocumentID = "1";
                }
                else
                {
                    if (printID.Rows.Count == 0)
                    {
                        printDocumentID = "1";
                    }
                    else
                    {
                        printDocumentID = (Convert.ToDecimal(printID.Rows[0]["Code"]) + 1).ToString();
                    }
                }

                HanaConnection conn = new HanaConnection(string.Format("Server={0};UserID={1};Password={2}", ConfigurationManager.AppSettings["SAPServer"], ConfigurationManager.AppSettings["SAPUsername"], ConfigurationManager.AppSettings["SAPPassword"]));
                conn.Open();
                HanaCommand   insertCmd = new HanaCommand(string.Format("INSERT INTO {0}.\"@PRINTDOCUMENT\" (\"Name\", \"QUERY\", \"Code\", \"GROUP\", \"PRINTNAME\", \"U_IsDeleted\") VALUES ( ?, ?, ?, ?, ?, 0)", System.Configuration.ConfigurationManager.AppSettings["SAPDatabase"]), conn);
                HanaParameter parm      = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarChar;
                insertCmd.Parameters.Add(parm);
                parm            = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarBinary;
                insertCmd.Parameters.Add(parm);
                parm            = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarChar;
                insertCmd.Parameters.Add(parm);
                parm            = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarChar;
                insertCmd.Parameters.Add(parm);
                parm            = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarChar;
                insertCmd.Parameters.Add(parm);

                insertCmd.Parameters[0].Value = group + ' ' + name;
                insertCmd.Parameters[1].Value = System.Text.Encoding.ASCII.GetBytes(sqlQuery);
                insertCmd.Parameters[2].Value = printDocumentID;
                insertCmd.Parameters[3].Value = group;
                insertCmd.Parameters[4].Value = name;
                int recordsAffected = insertCmd.ExecuteNonQuery();
                conn.Close();

                isInsert = true;
            }
            else
            {
                HanaConnection conn = new HanaConnection(string.Format("Server={0};UserID={1};Password={2}", ConfigurationManager.AppSettings["SAPServer"], ConfigurationManager.AppSettings["SAPUsername"], ConfigurationManager.AppSettings["SAPPassword"]));
                conn.Open();
                HanaCommand   insertCmd = new HanaCommand(string.Format("UPDATE {0}.\"@PRINTDOCUMENT\" SET \"Name\" = ?, \"QUERY\" = ?, \"GROUP\" = ?, \"PRINTNAME\" = ? WHERE \"Code\" = ?", System.Configuration.ConfigurationManager.AppSettings["SAPDatabase"]), conn);
                HanaParameter parm      = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarChar;
                insertCmd.Parameters.Add(parm);
                parm            = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarBinary;
                insertCmd.Parameters.Add(parm);
                parm            = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarChar;
                insertCmd.Parameters.Add(parm);
                parm            = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarChar;
                insertCmd.Parameters.Add(parm);
                parm            = new HanaParameter();
                parm.HanaDbType = HanaDbType.VarChar;
                insertCmd.Parameters.Add(parm);

                insertCmd.Parameters[0].Value = group + ' ' + name;
                insertCmd.Parameters[1].Value = System.Text.Encoding.ASCII.GetBytes(sqlQuery);
                insertCmd.Parameters[2].Value = group;
                insertCmd.Parameters[3].Value = name;
                insertCmd.Parameters[4].Value = printDocumentID;
                int recordsAffected = insertCmd.ExecuteNonQuery();
                conn.Close();
            }

            if (isInsert)
            {
                var obj = Utility.hanaConnection(string.Format("SELECT \"Code\" FROM {1}.\"@PRINTDOCUMENT\" WHERE \"U_IsDeleted\" = 0 AND \"Name\" LIKE '{0}'", group + ' ' + name, System.Configuration.ConfigurationManager.AppSettings["SAPDatabase"]));
                printDocumentID = obj == null || obj.Rows.Count == 0 ? "0" : obj.Rows[0]["Code"].ToString();
            }
            return(printDocumentID);
        }
示例#30
0
        public DataTable DocumentosAutorizadosConsultar(DateTime fechaInicial, DateTime fechaFinal, string numSAP, string codCliente, string codAlmacen)
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();
                HanaCommand cmd = new HanaCommand("", cnx);
                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VEN_RPT_FLUJODEOVS";

                HanaParameter FechaInicio = new HanaParameter();
                HanaParameter FechaFin    = new HanaParameter();
                HanaParameter NumSAP      = new HanaParameter();
                HanaParameter CodCliente  = new HanaParameter();
                HanaParameter CodAlmacen  = new HanaParameter();
                // Parametro Fecha 1.
                FechaInicio            = cmd.CreateParameter();
                FechaInicio.HanaDbType = HanaDbType.Date;
                FechaInicio.Direction  = ParameterDirection.Input;
                FechaInicio.Value      = fechaInicial;
                cmd.Parameters.Add(FechaInicio);

                // Parametro Fecha 2.
                FechaFin            = cmd.CreateParameter();
                FechaFin.HanaDbType = HanaDbType.Date;
                FechaFin.Direction  = ParameterDirection.Input;
                FechaFin.Value      = fechaFinal;;
                cmd.Parameters.Add(FechaFin);

                // Parametro Numero de Orden de Venta.
                NumSAP            = cmd.CreateParameter();
                NumSAP.HanaDbType = HanaDbType.VarChar;
                NumSAP.Direction  = ParameterDirection.Input;
                NumSAP.Value      = numSAP;
                cmd.Parameters.Add(NumSAP);

                // Parametro Cliente.
                CodCliente            = cmd.CreateParameter();
                CodCliente.HanaDbType = HanaDbType.VarChar;
                CodCliente.Direction  = ParameterDirection.Input;
                CodCliente.Value      = codCliente;
                cmd.Parameters.Add(CodCliente);

                // Parametro Almacen.
                CodAlmacen            = cmd.CreateParameter();
                CodAlmacen.HanaDbType = HanaDbType.VarChar;
                CodAlmacen.Direction  = ParameterDirection.Input;
                CodAlmacen.Value      = codAlmacen;
                cmd.Parameters.Add(CodAlmacen);

                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
        public DataTable CostoInvetarioDSDT(DateTime FechaInicio, DateTime FechaFin, string CodCliente, string Canal)
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_CON_RPT_INVENTARIO";

                HanaParameter f1 = new HanaParameter();
                HanaParameter f2 = new HanaParameter();
                HanaParameter cc = new HanaParameter();
                HanaParameter c  = new HanaParameter();

                // Parametro Fecha 1.
                f1            = cmd.CreateParameter();
                f1.HanaDbType = HanaDbType.Date;
                f1.Direction  = ParameterDirection.Input;
                f1.Value      = FechaInicio;
                cmd.Parameters.Add(f1);

                // Parametro Fecha 2.
                f2            = cmd.CreateParameter();
                f2.HanaDbType = HanaDbType.Date;
                f2.Direction  = ParameterDirection.Input;
                f2.Value      = FechaFin;;
                cmd.Parameters.Add(f2);

                // Parametro Cliente.
                cc            = cmd.CreateParameter();
                cc.HanaDbType = HanaDbType.VarChar;
                cc.Direction  = ParameterDirection.Input;
                cc.Value      = CodCliente;
                cmd.Parameters.Add(cc);

                // Parametro Canal.
                c            = cmd.CreateParameter();
                c.HanaDbType = HanaDbType.VarChar;
                c.Direction  = ParameterDirection.Input;
                c.Value      = Canal;
                cmd.Parameters.Add(c);


                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch (SqlException)
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
        public DataTable SAPSeguimientoOCIMPDT(DateTime FechaInicio, DateTime FechaFin, string CodProveedor, string NomProveedor, string Solicitud, string Orden, string Reserva, string Entrada, string Precio, string Transferencia)
        {
            DataTable dt = new DataTable();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_LOG_RPT_SEGUIMIENTO_OC_IMP";

                HanaParameter fechaI        = new HanaParameter();
                HanaParameter fechaFin      = new HanaParameter();
                HanaParameter codPro        = new HanaParameter();
                HanaParameter nomPro        = new HanaParameter();
                HanaParameter Soli          = new HanaParameter();
                HanaParameter Ord           = new HanaParameter();
                HanaParameter reser         = new HanaParameter();
                HanaParameter entrada       = new HanaParameter();
                HanaParameter precio        = new HanaParameter();
                HanaParameter transferencia = new HanaParameter();
                // Parametro Fecha 1.
                fechaI            = cmd.CreateParameter();
                fechaI.HanaDbType = HanaDbType.Date;
                fechaI.Direction  = ParameterDirection.Input;
                fechaI.Value      = FechaInicio;
                cmd.Parameters.Add(fechaI);

                // Parametro Fecha 2.
                fechaFin            = cmd.CreateParameter();
                fechaFin.HanaDbType = HanaDbType.Date;
                fechaFin.Direction  = ParameterDirection.Input;
                fechaFin.Value      = FechaFin;;
                cmd.Parameters.Add(fechaFin);


                codPro            = cmd.CreateParameter();
                codPro.HanaDbType = HanaDbType.VarChar;
                codPro.Direction  = ParameterDirection.Input;
                codPro.Value      = CodProveedor;
                cmd.Parameters.Add(codPro);

                nomPro            = cmd.CreateParameter();
                nomPro.HanaDbType = HanaDbType.VarChar;
                nomPro.Direction  = ParameterDirection.Input;
                nomPro.Value      = NomProveedor;
                cmd.Parameters.Add(nomPro);

                Soli            = cmd.CreateParameter();
                Soli.HanaDbType = HanaDbType.VarChar;
                Soli.Direction  = ParameterDirection.Input;
                Soli.Value      = Solicitud;
                cmd.Parameters.Add(Soli);

                Ord            = cmd.CreateParameter();
                Ord.HanaDbType = HanaDbType.VarChar;
                Ord.Direction  = ParameterDirection.Input;
                Ord.Value      = Orden;
                cmd.Parameters.Add(Ord);

                reser            = cmd.CreateParameter();
                reser.HanaDbType = HanaDbType.VarChar;
                reser.Direction  = ParameterDirection.Input;
                reser.Value      = Reserva;
                cmd.Parameters.Add(reser);

                entrada            = cmd.CreateParameter();
                entrada.HanaDbType = HanaDbType.VarChar;
                entrada.Direction  = ParameterDirection.Input;
                entrada.Value      = Entrada;
                cmd.Parameters.Add(entrada);

                precio            = cmd.CreateParameter();
                precio.HanaDbType = HanaDbType.VarChar;
                precio.Direction  = ParameterDirection.Input;
                precio.Value      = Precio;
                cmd.Parameters.Add(precio);

                transferencia            = cmd.CreateParameter();
                transferencia.HanaDbType = HanaDbType.VarChar;
                transferencia.Direction  = ParameterDirection.Input;
                transferencia.Value      = Transferencia;
                cmd.Parameters.Add(transferencia);

                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dt);
                return(dt);
            }
            catch (SqlException)
            {
                throw new Exception();
            }
            finally
            {
                if (cnx.State == ConnectionState.Open)
                {
                    cnx.Close();
                }
                cmd.Parameters.Clear();
            }
        }
        public DataSet VentaClienteDS(DateTime fechaInicial, DateTime fechaFinal)
        {
            DataSet dts = new DataSet();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VEN_RPT_VENTACLIENTES";

                HanaParameter f1 = new HanaParameter();
                HanaParameter f2 = new HanaParameter();

                // Parametro Fecha 1.
                f1            = cmd.CreateParameter();
                f1.HanaDbType = HanaDbType.Date;
                f1.Direction  = ParameterDirection.Input;
                f1.Value      = fechaInicial;
                cmd.Parameters.Add(f1);

                // Parametro Fecha 2.
                f2            = cmd.CreateParameter();
                f2.HanaDbType = HanaDbType.Date;
                f2.Direction  = ParameterDirection.Input;
                f2.Value      = fechaFinal;;
                cmd.Parameters.Add(f2);



                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dts, "ACSA_VEN_RPT_VENTACLIENTES");
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            finally
            {
                cmd.Parameters.Clear();
            }

            //return (dts.Tables["VentasMensualesGCDetalladoxCanal"]);
            return(dts);

            /*
             *
             * catch (SqlException)
             * {
             *
             *   throw new Exception();
             *
             * }
             * finally
             * {
             *   if (cnx.State == ConnectionState.Open)
             *   {
             *       cnx.Close();
             *   }
             *   cmd.Parameters.Clear();
             * }*/
        }
        public DataSet VentasGeneralesDetalladaSAPEEDS(DateTime fecha1, DateTime fecha2, string Canal)
        {
            DataSet dts = new DataSet();

            try
            {
                cnx.Open();

                HanaCommand cmd = new HanaCommand("", cnx);

                cmd.CommandType    = CommandType.StoredProcedure;
                cmd.CommandTimeout = 0;
                cmd.CommandText    = "SBO_ACSA_PROD.ACSA_VTAS_WEB_VentaGCxDetalladaProducto";

                HanaParameter f1 = new HanaParameter();
                HanaParameter f2 = new HanaParameter();
                HanaParameter pc = new HanaParameter();

                // Parametro Fecha 1.
                f1            = cmd.CreateParameter();
                f1.HanaDbType = HanaDbType.Date;
                f1.Direction  = ParameterDirection.Input;
                f1.Value      = fecha1;
                cmd.Parameters.Add(f1);

                // Parametro Fecha 2.
                f2            = cmd.CreateParameter();
                f2.HanaDbType = HanaDbType.Date;
                f2.Direction  = ParameterDirection.Input;
                f2.Value      = fecha2;;
                cmd.Parameters.Add(f2);

                // Parametro Canal.
                pc            = cmd.CreateParameter();
                pc.HanaDbType = HanaDbType.VarChar;
                pc.Direction  = ParameterDirection.Input;
                pc.Value      = Canal;
                cmd.Parameters.Add(pc);


                cmd.ExecuteNonQuery();

                HanaDataAdapter ada = new HanaDataAdapter(cmd);
                ada.Fill(dts, "ACSA_VTAS_WEB_VentaGCxDetalladaProducto");
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            finally
            {
                cmd.Parameters.Clear();
            }

            //return (dts.Tables["VentasMensualesGCDetalladoxCanal"]);
            return(dts);

            /*
             *
             * catch (SqlException)
             * {
             *
             *   throw new Exception();
             *
             * }
             * finally
             * {
             *   if (cnx.State == ConnectionState.Open)
             *   {
             *       cnx.Close();
             *   }
             *   cmd.Parameters.Clear();
             * }*/
        }
示例#35
0
 public void WithUniqueConstraintOn(string column, string name)
 {
     var sb = new StringBuilder();
     sb.Append(string.Format("ALTER TABLE {0} ADD CONSTRAINT {1} UNIQUE ({2})", quoter.QuoteTableName(Name), quoter.QuoteConstraintName(name), quoter.QuoteColumnName(column)));
     using (var command = new HanaCommand(sb.ToString(), Connection))
         command.ExecuteNonQuery();
     
     constraints.Add(name);
 }
示例#36
0
 public void WithDefaultValueOn(string column)
 {
     const int defaultValue = 1;
     using (var command = new HanaCommand(string.Format(" ALTER TABLE {0}.{1} ALTER {2} SET DEFAULT {3}", quoter.QuoteSchemaName(_schemaName), quoter.QuoteTableName(Name), quoter.QuoteColumnName(column), defaultValue), Connection, Transaction))
         command.ExecuteNonQuery();
 }
示例#37
0
        public string WithIndexOn(string column)
        {
            var indexName = string.Format("idx_{0}", column);

            var quotedObjectName = quoter.QuoteTableName(Name);

            var quotedIndexName = quoter.QuoteIndexName(indexName);

            indexies.Add(quotedIndexName);

            using (var command = new HanaCommand(string.Format("CREATE INDEX {0} ON {1} ({2})", quotedIndexName, quotedObjectName, quoter.QuoteColumnName(column)), Connection, Transaction))
                command.ExecuteNonQuery();

            return indexName;
        }