Example usage for org.apache.commons.dbutils.handlers ArrayListHandler ArrayListHandler

List of usage examples for org.apache.commons.dbutils.handlers ArrayListHandler ArrayListHandler

Introduction

In this page you can find the example usage for org.apache.commons.dbutils.handlers ArrayListHandler ArrayListHandler.

Prototype

public ArrayListHandler() 

Source Link

Document

Creates a new instance of ArrayListHandler using a BasicRowProcessor for conversions.

Usage

From source file:org.openconcerto.erp.core.finance.accounting.element.JournalSQLElement.java

public static int getIdJournal(final String nom) {
    final SQLBase base = ((ComptaPropsConfiguration) Configuration.getInstance()).getSQLBaseSociete();
    final SQLTable journalTable = base.getTable("JOURNAL");
    final SQLSelect selJrnl = new SQLSelect();
    selJrnl.addSelect(journalTable.getField("ID"));
    selJrnl.setWhere(new Where(journalTable.getField("NOM"), "=", nom.trim()));

    @SuppressWarnings("unchecked")
    final List<Object[]> myListJrnl = (List<Object[]>) base.getDataSource().execute(selJrnl.asString(),
            new ArrayListHandler());

    if (myListJrnl.size() != 0) {
        return Integer.parseInt(myListJrnl.get(0)[0].toString());
    } else {/* w  w w .j ava  2  s. c  o  m*/
        return -1;
    }
}

From source file:org.openconcerto.erp.core.finance.accounting.element.MouvementSQLElement.java

public static final boolean isEditable(final int idMvt) {

    // TODO si l'id est incorrect(<=1) renvoy false??
    final SQLBase base = ((ComptaPropsConfiguration) Configuration.getInstance()).getSQLBaseSociete();
    final SQLTable tableEcriture = base.getTable("ECRITURE");

    final SQLSelect sel = new SQLSelect(base);

    sel.addSelect(tableEcriture.getField("VALIDE"));

    final Where w = new Where(tableEcriture.getField("ID_MOUVEMENT"), "=", idMvt);

    sel.setWhere(w);//from   w  w w.j a v  a  2  s. c  o  m

    final String req = sel.asString();
    final Object ob = base.getDataSource().execute(req, new ArrayListHandler());

    final List myList = (List) ob;

    final int size = myList.size();
    for (int i = 0; i < size; i++) {
        final Object[] objTmp = (Object[]) myList.get(i);
        if (((Boolean) objTmp[0]).booleanValue()) {
            return false;
        }
    }

    return true;
}

From source file:org.openconcerto.erp.core.finance.accounting.element.MouvementSQLElement.java

public static final int getIDForSource(final String source, final int idSource) {
    final SQLBase base = ((ComptaPropsConfiguration) Configuration.getInstance()).getSQLBaseSociete();
    final SQLTable tableMvt = base.getTable("MOUVEMENT");

    final SQLSelect sel = new SQLSelect(base);

    sel.addSelect(tableMvt.getField("ID"));

    final Where w = new Where(tableMvt.getField("SOURCE"), "=", source);
    final Where w2 = new Where(tableMvt.getField("IDSOURCE"), "=", idSource);

    sel.setWhere(w.and(w2));/*from  w  ww. j  ava 2  s .  c  o  m*/

    final String req = sel.asString();
    final Object ob = base.getDataSource().execute(req, new ArrayListHandler());

    final List<Object[]> myList = (List<Object[]>) ob;

    final int id;
    if (myList.size() != 0) {
        final Object[] objTmp = myList.get(0);
        id = ((Number) objTmp[0]).intValue();
    } else {
        id = 1;
    }
    return id;

}

From source file:org.openconcerto.erp.core.finance.accounting.element.SaisieKmSQLElement.java

/**
 * Genere une saisie au kilometre  partir d'un mouvement
 * //from  w w w.  jav  a 2s .co  m
 * @param idMvt
 * 
 * @return l'id de la saisie au kilometre cr
 * @throws SQLException
 */
