Przejdź do głównej treści

Dodatkowe zakładki DEPRECATED

Ready_™ Developer TeamMniej niż 1 minutazakładki

Uwaga!!!

Niniejszy artykuł jest niewykorzystywany.

Nie należy wprowadzać w nim zmian.

Właściwy artykuł: components/additional-tab/README.md

Dodatkowe zakładki

System eDokumenty umożliwia dodawanie customowych zakładek do kartotek:

  • sprawy
  • kontrahenta
  • urządzenia
  • dokumentu
  • modułu ewidencji
  • pracownika
  • produktu
  • profilu użytkownika

Definicje zakładek znajdują się w plikach XML znajdujących się w folderze public_html/apps/edokumenty/var/tpl/tabs. W definicji zakładki wykorzystuje się raporty.

Pliki XML definicji zakładek

Pliki xml-owe znajdują się w public_html/apps/edokumenty/var/tpl/tabs/

Na przykład:

public_html/apps/edokumenty/var/tpl/tabs/contact_tpl.xml

Nazwy obsługiwanych plików xml dla:

  • sprawy - process_tpl.xml
  • kontrahenta - contact_tpl.xml
  • urządzenia - device_tpl.xml
  • dokumentu - document_tpl.xml
  • ewidencji - evidence_tpl.xml
  • pracownik - user_tpl.xml
  • produkt - product_tpl.xml
  • profil użytkownika - user_profile_tpl.xml

Dodanie zakładki do kartoteki

W celu dodania dodatkowej zakładki do jednej z wyżej wymienionych kartotek należy utworzyć raport, który będzie treścią tej zakładki. Następnie należy wyedytować odpowiedni plik konfiguracyjny i dodać do sekcji tabs sekcję zakładki tab. Przykładową strukturę zakładki przedstawia poniższy kod

<?xml version="1.0" encoding="UTF-8"?>
<tabs>    
    <tab label="" rep_id="" grp_id="" def_tab="1" alwaysVisible="1" forceOpen="1" prior="0" showFilters="0">
        <buttons>
            <button>
                <id>
                    new
                </id>
                <label>
                    Nowa
                </label>
                <dscrpt>
                    Nowa
                </dscrpt>
                <onclick>                
                    App.openDialogByCls({CLSNAM}, {KEYVAL}, ({afterSubmit:'{AFTER_SUBMIT}', mode:'new'}).toJSONString())
                </onclick>
                <icon>                
                    new.png
                </icon>
            </button>
            <button>
                <id>
                    edit
                </id>
                <label>
                    Edycja
                </label>
                <dscrpt>
                    Edycja
                </dscrpt>
                <onclick>
                    App.openDialogByCls({CLSNAM}, {KEYVAL}, ({afterSubmit:'{AFTER_SUBMIT}', mode:'edit'}).toJSONString())
                </onclick>
                <icon>
                    edit.png
                </icon>
            </button>
            <button>
                <id>
                    delete
                </id>
                <label>
                    Usuń
                </label>
                <dscrpt>
                    Usuń
                </dscrpt>
                <onclick>
                    App.openDialogByCls({CLSNAM}, {KEYVAL}, ({afterSubmit:'{AFTER_SUBMIT}', mode:'del'}).toJSONString())
                </onclick>
                <icon>
                    delete.png
                </icon>
            </button>
            <separator/>       
            <button>
                <custom_widget>
                    3
                </custom_widget>
            </button>    
            <separator>
                <button>
                    <id>xls</id>
                    <label />
                    <dscrpt>XLS</dscrpt>
                    <onclick>{EXPORT_TO_XLS}</onclick>
                    <icon>xls.png</icon>
                </button>
                <button>
                    <id>ref</id>
                    <label>Odśwież</label>
                    <dscrpt>Odśwież</dscrpt>
                    <onclick>{AFTER_SUBMIT}</onclick>
                    <icon>refresh.png</icon>
                </button>
            </separator>
        </buttons>
    </tab>    
</tabs>

Parametry definicji modułu

Parametry zakładki dla formularza dokumentu

  • dctpid - (identyfikator typu dokumentu) zakładka pojawi się tylko w dokumentach o wskazanym typie dokumentu np. dctpid = 1. Brak tego parametru spowoduje dodanie zakładki dla wszystkich typów. Można też podać więcej identyfikatorów typu po przecinku (np. dctpid="1,3,5,6,9").

  • dcctid - (identyfikator kategorii dokumentu) zakładka pojawi się tylko w dokumentach o wskazanym kategorii dokumentu np. dcctid = 2. Brak tego parametru spowoduje dodanie zakładki dla wszystkich kategorii. Można też podać więcej identyfikatorów kategorii po przecinku (np. dcctid="1,3,5,6,9").

Parametry zakładki dla kartoteki sprawy

  • dos_id - zakładka dla sprawy dodatkowo przyjmuje parametr dos_id (identyfikator teczki z wykazu akt). Zakładka pojawi się tylko w sprawach o wskazanym identyfikatorze teczki np. dos_id = 1. Brak tego parametru spowoduje wyświetlanie zakładki na kartotekach wszystkich spraw. Można też podać więcej identyfikatorów teczek po przecinku (np. dos_id="1,3,5,6,9").

Przycisk jako Custom Widget

Istnieje możliwość zadeklarowania przyciski jako custom widget. (Szczegółowe informacje odnośnie mechanizmów CustomWidget). Przycisk musi zawierać informację w postaci taga custom_widget o wartości będącej identyfikatorem danego widgeta (kolumna cswgid w tabeli custom_widgets).

Przykładowy kod przycisku opartego o CustomWidget przedstawia się następująco:

<button>
    <custom_widget>4</custom_widget>
</button>

Własny widok w module Zestawienie

W domyślnej formie moduł Zestawienie zawiera portlety, na których można wyświetlić predefiniowane typy widgetów.

Czasami jednak taki widok nie jest wystarczający, (np. istnieje potrzeba widoku podsumowania bez możliwości edycji (zmiany położenia etc)).

Dodanie takiego widoku można dokonać poprzez mechanizm dodatkowych zakładek (modułów) oraz szablon xml welcome_tpl.xml. Domyślnie szablon nie zawiera żadnych zakładek, co umożliwia wyświetlenie domyślnego widoku.

W szablonie tym można definiować zakładki na tej samej zasadzie, jak wcześniej omówiono w tym artykule.

Uwaga!

W przypadku dodania co najmniej 1 zakładki, do której zalogowany pracownik ma prawo, to wtedy wyświetli się własny widok zamiast domyślnego zestawienia portletów.

Wskazówka

W przypadku braku szablonu xml welcome_tpl.xml w lokalizacji var\tpl\tabs należy go skopiować z var\tpl_default\tabs.