Inheritance: System.ComponentModel.Component
コード例 #1
0
        public override void Update(Document doc, NorthwindConfig config, ref List <TransactionResult> result)
        {
            List <TransactionResult> transactionResult = new List <TransactionResult>();
            ProductFamilyDocument    productFamilyDoc  = doc as ProductFamilyDocument;

            #region check input values
            if (productFamilyDoc == null)
            {
                result.Add(doc.SetTransactionStatus(TransactionStatus.UnRecoverableError, Resources.ErrorMessages_DocumentTypeNotSupported));
                return;
            }

            // check id
            #endregion

            DataSets.CategoryTableAdapters.CategoriesTableAdapter tableAdapter;


            DataSets.Category category = new DataSets.Category();
            DataSets.Category.CategoriesRow row;
            tableAdapter = new DataSets.CategoryTableAdapters.CategoriesTableAdapter();
            using (OleDbConnection connection = new OleDbConnection(config.ConnectionString))
            {
                connection.Open();
                tableAdapter.Connection = connection;
                int recordCount = tableAdapter.FillBy(category.Categories, Convert.ToInt32(productFamilyDoc.Id));
                if (recordCount == 0)
                {
                    doc.SetTransactionStatus(TransactionStatus.UnRecoverableError, "Category does not exists");
                    return;
                }
                row = (Category.CategoriesRow)category.Categories.Rows[0];

                try
                {
                    if (!productFamilyDoc.name.NotSet)
                    {
                        if (productFamilyDoc.name.IsNull)
                        {
                            row.SetCategoryNameNull();
                        }
                        else
                        {
                            row.CategoryName = (string)productFamilyDoc.name.Value;
                        }
                    }

                    if (!productFamilyDoc.description.NotSet)
                    {
                        if (productFamilyDoc.description.IsNull)
                        {
                            row.SetDescriptionNull();
                        }
                        else
                        {
                            row.Description = (string)productFamilyDoc.description.Value;
                        }
                    }

                    row.ModifyID   = config.SequenceNumber;
                    row.ModifyUser = config.CrmUser;
                }
                catch (Exception e)
                {
                    productFamilyDoc.Id = "";
#warning Check error message
                    result.Add(productFamilyDoc.SetTransactionStatus(TransactionStatus.UnRecoverableError, e.ToString()));
                    return;
                }

                tableAdapter            = new DataSets.CategoryTableAdapters.CategoriesTableAdapter();
                tableAdapter.Connection = connection;

                tableAdapter.Update(category.Categories);

                result.Add(doc.SetTransactionStatus(TransactionStatus.Success));
            }
        }
コード例 #2
0
        public override void Add(Document doc, NorthwindConfig config, ref List <TransactionResult> result)
        {
            List <TransactionResult> transactionResult = new List <TransactionResult>();
            ProductFamilyDocument    productFamilyDoc  = doc as ProductFamilyDocument;

            #region check input values
            if (productFamilyDoc == null)
            {
                result.Add(doc.SetTransactionStatus(TransactionStatus.UnRecoverableError, Resources.ErrorMessages_DocumentTypeNotSupported));
                return;
            }
            #endregion

            DataSets.CategoryTableAdapters.CategoriesTableAdapter tableAdapter;


            DataSets.Category category          = new DataSets.Category();
            DataSets.Category.CategoriesRow row = category.Categories.NewCategoriesRow();


            #region fill dataset from document
            try
            {
                if (productFamilyDoc.name.IsNull)
                {
                    row.SetCategoryNameNull();
                }
                else
                {
                    row.CategoryName = (string)productFamilyDoc.name.Value;
                }

                if (productFamilyDoc.description.IsNull)
                {
                    row.SetDescriptionNull();
                }
                else
                {
                    row.Description = (string)productFamilyDoc.description.Value;
                }


                row.CreateID   = config.SequenceNumber;
                row.CreateUser = config.CrmUser;

                row.ModifyID   = config.SequenceNumber;
                row.ModifyUser = config.CrmUser;
            }
            catch (Exception e)
            {
                productFamilyDoc.Id = "";
#warning Check error message
                result.Add(productFamilyDoc.SetTransactionStatus(TransactionStatus.UnRecoverableError, e.ToString()));
                return;
            }

            #endregion

            using (OleDbConnection connection = new OleDbConnection(config.ConnectionString))
            {
                connection.Open();


                tableAdapter            = new DataSets.CategoryTableAdapters.CategoriesTableAdapter();
                tableAdapter.Connection = connection;


                category.Categories.AddCategoriesRow(row);
                tableAdapter.Update(category.Categories);
                OleDbCommand Cmd    = new OleDbCommand("SELECT @@IDENTITY", connection);
                object       lastid = Cmd.ExecuteScalar();
                productFamilyDoc.Id = ((int)lastid).ToString();
            }
            result.Add(doc.SetTransactionStatus(TransactionStatus.Success));
        }
