| Version 38 (modified by mfurmankiewicz, 8 years ago) |
|---|
Wstrzykiwanie kolumn
Aby dodać do listy np. klientów nowe kolumny wyświetlające informacje których standardowo tam nie ma (np. graficzny status klienta, kwotę faktur sprzedaży itp) należy plik custom_list_fields.xml z definicją kolumny umieścić w katalogu apps/edokumenty/var/tpl
Przykładowy plik jest umieszczony w katalogu apps/edokumenty/var/tpl_default/custom_list_fields.xml_default - można go skopiować do tpl jednocześnie usuwając z nazwy rozszerzenia słowo _default.
UWAGI
Parametr searchable nie jest na chwilę obecną obsługiwany. Jego definicji powinna wyglądać jako:
<searchable>1</searchable>
Patrz na wykaz list, które obsługują wyszukiwanie (na dól).
Wstrzykiwanie kolumn do listy klientów
Edycja pliku custom_list_fields.xml.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<ContactsList>
<cecha_1>
<name>Cecha 1</name>
<sql>SELECT ftopnm FROM features_opt_view WHERE featid = 1 AND tblnam = 'contacts' AND tbl_id = contid</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_1>
</ContactsList>
</data>
Wstrzykiwanie kolumn do listy uczestników kampanii
Edycja pliku custom_list_fields.xml.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<CampaignParticipantsList>
<cecha_1>
<name>Cecha 1</name>
<sql>SELECT ftopnm FROM features_opt_view WHERE featid = 1 AND tblnam = 'contacts' AND tbl_id = contid</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_1>
</CampaignParticipantsList>
</data>
Wstrzykiwanie kolumn do listy dokumentów
Postępujemy podobnie jak w przypadku listy klientów. Klucz główny na liście to doc_id. Dostępne listy to:
| Nazwa listy (tagu XML) | Lista | Uwagi |
| DocumentsList | lista dokumentów w module Dokumenty | Alias na kolumny z głównego zapytania to doc czyli np. wstawiając kolumnę z vatnote robimy SELECT v.doc_id FROM vatnote AS v WHERE v.doc_id = doc.doc_id |
| ProcessDocumentsList | lista dokumentów na kartotece sprawy | Alias na kolumny z głównego zapytania to doc czyli np. wstawiając kolumnę z vatnote robimy SELECT v.doc_id FROM vatnote AS v WHERE v.doc_id = doc.doc_id |
| ClientDocumentsList | lista dokumentów na kartotece kontrahenta | Alias na kolumny z głównego zapytania to doc czyli np. wstawiając kolumnę z vatnote robimy SELECT v.doc_id FROM vatnote AS v WHERE v.doc_id = doc.doc_id |
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<DocumentsList>
<cecha_1>
<name>Cecha 1</name>
<sql>SELECT ftopnm FROM features_opt_view WHERE featid = 1 AND tblnam = 'depository' AND tbl_id = depoid</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
</cecha_1>
</DocumentsList>
</data>
Od wersji 5.0.162 dostępna jest rozszerzona konfiguracja. ID kolumny (w przykłądzie poniżej kto_dodal2) nie może mieć mniej niż 7 znaków (aby uniknąć konfliktów z wbudowanymi kolumnami).
<DocumentsList>
<join_definition id="aqq1">
<sql>select usrnam as kto_dodal, usr_id as aqq1_usr_id from users</sql>
<join_statement>doc.adduid = aqq1_usr_id</join_statement>
</join_definition>
<kto_dodal join_definition="aqq1">
<name>Kto dodał</name>
<css>width:100px;</css>
<tooltip/>
<hidden />
</kto_dodal>
</DocumentsList>
Wstrzykiwanie kolumn do listy produktów
Postępujemy podobnie jak w przypadku listy klientów.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<ProductsList>
<cecha_1>
<name>Cecha 1</name>
<sql>SELECT ftopnm FROM features_opt_view WHERE featid = 1 AND tblnam = 'depository' AND tbl_id = depoid</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_1>
</ProductsList>
</data>
*Od wersji 5.0.241, 5.2.31 obsługuje parametr searchable.
Lista prosta (występująca przy wyszukiwaniu np. dodaj zbiorczo) produktów
<?xml version="1.0" encoding="UTF-8"?>
<data>
<SimpleProductsList>
<cecha_1>
<name>Cecha 1</name>
<sql>SELECT ftopnm FROM features_opt_view WHERE featid = 1 AND tblnam = 'depository' AND tbl_id = depoid</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_1>
</SimpleProductsList>
</data>
Wstrzykiwanie kolumn do listy urządzeń
Postępujemy podobnie jak w przypadku listy klientów.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<DevicesList>
<cecha_1>
<name>Cecha 1</name>
<sql>SELECT ftopnm FROM features_opt_view WHERE featid = 1 AND tblnam = 'depository' AND tbl_id = depoid</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_1>
</DevicesList>
</data>
Wstrzykiwanie kolumn do listy spraw
Edycja pliku custom_list_fields.xml.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<ProcessesList>
<cecha_1>
<name>Cecha 1</name>
<sql>SELECT ftopnm FROM features_opt_view WHERE featid = 17 AND tblnam = 'processes' AND tbl_id = prc_id</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_1>
</ProcessesList>
</data>
Wstrzykiwanie kolumn do listy osób kontaktowych
Edycja pliku custom_list_fields.xml.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<ContactPersonsList>
<cecha_1>
<name>Cecha 1</name>
<sql>SELECT copeid||'-'||bcrdid</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_1>
</ContactPersonsList>
</data>
- zapytanie korzysta z widoku business_card_view toteż nasze podzapytanie może korzystać z wszystkich kolumn z tego widoku
Wstrzykiwanie kolumn do listy spraw windykacyjnych
Edycja pliku custom_list_fields.xml.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<VindicationList>
<cecha_2>
<name>Cecha 2</name>
<sql>SELECT 666</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_2>
</VindicationList>
</data>
Wstrzykiwanie kolumn do listy kosztów podróży w dokumencie delegacji
Edycja pliku custom_list_fields.xml.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<DelegationTravelCostsList>
<cecha_2>
<name>Cecha 1</name>
<sql>SELECT 1</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_2>
</DelegationTravelCostsList>
</data>
Wstrzykiwanie kolumn do listy kosztów na fakturze Kontekst wykonania listy to widok vatnote_costs_view
Edycja pliku custom_list_fields.xml.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<VatCostsList>
<cecha_2>
<name>Cecha kosztu</name>
<sql>SELECT data__ FROM
vatnote_costs vc
INNER JOIN features_text_view ftv ON ftv.tbl_id = vc.vtcoid AND ftv.featid = 12
WHERE vc.vtcoid = vatnote_costs_view.vtcoid</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_2>
</VatCostsList>
</data>
W przypadku listy produktów na formularzach dokumentów lub w sprawie widokiem na którym bazuje wyświetlana lista to fk_elements_view. Wszystkie przykłady dotyczące listy produktów wyświetlają dodatkową kolumnę Opis produktu pobraną z cennika (depository).
Dostępne listy to:
| Nazwa listy (tagu XML) | Lista | Uwagi |
| FKElementsProcessList | lista produktów w sprawie | możliwość zdefiniowania wielu list w zależności od atrybutów dos_id lub dsexid. Dla przykładu - aby wyświetlić dodatkowe kolumny w liście pozycji w sprawie tylko dla określonej teczki (dsexid) definicja taga powinna wyglądać następująco <FKElementsProcessList dsexid="3". W przypadku atrybutu dos_id należy podmienić w przykładzie dsexid na dos_id i podać odpowiednią wartość. Obecnie obsługiwane są tylko te 2 atrybuty. |
| FKElementsVatNoteList | lista produktów na fakturze | |
| FKElementsWZList | lista produktów na wydaniu zewnętrznym | |
| FKElementsPZList | lista produktów na przyjęciu zewnętrznym | |
| FKElementsOrderList | lista produktów na zamówieniu (ZW oraz ZO) | |
| FKElementsOfferList | lista produktów na ofercie | |
| FKElementsCustomDocumentList | lista produktów na dokumecie customowych (dotyczy wszystkich) | |
| FKElementsDemandList | lista produktów na zapotrzebowaniu | |
| FKElementsOrderCompleteList | lista produktów na kompletacji w fakturze | Obsługuje parametr searchable |
Przykład: Wstrzykiwanie kolumn do listy produktów w sprawie
Edycja pliku custom_list_fields.xml.
Przykład:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<FKElementsProcessList>
<cecha_1>
<name>Opis produktu</name>
<sql>SELECT dscrpt FROM depository WHERE depoid = fk_elements_view.depoid</sql>
<css>width:100px;</css>
<tooltip />
<hidden />
<searchable />
</cecha_1>
</FKElementsProcessList>
</data>
Dla pozostałych typów list produktów należy zmienić nazwę tagu FKElementsProcessList na wybraną listę.
Wstrzykiwanie kolumn do listy w dziennikach
Obsługiwane typu dzienników w których można wstrzyknąć dodatkowe kolumny to:
| Nazwa listy (tagu XML) | Lista | Uwagi | Obsługuje wyszukiwanie |
| ARegOfPapersList | Dziennik korespondencji | Nazwa tabeli w bazie to regofpapers (kontekst: ppr) | Tak |
| ARegOfVatNotesList | Dziennik faktur | Nazwa tabeli w bazie to regofvatnotes | Tak |
| ProcessesList | Moduł Sprawy | Kontekst: processes_view | Tak |
