Bom dia a todos,
Estou com um problema no meu DAO quando tento fazer uma associação e uma desassociação.
Quando vou fazer a associação ele esta me dando o seguinte erro quando vou fazer o insert:
Exception: java.lang.NumberFormatException: For input string: “”, na tabela os meus campos são inteiros, no método pego esses valores como String e transformo para “int” para gravar na tabela.
Agradeço desde já a ajuda dos senhores(as).
Vitor
public boolean associar(CadPDVFusaoForm pdvFusaoForm) throws IOException{
try{
System.out.println("CadPDVFusaoDAO: Entrou CadPDVFusaoDAO Associar.");
System.out.println(Utilitario.USUARIO);
System.out.println(getUtilitarioDAO().getdataHora());
System.out.println("CadPDVFusaoDAO: Antes da conexao.");
Connection con = getConnection();
int linhas = 0;
//pstm = con.prepareStatement("UPDATE tblcanalvenda SET sNomeCanalVenda = ?, naoUsarNoRAA = ? where nIdCanalVenda = ?");
//Exclui os PDV´s da Tabela tblDEALER_FUSAO
/*pstm = con.prepareStatement(" DELETE FROM tblDEALER_FUSAO " +
" WHERE nidaregiao = '" + pdvFusaoForm.getRegiao() + "'" +
" AND pdv_filho = '" + pdvFusaoForm.getCodPDVFilho() + "'" +
" AND sidagentevenda = '" + pdvFusaoForm.getCodPDVPai() + "'");*/
String sql = " DELETE FROM tblDEALER_FUSAO " +
" WHERE nidregiao = '" + pdvFusaoForm.getRegiao() + "'" +
" AND pdv_filho = '" + pdvFusaoForm.getCodPDVFilho() + "'" +
" AND sidagentevenda = '" + pdvFusaoForm.getCodPDVPai() + "'";
System.out.println("CadPDVFusaoDAO: Antes da query de Exclusão");
pstm = con.prepareStatement(sql);
System.out.println("SQL: " + sql);
System.out.println("Regiao: " + pdvFusaoForm.getRegiao());
System.out.println("Filho: " + pdvFusaoForm.getCodPDVFilho());
System.out.println("Pai: " + pdvFusaoForm.getCodPDVPai());
linhas = pstm.executeUpdate();
System.out.println("CadPDVFusaoDAO: Excluiu " + linhas + " linha.");
//Insere os PDV´s na tabela tblDEALER_FUSAO
String squery = " INSERT INTO tblDEALER_FUSAO" +
" (nidregiao,sidagentevenda,pdv_filho) " +
" VALUES (?,?,?)";
pstm = con.prepareStatement(squery);
pstm.setInt(1, Integer.parseInt(pdvFusaoForm.getRegiao()));
pstm.setInt(2, Integer.parseInt(pdvFusaoForm.getCodPDVFilho()));
pstm.setInt(3, Integer.parseInt(pdvFusaoForm.getCodPDVPai()));
System.out.println("squery: " + squery);
System.out.println("Regiao: " + pdvFusaoForm.getRegiao());
System.out.println("Filho: " + pdvFusaoForm.getCodPDVFilho());
System.out.println("Pai: " + pdvFusaoForm.getCodPDVPai());
linhas = pstm.executeUpdate();
System.out.println("Inseriu " + linhas + " linha.");
//Atualiza o Código do Pai na Tabela tblAGENTECANALVENDA
pstm = con.prepareStatement(" UPDATE tblAGENTECANALVENDA " +
" SET CODIGO_UNIFICADO = ? " +
" WHERE NIDREGIAO = ? " +
" AND sidagentevenda = ? ");
pstm.setInt(1, Integer.parseInt(pdvFusaoForm.getCodRedePai()));
pstm.setInt(2, Integer.parseInt(pdvFusaoForm.getRegiao()));
pstm.setInt(3, Integer.parseInt(pdvFusaoForm.getCodPDVPai()));
linhas = pstm.executeUpdate();
System.out.println("Atualizou codigo unificado" + linhas + " linha.");
//Atualiza o Código do Filho na Tabela tblAGENTECANALVENDA
pstm = con.prepareStatement(" UPDATE tblAGENTECANALVENDA " +
" SET pdv_filho = ? " +
" WHERE NIDREGIAO = ? " +
" AND sidagentevenda = ? ");
pstm.setInt(1, Integer.parseInt(pdvFusaoForm.getCodPDVFilho()));
pstm.setInt(2, Integer.parseInt(pdvFusaoForm.getRegiao()));
pstm.setInt(3, Integer.parseInt(pdvFusaoForm.getCodPDVPai()));
linhas = pstm.executeUpdate();
System.out.println("Atualizou pdv_filho " + linhas + " linha.");
}catch(SQLException sqlException){
System.out.println("sqlException: "+ sqlException);
}catch(Exception e){
System.out.println("Exception: "+ e);
}finally{
System.out.println("CadPDVFusaoDAO: Fechando conexão.");
rsClose();
pstmClose();
close(con);
}
return true;
}
public boolean desassociar(CadPDVFusaoForm pdvFusaoForm) throws IOException{
try{
System.out.println("CadPDVFusaoDAO: Entrou CadPDVFusaoDAO Desassociar.");
System.out.println(Utilitario.USUARIO);
System.out.println(getUtilitarioDAO().getdataHora());
System.out.println("CadPDVFusaoDAO: Antes da conexao.");
Connection con = getConnection();
int linhas = 0;
//int descPDVPai = 0;
//for(int i = 0;i < descPDVPai; i++){
//Exclui os PDV´s da Tabela tblDEALER_FUSAO
/*pstm = con.prepareStatement(" DELETE FROM tblDEALER_FUSAO " +
" WHERE nidregiao = ? " +
" AND pdv_filho = ? " +
" AND sidagentevenda = ? ");*/
String sql = " DELETE FROM tblDEALER_FUSAO " +
" WHERE nidregiao = '" + pdvFusaoForm.getRegiao() + "'";
if(!pdvFusaoForm.getCodPDVFilho().equals("") || pdvFusaoForm.getCodPDVFilho() != null){
sql = sql + " AND pdv_filho = '" + pdvFusaoForm.getCodPDVFilho() + "'";
}
if(!pdvFusaoForm.getCodPDVPai().equals("") || pdvFusaoForm.getCodPDVPai() != null){
sql = sql + " AND sidagentevenda = '" + pdvFusaoForm.getCodPDVPai() + "'";
}
pstm = con.prepareStatement(sql);
//pstm.setString(1, pdvFusaoForm.getRegiao());
//pstm.setString(2, pdvFusaoForm.getCodPDVFilho());
//pstm.setString(3, pdvFusaoForm.getCodPDVPai());
System.out.println("Regiao: " + pdvFusaoForm.getRegiao());
System.out.println("Filho: " + pdvFusaoForm.getCodPDVFilho());
System.out.println("Pai: " + pdvFusaoForm.getCodPDVPai());
System.out.println("CadPDVFusaoDAO: Antes da query de Exclusão");
System.out.println("SQL: " + sql);
linhas = pstm.executeUpdate();
System.out.println("CadPDVFusaoDAO: Excluiu " + linhas + " linha.");
//Atualiza o Código do Pai como Vazio na Tabela tblAGENTECANALVENDA
pstm = con.prepareStatement(" UPDATE tblAGENTECANALVENDA " +
" SET CODIGO_UNIFICADO = '' " +
" WHERE NIDREGIAO = ? " +
" AND sidagentevenda = ? ");
//pstm.setInt(1, Integer.parseInt(pdvFusaoForm.getCodRedePai()));
pstm.setInt(1, Integer.parseInt(pdvFusaoForm.getRegiao()));
pstm.setInt(2, Integer.parseInt(pdvFusaoForm.getCodPDVPai()));
System.out.println("CadPDVFusaoDAO: Antes da query de Alterar codPai");
linhas = pstm.executeUpdate();
System.out.println("Atualiza codigo unificado como vazio " + linhas + " linha.");
//Atualiza o Código do Filho na Tabela tblAGENTECANALVENDA
pstm = con.prepareStatement(" UPDATE tblAGENTECANALVENDA " +
" SET pdv_filho = '' " +
" WHERE NIDREGIAO = ? " +
" AND sidagentevenda = ? ");
//pstm.setInt(1, Integer.parseInt(pdvFusaoForm.getCodPDVFilho()));
pstm.setInt(1, Integer.parseInt(pdvFusaoForm.getRegiao()));
pstm.setInt(2, Integer.parseInt(pdvFusaoForm.getCodPDVPai()));
System.out.println("CadPDVFusaoDAO: Antes da query de Alterar pdvFilho");
linhas = pstm.executeUpdate();
System.out.println("Atualiza pdv_filho como vazio " + linhas + " linha.");
//} //Final do For
}catch(SQLException sqlException){
System.out.println("sqlException: "+ sqlException);
}catch(Exception e){
System.out.println("Exception: "+ e);
}finally{
System.out.println("CadPDVFusaoDAO: Fechando conexão.");
rsClose();
pstmClose();
close(con);
}
return true;
}
}