コード例 #1
0
ファイル: FPMP_Push.java プロジェクト: elandio/freedom-erp
  private void limpaNaoSelecionados(JTablePad tab) {

    int linhas = tab.getNumLinhas();
    int pos = 0;
    try {
      for (int i = 0; i < linhas; i++) {
        if (tab.getValor(i, 0) != null && !((Boolean) tab.getValor(i, 0)).booleanValue()) { // xxx
          tab.tiraLinha(i);
          i--;
        }
      }
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
コード例 #2
0
ファイル: FPMP_Push.java プロジェクト: elandio/freedom-erp
  private void selectNecessarios(JTablePad tab) {

    BigDecimal qtdaprod = null;

    for (int i = 0; i < tab.getNumLinhas(); i++) {
      qtdaprod = (BigDecimal) tab.getValor(i, DETALHAMENTO.QTDAPROD.ordinal());
      tab.setValor(new Boolean(qtdaprod.floatValue() > 0), i, 0);
    }
  }
コード例 #3
0
ファイル: FPMP_Push.java プロジェクト: elandio/freedom-erp
  public void mouseClicked(MouseEvent mevt) {

    JTablePad tabEv = (JTablePad) mevt.getSource();

    if (mevt.getClickCount() == 2) {
      if (tabEv == tabDet && tabEv.getLinhaSel() > -1) {
        ImageIcon imgclicada =
            (ImageIcon) tabEv.getValor(tabEv.getLinhaSel(), DETALHAMENTO.STATUS.ordinal());

        if (imgclicada.equals(imgUrgente)) {
          FOrcamento orc = null;
          if (Aplicativo.telaPrincipal.temTela(FOrcamento.class.getName())) {
            orc = (FOrcamento) Aplicativo.telaPrincipal.getTela(FOrcamento.class.getName());
          } else {
            orc = new FOrcamento();
            Aplicativo.telaPrincipal.criatela("Orçamento", orc, con);
          }
          //					orc.exec( (Integer) tabEv.getValor( tabEv.getLinhaSel(),
          // DETALHAMENTO.CODORC.ordinal() ) );
        } else {
          //					FOP op = new FOP( (Integer) tabDet.getValor( tabEv.getLinhaSel(),
          // DETALHAMENTO.CODOP.ordinal() ), (Integer) tabDet.getValor( tabEv.getLinhaSel(),
          // DETALHAMENTO.SEQOP.ordinal() ) );
          //					Aplicativo.telaPrincipal.criatela( "Ordens de produção", op, con );
        }
      }
    }
    if ((tabEv == tabDet) && (tabEv.getLinhaSel() > -1)) {

      Boolean selecionado = (Boolean) tabEv.getValor(tabEv.getLinhaSel(), 0);
      BigDecimal qtdaprod = null;
      ImageIcon imgclicada = null;

      if (tabEv == tabDet) {
        qtdaprod =
            (BigDecimal) tabEv.getValor(tabEv.getLinhaSel(), DETALHAMENTO.QTDAPROD.ordinal());
        imgclicada = (ImageIcon) tabEv.getValor(tabEv.getLinhaSel(), DETALHAMENTO.STATUS.ordinal());
        tabEv.setValor(!(selecionado).booleanValue(), tabEv.getLinhaSel(), 0);
      }
    }
  }
コード例 #4
0
ファイル: FPMP_Push.java プロジェクト: elandio/freedom-erp
  private void geraOPS() {

    StringBuffer sql = new StringBuffer();
    Vector<Integer> ops = new Vector<Integer>();
    BigDecimal qtdsugerida = null;
    DLLoading loading = new DLLoading();

    try {
      for (int i = 0; i < tabDet.getNumLinhas(); i++) {
        loading.start();
        qtdsugerida = (BigDecimal) (tabDet.getValor(i, DETALHAMENTO.QTDAPROD.ordinal()));

        // Caso o item do grid esteja selecionado...
        if ((Boolean) (tabDet.getValor(i, DETALHAMENTO.MARCACAO.ordinal()))
            && qtdsugerida.floatValue() > 0) {
          try {

            PPGeraOP geraop = new PPGeraOP();
            geraop.setCodempop(Aplicativo.iCodEmp);
            geraop.setCodfilialop(Aplicativo.iCodFilial);
            geraop.setCodemppd((Integer) tabDet.getValor(i, DETALHAMENTO.CODEMPPD.ordinal()));
            geraop.setCodfilialpd((Integer) tabDet.getValor(i, DETALHAMENTO.CODFILIALPD.ordinal()));
            geraop.setCodprod((Integer) tabDet.getValor(i, DETALHAMENTO.CODPROD.ordinal()));
            geraop.setQtdSugProdOp(
                (BigDecimal) tabDet.getValor(i, DETALHAMENTO.QTDAPROD.ordinal()));
            geraop.setDtFabOp(
                Funcoes.strDateToDate(
                    (String) tabDet.getValor(i, DETALHAMENTO.DTFABROP.ordinal())));
            geraop.setSeqest((Integer) tabDet.getValor(i, DETALHAMENTO.SEQEST.ordinal()));

            ResultSet rs = daopush.geraOP(geraop);

            if (rs.next()) {
              ops.addElement(rs.getInt(1));
            }
          } catch (Exception e) {
            e.printStackTrace();
          }
        }
      }
      carregaItens();
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      loading.stop();
      Funcoes.mensagemInforma(
          this, "As seguintes ordens de produção foram geradas:\n" + ops.toString());
    }
  }
コード例 #5
0
ファイル: FPMP_Push.java プロジェクト: elandio/freedom-erp
  private void geraTabTemp() {

    try {
      daopush.deletaTabTemp();

      for (int i = 0; i < tabDet.getNumLinhas(); i++) {

        if ((((Boolean) tabDet.getValor(i, DETALHAMENTO.MARCACAO.ordinal())).booleanValue())
            && ((BigDecimal) tabDet.getValor(i, DETALHAMENTO.QTDAPROD.ordinal())).floatValue()
                > 0) {

          daopush.insertPPProcessaOpTmp(
              Funcoes.strDateToDate((String) tabDet.getValor(i, DETALHAMENTO.DTFABROP.ordinal())),
              (BigDecimal) tabDet.getValor(i, DETALHAMENTO.QTDAPROD.ordinal()),
              Aplicativo.iCodEmp,
              Aplicativo.iCodFilial,
              Aplicativo.getInstance().getCodest());
        }
      }
      con.commit();
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
コード例 #6
0
ファイル: FExpImpEstoq.java プロジェクト: elandio/freedom-erp
  private void criarInventario() {

    try {

      // para evitar de dar o commit no meio do loop e o rollback de erro não adiantar.
      final boolean commit = con.getConnection().getAutoCommit();
      con.setAutoCommit(false);

      int tamanhoTabela = tabProdutos.getNumLinhas();

      status.setString("Realizando inventarios ...");
      status.setMaximum(tamanhoTabela);

      StringBuilder sql = new StringBuilder();
      sql.append("INSERT INTO EQINVPROD ");
      sql.append("(CODEMP, CODFILIAL, CODINVPROD, ");
      sql.append("CODEMPPD, CODFILIALPD, CODPROD, ");
      sql.append("CODEMPTM, CODFILIALTM, CODTIPOMOV, ");
      sql.append("DATAINVP, QTDINVP, SLDATUALINVP, SLDDIGINVP, PRECOINVP, ");
      sql.append("CODEMPAX, CODFILIALAX, CODALMOX) ");
      sql.append("VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) ");

      final Integer tipoMovimentoInventario = getTipoMovimentoInventario();
      final Date hoje = Funcoes.dateToSQLDate(Calendar.getInstance().getTime());
      Integer codprod = null;
      BigDecimal saldoAtual = null;
      BigDecimal novoSaldo = null;
      BigDecimal quantidade = null;
      BigDecimal custo = null;

      Integer codInventario = null;
      Integer codAlmoarifado = null;

      PreparedStatement ps = null;

      for (int i = 0; i < tamanhoTabela; i++) {

        codprod = (Integer) tabProdutos.getValor(i, 0);
        saldoAtual = getSaldoAtual(codprod);
        novoSaldo = (BigDecimal) tabProdutos.getValor(i, 3);
        quantidade = novoSaldo.subtract(saldoAtual);
        custo = (BigDecimal) tabProdutos.getValor(i, 2);

        codInventario = getCodInventario();
        codAlmoarifado = getAlmoxarifado(codprod);

        ps = con.prepareStatement(sql.toString());
        ps.setInt(1, Aplicativo.iCodEmp);
        ps.setInt(2, ListaCampos.getMasterFilial("EQINVPROD"));
        ps.setInt(3, codInventario);
        ps.setInt(4, Aplicativo.iCodEmp);
        ps.setInt(5, ListaCampos.getMasterFilial("EQPRODUTO"));
        ps.setInt(6, codprod); // código do produto.
        ps.setInt(7, Aplicativo.iCodEmp);
        ps.setInt(8, ListaCampos.getMasterFilial("EQTIPOMOV"));
        ps.setInt(9, tipoMovimentoInventario); // código do tipo de movimento de inventário.
        ps.setDate(10, hoje);
        ps.setBigDecimal(11, quantidade);
        ps.setBigDecimal(12, saldoAtual);
        ps.setBigDecimal(13, novoSaldo);
        ps.setBigDecimal(14, custo);
        ps.setInt(15, Aplicativo.iCodEmp);
        ps.setInt(16, ListaCampos.getMasterFilial("EQALMOX"));
        ps.setInt(17, codAlmoarifado);
        ps.execute();

        status.setValue(i + 1);
      }

      status.setString("Concluido !");
      btInventario.setEnabled(false);

      con.setAutoCommit(commit);

      con.commit();

    } catch (Exception e) {
      e.printStackTrace();
      Funcoes.mensagemErro(this, "Erro ao realizar inventáros!\n" + e.getMessage(), true, con, e);
      try {
        con.rollback();
        rgModo.setVlrInteger(IMPORTAR);
      } catch (SQLException e1) {
        e1.printStackTrace();
      }
    }
  }