public static int createSaisie(int idMvt) throws SQLException {
    int idSaisie = 1;
    SQLBase base = ((ComptaPropsConfiguration) Configuration.getInstance()).getSQLBaseSociete();
    SQLTable ecrTable = base.getTable("ECRITURE");
    SQLTable compteTable = base.getTable("COMPTE_PCE");
    SQLTable saisieKmTable = base.getTable("SAISIE_KM_ELEMENT");

    SQLRowValues vals = new SQLRowValues(base.getTable("SAISIE_KM"));
    vals.put("ID_MOUVEMENT", new Integer(idMvt));

    SQLRow rowSaisieKm = vals.insert();
    idSaisie = rowSaisieKm.getID();

    SQLSelect selEcriture = new SQLSelect();
    selEcriture.addSelect(ecrTable.getField("ID"));

    Where w = new Where(ecrTable.getField("ID_MOUVEMENT"), "=", idMvt);
    selEcriture.setWhere(w);

    String reqEcriture = selEcriture.asString();

    Object obEcriture = base.getDataSource().execute(reqEcriture, new ArrayListHandler());

    List myListEcriture = (List) obEcriture;

    if (myListEcriture.size() != 0) {

        for (int i = 0; i < myListEcriture.size(); i++) {
            Object[] objTmp = (Object[]) myListEcriture.get(i);

            SQLRow rowEcrTmp = ecrTable.getRow(Integer.parseInt(objTmp[0].toString()));
            SQLRow rowCompteTmp = compteTable.getRow(rowEcrTmp.getInt("ID_COMPTE_PCE"));

            SQLRowValues valsTmp = new SQLRowValues(saisieKmTable);
            valsTmp.put("ID_SAISIE_KM", new Integer(rowSaisieKm.getID()));
            valsTmp.put("NUMERO", rowCompteTmp.getString("NUMERO"));
            valsTmp.put("NOM", rowCompteTmp.getString("NOM"));
            valsTmp.put("NOM_ECRITURE", rowEcrTmp.getString("NOM"));
            valsTmp.put("DEBIT", rowEcrTmp.getObject("DEBIT"));
            valsTmp.put("CREDIT", rowEcrTmp.getObject("CREDIT"));
            valsTmp.put("ID_ECRITURE", new Integer(rowEcrTmp.getID()));
            valsTmp.insert();
        }

        Object[] objTmp = (Object[]) myListEcriture.get(0);
        SQLRow rowEcrTmp = ecrTable.getRow(Integer.parseInt(objTmp[0].toString()));
        vals.put("NOM", rowEcrTmp.getString("NOM"));
        vals.put("DATE", rowEcrTmp.getObject("DATE"));
        vals.put("ID_JOURNAL", rowEcrTmp.getObject("ID_JOURNAL"));

        vals.update(idSaisie);
    }

    SQLTable mouvementTable = base.getTable("MOUVEMENT");
    SQLRow rowMvt = mouvementTable.getRow(idMvt);

    if ((rowMvt.getString("SOURCE").trim().length() == 0) || (rowMvt.getInt("IDSOURCE") == 1)) {
        SQLRowValues valsMouvement = new SQLRowValues(mouvementTable);
        valsMouvement.put("SOURCE", "SAISIE_KM");
        valsMouvement.put("IDSOURCE", new Integer(rowSaisieKm.getID()));
        valsMouvement.update(idMvt);
    }

    return idSaisie;
}

From source file:org.openconcerto.erp.core.finance.accounting.model.AnalytiqueModel.java

