Пример #1
0
        Int64 IINVTransactionDataAccess.Add(INVTransactionEntity iNVTransactionEntity, DatabaseOperationType option, TransactionRequired reqTran)
        {
            try
            {
                long retValues = -99;

                switch (reqTran)
                {
                case TransactionRequired.No:
                {
                    retValues = Add(iNVTransactionEntity, option);
                    break;
                }

                case TransactionRequired.Yes:
                {
                    retValues = AddTran(iNVTransactionEntity, option);
                    break;
                }

                default:
                {
                    retValues = -99;
                    break;
                }
                }

                return(retValues);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #2
0
        Int64 IINVTransactionDataAccess.Delete(INVTransactionEntity iNVTransactionEntity, String filterExpression, DatabaseOperationType option, TransactionRequired reqTran)
        {
            try
            {
                long retValues = -99;

                switch (reqTran)
                {
                case TransactionRequired.No:
                {
                    retValues = Delete(iNVTransactionEntity, filterExpression, option);
                    break;
                }

                case TransactionRequired.Yes:
                {
                    retValues = DeleteTran(iNVTransactionEntity, filterExpression, option);
                    break;
                }

                default:
                {
                    retValues = -99;
                    break;
                }
                }

                return(retValues);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #3
0
        private Int64 Update(INVTransactionEntity iNVTransactionEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.INVTransaction_SET";

            using (DbCommand cmd = Database.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd);
                AddFilterExpressionParameter(cmd, filterExpression);

                Database.AddInParameter(cmd, "@TransactionID", DbType.Int64, iNVTransactionEntity.TransactionID);
                Database.AddInParameter(cmd, "@ItemID", DbType.Int64, iNVTransactionEntity.ItemID);
                Database.AddInParameter(cmd, "@BrandID", DbType.Int64, iNVTransactionEntity.BrandID);
                Database.AddInParameter(cmd, "@RegionID", DbType.Int64, iNVTransactionEntity.RegionID);
                Database.AddInParameter(cmd, "@CountryID", DbType.Int64, iNVTransactionEntity.CountryID);
                Database.AddInParameter(cmd, "@BatchNumber", DbType.String, iNVTransactionEntity.BatchNumber);
                Database.AddInParameter(cmd, "@TransactionQty", DbType.Int64, iNVTransactionEntity.TransactionQty);
                Database.AddInParameter(cmd, "@TransactionDate", DbType.DateTime, iNVTransactionEntity.TransactionDate);
                Database.AddInParameter(cmd, "@TransactionDirection", DbType.Boolean, iNVTransactionEntity.TransactionDirection);
                Database.AddInParameter(cmd, "@IPAddress", DbType.String, iNVTransactionEntity.IPAddress);
                Database.AddInParameter(cmd, "@EmployeeID", DbType.Int64, iNVTransactionEntity.EmployeeID);
                Database.AddInParameter(cmd, "@UnitPrice", DbType.Decimal, iNVTransactionEntity.UnitPrice);
                Database.AddInParameter(cmd, "@RequisitionNumber", DbType.String, iNVTransactionEntity.RequisitionNumber);
                Database.AddInParameter(cmd, "@WordOrderNumber", DbType.String, iNVTransactionEntity.WordOrderNumber);
                Database.AddInParameter(cmd, "@MRRNumber", DbType.String, iNVTransactionEntity.MRRNumber);
                Database.AddInParameter(cmd, "@BillNumber", DbType.String, iNVTransactionEntity.BillNumber);
                Database.AddInParameter(cmd, "@IsTransfer", DbType.Boolean, iNVTransactionEntity.IsTransfer);
                Database.AddInParameter(cmd, "@ProjectID", DbType.Int64, iNVTransactionEntity.ProjectID);
                Database.AddInParameter(cmd, "@StoreID", DbType.Int64, iNVTransactionEntity.StoreID);
                Database.AddInParameter(cmd, "@StoreUnitID", DbType.Int64, iNVTransactionEntity.StoreUnitID);

                using (IDataReader reader = Database.ExecuteReader(cmd))
                {
                    returnCode = GetReturnCodeFromParameter(cmd);

                    switch (returnCode)
                    {
                    case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST:
                    {
                        throw new ArgumentException("INVTransactionEntity already exists. Please specify another INVTransactionEntity.");
                    }

                    case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION:
                    {
                        throw new ArgumentException("INVTransactionEntity data already updated from different session.");
                    }

                    case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION:
                    {
                        throw new ArgumentException("INVTransactionEntity already exists. Please specify another INVTransactionEntity.");
                    }
                    }
                }
            }

            return(returnCode);
        }
Пример #4
0
        private Int64 DeleteTran(INVTransactionEntity iNVTransactionEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.INVTransaction_SET";

            Database db = DatabaseFactory.CreateDatabase();


            using (DbCommand cmd = db.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd, db);
                AddFilterExpressionParameter(cmd, filterExpression, db);


                DbConnection connection = db.CreateConnection();
                connection.Open();
                DbTransaction transaction = connection.BeginTransaction();

                try
                {
                    using (IDataReader reader = db.ExecuteReader(cmd, transaction))
                    {
                        returnCode = GetReturnCodeFromParameter(cmd);
                    }

                    if (returnCode >= 0)
                    {
                        transaction.Commit();
                    }
                    else
                    {
                        throw new ArgumentException("Error Code." + returnCode.ToString());
                    }
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw ex;
                }
                finally
                {
                    transaction.Dispose();
                    connection.Close();
                    connection = null;
                }
            }

            return(returnCode);
        }
Пример #5
0
        protected void lvINVTransaction_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            Int64 TransactionID;

            Int64.TryParse(e.CommandArgument.ToString(), out TransactionID);

            if (TransactionID > 0)
            {
                if (string.Equals(e.CommandName, "EditItem"))
                {
                    _TransactionID = TransactionID;

                    PrepareEditView();
                }
                else if (string.Equals(e.CommandName, "DeleteItem"))
                {
                    try
                    {
                        Int64 result = -1;

                        String fe = SqlExpressionBuilder.PrepareFilterExpression(INVTransactionEntity.FLD_NAME_TransactionID, TransactionID.ToString(), SQLMatchType.Equal);

                        INVTransactionEntity iNVTransactionEntity = new INVTransactionEntity();


                        result = FCCINVTransaction.GetFacadeCreate().Delete(iNVTransactionEntity, fe, DatabaseOperationType.Delete, TransactionRequired.No);

                        if (result == 0)
                        {
                            _TransactionID        = 0;
                            _INVTransactionEntity = new INVTransactionEntity();
                            PrepareInitialView();
                            BindINVTransactionList();

                            MiscUtil.ShowMessage(lblMessage, "I NVTransaction has been successfully deleted.", true);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to delete I NVTransaction.", true);
                        }
                    }
                    catch (Exception ex)
                    {
                        MiscUtil.ShowMessage(lblMessage, ex.Message, true);
                    }
                }
            }
        }
Пример #6
0
        private Int64 Delete(INVTransactionEntity iNVTransactionEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.INVTransaction_SET";

            using (DbCommand cmd = Database.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd);
                AddFilterExpressionParameter(cmd, filterExpression);


                using (IDataReader reader = Database.ExecuteReader(cmd))
                {
                    returnCode = GetReturnCodeFromParameter(cmd);

                    switch (returnCode)
                    {
                    case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST:
                    {
                        throw new ArgumentException("INVTransactionEntity already exists. Please specify another INVTransactionEntity.");
                    }

                    case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION:
                    {
                        throw new ArgumentException("INVTransactionEntity data already updated from different session.");
                    }

                    case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION:
                    {
                        throw new ArgumentException("INVTransactionEntity already exists. Please specify another INVTransactionEntity.");
                    }
                    }
                }
            }

            return(returnCode);
        }
