Пример #1
0
    private void montaTabela() {

      if (invalidos != null && invalidos.size() > 0) {

        tabInvalidos.limpa();

        for (Object[] line : invalidos) {
          tabInvalidos.adicLinha(line);
        }
      }
    }
Пример #2
0
  private void carregaItens() {

    try {
      tabDet.limpa();

      ResultSet rs =
          daopush.carregaItens(
              Aplicativo.iCodEmp,
              ListaCampos.getMasterFilial("EQPRODUTO"),
              txtCodProd.getVlrInteger(),
              lcSecao.getCodEmp(),
              lcSecao.getCodFilial(),
              txtCodSecao.getVlrString());

      int row = 0;

      BigDecimal totqtdminimo = new BigDecimal(0);
      BigDecimal totqtdestoq = new BigDecimal(0);
      BigDecimal totqtdreq = new BigDecimal(0);
      BigDecimal totqtdemprod = new BigDecimal(0);
      BigDecimal totqtdaprod = new BigDecimal(0);

      ResultSet rs2 = null;

      PreparedStatement ps2 = null;

      while (rs.next()) {

        BigDecimal qtdreserv = new BigDecimal(0);

        BigDecimal qtdminimo =
            rs.getBigDecimal(DETALHAMENTO.QTDMINPROD.toString()).setScale(Aplicativo.casasDec);
        BigDecimal qtdestoque =
            rs.getBigDecimal(DETALHAMENTO.QTDESTOQUE.toString()).setScale(Aplicativo.casasDec);

        BigDecimal qtdemprod =
            rs.getBigDecimal(DETALHAMENTO.QTDEMPROD.toString()).setScale(Aplicativo.casasDec);
        BigDecimal qtdreq =
            rs.getBigDecimal(DETALHAMENTO.QTDREQ.toString()).setScale(Aplicativo.casasDec);

        BigDecimal qtdaprod =
            new BigDecimal(
                qtdminimo.floatValue()
                    + qtdreq.floatValue()
                    - qtdestoque.floatValue()
                    - qtdemprod.floatValue());

        totqtdminimo = totqtdminimo.add(qtdminimo);
        totqtdestoq = totqtdestoq.add(qtdestoque);
        totqtdreq = totqtdreq.add(qtdreq);
        totqtdemprod = totqtdemprod.add(qtdemprod);
        totqtdaprod = totqtdaprod.add(qtdaprod);

        if (qtdaprod.floatValue() > 0) {
          tabDet.adicLinha();
          tabDet.setColColor(-1, DETALHAMENTO.DTFABROP.ordinal(), Color.WHITE, Color.RED);
          tabDet.setColColor(-1, DETALHAMENTO.QTDAPROD.ordinal(), Color.WHITE, Color.RED);

          tabDet.setValor(new Boolean(false), row, DETALHAMENTO.MARCACAO.ordinal());

          if (qtdreq.floatValue() > 0) {
            imgColuna = imgUrgente;
          } else {
            imgColuna = imgNormal;
          }

          tabDet.setValor(imgColuna, row, DETALHAMENTO.STATUS.ordinal());

          tabDet.setValor(Funcoes.dateToStrDate(new Date()), row, DETALHAMENTO.DTFABROP.ordinal());
          tabDet.setValor(
              rs.getInt(DETALHAMENTO.CODEMPPD.toString()), row, DETALHAMENTO.CODEMPPD.ordinal());
          tabDet.setValor(
              rs.getInt(DETALHAMENTO.CODFILIALPD.toString()),
              row,
              DETALHAMENTO.CODFILIALPD.ordinal());
          tabDet.setValor(
              rs.getInt(DETALHAMENTO.CODPROD.toString()), row, DETALHAMENTO.CODPROD.ordinal());
          tabDet.setValor(
              rs.getString(DETALHAMENTO.REFPROD.toString()), row, DETALHAMENTO.REFPROD.ordinal());
          tabDet.setValor(
              rs.getInt(DETALHAMENTO.SEQEST.toString()), row, DETALHAMENTO.SEQEST.ordinal());
          tabDet.setValor(
              rs.getString(DETALHAMENTO.DESCPROD.toString().trim()),
              row,
              DETALHAMENTO.DESCPROD.ordinal());

          tabDet.setValor(qtdminimo, row, DETALHAMENTO.QTDMINPROD.ordinal());
          tabDet.setValor(qtdestoque, row, DETALHAMENTO.QTDESTOQUE.ordinal());
          tabDet.setValor(qtdreq, row, DETALHAMENTO.QTDREQ.ordinal());
          tabDet.setValor(qtdemprod, row, DETALHAMENTO.QTDEMPROD.ordinal());
          tabDet.setValor(qtdaprod, row, DETALHAMENTO.QTDAPROD.ordinal());

          row++;
        }

        if (totqtdaprod.floatValue() < 0) {
          totqtdaprod = new BigDecimal(0);
        }

        txtQtdRequisitada.setVlrBigDecimal(totqtdreq);
        txtQtdEstoque.setVlrBigDecimal(totqtdestoq);

        if (txtCodProd.getVlrInteger() > 0) {

          txtQtdProducao.setVlrBigDecimal(totqtdemprod);
          txtQtdProduzir.setVlrBigDecimal(totqtdaprod);

        } else {

          txtQtdProducao.setVlrString("-");
          txtQtdProduzir.setVlrString("-");
        }
      }
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
Пример #3
0
  private void importar() {

    try {

      File file = new File(txtDiretorio.getVlrString().trim());

      if (file.exists()) {

        txtDiretorio.setEnabled(false);
        btDirtorio.setEnabled(false);
        btImportar.setEnabled(false);

        FileReader fileReader = new FileReader(file);

        BufferedReader bufferedReader = new BufferedReader(fileReader);
        List<String> saldoImportacao = new ArrayList<String>();
        String tmp = null;

        while ((tmp = bufferedReader.readLine()) != null) {
          // if ( tmp.length() >= 57 ) { correção, alguns produtos com descrição menor não estavam
          // sendo carregados.
          saldoImportacao.add(tmp);
          // }
        }

        bufferedReader.close();

        produtosInvalidos = new ArrayList<Object[]>();
        Object[] elementos = new Object[4];
        String[] campos = null;

        tabProdutos.limpa();

        status.setString("Carregando saldos de produtos ...");
        status.setMaximum(saldoImportacao.size());
        int indice = 1;
        Integer codprod = null;
        BigDecimal custo = null;

        for (String linha : saldoImportacao) {

          /*
           * codprod = Integer.parseInt( linha.substring( 0, 8 ) ); custo = getCusto( codprod ); elementos[ 0 ] = codprod; elementos[ 1 ] = linha.substring( 18, 48 ); elementos[ 2 ] = custo; elementos[ 3 ] = new BigDecimal( linha.substring( 49, 57 ).trim() ).setScale( Aplicativo.casasDec,
           * BigDecimal.ROUND_HALF_UP );
           */

          campos = linha.split(";");

          codprod = Integer.parseInt(campos[0]);
          custo = getCusto(codprod);

          elementos = new Object[4];
          elementos[0] = codprod;
          elementos[1] = campos[2];
          elementos[2] = custo;
          elementos[3] =
              new BigDecimal(campos[3]).setScale(Aplicativo.casasDec, BigDecimal.ROUND_HALF_UP);

          if (custo != null) {
            tabProdutos.adicLinha(elementos);
          } else {
            produtosInvalidos.add(elementos);
          }

          status.setValue(indice++);
        }

        status.setString(tabProdutos.getNumLinhas() + " de produtos carragados ...");

        if (tabProdutos.getNumLinhas() > 0) {
          btInventario.setEnabled(true);
          btInventario.requestFocus();
        }

        if (produtosInvalidos.size() > 0) {
          btProdutosInvalidos.setVisible(true);
        }
      } else {
        Funcoes.mensagemErro(this, "Arquivo não encontrado!");
      }
    } catch (Exception e) {
      e.printStackTrace();
      Funcoes.mensagemErro(this, "Erro ao importar arquivo!\n" + e.getMessage(), true, con, e);
    }
  }
Пример #4
0
  private void carregaProdutosExportacao() {

    produtos = new ArrayList<String>();

    try {

      status.setString("Carregando produtos para exportação ...");

      String filtro1 = "";
      String filtro2 = "";

      if ("A".equals(rgFiltro1.getVlrString())) {
        filtro1 = " AND P.ATIVOPROD='S' ";
      } else if ("I".equals(rgFiltro1.getVlrString())) {
        filtro1 = " AND P.ATIVOPROD='N' ";
      }

      if ("C".equals(rgFiltro2.getVlrString())) {
        filtro2 = "AND P.CVPROD='C' ";
      } else if ("V".equals(rgFiltro2.getVlrString())) {
        filtro2 = "AND P.CVPROD='V' ";
      }

      StringBuilder sql = new StringBuilder();
      sql.append("SELECT P.CODPROD, P.DESCPROD, P.PRECOBASEPROD, P.SLDLIQPROD ");
      sql.append("FROM EQPRODUTO P ");
      sql.append("WHERE P.CODEMP=? AND P.CODFILIAL=? AND P.CLOTEPROD='N' ");
      sql.append(filtro1);
      sql.append(filtro2);
      sql.append("ORDER BY P.CODPROD");

      PreparedStatement ps = con.prepareStatement(sql.toString());
      ps.setInt(1, Aplicativo.iCodEmp);
      ps.setInt(2, ListaCampos.getMasterFilial("EQPRODUTO"));

      ResultSet rs = ps.executeQuery();

      StringBuilder tmp = new StringBuilder();
      tabProdutos.limpa();

      DecimalFormat df1 = new DecimalFormat("00000000");
      DecimalFormat df2 = new DecimalFormat("00000.00");

      while (rs.next()) {

        tmp.delete(0, tmp.length());
        tmp.append(df1.format(rs.getInt("CODPROD")) + ";");
        tmp.append(df2.format(rs.getBigDecimal("PRECOBASEPROD")).replace(',', '.') + ";");
        tmp.append(Funcoes.copy(rs.getString("DESCPROD").trim(), 30) + ";");
        tmp.append(df2.format(rs.getBigDecimal("SLDLIQPROD")).replace(',', '.'));

        tabProdutos.adicLinha(
            new Object[] {
              rs.getInt("CODPROD"),
              rs.getString("DESCPROD").trim(),
              rs.getBigDecimal("PRECOBASEPROD").setScale(2, BigDecimal.ROUND_HALF_UP),
              rs.getBigDecimal("SLDLIQPROD").setScale(2, BigDecimal.ROUND_HALF_UP)
            });

        produtos.add(tmp.toString());
      }

      status.setString("Carregandos " + produtos.size() + " produtos para exportação...");

      if (produtos.size() > 0) {
        txtDiretorio.setEnabled(false);
        btDirtorio.setEnabled(false);
        btBuscarProdutos.setEnabled(false);
        btExeportar.setEnabled(true);
        btExeportar.requestFocus();
      }

      rs.close();
      ps.close();

      con.commit();
    } catch (SQLException e) {
      e.printStackTrace();
      Funcoes.mensagemErro(this, "Erro ao buscar produtos!\n" + e.getMessage(), true, con, e);
    }
  }