public AnalytiqueModel(int IDAxe) {

    int i;/*w w  w  .  j a v  a2 s. c om*/
    List myList;

    this.idAxe = IDAxe;

    /*******************************************************************************************
     * POSTES DE L'AXE
     ******************************************************************************************/
    // SELECT NOM FROM POSTE WHERE POSTE.ID_AXE = id
    SQLTable posteTable = base.getTable("POSTE_ANALYTIQUE");
    SQLSelect sel = new SQLSelect(base);
    sel.addSelect(posteTable.getField("ID"));
    sel.addSelect(posteTable.getField("NOM"));
    sel.setWhere(posteTable.getField("ID_AXE_ANALYTIQUE"), "=", IDAxe);

    String req = sel.asString();

    Object ob = base.getDataSource().execute(req, new ArrayListHandler());

    // on stocke les postes
    myList = (List) ob;

    this.idNewPoste = 1;

    if (myList.size() != 0) {

        for (i = 0; i < myList.size(); i++) {

            Object[] objTmp = (Object[]) myList.get(i);
            // ID, nom
            this.postes
                    .add(new Poste(Integer.parseInt(objTmp[0].toString()), objTmp[1].toString(), this.idAxe));

            if (Integer.parseInt(objTmp[0].toString()) > this.idNewPoste) {
                this.idNewPoste = Integer.parseInt(objTmp[0].toString());
            }
        }

        // on associe le vecteur poste au titre des colonnes
        this.mesTitres.add("Rpartition");

        for (i = 1; i < this.postes.size() + 1; i++) {
            this.mesTitres.add(String.valueOf(i - 1));
        }

        /***************************************************************************************
         * REPARTITIONS
         **************************************************************************************/

        // SELECT Rep.NOM, ID_POSTE, taux FROM REP, REP_ELEME
        // WHERE REP_ELEME.ID_POSTE = id, REP_ELEM.IDREP = REp.ID)
        final SQLTable repartAnalytiqueT = base.getTable("REPARTITION_ANALYTIQUE");
        SQLSelect sel2 = new SQLSelect(base);
        sel2.addSelect(repartAnalytiqueT.getField("NOM"));
        sel2.addSelect(repartAnalytiqueT.getField("TAUX"));
        sel2.addSelect(repartAnalytiqueT.getField("ID_POSTE_ANALYTIQUE"));
        sel2.addSelect(repartAnalytiqueT.getField("ID_REPARTITION_ANALYTIQUE"));
        sel2.addSelect(repartAnalytiqueT.getKey());

        Where w = new Where(
                base.getTable("REPARTITION_ANALYTIQUE_ELEMENT").getField("ID_REPARTITION_ANALYTIQUE"), "=",
                repartAnalytiqueT.getKey());
        Where w2 = new Where(posteTable.getField("ID_AXE_ANALYTIQUE"), "=", this.idAxe);
        Where w3 = new Where(posteTable.getField("ID"), "=",
                base.getTable("REPARTITION_ANALYTIQUE_ELEMENT").getField("ID_POSTE_ANALYTIQUE"));

        sel2.setWhere(w.and(w2).and(w3));
        sel2.addRawOrder("REPARTITION_ANALYTIQUE_ELEMENT.ID_REPARTITION_ANALYTIQUE");

        String req2 = sel2.asString();
        // System.out.println(req2);

        Object ob2 = base.getDataSource().execute(req2, new ArrayListHandler());
        myList = (List) ob2;

        if (myList.size() != 0) {

            // on remplit les vecteurs  partir de la liste rcupre
            getListRepartition(myList);
        }

    } else {
        this.idNewPoste = 2;
        this.postes.add(new Poste(1, "Nouveau poste", this.idAxe, true));
        this.mesTitres.add("Rpartition");
        this.mesTitres.add(String.valueOf(0));
    }
}

From source file:org.openconcerto.erp.core.finance.accounting.model.AnalytiqueModel.java

/***********************************************************************************************
 * Supprimer une rpartition// w  w  w.  j a  v a2s.  c o  m
 **********************************************************************************************/
public void removeElement(int row) {

    // la rpartition et ses lments doivent etre supprim
    Repartition rep = (Repartition) this.repartitions
            .get(Integer.parseInt(this.ligneRepartitions.get(row).toString()));

    // Test si la repartition n'est pas deja associe  un compte
    // SELECT ID, ID_COMPTE FROM ASSOCIATION WHERE ID.REP = id

    SQLTable assocTable = base.getTable("ASSOCIATION_COMPTE_ANALYTOQUE");
    SQLSelect selAssoc = new SQLSelect(base);
    selAssoc.addSelect(assocTable.getField("ID"));
    selAssoc.addSelect(assocTable.getField("ID_COMPTE_PCE"));
    selAssoc.setWhere(assocTable.getField("ID_REPARTITION_ANALYTIQUE"), "=", rep.getId());

    String reqAssoc = selAssoc.asString();
    Object obAssoc = base.getDataSource().execute(reqAssoc, new ArrayListHandler());

    List myListAssoc = (List) obAssoc;

    if (myListAssoc.size() != 0) {
        System.out.println("La rpartition est affecte  un compte.");
        ValiderSuppressionRepartitionFrame validFrame = new ValiderSuppressionRepartitionFrame(this, row,
                myListAssoc);
        validFrame.pack();
        validFrame.setVisible(true);
    } else {
        deleteElement(row);
    }

}

