예제 #1
0
        public void Delete()
        {
            bool             result          = false;
            string           codeSequence    = Aleatory.GetString(8);
            int              correlativo     = Aleatory.GetShort();
            BSequence        bSequence       = new BSequence();
            ESequence        eSequence       = new ESequence(codeSequence, correlativo);
            ESequence        deletedSequence = null;
            ESequence        seletedSequence = null;
            TransactionScope ts = new TransactionScope(TransactionScopeOption.RequiresNew);

            bSequence.Insert(eSequence);
            seletedSequence = bSequence.Select(eSequence);
            if (seletedSequence != null)
            {
                bSequence.Delete(eSequence);
                deletedSequence = bSequence.Select(eSequence);
                if (deletedSequence == null)
                {
                    result = true;
                }
            }

            Assert.AreEqual(result, true);
        }
예제 #2
0
        public EProduct Insert(EProduct eProduct)
        {
            EProduct  eResult     = null;
            BSequence bSequence   = new BSequence();
            ESequence eSequence   = new ESequence(eProduct);
            int       correlative = 0;

            correlative          = bSequence.GetCorrelative(eSequence);
            eProduct.CodeProduct = correlative.ToString("0000000000");
            eProduct.Validar();
            dProduct.Insert(eProduct);

            if (dProduct.ExistsPrimaryKey())
            {
                Message = string.Format("El código de Producto '{0}' ya existe en el Sistema, no se puede crear el registro.", eProduct.CodeProduct);
                throw new Exception(Message);
            }
            if (dProduct.ExistsReference())
            {
                Message = string.Format("Se intento grabar una llave foranea incorrecta '{0}', no se puede crear el registro.", eProduct.CodeProduct);
                throw new Exception(Message);
            }
            correlative++;
            eSequence.Correlative = correlative;
            bSequence.SetCorrelativo(eSequence);

            eResult = Select(eProduct);

            eProduct.Audit.Code      = eResult.CodeProduct.ToString();
            eProduct.Audit.TypeEvent = "Insert";
            bAudit.Insert(eProduct.Audit);

            return(eResult);
        }
예제 #3
0
        public EClient Insert(EClient eClient)
        {
            EClient   eResult     = null;
            BSequence bSequence   = new BSequence();
            ESequence eSequence   = new ESequence(eClient);
            int       correlative = 0;

            eClient.SearchName = ProcessSearchName(eClient);
            correlative        = bSequence.GetCorrelative(eSequence);
            eClient.CodeClient = correlative;
            eClient.Validar();
            dClient.Insert(eClient);

            if (dClient.ExistsPrimaryKey())
            {
                Message = string.Format("El código de Cliente '{0}' ya existe en el Sistema, no se puede crear el registro.", eClient.CodeClient);
                throw new Exception(Message);
            }
            if (dClient.ExistsReference())
            {
                Message = string.Format("El código de Empresa '{0}' no existe en el Sistema, no se puede crear el registro.", eClient.CodeClient);
                throw new Exception(Message);
            }
            correlative++;
            eSequence.Correlative = correlative;
            bSequence.SetCorrelativo(eSequence);

            eResult = Select(eClient);

            eClient.Audit.Code      = eResult.CodeClient.ToString();
            eClient.Audit.TypeEvent = "Insert";
            bAudit.Insert(eClient.Audit);

            return(eResult);
        }
예제 #4
0
        public void Select()
        {
            short            routes           = 0;
            string           codeSequence     = Aleatory.GetString(8);
            int              correlativo      = Aleatory.GetShort();
            BSequence        bSequence        = new BSequence();
            ESequence        eSequence        = new ESequence(codeSequence, correlativo);
            ESequence        selectedSequence = null;
            TransactionScope ts = new TransactionScope(TransactionScopeOption.RequiresNew);

            selectedSequence = bSequence.Select(eSequence);

            if (selectedSequence == null)
            {
                routes++;
            }

            bSequence.Insert(eSequence);
            selectedSequence = bSequence.Select(eSequence);

            if (selectedSequence != null &&
                selectedSequence.CodeSequence == eSequence.CodeSequence &&
                selectedSequence.Correlative == eSequence.Correlative)
            {
                routes++;
            }

            ts.Dispose();

            Assert.AreEqual(routes, 2);
        }
예제 #5
0
        public DataRow Select(ESequence sequence)
        {
            DaCommand command = new DaCommand("SequenceSelect");

            command.AddInParameter("@CodeSequence", DbType.String, sequence.CodeSequence);
            return(ExecuteDataRow(command));
        }
