public void SetUp ()
 {
   _stageMock = MockRepository.GenerateStrictMock<ISqlGenerationStage>();
   _commandBuilder = new SqlCommandBuilder();
   _leftIntegerExpression = Expression.Constant (1);
   _rightIntegerExpression = Expression.Constant (2);
 }
    public void SetUp ()
    {
      var sqlTable = SqlStatementModelObjectMother.CreateSqlTable_WithResolvedTableInfo();
      _entityExpression = new SqlEntityDefinitionExpression (
          typeof (string),
          "t",
          null,
          e => e.GetColumn (typeof (string), "ID", true),
          new SqlColumnExpression[]
          {
              new SqlColumnDefinitionExpression (typeof (string), "t", "ID", true),
              new SqlColumnDefinitionExpression (typeof (int), "t", "Name", false),
              new SqlColumnDefinitionExpression (typeof (int), "t", "City", false)
          });

      _sqlStatement = new SqlStatement (
          new TestStreamedValueInfo (typeof (int)),
          _entityExpression,
          new[] { sqlTable },
          null,
          null,
          new Ordering[] { },
          null,
          false,
          null,
          null);
      _commandBuilder = new SqlCommandBuilder();
    }
    public void Generate ()
    {
      var commandBuilder = new SqlCommandBuilder();
      var visitor = MockRepository.GenerateMock<ExpressionTreeVisitor>();
      var stage = MockRepository.GenerateMock<ISqlGenerationStage>();

      _sqlCustomTextExpression.Generate (commandBuilder, visitor, stage);

      Assert.That (commandBuilder.GetCommandText(), Is.EqualTo ("test"));
    }
Пример #4
0
        /// <summary>
        /// 获取选择语句内容
        /// </summary>
        /// <param name="baseCommand">源选择语句</param>
        /// <param name="orderReverse">是否反转排序</param>
        /// <returns>选择语句内容</returns>
        internal static String InternalGetPagerCommand(SelectCommand baseCommand, Boolean orderReverse)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(baseCommand.Database);
            sb.AppendSelectPrefix();
            sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.QueryFields);

            if (baseCommand.PageSize > 0 && baseCommand.RecordStart > 0)//分页模式
            {
                /*
                    SELECT * FROM
                    (
                        SELECT *, ROWNUM RN
                        FROM (SELECT * FROM TABLE_NAME)
                        WHERE ROWNUM <= 30
                    )
                    WHERE RN > 20
                */

                SelectCommand innestCommand = new SelectCommand(baseCommand.Database, baseCommand.TableName);
                innestCommand.QueryFields = baseCommand.QueryFields;
                innestCommand.SqlJoins = baseCommand.SqlJoins;
                innestCommand.SqlWhere = baseCommand.SqlWhere;
                innestCommand.GroupByColumns = baseCommand.GroupByColumns;
                innestCommand.SqlHaving = baseCommand.SqlHaving;
                innestCommand.SqlOrders = baseCommand.SqlOrders;

                SelectCommand innerCommand = new SelectCommand(baseCommand.Database, innestCommand, "");
                innerCommand.SqlWhere = SqlCondition.LessThanOrEqualColumn(innerCommand, "ROWNUM", (baseCommand.RecordStart + baseCommand.PageSize).ToString());
                innerCommand.InternalQuerys(baseCommand.QueryFields.ToArray());
                innerCommand.InternalQuerys(SqlQueryField.InternalCreateFromFunction(baseCommand, "ROWNUM", "RN"));

                sb.AppendSelectFrom(innerCommand.GetCommandText(), true);
                sb.AppendWhere(SqlCondition.GreaterThanColumn(baseCommand, "RN", baseCommand.RecordStart.ToString()));
            }
            else//正常模式
            {
                sb.AppendSelectFromAndJoins(baseCommand.TableName, baseCommand.IsFromSql, baseCommand.SqlJoins);

                ISqlCondition where = baseCommand.SqlWhere;

                if (baseCommand.PageSize > 0)
                {
                    where = SqlCondition.And(baseCommand, where, SqlCondition.LessThanOrEqualColumn(baseCommand, "ROWNUM", baseCommand.PageSize.ToString()));
                }

                sb.AppendWhere(where);
                sb.AppendSelectGroupBys(baseCommand.GroupByColumns);
                sb.AppendHaving(baseCommand.SqlHaving);
                sb.AppendSelectOrderBys(baseCommand.SqlOrders, orderReverse);
            }

            return sb.ToString();
        }
        /// <summary>
        /// 获取选择语句内容
        /// </summary>
        /// <param name="baseCommand">源选择语句</param>
        /// <param name="orderReverse">是否反转排序</param>
        /// <returns>选择语句内容</returns>
        internal static String InternalGetPagerCommand(SelectCommand baseCommand, Boolean orderReverse)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(baseCommand.Database);
            sb.AppendSelectPrefix();

            if (baseCommand.PageSize > 0 && baseCommand.RecordStart > 0)//分页模式
            {
                /*
                    SELECT * FROM
                    (
                        SELECT TOP 30 *, ROW_NUMBER() OVER(ORDER BY ID ASC) AS RN
                        FROM TABLE_NAME
                    ) AS T
                    WHERE RN > 20
                */

                sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.QueryFields);

                SqlCommandBuilder innerBuilder = new SqlCommandBuilder(baseCommand.Database);
                innerBuilder.AppendSelectOrderBys(baseCommand.SqlOrders, false);

                SelectCommand innerCommand = new SelectCommand(baseCommand.Database, baseCommand.TableName);
                innerCommand.InternalQuerys(baseCommand.QueryFields.ToArray());
                innerCommand.InternalQuerys(SqlQueryField.InternalCreateFromFunction(baseCommand, "ROW_NUMBER() OVER( " + innerBuilder.ToString() + ")", "RN"));
                innerCommand.PageSize = baseCommand.RecordStart + baseCommand.PageSize;
                innerCommand.SqlJoins = baseCommand.SqlJoins;
                innerCommand.SqlWhere = baseCommand.SqlWhere;
                innerCommand.GroupByColumns = baseCommand.GroupByColumns;
                innerCommand.SqlHaving = baseCommand.SqlHaving;

                sb.AppendSelectFrom(innerCommand.GetCommandText("T"), true);
                sb.AppendWhere(SqlCondition.GreaterThanColumn(baseCommand, "RN", baseCommand.RecordStart.ToString()));
            }
            else//正常模式
            {
                if (baseCommand.PageSize > 0)
                {
                    sb.AppendSelectTop(baseCommand.PageSize);
                }

                sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.QueryFields);
                sb.AppendSelectFromAndJoins(baseCommand.TableName, baseCommand.IsFromSql, baseCommand.SqlJoins);

                sb.AppendWhere(baseCommand.SqlWhere);
                sb.AppendSelectGroupBys(baseCommand.GroupByColumns);
                sb.AppendHaving(baseCommand.SqlHaving);
                sb.AppendSelectOrderBys(baseCommand.SqlOrders, orderReverse);
            }

            return sb.ToString();
        }
    public void Generate ()
    {
      var visitor = MockRepository.GeneratePartialMock<TestableExpressionTreeVisitor>();
      var commandBuilder = new SqlCommandBuilder();

      visitor
          .Expect (mock => mock.VisitExpression (_expression1))
          .Return (_expression1);
      visitor
          .Expect (mock => mock.VisitExpression (_expression2))
          .Return (_expression2);
      visitor.Replay();

      _sqlCompositeCustomTextGeneratorExpression.Generate (commandBuilder, visitor, MockRepository.GenerateStub<ISqlGenerationStage>());

      visitor.VerifyAllExpectations();
    }
        /// <summary>
        /// 获取选择语句内容
        /// </summary>
        /// <param name="cmd">选择语句类</param>
        /// <param name="realPageIndex">实际页索引</param>
        /// <param name="realPageCount">实际页数量</param>
        /// <param name="orderReverse">是否反转排序</param>
        /// <returns>选择语句内容</returns>
        internal static String InternalGetSelectCommand(SelectCommand cmd, Int32 realPageIndex, Int32 realPageCount, Boolean orderReverse)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(cmd.DatabaseType);
            sb.AppendSelectPrefix();
            sb.AppendSelectDistinct(cmd.UseDistinct).AppendAllColumnNames(cmd.QueryFields);

            if (cmd.PageSize == 0)//正常模式
            {
                sb.AppendSelectFromAndJoins(cmd.TableName, cmd.IsFromSql, cmd.SqlJoins);

                sb.AppendWhere(cmd.SqlWhere);
                sb.AppendSelectGroupBys(cmd.GroupByColumns);
                sb.AppendHaving(cmd.SqlHaving);
                sb.AppendSelectOrderBys(cmd.SqlOrders, orderReverse);
            }
            else//分页模式
            {
                /*
                    SELECT * FROM
                    (
                        SELECT A.*, ROWNUM RN
                        FROM (SELECT * FROM TABLE_NAME) A
                        WHERE ROWNUM <= 40
                    )
                    WHERE RN >= 21 
                */
                SelectCommand innestCommand = new SelectCommand(cmd.Database, cmd.TableName);
                innestCommand.QueryFields = cmd.QueryFields;
                innestCommand.SqlJoins = cmd.SqlJoins;
                innestCommand.SqlWhere = cmd.SqlWhere;
                innestCommand.GroupByColumns = cmd.GroupByColumns;
                innestCommand.SqlHaving = cmd.SqlHaving;
                innestCommand.SqlOrders = cmd.SqlOrders;
                
                SelectCommand innerCommand = new SelectCommand(cmd.Database, innestCommand, "T");
                innerCommand.SqlWhere = SqlCondition.LessThanOrEqual("ROWNUM", realPageIndex * cmd.PageSize);
                innerCommand.InternalQuerys(cmd.QueryFields.ToArray());
                innerCommand.InternalQuerys(SqlQueryField.InternalCreateFromFunction("ROWNUM", "RN"));
                
                sb.AppendSelectFrom(innerCommand.ToString("T"), true);
                sb.AppendWhere(SqlCondition.GreaterThanOrEqual("RN", (realPageIndex - 1) * cmd.PageSize + 1));
            }

            return sb.ToString();
        }
    public void SetUp ()
    {
      _stageMock = MockRepository.GenerateStrictMock<ISqlGenerationStage> ();
      _commandBuilder = new SqlCommandBuilder ();
      _visitor = new TestableSqlGeneratingOuterSelectExpressionVisitor (_commandBuilder, _stageMock);

      _namedIntExpression = new NamedExpression ("test", Expression.Constant (0));
      _nameColumnExpression = new SqlColumnDefinitionExpression (typeof (string), "c", "Name", false);
      _entityExpression = new SqlEntityDefinitionExpression (
          typeof (Cook),
          "c",
          "test",
          e => e,
          new SqlColumnDefinitionExpression (typeof (int), "c", "ID", true),
          _nameColumnExpression,
          new SqlColumnDefinitionExpression (typeof (string), "c", "FirstName", false)
          );
    }
    public void SetUp ()
    {
      _sqlTable = SqlStatementModelObjectMother.CreateSqlTable_WithResolvedTableInfo();
      _entityExpression = new SqlEntityDefinitionExpression (
          typeof(string),
          "t", null,
          e => e.GetColumn (typeof (int), "ID", true),
          new SqlColumnExpression[]
          {
              new SqlColumnDefinitionExpression (typeof (int), "t", "ID", true),
              new SqlColumnDefinitionExpression (typeof (int), "t", "Name", false),
              new SqlColumnDefinitionExpression (typeof (int), "t", "City", false)
          });

      _stageMock = MockRepository.GenerateStrictMock<ISqlGenerationStage>();
      _generator = new TestableSqlStatementTextGenerator (_stageMock);
      _commandBuilder = new SqlCommandBuilder();
    }
        /// <summary>
        /// 获取选择语句内容
        /// </summary>
        /// <param name="cmd">选择语句类</param>
        /// <param name="realPageIndex">实际页索引</param>
        /// <param name="realPageCount">实际页数量</param>
        /// <param name="orderReverse">是否反转排序</param>
        /// <returns>选择语句内容</returns>
        internal static String InternalGetSelectCommand(SelectCommand cmd, Int32 realPageIndex, Int32 realPageCount, Boolean orderReverse)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(cmd.DatabaseType);
            sb.AppendSelectPrefix();
            
            sb.AppendSelectDistinct(cmd.UseDistinct).AppendAllColumnNames(cmd.QueryFields);
            sb.AppendSelectFromAndJoins(cmd.TableName, cmd.IsFromSql, cmd.SqlJoins);

            sb.AppendWhere(cmd.SqlWhere);
            sb.AppendSelectGroupBys(cmd.GroupByColumns);
            sb.AppendHaving(cmd.SqlHaving);
            sb.AppendSelectOrderBys(cmd.SqlOrders, orderReverse);

            if (cmd.PageSize > 0 && cmd.PageIndex == 1)
            {
                sb.AppendSelectLimit(cmd.PageSize);
            }
            else if (cmd.PageSize > 0 && cmd.PageIndex > 1)
            {
                sb.AppendSelectLimit(cmd.PageSize * (realPageIndex - 1), cmd.PageSize);
            }

            return sb.ToString();
        }
Пример #11
0
        /// <summary>
        /// 获取选择语句内容
        /// </summary>
        /// <param name="baseCommand">源选择语句</param>
        /// <param name="orderReverse">是否反转排序</param>
        /// <returns>选择语句内容</returns>
        internal static String InternalGetPagerCommand(SelectCommand baseCommand, Boolean orderReverse)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(baseCommand.Database);
            sb.AppendSelectPrefix();
            
            sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.QueryFields);
            sb.AppendSelectFromAndJoins(baseCommand.TableName, baseCommand.IsFromSql, baseCommand.SqlJoins);

            sb.AppendWhere(baseCommand.SqlWhere);
            sb.AppendSelectGroupBys(baseCommand.GroupByColumns);
            sb.AppendHaving(baseCommand.SqlHaving);
            sb.AppendSelectOrderBys(baseCommand.SqlOrders, orderReverse);

            if (baseCommand.PageSize > 0 && baseCommand.RecordStart <= 0)
            {
                sb.AppendSelectLimit(baseCommand.PageSize);
            }
            else if (baseCommand.PageSize > 0 && baseCommand.RecordStart > 0)
            {
                sb.AppendSelectLimit(baseCommand.RecordStart, baseCommand.PageSize);
            }

            return sb.ToString();
        }
Пример #12
0
        //
        private static void SqlWrite(string sUnid)
        {
            System.Text.UTF8Encoding str = new System.Text.UTF8Encoding();

            try
            {
                SqlCommand cmd2;
                byte[]     sB1;

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

                cmd2             = new SqlCommand("usp_Rtv_Parms", cn);
                cmd2.CommandType = CommandType.StoredProcedure;

                string sXmlDoc;

                SqlDataReader dr;

                SqlCommandBuilder.DeriveParameters(cmd2);
                cmd2.Parameters["@unid"].Value = sUnid;

                dr = cmd2.ExecuteReader();



                dr.Read();


                sXmlDoc = (string)dr.GetString(0);

                dr.Close();
                dr.Dispose();

                string sXmlDoce;
                sB1 = str.GetBytes(sXmlDoc);

                //    sB1 = str.GetBytes(sXmlDoc);
                sXmlDoce = Convert.ToBase64String(sB1);
                sB1      = str.GetBytes(sXmlDoce);
                //   sB1 = str.GetBytes(sXmlDoc);

                BasicFtp.BasicFTPClient bftp = new
                                               BasicFtp.BasicFTPClient(
                    ConfigurationManager.AppSettings["webusername"]
                    , ConfigurationManager.AppSettings["webpassword"]
                    , ConfigurationManager.AppSettings["webhost"]);

                string sPath = @"/XML/" + sUnid;

                // if missing build it!
                try
                {
                    bftp.MakeDir(sPath);
                }
                catch
                { }
                sPath        += @"/Cust.Xml";
                bftp.Username = "******";
                bftp.Password = "******";
                bftp.Host     = @"ccisupportsite.com";
                bftp.UploadData(sPath, sB1);
            }
            catch (Exception ex)
            { throw ex; }
        }
Пример #13
0
        // Sauvegarde tous les changements effectué dans le dataset
        public void SaveDataSet(string tableName, DataSet dataSet)
        {
            if (dataSet.HasChanges() == false)
            {
                return;
            }

            switch (connType)
            {
            case ConnectionType.DATABASE_MSSQL:
            {
                try
                {
                    var conn    = new SqlConnection(connString);
                    var adapter = new SqlDataAdapter("SELECT * from " + tableName, conn);
                    var builder = new SqlCommandBuilder(adapter);

                    adapter.DeleteCommand = builder.GetDeleteCommand();
                    adapter.UpdateCommand = builder.GetUpdateCommand();
                    adapter.InsertCommand = builder.GetInsertCommand();

                    lock (dataSet)         // lock dataset to prevent changes to it
                    {
                        adapter.ContinueUpdateOnError = true;
                        DataSet changes = dataSet.GetChanges();
                        adapter.Update(changes, tableName);
                        PrintDatasetErrors(changes);
                        dataSet.AcceptChanges();
                    }

                    conn.Close();
                }
                catch (Exception ex)
                {
                    throw new DatabaseException("Can not save table " + tableName, ex);
                }

                break;
            }

            case ConnectionType.DATABASE_ODBC:
            {
                try
                {
                    var conn    = new OdbcConnection(connString);
                    var adapter = new OdbcDataAdapter("SELECT * from " + tableName, conn);
                    var builder = new OdbcCommandBuilder(adapter);

                    adapter.DeleteCommand = builder.GetDeleteCommand();
                    adapter.UpdateCommand = builder.GetUpdateCommand();
                    adapter.InsertCommand = builder.GetInsertCommand();

                    DataSet changes;
                    lock (dataSet)         // lock dataset to prevent changes to it
                    {
                        adapter.ContinueUpdateOnError = true;
                        changes = dataSet.GetChanges();
                        adapter.Update(changes, tableName);
                        dataSet.AcceptChanges();
                    }

                    PrintDatasetErrors(changes);

                    conn.Close();
                }
                catch (Exception ex)
                {
                    throw new DatabaseException("Can not save table ", ex);
                }

                break;
            }

            case ConnectionType.DATABASE_MYSQL:
            {
                return;
            }

            case ConnectionType.DATABASE_OLEDB:
            {
                try
                {
                    var conn    = new OleDbConnection(connString);
                    var adapter = new OleDbDataAdapter("SELECT * from " + tableName, conn);
                    var builder = new OleDbCommandBuilder(adapter);

                    adapter.DeleteCommand = builder.GetDeleteCommand();
                    adapter.UpdateCommand = builder.GetUpdateCommand();
                    adapter.InsertCommand = builder.GetInsertCommand();

                    DataSet changes;
                    lock (dataSet)         // lock dataset to prevent changes to it
                    {
                        adapter.ContinueUpdateOnError = true;
                        changes = dataSet.GetChanges();
                        adapter.Update(changes, tableName);
                        dataSet.AcceptChanges();
                    }

                    PrintDatasetErrors(changes);

                    conn.Close();
                }
                catch (Exception ex)
                {
                    throw new DatabaseException("Can not save table", ex);
                }
                break;
            }
            }
        }
