Exemple #1
0
    //INSERE UM NOVO REGISTRO
    public void Insert(PCMSO ObjPCMSO)
    {
        Database db = DatabaseFactory.CreateDatabase();

        using (DbConnection connection = db.CreateConnection())
        {
            connection.Open();
            DbTransaction transaction = connection.BeginTransaction();
            try
            {
                int idPCMSO = 0;
                if (ObjPCMSO.id == 0)
                {
                    DbCommand command = db.GetStoredProcCommand("PCMSOInsert");
                    db.AddInParameter(command, "@idCliente", DbType.String, ObjPCMSO.idCliente);
                    if (ObjPCMSO.id == 0)
                    {
                        //Parametros de OutPut
                        db.AddOutParameter(command, "@id", DbType.Int32, 8);
                    }
                    //Executa a procedure
                    db.ExecuteNonQuery(command, transaction);
                    idPCMSO = Convert.ToInt32(db.GetParameterValue(command, "@id"));
                }
                else
                {
                    idPCMSO = ObjPCMSO.id;
                }
                //Delete os registros para que sejam cadastrados novamente
                DeleteSetor(idPCMSO, ObjPCMSO.RefObjPCMSOXSetor.idSetor, ObjPCMSO.RefObjPCMSOXSetor.idCargo);
                DeleteRiscos(idPCMSO, ObjPCMSO.RefObjPCMSOXSetor.idCargo);
                DeleteExames(idPCMSO, ObjPCMSO.RefObjPCMSOXSetor.idCargo);

                //Inserts
                //Chama o DAL que vai fazer insert da tabela PCMSOXSetor
                PCMSOXSetorDAL ObjPCMSOXSetorDAL = new PCMSOXSetorDAL();
                ObjPCMSOXSetorDAL.Insert(transaction, ObjPCMSO.RefObjPCMSOXSetor, idPCMSO);
                //Chama o DAL que vai fazer insert da tabela PCMSOXRiscosOcupacionais
                PCMSOXRiscosOcupacionaisDAL ObjPCMSOXRiscosOcupacionaisDAL = new PCMSOXRiscosOcupacionaisDAL();
                ObjPCMSOXRiscosOcupacionaisDAL.Insert(transaction, ObjPCMSO.RefPCMSOXRiscosOcupacionais, idPCMSO);
                //Chama o DAL que vai fazer insert da tabela PCMSOXExamesComplementares
                PCMSOXExamesComplementaresDAL ObjPCMSOXExamesComplementaresDAL = new PCMSOXExamesComplementaresDAL();
                ObjPCMSOXExamesComplementaresDAL.Insert(transaction, ObjPCMSO.RefPCMSOXExamesComplementares, idPCMSO);

                //Commit na transação
                transaction.Commit();
            }
            catch (Exception ex)
            {
                // Roll back na transação
                transaction.Rollback();
                throw ex;
            }
            connection.Close();
        }
    }
Exemple #2
0
    //INSERE UM NOVO REGISTRO
    public void Insert(PCMSO ObjPCMSO)
    {
        Database db = DatabaseFactory.CreateDatabase();
        using (DbConnection connection = db.CreateConnection())
        {
            connection.Open();
            DbTransaction transaction = connection.BeginTransaction();
            try
            {
                int idPCMSO = 0;
                if (ObjPCMSO.id == 0)
                {
                    DbCommand command = db.GetStoredProcCommand("PCMSOInsert");
                    db.AddInParameter(command, "@idCliente", DbType.String, ObjPCMSO.idCliente);
                    if (ObjPCMSO.id == 0)
                    {
                        //Parametros de OutPut
                        db.AddOutParameter(command, "@id", DbType.Int32, 8);
                    }
                    //Executa a procedure
                    db.ExecuteNonQuery(command, transaction);
                    idPCMSO = Convert.ToInt32(db.GetParameterValue(command, "@id"));
                }
                else
                {
                    idPCMSO = ObjPCMSO.id;
                }
                //Delete os registros para que sejam cadastrados novamente
                DeleteSetor(idPCMSO, ObjPCMSO.RefObjPCMSOXSetor.idSetor, ObjPCMSO.RefObjPCMSOXSetor.idCargo);
                DeleteRiscos(idPCMSO, ObjPCMSO.RefObjPCMSOXSetor.idCargo);
                DeleteExames(idPCMSO, ObjPCMSO.RefObjPCMSOXSetor.idCargo);

                //Inserts
                //Chama o DAL que vai fazer insert da tabela PCMSOXSetor
                PCMSOXSetorDAL ObjPCMSOXSetorDAL = new PCMSOXSetorDAL();
                ObjPCMSOXSetorDAL.Insert(transaction, ObjPCMSO.RefObjPCMSOXSetor, idPCMSO);
                //Chama o DAL que vai fazer insert da tabela PCMSOXRiscosOcupacionais
                PCMSOXRiscosOcupacionaisDAL ObjPCMSOXRiscosOcupacionaisDAL = new PCMSOXRiscosOcupacionaisDAL();
                ObjPCMSOXRiscosOcupacionaisDAL.Insert(transaction, ObjPCMSO.RefPCMSOXRiscosOcupacionais, idPCMSO);
                //Chama o DAL que vai fazer insert da tabela PCMSOXExamesComplementares
                PCMSOXExamesComplementaresDAL ObjPCMSOXExamesComplementaresDAL = new PCMSOXExamesComplementaresDAL();
                ObjPCMSOXExamesComplementaresDAL.Insert(transaction, ObjPCMSO.RefPCMSOXExamesComplementares, idPCMSO);

                //Commit na transação
                transaction.Commit();
            }
            catch (Exception ex)
            {
                // Roll back na transação
                transaction.Rollback();
                throw ex;
            }
            connection.Close();
        }
    }