CIB JCoMod technical documentation (EN)

5. Quick start

5.7. JCoMod Wrapper example for CIB dialog browser: Job for displaying and editing an HTML page with ruleset and CSV files

import com.cib.comod.jobs.*;
import com.cib.comod.jobs.event.*;

public boolean doDialogJob() {
JCibDialogJob t_Job = new JCibDialogJob();
    t_Job.initialize();
    if (!t_Job.isInitialized()) {
        System.out.println("Fehler beim Initialisieren des JCibDialogJob");
        t_Job.dispose(); // Resourcen d. Jobs freigeben (seit jcomod 2.0)
        return false;
    }

    // Properties setzen
    t_Job.setProperty(ICibDialogJob.PROPERTY_INPUTFILE, "cibdemo.htm");
    t_Job.setProperty(ICibDialogJob.PROPERTY_RULFILE, "cibdemo.rul");
    t_Job.setProperty(ICibDialogJob.PROPERTY_DATAFILE, "cibdemo.csv"); 
    t_Job.setProperty(ICibDialogJob.PROPERTY_WORKSPACE, "d:\\test");

    // Callbacks setzen
    t_Job.executeFunction
    (ICibDialogJob.FUNCTION_ACTIVATECALLBACK, "LeaveCallback");
    t_Job.executeFunction
    (ICibDialogJob.FUNCTION_ACTIVATECALLBACK, "EnterCallback");

    // Callbackhandler registrieren und Funktionen festlegen
    t_Job.addCibDialogCallbackListener(new JCibDialogCallbackAdapter() {
        public void callbackDialogOnLeave() {
            System.out.println("callbackDialogOnLeave(): Leaving Control
                  "+e.Control+"["+e.Index+"] \""+e.Value
                  +"\", next Control "+e.NextControl+"["+e.NextIndex+"]\n");
        }
        public void callbackDialogOnEnter() {
           System.out.println("callbackDialogOnEnter(): Entering Control
              "+e.Control+"["+e.Index+"] \""+e.Value +"\", Direction=
              "+e.TabDirection+"\n");
       }
    } // Listener
    ); //new schließen

    //Job ausführen
    t_Job.execute();

    //Fehlerbehandlung
    int t_Error = 
        ((Integer)t_Job.getProperty(ICibDialogJob.PROPERTY_ERROR)).intValue();
    if (t_Error == 0) {
        // gedrückten Button ermitteln
        String t_Button = (String)t_Job.getProperty
                            (ICibDialogJob.PROPERTY_PRESSEDBUTTON);

        if (t_Button.equals("ANSEHEN")) {
            //starte einen CIB view
            JCibViewJob t_ViewJob = new JCibViewJob();
            t_ViewJob.initialize();
            if (!t_ViewJob.isInitialized()) {
             System.out.println("Fehler beim Initialisieren des JCibViewJob");
             t_ViewJob.dispose(); // Resourcen d. Jobs freigeben (seit jcomod 2.0)
             t_Job.dispose();
             return false;
            }
            t_ViewJob.setProperty(
                  ICibViewJob.PROPERTY_INPUTFILE, "test.rtf");
            t_ViewJob.execute();
            String t_Errortext = (String)
            ViewJob.getProperty(ICibViewJob.PROPERTY_ERRORTEXT);
            System.out.println("Fehler beim Ausführen: "+t_Error+" "+t_Errortext);
            ViewJob.dispose(); // Resourcen d. Jobs freigeben (seit jcomod 2.0)
            t_Job.dispose();
            return false;
        }
    } else {
        // Fehler beim Ausführen des Jobs
        String t_Errortext = (String)
            t_Job.getProperty(ICibDialogJob.PROPERTY_ERRORTEXT);
        System.out.println("Fehler beim Ausführen: "+t_Error+" "+t_Errortext);
        t_Job.dispose(); // Resourcen d. Jobs freigeben (seit jcomod 2.0)
        return false;
    }
    t_Job.dispose(); // Resourcen des Jobs freigeben (seit jcomod 2.0)
    return true;
}