From source file:org.openconcerto.erp.core.finance.accounting.model.AssociationAnalytiqueModel.java

public AssociationAnalytiqueModel(ClasseCompte cc) {

    // on recupere les comptes

    SQLTable compteTable = base.getTable("COMPTE_PCE");

    // SQLBase base = elt.getTable().getBase();
    SQLSelect selCompte = new SQLSelect(base);
    selCompte.addSelect(compteTable.getField("ID"));
    selCompte.addSelect(compteTable.getField("NUMERO"));
    selCompte.addSelect(compteTable.getField("NOM"));

    selCompte.setWhere(new Where(compteTable.getField("NUMERO"), "REGEXP", cc.getTypeNumeroCompte()));

    selCompte.addRawOrder("COMPTE_PCE.NUMERO");
    // selCompte.setDistinct(true);

    String reqCompte = selCompte.asString();

    // System.out.println(reqCompte);

    Object obCompte = base.getDataSource().execute(reqCompte, new ArrayListHandler());

    List myListCompte = (List) obCompte;

    if (myListCompte.size() != 0) {
        for (int i = 0; i < myListCompte.size(); i++) {
            Object[] objTmp = (Object[]) myListCompte.get(i);

            this.mapCompte.put(new Integer(Integer.parseInt(objTmp[0].toString())),
                    new Integer(this.comptes.size()));
            this.comptes.add(new Compte(Integer.parseInt(objTmp[0].toString()), objTmp[1].toString(),
                    objTmp[2].toString()));
        }/* w  w w  . j a  v  a 2s. com*/
    }

    // on recupere les axes existants
    SQLTable axeTable = base.getTable("AXE_ANALYTIQUE");
    SQLSelect selAxe = new SQLSelect(base);
    selAxe.addSelect(axeTable.getField("ID"));
    selAxe.addSelect(axeTable.getField("NOM"));
    selAxe.addRawOrder("AXE_ANALYTIQUE.NOM");
    String reqAxe = selAxe.asString();

    Object obAxe = base.getDataSource().execute(reqAxe, new ArrayListHandler());

    List myListAxe = (List) obAxe;

    this.titres.add("Compte");
    this.titres.add("Libell");

    if (myListAxe.size() != 0) {

        for (int i = 0; i < myListAxe.size(); i++) {

            Object[] objTmp = (Object[]) myListAxe.get(i);
            this.axes.add(new Axe(Integer.parseInt(objTmp[0].toString()), objTmp[1].toString()));
            this.titres.add(objTmp[1].toString());
        }

        this.dataAssociations = new Association[this.comptes.size()][this.axes.size()];

        for (int j = 0; j < this.axes.size(); j++) {

            // on recupere les repartitions pour chaque axe
            SQLTable repTable = base.getTable("REPARTITION_ANALYTIQUE");
            SQLTable repElemTable = base.getTable("REPARTITION_ANALYTIQUE_ELEMENT");
            SQLTable posteTable = base.getTable("POSTE_ANALYTIQUE");

            SQLSelect selRep = new SQLSelect(base);
            selRep.addSelect(repTable.getField("ID"));
            selRep.addSelect(repTable.getField("NOM"));
            selRep.addSelect(posteTable.getField("NOM"));
            selRep.addSelect(repElemTable.getField("TAUX"));

            Where w = new Where(repElemTable.getField("ID_POSTE_ANALYTIQUE"), "=", posteTable.getField("ID"));
            Where w2 = new Where(repElemTable.getField("ID_REPARTITION_ANALYTIQUE"), "=",
                    repTable.getField("ID"));
            Where w3 = new Where(posteTable.getField("ID_AXE_ANALYTIQUE"), "=",
                    ((Axe) this.axes.get(j)).getId());

            selRep.setWhere(w.and(w2).and(w3));
            // selRep.setDistinct(true);
            selRep.addRawOrder("REPARTITION_ANALYTIQUE.ID");

            String reqRep = selRep.asString();
            Object obRep = base.getDataSource().execute(reqRep, new ArrayListHandler());

            List myListRep = (List) obRep;

            if (myListRep.size() != 0) {
                Vector repartition = new Vector();

                repartition
                        .add(new RepartitionAssociation(1, "Indfini", ((Axe) this.axes.get(j)).getId(), ""));
                this.mapRepartition.put(new Integer(1), new Integer(0));

                int valId = 0;
                RepartitionAssociation repTmp = null;

                for (int i = 0; i < myListRep.size(); i++) {
                    Object[] objTmp = (Object[]) myListRep.get(i);

                    if (valId != Integer.parseInt(objTmp[0].toString())) {

                        if (repTmp != null) {
                            repartition.add(repTmp);
                            this.mapRepartition.put(new Integer(Integer.parseInt(objTmp[0].toString())),
                                    new Integer(repartition.size() - 1));
                        }

                        valId = Integer.parseInt(objTmp[0].toString());

                        if (Float.parseFloat(objTmp[3].toString()) > 0.0) {
                            repTmp = new RepartitionAssociation(Integer.parseInt(objTmp[0].toString()),
                                    objTmp[1].toString(), ((Axe) this.axes.get(j)).getId(),
                                    objTmp[2].toString() + ":" + objTmp[3].toString() + "%");
                        } else {
                            repTmp = new RepartitionAssociation(Integer.parseInt(objTmp[0].toString()),
                                    objTmp[1].toString(), ((Axe) this.axes.get(j)).getId(), "");
                        }

                    } else {
                        if (repTmp != null) {
                            if (Float.parseFloat(objTmp[3].toString()) > 0.0) {
                                repTmp.addValPoste(objTmp[2].toString() + ":" + objTmp[3].toString() + "%");
                            }
                        }
                    }
                }
                repartition.add(repTmp);
                this.mapRepartition.put(new Integer(repTmp.getId()), new Integer(repartition.size() - 1));
                this.repartitionsAxe.add(repartition);
            } else {
                Vector repartition = new Vector();

                repartition
                        .add(new RepartitionAssociation(1, "Indfini", ((Axe) this.axes.get(j)).getId(), ""));
                this.mapRepartition.put(new Integer(1), new Integer(0));

                this.repartitionsAxe.add(repartition);
            }

            // on recupere les associations
            // AssociationCompteAnalytiqueSQLElement associationElt = new
            // AssociationCompteAnalytiqueSQLElement();
            SQLSelect selAssoc = new SQLSelect(base);
            SQLTable associationTable = base.getTable("ASSOCIATION_COMPTE_ANALYTIQUE");
            selAssoc.addSelect(associationTable.getField("ID"));
            selAssoc.addSelect(associationTable.getField("ID_COMPTE_PCE"));
            selAssoc.addSelect(associationTable.getField("ID_REPARTITION_ANALYTIQUE"));

            selAssoc.setWhere(associationTable.getField("ID_AXE_ANALYTIQUE"), "=",
                    ((Axe) this.axes.get(j)).getId());

            String reqAssoc = selAssoc.asString();
            Object obAssoc = base.getDataSource().execute(reqAssoc, new ArrayListHandler());

            List myListAssoc = (List) obAssoc;

            if (myListAssoc.size() != 0) {
                Vector assoc = new Vector();

                for (int i = 0; i < myListAssoc.size(); i++) {
                    Object[] objTmp = (Object[]) myListAssoc.get(i);

                    Association assocTmp = new Association(Integer.parseInt(objTmp[0].toString()),
                            Integer.parseInt(objTmp[1].toString()), Integer.parseInt(objTmp[2].toString()));

                    if ((this.mapCompte.get(new Integer(assocTmp.getIdCompte())) != null)
                            && (this.mapRepartition.get(new Integer(assocTmp.getIdRep())) != null)) {

                        this.dataAssociations[Integer.parseInt(this.mapCompte
                                .get(new Integer(assocTmp.getIdCompte())).toString())][j] = assocTmp;
                        assoc.add(assocTmp);
                    }
                }

                this.associations.add(assoc);
            } else {
                this.associations.add(new Vector());
            }
        }
    }
}

