Metodo verifica seleção não bloqueia cadastro no bd

1 resposta
Junior_Campanha

bom dia

desenvolvi uma aplicação que cadastra informações de um formulario em um banco de dados SQLite.

para que minha aplicação nao salva-se caso algum campo estivesse sem preenchimento fiz um metodo verificadados

if(!jFTdata.getText().equals("")&& !jTFProprietario.getText().equals("")&& !jTFCNPJ.getText().equals("")&& !jTFCONDUTOR.getText().equals("")&& !jTFCPF.getText().equals("")&& !jTFMARCA.getText().equals("")&& !jTFPLACA.getText().equals("")&& !jTFCHASSI.getText().equals("")&& !jTFEQUIPAMENTO.getText().equals("")&& !jTFN_INMETRO.getText().equals("")&& !jTFCAPACIDADE.getText().equals("")&& !jTFFABRICANTE.getText().equals("")&& !jTFVOLUME1.getText().equals("")&& !jTFULT_PROD_1.getText().equals("")&& !jTFN_ONU_1.getText().equals("")&& !jTFCLASSE_RISCO_1.getText().equals("")&& !jTFTEMP_APLIC_1.getText().equals("")&& !jTFVOLUME2.getText().equals("")&& !jTFULT_PROD_2.getText().equals("")&& !jTFN_ONU_2.getText().equals("")&& !jTFCLASSE_RISCO_2.getText().equals("")&& !jTFTEMP_APLIC_2.getText().equals("")&& !jTFVOLUME3.getText().equals("")&& !jTFULT_PROD_3.getText().equals("")&& !jTFN_ONU_3.getText().equals("")&& !jTFCLASSE_RISCO_3.getText().equals("")&& !jTFTEMP_APLIC_3.getText().equals("")&& !jTFVOLUME4.getText().equals("")&& !jTFULT_PROD_4.getText().equals("")&& !jTFN_ONU_4.getText().equals("")&& !jTFCLASSE_RISCO_4.getText().equals("")&& !jTFTEMP_APLIc_4.getText().equals("")&& !jTFVOLUME5.getText().equals("")&& !jTFULT_PROD_5.getText().equals("")&& !jTFN_ONU_5.getText().equals("")&& !jTFCLASSE_RISCO_5.getText().equals("")&& !jTFTEMP_APLIC_5.getText().equals("")&& !jTFVOLUME6.getText().equals("")&& !jTFULT_PROD_6.getText().equals("")&& !jTFN_ONU_6.getText().equals("")&& !jTFCLASSE_RISCO_6.getText().equals("")&& !jTFTEMP_APLIC_6.getText().equals("")&& !jTFVOLUME7.getText().equals("")&& !jTFULT_PROD_7.getText().equals("")&& !jTFN_ONU_7.getText().equals("")&& !jTFCLASSE_RISCO_7.getText().equals("")&& !jTFTEMP_APLIC_7.getText().equals("")&& !jTFVOLUME8.getText().equals("")&& !jTFULT_PROD_8.getText().equals("")&& !jTFN_ONU_8.getText().equals("")&& !jTFCLASSE_RISCO_8.getText().equals("")&& !jTFTEMP_APLIC_8.getText().equals("")&& !jTFN_SERIE_INST_1.getText().equals("")&& !jTFN_SERIE_INST_2.getText().equals("")&& !jFTULT_CALIB_INST_1.getText().equals("")&& !jFTULT_CALIB_INST_2.getText().equals("")&& !jTFREG_TEC_APLIC1.getText().equals("")&& !jTFPROC_APLIC.getText().equals("")&& !jTFNOME_COL.getText().equals("")&& !jTFFUNCAO.getText().equals("")&& !jTFCPF_COL.getText().equals("")&& !jFTano.getText().equals("") ){
        return true;
        }else{
        JOptionPane.showMessageDialog(null, "Existem campos não preenchidos!!!");
        return false;
         
    }

até aqui funciona certinho, caso algum campo nao esteja preenchido a aplicação nao salva no bd

porem tenho tambem radiobuttons que salvam uma informação no BD

tambem fiz um metodo verificaseleção

if(!jRBCAPACITACAO.isSelected() &&! jRBMANUTENCAO.isSelected() &&! jRBREFORMA.isSelected() &&! jRBVERIFC_METROL.isSelected() &&!jRBOUTROS_FIN.isSelected()){
           JOptionPane.showMessageDialog(null, "Deve ser escolhido uma finalidade da descontaminação!!!");
           return true;
        }else {
           return false;  
       }
    }

adicionei no evendo do botao salvar a comparação

if(verificardados()){
                 if(verificaseleção_fin()){
                     if (verificaseleção_proc()) {
                        cadastro();
                        jBSALVAR.setEnabled(false);
                        JOptionPane.showMessageDialog(null, "Dados salvos com Sucesso!");  
                     }
                 }
               
             }

quando clico no botao salvar sem digitar nada ele funciona e nao salva porem se eu digitar todos os campos e nao selecionar nenhum radiobutton ele aparace a mensagem que coloquei dizendo que precisa selecionar uma opção mas mesmo assim ele salva no banco de dados as informções sem o botao selecionado

alguem sabe resolver isso?

1 Resposta

Junior_Campanha

cosegui corrigir mas nao entendi muito bem oque aconteceu com a logica

se alguem puder me explicar agradeço

a correção foi apenas colocar o sinal de negação antes dos verifica seleção assim

if (verificardados()) {
                if (!verificaseleção_fin()) {
                    if (!verificaseleção_proc()) {
                        cadastro();
                                jBSALVAR.setEnabled(false);
                                JOptionPane.showMessageDialog(null, "Dados salvos com Sucesso!");
                    }
                }
        }

flw

Criado 10 de novembro de 2016
Ultima resposta 10 de nov. de 2016
Respostas 1
Participantes 1