Ces quatre première sources sont fournies
public class TableTestLISTE extends AbstractFieldsDef { public TableTestLISTE(Sql sql, Vue vue) { super(sql,vue); } public Object adapteField(Vue vue){ t_table="table_test"; //Nom de la table t_nbLigne=28; //Nombre de ligne à afficher t_filtre=null; v_filtre=null; t_index=new String[]{"c_code"}; //Order de la table switch (vue){ case F3: default:{ addSqlField("c_code" , 2, Fma.NUMGRAS, "Code"); //1ere Colonne et 1er titre de colonne addSqlField("c_libe" , 30, Fma.FIELD, "Libelle"); //2eme Colonne et 2eme titre de colonne break; } } return this; } }
public class TableTestFICHE extends AbstractFieldsDef { public TableTestFICHE(Sql sql, Vue vue) { super(sql, vue); } public Object adapteField(Vue vue){ t_table="table_test"; //Nom de la table t_nbLigne=1; t_filtre=null; v_filtre=null; t_index=new String[]{"c_code"}; //Order de la table switch (vue){ default:{ addSqlField("c_code" , 2, Fma.F2, "Code", "", Edit.F2, ""); //1er Edit et 1er Libellé addSqlField("c_libe" , 30, Fma.FIELD, "Libelle", "", Edit.TEXT, ""); //2eme Edit et 2eme Libellé break;} } return this; } }
public class TableTestSAISIE extends AbstractDbFiche { private static final long serialVersionUID = 1L; // Déclaration des composants JTextDb lcode,llibe; // Les Labels de la fiche JTextDbF2 code=null; //1er Edit JTextDb libe=null; //2eme Edit public TableTestSAISIE(Sql sql) { super(sql); initStart(); } //////////////////// // Initialisation // //////////////////// // Création des composants public void initCreateLE() { // Les labels lcode=new JTextDb(); llibe=new JTextDb(); // Les Edits code =new JTextDbF2(new TableTestVUE(sql, "", Vue.F2)); //Une Combobox de choix Pour la saisie du code libe =new JTextDb(); } // Mappage des composants public void initMapLE() { // Les labels ccs.mapL(this, lcode, 0); ccs.mapL(this, llibe, 1); // Les Edits ccs.mapE(this, code, 0); ccs.mapE(this, libe, 1); } //A noter pas de panel à créer, le Template le déssine automatiquement en fonction de la Définition de structure //protected void initGuiLE(){} public void initFocus() { setDefFocus(code); } /////////////////////////////////////// // Liaison saisie rapide Liste/Fiche // /////////////////////////////////////// public void setEditableColumns(FicheIEditableColumns fe, ListeIEditableColumn fl) { libe.setEditableColumns(fe, fl); // Le libellé est éditable dans la liste } public void fireEditableColumnUpdate(String nameField, Object value) { libe.fireEditableColumnUpdate(nameField, value); // Le libellé est éditable dans la liste } //////////////////////// // Contrôle de saisie // //////////////////////// public void setBaseListener() { // La clé dindex ccs.addF2Listener(code, Ccs.NEWCODEF2); ccs.addF2Listener(code, Ccs.CONSULTF2); // La fiche } public void fireBaseListener(JComponent jc){ // La clé dindex if (jc==code){ if (sql.isModeMovable()){ ccs.fireT(jc, Ccs.CONSULTF2); } if (sql.isModeAppendUpdated()||sql.isModeAppend()){ ccs.fireT(jc, Ccs.NEWCODEF2); } } // La fiche } protected void fireContextualRange(JComponent jc) {} protected void updateDependant(JComponent jc) {} protected void updateContextualRangeAndEnable(JComponent jc) {} public void setDependants() {} ////////////////////////// // Adaptation dynamique // ////////////////////////// public void loadEAdapteGuiLE() {} }
public class TableTestVUE extends AbstractVUE { private static final long serialVersionUID = 1L; public TableTestVUE(Sql sql, String t_seek, Vue vue) { super(sql, t_seek, vue); } public AbstractDbListe getDbListe() { AbstractDbListe ret=null; adapteJoin(sqlListe); ret=new ListeRecno(sqlListe); //Branchement de la liste standard en fonction le la Définition de la liste return ret; } public AbstractDbFiche getDbFiche(Vue vue) { AbstractDbFiche ret=null; sqlFiche.t_AccesMode=Sql.t_AccesModeRecno; adapteJoin(sqlFiche); ret=new TableTestSAISIE(sqlFiche); //Branchement de la saisie return ret; } public AbstractFieldsDef getFieldsDefEcran(Vue vue) { AbstractFieldsDef ret=null; ret=new TableTestFICHE(sqlFiche, vue); //Définition de la table return ret; } public AbstractFieldsDef getFieldsDefListe(Vue vue) { AbstractFieldsDef ret=null; ret=new TableTestLISTE(sqlListe, vue); //Branchement de la liste return ret; } public AbstractFieldsDef getFieldsDefPrint(Vue vue) { AbstractFieldsDef ret=null; return ret; } public AbstractFieldsDef getFieldsDefRupture(Vue vue) { AbstractFieldsDef ret=null; return ret; } public void adapteJoin(Sql sql){ } }
Consulter la documentation générale, Section Template applicatif
Pour finir, brancher sa table ...