Пример #14
0
        /// <summary>
        /// 获取选择语句内容
        /// </summary>
        /// <param name="baseCommand">源选择语句</param>
        /// <param name="recordCount">记录数量</param>
        /// <param name="orderReverse">是否反转排序</param>
        /// <returns>选择语句内容</returns>
        internal static String InternalGetPagerCommand(SelectCommand baseCommand, Int32 recordCount, Boolean orderReverse)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(baseCommand.Database);
            sb.AppendSelectPrefix();

            if (baseCommand.PageSize > 0 && baseCommand.RecordStart > 0)//分页模式
            {
                Int32 realPageCount = (recordCount + baseCommand.PageSize - 1) / baseCommand.PageSize;
                Int32 realPageIndex = (baseCommand.RecordStart / baseCommand.PageSize) + 1;

                if (realPageIndex >= realPageCount)//最后一页
                {
                    sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.QueryFields);

                    SelectCommand innerCommand = new SelectCommand(baseCommand.Database, baseCommand.TableName);
                    innerCommand.QueryFields = baseCommand.QueryFields;
                    innerCommand.PageSize = recordCount - baseCommand.RecordStart;
                    innerCommand.SqlJoins = baseCommand.SqlJoins;
                    innerCommand.SqlWhere = baseCommand.SqlWhere;
                    innerCommand.GroupByColumns = baseCommand.GroupByColumns;
                    innerCommand.SqlHaving = baseCommand.SqlHaving;
                    innerCommand.SqlOrders = baseCommand.SqlOrders;

                    sb.AppendSelectFrom(innerCommand.GetCommandText("T", !orderReverse), true);
                    sb.AppendSelectOrderBys(baseCommand.SqlOrders, orderReverse);
                }
                else if (realPageIndex < (realPageCount / 2 + realPageCount % 2))//前1/2部分页
                {
                    /*
                        SELECT * FROM
                        (
                            SELECT TOP 10 * FROM
                            (
                                SELECT TOP 30 * 
                                FROM TABLE_NAME
                                ORDER BY ID ASC
                            ) AS T1
                            ORDER BY ID DESC
                        ) AS T2
                        ORDER BY ID ASC
                    */

                    sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.QueryFields);

                    SelectCommand innestCommand = new SelectCommand(baseCommand.Database, baseCommand.TableName);
                    innestCommand.QueryFields = baseCommand.QueryFields;
                    innestCommand.PageSize = baseCommand.RecordStart + baseCommand.PageSize;
                    innestCommand.SqlJoins = baseCommand.SqlJoins;
                    innestCommand.SqlWhere = baseCommand.SqlWhere;
                    innestCommand.GroupByColumns = baseCommand.GroupByColumns;
                    innestCommand.SqlHaving = baseCommand.SqlHaving;
                    innestCommand.SqlOrders = baseCommand.SqlOrders;

                    SelectCommand innerCommand = new SelectCommand(baseCommand.Database, innestCommand, "T1");
                    innerCommand.QueryFields = baseCommand.QueryFields;
                    innerCommand.PageSize = baseCommand.PageSize;
                    innerCommand.SqlOrders = baseCommand.SqlOrders;

                    sb.AppendSelectFrom(innerCommand.GetCommandText("T2", !orderReverse), true);
                    sb.AppendSelectOrderBys(baseCommand.SqlOrders, orderReverse);
                }
                else//后1/2部分页
                {
                    sb.AppendSelectTop(baseCommand.PageSize);
                    sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.QueryFields);

                    SelectCommand innerCommand = new SelectCommand(baseCommand.Database, baseCommand.TableName);
                    innerCommand.QueryFields = baseCommand.QueryFields;
                    innerCommand.PageSize = recordCount - baseCommand.RecordStart;
                    innerCommand.SqlJoins = baseCommand.SqlJoins;
                    innerCommand.SqlWhere = baseCommand.SqlWhere;
                    innerCommand.GroupByColumns = baseCommand.GroupByColumns;
                    innerCommand.SqlHaving = baseCommand.SqlHaving;
                    innerCommand.SqlOrders = baseCommand.SqlOrders;

                    sb.AppendSelectFrom(innerCommand.GetCommandText("T", !orderReverse), true);
                    sb.AppendSelectOrderBys(baseCommand.SqlOrders, orderReverse);
                }
            }
            else//正常模式
            {
                if (baseCommand.PageSize > 0)
                {
                    sb.AppendSelectTop(baseCommand.PageSize);
                }

                sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.QueryFields);
                sb.AppendSelectFromAndJoins(baseCommand.TableName, baseCommand.IsFromSql, baseCommand.SqlJoins);

                sb.AppendWhere(baseCommand.SqlWhere);
                sb.AppendSelectGroupBys(baseCommand.GroupByColumns);
                sb.AppendHaving(baseCommand.SqlHaving);
                sb.AppendSelectOrderBys(baseCommand.SqlOrders, orderReverse);
            }

            return sb.ToString();
        }
        public void SetUp()
        {
            _commandBuilder = new SqlCommandBuilder();

            _expressionVisitorMock = MockRepository.GenerateStrictMock <ExpressionVisitor>();

            _leftIntegerExpression = Expression.Constant(1);
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_leftIntegerExpression))
            .WhenCalled(mi => _commandBuilder.Append("left"))
            .Return(_leftIntegerExpression);

            _rightIntegerExpression = Expression.Constant(2);
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_rightIntegerExpression))
            .WhenCalled(mi => _commandBuilder.Append("right"))
            .Return(_rightIntegerExpression);

            _leftDoubleExpression = Expression.Constant(1D);
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_leftDoubleExpression))
            .WhenCalled(mi => _commandBuilder.Append("leftDouble"))
            .Return(_leftDoubleExpression);

            _rightDoubleExpression = Expression.Constant(2D);
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_rightDoubleExpression))
            .WhenCalled(mi => _commandBuilder.Append("rightDouble"))
            .Return(_rightDoubleExpression);

            _leftStringExpression = Expression.Constant("Left");
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_leftStringExpression))
            .WhenCalled(mi => _commandBuilder.Append("leftString"))
            .Return(_leftStringExpression);

            _rightStringExpression = Expression.Constant("Right");
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_rightStringExpression))
            .WhenCalled(mi => _commandBuilder.Append("rightString"))
            .Return(_rightStringExpression);

            _nullExpression = Expression.Constant(null, typeof(string));
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_nullExpression))
            .WhenCalled(mi => _commandBuilder.Append("NULL"))
            .Return(_rightStringExpression);

            _trueExpression = Expression.Constant(true);
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_trueExpression))
            .WhenCalled(mi => _commandBuilder.Append("true"))
            .Return(_trueExpression);

            _falseExpression = Expression.Constant(false);
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_falseExpression))
            .WhenCalled(mi => _commandBuilder.Append("false"))
            .Return(_falseExpression);

            _nullableTrueExpression = Expression.Constant(true, typeof(bool?));
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_nullableTrueExpression))
            .WhenCalled(mi => _commandBuilder.Append("true"))
            .Return(_nullableTrueExpression);

            _nullableFalseExpression = Expression.Constant(false, typeof(bool?));
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_nullableFalseExpression))
            .WhenCalled(mi => _commandBuilder.Append("false"))
            .Return(_nullableFalseExpression);

            _sqlEntityExpression = SqlStatementModelObjectMother.CreateSqlEntityDefinitionExpression(typeof(Cook));
            _expressionVisitorMock
            .Stub(stub => stub.Visit(_sqlEntityExpression))
            .WhenCalled(mi => _commandBuilder.Append("[c].[ID]"))
            .Return(((SqlEntityExpression)_sqlEntityExpression).GetIdentityExpression());

            _generator = new BinaryExpressionTextGenerator(_commandBuilder, _expressionVisitorMock);
        }
Пример #16
0
        private void ChartsOfAccounts_Load(object sender, EventArgs e)
        {
            SqlConnection newSqlConnection = new SqlConnection(GeneralFunctions.ConnectionString);

            newSqlConnection.Open();
            SqlCommand    newSqlCommand = new SqlCommand("Select CompanyName From Company", newSqlConnection);
            SqlDataReader newSqlRead    = newSqlCommand.ExecuteReader();

            if (newSqlRead.HasRows)
            {
                while (newSqlRead.Read())
                {
                    GeneralFunctions.CompanyName = newSqlRead.GetString(0);
                }
            }
            SqlConnection sqlconnect = new SqlConnection(GeneralFunctions.ConnectionString);

            sqlconnect.Open();
            SqlCommand    sqlcommand = new SqlCommand("Select AccountNumberFormat FROM GeneralSetup", sqlconnect);
            SqlDataReader sqlread    = sqlcommand.ExecuteReader();

            LENAccount = 0;
            if (sqlread.HasRows)
            {
                while (sqlread.Read())
                {
                    LENAccount = sqlread.GetString(0).Length;
                }
            }
            sqlread.Close();
            sqlconnect.Close();

            sqlcon                 = new SqlConnection(GeneralFunctions.ConnectionString);
            adaptertbAccounts      = new SqlDataAdapter("Select * from GLAccounts where AccountTypeName <> 'Header'", sqlcon);
            adaptertbAccountTypes  = new SqlDataAdapter("Select * from GLAccountTypes", sqlcon);
            adaptertbAccountsChart = new SqlDataAdapter("Select * from GLAccountsChart", sqlcon);
            adaptertbAccounts.Fill(dbAccountingProjectDS.GLAccounts);
            if (adaptertbAccountsChart != null)
            {
                adaptertbAccountsChart.Fill(dbAccountingProjectDS.GLAccountsChart);
            }
            adaptertbAccountTypes.Fill(dbAccountingProjectDS.GLAccountTypes);
            cmdBuilder = new SqlCommandBuilder(adaptertbAccountsChart);
            if (!GeneralFunctions.SubTypesloaded)
            {
                SqlConnection sqlcon10 = new SqlConnection(GeneralFunctions.ConnectionString);
                sqlcon10.Open();
                SqlCommand command10 = new SqlCommand("Select AccountSubType From  GeneralSetup", sqlcon10);
                SqlCommand command11 = new SqlCommand("Select FirstSub From GeneralSetup", sqlcon10);
                SqlCommand command12 = new SqlCommand("Select SecondSub From GeneralSetup", sqlcon10);
                SqlCommand command13 = new SqlCommand("Select ThirdSub From GeneralSetup", sqlcon10);
                SqlCommand command14 = new SqlCommand("Select FourthSub From GeneralSetup", sqlcon10);
                int        AccountSubTypeNumber;
                if (command10.ExecuteScalar() != DBNull.Value)
                {
                    AccountSubTypeNumber = Convert.ToInt32(command10.ExecuteScalar());
                    if (AccountSubTypeNumber == 2)
                    {
                        GeneralFunctions.LoadSubtypes(Convert.ToInt32(command11.ExecuteScalar()), Convert.ToInt32(command12.ExecuteScalar()));
                        GeneralFunctions.SubTypesloaded = true;
                    }
                    if (AccountSubTypeNumber == 3)
                    {
                        GeneralFunctions.LoadSubtypes(Convert.ToInt32(command11.ExecuteScalar()), Convert.ToInt32(command12.ExecuteScalar()), Convert.ToInt32(command13.ExecuteScalar()));
                        GeneralFunctions.SubTypesloaded = true;
                    }
                    if (AccountSubTypeNumber == 4)
                    {
                        GeneralFunctions.LoadSubtypes(Convert.ToInt32(command11.ExecuteScalar()), Convert.ToInt32(command12.ExecuteScalar()), Convert.ToInt32(command13.ExecuteScalar()), Convert.ToInt32(command14.ExecuteScalar()));
                        GeneralFunctions.SubTypesloaded = true;
                    }
                }
            }
            cb_AccountTypeName = GeneralFunctions.FillComboBox(dbAccountingProjectDS.GLAccountTypes, cb_AccountTypeName, "AccountTypeName", "AccountTypeID");
            cb_AccountTypeName.Items.Insert(0, "Any Type");
            cb_AccountTypeName.Items.Remove("<new>");
            cb_AccountTypeName.Items.Remove("Header");
            cb_AccountTypeName.Text = "Any Type";
            LoadTreeView();
            //treeView1.ExpandAll();

            if (GeneralFunctions.languagechioce != "")
            {
                this.obj_options = new ClassOptions();
                this.obj_options.report_language = GeneralFunctions.languagechioce;
                this.update_language_interface();
            }

            if (GeneralFunctions.Ckecktag("47") == "M")
            {
                this.Menu1.Enabled = true;
            }
            else
            {
                this.Menu1.Enabled = false;
            }
            if (GeneralFunctions.Ckecktag("18") == "M")
            {
                this.btn_AddAccount.Enabled = true;
            }
            else
            {
                this.btn_AddAccount.Enabled = false;
            }
            //currcet();
        }
Пример #17
0
    public static DataSet ExeDataSetSp(string storedProcedureName, params object[] Params)
    {
        SqlConnection mySqlConnection = new SqlConnection(_dbConnectionString);


        mySqlConnection.Open();

        SqlCommand MySqlCommand = new SqlCommand(storedProcedureName, mySqlConnection);

        MySqlCommand.CommandType = CommandType.StoredProcedure;

        SqlCommandBuilder.DeriveParameters(MySqlCommand);


        //SqlParameter sqls = new SqlParameter("ExpertId",Params[0]);

        //MySqlCommand.Parameters.Add(sqls);



        for (int i = 1; i < MySqlCommand.Parameters.Count; i++)
        {
            if (Params[i - 1].ToString() == "" || Params[i - 1].ToString() == "null")
            {
                MySqlCommand.Parameters[i].Value = DBNull.Value;
            }
            else
            {
                MySqlCommand.Parameters[i].Value = Params[i - 1].ToString();
            }

            //   MySqlCommand.Parameters.AddWithValue(parameter, Params[0]);

            // Set value of ith parameter
        }

        //for (int i = 0; i < Params.Length; i++)
        //{

        //    string parameter = Params[i].ToString();

        //    MySqlCommand.Parameters.AddWithValue(MySqlCommand.Parameters[i+1].ToString(), parameter);

        //}

        //SqlParameter parameterReturnValue = new SqlParameter("ReturnValue", SqlDbType.Int, 4);
        //parameterReturnValue.Direction = ParameterDirection.ReturnValue;
        //MySqlCommand.Parameters.Add(parameterReturnValue);



        //foreach (object item in Params)
        //{
        //    MySqlCommand.Parameters.AddWithValue("ExpertId",item);
        //}

        SqlDataAdapter MySqlDataAdapter = new SqlDataAdapter(MySqlCommand);
        DataSet        MyDataSet        = new DataSet();

        //  mySqlConnection.Open();
        MySqlDataAdapter.Fill(MyDataSet);
        mySqlConnection.Close();
        return(MyDataSet);
    }
Пример #18
0
        public void Refresh(bool withoutData = false)
        {
            WhereClauseBuilder whereClauseBuilder = null;

            if (!IsSqlEditMode)
            {
                Filter2Sql(out whereClauseBuilder);
            }
            else
            {
                this._sql = this.DisplayedSql;
            }

            if (withoutData)
            {
                return;
            }

            Dispatcher.CurrentDispatcher.Invoke(() => IsBusy = true);

            Data = new DataTable();
            var tmpData = new DataTable();

            var columnsSelect = new SqlCommand(this._sql, _sqlConnection);

            if (AdvFilter != null && whereClauseBuilder != null)
            {
                foreach (var kv in whereClauseBuilder.Parameters)
                {
                    var sqlParam = new SqlParameter
                    {
                        ParameterName = kv.Key,
                        Value         = kv.Value
                    };
                    columnsSelect.Parameters.Add(sqlParam);
                }
            }

            DataAdapter = new SqlDataAdapter(columnsSelect);
            var sqlBuilder = new SqlCommandBuilder(DataAdapter);

            try
            {
                DataAdapter.UpdateCommand = sqlBuilder.GetUpdateCommand();
            }
            catch (InvalidOperationException e)
            {
                MessageBox.Show(e.Message);
            }
            try
            {
                DataAdapter.InsertCommand = sqlBuilder.GetInsertCommand();
            }
            catch (InvalidOperationException e)
            {
                MessageBox.Show(e.Message);
            }
            try
            {
                DataAdapter.DeleteCommand = sqlBuilder.GetDeleteCommand();
            }
            catch (InvalidOperationException e)
            {
                MessageBox.Show(e.Message);
            }
            Task.Delay(250).ContinueWith((t) =>
            {
                DataAdapter.Fill(tmpData);
                Dispatcher.CurrentDispatcher.Invoke(new Action(() => {
                    Data   = tmpData;
                    IsBusy = false;
                }));
            });
        }
 public void SetUp ()
 {
   _stageMock = MockRepository.GenerateStrictMock<ISqlGenerationStage> ();
   _commandBuilder = new SqlCommandBuilder ();
 }
 public void SetUp ()
 {
   _stageMock = MockRepository.GenerateStrictMock<ISqlGenerationStage>();
   _commandBuilder = new SqlCommandBuilder();
   _generator = new TestableSqlTableAndJoinTextGenerator (_commandBuilder, _stageMock);
 }
        /// <summary>
        /// 获取选择语句内容
        /// </summary>
        /// <param name="cmd">选择语句类</param>
        /// <param name="realPageIndex">实际页索引</param>
        /// <param name="realPageCount">实际页数量</param>
        /// <param name="orderReverse">是否反转排序</param>
        /// <returns>选择语句内容</returns>
        internal static String InternalGetSelectCommand(SelectCommand cmd, Int32 realPageIndex, Int32 realPageCount, Boolean orderReverse)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(cmd.DatabaseType);
            sb.AppendSelectPrefix();

            if (realPageIndex == 1)//第一页
            {
                if (cmd.PageSize > 0)
                {
                    sb.AppendSelectTop(cmd.PageSize);
                }

                sb.AppendSelectDistinct(cmd.UseDistinct).AppendAllColumnNames(cmd.QueryFields);
                sb.AppendSelectFromAndJoins(cmd.TableName, cmd.IsFromSql, cmd.SqlJoins);

                sb.AppendWhere(cmd.SqlWhere);
                sb.AppendSelectGroupBys(cmd.GroupByColumns);
                sb.AppendHaving(cmd.SqlHaving);
                sb.AppendSelectOrderBys(cmd.SqlOrders, orderReverse);
            }
            else if (realPageIndex == realPageCount)//最后一页
            {
                sb.AppendSelectDistinct(cmd.UseDistinct).AppendAllColumnNames(cmd.QueryFields);

                SelectCommand innerCommand = new SelectCommand(cmd.Database, cmd.TableName);
                innerCommand.QueryFields = cmd.QueryFields;
                innerCommand.PageSize = cmd.RecordCount - cmd.PageSize * (realPageIndex - 1);
                innerCommand.SqlJoins = cmd.SqlJoins;
                innerCommand.SqlWhere = cmd.SqlWhere;
                innerCommand.GroupByColumns = cmd.GroupByColumns;
                innerCommand.SqlHaving = cmd.SqlHaving;
                innerCommand.SqlOrders = cmd.SqlOrders;

                sb.AppendSelectFrom(innerCommand.ToString("T", !orderReverse), true);
                sb.AppendSelectOrderBys(cmd.SqlOrders, orderReverse);
            }
            else if (realPageIndex < (realPageCount / 2 + realPageCount % 2))//前1/2部分页
            {
                sb.AppendSelectDistinct(cmd.UseDistinct).AppendAllColumnNames(cmd.QueryFields);

                SelectCommand innestCommand = new SelectCommand(cmd.Database, cmd.TableName);
                innestCommand.QueryFields = cmd.QueryFields;
                innestCommand.PageSize = cmd.PageSize * realPageIndex;
                innestCommand.SqlJoins = cmd.SqlJoins;
                innestCommand.SqlWhere = cmd.SqlWhere;
                innestCommand.GroupByColumns = cmd.GroupByColumns;
                innestCommand.SqlHaving = cmd.SqlHaving;
                innestCommand.SqlOrders = cmd.SqlOrders;

                SelectCommand innerCommand = new SelectCommand(cmd.Database, innestCommand, "T");
                innerCommand.QueryFields = cmd.QueryFields;
                innerCommand.PageSize = cmd.PageSize;
                innerCommand.SqlOrders = cmd.SqlOrders;

                sb.AppendSelectFrom(innerCommand.ToString("T", !orderReverse), true);
                sb.AppendSelectOrderBys(cmd.SqlOrders, orderReverse);
            }
            else//后1/2部分页
            {
                sb.AppendSelectTop(cmd.PageSize);
                sb.AppendSelectDistinct(cmd.UseDistinct).AppendAllColumnNames(cmd.QueryFields);

                SelectCommand innerCommand = new SelectCommand(cmd.Database, cmd.TableName);
                innerCommand.QueryFields = cmd.QueryFields;
                innerCommand.PageSize = cmd.RecordCount - cmd.PageSize * (realPageIndex - 1);
                innerCommand.SqlJoins = cmd.SqlJoins;
                innerCommand.SqlWhere = cmd.SqlWhere;
                innerCommand.GroupByColumns = cmd.GroupByColumns;
                innerCommand.SqlHaving = cmd.SqlHaving;
                innerCommand.SqlOrders = cmd.SqlOrders;

                sb.AppendSelectFrom(innerCommand.ToString("T", !orderReverse), true);
                sb.AppendSelectOrderBys(cmd.SqlOrders, orderReverse);
            }

            return sb.ToString();
        }
Пример #22
0
        /// <summary>
        /// 获取选择空内容语句
        /// </summary>
        /// <param name="baseCommand">源选择语句</param>
        /// <param name="orderReverse">是否反转排序</param>
        /// <returns>选择空内容语句</returns>
        internal static String InternalGetSelectNoneCommand(SelectCommand baseCommand, Boolean orderReverse)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(baseCommand.Database);

            sb.AppendSelectPrefix();
            sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.UseDistinct, baseCommand.InternalGetQueryFieldList());
            sb.AppendSelectFromAndJoins(baseCommand.TableName, baseCommand.IsFromSql, baseCommand.InternalGetJoinList());

            if (baseCommand.WhereCondition != null)
            {
                sb.AppendWhere(baseCommand.ConditionBuilder.And(baseCommand.ConditionBuilder.False(), baseCommand.WhereCondition));
            }
            else
            {
                sb.AppendWhere(baseCommand.ConditionBuilder.False());
            }

            sb.AppendSelectGroupBys(baseCommand.InternalGetGroupByFieldList());
            sb.AppendHaving(baseCommand.InternalGetHavingCondition());
            sb.AppendSelectOrderBys(baseCommand.InternalGetOrderList(), orderReverse);

            return sb.ToString();
        }