From source file:org.openconcerto.erp.core.finance.accounting.model.BalanceModel.java

public void getBalance() {

    // Compte numero -- totalDebit
    Map<Number, Long> mapCompteDebit = new HashMap<Number, Long>();
    Map<Number, Long> mapCompteCredit = new HashMap<Number, Long>();
    Vector<Compte> comptes = new Vector<Compte>();
    this.totalDebitBalance = 0;
    this.totalCreditBalance = 0;

    SQLBase base = ((ComptaPropsConfiguration) Configuration.getInstance()).getSQLBaseSociete();
    SQLTable compteTable = base.getTable("COMPTE_PCE");
    SQLTable ecritureTable = base.getTable("ECRITURE");

    SQLSelect sel = new SQLSelect(base);

    // On recupere le solde des comptes
    sel.addSelect(compteTable.getField("ID"));
    sel.addSelect(ecritureTable.getField("DEBIT"), "SUM");
    sel.addSelect(ecritureTable.getField("CREDIT"), "SUM");
    sel.addSelect(compteTable.getField("NUMERO"));
    sel.setDistinct(true);/*  w  w w.  j  a v a 2 s. c  o  m*/
    sel.setWhere(new Where(compteTable.getField("ID"), "=", ecritureTable.getField("ID_COMPTE_PCE")));
    sel.setWaitPreviousWriteTX(false);

    String req = sel.asString()
            + " GROUP BY \"COMPTE_PCE\".\"ID\",\"COMPTE_PCE\".\"NUMERO\"  ORDER BY \"COMPTE_PCE\".\"NUMERO\"";

    System.out.println(req);

    Object ob = base.getDataSource().execute(req, new ArrayListHandler());

    List myList = (List) ob;

    if (myList.size() != 0) {

        for (int i = 0; i < myList.size(); i++) {

            Object[] tmp = (Object[]) myList.get(i);

            mapCompteDebit.put((Number) tmp[0], Long.parseLong(tmp[1].toString()));
            mapCompteCredit.put((Number) tmp[0], Long.parseLong(tmp[2].toString()));
        }
    }

    // Cration du vecteur balance
    sel = new SQLSelect(base);

    sel.addSelect(compteTable.getKey());
    sel.addSelect(compteTable.getField("NUMERO"));
    sel.addSelect(compteTable.getField("NOM"));

    sel.addRawOrder("\"COMPTE_PCE\".\"NUMERO\"");

    String reqCompte = sel.asString();
    System.out.println(req);

    Object obCompte = base.getDataSource().execute(reqCompte, new ArrayListHandler());

    List myListCompte = (List) obCompte;

    if (myListCompte.size() != 0) {

        for (int i = 0; i < myListCompte.size(); i++) {

            Object[] tmp = (Object[]) myListCompte.get(i);
            System.err.println("Compte " + tmp[1].toString().trim());

            long totalDebit = 0;
            long totalCredit = 0;
            if (mapCompteDebit.get(tmp[0]) != null) {
                totalDebit = Long.parseLong(mapCompteDebit.get(tmp[0]).toString());
            }

            if (mapCompteCredit.get(tmp[0]) != null) {
                totalCredit = Long.parseLong(mapCompteCredit.get(tmp[0]).toString());
            }

            this.totalDebitBalance += totalDebit;
            this.totalCreditBalance += totalCredit;

            for (int j = i + 1; j < (myListCompte.size() - 1); j++) {
                Object[] tmpNext = (Object[]) myListCompte.get(j);
                if (tmpNext[1].toString().trim().startsWith(tmp[1].toString().trim())) {
                    System.err.println("Sous Compte " + tmpNext[1].toString().trim());

                    if (mapCompteDebit.get(tmpNext[0]) != null) {
                        totalDebit += Long.parseLong(mapCompteDebit.get(tmpNext[0]).toString());
                    }

                    if (mapCompteCredit.get(tmpNext[0]) != null) {
                        totalCredit += Long.parseLong(mapCompteCredit.get(tmpNext[0]).toString());
                    }
                } else {
                    break;
                }
            }
            if ((totalDebit != 0.0) || (totalCredit != 0.0)) {
                Compte cpt = new Compte(((Number) tmp[0]).intValue(), tmp[1].toString(), tmp[2].toString(), "",
                        totalDebit, totalCredit);

                comptes.add(cpt);
            }
        }
    }

    this.vecteurCompte = comptes;
    fireTableDataChanged();
}