コード例 #3
0
ファイル: ProductFamily.cs プロジェクト: Sage/SData-Contracts
        public override void Add(Document doc, NorthwindConfig config, ref List<TransactionResult> result)
        {
            List<TransactionResult> transactionResult = new List<TransactionResult>();
            ProductFamilyDocument productFamilyDoc = doc as ProductFamilyDocument;

            #region check input values
            if (productFamilyDoc == null)
            {
                result.Add(doc.SetTransactionStatus(TransactionStatus.UnRecoverableError, Resources.ErrorMessages_DocumentTypeNotSupported));
                return;
            }
            #endregion

            DataSets.CategoryTableAdapters.CategoriesTableAdapter tableAdapter;

            DataSets.Category category = new DataSets.Category();
            DataSets.Category.CategoriesRow row = category.Categories.NewCategoriesRow();

            #region fill dataset from document
            try
            {

                if (productFamilyDoc.name.IsNull)
                    row.SetCategoryNameNull();
                else
                    row.CategoryName = (string)productFamilyDoc.name.Value;

                if (productFamilyDoc.description.IsNull)
                    row.SetDescriptionNull();
                else
                    row.Description = (string)productFamilyDoc.description.Value;

                row.CreateID = config.SequenceNumber;
                row.CreateUser = config.CrmUser;

                row.ModifyID = config.SequenceNumber;
                row.ModifyUser = config.CrmUser;

            }
            catch (Exception e)
            {
                productFamilyDoc.Id = "";
            #warning Check error message
                result.Add(productFamilyDoc.SetTransactionStatus(TransactionStatus.UnRecoverableError, e.ToString()));
                return;
            }

            #endregion

            using (OleDbConnection connection = new OleDbConnection(config.ConnectionString))
            {

                    connection.Open();

                    tableAdapter = new DataSets.CategoryTableAdapters.CategoriesTableAdapter();
                    tableAdapter.Connection = connection;

                    category.Categories.AddCategoriesRow(row);
                    tableAdapter.Update(category.Categories);
                    OleDbCommand Cmd = new OleDbCommand("SELECT @@IDENTITY", connection);
                    object lastid = Cmd.ExecuteScalar();
                    productFamilyDoc.Id = ((int)lastid).ToString();

            }
            result.Add(doc.SetTransactionStatus(TransactionStatus.Success));
        }