Пример #23
0
        /// <summary>
        /// 获取选择空内容语句
        /// </summary>
        /// <param name="baseCommand">源选择语句</param>
        /// <param name="orderReverse">是否反转排序</param>
        /// <returns>选择空内容语句</returns>
        internal static String InternalGetSelectNoneCommand(SelectCommand baseCommand, Boolean orderReverse)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(baseCommand.Database);

            sb.AppendSelectPrefix();
            sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(baseCommand.QueryFields);
            sb.AppendSelectFromAndJoins(baseCommand.TableName, baseCommand.IsFromSql, baseCommand.SqlJoins);

            if (baseCommand.SqlWhere != null)
            {
                sb.AppendWhere(SqlCondition.And(baseCommand, SqlCondition.False(baseCommand), baseCommand.SqlWhere));
            }
            else
            {
                sb.AppendWhere(SqlCondition.False(baseCommand));
            }
            
            sb.AppendSelectGroupBys(baseCommand.GroupByColumns);
            sb.AppendHaving(baseCommand.SqlHaving);
            sb.AppendSelectOrderBys(baseCommand.SqlOrders, orderReverse);

            return sb.ToString();
        }
Пример #24
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            if (rtbDescription.Text == "")
            {
                MessageBox.Show("Please provide description of the item", "Item Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                rtbDescription.Focus();
                return;
            }
            if (txtItemRate.Text == "")
            {
                MessageBox.Show("Please enter rate of the item", "Item Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtItemRate.Focus();
                return;
            }
            if (txtItemRate.Text.StartsWith("0"))
            {
                MessageBox.Show("Please enter valid rate of the item", "Item Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtItemRate.Focus();
                return;
            }
            char[] itemRate      = txtItemRate.Text.ToCharArray();
            int    length        = txtItemRate.Text.Length;
            int    decPoint      = 0;
            int    decDigitCount = 0;

            for (int i = 0; i < length; i++)
            {
                if (!char.IsDigit(itemRate[i]))
                {
                    if (itemRate[i].ToString() == ".")
                    {
                        if (decPoint == 0)
                        {
                            decPoint = 1;
                        }
                        else
                        {
                            MessageBox.Show("More than one decimal points are not allowed in the Item Rate text box", "Item Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            txtItemRate.Focus();
                            return;
                        }
                    }
                    else
                    {
                        MessageBox.Show("Only numeric values along with (or without) two digits after decimal point are allowed for the Item Rate text box",
                                        "Item Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        txtItemRate.Focus();
                        return;
                    }
                }
                else
                {
                    if (decPoint == 1)
                    {
                        decDigitCount++;
                        if (decDigitCount > 2)
                        {
                            MessageBox.Show("Only two digits are allowed after decimal point", "Item Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            txtItemRate.Focus();
                            return;
                        }
                    }
                }
            }

            if (con.State == ConnectionState.Closed)
            {
                con.Open();
            }
            adp = new SqlDataAdapter("Select * from Items", con);
            ds.Clear();
            adp.Fill(ds, "Items");
            DataTable ItemsTable = ds.Tables["Items"];
            DataRow   MyNewRow   = null;

            MyNewRow    = ItemsTable.NewRow();
            MyNewRow[0] = txtItemCode.Text;
            MyNewRow[1] = rtbDescription.Text;
            MyNewRow[2] = txtItemRate.Text;
            ItemsTable.Rows.Add(MyNewRow);

            SqlCommandBuilder UpdateDataCommand = new SqlCommandBuilder(adp);

            adp.InsertCommand = UpdateDataCommand.GetInsertCommand();
            adp.Update(ds, "Items");
            ds.AcceptChanges();
            MessageBox.Show("The New items details are enterd successfully", "Data Insertion Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
            con.Close();

            txtItemCode.Text    = GenerateId();
            txtItemRate.Text    = "";
            rtbDescription.Text = "";
            fillItems();
        }
    public void SetUp ()
    {
      _commandBuilder = new SqlCommandBuilder();

      _expressionVisitorMock = MockRepository.GenerateStrictMock<ExpressionTreeVisitor>();

      _leftIntegerExpression = Expression.Constant (1);
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_leftIntegerExpression))
          .WhenCalled (mi => _commandBuilder.Append ("left"))
          .Return (_leftIntegerExpression);

      _rightIntegerExpression = Expression.Constant (2);
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_rightIntegerExpression))
          .WhenCalled (mi => _commandBuilder.Append ("right"))
          .Return (_rightIntegerExpression);

      _leftDoubleExpression = Expression.Constant (1D);
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_leftDoubleExpression))
          .WhenCalled (mi => _commandBuilder.Append ("leftDouble"))
          .Return (_leftDoubleExpression);

      _rightDoubleExpression = Expression.Constant (2D);
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_rightDoubleExpression))
          .WhenCalled (mi => _commandBuilder.Append ("rightDouble"))
          .Return (_rightDoubleExpression);

      _leftStringExpression = Expression.Constant ("Left");
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_leftStringExpression))
          .WhenCalled (mi => _commandBuilder.Append ("leftString"))
          .Return (_leftStringExpression);

      _rightStringExpression = Expression.Constant ("Right");
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_rightStringExpression))
          .WhenCalled (mi => _commandBuilder.Append ("rightString"))
          .Return (_rightStringExpression);

      _nullExpression = Expression.Constant (null, typeof (string));
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_nullExpression))
          .WhenCalled (mi => _commandBuilder.Append ("NULL"))
          .Return (_rightStringExpression);

      _trueExpression = Expression.Constant (true);
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_trueExpression))
          .WhenCalled (mi => _commandBuilder.Append ("true"))
          .Return (_trueExpression);

      _falseExpression = Expression.Constant (false);
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_falseExpression))
          .WhenCalled (mi => _commandBuilder.Append ("false"))
          .Return (_falseExpression);

      _nullableTrueExpression = Expression.Constant (true, typeof (bool?));
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_nullableTrueExpression))
          .WhenCalled (mi => _commandBuilder.Append ("true"))
          .Return (_nullableTrueExpression);

      _nullableFalseExpression = Expression.Constant (false, typeof (bool?));
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_nullableFalseExpression))
          .WhenCalled (mi => _commandBuilder.Append ("false"))
          .Return (_nullableFalseExpression);

      _sqlEntityExpression = SqlStatementModelObjectMother.CreateSqlEntityDefinitionExpression (typeof (Cook));
      _expressionVisitorMock
          .Stub (stub => stub.VisitExpression (_sqlEntityExpression))
          .WhenCalled (mi => _commandBuilder.Append ("[c].[ID]"))
          .Return (((SqlEntityExpression) _sqlEntityExpression).GetIdentityExpression());

      _generator = new BinaryExpressionTextGenerator (_commandBuilder, _expressionVisitorMock);
    }
Пример #26
0
    public void SaveStdUI(string ieID, string iStdID, string heading, string pdesc)
    {
        string[] _Type  = iStdID.Split('_');
        int      _StdID = Convert.ToInt32(_Type[0]);
        string   Part   = Convert.ToString(_Type[1]);

        string _ieMode = "";
        long   _ieID   = Convert.ToInt64(ieID);
        //long _StdID = Convert.ToInt64(iStdID);
        string sProvider = ConfigurationManager.ConnectionStrings["connString_V3"].ConnectionString;
        string SqlStr    = "";

        oSQLConn.ConnectionString = sProvider;
        oSQLConn.Open();
        SqlStr = "Select * from tblProceduresDetail WHERE PatientIE_ID = " + ieID + " AND ProcedureDetail_ID = " + _StdID;
        SqlDataAdapter    sqlAdapt      = new SqlDataAdapter(SqlStr, oSQLConn);
        SqlCommandBuilder sqlCmdBuilder = new SqlCommandBuilder(sqlAdapt);
        DataTable         sqlTbl        = new DataTable();

        sqlAdapt.Fill(sqlTbl);
        DataRow TblRow;

        //if (sqlTbl.Rows.Count == 0 && StdChecked == true)
        //    _ieMode = "New";
        //else if (sqlTbl.Rows.Count == 0 && StdChecked == false)
        //    _ieMode = "None";
        //else if (sqlTbl.Rows.Count > 0 && StdChecked == false)
        //    _ieMode = "Delete";
        //else
        _ieMode = "Update";

        if (_ieMode == "New")
        {
            TblRow = sqlTbl.NewRow();
        }
        else if (_ieMode == "Update" || _ieMode == "Delete")
        {
            TblRow = sqlTbl.Rows[0];
            TblRow.AcceptChanges();
        }
        else
        {
            TblRow = null;
        }

        if (_ieMode == "Update" || _ieMode == "New")
        {
            TblRow["ProcedureDetail_ID"] = _StdID;
            TblRow["PatientIE_ID"]       = _ieID;

            if (Part.Equals("R"))
            {
                TblRow["Heading"] = heading.ToString().Trim();
                TblRow["PDesc"]   = pdesc.ToString().Trim();
            }
            else if (Part.Equals("S"))
            {
                TblRow["S_Heading"] = heading.ToString().Trim();
                TblRow["S_PDesc"]   = pdesc.ToString().Trim();
            }
            else if (Part.Equals("E"))
            {
                TblRow["E_Heading"] = heading.ToString().Trim();
                TblRow["E_PDesc"]   = pdesc.ToString().Trim();
            }

            if (_ieMode == "New")
            {
                TblRow["CreatedBy"]   = "Admin";
                TblRow["CreatedDate"] = DateTime.Now;
                sqlTbl.Rows.Add(TblRow);
            }
            sqlAdapt.Update(sqlTbl);
        }
        else if (_ieMode == "Delete")
        {
            TblRow.Delete();
            sqlAdapt.Update(sqlTbl);
        }
        if (TblRow != null)
        {
            TblRow.Table.Dispose();
        }
        sqlTbl.Dispose();
        sqlCmdBuilder.Dispose();
        sqlAdapt.Dispose();
        oSQLConn.Close();
    }
Пример #27
0
        private void updateFromDB()
        {
            try
            {
                //use helper method to get a connection obj
                conn = getConnection();
                conn.Open();                 //open connection
                String sql = "SELECT * FROM [inventory]";
                dAdapter = new SqlDataAdapter(sql, conn);
                SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dAdapter);
                mainDataSet = new DataSet();
                dAdapter.Fill(mainDataSet, "inventory");
                conn.Close();

                //Initialize DataView
                displayView      = new DataView(mainDataSet.Tables["inventory"]);
                displayView.Sort = "name ASC";

                //bind
                bindingSource1.DataSource = displayView;
                //bindingSource1.DataSource = mainDataSet;
                //bindingSource1.DataMember = "inventory"; //specify the table
                dg1.DataSource = bindingSource1;

                dg1.Columns[COL_PUBLISHER].Visible = false;                 //hide columns we don't want to see
                dg1.Columns[COL_DEVELOPER].Visible = false;
                //dg1.Columns[COL_CATEGORY].Visible = false;
                //dg1.Columns[COL_RELEASEDATE].Visible = false;
                dg1.Columns[COL_RATING].Visible = false;

                //Make the column headers nice
                dg1.Columns[COL_NAME].HeaderText         = "Name";
                dg1.Columns[COL_PLATFORM].HeaderText     = "Platform";
                dg1.Columns[COL_CATEGORY].HeaderText     = "Category";
                dg1.Columns[COL_RELEASEDATE].HeaderText  = "Release Date";
                dg1.Columns[COL_COST].HeaderText         = "Cost";
                dg1.Columns[COL_AVAILABILITY].HeaderText = "Stock";

                //Add extra width weight for the name column.
                dg1.Columns[COL_NAME].FillWeight = 200f;

                /*dg1.Columns[COL_CATEGORY].FillWeight = 100f;
                 * dg1.Columns[COL_RELEASEDATE].FillWeight = 100f;*/
                dg1.Columns[COL_COST].FillWeight         = 60f;
                dg1.Columns[COL_AVAILABILITY].FillWeight = 60f;

                dg1.Columns[COL_COST].DefaultCellStyle.Format = "c";

                dg1.ClearSelection();
            }
            catch (SqlException ex)
            {
                if (conn != null)                 //if connected, but had exception
                {
                    conn.Close();                 //close connection
                    MessageBox.Show(ex.Message,
                                    "Exception when trying to open SQL Connection",
                                    MessageBoxButtons.OK,
                                    MessageBoxIcon.Error);
                }
            }
        }
Пример #28
0
    public string SaveUI(string fuID, string ieMode, bool bpChecked)
    {
        long   _fuID     = Convert.ToInt64(fuID);
        string _ieMode   = "";
        string sProvider = ConfigurationManager.ConnectionStrings["connString_V3"].ConnectionString;
        string SqlStr    = "";

        oSQLConn.ConnectionString = sProvider;
        oSQLConn.Open();
        SqlStr = "Select * from tblFUbpMidBack WHERE PatientFU_ID = " + _fuID;
        SqlDataAdapter    sqlAdapt      = new SqlDataAdapter(SqlStr, oSQLConn);
        SqlCommandBuilder sqlCmdBuilder = new SqlCommandBuilder(sqlAdapt);
        DataTable         sqlTbl        = new DataTable();

        sqlAdapt.Fill(sqlTbl);
        DataRow TblRow;

        if (sqlTbl.Rows.Count == 0 && bpChecked == true)
        {
            _ieMode = "New";
        }
        else if (sqlTbl.Rows.Count == 0 && bpChecked == false)
        {
            _ieMode = "None";
        }
        else if (sqlTbl.Rows.Count > 0 && bpChecked == false)
        {
            _ieMode = "Delete";
        }
        else
        {
            _ieMode = "Update";
        }

        if (_ieMode == "New")
        {
            TblRow = sqlTbl.NewRow();
        }
        else if (_ieMode == "Update" || _ieMode == "Delete")
        {
            TblRow = sqlTbl.Rows[0];
            TblRow.AcceptChanges();
        }
        else
        {
            TblRow = null;
        }

        if (_ieMode == "Update" || _ieMode == "New")
        {
            TblRow["PatientFU_ID"] = _fuID;

            //TblRow["PalpationAt"] = txtPalpationAt.Text.ToString();
            //TblRow["Levels"] = cboLevels.Text.ToString();
            //TblRow["ROM"] = cboROM.Text.ToString();
            //TblRow["TPSide1"] = cboTPSide1.Text.ToString();
            //TblRow["TPText1"] = txtTPText1.Text.ToString();
            //TblRow["TPSide2"] = cboTPSide2.Text.ToString();
            //TblRow["TPText2"] = txtTPText2.Text.ToString();
            //TblRow["TPSide3"] = cboTPSide3.Text.ToString();
            //TblRow["TPText3"] = txtTPText3.Text.ToString();
            //TblRow["TPSide4"] = cboTPSide4.Text.ToString();
            //TblRow["TPText4"] = txtTPText4.Text.ToString();
            TblRow["FreeForm"] = txtFreeForm.Text.ToString();
            //TblRow["FreeFormCC"] = txtFreeFormCC.Text.ToString();
            TblRow["FreeFormA"] = txtFreeFormA.Text.ToString();
            //TblRow["FreeFormP"] = txtFreeFormP.Text.ToString();
            TblRow["CCvalue"] = hdCCvalue.Value;


            TblRow["PEvalue"]         = hdPEvalue.Value;
            TblRow["PEvalueoriginal"] = hdPEvalueoriginal.Value;
            TblRow["PESides"]         = hdPESides.Value;
            TblRow["PESidesText"]     = hdPESidesText.Value;

            if (_ieMode == "New")
            {
                TblRow["CreatedBy"]   = "Admin";
                TblRow["CreatedDate"] = DateTime.Now;
                sqlTbl.Rows.Add(TblRow);
            }
            sqlAdapt.Update(sqlTbl);
        }
        else if (_ieMode == "Delete")
        {
            TblRow.Delete();
            sqlAdapt.Update(sqlTbl);
        }
        if (TblRow != null)
        {
            TblRow.Table.Dispose();
        }
        sqlTbl.Dispose();
        sqlCmdBuilder.Dispose();
        sqlAdapt.Dispose();
        oSQLConn.Close();

        if (_ieMode == "New")
        {
            return("MidBack has been added...");
        }
        else if (_ieMode == "Update")
        {
            return("MidBack has been updated...");
        }
        else if (_ieMode == "Delete")
        {
            return("MidBack has been deleted...");
        }
        else
        {
            return("");
        }
    }
Пример #29
0
        private void button1_Click(object sender, EventArgs e)
        {
            str = textBox1.Text;
            SqlConnection connection = new SqlConnection();

            connection.ConnectionString = "Data Source= GATEWAY-PC;Initial Catalog=xiaoyuanka;User ID=sa;Password=niit#1234";
            connection.Open();
            SqlDataAdapter    adapter    = new SqlDataAdapter("select * from consume ", connection);
            SqlCommandBuilder cmdBuilder = new SqlCommandBuilder(adapter);
            DataSet           ds         = new DataSet("consume");

            adapter.Fill(ds, "consume");
            //adapter.Fill(ds, "student");
            DataRow row = ds.Tables["consume"].NewRow();

            row["account"] = account;
            row["amount"]  = textBox1.Text;
            row["time"]    = Convert.ToInt32(textBox2.Text);
            row["address"] = textBox3.Text;
            ds.Tables["consume"].Rows.Add(row);
            adapter.Update(ds, "consume");
            connection.Close();
            using (SqlConnection conn = new SqlConnection(@"Data Source= GATEWAY-PC;Initial Catalog=xiaoyuanka;User ID=sa;Password=niit#1234"))
            {
                conn.Open();//连接数据库

                using (SqlCommand cmd = conn.CreateCommand())
                {
                    SqlParameter sq;
                    cmd.CommandText = "select * from student where account=@account";
                    sq       = cmd.Parameters.Add("@account", SqlDbType.VarChar);
                    sq.Value = Form9.account;
                    //查找数据库里是否有该用户名
                    using (SqlDataReader reader = cmd.ExecuteReader())
                    {
                        if (reader.Read())
                        {
                            if (@account == reader[0].ToString().Trim())
                            {
                                if (reader[6].ToString().Trim() == "挂失")
                                {
                                    MessageBox.Show("已挂失!");
                                    return;
                                }
                                int yue = reader.GetInt32(reader.GetOrdinal("balance"));
                                if (yue == 0)
                                {
                                    MessageBox.Show("余额不足,请充值!");
                                    return;
                                }
                                int xfe           = Int32.Parse(Form9.str);
                                int bookresultnum = yue - xfe;
                                if (bookresultnum < 0)
                                {
                                    MessageBox.Show("余额不足,请充值!");
                                    return;
                                }
                                cmd.CommandText = "update student set balance =" + bookresultnum + " where account='" + account + "'";
                                reader.Close();
                                cmd.ExecuteNonQuery();
                                MessageBox.Show("消费成功!");
                                this.Close();
                            }
                        }
                    }
                }
            }
        }
 public void SetUp ()
 {
   _sqlCommandBuilder = new SqlCommandBuilder();
 }
Пример #31
0
    public void SaveStdUI(string ieID, string iDiagID, bool DiagIsChecked, string bp, string dcd, string dc)
    {
        try
        {
            string _ieMode   = "";
            long   _ieID     = Convert.ToInt64(ieID);
            long   _DiagID   = Convert.ToInt64(iDiagID);
            string sProvider = ConfigurationManager.ConnectionStrings["connString_V3"].ConnectionString;
            string SqlStr    = "";
            oSQLConn.ConnectionString = sProvider;
            oSQLConn.Open();
            SqlStr = "Select * FROM tblDiagCodesDetail WHERE PatientIE_ID = " + ieID + " AND Diag_Master_ID = " + _DiagID;
            SqlDataAdapter    sqlAdapt      = new SqlDataAdapter(SqlStr, oSQLConn);
            SqlCommandBuilder sqlCmdBuilder = new SqlCommandBuilder(sqlAdapt);
            DataTable         sqlTbl        = new DataTable();
            sqlAdapt.Fill(sqlTbl);
            DataRow TblRow;

            if (sqlTbl.Rows.Count == 0 && DiagIsChecked == true)
            {
                _ieMode = "New";
            }
            else if (sqlTbl.Rows.Count == 0 && DiagIsChecked == false)
            {
                _ieMode = "None";
            }
            else if (sqlTbl.Rows.Count > 0 && DiagIsChecked == false)
            {
                _ieMode = "Delete";
            }
            else
            {
                _ieMode = "Update";
            }

            if (_ieMode == "New")
            {
                TblRow = sqlTbl.NewRow();
            }
            else if (_ieMode == "Update" || _ieMode == "Delete")
            {
                TblRow = sqlTbl.Rows[0];
                TblRow.AcceptChanges();
            }
            else
            {
                TblRow = null;
            }

            if (_ieMode == "Update" || _ieMode == "New")
            {
                TblRow["Diag_Master_ID"] = _DiagID;
                TblRow["PatientIE_ID"]   = _ieID;
                TblRow["BodyPart"]       = bp.ToString().Trim();
                TblRow["DiagCode"]       = dc.ToString().Trim();
                TblRow["Description"]    = dcd.ToString().Trim();

                if (_ieMode == "New")
                {
                    TblRow["CreatedBy"]   = "Admin";
                    TblRow["CreatedDate"] = DateTime.Now;
                    sqlTbl.Rows.Add(TblRow);
                }
                sqlAdapt.Update(sqlTbl);
            }
            else if (_ieMode == "Delete")
            {
                TblRow.Delete();
                sqlAdapt.Update(sqlTbl);
            }
            if (TblRow != null)
            {
                TblRow.Table.Dispose();
            }
            sqlTbl.Dispose();
            sqlCmdBuilder.Dispose();
            sqlAdapt.Dispose();
            oSQLConn.Close();
        }
        catch (Exception ex)
        {
            log.Error(ex.Message);
        }
    }