From source file:org.openconcerto.erp.core.finance.accounting.model.ConsultCompteModel.java

public ConsultCompteModel(Compte cpt) {

    this.compte = cpt;
    this.totalDebit = 0;
    this.totalCredit = 0;

    // Rcupration des critures
    SQLBase base = ((ComptaPropsConfiguration) Configuration.getInstance()).getSQLBaseSociete();
    SQLTable ecritureTable = base.getTable("ECRITURE");
    SQLTable journalTable = base.getTable("JOURNAL");
    SQLTable mouvementTable = base.getTable("MOUVEMENT");

    SQLSelect sel = new SQLSelect(base);
    sel.addSelect(ecritureTable.getField("ID"));
    sel.addSelect(ecritureTable.getField("NOM"));
    sel.addSelect(ecritureTable.getField("ID_MOUVEMENT"));
    sel.addSelect(mouvementTable.getField("NUMERO"));
    sel.addSelect(journalTable.getField("NOM"));
    sel.addSelect(ecritureTable.getField("DATE"));
    sel.addSelect(ecritureTable.getField("DEBIT"));
    sel.addSelect(ecritureTable.getField("CREDIT"));
    sel.addSelect(ecritureTable.getField("VALIDE"));

    Where w = new Where(ecritureTable.getField("ID_COMPTE_PCE"), "=", this.compte.getId());
    Where w2 = new Where(ecritureTable.getField("ID_JOURNAL"), "=", journalTable.getField("ID"));
    Where w3 = new Where(ecritureTable.getField("ID_MOUVEMENT"), "=", mouvementTable.getField("ID"));
    sel.setWhere(w.and(w2).and(w3));/*www .  j  a  v  a 2  s  .c  om*/
    sel.addRawOrder("\"ECRITURE\".\"DATE\"");
    String req = sel.asString();

    Object ob = base.getDataSource().execute(req, new ArrayListHandler());

    List myList = (List) ob;
    System.err.println("Nb ecritures :: " + myList.size() + "  ___  " + req);
    if (myList.size() != 0) {

        this.ecritures = new Vector<Ecriture>();
        for (int i = 0; i < myList.size(); i++) {

            Object[] objTmp = (Object[]) myList.get(i);

            // ID, NOM, ID_MVT, NUM_MVT, JRNL, DATE, DEBIT, CREDIT, VALIDE
            Ecriture ecritureTmp = new Ecriture(((Number) objTmp[0]).intValue(), objTmp[1].toString(),
                    ((Number) objTmp[2]).intValue(), ((Number) objTmp[3]).intValue(), objTmp[4].toString(),
                    (Date) objTmp[5], ((Long) objTmp[6]).longValue(), ((Long) objTmp[7]).longValue(),
                    ((Boolean) objTmp[8]).booleanValue());

            // System.out.println(ecritureTmp.toString());

            this.totalDebit += ((Long) objTmp[6]).longValue();
            this.totalCredit += ((Long) objTmp[7]).longValue();
            this.ecritures.add(ecritureTmp);
        }
    } else {
        this.ecritures = null;
    }

    this.titres = new String[6];
    this.titres[0] = "N mouvement";
    this.titres[1] = "Journal";
    this.titres[2] = "Libell criture";
    this.titres[3] = "Date";
    this.titres[4] = "Dbit";
    this.titres[5] = "Crdit";
}

