public void imprimir(TYPE_PRINT bVisualizar) { if (temAcessoConta()) { String sCodConta = txtCodConta.getVlrString(); ResultSet rs = null; if (txtDatafim.getVlrDate().before(txtDataini.getVlrDate())) { Funcoes.mensagemInforma(this, "Data final maior que a data inicial!"); return; } else if (txtCodConta.getVlrString().equals("")) { Funcoes.mensagemInforma(this, "Número da conta é requerido!"); return; } StringBuilder sSQL = new StringBuilder(); sSQL.append( "SELECT S.DATASL,L.HISTBLANCA,L.DOCLANCA,SL.VLRSUBLANCA,S.SALDOSL FROM FNSALDOLANCA S,"); sSQL.append("FNLANCA L,FNCONTA C, FNSUBLANCA SL WHERE L.FLAG IN "); sSQL.append( AplicativoPD.carregaFiltro(con, org.freedom.library.swing.frame.Aplicativo.iCodEmp)); sSQL.append(" AND C.CODEMP=? AND C.CODFILIAL=? AND C.NUMCONTA=? "); sSQL.append("AND L.CODEMP=? AND L.CODFILIAL=? AND L.CODLANCA=SL.CODLANCA "); sSQL.append( "AND S.CODPLAN=SL.CODPLAN AND S.CODEMP=SL.CODEMPPN AND S.CODFILIAL=SL.CODFILIALPN "); sSQL.append("AND SL.DATASUBLANCA BETWEEN ? AND ? AND S.DATASL=SL.DATASUBLANCA "); sSQL.append( "AND SL.CODPLAN=C.CODPLAN AND SL.CODEMPPN=C.CODEMPPN AND SL.CODFILIALPN=C.CODFILIALPN "); sSQL.append("AND SL.CODEMP=? AND SL.CODFILIAL=? ORDER BY S.DATASL,L.CODLANCA"); try { PreparedStatement ps = con.prepareStatement(sSQL.toString()); ps.setInt(1, Aplicativo.iCodEmp); ps.setInt(2, ListaCampos.getMasterFilial("FNCONTA")); ps.setString(3, sCodConta); ps.setInt(4, Aplicativo.iCodEmp); ps.setInt(5, ListaCampos.getMasterFilial("FNLANCA")); ps.setDate(6, Funcoes.dateToSQLDate(txtDataini.getVlrDate())); ps.setDate(7, Funcoes.dateToSQLDate(txtDatafim.getVlrDate())); ps.setInt(8, Aplicativo.iCodEmp); ps.setInt(9, ListaCampos.getMasterFilial("FNSUBLANCA")); rs = ps.executeQuery(); } catch (Exception e) { e.printStackTrace(); Funcoes.mensagemErro(this, "Erro ao buscar dados " + e.getMessage()); } if ("T".equals(rgTipoRel.getVlrString())) { imprimiTexto(rs, bVisualizar, ""); } else { imprimiGrafico( rs, bVisualizar, "Conta: " + txtCodConta.getVlrString() + " - " + txtDescConta.getVlrString()); } } else { Funcoes.mensagemInforma(this, "Você não possui acesso a essa conta!"); } }
public void imprimir(TYPE_PRINT bVisualizar) { if (txtDatafim.getVlrDate().before(txtDataini.getVlrDate())) { Funcoes.mensagemInforma(this, "Data final maior que a data inicial!"); return; } ImprimeOS imp = new ImprimeOS("", con); int linPag = imp.verifLinPag() - 1; boolean bFimDia = false; String sSQL = ""; BigDecimal bTotalDiaVal = new BigDecimal("0"); BigDecimal bTotalDiaDesc = new BigDecimal("0"); BigDecimal bTotalDiaLiq = new BigDecimal("0"); BigDecimal bTotalVal = new BigDecimal("0"); BigDecimal bTotalDesc = new BigDecimal("0"); BigDecimal bTotalLiq = new BigDecimal("0"); imp.montaCab(); String sDataini = ""; String sDatafim = ""; String sDtemitvenda = ""; sDataini = txtDataini.getVlrString(); sDatafim = txtDatafim.getVlrString(); imp.setTitulo("Resumo Diário de Vendas"); if (rgFormato.getVlrString().equals("D")) { sSQL = "SELECT V.DTEMITVENDA,V.CODTIPOMOV,V.CODVENDA,V.DOCVENDA,V.SERIE," + "V.STATUSVENDA,V.DOCVENDA," + "V.DTEMITVENDA,V.VLRPRODVENDA,V.VLRLIQVENDA," + "V.CODPLANOPAG,P.DESCPLANOPAG," + "V.VLRCOMISVENDA,V.VLRDESCITVENDA," + "V.CODCLI,C.RAZCLI,V.STATUSVENDA" + " FROM VDVENDA V,VDCLIENTE C,FNPLANOPAG P, EQTIPOMOV TM " + "WHERE TM.CODTIPOMOV=V.CODTIPOMOV" + " AND TM.CODEMP=V.CODEMPTM" + " AND TM.CODFILIAL=V.CODFILIALTM" + " AND C.CODCLI=V.CODCLI" + " AND C.CODEMP=V.CODEMPCL AND C.CODFILIAL=V.CODFILIALCL" + " AND V.DTEMITVENDA BETWEEN ? AND ? AND " + "P.CODPLANOPAG=V.CODPLANOPAG AND V.FLAG IN " + AplicativoPD.carregaFiltro(con, org.freedom.library.swing.frame.Aplicativo.iCodEmp) + " AND V.CODEMP=? AND V.CODFILIAL=?" + " AND TM.TIPOMOV IN ('VD','PV','VT','SE')" + " AND NOT SUBSTR(V.STATUSVENDA,1,1)='C' ORDER BY V.DTEMITVENDA,V.DOCVENDA"; } else if (rgFormato.getVlrString().equals("R")) { sSQL = "SELECT V.DTEMITVENDA,SUM(V.VLRLIQVENDA) FROM VDVENDA V," + " EQTIPOMOV TM WHERE V.DTEMITVENDA BETWEEN ? AND ? AND V.FLAG IN " + AplicativoPD.carregaFiltro(con, org.freedom.library.swing.frame.Aplicativo.iCodEmp) + " AND TM.CODEMP=V.CODEMPTM" + " AND TM.CODFILIAL=V.CODFILIALTM" + " AND TM.CODTIPOMOV=V.CODTIPOMOV" + " AND TM.TIPOMOV IN ('VD','PV','VT','SE')" + " AND V.CODEMP=? AND V.CODFILIAL=? GROUP BY V.DTEMITVENDA"; System.out.println(sSQL); } PreparedStatement ps = null; ResultSet rs = null; try { ps = con.prepareStatement(sSQL); ps.setDate(1, Funcoes.dateToSQLDate(txtDataini.getVlrDate())); ps.setDate(2, Funcoes.dateToSQLDate(txtDatafim.getVlrDate())); ps.setInt(3, Aplicativo.iCodEmp); ps.setInt(4, ListaCampos.getMasterFilial("VDVENDA")); rs = ps.executeQuery(); imp.limpaPags(); if (rgFormato.getVlrString().equals("D")) { while (rs.next()) { if ((!StringFunctions.sqlDateToStrDate(rs.getDate("dtemitvenda")).equals(sDtemitvenda)) & (bFimDia)) { imp.impCab(136, false); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|" + StringFunctions.replicate("-", 134) + "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|"); imp.say( imp.pRow() + 0, 61, "Totais do Dia-> " + sDtemitvenda + " |" + Funcoes.strDecimalToStrCurrency(10, 2, "" + bTotalDiaVal) + Funcoes.strDecimalToStrCurrency(10, 2, "" + bTotalDiaDesc) + Funcoes.strDecimalToStrCurrency(11, 2, "" + bTotalDiaLiq)); imp.say(imp.pRow(), 136, "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|" + StringFunctions.replicate("-", 134) + "|"); bTotalDiaVal = new BigDecimal("0"); bTotalDiaDesc = new BigDecimal("0"); bTotalDiaLiq = new BigDecimal("0"); bFimDia = false; } if (imp.pRow() >= (linPag - 1)) { imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|" + StringFunctions.replicate("-", 134) + "|"); imp.incPags(); imp.eject(); } if (imp.pRow() == 0) { imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "+" + StringFunctions.replicate("-", 134) + "+"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "| Emitido em :" + Funcoes.dateToStrDate(new Date())); imp.say(imp.pRow() + 0, 120, "Pagina : " + (imp.getNumPags())); imp.say(imp.pRow() + 0, 136, "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|"); imp.say( imp.pRow() + 0, 5, "RESUMO DIARIO DE VENDAS - PERIODO DE :" + sDataini + " Até: " + sDatafim); imp.say(imp.pRow() + 0, 136, "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|"); imp.say(imp.pRow() + 0, 136, "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|" + StringFunctions.replicate("-", 134) + "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "| Dt. Emissao"); imp.say(imp.pRow() + 0, 17, "NF./Ped."); imp.say(imp.pRow() + 0, 31, "Cliente"); imp.say(imp.pRow() + 0, 88, "| Valor Desconto " + " Liquido F.Pagto."); imp.say(imp.pRow() + 0, 136, "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|" + StringFunctions.replicate("-", 134) + "|"); } imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|"); if (!StringFunctions.sqlDateToStrDate(rs.getDate("dtemitvenda")).equals(sDtemitvenda)) { imp.say(imp.pRow() + 0, 3, StringFunctions.sqlDateToStrDate(rs.getDate("dtemitvenda"))); } imp.say( imp.pRow() + 0, 17, rs.getString("StatusVenda").substring(0, 1).equals("P") ? "P-" + Funcoes.copy(rs.getString("codvenda"), 0, 6) : "V-" + Funcoes.copy(rs.getString("docvenda"), 0, 6)); imp.say( imp.pRow() + 0, 31, Funcoes.copy(rs.getString("codcli"), 0, 7) + "-" + Funcoes.copy(rs.getString("razcli"), 0, 49) + "|" + Funcoes.strDecimalToStrCurrency(10, 2, rs.getString("vlrprodvenda")) + Funcoes.strDecimalToStrCurrency(10, 2, rs.getString("vlrdescitvenda")) + Funcoes.strDecimalToStrCurrency(11, 2, rs.getString("vlrliqvenda")) + " " + Funcoes.copy(rs.getString("descplanopag"), 0, 15) + "|"); if (rs.getString("VlrProdVenda") != null) { bTotalDiaVal = bTotalDiaVal.add(new BigDecimal(rs.getString("VlrProdVenda"))); bTotalVal = bTotalVal.add(new BigDecimal(rs.getString("VlrProdVenda"))); } if (rs.getString("VlrDescitvenda") != null) { bTotalDiaDesc = bTotalDiaDesc.add(new BigDecimal(rs.getString("VlrDescitVenda"))); bTotalDesc = bTotalDesc.add(new BigDecimal(rs.getString("VlrDescitVenda"))); } if (rs.getString("VlrLiqVenda") != null) { bTotalDiaLiq = bTotalDiaLiq.add(new BigDecimal(rs.getString("VlrLiqVenda"))); bTotalLiq = bTotalLiq.add(new BigDecimal(rs.getString("VlrLiqVenda"))); } bFimDia = true; sDtemitvenda = StringFunctions.sqlDateToStrDate(rs.getDate("Dtemitvenda")); } if (bFimDia) { imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|" + StringFunctions.replicate("-", 134) + "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|"); imp.say( imp.pRow() + 0, 61, "Totais do Dia-> " + sDtemitvenda + " |" + Funcoes.strDecimalToStrCurrency(10, 2, "" + bTotalDiaVal) + Funcoes.strDecimalToStrCurrency(10, 2, "" + bTotalDiaDesc) + Funcoes.strDecimalToStrCurrency(11, 2, "" + bTotalDiaLiq)); imp.say(imp.pRow(), 136, "|"); } imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow(), 0, "|" + StringFunctions.replicate("-", 134) + "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|"); imp.say( imp.pRow() + 0, 72, "Totais Geral |" + Funcoes.strDecimalToStrCurrency(10, 2, "" + bTotalVal) + Funcoes.strDecimalToStrCurrency(10, 2, "" + bTotalDesc) + Funcoes.strDecimalToStrCurrency(11, 2, "" + bTotalLiq)); imp.say(imp.pRow(), 136, "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|" + StringFunctions.replicate("-", 134) + "|"); } else if (rgFormato.getVlrString().equals("R")) { iLinha = 1; iCol = 0; while (rs.next()) { if (imp.pRow() >= (linPag - 1)) { imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|" + StringFunctions.replicate("-", 134) + "|"); imp.incPags(); imp.eject(); } if (imp.pRow() == 0) { imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "+" + StringFunctions.replicate("-", 134) + "+"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "| Emitido em :" + Funcoes.dateToStrDate(new Date())); imp.say(imp.pRow() + 0, 120, "Pagina : " + (imp.getNumPags())); imp.say(imp.pRow() + 0, 136, "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "|"); imp.say( imp.pRow() + 0, 5, "RESUMO DE TOTAL DE VENDAS - PERIODO DE :" + sDataini + " Até: " + sDatafim); imp.say(imp.pRow() + 0, 136, "|"); imp.say(imp.pRow() + 1, 0, "|" + StringFunctions.replicate("-", 134) + "|"); imp.say(imp.pRow() + 1, 0, "" + imp.comprimido()); imp.say(imp.pRow() + 0, 0, "| Data"); imp.say(imp.pRow() + 0, 14, " Valor"); imp.say(imp.pRow() + 0, 35, "| Data"); imp.say(imp.pRow() + 0, 49, " Valor"); imp.say(imp.pRow() + 0, 70, "| Data"); imp.say(imp.pRow() + 0, 84, " Valor"); imp.say(imp.pRow() + 0, 105, "| Data"); imp.say(imp.pRow() + 0, 119, " Valor"); imp.say(imp.pRow() + 0, 136, "|"); imp.say(imp.pRow() + 1, 0, "|" + StringFunctions.replicate("-", 134) + "|"); } imp.say( imp.pRow() + iLinha, iCol, "| " + StringFunctions.sqlDateToStrDate(rs.getDate(1))); imp.say( imp.pRow() + 0, iCol + 14, " " + Funcoes.strDecimalToStrCurrency(15, 2, "" + rs.getString(2))); if (iCol == 0) { iLinha = 0; iCol = 35; } else if (iCol == 35) iCol = 70; else if (iCol == 70) iCol = 105; else { imp.say(imp.pRow() + 0, 136, "|"); iCol = 0; iLinha = 1; } if (rs.getString(2) != null) { bTotalDiaLiq = bTotalDiaLiq.add(new BigDecimal(rs.getString(2))); bTotalLiq = bTotalLiq.add(new BigDecimal(rs.getString(2))); } } } if ((iCol < 105) && (iLinha == 0)) { imp.say(imp.pRow() + 0, 136, "|"); } imp.say(imp.pRow() + 1, 0, "+" + StringFunctions.replicate("-", 134) + "+"); imp.say(imp.pRow() + 1, 0, "|"); imp.say( imp.pRow() + 0, 88, "| Total Geral do Período | " + Funcoes.strDecimalToStrCurrency(11, 2, "" + bTotalLiq)); imp.say(imp.pRow(), 136, "|"); imp.say(imp.pRow() + 1, 0, "+" + StringFunctions.replicate("-", 134) + "+"); imp.eject(); imp.fechaGravacao(); // rs.close(); // ps.close(); con.commit(); // dl.dispose(); } catch (SQLException err) { Funcoes.mensagemErro( this, "Erro consulta tabela de vendas!" + err.getMessage(), true, con, err); } if (bVisualizar == TYPE_PRINT.VIEW) { imp.preview(this); } else { imp.print(); } }