Пример #32
0
        public static bool InsertColumnDefs(XmlWriter xmlWriter, SqlConnection sqlConn, string sqlGetProc, string dbRowsClassName,
                                            string dbRowClassName, string schema, string primaryTable, string sqlInsertProc, string sqlDeleteProc, MainForm mainForm, out string errMsg)
        {
            Dictionary <string, ColumnInfo> colInfoList = GetDbColInfo(sqlConn, mainForm, out errMsg);

            if (colInfoList == null)
            {
                return(false);
            }

            SqlCommand    sqlCmd = new SqlCommand();
            DataTable     schemaTable;
            SqlDataReader sqlRdr;

            // if specified primary table name has a prefix - strip it, then prefix the specified schema name
            int    pos = primaryTable.LastIndexOf(".");
            string primaryTableName = String.Format("{0}.{1}", schema, (pos >= 0) ? primaryTable.Substring(pos + 1) : primaryTable);

            // Check for existence of stored procedures
            bool gspExists = (!String.IsNullOrEmpty(sqlGetProc) && checkIfStoredProcExists(sqlConn, sqlGetProc));
            bool ispExists = (!String.IsNullOrEmpty(sqlInsertProc) && checkIfStoredProcExists(sqlConn, sqlInsertProc));
            bool dspExists = (!String.IsNullOrEmpty(sqlDeleteProc) && checkIfStoredProcExists(sqlConn, sqlDeleteProc));

            if (!gspExists)
            {
                mainForm.warningMsgs.AppendText(String.Format("Stored Procedure: {0} does not exist.\n", sqlGetProc));
            }
            if (!ispExists)
            {
                mainForm.warningMsgs.AppendText(String.Format("Stored Procedure: {0} does not exist.\n", sqlInsertProc));
            }
            if (!dspExists)
            {
                mainForm.warningMsgs.AppendText(String.Format("Stored Procedure: {0} does not exist.\n", sqlDeleteProc));
            }

            xmlWriter.WriteStartElement("SqlInterface");
            xmlWriter.WriteAttributeString("GetRowsProc", sqlGetProc);
            xmlWriter.WriteAttributeString("DbRowsClassName", dbRowsClassName);
            xmlWriter.WriteAttributeString("DbRowClassName", dbRowClassName);
            xmlWriter.WriteAttributeString("PrimaryTable", primaryTableName);
            xmlWriter.WriteAttributeString("InsertRowProc", sqlInsertProc);
            xmlWriter.WriteAttributeString("DeleteRowProc", sqlDeleteProc);
            xmlWriter.WriteAttributeString("GetRowsProcExists", gspExists ? "T" : "F");
            xmlWriter.WriteAttributeString("InsertRowProcExists", ispExists ? "T" : "F");
            xmlWriter.WriteAttributeString("DeleteRowProcExists", dspExists ? "T" : "F");

            sqlCmd.Connection = sqlConn;
            sqlConn.Open();

            if (ispExists)
            {
                // Get 'insert'  stored proc info and write dbcolumn xml elements
                sqlCmd.CommandText = sqlInsertProc;
                sqlCmd.CommandType = CommandType.StoredProcedure;
                SqlCommandBuilder.DeriveParameters(sqlCmd);
                foreach (SqlParameter p in sqlCmd.Parameters)
                {
                    if (p.Direction == ParameterDirection.Input || p.Direction == ParameterDirection.InputOutput)
                    {
                        xmlWriter.WriteStartElement("IParam");
                        xmlWriter.WriteAttributeString("ParamName", p.ParameterName);
                        xmlWriter.WriteAttributeString("ParamType", p.SqlDbType.ToString());
                        xmlWriter.WriteAttributeString("ParamLen", p.Size.ToString());
                        xmlWriter.WriteAttributeString("Direction", p.Direction.ToString());
                        xmlWriter.WriteAttributeString("Nullable", p.IsNullable ? "T" : "F");
                        xmlWriter.WriteAttributeString("DataColName", p.ParameterName.StartsWith("@") ? p.ParameterName.Substring(1) : String.Empty);
                        xmlWriter.WriteEndElement();
                    }
                }
            }

            if (dspExists)
            {
                // Get 'insert'  stored proc info and write dbcolumn xml elements
                sqlCmd.CommandText = sqlDeleteProc;
                sqlCmd.CommandType = CommandType.StoredProcedure;
                SqlCommandBuilder.DeriveParameters(sqlCmd);
                foreach (SqlParameter p in sqlCmd.Parameters)
                {
                    if (p.Direction == ParameterDirection.Input || p.Direction == ParameterDirection.InputOutput)
                    {
                        xmlWriter.WriteStartElement("DParam");
                        xmlWriter.WriteAttributeString("ParamName", p.ParameterName);
                        xmlWriter.WriteAttributeString("ParamType", p.SqlDbType.ToString());
                        xmlWriter.WriteAttributeString("ParamLen", p.Size.ToString());
                        xmlWriter.WriteAttributeString("Direction", p.Direction.ToString());
                        xmlWriter.WriteAttributeString("Nullable", p.IsNullable ? "T" : "F");
                        xmlWriter.WriteAttributeString("DataColName", p.ParameterName.StartsWith("@") ? p.ParameterName.Substring(1) : String.Empty);
                        xmlWriter.WriteEndElement();
                    }
                }
            }

            if (gspExists)
            {
                // Get 'get'  stored proc info and write dbcolumn xml elements
                sqlCmd.CommandText = sqlGetProc;
                sqlCmd.CommandType = CommandType.StoredProcedure;
                SqlCommandBuilder.DeriveParameters(sqlCmd);
                foreach (SqlParameter p in sqlCmd.Parameters)
                {
                    if (p.Direction == ParameterDirection.Input || p.Direction == ParameterDirection.InputOutput || p.Direction == ParameterDirection.Output)
                    {
                        xmlWriter.WriteStartElement("GParam");
                        xmlWriter.WriteAttributeString("ParamName", p.ParameterName);
                        xmlWriter.WriteAttributeString("ParamType", p.SqlDbType.ToString());
                        xmlWriter.WriteAttributeString("ParamLen", p.Size.ToString());
                        xmlWriter.WriteAttributeString("Direction", p.Direction.ToString());
                        xmlWriter.WriteAttributeString("Nullable", p.IsNullable ? "T" : "F");
                        xmlWriter.WriteAttributeString("DataColName", p.ParameterName.StartsWith("@") ? p.ParameterName.Substring(1) : String.Empty);
                        xmlWriter.WriteEndElement();
                    }
                }

                sqlRdr      = sqlCmd.ExecuteReader(CommandBehavior.KeyInfo);
                schemaTable = sqlRdr.GetSchemaTable();
                List <string> colNames = new List <string>();
                foreach (DataRow field in schemaTable.Rows)     //For each field in the table...
                {
                    bool   isPrKey       = false;
                    bool   isForKey      = false;
                    bool   isIdentity    = false;
                    bool   isJoined      = false;
                    bool   isHidden      = false;
                    bool   isReadOnly    = false;
                    bool   isAliased     = false;
                    bool   isExpression  = false;
                    bool   isNullable    = true;
                    bool   isComputed    = false;
                    string schemaName    = string.Empty;
                    string tableName     = string.Empty;
                    string colName       = string.Empty;
                    string colOrdinal    = string.Empty;
                    string dataType      = string.Empty;
                    string sqlDataType   = string.Empty;
                    string len           = string.Empty;
                    string nullableParam = string.Empty;
                    string colAttr       = string.Empty;
                    string forKeyTable   = string.Empty;
                    string forKeyCol     = string.Empty;

                    string baseColName    = string.Empty;
                    string baseServerName = string.Empty;

                    foreach (DataColumn property in schemaTable.Columns)  //For each property of the field...
                    {
                        switch (property.ColumnName)
                        {
                        case "ColumnName":
                            colName = field[property].ToString();
                            break;

                        case "ColumnOrdinal":
                            colOrdinal = field[property].ToString();
                            break;

                        case "IsKey":
                            isPrKey = (bool)field[property];
                            break;

                        case "IsIdentity":
                            isIdentity = (bool)field[property];
                            break;

                        case "IsHidden":
                            isHidden = (bool)field[property];
                            break;

                        case "IsAliased":
                            isAliased = (bool)field[property];
                            break;

                        case "IsExpression":
                            isExpression = (bool)field[property];
                            break;

                        case "IsReadOnly":
                            isReadOnly = (bool)field[property];
                            break;

                        case "BaseSchemaName":
                            schemaName = field[property].ToString();
                            break;

                        case "BaseTableName":
                            tableName = field[property].ToString();
                            break;

                        case "BaseColumnName":
                            baseColName = field[property].ToString();
                            break;

                        case "AllowDBNull":
                            nullableParam = (((bool)field[property]) ? "T" : "F");
                            break;

                        case "DataType":
                            dataType = field[property].ToString();
                            break;

                        case "DataTypeName":
                            sqlDataType = field[property].ToString();
                            break;

                        case "ColumnSize":
                            len = field[property].ToString();
                            break;

                        default:
                            //xmlWriter.WriteAttributeString("Unknown", field[property].ToString());
                            break;
                        }
                    }
                    // Add more column attributes if column is in the primary table and  we have entry for column in our column dictionary
                    string colTableName = String.Format("{0}.{1}", schemaName, tableName);
                    string fullColName  = String.Format("{0}.{1}", colTableName, colName);
                    isJoined = (!String.IsNullOrEmpty(tableName) && !colTableName.Equals(primaryTableName, StringComparison.InvariantCultureIgnoreCase));
                    if (!isJoined && !isExpression && colInfoList.ContainsKey(fullColName))
                    {
                        ColumnInfo colInfo = colInfoList[fullColName];
                        isNullable = colInfo.IsNullable;
                        isComputed = colInfo.IsComputed;
                        isPrKey    = colInfo.IsPriKey;
                        isIdentity = colInfo.IsIdentity;
                        if (colInfo.IsForKey)
                        {
                            isForKey    = true;
                            forKeyTable = colInfo.ForKeyTable;
                            forKeyCol   = colInfo.ForKeyCol;
                        }
                    }
                    if (isComputed || isAliased || isExpression || isJoined)
                    {
                        isReadOnly = isNullable = true;                                                          // Computed, aliased and joined columns are always read only and nullable
                    }
                    // Determine the column attribute
                    if (isPrKey && !isJoined)
                    {
                        colAttr = (isIdentity) ? "AI" : "PK";   // Primary key col is either Auto ID or regular primary key col
                    }
                    else if ((dataType == "System.DateTime") && colName.EndsWith("ModDate", StringComparison.InvariantCultureIgnoreCase) && !isReadOnly)
                    {
                        colAttr = "MD";
                    }
                    else if ((dataType == "System.DateTime") && (colName.EndsWith("CreateDate", StringComparison.InvariantCultureIgnoreCase) ||
                                                                 colName.EndsWith("EnterDate", StringComparison.InvariantCultureIgnoreCase)) && !isReadOnly)
                    {
                        colAttr = "CD";
                    }
                    else
                    {
                        colAttr = (isReadOnly) ? "RO" : "RW";
                    }

                    //bool nameExists = colNames.Exists(x => x == colName);
                    //if ( !(isPrKey && colNames.Exists(x => x == colName)))     // Eliminate foreign key columns and self referenced columns
                    //if (!(isPrKey && isJoined) && !(isPrKey && colNames.Exists(x => x == colName)))     // Eliminate foreign key columns and self referenced columns
                    if (!isHidden)
                    {
                        colNames.Add(colName);
                        xmlWriter.WriteStartElement("Column");
                        xmlWriter.WriteAttributeString("ColName", colName);
                        xmlWriter.WriteAttributeString("ColOrdinal", colOrdinal);
                        xmlWriter.WriteAttributeString("DataType", dataType);
                        xmlWriter.WriteAttributeString("SqlType", sqlDataType);
                        xmlWriter.WriteAttributeString("Len", len);
                        xmlWriter.WriteAttributeString("Nullable", isNullable ? "T" : "F");
                        xmlWriter.WriteAttributeString("IsPrKey", isPrKey ? "T" : "F");
                        xmlWriter.WriteAttributeString("ColAttrib", colAttr);
                        if (isForKey)
                        {
                            xmlWriter.WriteAttributeString("IsForKey", isForKey ? "T" : "F");
                            xmlWriter.WriteAttributeString("ForKeyTable", forKeyTable);
                            xmlWriter.WriteAttributeString("ForKeyCol", forKeyCol);
                        }
                        xmlWriter.WriteEndElement();
                    }
                }
                sqlRdr.Close();
            }
            sqlConn.Close();
            return(true);
        }
Пример #33
0
        public override void CheckResult()
        {
            if (check.ischeckOk)
            {
                base.CheckResult();

                if (Parameter.userflight == "夜班" && dtOuter.Rows[0]["夜班接班员"].ToString() == __待审核)
                {

                    dtOuter.Rows[0]["夜班接班员"] = Parameter.userName;
                    txb白班异常情况处理.Enabled = false;

                }
                if (Parameter.userflight == "白班" && dtOuter.Rows[0]["白班接班员"].ToString() == __待审核)
                {

                    dtOuter.Rows[0]["白班接班员"] = Parameter.userName;
                    txb白班异常情况处理.Enabled = false;

                }

                //this part to add log 
                //格式: 
                // =================================================
                // yyyy年MM月dd日,操作员:XXX 审核
                string log = "=====================================\n";
                log += DateTime.Now.ToString("yyyy年MM月dd日 hh时mm分ss秒") + "\n操作员:" + mySystem.Parameter.userName + " 审核通过\n";
                dtOuter.Rows[0]["日志"] = dtOuter.Rows[0]["日志"].ToString() + log;

                bsOuter.EndEdit();
                daOuter.Update((DataTable)bsOuter.DataSource);
                readOuterData(__生产指令编号, __生产日期);
                removeOuterBind();
                outerBind();

                //to delete the unchecked table
                //read from database table and find current record
                string checkName = "待审核";
                DataTable dtCheck = new DataTable(checkName);
                SqlDataAdapter daCheck = new SqlDataAdapter("SELECT * FROM " + checkName + " WHERE 表名='" + tablename1 + "' AND 对应ID = " + searchId + ";", mySystem.Parameter.conn);
                BindingSource bsCheck = new BindingSource();
                SqlCommandBuilder cbCheck = new SqlCommandBuilder(daCheck);
                daCheck.Fill(dtCheck);

                //this part will never be run, for there must be a unchecked recird before this button becomes enable
                if (0 == dtCheck.Rows.Count)
                {
                    DataRow newrow = dtCheck.NewRow();
                    newrow["表名"] = tablename1;
                    newrow["对应ID"] = dtOuter.Rows[0]["ID"];
                    dtCheck.Rows.Add(newrow);
                }
                //remove the record
                dtCheck.Rows[0].Delete();
                bsCheck.DataSource = dtCheck;
                daCheck.Update((DataTable)bsCheck.DataSource);

                setEnableReadOnly(true);

            }
            else 
            {
                MessageBox.Show("必须通过");
            }
        }
Пример #34
0
        /// <summary>
        ///执行sql,插入数据dataTable,返回bool
        /// </summary>
        /// <param name="dbType"></param>
        /// <param name="connectStr"></param>
        /// <param name="sql"></param>
        /// <param name="dataTable"></param>
        /// <returns></returns>
        public static bool ExecuteScalar(string dbType, string connectStr, string sql, DataTable dataTable)
        {
            var result = false;
            var dsNew  = new DataTable();

            switch (dbType)
            {
            default:    //默认oracle数据库
                using (var conn = new OracleConnection(connectStr))
                {
                    try
                    {
                        var cmd     = new OracleCommand(sql, conn);
                        var adapter = new OracleDataAdapter(cmd);
                        var cb      = new OracleCommandBuilder(adapter);
                        var count   = adapter.Fill(dsNew);
                        for (int i = 0; i < dataTable.Rows.Count; i++)
                        {
                            DataRow dr = dsNew.NewRow();
                            foreach (DataColumn col in dataTable.Columns)
                            {
                                dr[col.ColumnName] = dataTable.Rows[i][col.ColumnName];
                            }
                            dsNew.Rows.Add(dr);
                        }
                        count = adapter.Update(dsNew);
                        adapter.UpdateBatchSize = 200;
                        result = true;
                    }
                    catch (Exception e)
                    {
                        e.Message.ErrorMsg();
                    }
                }
                break;

            case "db2":
                //using (var conn = new DB2Connection(connectionString))
                //{
                //    try
                //    {
                //        var cmd = new DB2Command(sqlScript, conn);
                //        var adapter = new DB2DataAdapter(cmd);
                //        var cb = new DB2CommandBuilder(adapter);
                //        var count = adapter.Fill(dsNew);
                //        for (int i = 0; i < dataTable.Rows.Count; i++)
                //        {
                //            DataRow dr = dsNew.NewRow();
                //            foreach (DataColumn col in dataTable.Columns)
                //            {
                //                dr[col.ColumnName] = dataTable.Rows[i][col.ColumnName];
                //            }
                //            dsNew.Rows.Add(dr);
                //        }
                //        count = adapter.Update(dsNew);
                //        adapter.UpdateBatchSize = 200;
                //        result = true;
                //    }
                //    catch (Exception e)
                //    {
                //        e.Message.ErrorMsg();
                //    }
                //}
                break;

            case "mysql":
                //using (var conn = new MySqlConnection(connectionString))
                //{
                //    try
                //    {
                //        var cmd = new MySqlCommand(sqlScript, conn);
                //        var adapter = new MySqlDataAdapter(cmd);
                //        var cb = new MySqlCommandBuilder(adapter);
                //        var count = adapter.Fill(dsNew);
                //        for (int i = 0; i < dataTable.Rows.Count; i++)
                //        {
                //            DataRow dr = dsNew.NewRow();
                //            foreach (DataColumn col in dataTable.Columns)
                //            {
                //                dr[col.ColumnName] = dataTable.Rows[i][col.ColumnName];
                //            }
                //            dsNew.Rows.Add(dr);
                //        }
                //        count = adapter.Update(dsNew);
                //        adapter.UpdateBatchSize = 200;
                //        result = true;
                //    }
                //    catch (Exception e)
                //    {
                //        e.Message.ErrorMsg();
                //    }
                //}
                break;

            case "sqlserver":
                using (var conn = new SqlConnection(connectStr))
                {
                    try
                    {
                        var cmd     = new SqlCommand(sql, conn);
                        var adapter = new SqlDataAdapter(cmd);
                        var cb      = new SqlCommandBuilder(adapter);
                        var count   = adapter.Fill(dsNew);
                        for (int i = 0; i < dataTable.Rows.Count; i++)
                        {
                            DataRow dr = dsNew.NewRow();
                            foreach (DataColumn col in dataTable.Columns)
                            {
                                dr[col.ColumnName] = dataTable.Rows[i][col.ColumnName];
                            }
                            dsNew.Rows.Add(dr);
                        }
                        count = adapter.Update(dsNew);
                        adapter.UpdateBatchSize = 200;
                        result = true;
                    }
                    catch (Exception e)
                    {
                        e.Message.ErrorMsg();
                    }
                }
                break;
            }
            return(result);
        }