Пример #7
0
        public static INVTransactionEntity GetTransactionsByID(Int64 transactionsID)
        {
            INVTransactionEntity ent = new INVTransactionEntity();

            return(ent);
        }
Пример #8
0
        public static Boolean DeleteTransaction(INVTransactionEntity ent)
        {
            Boolean result = false;

            return(result);
        }
Пример #9
0
        public static Boolean RemoveItemsFromStoreUnit(Int64 itemID, Int64 brandID, Int64 regionID, Int64 countryID, String batchNumber, Int64 transactionQty, String iPAddress, Int64 employeeID, Decimal unitPrice, String requisitionNumber, String wordOrderNumber, String mRRNumber, String billNumber, Int64?projectID, Int64 storeID, Int64 storeUnitID, Boolean isTransfer)
        {
            Boolean result = false;

            try
            {
                #region Tran

                INVTransactionEntity ent = new INVTransactionEntity();

                ent.ItemID               = itemID;
                ent.BrandID              = brandID;
                ent.RegionID             = regionID;
                ent.CountryID            = countryID;
                ent.BatchNumber          = batchNumber;
                ent.TransactionQty       = transactionQty;
                ent.TransactionDate      = DateTime.Now;
                ent.TransactionDirection = false;
                ent.IPAddress            = iPAddress;
                ent.EmployeeID           = employeeID;
                ent.UnitPrice            = unitPrice;
                ent.RequisitionNumber    = requisitionNumber;
                ent.WordOrderNumber      = wordOrderNumber;
                ent.MRRNumber            = mRRNumber;
                ent.BillNumber           = billNumber;
                ent.IsTransfer           = isTransfer;
                ent.ProjectID            = projectID;
                ent.StoreID              = storeID;
                ent.StoreUnitID          = storeUnitID;

                FCCINVTransaction.GetFacadeCreate().Add(ent, DatabaseOperationType.Add, TransactionRequired.No);

                #endregion


                #region Unit Item

                String fe11 = SqlExpressionBuilder.PrepareFilterExpression(INVStoreUnitItemEntity.FLD_NAME_ItemID, itemID.ToString(), SQLMatchType.Equal);
                String fe12 = SqlExpressionBuilder.PrepareFilterExpression(INVStoreUnitItemEntity.FLD_NAME_StoreUnitID, storeUnitID.ToString(), SQLMatchType.Equal);
                String fe1  = SqlExpressionBuilder.PrepareFilterExpression(fe11, SQLJoinType.AND, fe12);
                IList <INVStoreUnitItemEntity> lst1 = FCCINVStoreUnitItem.GetFacadeCreate().GetIL(null, null, String.Empty, fe1, DatabaseOperationType.LoadWithFilterExpression);

                if (lst1 != null && lst1.Count > 0)
                {
                    INVStoreUnitItemEntity ent1 = lst1[0];

                    //Rayan vaiya recommand to do this
                    //if (ent1.UnitCurrentStock - transactionQty > 0) ent1.UnitCurrentStock -= transactionQty;
                    //else
                    //{
                    //    return false;
                    //}
                    //This code skipped by rayan vaiya over phone - 22-Jul-13


                    ent1.UnitCurrentStock -= transactionQty;

                    String fe_up1 = SqlExpressionBuilder.PrepareFilterExpression(INVStoreUnitItemEntity.FLD_NAME_StoreUnitItemID, ent1.StoreUnitItemID.ToString(), SQLMatchType.Equal);

                    FCCINVStoreUnitItem.GetFacadeCreate().Update(ent1, fe_up1, DatabaseOperationType.Update, TransactionRequired.No);
                }
                else
                {
                    INVStoreUnitItemEntity ent1 = new INVStoreUnitItemEntity();

                    ent1.StoreUnitID       = storeUnitID;
                    ent1.ItemID            = itemID;
                    ent1.BrandID           = brandID;
                    ent1.RegionID          = regionID;
                    ent1.CountryID         = countryID;
                    ent1.UnitCurrentStock  = 0;
                    ent1.UnitCurrentStock -= transactionQty;

                    FCCINVStoreUnitItem.GetFacadeCreate().Add(ent1, DatabaseOperationType.Add, TransactionRequired.No);
                }

                #endregion


                #region Total Item

                String fe2 = SqlExpressionBuilder.PrepareFilterExpression(INVCurrentStockEntity.FLD_NAME_ItemID, itemID.ToString(), SQLMatchType.Equal);
                IList <INVCurrentStockEntity> lst2 = FCCINVCurrentStock.GetFacadeCreate().GetIL(null, null, String.Empty, fe2, DatabaseOperationType.LoadWithFilterExpression);

                if (lst2 != null && lst2.Count > 0)
                {
                    INVCurrentStockEntity ent2 = lst2[0];

                    ent2.UnitCurrentStock -= transactionQty;

                    String fe_up2 = SqlExpressionBuilder.PrepareFilterExpression(INVCurrentStockEntity.FLD_NAME_CurrentStockID, ent2.CurrentStockID.ToString(), SQLMatchType.Equal);

                    FCCINVCurrentStock.GetFacadeCreate().Update(ent2, fe_up2, DatabaseOperationType.Update, TransactionRequired.No);
                }
                else
                {
                    INVCurrentStockEntity ent2 = new INVCurrentStockEntity();

                    ent2.ItemID            = itemID;
                    ent2.BrandID           = brandID;
                    ent2.RegionID          = regionID;
                    ent2.CountryID         = countryID;
                    ent2.UnitCurrentStock  = 0;
                    ent2.UnitCurrentStock -= transactionQty;

                    FCCINVCurrentStock.GetFacadeCreate().Add(ent2, DatabaseOperationType.Add, TransactionRequired.No);
                }

                #endregion


                result = true;
            }
            catch (Exception ex)
            {
            }

            return(result);
        }
