Row back

0 respostas
R

Estou realizando manutenção em um sistema onde utilizo um metodos para persistir dados em sequencia para diferentes tabela :
Pessoa PessoaFisica Empresa Endereco

Minha duvida é o que fazer quando ocorrer um erro no momento do registro da tabela de enderco por exemplo, os dados que foram persistido nas tabelas de Empresa,PessoaFisica e Pessoa sejam excluidos, evitando assim que a Empresa seja cadastrada apenas com os dados da referente a ela sem o relacionament de endereço.

public void exemplo(){
        
        Service servico = new Service(); // Cria objeto  servicoDAO
        String recebeCnpj = servico.buscarRazao(razaoSocial());//
        
         PessoaJuridica pj = new PessoaJuridica();
         pj.setRazaoSocial(recebeCnpj);
         
        long recebeJuricaID = servico.buscaPessoaJuridica(pj);
        
        Date recebeData = servico.buscaDataAtual();
         
           Pessoa p = new Pessoa();
           p.setId(recebeJuricaID);
           p.setDataUltimaAtualizacao(recebeData);
           
           PessoaDAO pd = new PessoaDAO();
           boolean confirmaAtualizacao =  pd.atualizaPessoa(p);
           if(confirmaAtualizacao == false){
               JOptionPane.showMessageDialog(null,"Não foi realizado o cadastro de Pessoa!","Erro",JOptionPane.ERROR_MESSAGE);
           }
           else{
            long recebePessoa = servico.buscaPessoa();
            
            String converteMunicipio = Converte.intToString(municipio());
            String auxMunicipio = null;
            if(converteMunicipio.length() == 5){
                auxMunicipio = converteMunicipio.substring(0,4);
            }else{
                 auxMunicipio = converteMunicipio.substring(0,3);
            }
            
            
            int auxIdMunicipio = Integer.parseInt(auxMunicipio);
            
            Empresa empresa = new Empresa();
            empresa.setCodigo(codFilial);
            empresa.setPortaria(inicio);
            empresa.setMunicipioID(servico.buscaMunicipio(auxIdMunicipio));
            empresa.setNomeFantasia(fantasiaFilial);
            empresa.setCnpj(cnpjFilial);
            empresa.setPessoaJuridicaID(recebeJuricaID);
            empresa.setStatus(auxStatus);
            
             
            EmpresaDAO cDao = new  EmpresaDAO();
            boolean confirmaEmpresa = cDao.adicionaEmpresa(empresa);
            long recebeEmpresaID =servico.buscarEmpresaID(empresa); 
            
            if(confirmaEmpresa == false){
            JOptionPane.showMessageDialog(null,"Não foi realizado o cadastro de Empresa!","Erro",JOptionPane.ERROR_MESSAGE); 
            }else{
                
            EnderecoEmpresa end = new EnderecoEmpresa();
            end.setBairro(bairroFilial);
            end.setCep(cepFilial);
            end.setComplemento(complementoFilial);
            end.setLogradouro(logradouroFilial);
            end.setNumero(Integer.parseInt(numeroFilial));
            end.setEmpresaID(recebeEmpresaID);
            end.setMunicipioPiID(servico.buscaMunicipio(auxIdMunicipio));
            
            EnderecoEmpresaDAO endEmpresa = new EnderecoEmpresaDAO();
            endEmpresa.adicionaEnderecoEmpresa(end);
            }
            
            
           }
       
     }

Falowss…

EDIT - Por favor, use os tags [ code ] ao postar código.

Criado 12 de junho de 2008
Respostas 0
Participantes 1