Пример #35
0
        /// <summary>
        /// Method to load service
        /// </summary>
        /// <returns></returns>
        public Service LoadService()
        {
            var service = new Service();

            _connection = new SqlConnection(GetConnectionString(DataSource.CSCMaster));
            if (_connection.State == ConnectionState.Closed)
            {
                _connection.Open();
            }
            _dataTable = new DataTable();
            _adapter   = new SqlDataAdapter("select * from Variables where Name=\'PostPayEnabled\'", _connection);
            _adapter.Fill(_dataTable);
            if (_dataTable.Rows.Count != 0)
            {
                if (!DBNull.Value.Equals(_dataTable.Rows[0]["Value"]))
                {
                    service.PostPayEnabled = CommonUtility.GetDoubleValue(_dataTable.Rows[0]["Value"]) == 1;
                }
                else
                {
                    service.PostPayEnabled      = true;
                    _dataTable.Rows[0]["Value"] = "1";
                    SqlCommandBuilder builder = new SqlCommandBuilder(_adapter);
                    _adapter.UpdateCommand = builder.GetUpdateCommand();
                }
            }
            else
            {
                var     rsTmp    = GetRecords("select Max(VarIndex) as MaxIndex from Variables", DataSource.CSCMaster);
                DataRow rsfields = _dataTable.NewRow();
                rsfields["VarIndex"]    = DBNull.Value.Equals(rsTmp.Rows[0]["MaxIndex"]) ? 0 : CommonUtility.GetIntergerValue(rsTmp.Rows[0]["MaxIndex"]) + 1;
                rsfields["Name"]        = "PostPayEnabled";
                rsfields["Value"]       = "1";
                rsfields["Description"] = "To keep the current PostPay status, 1-On/0-Off.";
                _dataTable.Rows.Add(rsfields);
                service.PostPayEnabled = true;
                SqlCommandBuilder builder = new SqlCommandBuilder(_adapter);
                _adapter.InsertCommand = builder.GetInsertCommand();
            }

            _adapter.Update(_dataTable);

            _dataTable = new DataTable();
            _adapter   = new SqlDataAdapter("select * from Variables where Name=\'PayPumpEnabled\'", _connection);
            _adapter.Fill(_dataTable);
            if (_dataTable.Rows.Count != 0)
            {
                if (!DBNull.Value.Equals(_dataTable.Rows[0]["Value"]))
                {
                    service.PayPumpEnabled = CommonUtility.GetDoubleValue(_dataTable.Rows[0]["Value"]) == 1;
                }
                else
                {
                    service.PayPumpEnabled      = true;
                    _dataTable.Rows[0]["Value"] = "1";
                    SqlCommandBuilder builder = new SqlCommandBuilder(_adapter);
                    _adapter.UpdateCommand = builder.GetUpdateCommand();
                }
            }
            else
            {
                var     rsTmp    = GetRecords("select Max(VarIndex) as MaxIndex from Variables", DataSource.CSCMaster);
                DataRow rsfields = _dataTable.NewRow();
                rsfields["VarIndex"]    = DBNull.Value.Equals(rsTmp.Rows[0]["MaxIndex"]) ? 0 : CommonUtility.GetIntergerValue(rsTmp.Rows[0]["MaxIndex"]) + 1;
                rsfields["Name"]        = "PayPumpEnabled";
                rsfields["Value"]       = "1";
                rsfields["Description"] = "To keep the current PayPump status, 1-On/0-Off.";
                _dataTable.Rows.Add(rsfields);
                service.PayPumpEnabled = true;
                SqlCommandBuilder builder = new SqlCommandBuilder(_adapter);
                _adapter.InsertCommand = builder.GetInsertCommand();
            }
            _adapter.Update(_dataTable);
            _dataTable = new DataTable();
            _adapter   = new SqlDataAdapter("select * from Variables where Name=\'PrepayEnabled\'", _connection);
            _adapter.Fill(_dataTable);
            if (_dataTable.Rows.Count != 0)
            {
                if (!DBNull.Value.Equals(_dataTable.Rows[0]["Value"]))
                {
                    service.PrepayEnabled = CommonUtility.GetDoubleValue(_dataTable.Rows[0]["Value"]) == 1;
                }
                else
                {
                    service.PrepayEnabled       = true;
                    _dataTable.Rows[0]["Value"] = "1";
                    SqlCommandBuilder builder = new SqlCommandBuilder(_adapter);
                    _adapter.UpdateCommand = builder.GetUpdateCommand();
                }
            }
            else
            {
                var     rsTmp    = GetRecords("select Max(VarIndex) as MaxIndex from Variables", DataSource.CSCMaster);
                DataRow rsfields = _dataTable.NewRow();
                rsfields["VarIndex"]    = DBNull.Value.Equals(rsTmp.Rows[0]["MaxIndex"]) ? 0 : CommonUtility.GetIntergerValue(rsTmp.Rows[0]["MaxIndex"]) + 1;
                rsfields["Name"]        = "PrepayEnabled";
                rsfields["Value"]       = "1";
                rsfields["Description"] = "To keep the current Prepay status, 1-On/0-Off.";
                _dataTable.Rows.Add(rsfields);
                service.PrepayEnabled = true;
                SqlCommandBuilder builder = new SqlCommandBuilder(_adapter);
                _adapter.InsertCommand = builder.GetInsertCommand();
            }
            _adapter.Update(_dataTable);
            _connection.Close();
            _adapter?.Dispose();
            return(service);
        }
        public HttpResponseMessage PostLeave([FromBody] object leaveposting)
        {
            clsLeavePost tPost = JsonConvert.DeserializeObject <clsLeavePost>(leaveposting.ToString());

            tPost.ERROR = Utils.LeaveDataValidate(tPost);
            if (!string.IsNullOrEmpty(tPost.ERROR))
            {
                tPost.PostedFlg = false;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
            }

            LeaveDaysDetails LeaveDays = Utils.GetLeaveDaysDetails(tPost);

            string Location = tPost.Location;
            string strEmp   = tPost.EmpUnqID.ToString();
            string strerr   = string.Empty;
            string cnstr    = string.Empty;

            try
            {
                cnstr = ConfigurationManager.ConnectionStrings["cn" + Location].ConnectionString;
            }
            catch (Exception ex)
            {
                tPost.ERROR = "Could not build Location Connection.." + ex.Message;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
            }



            //bool trecosile = Utils.ReconsileLeaveBal(strEmp, tPost.LeaveTyp, "LeaveAPI", tPost.FromDate.Year, out strerr);

            List <clsLeaveBal> tlstbal = Utils.GetLeaveBal(Convert.ToInt32(tPost.EmpUnqID), tPost.FromDate.Year, tPost.LeaveTyp, Location);

            if (tlstbal.Count > 0)
            {
                clsLeaveBal tBal = tlstbal[0];
                if (tBal.IsBalanced && (tBal.Balance - LeaveDays.LeaveDays) < 0)
                {
                    tPost.ERROR    += "InSufficient Balance...";
                    tPost.PostedFlg = false;
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                }
            }
            else
            {
                tPost.ERROR    += "Leave Balance Record not found...";
                tPost.PostedFlg = false;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
            }

            #region Chk_WoReqEnt
            switch (tPost.LeaveTyp)
            {
            case "LW":
                LeaveDays.WOEntReq = false;
                break;

            case "AB":
                LeaveDays.WOEntReq = false;
                break;

            case "SP":
                LeaveDays.WOEntReq = false;
                break;

            case "OH":
                LeaveDays.WOEntReq = false;
                break;

            default:
                LeaveDays.WOEntReq = true;
                break;
            }
            #endregion

            #region MainProc
            using (SqlConnection cn = new SqlConnection(cnstr))
            {
                try
                {
                    cn.Open();
                }
                catch (Exception ex)
                {
                    tPost.ERROR    += ex.Message.ToString();
                    tPost.PostedFlg = false;
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                }

                SqlTransaction tr  = cn.BeginTransaction();
                string         sql = "Select * from LeaveEntry Where " +
                                     " compcode = '01'" +
                                     " and WrkGrp ='COMP'" +
                                     " and LeaveTyp ='" + tPost.LeaveTyp + "'" +
                                     " And tYear ='" + tPost.FromDate.Year + "'" +
                                     " And EmpUnqID='" + tPost.EmpUnqID + "'" +
                                     " And FromDt ='" + tPost.FromDate.ToString("yyyy-MM-dd") + "'" +
                                     " and ToDt ='" + tPost.ToDate.ToString("yyyy-MM-dd") + "'";

                string  err2 = string.Empty;
                DataSet ds   = Utils.GetData(sql, cnstr, out err2);

                if (!string.IsNullOrEmpty(err2))
                {
                    tPost.ERROR    += err2;
                    tPost.PostedFlg = false;
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                }

                err2 = string.Empty;

                //advance leave not allowed thru api..

                bool hasRows = ds.Tables.Cast <DataTable>().Any(table => table.Rows.Count != 0);
                if (!hasRows)
                {
                    try
                    {
                        string remark = ((tPost.Remarks.Trim().Length > 100) ? tPost.Remarks.Trim().Substring(0, 100) : tPost.Remarks.Trim());
                        remark = remark.Replace("'", "");
                        remark = remark.Replace('"', ' ');
                        remark = remark.Replace('%', ' ');
                        remark = remark.Replace('&', ' ');

                        string insertsql = "insert into LeaveEntry (CompCode,WrkGrp,tYear,EmpUnqID,FromDt,ToDt," +
                                           " LeaveTyp,TotDay,WoDay,PublicHL,LeaveDed,LeaveADV,LeaveHalf,Remark,AddID,AddDt,DelFlg) " +
                                           " Values ('01','COMP','" + tPost.FromDate.Year.ToString() + "','" + tPost.EmpUnqID + "','" + tPost.FromDate.ToString("yyyy-MM-dd") + "','" + tPost.ToDate.ToString("yyyy-MM-dd") + "', " +
                                           " '" + tPost.LeaveTyp + "','" + LeaveDays.TotDays.ToString() + "','" + LeaveDays.WoDays.ToString() + "','" + LeaveDays.HLDays.ToString() + "'," +
                                           " '" + LeaveDays.LeaveDays.ToString() + "','0','" + (LeaveDays.IsHalf ? 1 : 0) + "','" + remark + "'," +
                                           " '" + tPost.AttdUser + "',GetDate(),0)";

                        SqlCommand cmd = new SqlCommand(insertsql, cn, tr);
                        cmd.ExecuteNonQuery();
                    }
                    catch (Exception ex)
                    {
                        tr.Rollback();
                        tPost.ERROR    += ex.Message.ToString();
                        tPost.PostedFlg = false;
                        return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                    }
                }
                //gettting timeout
                SqlCommand    cmd1 = new SqlCommand(sql, cn, tr);
                SqlDataReader sdr  = cmd1.ExecuteReader();
                if (sdr.HasRows)
                {
                    //close datareader
                    if (sdr != null)
                    {
                        sdr.Close();
                    }


                    string datestr = "Select * from V_LV_USE where CAL_Date between '" + tPost.FromDate.ToString("yyyy-MM-dd") + "' and '" + tPost.ToDate.ToString("yyyy-MM-dd") + "'";

                    DataSet trsLV = Utils.GetData(datestr, cnstr, out err2);



                    //used for leave days count
                    decimal tmpleavecons = 0;
                    #region UpdateSchLeave
                    foreach (DataRow trslr in trsLV.Tables[0].Rows)
                    {
                        DateTime CalDt = Convert.ToDateTime(trslr["Cal_Date"]);

                        string sqlSch = "Select * from MastLeaveSchedule Where EmpUnqID ='" + tPost.EmpUnqID + "' And tdate ='" + CalDt.ToString("yyyy-MM-dd") + "'";

                        //create data adapter
                        DataSet           dsSchLv   = new DataSet();
                        SqlDataAdapter    daSchLv   = new SqlDataAdapter(new SqlCommand(sqlSch, cn, tr));
                        SqlCommandBuilder cmdbSchLv = new SqlCommandBuilder(daSchLv);

                        daSchLv.InsertCommand             = cmdbSchLv.GetInsertCommand();
                        daSchLv.InsertCommand.Transaction = tr;
                        daSchLv.UpdateCommand             = cmdbSchLv.GetUpdateCommand();
                        daSchLv.UpdateCommand.Transaction = tr;
                        daSchLv.DeleteCommand             = cmdbSchLv.GetDeleteCommand();
                        daSchLv.DeleteCommand.Transaction = tr;
                        daSchLv.AcceptChangesDuringUpdate = false;

                        daSchLv.Fill(dsSchLv, "MastLeaveSchedule");
                        hasRows = dsSchLv.Tables.Cast <DataTable>().Any(table => table.Rows.Count != 0);

                        if (hasRows)
                        {
                            try
                            {
                                string sqldel = "Delete From MastLeaveSchedule Where " +
                                                " EmpUnqID='" + tPost.EmpUnqID + "' " +
                                                " And tDate ='" + CalDt.ToString("yyyy-MM-dd") + "'" +
                                                " And SchLeave='" + tPost.LeaveTyp + "' and WrkGrp ='COMP' AND  ConsInTime is null and ConsOutTime is null " +
                                                " And ConsOverTime is null and ConsShift is null ";

                                SqlCommand cmd = new SqlCommand(sqldel, cn, tr);
                                int        t   = (int)cmd.ExecuteNonQuery();

                                sqldel = "Update MastLeaveSchedule Set SchLeave = null, SchLeaveHalf = 0,SchLeaveAdv = 0 Where " +
                                         " EmpUnqID='" + tPost.EmpUnqID + "' " +
                                         " And tDate ='" + CalDt.ToString("yyyy-MM-dd") + "'" +
                                         " And SchLeave='" + tPost.LeaveTyp + "' and WrkGrp ='COMP' ";

                                SqlCommand cmd2 = new SqlCommand(sqldel, cn, tr);
                                t = (int)cmd2.ExecuteNonQuery();
                            }
                            catch (Exception ex)
                            {
                                tr.Rollback();
                                tr.Dispose();
                                tPost.ERROR    += ex.Message.ToString();
                                tPost.PostedFlg = false;
                                return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                            }
                        }

                        dsSchLv.Clear();
                        daSchLv.Fill(dsSchLv, "MastLeaveSchedule");

                        DataRow drSch;
                        hasRows = dsSchLv.Tables.Cast <DataTable>().Any(table => table.Rows.Count != 0);
                        if (!hasRows)
                        {
                            try
                            {
                                string tsql3 = "Insert into MastLeaveSchedule (EmpUnqId,WrkGrp,tDate,AddDt,AddID) Values (" +
                                               "'" + tPost.EmpUnqID + "','COMP','" + CalDt.ToString("yyyy-MM-dd") + "',GetDate(),'" + tPost.AttdUser + "')";
                                SqlCommand cmd = new SqlCommand(tsql3, cn, tr);
                                cmd.ExecuteNonQuery();

                                dsSchLv.Clear();
                                daSchLv.Fill(dsSchLv, "MastLeaveSchedule");
                                drSch = dsSchLv.Tables["MastLeaveSchedule"].Rows[0];
                            }
                            catch (Exception ex)
                            {
                                tr.Rollback();
                                tr.Dispose();
                                tPost.ERROR    += ex.Message.ToString();
                                tPost.PostedFlg = false;
                                return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                            }
                        }
                        else
                        {
                            drSch = dsSchLv.Tables["MastLeaveSchedule"].Rows[0];
                        }

                        string PublicHLTyp = string.Empty;
                        string SchShift    = string.Empty;
                        string tsql        = string.Empty;
                        string err3        = string.Empty;
                        err2 = string.Empty;
                        err3 = string.Empty;

                        tsql = "Select PublicHLTyp from HolidayMast Where WrkGrp ='COMP' and tDate ='" + CalDt.ToString("yyyy-MM-dd") + "'";


                        PublicHLTyp = Utils.GetDescription(tsql, cnstr, out err2);
                        if (!string.IsNullOrEmpty(err2))
                        {
                            tr.Rollback();
                            tr.Dispose();
                            tPost.ERROR    += err2;
                            tPost.PostedFlg = false;
                            return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                        }

                        tsql = "Select ScheduleShift from AttdData where  EmpUnqID ='" + tPost.EmpUnqID + "' " +
                               " And CompCode = '01' And WrkGrp = 'COMP' " +
                               " And tYear = '" + CalDt.Year.ToString() + "' And tDate ='" + CalDt.ToString("yyyy-MM-dd") + "'";

                        err2     = string.Empty;
                        SchShift = Utils.GetDescription(tsql, cnstr, out err2);
                        if (!string.IsNullOrEmpty(err2))
                        {
                            tr.Rollback();
                            tr.Dispose();
                            tPost.ERROR    += err2;
                            tPost.PostedFlg = false;
                            return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                        }

                        if (LeaveDays.WOEntReq == false)
                        {
                            string sqldel = "Update MastLeaveSchedule Set SchLeave = null, SchLeaveHalf = 0,SchLeaveAdv = 0 Where " +
                                            " EmpUnqID='" + tPost.EmpUnqID + "' " +
                                            " And tDate ='" + CalDt.ToString("yyyy-MM-dd") + "'" +
                                            " And SchLeave in ('WO','HL') and WrkGrp ='COMP' ";

                            SqlCommand cmd2 = new SqlCommand(sqldel, cn, tr);
                            int        t    = (int)cmd2.ExecuteNonQuery();


                            drSch["schLeave"] = tPost.LeaveTyp;
                            drSch["AddId"]    = tPost.AttdUser;
                            drSch["AddDt"]    = Utils.GetSystemDateTime(cnstr);
                            drSch["UpdDt"]    = Utils.GetSystemDateTime(cnstr);
                            drSch["UpdId"]    = tPost.AttdUser;
                            tmpleavecons     += 1;
                        }
                        else if (LeaveDays.WOEntReq && PublicHLTyp != "")
                        {
                            drSch["schLeave"] = PublicHLTyp;
                            drSch["AddId"]    = "HLCal";
                            drSch["AddDt"]    = Utils.GetSystemDateTime(cnstr);
                            drSch["UpdDt"]    = Utils.GetSystemDateTime(cnstr);
                            drSch["UpdId"]    = tPost.AttdUser;
                        }
                        else if (LeaveDays.WOEntReq && PublicHLTyp == "" && drSch["SchLeave"].ToString() == "WO")
                        {
                            drSch["schLeave"] = "WO";
                            drSch["AddId"]    = "ShiftSch";
                            drSch["UpdDt"]    = Utils.GetSystemDateTime(cnstr);
                            drSch["UpdId"]    = tPost.AttdUser;
                        }
                        else if (LeaveDays.WOEntReq && PublicHLTyp == "" && SchShift == "WO")
                        {
                            drSch["schLeave"] = "WO";
                            drSch["AddId"]    = "ShiftSch";
                            drSch["UpdDt"]    = Utils.GetSystemDateTime(cnstr);
                            drSch["UpdId"]    = tPost.AttdUser;
                        }
                        else
                        {
                            drSch["schLeave"] = tPost.LeaveTyp;
                            drSch["AddId"]    = tPost.AttdUser;
                            drSch["AddDt"]    = Utils.GetSystemDateTime(cnstr);
                            drSch["UpdDt"]    = Utils.GetSystemDateTime(cnstr);
                            drSch["UpdId"]    = tPost.AttdUser;
                            tmpleavecons     += 1;
                        }



                        drSch["SchLeaveHalf"] = (tPost.HalfDay ? 1 : 0);
                        //dsSchLv.Tables["MastLeaveSchedule"].Rows.Add(drSch);
                        dsSchLv.AcceptChanges();

                        try
                        {
                            string sql2 = "Update MastLeaveSchedule Set AddId ='" + drSch["AddId"].ToString() + "'," +
                                          " AddDt='" + Convert.ToDateTime(drSch["AddDt"]).ToString("yyyy-MM-dd HH:mm:ss") + "'," +
                                          " UpdDt={0},UpdID={1}, SchLeave='" + drSch["SchLeave"].ToString() + "'," +
                                          " SchLeaveAdv='" + (Convert.ToBoolean(drSch["SchLeaveAdv"]) ? 1 : 0).ToString() + "'," +
                                          " SchLeaveHalf ='" + (tPost.HalfDay ? 1 : 0).ToString() + "' Where SanId = '" + drSch["SanID"].ToString() + "'";

                            sql2 = string.Format(sql2,
                                                 ((drSch["UpdDt"] == DBNull.Value) ? " null " : "'" + Convert.ToDateTime(drSch["UpdDt"]).ToString("yyyy-MM-dd HH:mm") + "'"),
                                                 (drSch["UpdID"] == DBNull.Value) ? " null " : "'" + tPost.AttdUser + "'"
                                                 );

                            SqlCommand cmd = new SqlCommand(sql2, cn, tr);
                            cmd.ExecuteNonQuery();
                        }
                        catch (Exception ex)
                        {
                            tr.Rollback();
                            tr.Dispose();
                            tPost.ERROR    += ex.Message;
                            tPost.PostedFlg = false;
                            return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                        }
                    }//foreach dateloop - trsLV
                    #endregion
                }

                try
                {
                    #region UpdateLeaveBal

                    using (SqlCommand cmd20 = new SqlCommand())
                    {
                        try
                        {
                            string tsql1 = "Update LeaveBal " +
                                           " Set AVL = AVL + '" + LeaveDays.LeaveDays.ToString() + "'" +
                                           " ,ADV = 0 " +
                                           " ,UPDDT = GetDate(),UPDID = '" + tPost.AttdUser + "' " +
                                           " Where " +
                                           " CompCode ='01'" +
                                           " And WrkGrp='COMP'" +
                                           " And tYear ='" + tPost.FromDate.Year.ToString() + "'" +
                                           " And EmpUnqID ='" + tPost.EmpUnqID + "'" +
                                           " And LeaveTyp='" + tPost.LeaveTyp + "'";

                            cmd20.CommandType = CommandType.Text;
                            cmd20.CommandText = tsql1;
                            cmd20.Connection  = new SqlConnection(cnstr);
                            cmd20.Connection.Open();
                            cmd20.ExecuteNonQuery();
                            cmd20.Connection.Close();
                        }
                        catch (Exception ex)
                        {
                            tr.Rollback();
                            tr.Dispose();
                            tPost.ERROR    += ex.Message;
                            tPost.PostedFlg = false;
                            return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                        }
                    }

                    #endregion

                    tr.Commit();
                    tr.Dispose();
                }catch (Exception ex) {
                    tr.Rollback();
                    tr.Dispose();
                    tPost.ERROR    += ex.Message.ToString();
                    tPost.PostedFlg = false;
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                }


                try
                {
                    //string err = string.Empty;
                    //bool t = ReconsileLeaveBal(tPost.EmpUnqID, tPost.LeaveTyp, tPost.AttdUser, out err);

                    #region ProcessData
                    string sql1 = "Insert into AttdWorker  ( EmpUnqId,FromDt,ToDt,WorkerId,DoneFlg,PushFlg,addid,ProcessType ) " +
                                  " values ('" + tPost.EmpUnqID + "','" + tPost.FromDate.ToString("yyyy-MM-dd") + "','" + tPost.ToDate.ToString("yyyy-MM-dd") + "'," +
                                  " '" + tPost.AttdUser + "',0,0,'" + tPost.AttdUser + "','ATTD' )";

                    using (SqlCommand cmd = new SqlCommand())
                    {
                        cmd.Connection     = cn;
                        cmd.CommandText    = sql1;
                        cmd.CommandTimeout = 0;
                        cmd.ExecuteNonQuery();
                    }

                    sql1 = "Insert into AttdWorker  ( EmpUnqId,FromDt,ToDt,WorkerId,DoneFlg,PushFlg,addid,ProcessType ) " +
                           " values ('" + tPost.EmpUnqID + "','" + tPost.FromDate.ToString("yyyy-MM-dd") + "','" + tPost.ToDate.ToString("yyyy-MM-dd") + "'," +
                           " '" + tPost.AttdUser + "',0,0,'" + tPost.AttdUser + "','LUNCHINOUT' )";
                    using (SqlCommand cmd = new SqlCommand())
                    {
                        cmd.Connection     = cn;
                        cmd.CommandText    = sql1;
                        cmd.CommandTimeout = 0;
                        cmd.ExecuteNonQuery();
                    }

                    #endregion

                    tPost.PostedFlg = true;
                }
                catch (Exception ex)
                {
                    tPost.ERROR    += ex.Message.ToString();
                    tPost.PostedFlg = false;
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, tPost));
                }
            }//end sqlcon using
            #endregion

            return(Request.CreateResponse(HttpStatusCode.OK, tPost));
        }