예제 #6
0
        public void Delete(ESequence sequence)
        {
            DaCommand command = new DaCommand("SequenceDelete");

            command.AddInParameter("@CodeSequence", DbType.String, sequence.CodeSequence);
            ExecuteNonQuery(command);
        }
예제 #7
0
        public void Update(ESequence sequence)
        {
            DaCommand command = new DaCommand("SequenceUpdate");

            command.AddInParameter("@CodeSequence", DbType.String, sequence.CodeSequence);
            command.AddInParameter("@Correlative", DbType.Int32, sequence.Correlative);
            ExecuteNonQuery(command);
        }
예제 #8
0
        public int GetCorrelative(ESequence sequence)
        {
            ESequence eSequence = Select(sequence);

            if (eSequence == null)
            {
                sequence.Correlative = 1;
                Insert(sequence);

                eSequence = Select(sequence);
            }
            return(eSequence.Correlative);
        }
예제 #9
0
        public ESequence Select(ESequence sequence)
        {
            DataRow rowSequence = dSequence.Select(sequence);

            if (rowSequence != null)
            {
                ESequence eSequence = new ESequence(rowSequence, rowSequence.GetColumns());
                return(eSequence);
            }
            else
            {
                return(null);
            }
        }
예제 #10
0
        public void SetCorrelativo(ESequence sequence)
        {
            ESequence eSequence = Select(sequence);

            if (eSequence == null)
            {
                eSequence = new ESequence(
                    CodeSequence: sequence.CodeSequence,
                    Correlative: sequence.Correlative);
                eSequence.Correlative = 1;
                Insert(eSequence);
            }
            else
            {
                eSequence.Correlative++;
                Update(eSequence);
            }
        }
예제 #11
0
        public void Insert()
        {
            bool             result    = false;
            BAudit           bAudit    = new BAudit();
            List <EAudit>    listAudit = new List <EAudit>();
            BClient          bClient   = new BClient();
            EClient          eClient   = new EClient();
            BSequence        bSequence = new BSequence();
            ESequence        eSequence = null;
            TransactionScope ts        = new TransactionScope(TransactionScopeOption.RequiresNew);

            eClient.CodeTypeDocumentIdentity = "0";
            eClient.NumberIdentity           = Aleatory.GetString(11);
            eClient.FirstName          = Aleatory.GetString(8);
            eClient.SecondName         = Aleatory.GetString(8);
            eClient.FatherLastName     = Aleatory.GetString(8);
            eClient.MotherLastName     = Aleatory.GetString(8);
            eClient.Audit.UserRegister = Aleatory.GetString(8);
            EClient insertedEClient = bClient.Insert(eClient);

            eSequence = new ESequence(eClient);
            eSequence = bSequence.Select(eSequence);

            listAudit = bAudit.Select(eClient.Audit);

            if (insertedEClient != null &&
                listAudit.Exists(x => x.UserRegister == eClient.Audit.UserRegister &&
                                 x.TypeEvent == "Insert" &&
                                 x.Code == insertedEClient.CodeClient.ToString()) &&
                eSequence.Correlative == insertedEClient.CodeClient + 1)
            {
                result = true;
            }

            ts.Dispose();

            Assert.IsTrue(result);
        }
예제 #12
0
        public void Insert()
        {
            bool             result           = false;
            string           codeSequence     = Aleatory.GetString(8);
            int              correlativo      = Aleatory.GetShort();
            BSequence        bSequence        = new BSequence();
            ESequence        eSequence        = new ESequence(codeSequence, correlativo);
            ESequence        insertedSequence = null;
            TransactionScope ts = new TransactionScope(TransactionScopeOption.RequiresNew);

            bSequence.Insert(eSequence);
            insertedSequence = bSequence.Select(eSequence);

            if (insertedSequence != null &&
                insertedSequence.CodeSequence == eSequence.CodeSequence &&
                insertedSequence.Correlative == eSequence.Correlative)
            {
                result = true;
            }

            ts.Dispose();

            Assert.AreEqual(result, true);
        }
예제 #13
0
 public void Delete(ESequence sequence)
 {
     dSequence.Delete(sequence);
 }
예제 #14
0
 public void Update(ESequence eSequence)
 {
     eSequence.Validar();
     dSequence.Update(eSequence);
 }
예제 #15
0
 public void Insert(ESequence eSequence)
 {
     eSequence.Validar();
     dSequence.Insert(eSequence);
 }