コード例 #4
0
ファイル: ProductFamily.cs プロジェクト: Sage/SData-Contracts
        public override void Update(Document doc, NorthwindConfig config, ref List<TransactionResult> result)
        {
            List<TransactionResult> transactionResult = new List<TransactionResult>();
            ProductFamilyDocument productFamilyDoc = doc as ProductFamilyDocument;

            #region check input values
            if (productFamilyDoc == null)
            {
                result.Add(doc.SetTransactionStatus(TransactionStatus.UnRecoverableError, Resources.ErrorMessages_DocumentTypeNotSupported));
                return;
            }

            // check id
            #endregion

            DataSets.CategoryTableAdapters.CategoriesTableAdapter tableAdapter;

            DataSets.Category category = new DataSets.Category();
            DataSets.Category.CategoriesRow row;
            tableAdapter = new DataSets.CategoryTableAdapters.CategoriesTableAdapter();
            using (OleDbConnection connection = new OleDbConnection(config.ConnectionString))
            {

                connection.Open();
                tableAdapter.Connection = connection;
                int recordCount = tableAdapter.FillBy(category.Categories, Convert.ToInt32(productFamilyDoc.Id));
                if (recordCount == 0)
                {
                    doc.SetTransactionStatus(TransactionStatus.UnRecoverableError, "Category does not exists");
                    return;
                }
                row = (Category.CategoriesRow)category.Categories.Rows[0];

                try
                {
                    if(!productFamilyDoc.name.NotSet)
                        if (productFamilyDoc.name.IsNull)
                            row.SetCategoryNameNull();
                        else
                            row.CategoryName = (string)productFamilyDoc.name.Value;

                    if(!productFamilyDoc.description.NotSet)
                        if (productFamilyDoc.description.IsNull)
                            row.SetDescriptionNull();
                        else
                            row.Description = (string)productFamilyDoc.description.Value;

                    row.ModifyID = config.SequenceNumber;
                    row.ModifyUser = config.CrmUser;
                }
                catch (Exception e)
                {
                    productFamilyDoc.Id = "";
            #warning Check error message
                    result.Add(productFamilyDoc.SetTransactionStatus(TransactionStatus.UnRecoverableError, e.ToString()));
                    return;
                }

                tableAdapter = new DataSets.CategoryTableAdapters.CategoriesTableAdapter();
                tableAdapter.Connection = connection;

                tableAdapter.Update(category.Categories);

                result.Add(doc.SetTransactionStatus(TransactionStatus.Success));

            }
        }
コード例 #5
0
ファイル: ProductFamily.cs プロジェクト: Sage/SData-Contracts
        public override Document GetDocument(Identity identity, Token lastToken, NorthwindConfig config)
        {
            int recordCount;
            Category category = new Category();

            int id = Identity.GetId(identity);

            using (OleDbConnection connection = new OleDbConnection(config.ConnectionString))
            {
                CategoriesTableAdapter tableAdapter;
                tableAdapter = new CategoriesTableAdapter();
                tableAdapter.Connection = connection;
                recordCount = tableAdapter.FillBy(category.Categories, id);
            }

            if (recordCount == 0)
                return GetDeletedDocument(identity);

            return GetDocument((Category.CategoriesRow)category.Categories[0], lastToken, config);
        }
コード例 #6
0
ファイル: ProductFamily.cs プロジェクト: Sage/SData-Contracts
        public override List<Identity> GetAll(NorthwindConfig config, string whereExpression, OleDbParameter[] oleDbParameters)
        {
            #region Declarations
            List<Identity> result = new List<Identity>();
            int recordCount = 0;
            Category dataset = new Category();
            #endregion

            // get the first 11 rows of the changelog
            using (OleDbConnection connection = new OleDbConnection(config.ConnectionString))
            {
                CategoriesTableAdapter tableAdapter;

                tableAdapter = new CategoriesTableAdapter();

                tableAdapter.Connection = connection;

                if (string.IsNullOrEmpty(whereExpression))
                    recordCount = tableAdapter.Fill(dataset.Categories);
                else
                    recordCount = tableAdapter.FillByWhereClause(dataset.Categories, whereExpression, oleDbParameters);
            }

            foreach (Category.CategoriesRow row in dataset.Categories.Rows)
            {
                // use where expression !!
                result.Add(new Identity(this.EntityName, row.CategoryID.ToString()));
            }

            return result;
        }