Пример #37
0
        private void button3_Click(object sender, EventArgs e)
        {
            try

            {
                baglantim.Open();

                string CariID = "";
                string HKodu  = "";
                // string HAdi;

                #region Cari Bilgisi Alınıyor
                SqlCommand CariBilgi = new SqlCommand("", baglantim);
                // CariBilgi.CommandType = CommandType.StoredProcedure;
                CariBilgi = new SqlCommand("SELECT HESAPADI FROM CARIKART where HESAPADI like 'KARE BİLGİSAYAR SANAYİ VE TİCARET A.Ş.%'", baglantim);
                SqlDataReader al = CariBilgi.ExecuteReader();
                if (al.HasRows == false)
                {
                    SqlConnection baglantim = new SqlConnection("Server=PCYAZ\\SQLEXPRESS,1433;Database=Verim_1;uid=sa;pwd=admin-*741852963");
                    baglantim.Open();


                    string     st         = "INSERT INTO CARIKART (HESAPKODU,HESAPADI,IslemKodu,DurumKodu) VALUES ('000007','KARE BİLGİSAYAR SANAYİ VE TİCARET A.Ş.','CRK_AliciSatici','Aktif')";
                    SqlCommand CariBilgim = new SqlCommand(st, baglantim);
                    CariBilgim.ExecuteNonQuery();
                    baglantim.Close();
                }
                #endregion
                al.Close();


                // Fatura Sorgulanıyor



                SqlCommand Comm = new SqlCommand("__FaturaInsert", baglantim);     //Burada SQL'de oluşturduğumuz procedureun adını yazıyoruz

                Comm.CommandType = CommandType.StoredProcedure;

                System.Data.SqlClient.SqlCommandBuilder cb;
                // System.Data.OleDb.OleDbCommandBuilder cb;
                // cb = new OleDbCommandBuilder(adaptor);
                cb    = new SqlCommandBuilder(adaptor);
                komut = new SqlCommand("SELECT CariKart_ID,HESAPKODU FROM CARIKART where HESAPADI like '%KARE BİLGİSAYAR SANAYİ%'", baglantim);
                SqlDataReader bilgigetir = komut.ExecuteReader();

                while (bilgigetir.Read())
                {
                    if (bilgigetir.GetString(1) != "")
                    {
                        CariID = bilgigetir["CariKart_ID"].ToString();
                        HKodu  = bilgigetir["HESAPKODU"].ToString();
                        // HAdi = bilgigetir["HESAPADI"].ToString() ;

                        break;
                    }
                }
                bilgigetir.Close();

                Comm.Parameters.AddWithValue("@SevkAdres_FID", DBNull.Value);
                Comm.Parameters.AddWithValue("@PerFatura_FID", DBNull.Value);
                Comm.Parameters.AddWithValue("@Plasiyer_FID", DBNull.Value);
                Comm.Parameters.AddWithValue("@CariKart_FID", CariID);
                Comm.Parameters.AddWithValue("@FATURANO", fatno.Text);
                Comm.Parameters.AddWithValue("@ISLEMTIPI", "Alis Faturasi");
                Comm.Parameters.AddWithValue("@TARIH", Convert.ToDateTime(fattarih.Text));
                Comm.Parameters.AddWithValue("@DONEM", "Ocak");
                Comm.Parameters.AddWithValue("@HESAPKODU", HKodu);
                Comm.Parameters.AddWithValue("@BELGESERI", DBNull.Value);
                Comm.Parameters.AddWithValue("@BELGENO", fatno.Text);
                Comm.Parameters.AddWithValue("@OZELKOD", DBNull.Value);
                Comm.Parameters.AddWithValue("@KDV", Convert.ToDecimal(kdv.Text));
                Comm.Parameters.AddWithValue("@ACIKLAMA", kurbilgisi.Text);
                Comm.Parameters.AddWithValue("@MASRAF", 0);
                Comm.Parameters.AddWithValue("@INDIRIM", 0);
                Comm.Parameters.AddWithValue("@TOPLAM", Convert.ToDecimal(malhiztoplamTL.Text));
                Comm.Parameters.AddWithValue("@NETBORC", DBNull.Value);
                Comm.Parameters.AddWithValue("@NETALACAK", Convert.ToDecimal(odenecektutar.Text));
                Comm.Parameters.AddWithValue("@PARABIRIMI", "$");
                Comm.Parameters.AddWithValue("@ISLEMKURU", DBNull.Value);
                Comm.Parameters.AddWithValue("@CARIKURU", DBNull.Value);
                Comm.Parameters.AddWithValue("@TLBORC", DBNull.Value);
                Comm.Parameters.AddWithValue("@TLALACAK", Convert.ToDecimal(odenecektutar.Text));
                Comm.Parameters.AddWithValue("@DOVIZBORC", DBNull.Value);
                Comm.Parameters.AddWithValue("@DOVIZALACAK", DBNull.Value);
                Comm.Parameters.AddWithValue("@KDVDAHIL", DBNull.Value);
                Comm.Parameters.AddWithValue("@CARIDOVIZI", "TL");
                Comm.Parameters.AddWithValue("@KAPATMA", DBNull.Value);
                Comm.Parameters.AddWithValue("@VADESI", DBNull.Value);
                Comm.Parameters.AddWithValue("@KAPATMANO", DBNull.Value);
                Comm.Parameters.AddWithValue("@SAAT", fatsaati.Text);
                Comm.Parameters.AddWithValue("@YAZDIRMA", DBNull.Value);
                Comm.Parameters.AddWithValue("@SEVKTARIHI", DBNull.Value);
                Comm.Parameters.AddWithValue("@SATICI", DBNull.Value);
                Comm.Parameters.AddWithValue("@ACIKLAMA2", DBNull.Value);
                Comm.Parameters.AddWithValue("@ACIKLAMA3", DBNull.Value);
                Comm.Parameters.AddWithValue("@ACIKLAMA4 ", DBNull.Value);
                Comm.Parameters.AddWithValue("@FATURAMALIYETI", 0);
                Comm.Parameters.AddWithValue("@ARATOPLAM", Convert.ToDecimal(malhiztoplamTL.Text));
                Comm.Parameters.AddWithValue("@OTV", 0);
                Comm.Parameters.AddWithValue("@TEVKIFAT_KDVSI", 0);
                Comm.Parameters.AddWithValue("@TEVKIFAT", DBNull.Value);
                Comm.Parameters.AddWithValue("@HESAPADI", hesapadi.Text);
                Comm.Parameters.AddWithValue("@Depolar_FID", 1);
                Comm.Parameters.AddWithValue("@SATICIPRIMI", DBNull.Value);
                Comm.Parameters.AddWithValue("@SECIM", DBNull.Value);
                Comm.Parameters.AddWithValue("@ISLEMKODU", "FT_Alis");
                Comm.Parameters.AddWithValue("@DONEMNO", "2019_01");
                Comm.Parameters.AddWithValue("@STOPAJORANI", DBNull.Value);
                Comm.Parameters.AddWithValue("@STOPAJ", DBNull.Value);
                Comm.Parameters.AddWithValue("@SAYFA", DBNull.Value);
                Comm.Parameters.AddWithValue("@ONAY", DBNull.Value);
                Comm.Parameters.AddWithValue("@KAPANMATRH", DBNull.Value);
                Comm.Parameters.AddWithValue("@KdvDurumKodu", "KDV_Dahil");
                Comm.Parameters.AddWithValue("@OzelKod_FID", DBNull.Value);
                Comm.Parameters.AddWithValue("@ToplamMiktar", DBNull.Value);
                Comm.Parameters.AddWithValue("@ToplamReferansMiktar", DBNull.Value);
                Comm.Parameters.AddWithValue("@GC_Tipi", 1);
                Comm.Parameters.AddWithValue("@FaturaAdres_FID", DBNull.Value);
                Comm.Parameters.AddWithValue("@Upt_Flg", 1);
                Comm.Parameters.AddWithValue("@Iptal", DBNull.Value);
                Comm.Parameters.AddWithValue("@BakiyeBorc", DBNull.Value);
                Comm.Parameters.AddWithValue("@BakiyeAlacak", DBNull.Value);
                Comm.Parameters.AddWithValue("@Rota", DBNull.Value);
                Comm.Parameters.AddWithValue("@Muhasebe", DBNull.Value);
                Comm.Parameters.AddWithValue("@Sube_FID", DBNull.Value);
                Comm.Parameters.AddWithValue("@DigerGider", DBNull.Value);
                Comm.Parameters.AddWithValue("@FaizTarihi", DBNull.Value);
                Comm.Parameters.AddWithValue("@VadeUygula", DBNull.Value);
                Comm.Parameters.AddWithValue("@KDVeksiTEVKIFAT", DBNull.Value);
                Comm.Parameters.AddWithValue("@Tevk_Payi", DBNull.Value);
                Comm.Parameters.AddWithValue("@Tevk_Paydasi", DBNull.Value);
                Comm.Parameters.AddWithValue("@VFDekontisl_FID", DBNull.Value);
                Comm.Parameters.AddWithValue("@UUID", DBNull.Value);
                Comm.Parameters.AddWithValue("@EFaturaNO", DBNull.Value);
                Comm.Parameters.AddWithValue("@EFaturaDurumu", DBNull.Value);
                Comm.Parameters.AddWithValue("@EFaturaAltDurumu", DBNull.Value);
                Comm.Parameters.AddWithValue("@EFaturaGIBCode", DBNull.Value);
                Comm.Parameters.AddWithValue("@VadeFarki", DBNull.Value);
                Comm.Parameters.AddWithValue("@DipIsktOrani", DBNull.Value);
                Comm.Parameters.AddWithValue("@KargoGideri", DBNull.Value);
                Comm.Parameters.AddWithValue("@KomisyonOrani", DBNull.Value);
                Comm.Parameters.AddWithValue("@KomisyonGideri", DBNull.Value);
                Comm.Parameters.AddWithValue("@TevkifatKodu", DBNull.Value);
                Comm.Parameters.AddWithValue("@EkVergiler", DBNull.Value);
                Comm.Parameters.AddWithValue("@Borc ", DBNull.Value);
                Comm.Parameters.AddWithValue("@Alacak ", 1);
                Comm.Parameters.AddWithValue("@EFaturaTipi", DBNull.Value);
                Comm.Parameters.AddWithValue("@EFaturaTuru", DBNull.Value);
                Comm.Parameters.AddWithValue("@EFaturaSenaryo ", DBNull.Value);
                Comm.Parameters.AddWithValue("@EFaturaDurumKodu", DBNull.Value);
                Comm.Parameters.AddWithValue("@YeniIrsaliyeNO ", DBNull.Value);
                Comm.Parameters.AddWithValue("@EarsivEmailiGonderildi", DBNull.Value);
                Comm.Parameters.AddWithValue("@FaturaLog_FID ", DBNull.Value);


                object Fatura_ID = Comm.ExecuteScalar();
                MessageBox.Show("Başarıyla Kaydedildi");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            finally
            {
                baglantim.Close();
            }

            //  }
            //  baglantim.Close();
            FatraDTKAydet();
        }
Пример #38
0
        /// <summary>
        /// 获取选择数量语句
        /// </summary>
        /// <param name="baseCommand">源选择语句</param>
        /// <returns>选择数量语句</returns>
        internal static String InternalGetCountCommand(SelectCommand baseCommand)
        {
            SqlCommandBuilder sb = new SqlCommandBuilder(baseCommand.Database);

            List<SqlQueryField> queryFields = new List<SqlQueryField>();
            queryFields.Add(SqlQueryField.InternalCreateFromAggregateFunction(baseCommand, SqlAggregateFunction.Count));

            sb.AppendSelectPrefix();
            sb.AppendSelectDistinct(baseCommand.UseDistinct).AppendAllColumnNames(queryFields);
            sb.AppendSelectFromAndJoins(baseCommand.TableName, baseCommand.IsFromSql, baseCommand.SqlJoins);

            sb.AppendWhere(baseCommand.SqlWhere);
            sb.AppendSelectGroupBys(baseCommand.GroupByColumns);
            sb.AppendHaving(baseCommand.SqlHaving);

            return sb.ToString();
        }
Пример #39
0
 private void button5_Click(object sender, EventArgs e)
 {
     SCB = new SqlCommandBuilder(SDA);
     SDA.Update(DT);
 }
Пример #40
0
        public void ORDERAdd(string Meal, string Dish, string OrderBoxed)
        {
            try
            {
                InsertsbSql.Clear();
                sbSql.Clear();
                //ADD COPTC

                if (Meal.Equals("10+20"))
                {
                    DataSet ds1 = new DataSet();
                    //20210902密
                    Class1 TKID = new Class1();//用new 建立類別實體
                    SqlConnectionStringBuilder sqlsb = new SqlConnectionStringBuilder(ConfigurationManager.ConnectionStrings["dbconn"].ConnectionString);

                    //資料庫使用者密碼解密
                    sqlsb.Password = TKID.Decryption(sqlsb.Password);
                    sqlsb.UserID   = TKID.Decryption(sqlsb.UserID);

                    String connectionString;
                    sqlConn = new SqlConnection(sqlsb.ConnectionString);

                    sbSql.Clear();
                    sbSqlQuery.Clear();

                    sbSql.AppendFormat(@"SELECT [SERNO],[ID],[NAME],[CARDNO],[DATE],[MEAL],[DISH],[NUM],[EATNUM] FROM [TKBOXEDMEAL].[dbo].[LOCALEMPORDER] WHERE  CONVERT(varchar(100),[DATE], 112)=CONVERT(varchar(100),GETDATE(), 112) AND [ID]='{0}' AND  [MEAL]='{1}'  ", EmployeeID, "10");

                    adapter       = new SqlDataAdapter(@"" + sbSql, sqlConn);
                    sqlCmdBuilder = new SqlCommandBuilder(adapter);

                    sqlConn.Open();
                    ds1.Clear();
                    adapter.Fill(ds1, "TEMPds1");
                    sqlConn.Close();

                    if (ds1.Tables["TEMPds1"].Rows.Count == 0)
                    {
                        //InsertsbSql.AppendFormat(" DELETE [TKBOXEDMEAL].[dbo].[EMPORDER] WHERE CONVERT(varchar(100),[DATE], 112)=CONVERT(varchar(100),GETDATE(), 112) AND [ID]='{0}' AND  ([MEAL]='10' OR [MEAL]='20') AND [EATNUM]=0", EmployeeID, Meal);
                        Meal = "10";
                        InsertsbSql.Append(" ");
                        InsertsbSql.AppendFormat(" INSERT INTO  [TKBOXEDMEAL].[dbo].[LOCALEMPORDER] ([SERNO],[ID],[NAME],[CARDNO],[DATE],[MEAL],[DISH],[NUM]) VALUES ('{0}','{1}','{2}','{3}',GETDATE(),'{4}','{5}',1) ", dateTimePicker1.Value.ToString("yyyyMMdd") + DateTime.Now.ToString("HHmmss"), EmployeeID, Name, CardNo, Meal, Dish);
                    }

                    sqlConn = new SqlConnection(sqlsb.ConnectionString);

                    sbSql.Clear();
                    sbSqlQuery.Clear();

                    sbSql.AppendFormat(@"SELECT [SERNO],[ID],[NAME],[CARDNO],[DATE],[MEAL],[DISH],[NUM],[EATNUM] FROM [TKBOXEDMEAL].[dbo].[LOCALEMPORDER] WHERE CONVERT(varchar(100),[DATE], 112)=CONVERT(varchar(100),GETDATE(), 112) AND [ID]='{0}' AND  [MEAL]='{1}'  ", EmployeeID, "20");

                    adapter       = new SqlDataAdapter(@"" + sbSql, sqlConn);
                    sqlCmdBuilder = new SqlCommandBuilder(adapter);

                    sqlConn.Open();
                    ds1.Clear();
                    adapter.Fill(ds1, "TEMPds1");
                    sqlConn.Close();
                    if (ds1.Tables["TEMPds1"].Rows.Count == 0)
                    {
                        Meal = "20";
                        InsertsbSql.Append(" ");
                        InsertsbSql.AppendFormat(" INSERT INTO  [TKBOXEDMEAL].[dbo].[LOCALEMPORDER] ([SERNO],[ID],[NAME],[CARDNO],[DATE],[MEAL],[DISH],[NUM]) VALUES ('{0}','{1}','{2}','{3}',GETDATE(),'{4}','{5}',1) ", dateTimePicker1.Value.ToString("yyyyMMdd") + DateTime.Now.ToString("HHmmss"), EmployeeID, Name, CardNo, Meal, Dish);
                    }
                }
                else
                {
                    DataSet ds1 = new DataSet();
                    //20210902密
                    Class1 TKID = new Class1();//用new 建立類別實體
                    SqlConnectionStringBuilder sqlsb = new SqlConnectionStringBuilder(ConfigurationManager.ConnectionStrings["dbconn"].ConnectionString);

                    //資料庫使用者密碼解密
                    sqlsb.Password = TKID.Decryption(sqlsb.Password);
                    sqlsb.UserID   = TKID.Decryption(sqlsb.UserID);

                    String connectionString;
                    sqlConn = new SqlConnection(sqlsb.ConnectionString);

                    sbSql.Clear();
                    sbSqlQuery.Clear();

                    sbSql.AppendFormat(@"SELECT [SERNO],[ID],[NAME],[CARDNO],[DATE],[MEAL],[DISH],[NUM],[EATNUM] FROM [TKBOXEDMEAL].[dbo].[LOCALEMPORDER] WHERE CONVERT(varchar(100),[DATE], 112)=CONVERT(varchar(100),'{2}', 112) AND [ID]='{0}' AND  [MEAL]='{1}' ", EmployeeID, Meal, dateTimePicker1.Value.ToString("yyyyMMdd"));

                    adapter       = new SqlDataAdapter(@"" + sbSql, sqlConn);
                    sqlCmdBuilder = new SqlCommandBuilder(adapter);

                    sqlConn.Open();
                    ds1.Clear();
                    adapter.Fill(ds1, "TEMPds1");
                    if (ds1.Tables["TEMPds1"].Rows.Count > 0)
                    {
                        Name = ds1.Tables["TEMPds1"].Rows[0][2].ToString();
                    }
                    sqlConn.Close();

                    if (ds1.Tables["TEMPds1"].Rows.Count == 0)
                    {
                        InsertsbSql.Append(" ");
                        //InsertsbSql.AppendFormat(" DELETE [TKBOXEDMEAL].[dbo].[EMPORDER] WHERE CONVERT(varchar(100),[DATE], 112)=CONVERT(varchar(100),GETDATE(), 112) AND [ID]='{0}' AND  [MEAL]='{1}' AND [EATNUM]=0 ", EmployeeID, Meal);
                        InsertsbSql.AppendFormat(" INSERT INTO  [TKBOXEDMEAL].[dbo].[LOCALEMPORDER] ([SERNO],[ID],[NAME],[CARDNO],[DATE],[MEAL],[DISH],[NUM]) VALUES ('{0}','{1}','{2}','{3}','{4}','{5}','{6}',{7}) ", dateTimePicker1.Value.ToString("yyyyMMdd") + DateTime.Now.ToString("HHmmss"), EmployeeID, Name, CardNo, dateTimePicker1.Value.ToString("yyyyMMdd"), Meal, Dish, textBox3.Text);
                    }
                    else
                    {
                        //AutoClosingMessageBox.Show("已經訂過餐了!!", "TITLE", messagetime);
                        SHOWMESSAGE(Name + "已經訂過餐了!!!!");
                    }
                }


                if (!string.IsNullOrEmpty(InsertsbSql.ToString()))
                {
                    //20210902密
                    Class1 TKID = new Class1();//用new 建立類別實體
                    SqlConnectionStringBuilder sqlsb = new SqlConnectionStringBuilder(ConfigurationManager.ConnectionStrings["dbconn"].ConnectionString);

                    //資料庫使用者密碼解密
                    sqlsb.Password = TKID.Decryption(sqlsb.Password);
                    sqlsb.UserID   = TKID.Decryption(sqlsb.UserID);

                    String connectionString;
                    sqlConn = new SqlConnection(sqlsb.ConnectionString);

                    sqlConn.Close();
                    sqlConn.Open();
                    tran               = sqlConn.BeginTransaction();
                    cmd.Connection     = sqlConn;
                    cmd.CommandTimeout = 60;
                    cmd.CommandText    = InsertsbSql.ToString();
                    cmd.Transaction    = tran;
                    result             = cmd.ExecuteNonQuery();
                    if (result == 0)
                    {
                        tran.Rollback();    //交易取消
                        SHOWMESSAGE(Name + " 訂餐失敗!!");
                    }
                    else
                    {
                        tran.Commit();      //執行交易
                        SHOWMESSAGE(Name + " 訂餐成功!!" + " 訂了: " + OrderBoxed.ToString());
                    }

                    sqlConn.Close();
                }
            }
            catch
            {
            }
            finally
            {
            }
        }
Пример #41
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text == "")
            {
                MessageBox.Show("用户名不能为空");
                textBox2.Text = textBox3.Text = "";
            }
            else if (textBox2.Text == "")
            {
                MessageBox.Show("密码不能为空");
                textBox3.Text = "";
            }
            else if (textBox3.Text == "")
            {
                MessageBox.Show("确认密码不能为空");
            }
            else if (textBox2.Text != textBox3.Text)
            {
                MessageBox.Show("两次密码不一致请重新输入");
                textBox2.Text = textBox3.Text = "";
            }
            else
            {
                SqlConnection sql = new SqlConnection("server=.;database=XueXi;uid=sa;pwd=abc123*");
                sql.Open();
                DataSet        ds  = new DataSet();
                SqlCommand     cmd = new SqlCommand("select * from T_User", sql);
                SqlDataAdapter sda = new SqlDataAdapter();
                sda.SelectCommand = cmd;
                sda.Fill(ds);
                SqlCommandBuilder scb = new SqlCommandBuilder(sda);
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    if (ds.Tables[0].Rows[i]["Name"].ToString() == textBox1.Text)
                    {
                        MessageBox.Show("已存在该用户名");
                        textBox1.Text = textBox2.Text = textBox3.Text = "";
                        return;
                    }
                }
                string     insertstr = "insert into dbo.T_User (Name,Password) values (\'" + textBox1.Text + "\', \'" + textBox2.Text + "\')";
                SqlCommand cmd1      = new SqlCommand(insertstr, sql);
                int        j         = cmd1.ExecuteNonQuery();

                if (j == 1)
                {
                    DialogResult dialogr = MessageBox.Show("注册成功,点击确定进入登录页面", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    if (dialogr == DialogResult.OK)
                    {
                        this.Hide();
                        Form7 frm = new Form7();
                        frm.Show();
                    }
                }
                else
                {
                    MessageBox.Show("失败,请重新注册");
                    textBox1.Text = textBox2.Text = textBox3.Text = "";
                }
                sql.Close();
            }
        }