Пример #10
0
        private Int64 UpdateTran(INVTransactionEntity iNVTransactionEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.INVTransaction_SET";

            Database db = DatabaseFactory.CreateDatabase();

            using (DbCommand cmd = db.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option, db);
                AddOutputParameter(cmd, db);
                AddFilterExpressionParameter(cmd, filterExpression, db);

                db.AddInParameter(cmd, "@TransactionID", DbType.Int64, iNVTransactionEntity.TransactionID);
                db.AddInParameter(cmd, "@ItemID", DbType.Int64, iNVTransactionEntity.ItemID);
                db.AddInParameter(cmd, "@BrandID", DbType.Int64, iNVTransactionEntity.BrandID);
                db.AddInParameter(cmd, "@RegionID", DbType.Int64, iNVTransactionEntity.RegionID);
                db.AddInParameter(cmd, "@CountryID", DbType.Int64, iNVTransactionEntity.CountryID);
                db.AddInParameter(cmd, "@BatchNumber", DbType.String, iNVTransactionEntity.BatchNumber);
                db.AddInParameter(cmd, "@TransactionQty", DbType.Int64, iNVTransactionEntity.TransactionQty);
                db.AddInParameter(cmd, "@TransactionDate", DbType.DateTime, iNVTransactionEntity.TransactionDate);
                db.AddInParameter(cmd, "@TransactionDirection", DbType.Boolean, iNVTransactionEntity.TransactionDirection);
                db.AddInParameter(cmd, "@IPAddress", DbType.String, iNVTransactionEntity.IPAddress);
                db.AddInParameter(cmd, "@EmployeeID", DbType.Int64, iNVTransactionEntity.EmployeeID);
                db.AddInParameter(cmd, "@UnitPrice", DbType.Decimal, iNVTransactionEntity.UnitPrice);
                db.AddInParameter(cmd, "@RequisitionNumber", DbType.String, iNVTransactionEntity.RequisitionNumber);
                db.AddInParameter(cmd, "@WordOrderNumber", DbType.String, iNVTransactionEntity.WordOrderNumber);
                db.AddInParameter(cmd, "@MRRNumber", DbType.String, iNVTransactionEntity.MRRNumber);
                db.AddInParameter(cmd, "@BillNumber", DbType.String, iNVTransactionEntity.BillNumber);
                db.AddInParameter(cmd, "@IsTransfer", DbType.Boolean, iNVTransactionEntity.IsTransfer);
                db.AddInParameter(cmd, "@ProjectID", DbType.Int64, iNVTransactionEntity.ProjectID);
                db.AddInParameter(cmd, "@StoreID", DbType.Int64, iNVTransactionEntity.StoreID);
                db.AddInParameter(cmd, "@StoreUnitID", DbType.Int64, iNVTransactionEntity.StoreUnitID);

                DbConnection connection = db.CreateConnection();
                connection.Open();
                DbTransaction transaction = connection.BeginTransaction();

                try
                {
                    using (IDataReader reader = db.ExecuteReader(cmd, transaction))
                    {
                        returnCode = GetReturnCodeFromParameter(cmd);
                    }

                    if (returnCode > 0)
                    {
                        transaction.Commit();
                    }
                    else
                    {
                        throw new ArgumentException("Error Code." + returnCode.ToString());
                    }
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw ex;
                }
                finally
                {
                    transaction.Dispose();
                    connection.Close();
                    connection = null;
                }
            }

            return(returnCode);
        }
Пример #11
0
 Int64 IINVTransactionFacade.Delete(INVTransactionEntity iNVTransactionEntity, String filterExpression, DatabaseOperationType option, TransactionRequired reqTran)
 {
     return(DataAccessFactory.CreateINVTransactionDataAccess().Delete(iNVTransactionEntity, filterExpression, option, reqTran));
 }
Пример #12
0
 Int64 IINVTransactionFacade.Add(INVTransactionEntity iNVTransactionEntity, DatabaseOperationType option, TransactionRequired reqTran)
 {
     return(DataAccessFactory.CreateINVTransactionDataAccess().Add(iNVTransactionEntity, option, reqTran));
 }