Orsoft Doku
Dokumentace a nápověda pro IS Orsoft Open

Poslední aktivita

Pro možnost přidat do editačního programu Adresář nebo Subjekty údaje z aktivit existuje metoda ohaktDao.getPoslAktivita. Pomocí této metody použité v groovy makru pohledu lze podat aktivitu vyfiltrovanou dle požadovaných parametrů s max. nebo min. hodnotou datumu (poslední nebo první aktivitu). Parametry pro filtr i název datumového atributu pro hledání min./max. hodnoty lze zadat v parametrech metody.

Postup přidání atributu z Aktivity do pohledu

1) Vytvoříme vlastní verzi pohledu, kam přidáme nově požadované položky, např. bychom chtěli přidat tyto položky:

2) Do pohledu přidáme požadovaná pole a pojmenujeme je:

3) Pro naplnění položek připojíme k pohledu Groovy makro, v tomto případě bude vypadat takto:

    import cz.ortex.groovy.GroovyBrowsePar;
    import cz.ortex.util.o0.O0Data;
    import cz.ortex.util.o0.O0Session;
    import cz.ortex.util.o0.AppContext;
    import cz.ortex.model.Ohakt;
    import cz.ortex.model.O6a;
    import cz.ortex.apidao.oh1.crm.OhaktDao;
 
    GroovyBrowsePar editUvod(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel) {
      //zde vypiste kod
      return naplnGroovyBrowsePar(entity, dotahovane, groovyBrowsePar, o0session, browsePanel);
    }

    GroovyBrowsePar validate(Object entity, O0Data dotahovane, String fieldName, Object fieldValue, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel) {
      //zde vypiste kod
    }

    GroovyBrowsePar noEditDetail(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel) {
      //zde vypiste kod
      return naplnGroovyBrowsePar(entity, dotahovane, groovyBrowsePar, o0session, browsePanel);
    }

    GroovyBrowsePar kontrolaVeta(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel) {
      //zde vypiste kod
    }

    String getPgmVars(Object entity, Object dotahovane) {
      //zde vypiste kod
    }

    GroovyBrowsePar naplnGroovyBrowsePar(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel) {
      HashMap// componentValues = new HashMap();

      Date poDatum = doctiZaFirmuPoDatum(entity , dotahovane, groovyBrowsePar, o0session, browsePanel);
      String predmet = doctiZaFirmuPredmet(entity , dotahovane, groovyBrowsePar, o0session, browsePanel);
      componentValues.put("zaFirmuPoDatum", poDatum);
      componentValues.put("zaFirmuPredmet", predmet);

      poDatum = doctiMojeZaFirmuPoDatum(entity , dotahovane, groovyBrowsePar, o0session, browsePanel);
      predmet = doctiMojeZaFirmuPredmet(entity , dotahovane, groovyBrowsePar, o0session, browsePanel);
      componentValues.put("mojeZaFirmuPoDatum", poDatum);
      componentValues.put("mojeZaFirmuPredmet", predmet);

      poDatum = doctiZaPobockuPoDatum(entity , dotahovane, groovyBrowsePar, o0session, browsePanel);
      predmet = doctiZaPobockuPredmet(entity , dotahovane, groovyBrowsePar, o0session, browsePanel);
      componentValues.put("zaPobockuPoDatum", poDatum);
      componentValues.put("zaPobockuPredmet", predmet);

      poDatum = doctiSchuzkaZaFirmuPoDatum(entity , dotahovane, groovyBrowsePar, o0session, browsePanel);
      predmet = doctiSchuzkaZaFirmuPredmet(entity , dotahovane, groovyBrowsePar, o0session, browsePanel);
      componentValues.put("schuzkaZaFirmuPoDatum", poDatum);
      componentValues.put("schuzkaZaFirmuPredmet", predmet);

      groovyBrowsePar.setComponentValues(componentValues);
      return groovyBrowsePar;   
    }

    Date doctiZaFirmuPoDatum(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel)  {
      Date poDatum = null;
      HashMap// filtrKeysValues = new HashMap//();
      filtrKeysValues.put("o6a.dkaNr", ((O6a)entity).getDkaNr());   // za firmu
      Ohakt poslAkt = doctiPoslAkt(entity , dotahovane, groovyBrowsePar, o0session, browsePanel, "poDatum", true, filtrKeysValues);
      if (poslAkt != null) {poDatum = poslAkt.getPoDatum();}
      return poDatum;
    }

    String doctiZaFirmuPredmet(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel)  {
      String predmet = " ";
      HashMap// filtrKeysValues = new HashMap//();
      filtrKeysValues.put("o6a.dkaNr", ((O6a)entity).getDkaNr());   // za firmu
      Ohakt poslAkt = doctiPoslAkt(entity , dotahovane, groovyBrowsePar, o0session, browsePanel, "poDatum", true, filtrKeysValues);
      if (poslAkt != null) {predmet = poslAkt.getPredmet();}
      return predmet;
    }

    Date doctiMojeZaFirmuPoDatum(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel)  {
      Date poDatum = null;
      HashMap// filtrKeysValues = new HashMap//();
      filtrKeysValues.put("o6a.dkaNr", ((O6a)entity).getDkaNr());   // za firmu
      filtrKeysValues.put("osobyByIdpkOsoby.oscis", o0session.getUserNumber());   // moje
      Ohakt poslAkt = doctiPoslAkt(entity , dotahovane, groovyBrowsePar, o0session, browsePanel, "poDatum", true, filtrKeysValues);
      if (poslAkt != null) {poDatum = poslAkt.getPoDatum();}
      return poDatum;
    }

    String doctiMojeZaFirmuPredmet(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel)  {
      String predmet = " ";
      HashMap// filtrKeysValues = new HashMap//();
      filtrKeysValues.put("o6a.dkaNr", ((O6a)entity).getDkaNr());   // za firmu
      filtrKeysValues.put("osobyByIdpkOsoby.oscis", o0session.getUserNumber());   // moje
      Ohakt poslAkt = doctiPoslAkt(entity , dotahovane, groovyBrowsePar, o0session, browsePanel, "poDatum", true, filtrKeysValues);
      if (poslAkt != null) {predmet = poslAkt.getPredmet();}
      return predmet;
    }

    Date doctiZaPobockuPoDatum(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel)  {
      Date poDatum = null;
      HashMap// filtrKeysValues = new HashMap//();
      filtrKeysValues.put("CPobockaFirmy.o6a.dkaNr", ((O6a)entity).getDkaNr());   // za firmu
      Ohakt poslAkt = doctiPoslAkt(entity , dotahovane, groovyBrowsePar, o0session, browsePanel, "poDatum", true, filtrKeysValues);
      if (poslAkt != null) {poDatum = poslAkt.getPoDatum();}
      return poDatum;
    }

    String doctiZaPobockuPredmet(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel)  {
      String predmet = " ";
      HashMap// filtrKeysValues = new HashMap//();
      filtrKeysValues.put("CPobockaFirmy.o6a.dkaNr", ((O6a)entity).getDkaNr());   // za firmu
      Ohakt poslAkt = doctiPoslAkt(entity , dotahovane, groovyBrowsePar, o0session, browsePanel, "poDatum", true, filtrKeysValues);
      if (poslAkt != null) {predmet = poslAkt.getPredmet();}
      return predmet;
    }

    Date doctiSchuzkaZaFirmuPoDatum(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel)  {
      Date poDatum = null;
      HashMap// filtrKeysValues = new HashMap//();
      filtrKeysValues.put("o6a.dkaNr", ((O6a)entity).getDkaNr());   // za firmu
      filtrKeysValues.put("o0ciselnikByIdpkOhaktdruh.kodaCiseln", "SCH");   // schůzka
      Ohakt poslAkt = doctiPoslAkt(entity , dotahovane, groovyBrowsePar, o0session, browsePanel, "poDatum", true, filtrKeysValues);
      if (poslAkt != null) {poDatum = poslAkt.getPoDatum();}
      return poDatum;
    }

    String doctiSchuzkaZaFirmuPredmet(Object entity, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel)  {
      String predmet = " ";
      HashMap// filtrKeysValues = new HashMap//();
      filtrKeysValues.put("o6a.dkaNr", ((O6a)entity).getDkaNr());   // za firmu
      filtrKeysValues.put("o0ciselnikByIdpkOhaktdruh.kodaCiseln", "SCH");   // schůzka
      Ohakt poslAkt = doctiPoslAkt(entity , dotahovane, groovyBrowsePar, o0session, browsePanel, "poDatum", true, filtrKeysValues);
      if (poslAkt != null) {predmet = poslAkt.getPredmet();}
      return predmet;
    }

    Ohakt doctiPoslAkt(O6a o6a, O0Data dotahovane, GroovyBrowsePar groovyBrowsePar, O0Session o0session, Object browsePanel, String kritDatumAtrib, Boolean kritDatumMax, HashMap// filtrKeysValues)  {
      Ohakt ohakt = null;
      if (o6a != null && o6a.getDkaNr() != null) {
        OhaktDao dao = (OhaktDao) AppContext.getDaoService("ohaktDao");
        if (dao != null) {
         ohakt = dao.getPoslAktivita(kritDatumAtrib, kritDatumMax, filtrKeysValues);
        }
      }
      return ohakt; 
    }