Пример #42
0
        public void Search()
        {
            ds.Clear();

            try
            {
                //20210902密
                Class1 TKID = new Class1();//用new 建立類別實體
                SqlConnectionStringBuilder sqlsb = new SqlConnectionStringBuilder(ConfigurationManager.ConnectionStrings["dbconn"].ConnectionString);

                //資料庫使用者密碼解密
                sqlsb.Password = TKID.Decryption(sqlsb.Password);
                sqlsb.UserID   = TKID.Decryption(sqlsb.UserID);

                String connectionString;
                sqlConn = new SqlConnection(sqlsb.ConnectionString);

                sbSql.Clear();
                sbSqlQuery.Clear();


                sbSql.AppendFormat(@" SELECT [LOCALEMPORDER].[ID] AS '工號',[LOCALEMPORDER].[NAME] AS '姓名',[MEAL].[MEALNAME] AS '餐別',[MEALDISH].[DISHNAME] AS '葷素' ,[LOCALEMPORDER].[NUM] AS '訂餐量'");
                sbSql.AppendFormat(@" ,[LOCALEMPORDER].[SERNO],[LOCALEMPORDER].[CARDNO],[LOCALEMPORDER].[DATE],[LOCALEMPORDER].[MEAL],[LOCALEMPORDER].[DISH] ");
                sbSql.AppendFormat(@" FROM [TKBOXEDMEAL].[dbo].[LOCALEMPORDER] ");
                sbSql.AppendFormat(@" LEFT JOIN [TKBOXEDMEAL].[dbo].[MEAL] ON [MEAL].[MEAL]=[LOCALEMPORDER].[MEAL] ");
                sbSql.AppendFormat(@" LEFT JOIN [TKBOXEDMEAL].[dbo].[MEALDISH] ON [MEALDISH].[DISH]=[LOCALEMPORDER].[DISH] ");
                sbSql.AppendFormat(@" WHERE CONVERT(NVARCHAR,[LOCALEMPORDER].[DATE],112)='{0}'  ", dateTimePicker1.Value.ToString("yyyyMMdd"));
                sbSql.AppendFormat(@" ORDER BY [LOCALEMPORDER].[ID] ");
                sbSql.AppendFormat(@"  ");
                sbSql.AppendFormat(@"  ");
                sbSql.AppendFormat(@"  ");

                adapter = new SqlDataAdapter(@"" + sbSql, sqlConn);

                sqlCmdBuilder = new SqlCommandBuilder(adapter);
                sqlConn.Open();
                ds.Clear();
                adapter.Fill(ds, "TEMPds1");
                sqlConn.Close();


                if (ds.Tables["TEMPds1"].Rows.Count == 0)
                {
                    dataGridView1.DataSource = null;
                }
                else
                {
                    if (ds.Tables["TEMPds1"].Rows.Count >= 1)
                    {
                        dataGridView1.DataSource = ds.Tables["TEMPds1"];
                        dataGridView1.AutoResizeColumns();
                    }
                }
            }
            catch
            {
            }
            finally
            {
            }
        }
Пример #43
0
        public void ClassToSQL(Dictionary <string, string> dic)
        {
            // SqlConnection sqlConnection = new SqlConnection("Data Source=.;Initial Catalog=hxlh;uid=sa;pwd=12345678;Integrated Security=True");

            if (IsExist(dic["ordercode"], dic["ln_no"]) == false)
            {
                SqlDataAdapter sqlDataAdapter = new SqlDataAdapter("Select * from orders", sqlConnection);

                SqlCommandBuilder bldr = new SqlCommandBuilder(sqlDataAdapter);
                sqlDataAdapter.InsertCommand = bldr.GetInsertCommand();
                //创建DataSet

                DataSet dataSet = new DataSet("OrderIn");
                //确定现有 DataSet 架构与传入数据不匹配时需要执行的操作。
                sqlDataAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

                sqlDataAdapter.Fill(dataSet, "orders");
                //DataRow表示DataTable中的一行数据
                System.Data.DataRow dataRow1;
                dataRow1 = dataSet.Tables["orders"].NewRow();
                dataRow1["ordercode"] = dic["ordercode"];

                dataRow1["orderstatus"] = dic["orderstatus"];
                dataRow1["saler"]       = dic["sellerSignerFullname"];
                dataRow1["mj_name"]     = dic["mj_name"];
                dataRow1["mj_email"]    = dic["mj_email"];
                dataRow1["orderdt"]     = dic["orderdt"];
                dataRow1["paydt"]       = dic["paydt"];
                dataRow1["shr"]         = dic["contactPerson"];
                dataRow1["mjxzwl"]      = dic["mjxzwl"];
                dataRow1["wlfy"]        = dic["wlfy"];
                string nation = getCountryFullName(dic["nation"]);
                dataRow1["nation"]   = nation;
                dataRow1["province"] = dic["province"];
                dataRow1["city"]     = dic["city"];
                dataRow1["addr"]     = dic["addr"];
                dataRow1["code"]     = dic["code"];
                if (dic.ContainsKey("phone"))
                {
                    string temp;
                    temp = dic["phone"].ToString().Trim();
                    temp.Replace("-", "");
                    if (temp.Length < 6 || temp.Length > 20)
                    {
                        dataRow1["phone"] = "";
                    }
                    else
                    {
                        dataRow1["phone"] = dic["phone"];
                    }
                }
                else
                {
                    dataRow1["phone"] = "";
                }
                if (dic.ContainsKey("mobile"))
                {
                    string temp2 = dic["mobile"].ToString().Trim();
                    temp2.Replace("-", "");
                    if (temp2.Length < 6 || temp2.Length > 20)
                    {
                        dataRow1["mobile"] = "";
                    }
                    else
                    {
                        dataRow1["mobile"] = dic["mobile"];
                    }
                }
                else
                {
                    dataRow1["mobile"] = "";
                }

                if (dataRow1["mobile"].ToString() == "" && dataRow1["phone"].ToString() == "")
                {
                    dataRow1["isyc"] = 1;
                }

                //除了1其他项总金额栏都填写0

                if (dic["ln_no"] == "1")
                {
                    dataRow1["all_sum"] = dic["all_sum"];
                }
                else
                {
                    dataRow1["all_sum"] = 0;
                }


                dataRow1["projects"] = dic["projects"];
                if (dic["skuCode"] == "")
                {
                    dataRow1["item_bh"] = dic["item_bh"];
                }
                else
                {
                    dataRow1["item_bh"] = dic["skuCode"];
                }

                if (!IsItemBhExist(dataRow1["item_bh"].ToString()))
                {
                    dataRow1["isyc"] = 1;
                }

                string itemName = GetItemName(dataRow1["item_bh"].ToString());
                if (itemName != "")
                {
                    dataRow1["item_nm"] = itemName;
                }



                if (dic.ContainsKey("color"))
                {
                    dataRow1["color"] = dic["color"];
                }

                if (dic.ContainsKey("size"))
                {
                    dataRow1["size"] = dic["size"];
                }

                if (dic.ContainsKey("cup size"))
                {
                    string size = dic["cup size"];
                    if (dic.ContainsKey("bands size"))
                    {
                        size = size + "/" + dic["bands size"];
                    }
                    dataRow1["size"] = size;
                }



                if (dic.ContainsKey("shoe us size"))
                {
                    string shoetype;
                    //US码转Eur码
                    switch (dic["deptid"])
                    {
                    case "1012":  shoetype = "men"; break;  //000

                    case "1017": shoetype = "men"; break;   //500

                    case "1016": shoetype = "women"; break; //600

                    case "1013": shoetype = "women"; break; //900

                    default: shoetype = ""; break;          //不在范围内
                    }

                    string type = dataRow1["item_bh"].ToString().Substring(0, 2);

                    if (type == "XW")
                    {
                        shoetype = "women";
                    }
                    else if (type == "XM")
                    {
                        shoetype = "men";
                    }



                    if (shoetype != "")
                    {
                        string eurSize = ConvertShoeSize(shoetype, dic["shoe us size"]);
                        if (eurSize != "")
                        {
                            dataRow1["size"] = eurSize;
                        }
                        else
                        {
                            dataRow1["size"] = dic["shoe us size"];
                        }
                    }
                    else
                    {
                        dataRow1["size"] = dic["shoe us size"];
                    }

                    dataRow1["mem"] = "shoe us size:" + dic["shoe us size"];
                }

                if (dic["unit"].Trim().ToLower().Contains("lot")) //单位是lot的订单也为异常
                {
                    dataRow1["isyc"]   = 1;
                    dataRow1["mem"]    = dic["lotNum"].ToString() + "piece" + "/ Lot ;  " + dic["amount"].ToString() + " Lot";
                    dataRow1["amount"] = (Int32.Parse(dic["lotNum"]) * Int32.Parse(dic["amount"])).ToString();
                    dataRow1["unit"]   = "piece";
                }
                else
                {
                    dataRow1["amount"] = dic["amount"];
                    dataRow1["unit"]   = dic["unit"];
                }



                dataRow1["item_sum"] = dic["item_sum"];
                if (dic["memo"].Trim() != "")
                {
                    dataRow1["isyc"] = 1;
                }

                dataRow1["ordermem"]  = dic["memo"];
                dataRow1["import_dt"] = DateTime.Now;
                dataRow1["shaddr"]    = dic["shaddr"];
                dataRow1["ln_no"]     = dic["ln_no"];
                dataRow1["deptid"]    = dic["deptid"];
                dataRow1["operator"]  = "自动导入";
                dataRow1["status"]    = "0";



                dataSet.Tables["orders"].Rows.Add(dataRow1);
                sqlDataAdapter.Update(dataSet, "orders");
                sqlConnection.Close();
                count++;
            }
            else
            {
            }
        }
Пример #44
0
    protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        string user;

        user = Session["vuname"].ToString();

        if (DropDownList1.SelectedIndex == 1)
        {
            da = new SqlDataAdapter("select * from products where producttype='" + DropDownList1.SelectedItem.Text + "' and vendorname='" + user + "'", cn);
            ds = new DataSet();
            da.Fill(ds, "products");
            dt = ds.Tables["products"];
            da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
            cmb = new SqlCommandBuilder(da);
            DropDownList2.Items.Clear();
            for (i = 0; i < dt.Rows.Count; i++)
            {
                DropDownList2.Items.Add(dt.Rows[i][10].ToString());
            }


            DropDownList2.DataBind();
        }


        if (DropDownList1.SelectedIndex == 2)
        {
            da = new SqlDataAdapter("select * from products where producttype='" + DropDownList1.SelectedItem.Text + "' and vendorname='" + user + "'", cn);
            ds = new DataSet();
            da.Fill(ds, "products");
            dt = ds.Tables["products"];
            da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
            cmb = new SqlCommandBuilder(da);
            DropDownList2.Items.Clear();
            DropDownList2.Items.Add("Select");
            for (i = 0; i < dt.Rows.Count; i++)
            {
                DropDownList2.Items.Add(dt.Rows[i][10].ToString());
            }

            DropDownList2.DataBind();
        }


        if (DropDownList1.SelectedIndex == 3)
        {
            da = new SqlDataAdapter("select * from products where producttype='" + DropDownList1.SelectedItem.Text + "' and vendorname='" + user + "'", cn);
            ds = new DataSet();
            da.Fill(ds, "products");
            dt = ds.Tables["products"];
            da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
            cmb = new SqlCommandBuilder(da);
            DropDownList2.Items.Clear();
            for (i = 0; i < dt.Rows.Count; i++)
            {
                DropDownList2.Items.Add(dt.Rows[i][10].ToString());
            }
            DropDownList2.DataBind();
        }
        if (DropDownList1.SelectedIndex == 4)
        {
            da = new SqlDataAdapter("select * from products where producttype='" + DropDownList1.SelectedItem.Text + "' and vendorname='" + user + "'", cn);
            ds = new DataSet();
            da.Fill(ds, "products");
            dt = ds.Tables["products"];
            da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
            cmb = new SqlCommandBuilder(da);
            DropDownList2.Items.Clear();
            for (i = 0; i < dt.Rows.Count; i++)
            {
                DropDownList2.Items.Add(dt.Rows[i][10].ToString());
            }
            DropDownList2.DataBind();
        }
        if (DropDownList1.SelectedIndex == 5)
        {
            da = new SqlDataAdapter("select * from products where producttype='" + DropDownList1.SelectedItem.Text + "' and vendorname='" + user + "'", cn);
            ds = new DataSet();
            da.Fill(ds, "products");
            dt = ds.Tables["products"];
            da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
            cmb = new SqlCommandBuilder(da);
            DropDownList2.Items.Clear();
            for (i = 0; i < dt.Rows.Count; i++)
            {
                DropDownList2.Items.Add(dt.Rows[i][10].ToString());
            }
            DropDownList2.DataBind();
        }

        if (DropDownList1.SelectedIndex == 6)
        {
            da = new SqlDataAdapter("select * from products where producttype='" + DropDownList1.SelectedItem.Text + "' and vendorname='" + user + "'", cn);
            ds = new DataSet();
            da.Fill(ds, "products");
            dt = ds.Tables["products"];
            da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
            cmb = new SqlCommandBuilder(da);
            DropDownList2.Items.Clear();
            for (i = 0; i < dt.Rows.Count; i++)
            {
                DropDownList2.Items.Add(dt.Rows[i][10].ToString());
            }
            DropDownList2.DataBind();
        }
        if (DropDownList1.SelectedIndex == 7)
        {
            da = new SqlDataAdapter("select * from products where producttype='" + DropDownList1.SelectedItem.Text + "' and vendorname='" + user + "'", cn);
            ds = new DataSet();
            da.Fill(ds, "products");
            dt = ds.Tables["products"];
            da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
            cmb = new SqlCommandBuilder(da);
            DropDownList2.Items.Clear();
            for (i = 0; i < dt.Rows.Count; i++)
            {
                DropDownList2.Items.Add(dt.Rows[i][10].ToString());
            }
            DropDownList2.DataBind();
        }
        if (DropDownList1.SelectedIndex == 8)
        {
            da = new SqlDataAdapter("select * from products where producttype='" + DropDownList1.SelectedItem.Text + "' and vendorname='" + user + "'", cn);
            ds = new DataSet();
            da.Fill(ds, "products");
            dt = ds.Tables["products"];
            da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
            cmb = new SqlCommandBuilder(da);
            DropDownList2.Items.Clear();
            for (i = 0; i < dt.Rows.Count; i++)
            {
                DropDownList2.Items.Add(dt.Rows[i][10].ToString());
            }
            DropDownList2.DataBind();
        }
    }