From source file:org.openconcerto.erp.core.finance.accounting.model.EcrituresModel.java

public EcrituresModel(Compte cpt) {
    this.cpt = cpt;

    SQLBase base = ((ComptaPropsConfiguration) Configuration.getInstance()).getSQLBaseSociete();

    // EcritureSQLElement ecritureElt = new EcritureSQLElement();
    SQLTable ecritureTable = base.getTable("ECRITURE");

    // MouvementSQLElement mvtElt = new MouvementSQLElement();
    SQLTable mvtTable = base.getTable("MOUVEMENT");

    // JournalSQLElement journalElt = new JournalSQLElement();
    SQLTable journalTable = base.getTable("MOUVEMENT");

    SQLSelect selEcritures = new SQLSelect(base);

    selEcritures.addSelect(ecritureTable.getField("ID"));
    selEcritures.addSelect(ecritureTable.getField("NOM"));
    selEcritures.addSelect(mvtTable.getField("ID"));
    selEcritures.addSelect(mvtTable.getField("NUMERO"));
    selEcritures.addSelect(journalTable.getField("NOM"));
    selEcritures.addSelect(ecritureTable.getField("DATE"));
    selEcritures.addSelect(ecritureTable.getField("DEBIT"));
    selEcritures.addSelect(ecritureTable.getField("CREDIT"));
    selEcritures.addSelect(ecritureTable.getField("VALIDE"));

    if (this.cpt != null) {
        Where w = new Where(ecritureTable.getField("ID_COMPTE_PCE"), "=", this.cpt.getId());
        Where w2 = new Where(ecritureTable.getField("ID_MOUVEMENT"), "=", mvtTable.getField("ID"));
        Where w3 = new Where(ecritureTable.getField("ID_JOURNAL"), "=", journalTable.getField("ID"));
        selEcritures.setWhere(w.and(w2).and(w3));
    } else {/*from   w w w.j  ava2s.c  o m*/
        Where w2 = new Where(ecritureTable.getField("ID_MOUVEMENT"), "=", mvtTable.getField("ID"));
        Where w3 = new Where(ecritureTable.getField("ID_JOURNAL"), "=", journalTable.getField("ID"));
        selEcritures.setWhere(w2.and(w3));
    }

    String reqEcriture = selEcritures.asString();
    Object obEcriture = base.getDataSource().execute(reqEcriture, new ArrayListHandler());

    List myListEcriture = (List) obEcriture;

    if (myListEcriture.size() != 0) {

        for (int i = 0; i < myListEcriture.size(); i++) {
            Object[] objTmp = (Object[]) myListEcriture.get(i);
            /*
             * System.out.println(objTmp[0].toString());
             * System.out.println(objTmp[1].toString());
             * System.out.println(objTmp[2].toString());
             * System.out.println(objTmp[3].toString());
             * System.out.println(objTmp[4].toString());
             * System.out.println(objTmp[5].toString());
             * System.out.println(objTmp[6].toString());
             */
            try {
                Ecriture ecritureTmp = new Ecriture(Integer.parseInt(objTmp[0].toString()),
                        objTmp[1].toString(), Integer.parseInt(objTmp[2].toString()),
                        Integer.parseInt(objTmp[3].toString()), objTmp[4].toString(), (Date) objTmp[5],
                        ((Long) objTmp[6]).longValue(), ((Long) objTmp[7]).longValue(),
                        Boolean.valueOf(objTmp[8].toString()).booleanValue());
                this.ecritures.add(ecritureTmp);
                System.out.println(ecritureTmp.toString());
            } catch (Exception e) {
                System.out.println("Erreur ecriture ID :: " + Integer.parseInt(objTmp[0].toString()));
            }

        }
    } else {
        System.out.println("Aucune ecriture");
    }

    this.titres.add("Mouvement");
    this.titres.add("Journal");
    this.titres.add("Libell");

    this.titres.add("Date");

    this.titres.add("Dbit");
    this.titres.add("Crdit");
}