Série da semana: Buscas semânticas com Elasticsearch

Veja mais

Resultado inner join no Jtablet

19/10/2018

Olá sou novo aqui e na linguagem java e estou com um probleminha se poderem me ajudar.
Estou desenvolvendo um sistema e precisei fazer uma pesquisa em três tabelas usando inner join estou usando o netbeans.
O problema é que quando eu faço a pesquisa pelo aba serviços funciona perfeitamente, mas quando vou para o código fonte aparece um problema na hora de preencher a tabela com os dados.
1º- os dados só ficam visíveis quando eu dou dois clicks na linha.
2º - não importa a quantidade de dados do resultado da pesquisa, é preenchido apenas uma linha e o restante não são adicionado na tabela.
abaixo o Código que eu estou utilizando.

String sql = "SELECT R.`ID_recebimento`, R.`Ordem_transferencia`, R.`Data_recebimento`, R.`Origem`, M.`Num_ident`,  M.`ID_repetido`, S.`ID_servico`, S.tipo_servico "
                    + "FROM sistemalab.tb_recebimento As R "
                    + "inner join sistemalab.tb_medidores_recebido AS M "
                    + "ON M.`ID_receb` = R.`ID_recebimento` "
                    + "inner join sistemalab.tb_servico S "
                    + "ON R.`Motivo` =  S.`ID_servico` "
                    + "WHERE R.`Ordem_transferencia`= ?";
            try {
                pst = conexao.prepareStatement(sql);
                pst.setString(1, txtpesquiordemtransf.getText());
                rs = pst.executeQuery();   
                if (rs.next()) {
                    do {
                        int ordem = addnatabela.getRowCount() + 1;
                        String motivo = rs.getString("ID_servico") + " - " + rs.getString("tipo_servico");
                        String med = rs.getString("Num_ident");
                        String repetido = null;
                        Boolean rep = rs.getBoolean("ID_repetido");
                        if (rep == true) {
                            repetido = "Boolean.TRUE";
                        } else {
                            repetido = "Boolean.FALSE";
                        }
                        txtidrecebimento.setText(rs.getString("ID_recebimento"));
                        txtordemtransf.setText(rs.getString("Ordem_transferencia"));
                        dtcdatarecebido.setDate(rs.getDate("Data_recebimento"));
                        txtorigem.setText(rs.getString("Origem"));
                        preenchertabela();
                        combomotivo.setSelectedItem(motivo);
                        tblmedrecbido.setEnabled(true);
                        Object[] dadosparatabela = {false, ordem, repetido, med, motivo};
                        addnatabela.addRow(dadosparatabela);
                        //  tblmedrecbido.setEnabled(false);
                        txtqtd.setText(Integer.toString(ordem));
                    } while (rs.next());


Espero que me ajudem por favor.

Posts

20/10/2018

Rogério

ninguém pode me ajudar?
Responder Citar

22/10/2018

Root

Nope está errado
Responder Citar

22/10/2018

Root

Alguém está com dúvidas @Devmedia.
Responder Citar

25/10/2018

Rogério Silva

Mas como nada errado?
os resultado não aparecem na tabela, apenas a primeira linha é preenchida e os outros dados não vem para a tabele.
será que meu netbeans está com problemas?
Responder Citar

25/10/2018

Alex Lekao

Oi Rogerio, boa tarde!!!

Minha praia não é desenvolvimento, mas vamos ver se conseguimos alguma coisa pensando juntos.

Você tentou ir isolando os códigos?

Sei la, ir montando parcialmente para ver se vai aparecendo, talvez assim vc consiga identificar o ponto em que faça aparecer apenas um único registro.

Lembrando que não sou desenvolvedor, então os código da parte de desenvolvimento não tenho como ajudar.

Atenciosamente,
Responder Citar