Пример #45
0
        public void Search()
        {
            ds.Clear();

            try
            {
                //20210902密
                Class1 TKID = new Class1();//用new 建立類別實體
                SqlConnectionStringBuilder sqlsb = new SqlConnectionStringBuilder(ConfigurationManager.ConnectionStrings["dbconn"].ConnectionString);

                //資料庫使用者密碼解密
                sqlsb.Password = TKID.Decryption(sqlsb.Password);
                sqlsb.UserID   = TKID.Decryption(sqlsb.UserID);

                String connectionString;
                sqlConn = new SqlConnection(sqlsb.ConnectionString);

                sbSql.Clear();
                sbSqlQuery.Clear();

                StringBuilder query = new StringBuilder();

                if (comboBox1.Text.Equals("未完成"))
                {
                    query.AppendFormat(@"  AND (ISNULL([HREngFrm001OutTime] ,'')='' OR ISNULL([HREngFrm001BakTime]  ,'')='')");
                }
                else if (comboBox1.Text.Equals("全部"))
                {
                    query.AppendFormat(@"  ");
                }

                sbSql.AppendFormat(@"  SELECT [HREngFrm001SN] AS '表單編號	',[HREngFrm001OutDate] AS '預計日期',[HREngFrm001User] AS '申請人',[HREngFrm001UsrDpt] AS '部門',[HREngFrm001Rank] AS '職級',[HREngFrm001Agent] AS '代理人',[HREngFrm001Transp] AS '交通工具',[HREngFrm001Location] AS '外出地點'	,[HREngFrm001Cause] AS '外出原因',[HREngFrm001DefOutTime] AS '預計外出時間',[HREngFrm001OutTime] AS '實際外出時間',[HREngFrm001DefBakTime] AS '預計返廠時間',[HREngFrm001BakTime] AS '實際返廠時間'	");
                sbSql.AppendFormat(@"  ,[TaskId]");
                sbSql.AppendFormat(@"  FROM [TKGAFFAIRS].[dbo].[HREngFrm001]");
                sbSql.AppendFormat(@"  WHERE [HREngFrm001OutDate]>='{0}' AND [HREngFrm001OutDate]<='{1}'", dateTimePicker1.Value.ToString("yyyy/MM/dd"), dateTimePicker2.Value.ToString("yyyy/MM/dd"));
                sbSql.AppendFormat(@"  {0}", query.ToString());
                sbSql.AppendFormat(@"  ");
                sbSql.AppendFormat(@"  ");

                adapter = new SqlDataAdapter(@"" + sbSql, sqlConn);

                sqlCmdBuilder = new SqlCommandBuilder(adapter);
                sqlConn.Open();
                ds.Clear();
                adapter.Fill(ds, "TEMPds1");
                sqlConn.Close();


                if (ds.Tables["TEMPds1"].Rows.Count == 0)
                {
                    dataGridView1.DataSource = null;
                }
                else
                {
                    if (ds.Tables["TEMPds1"].Rows.Count >= 1)
                    {
                        dataGridView1.DataSource = ds.Tables["TEMPds1"];
                        dataGridView1.AutoResizeColumns();
                    }
                }
            }
            catch
            {
            }
            finally
            {
            }
        }
Пример #46
0
        private void LoadDetails(string ClientCode, string theName)
        {
            try
            {
                SqlConnection cnSQL = new SqlConnection(MyModules.strConnect);
                SqlCommand    cmSQL = new SqlCommand();

                cmSQL.Connection = cnSQL;
                cnSQL.Open();
                cmSQL.Parameters.Clear();
                cmSQL.CommandText = "FetchPaymentDetails";
                if (RadSchool.Checked)
                {
                    cmSQL.Parameters.AddWithValue("@Source", "SCHOOL");
                }
                if (RadStudent.Checked)
                {
                    cmSQL.Parameters.AddWithValue("@Source", "STUDENT");
                }
                if (RadVendor.Checked)
                {
                    cmSQL.Parameters.AddWithValue("@Source", "VENDOR");
                }

                if (radStaff.Checked)
                {
                    cmSQL.Parameters.AddWithValue("@Source", "STAFF");
                }

                cmSQL.Parameters.AddWithValue("@RefNo", ClientCode);
                cmSQL.Parameters.AddWithValue("@TheName", theName);
                cmSQL.Parameters.AddWithValue("@StartDate", (dtpStartDate.Checked == false ? "01-Jan-1900" : dtpStartDate.Value.ToString()));
                cmSQL.Parameters.AddWithValue("@Enddate", (dtpEndDate.Checked == false ? "31-Dec-" + (DateTime.Now.Year + 50).ToString() : dtpEndDate.Value.ToString()));



                cmSQL.CommandType = CommandType.StoredProcedure;
                dataAdapter       = new SqlDataAdapter(cmSQL);
                SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);
                DataTable         table          = new DataTable();
                table.Locale = System.Globalization.CultureInfo.InvariantCulture;
                dataAdapter.Fill(table);
                bindingSource.DataSource = table;

                //DGrid.Columns(5).Width = 250

                DataGridViewCellStyle myStyle  = new DataGridViewCellStyle();
                DataGridViewCellStyle myStyle1 = new DataGridViewCellStyle();
                myStyle.ForeColor  = Color.Red;
                myStyle.Format     = "N2";
                myStyle1.Format    = "N2";
                myStyle.Alignment  = DataGridViewContentAlignment.MiddleRight;
                myStyle1.ForeColor = Color.Black;
                myStyle1.Alignment = DataGridViewContentAlignment.MiddleRight;



                DGrid.Columns[2].DefaultCellStyle = myStyle1;
                //DGrid.Columns(3).DefaultCellStyle = myStyle1

                cmSQL.Dispose();
                cnSQL.Close();
                return;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, MyModules.strApptitle, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #47
0
        protected void Button10_Click(object sender, EventArgs e)
        {
            //Create Connection
            string        connStr = ConfigurationManager.ConnectionStrings["DBS"].ConnectionString;
            SqlConnection conn    = new SqlConnection(connStr);

            conn.Open();

            DataTable      dt1 = new DataTable();
            SqlDataAdapter da1 = new SqlDataAdapter("Select Id from Information where Id='" + TextBoxId.Text + "'", conn);

            da1.Fill(dt1);
            if (dt1.Rows.Count > 0)
            {
                Response.Write("<script>alert('Id already exist, try with another one')</script>");
            }
            else
            {
                DataTable      dt2 = new DataTable();
                SqlDataAdapter da2 = new SqlDataAdapter("Select Email from Information where Email='" + TextBoxEmail.Text + "'", conn);
                da2.Fill(dt2);
                if (dt2.Rows.Count > 0)
                {
                    Response.Write("<script>alert('Email is used, try with another one!')</script>");
                }
                else
                {
                    DataTable      dt3 = new DataTable();
                    SqlDataAdapter da3 = new SqlDataAdapter("Select Phone from Information where Phone='" + TextBoxPhone.Text + "'", conn);
                    da3.Fill(dt3);
                    if (dt3.Rows.Count > 0)
                    {
                        Response.Write("<script>alert('Phone is used, try with another one!')</script>");
                    }
                    else
                    {
                        // Insert into Information Table
                        string            sqlInformation     = "SELECT * FROM Information";
                        SqlDataAdapter    adapterInformation = new SqlDataAdapter(sqlInformation, conn);
                        SqlCommandBuilder builderInformation = new SqlCommandBuilder(adapterInformation);
                        DataSet           dsInformation      = new DataSet();
                        adapterInformation.Fill(dsInformation, "Information");
                        DataRow drInformation = dsInformation.Tables["Information"].NewRow();

                        drInformation["Id"]            = TextBoxId.Text;
                        drInformation["Name"]          = TextBoxName.Text;
                        drInformation["Address"]       = TextBoxAddress.Text;
                        drInformation["Email"]         = TextBoxEmail.Text;
                        drInformation["Phone"]         = TextBoxPhone.Text;
                        drInformation["Gender"]        = DropDownListGender.SelectedValue.ToString();
                        drInformation["DOB"]           = calendarControl.SelectedDate.ToString();
                        drInformation["BloodGroup"]    = DropDownListBloodGroup.SelectedValue.ToString();
                        drInformation["Nationality"]   = TextBoxNationality.Text;
                        drInformation["Religion"]      = TextBoxReligion.Text;
                        drInformation["MaritalStatus"] = DropDownListMaritalStatus.SelectedValue.ToString();

                        dsInformation.Tables["Information"].Rows.Add(drInformation);
                        adapterInformation.Update(dsInformation.Tables["Information"]);

                        // Insert Into Admin Table
                        string            sqlAdmin     = "SELECT * FROM Admin";
                        SqlDataAdapter    adapterAdmin = new SqlDataAdapter(sqlAdmin, conn);
                        SqlCommandBuilder builderAdmin = new SqlCommandBuilder(adapterAdmin);
                        DataSet           dsAdmin      = new DataSet();
                        adapterAdmin.Fill(dsAdmin, "Admin");
                        DataRow drAdmin = dsAdmin.Tables["Admin"].NewRow();

                        drAdmin["Id"]          = TextBoxId.Text;
                        drAdmin["JoiningDate"] = calendarControl1.SelectedDate.ToString();

                        dsAdmin.Tables["Admin"].Rows.Add(drAdmin);
                        adapterAdmin.Update(dsAdmin.Tables["Admin"]);


                        //Insert into User Table
                        string            sqlUsers     = "SELECT * FROM Users";
                        SqlDataAdapter    adapterUsers = new SqlDataAdapter(sqlUsers, conn);
                        SqlCommandBuilder builderUsers = new SqlCommandBuilder(adapterUsers);
                        DataSet           dsUsers      = new DataSet();
                        adapterUsers.Fill(dsUsers, "Users");
                        DataRow drUsers = dsUsers.Tables["Users"].NewRow();

                        drUsers["Id"]       = TextBoxId.Text;
                        drUsers["Password"] = TextBoxConfirmPassword.Text;

                        dsUsers.Tables["Users"].Rows.Add(drUsers);
                        adapterUsers.Update(dsUsers.Tables["Users"]);

                        ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect",
                                                            "alert('Added Successfully!'); window.location='" +
                                                            Request.ApplicationPath + "adminAddAdmin.aspx';", true);
                        //Response.Write("<script>alert('Added Successfully!')</script>");
                        //Response.Redirect("~/admin.aspx");
                    }
                }
            }
        }
Пример #48
0
        private void LoadClientBalances()
        {
            try
            {
                SqlConnection cnSQL = new SqlConnection(MyModules.strConnect);
                SqlCommand    cmSQL = new SqlCommand();
                cmSQL.Connection = cnSQL;
                cnSQL.Open();
                string strQry1 = "";
                cmSQL.Parameters.Clear();
                if (RadSchool.Checked == true)
                {
                    cmSQL.CommandText = "SELECT RefNo, Name, 0 AS CR, SUM(Amount) AS DR,0-SUM(Amount) AS Balance FROM Ledger WHERE Source='SCHOOL' GROUP BY RefNo, Name";
                }
                else if (RadStudent.Checked == true)
                {
                    if (cGrp.Text != "ALL")
                    {
                        strQry1 = strQry1 + (string.IsNullOrEmpty(strQry1) ? " " : " AND ") + " SchoolID =" + MyModules.GetIt4Me(cGrp.Text, " - ");
                    }
                    cmSQL.CommandText = "SELECT RefNo, Name, 0 AS CR, SUM(Amount) AS DR,0-SUM(Amount) AS Balance FROM Ledger WHERE Source='STUDENT' " + (string.IsNullOrEmpty(strQry1) ? "" : " AND " + strQry1) + " GROUP BY RefNo, Name";
                }
                else if (RadVendor.Checked == true)
                {
                    cmSQL.CommandText = "SELECT RefNo, Name, 0 AS CR, SUM(Amount) AS DR,0-SUM(Amount) AS Balance FROM Ledger WHERE Source='VENDOR' " + (string.IsNullOrEmpty(strQry1) ? "" : " AND " + strQry1) + " GROUP BY RefNo, Name";
                }
                else
                {
                    if (cGrp.Text != "ALL")
                    {
                        strQry1 = strQry1 + (string.IsNullOrEmpty(strQry1) ? " " : " AND ") + " RegisterVendor.Category ='" + cGrp.Text + "'";
                    }

                    cmSQL.CommandText = "SELECT Ledger.RefNo, Ledger.Name, 0 AS CR, SUM(Amount) AS DR,0-SUM(Amount) AS Balance FROM  Ledger LEFT OUTER JOIN RegisterVendor ON Ledger.RefNo = RegisterVendor.Sn WHERE Ledger.Source='STAFF' " + (string.IsNullOrEmpty(strQry1) ? "" : " AND " + strQry1) + " GROUP BY Ledger.RefNo, Ledger.Name";
                }

                cmSQL.CommandType = CommandType.Text;
                dataAdapterA      = new SqlDataAdapter(cmSQL);
                SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapterA);
                DataTable         tableA         = new DataTable();
                tableA.Locale = System.Globalization.CultureInfo.InvariantCulture;
                dataAdapterA.Fill(tableA);
                bindingSourceA.DataSource = tableA;

                DataGridViewCellStyle myStyle  = new DataGridViewCellStyle();
                DataGridViewCellStyle myStyle1 = new DataGridViewCellStyle();
                myStyle.ForeColor  = Color.Red;
                myStyle.Format     = "N2";
                myStyle1.Format    = "N2";
                myStyle.Alignment  = DataGridViewContentAlignment.MiddleRight;
                myStyle1.ForeColor = Color.Black;
                myStyle1.Alignment = DataGridViewContentAlignment.MiddleRight;
                cnSQL.Close();

                LoadDetails("-899", "sfsfsfs@@");

                return;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, MyModules.strApptitle, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #49
0
        /// <summary>
        /// Loads all the spells.
        /// </summary>
        /// <returns></returns>
        public static bool LoadSpells()
        {
            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.WriteLine("\tLoading Spells...");

            using (var spellinfo = new SqlHandler(Program.Config.ReadString("GameConnectionString")))
            {
                using (var cmd = new SqlCommandBuilder(spellinfo, SqlCommandType.SELECT, false))
                {
                    cmd.Finish("DB_SpellInfo");
                }
                while (spellinfo.Read())
                {
                    Data.Spell spell = new ProjectX_V3_Game.Data.Spell();
                    spell.ID = spellinfo.ReadUInt16("SpellID");
                    if (spell.ID == 0)
                    {
                        return(false);
                    }
                    spell.SpellID = spellinfo.ReadUInt16("Type");
                    if (spell.SpellID == 0)
                    {
                        return(false);
                    }

                    spell.Sort   = spellinfo.ReadByte("Sort");
                    spell.Crime  = spellinfo.ReadBoolean("Crime");
                    spell.Ground = spellinfo.ReadBoolean("Ground");
                    spell.Multi  = spellinfo.ReadBoolean("Multi");
                    spell.Target = spellinfo.ReadByte("Target");
                    spell.Level  = spellinfo.ReadByte("SpellLevel");
                    spell.UseMP  = spellinfo.ReadUInt16("UseMP");
                    spell.Power  = spellinfo.ReadUInt16("Power");
                    if (spell.Power == 0)
                    {
                        spell.PowerPercentage = 1;
                    }
                    else
                    {
                        spell.PowerPercentage = (float)(spell.Power % 1000) / 100;
                    }
                    spell.IntoneSpeed = spellinfo.ReadUInt16("IntoneSpeed");
                    spell.Percentage  = spellinfo.ReadByte("SpellPercent");
                    spell.Duration    = spellinfo.ReadByte("StepSecs");
                    spell.Range       = spellinfo.ReadUInt16("Range");
                    spell.Sector      = spell.Range * 20;
                    spell.Distance    = spellinfo.ReadUInt16("Distance");
                    if (spell.Distance >= 4)
                    {
                        spell.Distance--;
                    }
                    if (spell.Distance > 17)
                    {
                        spell.Distance = 17;
                    }
                    spell.Status        = spellinfo.ReadUInt64("Status");
                    spell.NeedExp       = spellinfo.ReadUInt32("NeedExp");
                    spell.NeedLevel     = spellinfo.ReadByte("NeedLevel");
                    spell.UseXP         = spellinfo.ReadByte("UseXP");
                    spell.WeaponSubtype = spellinfo.ReadUInt16("WeaponSubtype");
                    spell.UseEP         = spellinfo.ReadByte("UseEP");
                    spell.NextMagic     = spellinfo.ReadUInt16("NextMagic");
                    spell.UseItem       = spellinfo.ReadByte("UseItem");
                    spell.UseItemNum    = spellinfo.ReadByte("UseItemNum");

                    if (Core.Kernel.SpellInfos.ContainsKey(spell.SpellID))
                    {
                        Core.Kernel.SpellInfos[spell.SpellID].TryAdd(spell.Level, spell);
                    }
                    else
                    {
                        if (!Core.Kernel.SpellInfos.TryAdd(spell.SpellID))
                        {
                            return(false);
                        }

                        if (!Core.Kernel.SpellInfos[spell.SpellID].TryAdd(spell.Level, spell))
                        {
                            return(false);
                        }
                    }

                    switch (spell.SpellID)
                    {
                    case 5010:
                    case 7020:
                    case 1290:
                    case 1260:
                    case 5030:
                    case 5040:
                    case 7000:
                    case 7010:
                    case 7030:
                    case 7040:
                    case 1250:
                    case 5050:
                    case 5020:
                    case 10490:
                    case 1300:
                        if (spell.Distance >= 3)
                        {
                            spell.Distance = 3;
                        }
                        if (spell.Range > 3)
                        {
                            spell.Range = 3;
                        }
                        if (!Core.Kernel.WeaponSpells.ContainsKey(spell.WeaponSubtype))
                        {
                            if (!Core.Kernel.WeaponSpells.TryAdd(spell.WeaponSubtype, spell.SpellID))
                            {
                                return(false);
                            }
                        }
                        break;
                    }
                }
            }
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("\tLoaded {0} Spells...", Core.Kernel.SpellInfos.Count);
            return(true);
        }
Пример #50
0
        public async Task <ProcedureInfo> ReadSpInfoAsync(string spFullName, IContext context, IDictionary <string, object> session = null)
        {
            using (var connection = new SqlConnection(m_connectionString))
                using (var command = new SqlCommand(spFullName, connection))
                {
                    command.CommandType = CommandType.StoredProcedure;
                    await connection.OpenAsync();

                    SqlCommandBuilder.DeriveParameters(command);

                    var sp = new ProcedureInfo(spFullName);

                    foreach (SqlParameter parameter in command.Parameters)
                    {
                        var dataType = m_sqlDbTypeInfo.GetDataType(parameter.SqlDbType);
                        if (dataType == typeof(string))
                        {
                            parameter.Value = "a";
                        }
                        var parameterInfo = new SqlParameterInfo(parameter, dataType);
                        sp.AddParameter(parameterInfo);
                        if (false != string.IsNullOrWhiteSpace(parameter.TypeName))
                        {
                            continue;
                        }

                        string tableTypeName = new DbObjectInfo(parameter.TypeName).FullName;
                        parameter.TypeName = tableTypeName;
                        var tableTypeSchema = GetFromSession <DataTable>(tableTypeName, session);
                        if (!ReferenceEquals(tableTypeSchema, null))
                        {
                            parameter.Value = tableTypeSchema.Clone();
                            parameterInfo.TableTypeSchema = tableTypeSchema;
                            continue;
                        }

                        using (var loadTableValueParameterSchemaCmd = new SqlCommand())
                        {
                            loadTableValueParameterSchemaCmd.Connection  = connection;
                            loadTableValueParameterSchemaCmd.CommandText =
                                $@"
                            DECLARE @t AS {tableTypeName}
                            SELECT * FROM @t
                        ";
                            using (var reader = await loadTableValueParameterSchemaCmd.ExecuteReaderAsync(CommandBehavior.SchemaOnly | CommandBehavior.KeyInfo))
                            {
                                tableTypeSchema = new DataTable(tableTypeName);
                                tableTypeSchema.Load(reader);
                                AddToSession(tableTypeName, tableTypeSchema, session);
                                parameter.Value = tableTypeSchema.Clone();
                                parameterInfo.TableTypeSchema = tableTypeSchema;
                            }
                        }
                    }

                    if (context?.IgnoreQueryResult(spFullName) == true)
                    {
                        return(sp);
                    }

                    try
                    {
                        DataSet schema  = new DataSet();
                        var     adapter = new SqlDataAdapter(command);
                        adapter.FillSchema(schema, SchemaType.Source);
                        for (int i = 0; i < schema.Tables.Count; ++i)
                        {
                            schema.Tables[i].TableName = $"{spFullName} > result {i}";
                        }

                        sp.AddResultSchemas(schema.Tables.OfType <DataTable>());
                    }
                    catch (SqlException ex)
                    {
                        var message = new StringBuilder($"Could not retrieve the {spFullName} query result information.");
                        if (ex.Message.Contains("Invalid object name '#"))
                        {
                            var procedureObj = new Mapping.Procedure();
                            var flagName     = nameof(procedureObj.IgnoreQueryResult);
                            message.Append($" If typed query result is required, avoid using temporary table(s) in the {spFullName} procedure code.");
                            message.Append($" Otherwise, to suppress this message, mark the procedure with the {flagName} attribute in the mapping.");
                            m_diagnosticsCallback.Warning(message.ToString());
                        }
                        else
                        {
                            message.Append($" Error: {ex.Message}");
                            m_diagnosticsCallback.Error(message.ToString());
                        }
                    }

                    return(sp);
                }
        }