Ukrywanie cen oraz wartości towarów w kafelku towary i na konkretnych dokumentach
W aplikacji została wprowadzona możliwość ukrywania cen i rabatów w kafelku Towary, za który odpowiada parametr [PricesOnItemsInvisible] (jest on opisany TUTAJ). Jeżeli opcja ta zostanie włączona, wówczas w aplikacji zostaną ukryte następujące informacje:
Na karcie towaru ukryta informacja na temat cen towaru, jak na poniższym rysunku:
Ukryta informacja o cennikach na karcie towaru
Na liście oferowanych towarów ukryta informacja o cenach poszczególnych towarów, jak na poniższym rysunku:
Ukryta informacja o cenach na liście towarów
W celu ukrycia cen na poszczególnych dokumentach należy w funkcji SyncFramework.GetNumerators (nazwa_bazy -> Programmability -> Functions -> Table-valued Functions -> SyncFramework.GetNumerators) odnaleźć poniższy fragment i w nawiasie umieścić mob.Dok_GIDTyp dokumentu, na którym mają zostać ukryte ceny.
Przykład
CASE
WHEN mob.Dok_GIDTyp IN (9344, 8832) THEN (SELECT CONVERT(NVARCHAR(100),RTRIM(CASE WHEN Ope_WidziCenyZakupu = 1 THEN 0 ELSE 1 END)) FROM CDN.FrmStruktura JOIN CDN.FrmLinki ON FrL_GrOTyp=FrS_GIDTyp AND FrL_GrONumer=FrS_Id AND FrL_GIDTyp=128 JOIN CDN.OpeKarty ON FrL_GIDNumer = Ope_GIDNUmer WHERE FRS_ID = @UserCenterId)
WHEN mob.Dok_GIDTyp IN (4700) /*ZSR*/ THEN 1
ELSE 0
END AS IsPricesInvisible,
Edycja funkcji spowoduje:
ukrycie cen i rabatów na kalkulacji dla danego dokumentu,
ukrycie cen i rabatów w Koszyku dla danego typu dokumentu,
ukrycie informacji o rabacie, marży na Nagłówku dla danego typu dokumentu,
ukrycie wartości na transakcjach historycznych dla danego typu dokumentu,
ukrycie wartości na liście dokumentów dla dokumentów niepotwierdzonych dotyczących danego typu dokumentu,
ukrycie wartości dla dokumentów niepotwierdzonych z poziomu wizyty elementu Rejestracja dokumentu dla danego typu dokumentu,
kafel Raporty: ujęcie wartości tylko z potwierdzonych dokumentów (dla konkretnego typu dokumentu).
Wyłączenie widoczności cen i rabatów na dokumencie prezentuje poniższy rysunek, gdzie prezentowana jest lista składników dodawanych do ZSR z ukrytymi informacjami:
Ukryta informacja o cenach składników na dokumencie ZSR
Ukryte informacje o cenach i rabatach są również na małej i dużej kalkulacji elementu, jak na poniższym rysunku:
Ukryte informacje o cenach na małej i dużej kalkulacji składnika
Dopóki dokument nie zostanie przekazany do realizacji albo zatwierdzony informacja o jego wartości nie będzie widoczna. Do momentu zatwierdzenia ukryta zostanie także informacja o cenach i wartościach w widoku towarów dodanych do koszyka, jak na poniższym rysunku:
Ukryta informacja o wartościach i cenach na niezatwierdzonym dokumencie ZSR
Informacja wyświetlana na kaflu Raporty, dotycząca wartości wystawionych w aplikacji dokumentów, także nie będzie uwzględniała niezatwierdzonych dokumentów.
Po wywołaniu filtra: Dokumenty kontrahenta lub Wszystkie dokumenty, na wyświetlonej liście dokumentów historycznych informacja na temat wartości tych dokumentów zostanie ukryta.
W aplikacji Comarch Mobile wprowadzono nowy parametr ForceHidingPrices (jest on opisany TUTAJ).
Zmiana tego parametru na 1 spowoduje dodatkowo:
Ukrycie wartości na liście dokumentów dla dokumentów potwierdzonych dotyczących danego typu dokumentu
Ukrycie wartości dla dokumentów potwierdzonych z poziomu wizyty elementu Rejestracja dokumentu dla danego typu dokumentu
Uwaga
Wartość parametru należy zmienić w pliku documentsnumerators.xl.statement(Comarch Mobile\Serwer synchronizacji\Methods\documentsnumerators)
Zmiana klawiatury systemowej Androida na klawiaturę wbudowaną
Aplikacja Comarch Mobile Serwis posiada własną, dedykowaną klawiaturę instalowaną automatycznie z aplikacją. Podczas korzystania z aplikacji zalecane jest używanie dedykowanej klawiatury.
Aby uruchomić dedykowaną klawiaturę na telefonach ze starszą wersją systemu Android należy wejść do ustawień urządzenia, a następnie wybrać opcję [Język i klawiatura] lub [Język i wprowadzanie].
Opcja: Język i klawiaturaWybór klawiatury: Comarch- Instalator
Na urządzeniach z nowszą wersją systemu Android, dedykowaną klawiaturę wybieramy wchodząc w [Ustawienia], a następnie w [Język i wprowadzanie].
Następnie należy zaznaczyć w sekcji Klawiatura i metody wprowadzania [Comarch Instalator], a następnie wybrać klawiaturę [Comarch Instalator] jako domyślną.
Ustawienia telefonu, język i wprowadzanie
Od tego momentu dostępna będzie dedykowana klawiatura dla aplikacji.
Dedykowana klawiatura - numeryczna i tekstowa
Ukrywanie i zmiana kolejności elementów w aplikacji
Istnieje możliwość ukrywania oraz zmiany kolejności elementów aplikacji.
Poszczególne elementy można ukrywać dokonując zmian w pliku ListPositions, znajdującym się w katalogu: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacjiViewsConfiguration.
Poszczególne sekcje w pliku odpowiadają za ukrywanie:
Aby ukryć element menu głównego Dzień należy zmienić wpis “VISIBLE” na “INVISIBLE”, np:
<position name="DAY" visibility="INVISIBLE" />
Jeżeli natomiast chodzi o zmianę kolejności elementów w aplikacji, to należy zmienić kolejność wierszy w pliku ListPositions. Po wykonaniu synchronizacji elementy w aplikacji powinny wyświetlić się w nowej kolejności.
Istnieje także możliwość przypisania konkretnego widoku aplikacji dla konkretnego użytkownika. W tym celu należy w katalogu ViewsConfiguration utworzyć nowy folder o nazwie danego użytkownika i wkleić zmodyfikowany plik ListPositions.xml.
Przykład
Uproszczenie menu głównego do takiego jakie było w pierwszej wersji aplikacji Comarch Mobile Sprzedaż (widoczne elementy: Kontrahenci i Terminarz)
Fragment pliku ListPosition po zmianach:<activity name="com.comarch.mobile.vendor.core.activities.MainActivity"> <position name="DAY" visibility="INVISIBLE" /> <position name="CALENDAR" visibility="VISIBLE" /> <position name="CONTRACTORS" visibility="VISIBLE" /> <position name="MESSAGES" visibility="INVISIBLE" /> <position name="SERVICE" visibility="INVISIBLE" /> <position name="DOCUMENTS" visibility="INVISIBLE" /> <position name="ITEMS" visibility="INVISIBLE" /> <position name="CASH" visibility="INVISIBLE" /> <position name="REPORTS" visibility="INVISIBLE" /> <position name="SYNC" visibility="VISIBLE" /> <position name="SYNCSTATE" visibility="VISIBLE" />
Uwaga
Od wersji 2017.1 Comarch Mobile został zmieniony domyślny układ kafli menu głównego aplikacji – zgodnie z przykładem zaprezentowanym powyżej.
Podgląd historycznych zapisów kasowych
Historyczne zapisy kasowe, można podejrzeć z poziomu listy Wpłaty/Wypłaty na Karcie kontrahenta. Wszystkie zapisy kasowe wyświetlone z tego poziomu będą dotyczyć tylko tego konkretnego kontrahenta. Zapisy kasowe pobrane z systemu oznaczane są ikoną: analogicznie jak w przypadku dokumentów oraz działań pobranych z systemu. Po wybraniu danego dokumentu KP/KW z listy zostaną wyświetlone jego szczegóły. Historyczne zapisy kasowe można wyświetlić także z poziomu kafla: Kasa. W tym widoku została dodana druga zakładka: Historyczne zapisy kasowe, z poziomu której wyświetlane są wszystkie historyczne zapisy kasowe – dotyczące wszystkich kontrahentów dostępnych w aplikacji.
Podgląd historycznych zapisów kasowych możliwy z poziomu karty kontrahenta oraz kafla: Kasa
Dodawanie niestandardowego filtra do listy
Dodawanie filtra
W celu dodania niestandardowego filtra do listy towarów, kontrahentów lub na liście czynności i zleceń serwisowych, należy przygotować odpowiedni plik xml i umieścić go na serwerze synchronizacji.
Wskazówka
Definicje filtrów znajdują się domyślnie w katalogu: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\CustomFilters.
Usuwanie filtra
Aby usunąć dodany filtr należy zmienić jego ID na ujemne, następnie zmienić datę modyfikacji (np. poprzez ponowne zapisanie pliku z filtrem) i wykonać synchronizację.
Nazwa usuwanej definicji filtra
Elementy składowe filtra
Każda definicja filtra składa się z klauzuli wstępnej języka xml: <?xml version="1.0" encoding="UTF-8"?>, po której w sekcji customFilter z parametrem objectType o odpowiedniej wartości: contractorsList (filtr pojawi się na liście kontrahentów), itemsList (filtr pojawi się na liście towarów), serviceOrdersDocumentsList(filtr pojawi się na liście zleceń serwisowych) lub serviceOrdersActionsList (filtr pojawi się na liście czynności serwisowych) następują wymienione poniżej sekcje:
joinClause (np. JOIN Visits ON Contractors.Id = Visits.ContractorId)
whereClause (np. Visits.PlannedStartDate < @@CUSTOM_FILTER_VALUE@@)
groupByClause (np. Visits.ContractorId)
havingClause
inputType (możliwe wartości: text, date, boolean)
Sekcje te (oprócz inputType) są częścią zapytania wykonywanego przez aplikację mobilną w celu wyświetlenia elementów listy towarów, listy kontrahentów, listy zleceń serwisowych bądź listy czynności serwisowych (np. SELECT * FROM Contractors [joinClause] [whereClause] [groupByClause] [havingClause]).
Wartość parametru inputType podawana przez użytkownika aplikacji po wyborze filtra pobierana jest do zapytania SQL za pomocą parametru @@CUSTOM_FILTER_VALUE@@.
Uwaga
Podczas synchronizacji definicji filtrów na urządzenie brana jest pod uwagę data modyfikacji pliku. W celu wymuszenia synchronizacji filtra należy wykonać dowolną modyfikację i zapisać ponownie plik z definicją.
Przykład
Poniższa definicja filtra pozwala na wyświetlanie na liście kontrahentów tylko tych, na których zostały wystawione dokumenty z datą realizacji późniejszą niż wskazana w parametrze filtra.
Tak zdefiniowany filtr zapisany w katalogu CustomFilters pod nazwą 2#Data realizacjipo.xml, po synchronizacji w aplikacji mobilnej prezentuje się w następujący sposób:
Widok utworzonego filtra w aplikacji
Towary
Cena ewidencyjna towaru
W aplikacji Comarch Mobile Serwis została wprowadzona funkcjonalność dotycząca wyświetlania ceny ewidencyjnej towaru, czyli najwyższej aktualnej ceny zakupu towaru, do którego Serwisant ma dostęp.
Aby cena ewidencyjna towaru była wyświetlana w aplikacji, należy odpowiednio skonfigurować klasę atrybutu w systemie Comarch ERP XL.
Tworzenie klasy atrybutuDodanie obiektów do klasy atrybutu
Od wersji 2017.1 ERP XL jest możliwość nadawania uprawnień do atrybutów per Operator. Na zakladce Dostępność, można przypiąć operatorów, którzy powinni mieć dostęp do danej klasy atrybutu. Każdemu operatorowi można nadać dwa uprawnienia:
Wprowadzenie – możliwość przypisania wartości do atrybutu,
Zmiana – możliwość edycji wartości atrybutu,
lub nie zaznaczać żadnej z nich – wówczas taki operator będzie miał tylko możliwość podglądu takiego atrybutu oraz przypięcia klasy ale bez określania wartości.
Żeby udostępnić atrybut per operator, wymagane jest określenie dostępności takiego atrybutu na zakładce Ogólne. Jeśli na zakładce Dostępność zostanie określony operator, ale atrybut nie będzie udostępniony w Comarch Mobile (zakładka Ogólne) nie będzie on widoczny w aplikacji.
Dodanie Operatora do klasy atrybutuDodany atrybut na danym operatorze
Kolorowanie towarów w aplikacji
W aplikacji, analogicznie jak w systemie Comarch ERP XL istnieje możliwość kolorowania towarów. Aby dany rodzaj towarów został pokolorowany w aplikacji należy w systemie Comarch ERP XL, w module [Administrator] wybrać z menu pozycję: Listy\Słowniki kategorii\ Inne\Rodzaje towarów i przypisać odpowiedni kolor do danego rodzaju towaru.
Przypisywanie koloru do rodzaju towaru w systemie Comarch ERP XLKarta towaru z oznaczonym rodzajem towaru
Po wykonaniu synchronizacji towary dostępne w aplikacji zostaną oznaczone na liście towarów odpowiednim kolorem. Przed nazwą i kodem każdego pokolorowanego towaru będzie widoczny rodzaj towaru.
Kolorowanie towarów w aplikacji
Dostępność jednostek pomocniczych w aplikacji
W aplikacji Comarch Mobile Serwis istnieje możliwość podejrzenia ilości i ceny w jednostce pomocniczej podczas wystawiania dokumentów już z poziomu listy towarów , bez konieczności podnoszenia kalkulacji dla tej pozycji. Funkcjonalność ta jest dostępna podczas wystawiania dokumentów:
RW (Rozchód wewnętrzny)
ZSR (Zlecenie serwisowe)
Za tę funkcjonalność odpowiada parametr [IsBaseUnitVisible], który może przyjmować dwie wartości:
1 – wartość domyślna, jeżeli na towarze domyślną jednostką lub jednostką wybraną podczas dodawania do Koszyka jest jednostka pomocnicza, wówczas na liście towarów wyświetlana jest cena w jednostce pomocniczej oraz jednostce podstawowej,
0 – ilość wyświetlana jest tylko w jednostce domyślnej – na liście pozycji wyświetlana jest ilość na magazynie oraz ilość dodaną na dokument tylko w tej jednej – domyślnej lub wybranej podczas dodawania do Koszyka jednostce
Wyświetlanie/ukrywanie informacji o stanach magazynowych
Istnieje możliwość wyboru wyświetlenia\ukrycia informacji o stanach magazynowych w centrali.
Uwaga
W folderze [Methods], w pliku konfiguracyjnym [configuration.xl.statement] znajduje się parametr odpowiedzialny za tę funkcjonalność: [IsHeadquarterStocksVisible]. Domyślna wartość parametru to „1”, pozwalająca na podgląd informacji o stanach magazynowych na urządzeniu mobilnym. Zmiana tego parametru w pliku konfiguracyjnym odnosić będzie się do wszystkich operatorów mobilnych. Więcej informacji nt. tego parametru znajduje się TUTAJ
W przypadku chęci ukrycia stanów magazynowych konkretnemu operatorowi należy w systemie Comarch ERP XL na karcie operatora w zakładce Atrybuty utworzyć atrybut: ‘Czy widzi stany magazynowe’ o Typie: Flaga i ustawić jego wartość na 'NIE'.
Atrybut: ‘Czy widzi stany magazynowe’ do ukrywania widoczności stanów magazynowych konkretnym operatoromUzupełniony atrybut 'Czy widzi stany magazynowe' na karcie operatora
Widoczność zdjęć towarów w aplikacji
Aby zdjęcia dodane do kartotek towarowych systemu Comarch ERP XL były widoczne w aplikacji Comarch Mobile Serwis należy na zakładce [Załączniki] zaznaczyć poniższą opcję.
Ustawienie widoczności zdjęć
Uwaga
Aby zdjęcia mogły się poprawnie wyświetlać na urządzeniu i nie powodowały przepełnienia pamięci, w czasie synchronizacji są automatycznie zmniejszane do rozmiarów x na 1024 pikseli. Niektóre urządzenia umożliwiają jednak bezproblemową obsługę większych zdjęć. Aby zmienić wielkość synchronizowanych zdjęć należy w katalogu Methods w folderze serwera synchronizacji Comarch Mobile odnaleźć plik articlesphotos.configuration i go wyedytować w notatniku, podając długość dłuższej krawędzi zdjęcia.
W pliku articlesphotos.configuration znajdującym się domyślnie w folderze: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods\articlesphotos dostępne są następujące parametry:
Size – maksymalny rozmiar boku zdjęcia (w pikselach) w przypadku włączonej opcji automatycznej zmiany rozmiaru załącznika
DoResize – czy ma być wykonana automatyczna zmiana wielkości załączników. Wartość domyślna – True. Wyłączenie opcji w znacznym stopniu przyśpiesza tworzenie pliku wymiany. Jeżeli jednak na bazie systemu ERP znajduje się duża liczba załączników w wysokiej rozdzielczości, zmiana parametru może skutkować znacznym zwiększeniem rozmiaru paczki do pobrania w synchronizacji.
DoCompression – czy ma być wykonana automatyczna kompresja załączników. Wartość domyślna – True. Wyłączenie opcji w znacznym stopniu przyśpiesza tworzenie pliku wymiany. Jeżeli jednak na bazie systemu ERP znajduje się duża liczba nieskompresowanych załączników, zmiana parametru może skutkować znacznym zwiększeniem rozmiaru paczki do pobrania w synchronizacji.
MultiThreading – wielowątkowe tworzenie pliku wymiany z załącznikami. Wartość domyślna – False. Włączenie opcji w znacznym stopniu przyśpiesza tworzenie pliku wymiany. Użycie trybu może skutkować wzrostem obciążenia CPU, szczególnie w momencie wykonywania pierwszej synchronizacji załączników jednocześnie przez kilku operatorów.
W aplikacji Comarch Mobile Serwis istnieje możliwość dodawania załączników z poziomu aplikacji. Opcja ta dotyczy następujących obiektów:
Karty kontrahenta
Karty towaru
Nagłówka dokumentów
Pozycji dokumentów niektórych dokumentów. Więcej informacji znajduje się TUTAJ.
Aplikacja Comarch Mobile Serwis obsługuje cechy towarów na dokumencie RW. W przypadku prezentacji zasobów z rozbiciem na partie prezentowane są Cechy towaru, Daty ważności, Kody EAN partii.
Do obsługi tej funkcjonalności wymagane są następujące parametry:
[IsItemsFeaturesEnabled] – parametr działa globalnie, domyślnie przyjmuje wartość 1, odpowiada za obsługę cech na wszystkich towarach. Dodatkowo w Comarch ERP XL na zakładce [Aplikacje] należy zaznaczyć znacznik [Wysyłanie partii], w innym przypadku pomimo, że parametr [IsItemsFeaturesEnabled] będzie włączony cechy na towarze nie będą obsługiwane. Więcej informacji nt. tego parametru znajduje się TUTAJ.
Parametr na karcie towaru – czy partie towaru mają być wyświetlane w aplikacji
Informacja o zasobach danego towaru w Comarch ERP XL dostępna jest na karcie towaru, po przejściu na zakładkę: Zasoby/Wg położenia. Jeśli nie jest zaznaczona [Data ważności] na towarze, to nie ma możliwości określenia jej na dużej kalkulacji, pomimo posiadania zasobów z datą.
Informacja o zasobach danego towaru z rozbiciem na partie
W aplikacji mobilnej na karcie towaru po wejściu w sekcję Stany/W centrali, następnie w magazyn jest wyświetlany z rozbiciem na poszczególne partie. Jeżeli partie towaru opatrzone są Datą ważności i/lub kodem EAN, to takie informacje także będą prezentowane.
Ilość danego zasobu (danej partii) wyświetlana jest w jednostce domyślnej towaru.
[CanAddValuesToOpenList] – parametr odpowiedzialny za to, czy użytkownicy powinni mieć możliwość dodawania wartości do listy otwartej. Na liście cech, na ostatniej pozycji pojawia się opcja , po wprowadzeniu wartości zostaje ona dodana do listy. Więcej informacji nt. tego parametru znajduje się TUTAJ.
Definiowanie cech i ich wartości w module Sprzedaż, z poziomu menu: Listy/Cechy
W celu prawidłowej konfiguracji zamiennika należy określić w systemie ERP:
Kod zamiennika,
Rodzaj zamiennika (Jednostronny, Obustronny, Równoważny wszystkim),
Ile zamiennika (np. T2) przysługuje danej ilości towaru podstawowego (np. T1) (wyrażone w jednostkach podstawowych obydwu towarów),
Na jakich dokumentach ma być dostępny zamiennik (Rozchodowe, Przychodowe).
Miejsce w strukturze firmy – wskazać należy odpowiedni Oddział mobilny, jeśli zamiennik ma być dostępny w aplikacji.
Konfiguracja zamiennika w Comarch ERP XL
W konfiguracji oddziału mobilnego w Comarch ERP XL należy zaznaczyć check: „Wysyłaj informacje o zamiennikach towarów”.
Check: „Wysyłaj informacje o zamiennikach towarów” w konfiguracji oddziału mobilnego.
Pobranie zamienników do Comarch Mobile wymaga:
Włączenia pobierania zamienników dla oddziału mobilnego
Udostępnienia w Comarch Mobile towaru będącego zamiennikiem
Wskazanie na karcie zamiennika, na zakładce: Miejsca w strukturze firmy, centrum mobilnego do którego należy operator zalogowany w aplikacji
Rodzaje zamienników
Zamiennik Jednostronny – jeśli dla towaru T1 został określony zamiennik T2 będzie to oznaczało, że:
Na karcie towaru T1 będzie widoczny zamiennik T2
Na karcie towaru T2 nie będzie widoczny zamiennik T1
Jeżeli na dokumencie zostanie wybrany towar T1, będzie można zamienić go na T2
Jeżeli na dokumencie zostanie wybrany towar T2, nie będzie można zamienić go na T1
Zamiennik Obustronny – jeżeli dla towaru T1 został określony zamiennik obustronny T2 i do towaru T2 zdefiniowany zamiennik obustronny T3, będzie to oznaczało, że:
Na karcie towaru T1 będzie widoczny zamiennik T2, ale nie będzie widać zamiennika T3
Na karcie towaru T2 będą widoczne zamienniki: T1 i T3
Na karcie towaru T3 będzie widoczny zamiennik T2, ale nie będzie widoczny zamiennik T1
Jeżeli na dokumencie zostanie wybrany towar T1, będzie można zamienić go na T2, ale nie na T3
Jeżeli na dokumencie zostanie wybrany towar T2, będzie można zamienić go na T1 lub T3
Jeżeli na dokumencie zostanie wybrany towar T3, będzie można zamienić go na T2, ale nie na T1
Równoważny wszystkim – jeżeli dla towaru T1 zostanie określony zamiennik równoważny T2 i do towaru T2 zostanie zdefiniowany zamiennik równoważny T3, będzie to oznaczało, że:
Na karcie towaru T1 będą widoczne zamienniki: T2 i T3
Na karcie towaru T2 będą widoczne zamienniki: T1 i T3
Na karcie towaru T3 będą widoczne zamienniki: T1 i T2
Jeżeli na dokumencie zostanie wybrany towar T1, będzie można zamienić go na T2 lub na T3
Jeżeli na dokumencie zostanie wybrany towar T2, będzie można zamienić go na T1 lub na T3
Jeżeli na dokumencie zostanie wybrany towar T3, będzie można zamienić go na T1 lub na T2
Typy dokumentów, dla których obsłużono zamienniki:
Zamówienie Sprzedaży (ZS),
Oferta Sprzedaży (OS)
Faktura Sprzedaży (FS)
Paragon (PA)
Wydanie Zewnętrzne (WZ)
Wydanie Magazynowe (WM)
Rozchód Wewnętrzny (RW)
Przesunięcie Międzymagazynowe (MMW)
Wydanie Kaucji (WKA)
Korekta Wydania Kaucji (WKK)
Przypisanie grupy towarów oraz magazynów do kontrahenta
W systemie Comarch ERP XL istnieje możliwość przypisania grupy towarów oraz magazynów, z których pobierane będą towary dla danego kontrahenta.
Dostępne towary oraz magazyny dla danego kontrahenta należy wskazać na Karcie kontrahenta, zakładka [Aplikacje].
Grupa towarów – można wybrać grupę towarów, która będzie dostępna w aplikacji dla danego kontrahenta
Magazyny – można wybrać magazyny, które będą dostępne dla danego Kontrahenta. Dodatkowo, można określić magazyn domyślny
Przypisanie grupy towarów oraz magazynów do kontrahenta
W przypadku wyboru Magazynów istnieje możliwość określenia, który magazyn będzie domyślny i dostępny w aplikacji Comarch Mobile Serwis.
Przypisanie magazynów do kontrahenta, określenie magazynu domyślnego i dostępnego w aplikacji
Wiele cen sprzedaży
Wprowadzono możliwość definiowania dla towaru wielu cen tego samego rodzaju, określania dat i godzin obowiązywania cenników oraz różnych statusów cenników (niepotwierdzonych, zatwierdzonych oraz anulowanych).
Możliwość zmiany ceny początkowej na pozycji wystawianego dokumentu ZSR jest dostępna w aplikacji mobilnej dla operatorów, którzy na oddziale mobilnym w systemie Comarch ERP XL, na definicji dokumentu ZSR, mają zaznaczony parametr [Edycja cen i rabatów na pozycjach] oraz dodatkowo jeżeli na serwerze synchronizacji jest włączona opcja zmiany ceny początkowej – parametr [CanChangeStartPrice] w pliku konfiguracyjnym.
W przypadku zmiany daty wystawienia dokumentu na nagłówku, zmiany będą aktualizowane, jeżeli na definicji wystawianego dokumentu dla centrum mobilnego przedstawiciela będzie zaznaczony parametr [Aktualizacja danych po zmianie: Daty].
Obsługa atrybutów
Istnieje możliwość pobierania i wypełniania atrybutów. Atrybuty w aplikacji Comarch Mobile prezentowane są w sekcji: [Informacje dodatkowe]. Atrybuty można wyświetlać jako klasy lub klasy w grupach.
Obsługa atrybutów przy współpracy z systemem Comarch ERP XL
Typy obiektów
Funkcjonalność
Kontrahenci
Podgląd i edycja
Towary
Podgląd
Samochody
Podgląd
Nagłówki dokumentów
Podgląd i edycja
Pozycje dokumentów
Podgląd i edycja
Aby klasa atrybutu była widoczna w aplikacji mobilnej należy w definicji atrybutu wskazać obiekty na zakładce [Obiekty] oraz zaznaczyć parametr [Podgląd] w grupie [Comarch Mobile] na zakładce [Ogólne]. Zaznaczenie parametru [Edycja] umożliwi dodatkowo edycję atrybutów na niektórych typach obiektów.
Przykładowa definicja klasy atrybutu w systemie Comarch ERP XL
W aplikacji mobilnej obsługiwane są również flagi [Wymagany] oraz [Automat]. Jeżeli dany atrybut jest oznaczony jako Wymagany w systemie ERP, to w aplikacji Comarch Mobile jest oznaczony znakiem .
W aplikacji obsługiwane są następujące typy atrybutów:
Flaga
Tekst
Liczba
Lista
Adres URL – w przypadku wskazania adresu strony internetowej, po naciśnięciu przycisku strona zostanie otwarta w domyślnej przeglądarce na urządzeniu mobilnym
W aplikacji obsłużone zostały następujące formaty atrybutów:
Tekst
Data
1234
1234.56
1234.5678
Zaawansowany
Aby była możliwość wyświetlania atrybutów w grupach należy w systemie Comarch ERP XL na liście Atrybutów z poziomu zakładki [Grupy klas atrybutów] stworzyć odpowiednie grupy atrybutów:
Definicja grupy klasy atrybutu
oraz przypisać do stworzonej grupy obiekt, z którego poziomu ma być dostępna grupa atrybutów.
Przypisanie obiektu
Następnie należy przypisać odpowiednie klasy atrybutów. Jedna klasa może być przypięta do kilku grup jednocześnie.
Wyświetlanie procentu rabatu na liście towarów
Za opcję wyświetlania procentu rabatu na liście towarów odpowiada parametr [IsDiscountVisible]. Więcej informacji nt. tego parametru znajduje się TUTAJ.
Ustawienia aplikacji – dodatkowy parametr [Obliczaj hipotetyczny rabat]
Dostępność kartotek towarowych w aplikacji
Aby kartoteki z wybranej grupy towarowej były widoczne w aplikacji Comarch Mobile Serwis należy na zakładce Aplikacje karty towaru zaznaczyć opcję [Dostępny w: Comarch Mobile]. Po zaznaczeniu pola i wykonaniu synchronizacji towar będzie widoczny na urządzeniu mobilnym.
Dostępność kartoteki towarowej w aplikacji
Dostępność można oznaczyć również dla wszystkich kart towarowych znajdujących się w grupie. Odbywa się to poprzez edycje wzorca grupy i zaznaczenie opcji [Dostępny w: Comarch Mobile] na zakładce [Aplikacje].
W pierwszej kolejności należy zaznaczyć pole: dostępny w: Comarch Mobile. Aby nowododane do grupy lub jej podgrup towary miały automatycznie zaznaczoną dostępność w Mobile Sprzedaż trzeba również zaznaczyć opcję [Aktualizacja wzorców] i wybrać [Zmienione pola].
Ustawianie dostępności kartotek towarowych na wzorcu grupy
Uwaga
Aby karta towaru była dostępna w aplikacji Comarch Mobile Serwis, oprócz zaznaczenia opcji dostępności kartoteki w Comarch Mobile w systemie Comarch ERP XL należy również przypiąć odpowiednią grupę towarową w konfiguracji centrum mobilnego.
Uwaga
Aplikacja Comarch Mobile Serwis nie obsługuje zestawów towarowych.
Precyzja cen w aplikacji mobilnej
W aplikacji Comarch Mobile istnieje możliwość wyboru precyzji ceny na typie ceny oraz na definicji dokumentu, tak aby można było wykorzystywać ceny towarów określane z czterema miejscami po przecinku oraz sprzedawać je w dużych ilościach, np. (100szt. x 1,3333zł = 133,33zł, a 100szt. x 1,33zł= 133,00zł).
Aby w aplikacji Comarch Mobile istniała możliwość prezentacji towaru na karcie towaru z precyzją do dwóch lub do czterech miejsc po przecinku. W systemie Comarch ERP XL w Administratorze należy zaznaczyć precyzję na typie ceny.
Przypisanie precyzji cen wyświetlanych w aplikacji Comarch Mobile na kartotece towaru
Zaznaczenie opcji [Cena z dokładnością do groszy] spowoduje wyświetlanie cen z dokładnością do dwóch miejsc po przecinku (standardowe działanie aplikacji), natomiast odznaczenie parametru spowoduje wyświetlanie cen z dokładnością do czterech miejsc po przecinku.
Prezentacja ceny na karcie towary z precyzją a) do dwóch miejsc po przecinku, b) do czterech miejsc po przecinku
Dodatkowo istnieje możliwość ustawienia precyzji ceny na definicji dokumentu na centrum operatora.
Przypisanie precyzji cen wyświetlanych w aplikacji Comarch Mobile Sppodczas wystawiania dokumentów
Zaznaczenie opcji [Cena z dokładnością do groszy] spowoduje wyświetlanie cen z dokładnością do dwóch miejsc po przecinku (standardowe działanie aplikacji), natomiast odznaczenie parametru spowoduje wyświetlanie cen z dokładnością do czterech miejsc po przecinku.
Prezentacja ceny podczas wystawiania dokumentu z precyzją a) do dwóch miejsc po przecinku, b) do czterech miejsc po przecinku
Cena z wybraną precyzją widoczna jest na liście towaru podczas wystawiania dokumentu, na małej kalkulacji oraz w zakładce Koszyk.
Definiowania wielu cen tego samego rodzaju, określania dat i godzin obowiązywania cenników oraz różnych statusów cenników
Istnieje możliwość definiowania dla towaru wielu cen tego samego rodzaju, określania dat i godzin obowiązywania cenników oraz różnych statusów cenników (niepotwierdzonych, zatwierdzonych oraz anulowanych).
Lista cenników w Comarch ERP XL
Na karcie i liście towarów prezentowana jest cena wybrana, jako domyślna w konfiguracji centrum mobilnym.
Dostępne rodzaje cen i domyślna cena na centrum mobilnym przedstawicielaPrezentacja cen sprzedaży na karcie towaru
Widoczność cen zakupu
Na karcie operatora można określić, czy będzie on widział ceny zakupu towarów oraz wysokość marży na elemencie/dokumencie. Decyduje o tym opcja [Widzi ceny zakupu], znajdująca się na karcie operatora, na zakładce [Parametry/Handlowe].Widoczność cen zakupu i marży
Wiele cen sprzedaży
Wprowadzono możliwość definiowania dla towaru wielu cen tego samego rodzaju, określania dat i godzin obowiązywania cenników oraz różnych statusów cenników (niepotwierdzonych, zatwierdzonych oraz anulowanych).
Możliwość zmiany ceny początkowej na pozycji wystawianego dokumentu ZSR jest dostępna w aplikacji mobilnej dla operatorów, którzy na oddziale mobilnym w systemie Comarch ERP XL, na definicji dokumentu ZSR, mają zaznaczony parametr [Edycja cen i rabatów na pozycjach] oraz dodatkowo jeżeli na serwerze synchronizacji jest włączona opcja zmiany ceny początkowej – parametr [CanChangeStartPrice] w pliku konfiguracyjnym.
W przypadku zmiany daty wystawienia dokumentu na nagłówku, zmiany będą aktualizowane, jeżeli na definicji wystawianego dokumentu dla centrum mobilnego przedstawiciela będzie zaznaczony parametr [Aktualizacja danych po zmianie: Daty].
Ta opcja jest tożsama z opcją „Ustawienia listy” dostępną na kaflu Towary w menu kontekstowym. Jej wybranie spowoduje, że zostanie otwarte nowe okno z ustawieniami listy towarów.Konfiguracja aplikacji, ustawienia listy towarów.
Ustawienia
W tej sekcji istnieje możliwość określenia:
czy na listach będą prezentowane kody towarów,
jaki widok towarów ma być domyślny w aplikacji (lista czy katalogowy). Po naciśnięciu na domyślną opcję [Lista] będzie możliwość zmiany domyślnego widoku na katalogowy,
ilości zdjęć prezentowanych w widoku katalogowym: wybór od 1 do 4,
co w przypadku długiej nazwy towaru ma zostać ucięte.
Na rysunku poniżej przedstawiono prezentację towarów w widoku katalogowym, gdy wybrano wyświetlanie jednego towaru w jednej linii:Prezentacja widoku katalogowego.W przypadku długiej nazwy towaru jest możliwość ucięcia części nazwy: początek, środek – wartość domyślna lub koniec.Rysunek poniżej przedstawia przykładowy widok z aplikacji mobilnej po zmodyfikowaniu parametru dotyczącego ucięcia części nazwy.Parametr w ustawieniach listy towarów: W przypadku długiej nazwy towaru ucinaj.
Wyszukiwanie
W tej sekcji istnieje możliwość:
Wybrania kryterium, po jakim będą wyszukiwane towary. Domyślna opcja [Wszystkie] powoduje, że towary są wyszukiwanie po nazwie i kodzie. Po naciśnięciu na przycisk [Wszystkie] istnieje możliwość wyboru, aby wyszukiwanie odbywało się tylko po kodzie lub tylko po nazwie,
Określenia, po ilu znakach ma się rozpoczynać wyszukiwanie towarów. Dotyczy pola wyszukiwania, w którym możliwe jest wpisanie kodu towaru, nazwy towaru, kodu EAN towaru.
Ustawienia listy dokumentów
Ta opcja jest tożsama z opcją Ustawienia dostępną z poziomu kafla: Dokumenty. Wybranie tej opcji spowoduje, że zostanie otwarte nowe okno z ustawieniami listy dokumentów.
Aktualnie na liście dokumentów umożliwiono wyświetlanie dodatkowych informacji o:
statusie realizacji zamówień
kodzie kontrahenta głównego
nazwie kontrahenta głównego
numerze NIP
kontrahencie docelowym
adresie kontrahenta docelowego
płatniku
statusie KSeF dla faktur sprzedaży.
To, czy informacje mają być widoczne na liście zależy od użytkownika aplikacji. Po wejściu w Ustawienia listy dokumentów użytkownik ma możliwość włączenia lub wyłączenia wyświetlania poszczególnych elementów na liście dokumentów.
Ustawienia listy dokumentówPrzykładowy widok listy dokumentów
Ustawienia listy kontrahentów
Ta opcja jest tożsama z opcja Ustawienia dostępną z poziomu:
listy prezentowanej z poziomu kafla: Kontrahenci,
listy wyświetlanej przy wystawianiu dokumentu z poziomu kafla: Dokumenty,
listy kontrahentów prezentowanej podczas planowania działania,
listy wyświetlanej przy zmianie kontrahenta na nagłówku dokumenty.
Wybranie tej opcji spowoduje, że zostanie otwarte nowe okno z ustawieniami listy kontrahentów.
Konfiguracja aplikacji, ustawienia listy kontrahentów
Zakładki
Użytkownik może określić zakładki, które będą dostępne z poziomu menu kontrahentów. Domyślnie wszystkie zakładki są dostępne. Ponadto istnieje także możliwość zmiany kolejności ich wyświetlania.
Na listach kontrahentów pokazuj
Istnieje możliwość określenia, które pola odnośnie kontrahentów będą dostępne na liście kontrahentów. W tej sekcji można m. in. ukryć kody na liście kontrahentów.
Na karcie kontrahenta pokazuj
Istnieje możliwość określenia, które atrybuty lub grupy atrybutów mają być widoczne na karcie kontrahenta.
Wyszukiwanie
Istnieje możliwość określenia kryterium, po jakim będą wyszukiwani kontrahenci. Domyślna opcja [Wszystkie] powoduje, że kontrahenci są wyszukiwani po nazwach i kodach. Po naciśnięciu na przycisk [Wszystkie] istnieje możliwość określenia, czy wyszukiwanie będzie odbywało się tylko po kodach czy tylko po nazwach.
Dodatkowo, ze względów wydajnościowych, został wprowadzony parametr określający, po ilu znakach ma się rozpoczynać wyszukiwanie. Domyślnie wyszukiwanie wpisanej frazy w nazwie lub kodzie kontrahenta rozpoczyna się już po wpisaniu pierwszego znaku, więc wedle potrzeby istnieje możliwość zwiększenia wartości tego parametru.
Ustawienia listy zleceń, czynności i urządzeń serwisowych
Ta opcja umożliwia określenie jakie informacje mają być prezentowane na liście zleceń, czynności i urządzeń serwisowych.
Uwaga
Opcja dostępna dla użytkowników posiadających licencję na aplikację Comarch Mobile Serwis.
Konfiguracja aplikacji, ustawienia listy zleceń, czynności i urządzeń serwisowych
Na listach zleceń pokazuj
W tej sekcji istnieje możliwość określenia jakie informacje dotyczące zleceń serwisowych będą widoczne na liście zleceń. Możliwe jest wyświetlenie takich informacji jak: kod kontrahenta, adres, kontrahent docelowy, płatnik, serwisant, urządzenia, planowany termin realizacji, atrybuty oraz określenie liczby wyświetlanych wierszy dla opisu zlecenia.
Przykładowy widok listy zleceń serwisowych
Na listach czynności pokazuj
W tej sekcji istnieje możliwość określenia jakie informacje dotyczące czynności serwisowych będą widoczne na liście czynności. Możliwe jest wyświetlenie takich informacji jak: kod kontrahenta, adres, kontrahent docelowy, płatnik, serwisant, urządzenia, planowany termin realizacji, zasoby, atrybuty oraz określenie liczby wyświetlanych wierszy dla opisu czynności.
Przykładowy widok listy czynności serwisowych
Na czynnościach serwisowych w terminarzu pokazuj
W tej sekcji istnieje możliwość określenia jakie informacje dotyczące czynności serwisowych będą widoczne na danej czynności serwisowej. Możliwe jest wyświetlenie takich informacji jak kod kontrahenta, adres, numer zlecenia serwisowego oraz atrybuty.
Przykładowy widok czynności serwisowych w terminarzu
Na listach urządzeń pokazuj
W tej sekcji istnieje możliwość określenia jakie informacje dotyczące urządzeń serwisowych będą widoczne na liście urządzeń. Możliwe jest wyświetlenie takich informacji jak parametry urządzenia i ich wartości oraz określenie liczby wyświetlanych wierszy dla opisu urządzenia.
Przykładowy widok listy urządzeń serwisowych
Kolorowanie czynności serwisowych
W aplikacji Comarch Mobile istnieje możliwość kolorowania czynności serwisowych. Kolorowanie czynności odbywa się poprzez przypisanie koloru do odpowiedniej wartości klasy atrybutu.
Dodanie klasy atrybutu
Klasę atrybutu należy dodać w systemie ERP XL. Musi ona mieć typ Lista oraz musi być udostępniona dla aplikacji Comarch Mobile.
Klasa atrybutu o nazwie Priorytet_czynności
Do klasy atrybutu należy również przypisać obiekt [Serwis].[Czynność serwisowa]:
Obiekty atrybutu Priorytet_czynności
oraz odpowiednie wartości:
Lista wartości klasy atrybutu
Przypisanie koloru
Przypisanie koloru do odpowiedniej wartości klasy atrybutu odbywa się w pliku *.xml umieszczonym w katalogu ..\Serwer synchronizacji\AttributesColors. Plik ten musi mieć taką samą nazwę jak klasa atrybutu np. Priorytet_czynności.xml. W pliku należy umieścić sekcję colors, a w niej sekcje color z parametrem attributeValueName o wartości równej nazwie wartości klasy atrybutu. Sekcja color ma natomiast posiadać wartość heksadecymalną przypisywanego koloru jak w poniższym przykładzie.
Brak przypisanego koloru w pliku xml skutkuje przypisaniem domyślnego koloru w aplikacji.
Po wykonaniu synchronizacji, czynności widoczne na liście w zakładce czynności oraz na zleceniach oznaczone będą odpowiednim kolorem w zależności od ustawionej wartości atrybutu.
Kolorowanie czynności w aplikacji
Usunięcie koloru
Usunięcie koloru odbywa się poprzez dopisanie parametru delete="true" do sekcji color.
Po zapisaniu pliku i wykonaniu synchronizacji przypisanie koloru zostanie usunięte z aplikacji, a dane czynności wyświetlane będą na liście w domyślnym kolorze.
Po wykonaniu synchronizacji możliwe jest usunięcie z pliku xml sekcji color z danym kolorem, który oznaczony został wcześniej parametrem delete="true".
Kolorowanie zleceń serwisowych
W aplikacji Comarch Mobile istnieje możliwość kolorowania zleceń serwisowych. Kolorowanie zleceń odbywa się poprzez przypisanie koloru do odpowiedniej wartości klasy atrybutu.
Dodanie klasy atrybutu
Klasę atrybutu należy dodać w systemie ERP XL. Musi ona mieć typ Lista oraz musi być udostępniona dla aplikacji Comarch Mobile.
Klasa atrybutu o nazwie Priorytet_zlecenia
Do klasy atrybutu należy również przypisać obiekt [Serwis].[Zlecenie serwisowe]:
Obiekty atrybutu Priorytet_zlecenia
oraz odpowiednie wartości:
Lista wartości klasy atrybutu
Przypisanie koloru
Przypisanie koloru do odpowiedniej wartości klasy atrybutu odbywa się w pliku *.xml umieszczonym w katalogu ..\Serwer synchronizacji\AttributesColors. Plik ten musi mieć taką samą nazwę jak klasa atrybutu np. Priorytet_zlecenia.xml. W pliku należy umieścić sekcję colors, a w niej sekcje color z parametrem attributeValueName o wartości równej nazwie wartości klasy atrybutu. Sekcja color ma natomiast posiadać wartość heksadecymalną przypisywanego koloru jak w poniższym przykładzie.
Brak przypisanego koloru w pliku xml skutkuje przypisaniem domyślnego koloru w aplikacji.
Po wykonaniu synchronizacji, zlecenia serwisowe widoczne na liście oznaczone będą odpowiednim kolorem w zależności od wartości atrybutu Priorytet_zlecenia.
Kolorowanie zleceń serwisowych w aplikacji
Usunięcie koloru
Usunięcie koloru odbywa się poprzez dopisanie parametru delete="true" do sekcji color.
Po zapisaniu pliku i wykonaniu synchronizacji przypisanie koloru zostanie usunięte z aplikacji, a dane zlecenia wyświetlane będą na liście w domyślnym kolorze.
Po wykonaniu synchronizacji możliwe jest usunięcie z pliku xml sekcji color z danym kolorem, który oznaczony został wcześniej parametrem delete="true".
Parametry historyczności zleceń serwisowych
Usuwanie zleceń serwisowych
[Usuwaj zlecenia serwisowe] - parametr wprowadza możliwość usunięcia zleceń serwisowych, które zostały zamknięte, odrzucone lub anulowane. W ustawieniach aplikacji użytkownik może wybrać, po jakim okresie zlecenia mają być usuwane z aplikacji.
Usuwaj zlecenia serwisoweUsuwaj zlecenia serwisowe - dostępne opcje
Uwaga
Usunięcie zlecenia spowoduje usunięcie nagłówka, powiązanych ze zleceniem czynności oraz załączników, a co za tym idzie historii na urządzeniach.
Pobieranie usuniętych zleceń serwisowych
[Pobieraj zlecenia z systemu] - parametr wprowadza możliwość pobrania usuniętych zleceń z urządzenia z powrotem do aplikacji. Opcja działa analogicznie, jak dla dokumentów historycznych.
Pobieraj zlecenia z systemuPobieraj zlecenia z systemu - dostępne opcje
Wydruki
Definicje wydruków
W aplikacji zostały przygotowane przykładowe wydruki, które można dowolnie modyfikować i dostosowywać do wymagań Klienta.
Wskazówka
Definicje wydruków dokumentów znajdują się domyślnie w katalogu: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Printouts.
Wskazówka
Definicje wydruków raportów znajdują się domyślnie w katalogu: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Printouts i podkatalogu odpowiednim dla systemu ERP, np. xl11.
Każdy wydruk składa się z trzech części:
Data – zapytania wyciągające dane wykorzystywane na wydruku,
Layout – układ wydruku,
Style – styl wydruku (czcionki, kolory itp.).
Uwaga
Podczas synchronizacji definicji wydruków na urządzenie brana jest pod uwagę data modyfikacji pliku. W celu wymuszenia synchronizacji wydruku należy wykonać dowolną modyfikację.
Dodanie nowej definicji wydruku dokumentu
Aby dodać nowy wydruk należy utworzyć jego definicję tworząc pliki Data, Layout i Style, następnie zapisać je w formacie xml.
Istnieje możliwość dodania kilku definicji dla jednego dokumentu. Przykładowo dla dokumentu Zamówienie Sprzedaży istnieje standardowa definicja składająca się z plików:
1#SalesOrder#data#Wydruk_domyślny.xml
1#SalesOrder#layout#Wydruk_domyślny.xml
1#SalesOrder#style#Wydruk_domyślny.xml
Należy dodać nową zmodyfikowaną definicję zmieniając w nazwie plików liczbę 1 na taką, która wśród definicji nie istnieje oraz frazę Wydruk_domyślny na wybraną przez siebie nazwę definicji, np:
45#SalesOrder#data#Mój_wydruk.xml
45#SalesOrder#layout#Mój_wydruk.xml
45#SalesOrder#style#Mój_wydruk.xml
Po tych czynnościach podczas wydruku dokumentu mamy możliwość wyboru definicji wydruku:
Wybór definicji wydruku
Uwaga
W przypadku zapisu definicji wydruku w Notatniku należy wybrać kodowanie UTF-8.
Dodanie nowej definicji wydruku raportu
W celu dodania definicji wydruku raportu w katalogu Printouts i podkatalogu odpowiednim dla systemu ERP należy utworzyć pliki Data, Layout i Style zawierając w nazwie Id raportu z katalogu Reports serwera synchronizacji. Przykładowo, aby utworzyć definicję wydruku dla raportu Sprzedaż w okresach należy raport ten odszukać w katalogu Reports, nosi on nazwę 3#SalesInPeriods#pol.xml. Kolejno w katalogu Printouts i odpowienim podkatalogu utworzyć jego definicję tworząc pliki data, layout i style zawierając w nazwie jego Id:
46#Report#data#3#Moj_wydruk.xml
46#Report#layout#3#Moj_wydruk.xml
46#Report#style#3#Moj_wydruk.xml
Po tych czynnościach w aplikacji pojawi się możliwość wydruku raportu Sprzedaż w okresach.
Usunięcie definicji wydruku
Aby usunąć istniejący wydruk, należy zmienić ID wszystkich jego elementów na ujemne, następnie zmienić datę modyfikacji i wykonać synchronizację.
Zmiana ID wydruku na ujemne
Licznik wydruków
Funkcjonalność licznika wydruków PDF umożliwia ewidencjonowanie wydrukowanych dokumentów danego typu. Dzięki niej będzie można sprawdzić na bazie mobilnej, które dokumenty zostały wydrukowane i ewentualnie według potrzeby będzie można zablokować możliwość edycji już wydrukowanych dokumentów. Dla potrzeb funkcjonalności na bazie mobilnej została dodana tabela RealizedPrintout, w której można odszukać dokładną datę i godzinę wydruku, rodzaj obiektu, liczbę kopii itp.
Informację o liczbie wydruków będzie można wykorzystać w raportach, np. ilość wydrukowanych dokumentów ZS danego dnia.
Dodatkowe informacje na wydrukach
Na wszystkich wydrukach dostępnych z poziomu aplikacji wprowadzone są dodatkowe informacje, które dotyczą:
numeru wydruku,
identyfikatora określającego, że wydruk został stworzony w aplikacji mobilnej,
liczby kopii wydruku,
identyfikatora operatora.
Dodatkowe dane pozwalają na dokładniejszą weryfikację wydruków wykonanych z poziomu aplikacji przez przedstawicieli.
Źródło danych
Wydruk do pdf
Źródło danych dla wydruku musi zostać umieszczone w pliku o nazwie Data.xml. Głównym elementem w pliku jest sekcja datawewnątrz której musi się znaleźć dokładnie jeden element setf. Wewnątrz elementu setf musi się znaleźć jeden lub więcej elementów set. Każdy element set reprezentuje jeden zbiór danych (wynik jednego zapytania SQL). Musi on zawierać dwa elementy podrzędne: name– który określa nazwę zbioru oraz query, które definiuje zapytanie SQL wykonywane na mobilnej bazie danych aplikacji Comarch Mobile.
Uwaga
Prezentowane zapytania SQL mogą różnić się w zależności od wersji aplikacji Comarch Mobile.
Przykład standardowego pliku data.xml występującego w definicji wydruku dokumentu Zamówienie Sprzedaży (1#SalesOrder#data#Wydruk_domyślny.xml):
Przykład
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE data PUBLIC "//UNKNOWN/" "unknown.dtd">
<data>
<setf><set><name>Header</name><query>...</query></set><set><name>DocumentsPositions</name><query>...</query></set><set><name>VatAggregation</name><query>...</query></set><set><name>Logo</name><query>SELECT Data FROM PrintoutsImages WHERE Name='logo.png'</query></set><set><name>FooterAppVersionNumber</name><query>SELECT MajorVersion AS MajorVersion, MinorVersion AS MinorVersion, BuildVersion AS BuildVersionFROM Packages</query></set><set><name>FooterOperatorCode</name><query>SELECT Name AS OperatorCodeFROM Users</query></set><set><name>FooterCopyNumber</name><query>SELECT CASE WHEN COUNT(Number) = 0 THEN 1 ELSE COUNT(Number) + 1 END AS NumbersFROM Documents INNER JOIN RealizedPrintouts rp ON(Documents.Number = rp.DocumentNumber) WHERE Documents.Id=@Id@ </query></set></setf>
</data>
Wydruk termiczny
Jedyną różnicą w definicji pliku data.xml dla wydruków termicznych względem definicji wydruku do pdf jest brak elementu setf. Przykład takiego wydruku (11#SalesOrder#data#Thermal#Vline112#Wydruk_domyślny.xml) wygląda nastepująco:
Przykład
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE data PUBLIC "//UNKNOWN/" "unknown.dtd">
<data>
<set><name>Header</name><query>...</query></set><set><name>DocumentsPositions</name><query>...</query></set><set><name>VatAggregation</name><query>...</query></set><set><name>FooterAppVersionNumber</name><query>SELECT MajorVersion AS MajorVersion, MinorVersion AS MinorVersion, BuildVersion AS BuildVersionFROM Packages</query></set><set><name>FooterOperatorCode</name><query>SELECT Name AS OperatorCodeFROM Users</query></set><set><name>FooterCopyNumber</name><query>SELECT CASE WHEN COUNT(Number) = 0 THEN 1 ELSE COUNT(Number) + 1 END AS NumbersFROM Documents INNER JOIN RealizedPrintouts rp ON(Documents.Number = rp.DocumentNumber) WHERE Documents.Id=@Id@ </query></set>
</data>
Układ wydruku
Zawartość oraz układ wydruku definiowany jest w pliku Layout.xml. Głównym elementem w pliku jest document. Musi zawierać on element body, który zawiera główną część wydruku. Zawartość elementów body czy też footermoże zostać skomponowana z innych elementów opisanych poniżej. Elementy te mogą być zagnieżdżane. Parametr class odwołuje się do klasy stylu zdefiniowanej w pliku Styles.xml dla danego elementu stylującego.
Wszystkie dostępne elementy, które mogą zostać zastosowane podczas tworzenia układu wydruku zostały opisane poniżej. Opis każdego elementu zawiera następujące sekcje:
Parametry – opisuje wszystkie dostępne atrybuty jakie można dodać do elementu i co oznaczają.
Elementy stylujące – zawiera listę selektorów, które dopasowują dany element w pliku Styles.xml
Elementy podrzędne – opcjonalna sekcja opisująca elementy, które mogą wystąpić tylko wewnątrz danego elementu. Dla każdego elementu podrzędnego zachowany jest układ opisu taki sam jak dla głównego elementu.
Przykład – zawiera fragment kodu z przykładowym wykorzystanie opisywanego elementu.
Wszystkie dostępne elementy, które mogą zostać zastosowane podczas tworzenia układu wydruku zostały opisane poniżej.
Element testowy pozwalający na układ wydruku zależny od dowolnych warunków
Parametry
Brak
Elementy stylujące
Brak
Elementy podrzędne
Test
True
False
Nazwa
If: Test
Opis
Element zawierający warunek decydujący o tym czy do wydruku zostaną dodane elementy z sekcji true czy false . Warunek może mieć postać: eq - równy, lt - mniej niż, gt - więcej niż.
Parametry
Brak
Elementy stylujące
Brak
Nazwa
If: True
Opis
Element zawierający elementy, które zostaną w przypadku kiedy warunek z sekcji test zostanie spełniony.
Parametry
Brak
Elementy stylujące
Brak
Nazwa
If: False
Opis
Element zawierający elementy, które zostaną w przypadku kiedy warunek z sekcji test nie zostanie spełniony.
split - określa czy tabela może zostać podzielona na kilka stron. Parametr może przyjmować wartość true lub false.
set - nazwa zestawu danych.
Elementy stylujące
Table
Elementy podrzędne
Column
TableData
Nazwa
Table: Column
Opis
Element definiujący kolumnę tabeli.
Zawartość
Dowolne elementy tekstowe
Parametry
description - nagłówek kolumny.
weight - waga szerokości kolumny. Wartość domyślna 1
Elementy stylujące
DataCell
HeadCell
Nazwa
Table: TableData
Opis
Element zwracający wartość tekstową ze zbioru danych bazującą na zbiorze danych tabeli,
kolumnie podanej w parametrze var oraz aktualnym wierszu tabeli.
Poniższy dokument składa się z opisu trzech części składających się na wygląd wydruku:
Atrybuty zawężające
Selektory
Reguły
Dostosowanie wygląd wydruku możliwe jest poprzez pliki #style#.xml, np. standardowym plikiem definiującym wygląd Faktury Sprzedaży jest plik 7#SalesInvoice#style#Wydruk_domyślny.xml. Głównym elementem tego pliku jest style, który zawiera elementy określające wygląd poszczególnych elementów wydruku zdefiniowanych w pliku layout.
Jednym z elementów podrzędnych elementu style jest element fonts, który określa wszystkie czcionki, które zostaną wykorzystane w wydruku. Może on zawierać, jeden lub więcej elementów font, który definiuje krój, wielkość, wygląd oraz styl fontu.
name - określa nazwę fontu, przez którą możemy się do niego odwołać
face - nazwa kroju fontu
size - rozmiar w punktach
color - kolor
style - style fontu. Może zawierać jedną (lub więcej wartości oddzielonych znakiem spacji) z wartości bold, italic, underline.
Wewnątrz elementu fonts powinien znaleźć się także jeden element font z pominiętym atrybutem name. Font ten będzie stosowany jako font domyślny dla wydruku.
Oprócz elementu fonts w pliku Styles.xml mogą znajdować się elementy w schemacie:
<selektor>
<reguła/><reguła/>[...]
</selektor>
Gdzie selektor decyduje o tym, czy podległe mu reguły zostaną zastosowane dla danego elementu. Większość selektorów ma taką samą nazwę jak element, który stylują. Np. w celu ostylowania paragrafu (element p w pliku Layout.xml ) należy zastosować selektor p.
Przykład
<p>
<margin top="5"/>
</p>
Powyższy przykład wszystkim paragrafom wydruku ustawi margines górny na 5 punktów. Selektor może wybrać do ostylowania tylko wybrane elementy danego typu. W tym celu do elementu w pliku Layout.xml oraz selektora w pliku Styles.xml należy dodać atrybut class. Selektor wybierze wtedy tylko te elementy, które mają identyczną wartość atrybutu class.
Powyższy przykład ustawi font wszystkich paragrafów na normal ale te, których atrybut class to title zostanie ustawiony font title. Dokładny opis innych atrybutów selektorów oraz spis reguł stylujących znajduje się w sekcji Wygląd. Lista selektorów oraz reguł, które można zastosować dla danego elementu znajduje się w opisie poszczególnych elementów w sekcji Układ. Reguły z pliku style stosowane są od góry do dołu tzn. jeżeli dwa selektory dopasują ten sam element i zawierają one takie same reguły z innymi wartościami to zostanie zastosowana wartość występująca później.
Atrybuty zawężające
Opis każdego selektora zawiera listę elementów, które styluje oraz listę reguł, jakie można w nim umieścić. Opis każdej reguły zawiera listę atrybutów jakie można w niej zastosować.
Każdy selektor może zostać zawężony poprzez atrybut class. Dodatkowo selektory elementów związane z tabelami mogą zostać zawężone poprzez atrybut index, który może zawierać liczbę całkowitą lub wyrażenie postaci An+B, gdzie A oraz B to liczby całkowite. Selektor taki dopasuje element, jeżeli zgadza się on z indeksem wiersza tabeli (wiersze tabeli numerowane są od 0 z góry na dół).
Przykłady:
index="0" - dopasuje pierwszy wiersz w tabeli
index="first" - dopasuje pierwszy wiersz w tabeli
index="last" - dopasuje ostatni wiersz w tabeli
index="5" - dopasuje szósty wiersz w tabeli
index="2n" - dopasuje parzyste wiersze tabeli tzn. z indeksem równym 0,2,4... czyli wiersze pierwszy, trzeci, piąty...
index="3n+1" - dopasuje wiersze z indeksem 1, 4, 7...
index="3n+2" - dopasuje wiersze z indeksem 2, 5, 8...
color - kolor tła elementu. Może on być w formacie #RRGGBB lub 0xRRGGBB lub
0xAARRGGBB
Nazwa
Border
Opis
Reguła określająca obramowanie elementu
Atrybuty
left - szerokość lewego obramowania.
right - szerokość prawego obramowania.
top - szerokość górnego obramowania.
bottom - szerokość dolnego obramowania.
color - kolor obramowania elementu. Może on być w formacie #RRGGBB lub
0xRRGGBB lub 0xAARRGGBB
borderStyle - styl obramowania. Może przyjmować jedną z wartości:
o dashdot
o dashdotdot
o dashlargegap
o dashsmallgap
o dot
o none
o single
Uwagi
Szerokość obramowania może być podana w różnych jednostkach m.in.: cm, in, mm, pt. Domyślną jednostką są punkty.
Nazwa
borderLeft,borderRight,borderTop,borderBottom
Opis
Reguły określające poszczególne części obramowania elementu
Atrybuty
width - szerokość obramowania
color - kolor obramowania
borderStyle - styl obramowania
Nazwa
Fit
Opis
Reguła określająca rozmiar elementu
Atrybuty
width - szerokość elementu
height - wysokość elementu
Uwagi
Szerokość i wysokość może być podana w różnych jednostkach m.in.: cm, in, mm, pt. Stylowany
element zachowa swoje proporcje przyjmując mniejszy z podanych wymiarów.
Nazwa
Margin
Opis
Reguła określająca marginesy elementu
Atrybuty
left - lewy margines
right - prawy margines
top - górny margines
bottom - dolny margines
Uwagi
Szerokość marginesu może być podana w różnych jednostkach m.in.: cm, in, mm, pt.
Nazwa
Text
Opis
Reguła określająca styl tekstu
Atrybuty
align - wyrównanie tekstu. Przyjmuje jedną z wartości:
o right - wyrównanie do prawej
o left - wyrównanie do lewej
o justify - wyjustowanie tekstu
o center - wyśrodkowanie tekstu
indent - wcięcie pierwszej linii tekstu.
leftIndent - wcięcie tekstu z lewej.
rightIndent - wcięcie tekstu z prawej.
font - nazwa fontu zdefiniowana wcześniej w sekcji fonts .
color - kolor tekstu. Może on być w formacie #RRGGBB lub 0xRRGGBB lub
0xAARRGGBB
Nazwa
Width
Opis
Reguła określająca szerokość elementu
Atrybuty
percentage - procentowa szerokość elementu bazująca na szerokości elementu-rodzica
Przykłady wydruków termicznych
W aplikacji Comarch Mobile możliwy jest wydruk dokumentów na drukarce termicznej. Wygląd wydruków można dowolnie modyfikować zgodnie z instrukcją dostępną TUTAJ. Poniżej znajduje się przykład standardowego wydruku termicznego dokumentu Zamówienia Sprzedaży.
Przykład wydruku Zamówienia Sprzedaży na drukarce fiskalnej
Przykłady modyfikacji wydruków do pdf
Dodawanie kolumny
Do omówienia tej modyfikacji, wykorzystany zostanie przykład dodania kolumny zawierającej informację o rabacie.
W celu dodania nowej kolumny należy wyedytować plik #data#. Należy odszukać zapytanie wydobywające dane związane z pozycjami dokumentu. Aby wykorzystać te dane w definicji dokumentu konieczne jest stworzenie aliasu tej kolumny np. Discount. Po dokonaniu zmian zapisujemy dokument.
Dodanie aliasu kolumny odpowiedzialnej za wyświetlanie rabatu
Aby dane te pokazywały się na dokumencie, konieczne jest odpowiednie zmodyfikowanie pliku #layout#, w którym w odpowiedniej sekcji należy dodać kolumnę o nazwie „Rabat”.
W description należy wpisać nazwę kolumny, class - określenie klasy, w tym przypadku jest to numer, var - odniesienie do aliasu kolumny określonej w pliku data tj. Discount. Aby poza wartością rabatu wyświetlany był również symbol procentów, należy dodać na końcu linii znak „%”. Ponieważ rabat powinien być wyświetlany zarówno na dokumencie tworzonym od wartości brutto jak i netto, należy skopiować definicje kolumny do poniższej sekcji. Na koniec zapisujemy zmiany.
Dodanie kolumny Rabat w pliku layout
Zmiana kolorystyki
W celu zmiany kolorystyki wydruku należy wyedytować plik #style#, zmieniając kod koloru dla poszczególnych elementów definicji wydruku w sekcji <fonts>. Kolory podawane są w zapisie heksadecymalnym.
Wskazówka
Zalecanym programem do tej modyfikacji jest Notepad++.
Definicje kolorów w zapisie heksadecymalnym dostępne są w Internecie.
Zmiana koloru w pliku style
Dodawanie/usuwanie/zmiana logo
Aby logo było dodane na wydruku, należy wybraną grafikę zapisać pod nazwą logo.png w folderze
wydruków Printouts. Zmiana logo na inne możliwa jest poprzez zmianę nazwy poprzedniej grafiki oraz dodanie nowej, jako plik o nazwie logo.png o nowszej dacie modyfikacji od poprzedniego, tak jak zostało to zaprezentowane na poniższym rysunku:
Zmiana logo na wydruku
W celu usunięcia logo z wydruku dokumentu, należy usunąć zapytania zwracające logo tj.
W pliku Data:
<set>
<name>Logo</name>
<query>SELECT Data FROM PrintoutsImages WHERE Name='logo.png'</query>
</set>
W pliku Layout:
<image set="Logo" var="Data" />
Dodanie nowych danych na wydruk
Jeżeli istnieje potrzeba pokazania na wydruku niestandardowych danych można to zrealizować w następujący sposób:
przesynchronizować potrzebne dane do tabeli Configuration bazy mobilnej
umieścić nowe dane na wydruku
Poniżej przedstawiony jest przykład dodania na wydruk dokumentu danych pracownika, który wystawił dokument: Zamówienie Sprzedaży przy współpracy z Comarch ERP XL. W sposób opisany poniżej można synchronizować dowolne dane z systemu ERP i prezentować je na wydruku.
Uwaga
Zapytania SQL wykorzystywane w tym przykładzie mogą różnić się w zależności od systemu ERP oraz jego wersji.
W pierwszej kolejności należy w odpowiednim dla wersji systemu ERP pliku konfiguracyjnym znajdującym się w katalogu Methods serwera synchronizacji (ścieżka domyślna: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods\configuration) dodać następujące zapytanie:
UNION ALL
select
1,0,'ImieNazwisko',cast ((Prc_Imie1 +' '+ Prc_Nazwisko) as varchar)from cdn.opekarty opekarjoin cdn.PRCKarty pckar on opekar.Ope_PrcNumer=pckar.Prc_GIDNumerwhere Ope_GIDTyp =128 and Ope_GIDNumer=@UserId
UNION ALL
select
1,0,'telefon',cast (Prc_Telefon3 as varchar)from cdn.opekarty opekarjoin cdn.PRCKarty pckar on opekar.Ope_PrcNumer=pckar.Prc_GIDNumerwhere Ope_GIDTyp =128 and Ope_GIDNumer=@UserId
UNION ALL
select
1,0,'email',cast (Prc_EMail as varchar)from cdn.opekarty opekarjoin cdn.PRCKarty pckar on opekar.Ope_PrcNumer=pckar.Prc_GIDNumerwhere Ope_GIDTyp =128 and Ope_GIDNumer=@UserId
Powyższe zapytania pobierają z bazy systemu ERP dane dotyczące pracownika: imię i nazwisko, telefon, e-mail. Dodanie zapytań do pliku spowoduje, że konkretne dane zostaną przesynchronizowane do tabeli Configuration na bazie mobilnej.
Kolejnym krokiem jest modyfikacja pliku wydruku 1#SalesOrder#data#Wydruk_domyślny.xml znajdującego się w katalogu Printouts serwera synchronizacji. Należy dodać zapytania pobierające zsynchronizowane wcześniej dane do tabeli Configuration. Nowo dodane fragmenty zostały oznaczone kolorem żółtym:
...
<set>
<name>Logo</name><query>SELECT Data FROM PrintoutsImages WHERE Name='logo.png'</query>
</set>
<set><name>Wystawil</name><query>SELECT Value FROM Configuration WHERE key like 'ImieNazwisko'</query></set><set><name>Wystawiltel</name><query>SELECT Value FROM Configuration WHERE key like 'telefon'</query></set><set><name>Wystawilemail</name><query>SELECT Value FROM Configuration WHERE key like 'email'</query></set>
...
Ostatnim krokiem jest modyfikacja pliku wydruku 1#SalesOrder#layout#Wydruk_domyślny.xml, która polega na dodaniu wpisów odpowiedzialnych za wyświetlanie danych, które zostały zwrócone w zapytaniach w pliku 1#Order#data#Wydruk_domyślny.xml:
Po wykonaniu powyższych modyfikacji należy wykonać synchronizację z urządzenia mobilnego. Po modyfikacji wydruk powinien wglądać następująco:
Zamówienie Sprzedaży z danymi osoby wystawiającej
Przykłady modyfikacji wydruków termicznych
Usunięcie tabeli i przesunięcie tekstu
Opis modyfikacji będzie dotyczył standardowej definicji wydruku termicznego dokumentu Faktura sprzedaży. Opisane zostanie usunięcie tabeli zawierającej informacje o VAT oraz przesunięcie informacji o zapłacie na prawą stronę wydruku.
Standardowy wydruk termiczny dokumentu Faktura Sprzedaży
Należy zmodyfikować plik: 17#SalesInvoice#layout#Thermal#Vline112#Wydruk_domyślny.xml. W pliku tym należy usunąć lub zakomentować linijki dotyczące tabeli zawierającej informacje o VAT jak poniżej:
oraz dla części zawierającej informacje o zapłacie zmodyfikować wartości offset z 0 na 40 (cały wydruk ma szerokość 80) poszczególnych danych jak w przykładzie poniżej zaznaczono kolorem czerwonym:
Po wprowadzeniu tej modyfikacji wydruk termiczny Faktury sprzedaży powinien wyglądać następująco:
Wydruk dokumentu Faktura Sprzedaży po modyfikacji
Dodanie nowych danych na wydruk
Jeżeli istnieje potrzeba pokazania na wydruku niestandardowych danych można to zrealizować w następujący sposób:
przesynchronizować potrzebne dane do tabeli Configuration bazy mobilnej
umieścić nowe dane na wydruku
Standardowy wydruk termiczny dokumentu Faktura Sprzedaży
Poniżej przedstawiony jest przykład dodania na wydruk dokumentu danych pracownika, który wystawił dokument: Faktura Sprzedaży przy współpracy z Comarch ERP XL 2018.2.1. W sposób opisany poniżej można synchronizować dowolne dane z systemu ERP i prezentować je na wydruku.
Uwaga
Zapytania SQL wykorzystywane w tym przykładzie mogą różnić się w zależności od systemu ERP oraz jego wersji.
W pierwszej kolejności należy w odpowiednim dla wersji systemu ERP pliku konfiguracyjnym znajdującym się w katalogu Methods serwera synchronizacji (ścieżka domyślna: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods\configuration) dodać następujące zapytanie:
UNION ALL
select
1,0,'ImieNazwisko',cast ((Prc_Imie1 +' '+ Prc_Nazwisko) as varchar)from cdn.opekarty opekarjoin cdn.PRCKarty pckar on opekar.Ope_PrcNumer=pckar.Prc_GIDNumerwhere Ope_GIDTyp =128 and Ope_GIDNumer=@UserId
UNION ALL
select
1,0,'telefon',cast (Prc_Telefon3 as varchar)from cdn.opekarty opekarjoin cdn.PRCKarty pckar on opekar.Ope_PrcNumer=pckar.Prc_GIDNumerwhere Ope_GIDTyp =128 and Ope_GIDNumer=@UserId
UNION ALL
select
1,0,'email',cast (Prc_EMail as varchar)from cdn.opekarty opekarjoin cdn.PRCKarty pckar on opekar.Ope_PrcNumer=pckar.Prc_GIDNumerwhere Ope_GIDTyp =128 and Ope_GIDNumer=@UserId
Powyższe zapytania pobierają z bazy systemu ERP dane dotyczące pracownika: imię i nazwisko, telefon, e-mail. Dodanie zapytań do pliku spowoduje, że konkretne dane zostaną przesynchronizowane do tabeli Configuration na bazie mobilnej.
Kolejnym krokiem jest modyfikacja pliku wydruku 11#SalesOrder#data#Thermal#Vline112#Wydruk_domyślny.xml znajdującego się w katalogu Printouts serwera synchronizacji. Należy dodać zapytania pobierające zsynchronizowane wcześniej dane do tabeli Configuration. Nowo dodane fragmenty zostały oznaczone kolorem żółtym:
...
<set>
<name>Logo</name><query>SELECT Data FROM PrintoutsImages WHERE Name='logo.png'</query>
</set>
<set><name>Wystawil</name><query>SELECT Value FROM Configuration WHERE key like 'ImieNazwisko'</query></set><set><name>Wystawiltel</name><query>SELECT Value FROM Configuration WHERE key like 'telefon'</query></set><set><name>Wystawilemail</name><query>SELECT Value FROM Configuration WHERE key like 'email'</query></set>
...
Ostatnim krokiem jest modyfikacja pliku wydruku 11#SalesOrder#layout#Thermal#Vline112#Wydruk_domyślny.xml, która polega na dodaniu wpisów odpowiedzialnych za wyświetlanie danych, które zostały zwrócone w zapytaniach w pliku 11#SalesOrder#data#Thermal#Vline112#Wydruk_domyślny.xml w miejsce nad linię z informacją o osobach uprawnionych i dacie odbioru:
Po wykonaniu powyższych modyfikacji należy wykonać synchronizację z urządzenia mobilnego. Po modyfikacji wydruk termiczny powinien wglądać następująco:
Wydruk dokumentu Faktura Sprzedaży z dodatkowymi danymi
Rozszerzalność aplikacji
Rozszerzalność aplikacji
Istnieje możliwość modyfikacji standardowego wyglądu oraz działania aplikacji poprzez integracje z zewnętrzną aplikacją.
Możliwości, jakie daje funkcjonalność to:
rozszerzanie górnego paska aplikacji (ActionBara) w głównym oknie listy kontrahentów o nowe elementy, rozszerzanie ActionBara w oknie dokumentu, pozycji dokumentu, raportu, terminarza, zlecenia serwisowego, czynności serwisowych o nowe elementy,
rozszerzanie dużej kalkulacji pozycji na dokumentach (ukrywanie kontrolek, dodawanie nowych,
modyfikacja istniejących np. poprzez zmianę tekstu lub koloru),
rozszerzanie karty kontrahenta (ukrywanie kontrolek, dodawanie nowych oraz modyfikacja istniejących).
Przykład
Za pomocą przycisku umożliwiono przełączanie się pomiędzy domyślną stawką VAT dla towaru, a alternatywną stawką VAT ustawioną na kontrahencie.
Przykład zastosowania rozszerzalności aplikacji – możliwość przełączania się pomiędzy domyślną stawką VAT zdefiniowaną dla kontrahenta
Oprócz zmiana interfejsowych możliwe jest także rozszerzanie procesu synchronizacji o nowe elementy, w celu prze synchronizowania dodatkowych tabel/obiektów z systemu ERP.
Więcej informacji i rozszerzalności aplikacji znajduje się TUTAJ.
Raporty
Edycja raportów
W aplikacji umożliwiono usuwanie, dodawanie oraz edycję raportów z poziomu serwera synchronizacji. Definicje raportów znajdują się w katalogu: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji/Reports.
Aby dodać nowy raport należy utworzyć jego definicję, a następnie zapisać go w formacie xml.
Uwaga
W przypadku zapisu definicji raportu w Notatniku należy wybrać kodowanie UTF-8.
Aby usunąć istniejący raport należy zmienić jego ID na ujemne, następnie zmienić datę modyfikacji (np. wystarczy zapisać ponownie plik z raportem) i wykonać synchronizację.
Uwaga
Podczas synchronizacji definicji raportów na urządzenie brana jest pod uwagę data modyfikacji pliku. W celu wymuszenia synchronizacji raportu należy wykonać dowolną modyfikację.
Zmiana ID raportu na ujemne
Istnieje możliwość zmiany języka raportu.
Przykład
W przypadku, gdy w wersji polskojęzycznej chcemy mieć raport w języku niemieckim, to należy zmodyfikować ostatni człon nazwy z deu na pol, następnie należy zmienić datę modyfikacji.
Konfiguracja raportów prowizji
Do odpowiedniego wyliczenia raportu prowizji konieczne jest założenie następującego atrybutu na karcie towaru, gdzie:
Klasa Atrybutów: „Prowizja”
Typ: Liczba
Po zdefiniowaniu na kartach produktu w systemie Comarch ERP XL odpowiedniego atrybutu, w aplikacji można porównywać sprzedaż pod względem wartości prowizji.
Ustawienie atrybutu na karcie towaru (Prowizja) w systemie Comarch ERP XL
Elementy składowe
Definicja raportu składa się z danych sekcji xml. Główną sekcją raportu jest sekcja report. W niej zaś zawarte są następujące:
reportHeader
reportType
orderOnList
onListVisibillity
arguments
elements
W celu opisania elementów składowych raportów jako przykład wykorzystany zostanie standardowy raport dostępny w aplikacji Comarch Mobile - Podsumowanie dnia, którego definicja znajduje się w pliku 2#SummaryOfTheDay#pol.xml.
Nagłówek
Nagłówek raportu opisany jest sekcją reportHeader, w niej zaś znajdują się poniższe:
Nazwa
name
Opis
Nazwa raportu.
Parametry
wartość tekstowa
Nazwa
description
Opis
Opis raportu.
Parametry
wartość tekstowa
Przykład
<reportHeader>
<name>Podsumowanie dnia</name><description>Podsumowanie wykonanych w dniu operacji. Sprzedaż wg grup. Udział grup w sprzedaży dnia.</description>
</reportHeader>
Widok raportu w kaflu Raporty
Typ raportu
Sekcja oznaczająca typ raportu: reportType. Musi zawierać następującą sekcję:
Nazwa
value
Opis
Wartość typu raportu. Np. jeżeli użytkownik nie posiada praw do dokumentów zakupowych, to nie wykona raportu o typie 2.
Parametry
0 - wszystkie typy
1 - raport sprzedażowy
2 - raport zakupowy
3 - raport serwisowy
Przykład
<reportType>
<value>0</value>
</reportType>
Kolejność raportów
Sekcja oznaczająca priorytet raportu: orderOnList. Musi zawierać następującą sekcję:
Nazwa
value
Opis
Priorytet wyświetlania raportu na liście raportów w kaflu Stan.
Parametry
brak sekcji - raport wyświetlany pod elementami zawierającymi tą sekcję
wartość liczbowa
Przykład
<orderOnList>
<value>1</value>
</orderOnList>
Widoczność raportu
Sekcja onListVisibillity określa miejsca w aplikacji mobilnej poza kaflem Raporty, z których dostępny jest raport. Musi zawierać następującą sekcję:
Nazwa
value
Opis
Wartość występowania raportu. Możliwe wartości łączone np. 129 = 128+1 - raport widoczny zarówno na liście kontrahentów jak i karcie kontrahenta.
Parametry
0 - tylko lista raportów
1 - lista kontrahentów
2 - lista towarów
4 - element wizyty "Inny"
8 - listy pozycji dokumentów
16 - duża kalkulacja podczas dodawania pozycji na dokument
Dostępność raportu z poziomu dodawania pozycji na dokumencie
Argumenty
Raport może wykorzystywać podane przez użytkownika aplikacji po kliknięciu w ikonę ołówka argumenty (parametry). Argumenty znajdują się w sekcji arguments definicji raportu, zaś poszczególne argumenty opatrzone są sekcją argumentwedług następującego przykładu:
Przykład
<arguments>
<argument>...</argument>
</arguments>
Parametry raportu Podsumowanie dnia
Wskazówka
Aby wstawiane polecenia SQL działały poprawnie należy umieścić je w znaczniku <![CDATA[polecenieSQL ]> w celu wyłączenia spod analizy deserializatora XML.
Argument może zawierać następujące sekcje:
Nazwa
id
Opis
Identyfikator argumentu.
Parametry
wartość liczbowa
Nazwa
typeId
Opis
Typ argumentu.
Parametry
0 - wybór daty
1 - pole tekstowe
2 - lista z parametrami zdefiniowanymi w sekcji posibleSQL
3 - pole liczbowe
4 - wybór kontrahenta
5 - wybór towaru
6 - wybór typu check
Wskazówka
Jeżeli typ argumentu został wybrany jako 0 (wybór daty), to element defaultSQL należy ustawić jako:
<![CDATA[select date('now','localtime')]]>
zaś posibleSQL zostawić puste wstawiając:
<![CDATA[]]>
Przykład
Przykład argumentu wybranego jako typ 6 (typ check) w raporcie Prezentacja partii towaru (45#ItemLots#pol.xml) dostępnym przy współpracy z systemem ERP Altum:
<argument>
<id>3</id><typeId>6</typeId><name>mag</name><visibleName>Magazyn</visibleName><defaultSQL><![CDATA[SELECT '(' || group_concat(id, ',') || ')' AS Conc, 'Wszystkie' AS ValueFROM WarehousesWHERE IsActive = 1 AND Id > 0GROUP BY Value ]]></defaultSQL><posibleSQL><![CDATA[SELECT id || ' [' || code || '] ' , name FROM Warehouses WHERE IsActive = 1 AND Id > 0 ]]></posibleSQL>
</argument>
Widok wyboru parametru o typie check
Nazwa
name
Opis
Nazwa argumentu używana w poleceniach SQL.
Parametry
wartość tekstowa
Nazwa
visibleName
Opis
Nazwa argumentu widoczna w aplikacji.
Parametry
wartość tekstowa
Nazwa
defaultSQL
Opis
Wartość parametru ustawiana domyślnie. Jeżeli wartość pozostanie pusta (ustawiona na <![CDATA[]]>) to wartość parametru w aplikacji ustawi się na 'Wybierz wartość' i konieczny będzie wybór tego parametru przed otwarciem raportu.
Parametry
polecenie SQL
Nazwa
posibleSQL
Opis
Wartości parametru możliwe do wyboru.
Parametry
polecenie SQL
Nazwa
isErpSQL
Opis
Znacznik decydujący czy polecenie SQL ma być wykonywane na bazie systemu ERP. Używany w raportach online.
Parametry
brak sekcji - polecenie wykonywane na bazie mobilnej
0 - polecenie wykonywane na bazie mobilnej
1 - polecenie wykonywane na bazie systemu ERP
Nazwa
validationRule
Opis
Znacznik definiujący sposób walidacji argumentu (tylko dla typu data).
Parametry
Trzy cyfry oddzielone kropkami np. 2.0.1:
Pierwsza cyfra:
0 - brak walidacji
1 - sprawdzenie, czy data jest przyszła
2 - sprawdzenie, która data jest późniejsza
Druga cyfra - określa pary argumentów (np. argument dataOd 2.1.1 a dataDo 2.1.2)
Trzecia cyfra - określa która data ma być wcześniejszą (wartość 1), a która późniejszą (wartość 2)
Przykład
<argument>
<id>2</id><typeId>2</typeId><name>grupowanie</name><visibleName>Sposób grupowania</visibleName><defaultSQL><![CDATA[select 0,'Brak']]></defaultSQL><posibleSQL><![CDATA[select 0,'Brak' union all select 1,'Kategoria' union all select 2,'Marka' union all select 3,'Producent' union all select 4,'Grupa']]></posibleSQL>
</argument>
Zdefiniowany w powyższym przykładzie argument widoczny jest w aplikacji w następujący sposób:
Parametr Sposób grupowania
Elementy
Elementy raportu składają się na jego wygląd w aplikacji mobilnej. Poszczególne elementy raportu znajdują się w sekcji elements definicji raportu, zaś każda z poniżej opisanych sekcji może znajdować się w sekcji element, która jest definicją jednego elementu.
Przykład
<elements>
<element>...</element>
</elements>
Nazwa
id
Opis
Identyfikator elementu.
Parametry
wartość liczbowa
Nazwa
typeId
Opis
Typ elementu.
Parametry
0 – nagłówek raportu, który w aplikacji widoczny jest w raporcie na zielonej belce.
1 – tabela1
2 – tabela2
3 – wykres słupkowy
4 – wykres kołowy
5 – wykres liniowy
6 – wartość tekstowa
Nazwa
sql
Opis
Polecenie SQL wykonywane na bazie SQL, które tworzy tabelę wynikową. Podanie argumentu odbywa się poprzez umieszczenie jego nazwy w znakach @ np. @grupowanie@.
Parametry
polecenie SQL/polecenie wywołujące procedurę
Nazwa
header
Opis
Nagłówek elementu.
Parametry
wartość tekstowa/polecenie SQL
Nazwa
headerType
Opis
Typ nagłówka raportu.
Parametry
0 - tekst
1 - polecenie SQL
Nazwa
isSummary
Opis
Znacznik czy element zawiera podsumowanie zwartości tabeli. W przypadku jego użycia w sekcji sql należy umieścić polecenia sumujące wybrane kolumny tabeli.
Parametry
brak sekcji - brak podsumowania
0 - brak podsumowania
1 - podsumowanie
polecenie SQL zwracające jedną z powyższych wartości
Nazwa
isSummaryType
Opis
Typ znacznika podsumowania.
Parametry
brak sekcji - wartość liczbowa
0 - wartość liczbowa
1 - polecenie SQL
Nazwa
isErpSQL
Opis
Znacznik czy polecenie ma być wykonane na bazie systemu ERP. Używany w raportach online.
Parametry
brak sekcji - polecenie wykonywane na bazie mobilnej
0 - polecenie wykonywane na bazie mobilnej
1 - polecenie wykonywane na bazie systemu ERP
Nazwa
reportTypeVisibility
Opis
Widoczność elementu w zależności od rodzaju raportu.
Parametry
0 - wszystkie typy
1 - raport sprzedażowy
2 - raport zakupowy
3 - raport serwisowy
Nazwa
showNumberOfRows
Opis
Wyświetla liczbę zwróconych rekordów w tabeli jako ostatni wiersz tabeli. Używane tylko gdy sekcja isSummary przyjmuje wartość 1.
Parametry
brak sekcji - nie wyświetlaj
0 - nie wyświetlaj
1 - wyświetl
Nazwa
isExecute
Opis
Znacznik czy wykonać dany element.
Parametry
0 - brak wykonania
1 - wykonanie
polecenie SQL zwracające jedną z powyższych wartości
Nazwa
isExecuteType
Opis
Typ znacznika wykonania elementu.
Parametry
brak sekcji - wartość liczbowa
0 - wartość liczbowa
1 - polecenie SQL
Przykład
<element>
<id>8</id><typeId>3</typeId><sql><![CDATA[selectcoalesce(categories.name, 'Brak kategorii') as Kategoria,sum(DocumentsPositions.GrossValueInSystemCurrency) as NetValuefrom documentsjoin documentspositionson documentspositions.documentid = documents.idAND DocumentsPositions.DocumentIsLocal = Documents.DocumentIsLocaland DocumentsPositions.IsItemsSetVirtualPosition = 0and DocumentsPositions.RelatedItemsSetOrdinal is nulljoin items on items.id = documentspositions.itemidleft join categories on items.categoryid = categories.idwhere Documents.DocumentIsLocal = 1 AND documents.NumeratorId IN (16,17) AND datetime(DocumentDate/1000, 'unixepoch','localtime') >datetime(date(@data@/1000, 'unixepoch', 'localtime'),'start of day') and datetime(DocumentDate/1000, 'unixepoch','localtime') <datetime(date(@data@/1000, 'unixepoch','localtime'),'start of day','+1 day', '-1 seconds') and 1 = @grupowanie@ group by categories.nameunion allselectcoalesce(brands.name, 'brak marki') as Marka,sum(DocumentsPositions.GrossValueInSystemCurrency) as NetValuefrom documentsjoin documentspositions on documentspositions.documentid = documents.id AND DocumentsPositions.DocumentIsLocal = Documents.DocumentIsLocal and DocumentsPositions.IsItemsSetVirtualPosition = 0 and DocumentsPositions.RelatedItemsSetOrdinal is nulljoin items on items.id = documentspositions.itemidleft join brands on items.brandid = brands.idwhere Documents.DocumentIsLocal = 1 AND documents.NumeratorId IN (16,17) AND datetime(DocumentDate/1000, 'unixepoch','localtime') >datetime(date(@data@/1000, 'unixepoch', 'localtime'),'start of day') and datetime(DocumentDate/1000, 'unixepoch','localtime') <datetime(date(@data@/1000, 'unixepoch','localtime'),'start of day','+1 day', '-1 seconds') and 2 = @grupowanie@ group by brands.nameunion allselectcoalesce(Producers.name, 'brak producenta') as Grouping,sum(DocumentsPositions.GrossValueInSystemCurrency) as NetValuefrom documentsjoin documentspositions on documentspositions.documentid = documents.idAND DocumentsPositions.DocumentIsLocal = Documents.DocumentIsLocaland DocumentsPositions.IsItemsSetVirtualPosition = 0and DocumentsPositions.RelatedItemsSetOrdinal is nulljoin items on items.id = documentspositions.itemidleft join Producers on items.producerid = Producers.idwhere Documents.DocumentIsLocal = 1 AND documents.NumeratorId IN (16,17) AND datetime(DocumentDate/1000, 'unixepoch','localtime') >datetime(date(@data@/1000, 'unixepoch', 'localtime'),'start of day') and datetime(DocumentDate/1000, 'unixepoch') <datetime(date(@data@/1000, 'unixepoch','localtime'),'start of day','+1 day', '-1 seconds') and 3 = @grupowanie@ group by Producers.nameunion allselectcoalesce(ig.name , 'brak grupy towaru') as Grupa ,sum(DocumentsPositions.GrossValueInSystemCurrency) as GrossValuefrom documentsjoin documentspositionson documentspositions.documentid = documents.idAND DocumentsPositions.DocumentIsLocal = Documents.DocumentIsLocaland DocumentsPositions.IsItemsSetVirtualPosition = 0and DocumentsPositions.RelatedItemsSetOrdinal is nulljoin items on items.id = documentspositions.itemidjoin itemsgroupslinks igl on items.id = igl.itemidjoin itemsgroups ig on groupid = ig.idwhere Documents.DocumentIsLocal = 1 AND documents.NumeratorId IN (16,17) AND (select count(*) from itemsgroups join itemsgroupslinks on itemsgroupslinks.itemid = igl.itemid and itemsgroups.id = itemsgroupslinks.groupid where parentid = ig.id) = 0 and datetime(DocumentDate/1000, 'unixepoch','localtime') >datetime(date(@data@/1000, 'unixepoch', 'localtime'),'start of day') and datetime(DocumentDate/1000, 'unixepoch','localtime') <datetime(date(@data@/1000, 'unixepoch','localtime'),'start of day','+1 day', '-1 seconds') and @grupowanie@=4 group by ig.name]]></sql><header>Wykres zakupu wg grupowania</header><isSummary>0</isSummary><reportTypeVisibility>2</reportTypeVisibility>
</element>
Widok standardowego raportu Podsumowanie dnia
Przykłady modyfikacji raportów
Dodanie argumentu
W celu opisania przykładowej modyfikacji raportu wykorzystany zostanie Raport dobowy przedstawiciela. Do raportu zostanie dodany argument za pomocą którego możliwe będzie wybranie dnia, z którego dany raport zostanie zaprezentowany.
W tym celu należy wyedytować definicję raportu o nazwie 53#DailyReport#pol.xml znajdującą się w domyślnej lokalizacji C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Reports\ i katalogu odpowiednim dla systemu ERP. W pliku tym należy przed sekcją elements dodać sekcję zawierającą argumenty raportu oraz argument o typie daty (typeId = 0) według następującego przykładu:
Kolejnym krokiem dla lepszej czytelności raportu będzie usunięcie godziny z nagłówka raportu znajdującego się na zielonej belce. Dla pierwszego elementu raportu (id = 1) należy wyedytować sekcję sql w pozostawiając następujące polecenie:
Następnie w całym pliku należy wyszukać wszystkie fragmenty kodu odnoszące się do aktualnej daty i zamienić je na odnoszące się do wcześniej zdefiniowanego argumentu. Wobec tego należy fragmenty:
date('now','localtime')
Zamienić na następujące:
date(@data@/1000, 'unixepoch', 'localtime')
Po wykonaniu tych kroków zmodyfikowany raport będzie wymagał wyboru daty:
Widok okna z wyborem parametru
I będzie prezentował dane o stanach magazynów mobilnych oraz wystawionych dokumentach, zapisach kasowych i obrotu kaucjami z wybranego dnia.
Widok raportu z różnymi danymi
Dodanie nowej kolumny w tabeli
W celu opisania modyfikacji wykorzystany zostanie raport Sprzedaż SKU. Modyfikacja dotyczyć będzie dodania nowej kolumny z kodem EAN w tabeli Towary.
Standardowy raport Sprzedaż SKU
W tym celu należy wyedytować definicję raportu o nazwie 1#SalesSKU#pol.xml znajdującą się w domyślnej lokalizacji C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Reports\.
Wskazówka
Poprawność modyfikowanych zapytań SQL można zweryfikować wykonując je na bazie mobilnej (plik data.db na urządzeniu mobilnym) np. za pomocą narzędzia SQLite Studio.
W pliku należy wyedytować zapytanie SQL dla elementu o id = 3 dodając do niego pole zwracające kod EAN dla danego towaru w poleceniu select wraz z funkcją IFNULL, która w przypadku braku kodu EAN dla towaru zwróci pustą wartość w wierszu tabeli. Następnie należy do zapytania dołączyć tabelę ItemsBarcodes używając polecenia LEFT JOIN oraz odpowiednich aliasów. Dodane linijki zostały oznaczone kolorem żółtym.
<id>3</id>
<typeId>1</typeId>
<sql>
<![CDATA[
Select
Items.Name as '[l]Nazwa',
IFNULL(bar.Barcode, '') AS EAN,
(sum(DocumentsPositions.Quantity/DocumentsPositions.Denominator*DocumentsPositions.Nominator)) as '[d4]Ilość',
DocumentsPositions.UnitName as JM,
cast(ROUND(sum(DocumentsPositions.NetValueInSystemCurrency), 2) as Varchar) || ' ' || c.Symbol as 'Netto',
cast(ROUND(sum(DocumentsPositions.GrossValueInSystemCurrency), 2) as varchar) || ' ' || c.Symbol as 'Brutto',
sum(DocumentsPositions.Quantity) as '[d4]Ilość(podst.)',
DocumentsPositions.BaseUnitName as 'JM(podst.)'
from Documents d
join DocumentsPositions
on d.Id = DocumentsPositions.DocumentId
AND d.DocumentIsLocal = DocumentsPositions.DocumentIsLocal
and DocumentsPositions.IsItemsSetVirtualPosition = 0
and DocumentsPositions.RelatedItemsSetOrdinal is null
join Items on Items.Id = DocumentsPositions.ItemId
left JOIN ItemsBarcodes bar ON bar.ItemId = DocumentsPositions.ItemId
join Currencies c ON c.e = 1 AND c.IsSystem = 1
where d.DocumentIsLocal = 1 AND NumeratorId IN (1,2,3,4,5) AND datetime(d.DocumentDate/1000, 'unixepoch','localtime') >datetime(date(@dataOd@/1000, 'unixepoch','localtime'),'start of day')
and datetime(d.DocumentDate/1000, 'unixepoch','localtime') <datetime(date(@dataDo@/1000, 'unixepoch','localtime'),'start of day','+1 day', '-1 seconds')
group by DocumentsPositions.ItemId,unitname order by items.name
]]>
</sql>
Zmodyfikowany w ten sposób raport będzie prezentował się następująco:
Raport Sprzedaż SKU z dodatkową kolumną EAN
Usunięcie kolumny z tabeli
W celu opisania modyfikacji wykorzystany zostanie raport Ranking kontrahentów kupujących towar, w którym to usunięte zostaną dwie kolumny z tabeli: Marża (kwotowo) i Marża (procentowo).
Standardowy raport: Ranking kontrahentów kupujących towar
W tym celu należy wyedytować definicję raportu o nazwie 38#CustomersPurchasingItems#pol.xml znajdującą się w domyślnej lokalizacji C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Reports\.
Wskazówka
Poprawność modyfikowanych zapytań SQL można zweryfikować wykonując je na bazie mobilnej (plik data.db na urządzeniu mobilnym) np. za pomocą narzędzia SQLite Studio.
Z pliku należy usunąć część zapytania SQL dla elementu o id = 2, która odpowiada za zwrócenie wartości danych kolumn Marża (kwotowo) i Marża (procentowo). Będzie to poniższy fragment, który dla tego elementu występuje dwa razy:
CASE
WHEN SUBSTR(ROUND(SUM(Case when d.IsVatFromNetValue == 1 THEN dp.MarginValueInSystemCurrency ELSE dp.MarginValueInSystemCurrency*100/(100+dp.VatRateValue) END), 2), LENGTH(ROUND(SUM(Case when d.IsVatFromNetValue == 1 THEN dp.MarginValueInSystemCurrency ELSE dp.MarginValueInSystemCurrency*100/(100+dp.VatRateValue) END), 2))-1,1) = "."
THEN ROUND(SUM(Case when d.IsVatFromNetValue == 1 THEN dp.MarginValueInSystemCurrency ELSE dp.MarginValueInSystemCurrency*100/(100+dp.VatRateValue) END), 2) || "0" || "<br/>" || (Select Value From Configuration Where Key == 'Currency')
ELSE ROUND(SUM(Case when d.IsVatFromNetValue == 1 THEN dp.MarginValueInSystemCurrency ELSE dp.MarginValueInSystemCurrency*100/(100+dp.VatRateValue) END), 2) || "<br/>" || (Select Value From Configuration Where Key == 'Currency')
END AS '[c]Marża<br/>(kwotowo)',
CASE
WHEN (Select Value From Configuration Where Key == 'MarginCountType') == 1
THEN IFNULL(ROUND(ROUND(SUM(Case when d.IsVatFromNetValue == 1 THEN dp.MarginValueInSystemCurrency ELSE dp.MarginValueInSystemCurrency*100/(100+dp.VatRateValue) END), 2)/SUM(dp.EndNetPriceInSystemCurrency * dp.Quantity)*100, 2), 0.00) || " %"
ELSE IFNULL(ROUND(ROUND(SUM(Case when d.IsVatFromNetValue == 1 THEN dp.MarginValueInSystemCurrency ELSE dp.MarginValueInSystemCurrency*100/(100+dp.VatRateValue) END), 2)/SUM(dp.BaseNetPriceInSystemCurrency * dp.Quantity)*100, 2), 0.00) || " %"
END AS '[c]Marża<br/>(procentowo)'
Dodatkowo należy usunąć możliwość wyboru sortowania danych po usuniętych kolumnach. W tym celu dla argumentu o id = 4 z sekcji posibleSQL należy usunąć następujące wartości:
UNION ALL
SELECT 3, 'Marża(kwotowo)'
UNION ALL
SELECT 4, 'Marża(procentowo)'
Po wykonaniu powyższych kroków raport powinien wyglądać następująco:
Raport: Ranking kontrahentów kupujących towar po modyfikacji
Kontrahenci
Określenie rodzajów kontrahentów na wzorcu wizyty
Istnieje możliwość planowania wizyt z uwzględnieniem rodzaju kontrahenta. Funkcjonalność ta jest zależna od określenia rodzajów kontrahentów na wzorcu wizyty w systemie ERP XL:
Określenie rodzajów kontrahenta na wzorcu wizyty
Zaznaczenie powyższego parametru spowoduje, że operator będzie mógł zaplanować wizytę z danym wzorcem tylko dla znajdujących się na liście rodzajów kontrahentów.
Jeśli opcja ta zostanie odznaczona, będzie istniała możliwość dodania lub usunięcia danego rodzaju kontrahentów z listy.
W aplikacji Comarch Mobile jest możliwość obsługi programów lojalnościowych. Umożliwiono pobieranie z systemu ERP punktów lojalnościowych zgromadzonych na kontach określonych kontrahentów za zakup poszczególnych towarów. Zebrane punkty mogą zostać wykorzystane w aplikacji mobilnej do nadania rabatów. Aby umożliwić rozliczanie punktów lojalnościowych z poziomu aplikacji Comarch Mobile, należy:
stworzyć definicję programu lojalnościowego zgodnego ze swoimi założeniami oraz wymaganiami opisanymi w dalszej części dokumentu,
obsłużyć synchronizację punktów lojalnościowych kontrahentów,
włączyć obsługę programu lojalnościowego w pliku configuration.*.statement (Domyślna lokalizacja pliku to C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods\configuration), poprzez zmianę wartości klucza [IsLoyaltyEnabled] na 1.
Struktura definicji programu lojalnościowego
Przygotowane definicje programów lojalnościowych należy umieścić w pliku z rozszerzeniem XML w katalogu [LoyaltyProgramsDefinitions] katalogu głównego serwera synchronizacji Mobile. Nazwa pliku musi składać się z
<IdProgramuLojalnosciowego>#<NazwaProgramuLojalnosciowego>.xml
Przykład
12#NaszaLojalnosc.xml
Synchronizacja definicji do urządzeń mobilnych odbywa się po każdej modyfikacji w plikach definicji. Aby usunąć już zsynchronizowaną definicję z urządzeń mobilnych należy zmienić id programu na wartość ujemną. Taka definicja zostanie usunięta przy następnej synchronizacji.
SettleDocumentsValue – flaga bitowa określająca, na jakich dokumentach bierze udział program lojalnościowy. Poszczególne typy dokumentów będą miały przyporządkowane wartości:
1 – OS
2 – ZS
4 – FS
8 – PA
16 – WZ
32 – WM
Wskazówka
Wartość pola 5 oznaczać będzie, że rozliczenie punktów dostępne będzie na dokumentach OS i FS (1+4).
CheckContractorStatusQuery – Zapytanie sprawdzające czy dany kontrahent bierze udział w programie lojalnościowym oraz zwraca liczbę punktów dostępnych dla kontrahenta. Zwrócenie wiersza oznacza, że kontrahent bierze udział w programie lojalnościowym.
Parametry wejściowe:
@DocumentType – typ dokumentu. Wartość zgodna z wartościami z punktu drugiego.
@ContractorId – identyfikator kontrahenta
@LoyaltyProgramId – identyfikator programu lojalnościowego
@EditedDocumentId – identyfikator dokumentu, który jest teraz aktualnie reedytowany (został tylko zapisany wcześniej, został cofnięty do bufora)
Kolumny wyjściowe:
Liczba punktów dostępnych do zużycia przez kontrahenta
CheckArticleStatusQuery – Zapytanie sprawdzające czy dany towar jest dostępny w danym programie lojalnościowym oraz zwraca liczbę punktów do rozliczenia na pozycji.
Parametry wejściowe
@ArticleId – identyfikator towaru na który wystawiana jest pozycja
@StartGrossPrice – początkowa cena brutto
@StartNetPrice – początkowa cena netto
@Quantity – ilość w jednostce bazowej
@AvailablePoints – liczba dostępnych punktów kontrahenta
@DocumentType – typ dokumentu. Wartość zgodna z wartościami z punktu drugiego.
@ContractorId – identyfikator kontrahenta
@LoyaltyProgramId – identyfikator programu lojalnościowego
@EditedDocumentId – identyfikator dokumentu, który jest teraz aktualnie reedytowany (został tylko zapisany wcześniej, został cofnięty do bufora)
Kolumny wyjściowe
InitialMessageText – komunikat powitalny. Może zawierać proste tagi html’owe w celu sformatowania tekstu. (np. Dodanie nowej linii <br />, Zmiana koloru fragmentu tekstu <font color=”#FF0000″></font>, itd.)
AfterRemovePositionLoyaltyProgramQuery – Zapytanie wykonywane po usunięciu rozliczenia programu lojalnościowego na pozycji. Służy do wycofania zmian wykonanych w AfterAddPositionLoyaltyProgramQuery.
Parametry wejściowe
@LoyaltyProgramId – identyfikator programu lojalnościowego
@ProgramName – nazwa programu lojalnościowego
@AttributeObjectType – typ atrybutów dla pozycji
@ObjectId – identyfikator dokumentu
@ObjectIsLocal – identyfikator dokumentu
@ObjectSubId – identyfikator pozycji
@ObjectSubIsLocal – identyfikator pozycji
Obsługiwane jest wiele zapytań w ramach tej samej definicji. Separator skryptów „;GO;”
AfterAddPositionLoyaltyProgramQuery – Zapytanie wykonywane po zapisie dokumentu – dla każdej pozycji, która zostaje rozliczona za pomocą programu lojalnościowego.
Parametry wejściowe
@LoyaltyProgramId
@ProgramName
@SettledPoints
@AttributeObjectType
@ObjectId
@ObjectIsLocal
@ObjectSubId
@ObjectSubIsLocal
@StartGrossPrice – cena początkowa brutto
@StartNetPrice – cena początkowa netto
@StartGrossValue – wartość brutto
@StartNetValue – wartość netto
Obsługiwane jest wiele zapytań w ramach tej samej definicji. Separator skryptów „;GO;”
AfterRemoveDocumentLoyaltyProgramQuery – Zapytanie wykonywane po usunięciu rozliczenia programu lojalnościowego z dokumentu. Służy do wycofywania zmian wykonanych w
Parametry wejściowe
@LoyaltyProgramId
@ProgramName
@SettledPoints
@AttributeObjectType
@ObjectId
@ObjectIsLocal
@ObjectSubId
@ObjectSubIsLocal
Obsługiwane jest wiele zapytań w ramach tej samej definicji. Separator skryptów „;GO;”
AfterAddDocumentLoyaltyProgramQuery – Zapytanie wykonywane po zapisie dokumentu z rozliczeniem programu lojalnościowego.
Parametry wejściowe
LoyaltyProgramId
ProgramName
SettledPoints
AttributeObjectType
ObjectId
ObjectIsLocal
ObjectSubId
ObjectSubIsLocal
Obsługiwane jest wiele zapytań w ramach tej samej definicji. Separator skryptów „;GO;”
Synchronizacja punktów lojalnościowych kontrahentów
Aby umożliwić synchronizację punktów lojalnościowych kontrahentów należy zaimplementować metody synchronizacji obiektu [contractorsloyaltypoints]:
*.statement – zapytanie pobierające aktualne stany punktów kontrahentów. Zwracane kolumny:
OperationType – typ operacji (dodawanie, usuwanie, edycja),
OperationTS – timestamp synchronizacji,
LoyaltyProgramId – identyfikator programu lojalnościowego,
ContractorId – identyfikator kontrahenta,
Points – liczba dostępnych punktów do rozliczenia przez kontrahenta,
LockedPoints – liczba punktów dostępnych lecz zablokowanych do rozliczenia. Obecnie parametr ten nie jest jeszcze obsługiwany, dlatego zawsze kolumna ta powinna zwracać wartość 0.
contractorsloyaltypoints*.xml – definicja metody synchronizacji, triggery aktualizujące timestampy wierszy
Rozliczanie punktów w systemie Comarch ERP XL
Rozliczanie punktów należy obsłużyć po stronie systemu Comarch ERP XL za pomocą triggera wdrożeniowego aktywowanego np. potwierdzeniem dokumentu. Dokładny sposób rozliczenia jest zależny od mechanizmów zaimplementowanych w programie lojalnościowym po stronie systemu Comarch ERP XL.
Program lojalnościowy może zostać oparty poprzez atrybuty zdefiniowane w systemie Comarch ERP XL. W takiej obsłudze będą brani pod uwagę Kontrahenci, którzy posiadają zdefiniowany atrybut ze wskazaniem programu lojalnościowego (np. Nasza Lojalność), a przedstawiciel będzie mógł nadać rabat tylko na pozycjach towarów oznaczonych też odpowiednim atrybutem.
Dodanie atrybutu na karcie towaruDodanie atrybutu na karcie kontrahenta
Obecne implementacje do przesyłania informacji o liczbie rozliczonych punktów, korzystają z atrybutów (klasa atrybutu tylko do odczytu) ustawianych na pozycjach dokumentów (za pomocą AfterAddPositionLoyaltyProgramQuery) z wartością rozliczonych na pozycji punktów. Podczas synchronizacji do systemu ERP dokumentów, w momencie ich potwierdzenia, w triggerze sprawdzone powinno zostać istnienie atrybutu rozliczającego punkty na pozycjach. Wartość rozliczonych punktów powinna zostać odjęta z puli punktowej kontrahenta. Dodatkowo rozliczenie takie powinno spowodować podbicie odpowiednich timestampów w [contractorsloyaltypoints] w celu wymuszenia synchronizacji aktualnego stanu punktów kontrahenta.
Wyświetlanie limitu kredytowego do wykorzystania przez kontrahenta
Istnieje możliwość ukrywania informacji o przyznanej oraz wykorzystanej kwocie limitu. Dzięki tej funkcjonalności przedstawiciel handlowy będzie miał dostęp tylko do kwoty limitu pozostającej do wykorzystania przez kontrahenta oraz kwot dozwolonych po terminie i przeterminowanych.
W plikach konfiguracyjnych znajdujących się w katalogu (domyślnie): C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods znajduje się parametr [IsContractorsCreditLimitsValueVisible], odpowiedzialny za ukrywanie/odkrywanie powyższych informacji. Domyślna wartość tego parametru to „1”. Więcej informacji nt. tego parametru znajduje się TUTAJ.
Przypisanie grupy towarów oraz magazynów do kontrahenta
W systemie Comarch ERP XL istnieje możliwość przypisania grupy towarów oraz magazynów, z których pobierane będą towary dla danego kontrahenta.
Dostępne towary oraz magazyny dla danego kontrahenta należy wskazać na Karcie kontrahenta, zakładka [Aplikacje].
Wskazówka
Można:
wybrać grupę towarów, która będzie dostępna w aplikacji dla danego Kontrahenta,
wybrać magazyny, które będą dostępne dla danego Kontrahenta,
określić magazyn domyślny.
Przypisanie grupy towarów oraz magazynów do kontrahenta
W przypadku wyboru Magazynów istnieje możliwość określenia, który magazyn będzie domyślny i dostępny w aplikacji Comarch Mobile.
Przypisanie magazynów do kontrahenta, określenie magazynu domyślnego i dostępnego w aplikacji
Wyświetlanie waluty na karcie kontrahenta
W aplikacji Comarch Mobile istnieje możliwość ustawienia domyślnej waluty, która będzie wyświetlana na karcie kontrahenta. Walutę ustawia się w zakładce [Rozliczenia] na karcie kontrahenta.
Informacja o domyślnej walucie na karcie kontrahenta w systemie Comarch ERP XL
Operator, który ma uprawnienia do edycji karty kontrahenta może również zmieniać rodzaj waluty na tej karcie. Uprawnienie to nadaje się w systemie Comarch ERP XL w konfiguracji oddziału mobilnego w zakładce kontrahenci [Edycja kontrahenta].
Kolorowanie kontrahentów
Istnieje możliwość kolorowania kontrahentów. Aby dany rodzaj kontrahentów został pokolorowany w aplikacji należy w systemie Comarch ERP XL, w module: Administrator wybrać z menu pozycję: Listy\Słowniki kategorii\CRM\Rodzaje kontrahentów i przypisać odpowiedni kolor do danego rodzaju kontrahenta.
Przypisywanie koloru do rodzaju kontrahenta w systemie Comarch ERP XL
Po wykonaniu synchronizacji kontrahenci dostępni w aplikacji zostaną oznaczeni na liście odpowiednim kolorem. Przed nazwą i akronimem każdego pokolorowanego kontrahenta będzie wpisany rodzaj kontrahenta.
Kolorowanie kontrahentów w aplikacji
Konfiguracja limitu kredytowego kontrahenta
W aplikacji obsłużona została kontrola limitu kredytowego. Do wyliczenia salda porównywanego z limitem uwzględniane są zobowiązania wobec kontrahenta oraz nierozliczone wpłaty.
W przypadku, gdy saldo należności od kontrahenta przekroczy ustalony limit, wówczas przy próbie zarejestrowania transakcji sprzedaży (potwierdzenia dokumentu sprzedaży) aplikacja zareaguje stosownie do uprawnień użytkownika, a ściślej do ustawień w definicji dokumentu: uniemożliwi zarejestrowanie transakcji lub wyświetli ostrzeżenie (w systemie Comarch ERP XL, okno: [Definicja dokumentu], zakładka: [Ogólne]). Uwzględniane są przy tym ustawienia w definicji dokumentu dla centrum struktury praw, do którego należy zalogowany do aplikacji operator. Szczegółowe informacje dotyczące ustawień na definicji dokumentu znajdują się TUTAJ.
W systemie Comarch ERP XL istnieje możliwość ustalenia limitu kredytowego:
Nieograniczonego (w tym przypadku informacja na temat listy limitów kredytowych nie jest pobierana do aplikacji Comarch Mobile)
(Należy pamiętać aby strefa czasowa na urządzeniu mobilnym była zgodna ze strefa czasową na serwerze.)
Dla danego kontrahenta można zdefiniować obecnie kilka limitów kredytowych. Każdy limit jest rejestrowany dla określonego okresu, w którym ma obowiązywać, a poszczególne okresy dodanych limitów nie mogą się pokrywać.
Karta kontrahenta w systemie Comarch ERP XL, zakładka: [Limity kredytowe]Do aplikacji Comarch Mobile pobierane są informacje na temat obecnych i przyszłych limitów kredytowych wraz z dozwoloną kwotą przeterminowania.
W przypadku, gdy limit kredytowy w systemie Comarch ERP XL został wyrażony w walucie obcej, wówczas przy pobieraniu go do aplikacji Comarch Mobile zostanie on przeliczony na walutę systemową wg wybranego kryterium:
Daty Od – kursu z dnia rozpoczynającego okres limitu kredytowego;
Daty bieżącej – bieżący kurs;
Dnia poprzedniego – kurs z dnia poprzedniego;
Ustalony – zdefiniowany na limicie.
Dodawanie limitu kredytowego w systemie Comarch ERP XL
Ze względu na możliwą do zdefiniowania strukturę wielooddziałową kontrahentów w systemie Comarch ERP XL, wprowadzona została kontrola centralnego limitu kredytowego, który ustalany jest na centrali i dotyczy wszystkich kontrahentów, którzy są jej oddziałami. Jeśli dla centrali ustawiony zostanie limit kredytowy, to dany oddział nie będzie mógł go przekroczyć.
W przypadku struktury oddziałowej kontrola limitu kredytowego przebiega dwuetapowo:
sprawdzany jest limit kredytowy danego kontrahenta i jeśli dany kontrahent jest oddziałem następuje przejście do drugiego etapu
jeśli limit kredytowy oddziału nie został przekroczony lub został przekroczony, ale w definicji dokumentu zaznaczona jest opcja dotycząca zatwierdzania: Zezwalaj lub Ostrzegaj, następuje sprawdzenie limitu kredytowego centrali.
Jeśli dany kontrahent jest centralą, zawsze sprawdzany jest tylko jego limit. Dodatkowo, jeśli kontrolowany jest limit centrali, sprawdzane jest wykorzystanie limitu centrali oraz wszystkich kontrahentów, którzy są jej oddziałami.
Aktualny limit kredytowy dla danego kontrahenta prezentowany jest na karcie kontrahenta, w sekcji [Handlowe]. Możliwe jest również prezentowanie limitu kredytowego w walucie obcej, jeśli zdefiniowano to wcześniej w systemie Comarch ERP XL.
W przypadku, gdy kontrahent:
nie posiada limitu kredytowego, wówczas w aplikacji prezentowany jest: Brak bieżącego limitu kredytowego
posiada nieograniczony limit kredytowy, wówczas w aplikacji prezentowany jest: Nieograniczony.
Okno prezentowane jest po wybraniu przycisku grupie Handlowe w wierszu Limit kredytowy.
Karta kontrahenta wraz limitem kredytowym wyświetlanym w walucie obcej
Poniżej zostało zaprezentowane okno, w którym wyświetlane są informacje na temat limitów kredytowych danego kontrahenta.
Limity kredytowe zdefiniowane dla danego kontrahenta
Okno jest podzielone na trzy sekcje:
Sekcja: Bieżący limit kredytowy:
Okres obowiązywania – zakres dat, w którym obowiązuje dany limit kredytowy
Parametry – parametry zaznaczone na definicji dokumentu FS w danym centrum głównym, zakładka Ogólne (Sekcja: W limicie kredytowym uwzględniaj)
Definicja dokumentu FS w systemie Comarch ERP XL
Limit z kontrahenta – informacja na temat tego, czy limit kredytowy jest pobierany z karty kontrahenta, czy karty płatnika. Ustawienia, odnośnie pobierania limitu kredytowego z kontrahenta znajdują się w systemie Comarch ERP XL na Karcie kontrahenta\zakładka: [Handlowe]\ Forma i termin płatności oraz limit kredytowy z kart.
Karta kontrahenta w systemie Comarch ERP XL
Karta kontrahenta w systemie Comarch ERP XL w zakładce Limity kredytowe pokazuje wykorzystanie limitu kredytowego. Zawiera następujące informacje:
Pozostaje do wykorzystania – odzwierciedla kwotę kredytu możliwą do wykorzystania. Jeżeli kwota będzie ujemna, to zostanie wyświetlona w aplikacji w kolorze czerwonym
Dozwolona po terminie – odzwierciedla kwotę dozwoloną po terminie obowiązywania limitu
Przeterminowana – odzwierciedla kwotę przeterminowanych płatności. Jeżeli kwota przeterminowana będzie większa od kwoty dozwolonej po terminie, kwota ta zostanie wyświetlona w aplikacji w kolorze czerwonym
Limit kredytowy w systemie Comarch ERP XLLimit kredytowy w aplikacjiSekcja: Następny limit kredytowy
Prezentowana jest w przypadku, gdy kontrahent posiada zdefiniowane kolejne limity kredytowe. Po naciśnięciu na przycisk zostanie wyświetlone okno w którym zaprezentowane są wszystkie limity kredytowe określone dla danego kontrahenta. Składa się z prezentowanych chronologicznie kolejnych limitów kredytowych zaplanowanych dla danego kontrahenta. W sekcji widoczne są następujące informacje:
Lista limitów kredytowych w aplikacji Comarch Mobile
W aplikacji Comarch Mobile istnieje możliwość ukrywania informacji o przyznanej oraz wykorzystanej kwocie limitu. Dzięki tej funkcjonalności przedstawiciel handlowy będzie miał dostęp tylko do kwoty limitu pozostającej do wykorzystania przez kontrahenta oraz kwot dozwolonych po terminie i przeterminowanych.
Konfiguracja koncesji
W aplikacji Comarch Mobile istnieje możliwość sprzedawania artykułów objętych koncesją oraz posiadają informację o dacie ważności danej koncesji. W celu korzystania z funkcjonalności w systemie Comarch ERP XL konieczne jest, aby na karcie towaru określony był rodzaj koncesji niezbędny do jego sprzedaży jak na rysunku.
Wybór koncesji niezbędnej do sprzedaży towaru
Dodatkowo w systemie XL konieczne jest zdefiniowanie daty ważności danej koncesji na karcie kontrahenta jak na rysunku poniżej.
Definicja koncesji na karcie kontrahenta
Dzięki wprowadzeniu funkcjonalności kontroli koncesji przedstawiciel handlowy otrzyma informację, gdy będzie chciał sprzedać towar objęty koncesją dla kontrahenta, u którego koncesja jest przeterminowana.
Komunikat pojawiający się, gdy brak aktualnej koncesji dla kontrahenta
Określenie wymaganych pól podczas rejestracji kontrahenta
W systemie Comarch ERP XL istnieje możliwość określenia pól, które będą wymagane podczas dodawania nowego kontrahenta w aplikacji.
Pola wymagane definiowane są w module Administrator Comarch ERP XL: Słowniki kategorii/CRM/ Rodzaje kontrahentów. Po wybraniu danego rodzaju kontrahenta należy określić, które informacje będą wymagane podczas rejestrowania karty kontrahenta.
Określenie pól wymaganych podczas rejestracji kontrahenta dla danego rodzaju kontrahenta w systemie Comarch ERP XL
Uwaga
Na chwilę obecną, w aplikacji Comarch Mobile nie jest obsłużony parametr "Przy zapisie [Ostrzegaj/Zablokuj]". W przypadku niewypełnienia wymaganych pól zapis karty kontrahenta zostanie uniemożliwiony.
W momencie, gdy podczas rejestracji nowego kontrahenta w aplikacji, wymagane dane nie zostaną uzupełnione, nie będzie możliwe zapisanie tworzonej karty i wyświetlony zostanie odpowiedni komunikat informujący.
Uwaga
Istnieje możliwość sparametryzowania funkcjonalności dodawania i edycji kontrahentów przez operatorów. W zależności od konfiguracji oddziału mobilnego w systemie Comarch ERP XL operator będzie mógł dodawać/edytować kontrahentów tylko o określonym rodzaju. Więcej informacji na ten temat znajduje się TUTAJ.
Prawo do edycji kontrahenta
W systemie Comarch ERP XL istnieje możliwość przypisania operatorowi prawa do edycji kontrahenta na urządzeniu mobilnym.
Przypisanie operatorowi prawa do edycji kontrahentów
Nowo dodani kontrahenci mogą być modyfikowani do momentu wysłania ich kart do systemu Comarch ERP XL. Aby edytować kartę kontrahenta pobranego z systemu Comarch ERP XL konieczne jest odpowiednie skonfigurowanie stanowiska mobilnego - więcej informacji znajduje się TUTAJ.
Wystawianie zamówień sprzedaży pomimo wstrzymanych transakcji dla kontrahenta
W aplikacji Comarch Mobile istnieje możliwość wystawiania dokumentu ZS (Zamówienie Sprzedaży) dla kontrahenta, który jednocześnie ma zablokowane wystawianie pozostałych dokumentów (FS, PA, WZ i WM).
Konfiguracja systemu Comarch ERP XL, aby możliwe było wystawienie dokumentów ZS, podczas gdy transakcje są zablokowaneKartoteka kontrahenta – zablokowane transakcje, możliwość wystawienia dokumentu ZS, OS, RLS
Gdy w systemie Comarch ERP XL zaznaczony zostanie znacznik zarówno „Wstrzymano transakcje” jak i „Wstrzymano zamówienia” wówczas Przedstawiciel handlowy nie będzie miał możliwości wystawiania żadnych dokumentów na danego kontrahenta (nie dotyczy Oferty Sprzedaży oraz Reklamacji).
Możliwość ukrywania/udostępniania kart kontrahentów dla poszczególnych oddziałów mobilnych
W najnowszej wersji systemu została udostępniona opcja ukrywania/udostępniania pojedynczych kontrahentów dla poszczególnych oddziałów mobilnych.
Opcja dostępność w Oddziałach Mobile Sprzedaż
Po wywołaniu opcji "Dostępność w Oddziałach Mobile Sprzedaż" podnosi się nowe okno, w którym za pomocą "+" można dodać oddział mobilny, w którym kontrahent ma zostać udostępniony lub ukryty.
Lista oddziałów, dla których ma być udostępniony/ukryty kontrahent
Jeżeli kontrahent ma trafić do danego oddziału mobilnego wystarczy przypisać oddział do listy nie zaznaczając żadnej opcji. Jeżeli kontrahent ma zostać ukryty w danym oddziale należy zaznaczyć opcję „Nie wysyłaj” dla tego oddziału. Jeżeli karta kontrahenta ma być ukryta jednocześnie dla wszystkich oddziałów Comarch Mobile należy zaznaczyć opcję „Wszystkie”.
Blokada realizacji działań handlowych dla nowo utworzonego kontrahenta
Aplikacja Comarch Mobile umożliwia blokowanie realizacji działań handlowych dla nowo utworzonego kontrahenta do czasu jego synchronizacji do systemu ERP. Kontrahent dodany w aplikacji Comarch Mobile jest oznaczony ikonką .
Zablokowana zostanie możliwość wystawiania dokumentów handlowych, dokumentów ZSR oraz tworzenia działań CRM we wszystkich miejscach w aplikacji. Aby mieć możliwość wystawiania poszczególnych działań handlowych dla nowo utworzonego kontrahenta konieczne jest wykonanie synchronizacji z systemem ERP.
Uwaga
Za konfigurację tej funkcjonalności odpowiada parametr CanBlockActionsForNewContractorBeforeSynchronization. Wartość parametru należy zmienić w pliku contractors.xl.statement w lokalizacji C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods\configuration. Więcej informacji na temat konfiguracji znajduje się TUTAJ.
Po włączeniu parametru CanBlockActionsForNewContractorBeforeSynchronization i utworzeniu nowego kontrahenta w aplikacji Comarch Mobile:
po kliknięciu w sekcję Działania, Serwis oraz Handlowe na karcie kontrahenta zostanie wyświetlony komunikat: "Brak możliwości wykonywania działań handlowych. Dokonaj synchronizacji nowego kontrahenta."
Widok okna informującego o konieczności synchronizacji
po kliknięciu na liście kontrahentów w menu kontekstowym nowego kontrahenta nie jest widoczna opcja "Dodaj dokument"
podczas wystawiania dokumentów w kaflu Dokumenty, Serwis i Kasa lub działania CRM w kaflu Terminarz i Dzień w momencie wyboru kontrahenta, który nie został jeszcze zsynchronizowany z systemem ERP, pojawi się komunikat: "Należy dokonać synchronizacji nowego kontrahenta."
Widok okna informującego o konieczności synchronizacji
w przypadku kafla Dokumenty, Dzień, Serwis i Terminarz ukryta jest ikonka odpowiedzialna za dodanie nowego kontrahenta
Obsługa atrybutów
Istnieje możliwość pobierania i wypełniania atrybutów. Atrybuty w aplikacji Comarch Mobile prezentowane są w sekcji: [Informacje dodatkowe]. Atrybuty można wyświetlać jako klasy lub klasy w grupach.
Obsługa atrybutów przy współpracy z systemem Comarch ERP XL
Typy obiektów
Funkcjonalność
Kontrahenci
Podgląd i edycja
Towary
Podgląd
Samochody
Podgląd
Nagłówki dokumentów
Podgląd i edycja
Pozycje dokumentów
Podgląd i edycja
Aby klasa atrybutu była widoczna w aplikacji mobilnej należy w definicji atrybutu wskazać obiekty na zakładce [Obiekty] oraz zaznaczyć parametr [Podgląd] w grupie [Comarch Mobile] na zakładce [Ogólne]. Zaznaczenie parametru [Edycja] umożliwi dodatkowo edycję atrybutów na niektórych typach obiektów.
Przykładowa definicja klasy atrybutu w systemie Comarch ERP XL
W aplikacji mobilnej obsługiwane są również flagi [Wymagany] oraz [Automat]. Jeżeli dany atrybut jest oznaczony jako Wymagany w systemie ERP, to w aplikacji Comarch Mobile jest oznaczony znakiem .
W aplikacji obsługiwane są następujące typy atrybutów:
Flaga
Tekst
Liczba
Lista
Adres URL – w przypadku wskazania adresu strony internetowej, po naciśnięciu przycisku strona zostanie otwarta w domyślnej przeglądarce na urządzeniu mobilnym
W aplikacji obsłużone zostały następujące formaty atrybutów:
Tekst
Data
1234
1234.56
1234.5678
Zaawansowany
Aby była możliwość wyświetlania atrybutów w grupach należy w systemie Comarch ERP XL na liście Atrybutów z poziomu zakładki [Grupy klas atrybutów] stworzyć odpowiednie grupy atrybutów:
Definicja grupy klasy atrybutu
oraz przypisać do stworzonej grupy obiekt, z którego poziomu ma być dostępna grupa atrybutów.
Przypisanie obiektu
Następnie należy przypisać odpowiednie klasy atrybutów. Jedna klasa może być przypięta do kilku grup jednocześnie.
Atrybut okresowy
Istnieje możliwość skonfigurowania atrybutu o parametrze [Okresowy]. Zaznaczając ten parametr możliwe będzie określenie wartości atrybutu oraz okresu jego obowiązywania.
Okno dodawania wartości atrybutu oraz edycja okresu obowiązywania
Możliwe jest utworzenie wielu wartości dla atrybutu w różnych okresach obowiązywania. Okresy obowiązywania nie mogą się pokrywać, w innym przypadku system nie pozwoli na zapisanie takich wartości.
Utworzone wartości atrybutu okresowegoAtrybut okresowy w Comarch Mobile
Wizyty handlowe
Konfiguracja elementu wizyty: Zrób zdjęcie punktu
Podczas realizacji elementu wizyty typu: Merchandising (wykonanie zdjęcia) z ustawionym kodem elementu: [ZRÓB ZDJĘCIE PUNKTU] jest zapisywany punkt GPS, który następnie jest ustawiany jako punkt wzorcowy dla danego kontrahenta. W takim przypadku, do wyświetlania trasy wzorcowej (zaplanowanej) nie będzie brany adres kontrahenta, tylko zarejestrowany punkt wzorcowy.
Konfiguracja elementu wizyty: Zrób zdjęcie punktu
Uwaga
W przypadku korzystania z elementu wizyty Merchandising, w tym rejestracji pozycji GPS, wymagana jest licencja na Moduł Monitorowanie.
Kolorowanie wizyt handlowych
W celu wyróżnienia w aplikacji Comarch Mobile wizyt według ich typów, w systemie Comarch ERP XL istnieje możliwość konfiguracji ich kolorowania. Aby dany typ wizyty handlowej został wyróżniony w aplikacji należy w systemie Comarch ERP XL, w module [Administrator] wybrać z menu pozycję: Listy\Słowniki kategorii\CRM\Typy wizyt oraz przypisać odpowiedni kolor do danego typu wizyty.
Przypisywanie koloru do wizyty w systemie Comarch ERP XL
Aby odpowiednie typy wizyty zostały w aplikacji widoczne w określonym kolorze należy wykonać synchronizację. Po utworzeniu w aplikacji Comarch Mobile wizyty w określonym typie jest ona widoczna zgodnie ze skonfigurowanym wcześniej w systemie Comarch ERP XL ustawieniem kolorów.
Kolorowanie wizyt w aplikacji wg typów
Potwierdzenie przez kierownika wizyt planowanych w aplikacji
Istnieje możliwość ustawienia, aby WH zaplanowane przez Przedstawiciela Handlowego wymagały potwierdzenia przez Kierownika. Opcja dostępna jest po zaznaczeniu parametru dostępnego w systemie Comarch ERP XL na konfiguracji danego oddziału (zakładka: Wizyty) [Wymagaj potwierdzenia]Opcja: Wymagaj potwierdzenia
Po ustawieniu ww. parametru wizyta po zaplanowaniu przez Operatora będzie miała status „Niezatwierdzony” i ustawioną automatycznie opcję [Wyślij po zaplanowaniu]. Planowanie WH podczas, gdy w systemie Comarch ERP XL została zaznaczona opcja: [Wymagaj potwierdzenia]
Z poziomu listy działań będzie prezentowana kolorem zielonym. Do momentu potwierdzenia wizyty w systemie Comarch ERP XL niemożliwa będzie realizacja wizyty.
Zaplanowana WH, która wymaga potwierdzenia przez kierownika
Po synchronizacji, w systemie Comarch ERP XL lub aplikacji Comarch Mobile Zarządzanie, kierownik ma możliwość zatwierdzenia, odrzucenia bądź przeniesienia wizyty na inny termin. Po wykonaniu kolejnej synchronizacji z poziomu urządzenia mobilnego (pobraniu potwierdzenia) przedstawiciel będzie miał możliwość realizacji wizyty.
Określanie towarów wymaganych
Aby towary były wymagane na takim dokumencie należy dodać je w systemie Comarch ERP XL w definicji elementu wzorca wizyty w oknie [Towary] wymagane. Dla każdego towaru można określić minimalną ilość, jaka jest wymagana oraz czy towar jest obowiązkowy (pole [Wymagaj] ustawione na Tak). Wszystkie towary z tej listy automatycznie dodadzą się do koszyka z ilością równą ilości minimalnej. Towar, który nie jest obowiązkowy ([Wymagaj]: Nie) można usunąć z koszyka poprzez wpisanie 0 w polu z ilością. W przypadku, gdy towar jest obowiązkowy ([Wymagaj]: Tak) nie można zmienić jego ilości na mniejszą od ilości minimalnej, ani też całkowicie usunąć go z koszyka.
Element wzorca wizyty w systemie Comarch ERP XL, towary wymagany
Zdefiniowanie domyślnego rodzaju przejazdu
Istnieje możliwość zdefiniowania domyślnego rodzaju przejazdu. Wówczas podczas rejestracji przejazdu w pole [Rodzaj] automatycznie ustawiana jest domyślna wartość zdefiniowana w systemie Comarch ERP XL. Domyślną wartość dla rodzaju przejazdu należy ustawić w [Słownikach kategorii] w Administratorze Comarch ERP XL.
Zdefiniowanie domyślnej wartości dla rodzaju przejazdu w systemie Comarch ERP XL
Określenie rodzajów kontrahentów na wzorcu wizyty
Istnieje możliwość planowania wizyt z uwzględnieniem rodzaju kontrahenta. Funkcjonalność ta jest zależna od określenia rodzajów kontrahentów na wzorcu wizyty w systemie ERP XL:
Określenie rodzajów kontrahenta na wzorcu wizyty
Zaznaczenie powyższego parametru spowoduje, że operator będzie mógł zaplanować wizytę z danym wzorcem tylko dla znajdujących się na liście rodzajów kontrahentów.
Jeśli opcja ta zostanie odznaczona, będzie istniała możliwość dodania lub usunięcia danego rodzaju kontrahentów z listy.
Udostępnianie załączników
W aplikacji obsłużona jest funkcjonalność pobierania załączników z systemu Comarch ERP XL przypisanych do nagłówka, elementu wizyty handlowej lub wzorca wizyty.
Aby załącznik został pobrany przy imporcie wizyty handlowej z Comarch ERP XL należy zaznaczyć na liście załączników opcję [Dostępność w Mobile Sprzedaż].Udostępnianie załącznika w aplikacji Comarch Mobile
Aplikacja umożliwia pobieranie załączników w formatach typu:
Obraz
MSExcel
MSWord
Plik PDF
Inny
Uwaga
Do prawidłowego wyświetlenia załącznika niezbędne jest posiadanie na urządzeniu mobilnym aplikacji, które obsługują dany rodzaj pliku.
Wymagalność potwierdzania wizyty w zależności od wybranego wzorca
Funkcjonalność ta umożliwia większą kontrolę działań pracownika. Wszystkie wizyty wymagające potwierdzenia, dopóki nie zostaną potwierdzone, nie będą dostępne do realizacji.
W celu skonfigurowania wymagalności potwierdzania wizyt z określonymi wzorcami należy:
Na definicji oddziału mobilnego, na zakładce: Wizyty musi zostać zaznaczony check: [Wymagaj potwierdzenia].
Ustawienie na definicji oddziału mobilnego: Wymagaj potwierdzenia.
Skonfigurowany atrybut dodać na definicji wzorca wizyt oraz ustawić jego wartość na TAK lub <Brak>, jeśli potwierdzenie wizyty z takim wzorcem powinno być wymagane i NIE, jeśli potwierdzenie nie jest wymagane.
Dodanie atrybutu do definicji danego wzorca wizyty
Wyświetlanie dodatkowych parametrów na raportach towarowych
W aplikacji Comarch Mobile Sprzedaż istnieje możliwość wyświetlania na raporcie towarów konkurencji i raporcie obecności towarów dodatkowych kolumn zdefiniowanych w systemie Comarch ERP XL.
Dodatkowe kolumny na karcie raportu
Za tę opcję odpowiada parametr [ShowColumnsOnReports], znajdujący się w pliku konfiguracyjnym configuration.xl2024.statement w katalogu: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\ Methods\configuration. Możliwe wartości parametru to 0 (wartość domyślna), 1 lub 2. Dodatkowe informacje nt. konfiguracji tego parametru znajdują się TUTAJ.
Uwaga
Aby dodatkowa kolumna raportu była widoczna w aplikacji mobilnej, atrybut musi być udostępniony w aplikacji Comarch Mobile Sprzedaż.
Więcej informacji na temat wspomnianej funkcjonalności w raporcie towarów konkurencji znajduje się TUTAJ, a w raporcie obecności towarów - TUTAJ.
Obsługa ankiet z pytaniami wielokrotnego wyboru
Jednym z elementów wizyty handlowej są ankiety. W aplikacji Comarch Mobile Serwis oprócz pytań otwartych i pytań jednokrotnego wyboru umożliwiono korzystanie z ankiet, gdzie konieczne jest wybranie kilku odpowiedzi na raz. W tym celu w pierwszej kolejności należy zdefiniować nowe pytanie i odpowiedzi w systemie Comarch ERP XL: Administrator Oddziałów/Narzędzia /Ankiety/Pytania. Za pomocą ikony plusa: należy dodać nowe pytanie.
Definicja pytania wielokrotnego wyboru
Wcześniej należy też zdefiniować odpowiedzi dla tych pytań. W przypadku pytań zamkniętych (w tym wielokrotnego wyboru) odpowiedzi mogą zostać wskazane jedynie spośród słownikowych wartości (zdefiniowanej listy wartości). Po naciśnięciu na przycisk [Rodzaj odpowiedzi] powinny podnieść się wszystkie zdefiniowane w systemie ERP słownikowe wartości dla rodzajów odpowiedzi Słowniki kategorii /Inne /Rodzaje odpowiedzi.Rodzaje odpowiedzi
Kolejnym krokiem jest przypięcie pytania do ankiety. Z poziomu Administratora Oddziałów należy przejść na zakładkę [Narzędzia/Ankiety/Definicje ankiet], a następnie w definicji danej ankiety, w zakładce [Pytania], należy podpiąć pytanie wielokrotnego wyboru.
Ostatnią rzeczą o jakiej należy pamiętać jest to, aby wzorzec wizyty udostępniony w Comarch Mobile Serwis [Administrator Oddziałów/Oddziały/Lista oddziałów/Wizyty] na karcie danego oddziału zawierał element Ankiety i zdefiniowaną ankietę z pytaniem wielokrotnego wyboru.
Możliwość kopiowania tygodniowego i dziennego planu wizyt
W aplikacji Comarch Mobile istnieje możliwość kopiowania tygodniowego i dziennego planu wizyt.
Za tę opcje odpowiadają parametry [CanCopyWeeklyVisitPlan] i [CanCopyDailyVisitPlan], znajdujące się w plikach konfiguracyjnych katalogu (domyślnie): C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods. Parametr ten jest opisany TUTAJ.
Więcej informacji na temat wspomnianej funkcjonalności znajduje się TUTAJ.
Możliwość wysyłania realizacji elementu: Merchandising wiadomością e-mail
Uwaga
Opcja dot. realizacji wizyty handlowej z elementem: Merchandising.
W Comarch Mobile istnieje możliwość ustawienia, aby podczas wizyty (bezpośrednio z zadania typu: Merchandising) możliwe było wysłanie wiadomości e-mail z załączonym zdjęciem, wykonanym podczas realizacji tego zadania.
Wykonywanie zdjęć podczas elementu wizyty: Merchandising może być wykorzystywane nie tylko do sprawdzenia ekspozycji towarów, ale również do udokumentowania pewnych operacji czy przekazanych dokumentów.
Przykład
Podczas wizyty handlowej Klient może przedstawić dokumenty umowy, czy potwierdzenia przelewu rozliczającego zaległe płatności, które jeszcze nie zostały zaksięgowane. Przedstawiciel wykonując zdjęcie może w ten sposób potwierdzić przekazanie lub podgląd danych dokumentów.
Uwaga
Możliwość wysłania wiadomości e-mail z załączoną realizacją elementu wizyty Merchandising jest dostępna tylko w przypadku, gdy na urządzeniu mobilnym zainstalowana jest aplikacja do obsługi poczty (np. Gmail) oraz odpowiednio skonfigurowany jest klient poczty.
W plikach konfiguracyjnych znajdujących się domyślnie w katalogu: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods znajduje się parametr [CanSendMerchandisingRealization] - opis konfiguracji tego parametru znajduje się TUTAJ.
Jeżeli parametr [CanSendMerchandisingRealization] przyjmuje wartość 1, wówczas w Ustawieniach aplikacji w sekcji Parametry działań pojawi się dodatkowe pole Odbiorca wysyłanych zdjęć. Naciśnięcie parametru spowoduje podniesienie okna z polem tekstowym, w którym umożliwione zostanie wprowadzenie adresu e-mail odpowiedniej osoby (np. odpowiedzialnej za odblokowywanie transakcji kontrahentom).
Ustawienia aplikacji Comarch Mobile – parametr: [Odbiorca wysyłanych zdjęć]Jeżeli do zadania typu Merchandising dodano realizację (wykonano zdjęcie), wówczas naciśnięcie opcji: [Zatwierdź] w pasku górnym spowoduje rozwinięcie menu z dwoma opcjami:
Zakończ – powoduje zatwierdzenie realizacji
Zakończ i wyślij – powoduje zatwierdzenie realizacji i następnie przejście do akcji wysyłania wiadomości e-mail
Dwie opcje możliwe do wyboru, kiedy w aplikacji została udostępniona możliwość wysyłania zdjęć podczas realizacji elementu wizyty typu Merchandising
Jeżeli zdjęcie zostało wcześniej tylko zapisane, możliwość jego wysłania za pomocą opcji e-mail istnieje także z poziomu menu kontekstowego.
Menu kontekstowe dla zrealizowanego działania typu Merchandising
Planowanie wizyty bez podania wzorca
Istnieje możliwość planowania wizyt bez konieczności określania wzorca wizyty. Dzięki temu przedstawiciel handlowy, będąc na miejscu u Klienta, może określić charakter wizyty handlowej oraz wybrać najlepszy zestaw elementów wizyty do realizacji.
Jeżeli podczas planowania wizyty nie zostanie wskazany jej wzorzec, konieczne będzie podanie nazwy wizyty.
W plikach konfiguracyjnych znajdujących się w katalogu: C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods znajduje się parametr [CanPlanVisitsWithoutPattern] odpowiedzialny za to, czy podczas planowania wizyty konieczne jest wskazanie wzorca. Domyślna wartość tego parametru wynosi 0. Dodatkowe informacje nt. konfiguracji tego parametru znajdują się TUTAJ.
Jeśli wartość parametru została ustawiona na 1, wówczas:
Jeśli w definicji oddziału został dodany więcej niż jeden wzorzec podczas planowania wizyty pole z nazwą wzorca jest puste. Po podaniu nazwy wizytę można zapisać.
Planowanie wizyty bez podania wzorca
Jeśli w definicji oddziału został dodany tylko jeden wzorzec, podczas planowania wizyty ten wzorzec się podpowiada. Po dłuższym przytrzymaniu pola z nazwą wzorca zostanie on usunięty.
Kopiowanie atrybutów kontrahenta na element typu „inny”
Istnieje możliwość kopiowania atrybutu kontrahenta na element typu „Inny”.
W plikach konfiguracyjnych znajdujących się w katalogu (domyślnie): C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods znajduje się parametr [IsContractorsAttributeVisibleOnVisit] odpowiedzialny za to, czy atrybut z karty kontrahenta ma być widoczny na elemencie typu „Inny” czy też nie. Jeżeli parametr ten przyjmuje wartość 1, wówczas opcja kopiowania atrybutu na element wizyty typu „Inny” zostanie włączona. Dodatkowe informacje nt. tego parametru znajdują się TUTAJ.
Funkcjonalność kopiowania atrybutu na element wizyty w Comarch Mobile dotyczy:
Klasy atrybutu typu: Tekst
Atrybutu widocznego w aplikacji Comarch Mobile
Klasy atrybutu przypiętej do obiektu: [Grupa kontrahenta].[Kontrahent]
Comarch ERP XL – definicja klasy atrybutu kontrahenta
Atrybut zdefiniowany w systemie Comarch ERP XL jak powyżej, wyświetlany jest na kartotece kontrahenta w Comarch Mobile jako informacja dodatkowa
Comarch Mobile - atrybut kontrahenta
Informacja dodatkowa z kartoteki kontrahenta zostanie skopiowana na element wizyty jeżeli:
parametr IsContractorsAttributeVisibleOnVisit = 1
na wzorcu wizyty dodany jest element wizyty o Rodzaju: Inny
Comarch ERP XL - definicja elementu wizyty
Jeżeli spełnione są określone powyżej warunki kopiowania atrybutu kontrahenta, wówczas w oknie wizyty, na liście Zadania do wykonania dla elementu wizyty o rodzaju Inny prezentowane są informacje jak poniżej
Zadania do wykonania dla Wizyty - kopiowanie atrybutu na element „Inny”
Wymagalność elementu wizyty
Istnieje możliwość definiowania własnych zapytań SQLite określających, czy element wizyty ma być wymagany.
W tym celu w lokalizacji C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\VisitsElementsRequiredQueries (domyślna lokalizacja) należy utworzyć plik o nazwie <id>#<NazwaPliku>.xml, w którym należy umieścić definicje zapytania.
Wskazówka
Przykład takiego zapytania znajduje się w pliku readme.txt w folderze C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\VisitsElementsRequiredQueries
Cykliczność wizyt handlowych
W systemie Comarch ERP XL na Karcie kontrahenta istnieje możliwość ustawienia opcji odbywania wizyt z określoną częstotliwością. W tym celu na Karcie kontrahenta należy wybrać zakładkę [Aplikacje], a następnie przycisk [Cykliczność wizyt].Karta kontrahenta – wybór cykliczności wizyt
Po wybraniu przycisku [Cykliczność wizyt] możliwe jest zdefiniowanie warunków i parametrów związanych z realizowaniem danej wizyty.
Definicja cykliczności wizyt handlowych
Uwaga
Na chwilę obecnąparametr [Koniec po X wystąpieniach] nie jest obsługiwany.
Obsługa raportu obecności z przypisanymi urządzeniami
W aplikacji Comarch Mobile Serwis istnieje możliwość sprawdzenia obecności urządzeń u kontrahenta. Jest to możliwe za pomocą wizyty handlowej posiadającej następujące elementy:
Ankieta – zawierająca pytania odnośnie numeru seryjnego posiadanych urządzeń
Inny – lista urządzeń, których właścicielem jest kontrahent wybrany na wizycie handlowej
Wymagane jest aby ankieta zawierała pytania otwarte dotyczące numerów seryjnych urządzeń. Jako odpowiedź Przedstawiciel handlowy będzie sczytywał lub wpisywał numer seryjny danego urządzenia.
Wizyta zdefiniowana w Comarch ERP XL zawierająca Ankietę obecności urządzeń
Element wizyty Inny o nazwie: „Urządzenia” jest to element pomocniczy, wyświetlający Przedstawicielowi informacje o urządzeniach, które wg systemu dany kontrahent powinien mieć na stanie.
Wizyta zdefiniowana w Comarch ERP XL zawierająca element Inny - listę urządzeń
Aby w elemencie wizyty handlowej Inny był zwracany kod, nazwa i konkretna wartość parametru dla urządzenia, należy dodać zapytanie SQL jako wartość parametru [CanCopyValueOnVisitElement] (Serwer synchronizacji\Methods\Configuration.xl2017). Przykładowe zapytanie:
select sd.Code, sd.Name, sdv.Value from ServiceDevices sdLEFT JOIN ServiceDevicesOwners sdo ON sd.Id = sdo.DeviceId join ServiceDevicesParametersValues sdv on sd.Id=sdv.DeviceIdWHERE sdo.OwnerId = @ContractorId and sdv.ParameterDefinitionId=1Wizyta handlowa z obsługą raportu obecności z przypisanymi urządzeniami
Możliwość kopiowania pojedynczej wizyty
W aplikacji Comarch Mobile istnieje możliwość kopiowania pojedynczej niezrealizowanej wizyty.
Za tę opcje odpowiada parametr [CanCopyVisits], znajdujący się w plikach konfiguracyjnych katalogu (domyślnie): C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods. Parametr ten jest opisany TUTAJ.
Więcej informacji na temat wspomnianej funkcjonalności znajduje się TUTAJ.
Dokumenty
Obsługa atrybutów
Istnieje możliwość pobierania i wypełniania atrybutów. Atrybuty w aplikacji Comarch Mobile prezentowane są w sekcji: [Informacje dodatkowe]. Atrybuty można wyświetlać jako klasy lub klasy w grupach.
Obsługa atrybutów przy współpracy z systemem Comarch ERP XL
Typy obiektów
Funkcjonalność
Kontrahenci
Podgląd i edycja
Towary
Podgląd
Samochody
Podgląd
Nagłówki dokumentów
Podgląd i edycja
Pozycje dokumentów
Podgląd i edycja
Aby klasa atrybutu była widoczna w aplikacji mobilnej należy w definicji atrybutu wskazać obiekty na zakładce [Obiekty] oraz zaznaczyć parametr [Podgląd] w grupie [Comarch Mobile] na zakładce [Ogólne]. Zaznaczenie parametru [Edycja] umożliwi dodatkowo edycję atrybutów na niektórych typach obiektów.
Przykładowa definicja klasy atrybutu w systemie Comarch ERP XL
W aplikacji mobilnej obsługiwane są również flagi [Wymagany] oraz [Automat]. Jeżeli dany atrybut jest oznaczony jako Wymagany w systemie ERP, to w aplikacji Comarch Mobile jest oznaczony znakiem .
W aplikacji obsługiwane są następujące typy atrybutów:
Flaga
Tekst
Liczba
Lista
Adres URL – w przypadku wskazania adresu strony internetowej, po naciśnięciu przycisku strona zostanie otwarta w domyślnej przeglądarce na urządzeniu mobilnym
W aplikacji obsłużone zostały następujące formaty atrybutów:
Tekst
Data
1234
1234.56
1234.5678
Zaawansowany
Aby była możliwość wyświetlania atrybutów w grupach należy w systemie Comarch ERP XL na liście Atrybutów z poziomu zakładki [Grupy klas atrybutów] stworzyć odpowiednie grupy atrybutów:
Definicja grupy klasy atrybutu
oraz przypisać do stworzonej grupy obiekt, z którego poziomu ma być dostępna grupa atrybutów.
Przypisanie obiektu
Następnie należy przypisać odpowiednie klasy atrybutów. Jedna klasa może być przypięta do kilku grup jednocześnie.
Pobieranie dokumentów historycznych
Aby możliwe było pobranie dokumentów historycznych z systemu Comarch ERP XL należy:
na karcie operatora w systemie Comarch ERP XL na zakładce Parametry/Uprawnienia w grupie opcji: Podgląd dokumentów wybrać opcję [Wszystkich],
po synchronizacji na urządzeniu ustawić parametry historyczności w aplikacji Comarch Mobile – opis tych ustawień znajduje się TUTAJ.
Comarch ERP XL, karta operatora, parametr [Podgląd dokumentów]
Zatwierdzanie dokumentu bez podpisu
W aplikacji istnieje możliwość pominięcia podpisu podczas wystawienia dokumentu. Funkcjonalność ta wymaga zmodyfikowania funkcji SyncFramework.GetNumerators (nazwa_bazy -> Programmability -> Functions-> Table-valued Functions -> SyncFramework.GetNumerators).
Należy dodać warunek dotyczący konkretnego dokumentu, na którym ma być pominięty krok "Podpis". Przy wystawianiu pozostałych dokumentów podpis będzie wymagany.
Przykład
Konfiguracja funkcjonalności pominięcia kroku z podpisem na dokumencie Zamówienia Sprzedaży (ZS).
CASE
WHEN mob.Dok_GIDTyp = 9472 THEN 0 /*ZS*/
ELSE 1
END AS IsSignatureRequired
Wyświetlanie ceny i ilości w jednostce podstawowej i domyślnej jednostce pomocniczej podczas wystawiania dokumentów
W aplikacji Comarch Mobile Serwis istnieje możliwość podejrzenia ilości i ceny w jednostce pomocniczej podczas wystawiania dokumentów już z poziomu listy towarów , bez konieczności podnoszenia kalkulacji dla tej pozycji. Funkcjonalność ta jest dostępna podczas wystawiania dokumentów:
RW (Rozchód wewnętrzny)
ZSR (Zlecenie serwisowe)
Za tę funkcjonalność odpowiada parametr [IsBaseUnitVisible], który może przyjmować dwie wartości:
1 – wartość domyślna, jeżeli na towarze domyślną jednostką lub jednostką wybraną podczas dodawania do Koszyka jest jednostka pomocnicza, wówczas na liście towarów wyświetlana jest cena w jednostce pomocniczej oraz jednostce podstawowej,
0 – ilość wyświetlana jest tylko w jednostce domyślnej – na liście pozycji wyświetlana jest ilość na magazynie oraz ilość dodaną na dokument tylko w tej jednej – domyślnej lub wybranej podczas dodawania do Koszyka jednostce
Możliwość zmiany formy płatności na dokumentach „w dół”
W systemie Comarch ERP XL istnieje możliwość zmiany formy płatności na dokumentach „w dół”, to znaczy w sposób ograniczony przez kolejność form płatności ustaloną w Konfiguracji systemu.
Przykładowe zdefiniowane formy płatności w systemie Comarch ERP XL
Aby funkcjonalność można było zastosować dla przedstawiciela handlowego należy w domyślnym katalogu C:\Program Files (x86)\Comarch Mobile\Serwer synchronizacji\Methods zmienić wartość parametru [IsOnlyLowerPaymentFormsVisible] na wartość 1. Więcej informacji nt. tego parametru znajduje się TUTAJ.
Dla prawidłowego działania funkcjonalności konieczne jest:
Zaznaczenie dostępnych form płatności dla konkretnego oddziału, do którego przypięty jest operator, jak na rysunku poniżej:
Zaznaczenie dostępnych form płatności na centrum mobilnym przypiętym do Operatora w systemie Comarch ERP XL
Zaznaczenie checku [Dostępny dla oddziału] po podniesieniu konkretnej formy płatności:
Zaznaczenie opcji „Dostępna w oddziale” form płatności dostępnych dla Operatora
Więcej informacji nt. zmian formy płatności znajduje się TUTAJ.
Edycja kontrahenta docelowego i głównego na nagłówku dokumentu
Możliwość zmiany kontrahenta głównego na nagłówku dokumentu została wprowadzona dla dokumentów:
Rozchód wewnętrzny (RW)
W systemie Comarch ERP XL należy zdefiniować również sposób naliczania promocji w aplikacji. Parametr [Naliczaj rabaty dla kontrahenta] dla kontrahenta znajduje się w module Administrator w konfiguracji systemu ERP w zakładce [Rabaty i promocje].
Jeżeli zostanie wybrana opcja:
Głównego – po zmianie kontrahenta głównego przeliczone zostaną wszystkie promocje.
Docelowego – wówczas rabaty naliczane będą dla kontrahenta docelowego i zmiana kontrahenta głównego nie ma wpływu na przeliczanie rabatów.
Konfiguracja systemu ERP – wybór dla jakiego kontrahenta (główny/docelowy) powinny być naliczane rabaty
Powielanie pozycji
W przypadku, gdy na definicji danego dokumentu w systemie Comarch ERP XL będzie zaznaczony parametr [Powielanie pozycji]: Zablokuj nie będzie możliwości odznaczenia parametru: [Pomiń towary będące w koszyku].
Definicja dokumentu FS z systemu Comarch ERP XL
Konfiguracja jednostki zbiorczej towaru
W systemie Comarch ERP XL na karcie towaru istnieje możliwość wskazania, która jednostka ma być jednostką zbiorczą.
Opcja wskazania w systemie ERP jednostki zbiorczej towaru
Informacje nt. działania tego ustawienia w aplikacji Comarch Mobile znajdują się TUTAJ.
Aktualizacja warunków handlowych przy zmianie kontrahenta głównego na nagłówku dokumentu
Edycja kontrahenta głównego na nagłówku dokumentu
Edycja kontrahenta głównego na nagłówku dokumentu
Od wersji 2022.2.1 aplikacji Comarch Mobile została wprowadzona funkcjonalność, dzięki której użytkownik będzie mógł zdecydować, czy podczas zmiany kontrahenta na nagłówku dokumentu, ma również nastąpić zmiana innych elementów tj. płatnik, kontrahent docelowy, typ transakcji, forma płatności, sposób dostawy.
Widok okna wyboru z możliwością dokonania zmian po wybraniu innego kontrahenta
Użytkownik decyduje, które elementy dokumentu mają ulec zmianie. Po wskazaniu odpowiednich opcji i wybraniu Zapisz, pojawi się poniższy komunikat:
Komunikat wyświetlany w aplikacji przy próbie zmiany kontrahenta głównego na nagłówku dokumentu
Nie – pozostawienie aktualnych ustawień na dokumencie – brak zmiany.
Tak – aktualizacja wskazanych danych na dokumencie
Uwaga
Wybrane elementy zostają zapamiętane dla danego kontrahenta do momentu ich ponownej zmiany
Więcej informacji o konfiguracji dotyczącej zmiany kontrahenta na nagłówku dokumentu można znaleźć TUTAJ.
Aktualizacja nagłówka dokumentu po zmianie daty
W przypadku zmiany daty wystawienia dokumentu na nagłówku, zmiany będą aktualizowane, jeżeli na definicji wystawianego dokumentu dla centrum mobilnego przedstawiciela będzie zaznaczony parametr [Aktualizacja danych po zmianie: Daty].
Możliwość zmiany ceny początkowej na pozycji
Możliwość zmiany ceny początkowej na pozycji wystawianego dokumentu jest dostępna w aplikacji mobilnej dla operatorów, którzy na oddziale mobilnym w systemie Comarch ERP XL, na definicji dokumentu, mają zaznaczony parametr [Edycja cen i rabatów na pozycjach] oraz dodatkowo jeżeli na serwerze synchronizacji jest włączona opcja zmiany ceny początkowej – parametr [CanChangeStartPrice] w pliku konfiguracyjnym. Więcej informacji nt. tego parametru znajduje się TUTAJ.
Wydruk dokumentu
Poniżej został zaprezentowany standardowy wygląd wydruku PDF. Wygląd wydruków dla poszczególnych typów dokumentów i/lub operatorów można modyfikować – np. dodając własne logo firmy na wydruku. Więcej informacji oraz przykłady takich modyfikacji można znaleźć TUTAJ.
Podgląd wydruku PDF wystawionego w aplikacji dokumentu
Podpis osoby uprawnionej do wystawienia dokumentu
W aplikacji istnieje możliwość złożenia dwóch osobnych podpisów na dokumencie zlecenia serwisowego (ZSR) - jeden osoby uprawnionej do wystawienia dokumentu (serwisanta), drugi osoby uprawnionej do odbioru dokumentu (kontrahenta). Domyślnie podpis serwisanta jest wyłączony. W celu jego włączenia należy wartość parametru CanAddTwoSignaturesOnServiceOrder ustawić na 1. Szczegółowy opis parametrów aplikacji znajduje się [TUTAJ].
Po włączeniu podpisu w momencie zakończenia zlecenia serwisowego poprzez opcję "Zakończ zlecenie" pojawi się okno z podpisem osoby uprawnionej do odbioru dokumentu:
Ekran podpisu osoby uprawnionej do odbioru dokumentu
W przypadku pomyłki, możliwe jest użycie przycisku "Wyczyść", które wyczyści ekran i pozwoli na ponowne złożenie podpisu. Po kliknięciu przycisku "Zatwierdź podpis" pojawi się okno z podpisem serwisanta:
Ekran podpisu osoby uprawnionej do wystawienia dokumentu
Blokada możliwości zatwierdzenia zlecenia serwisowego przez serwisantów
W aplikacji istnieje możliwość zablokowania zatwierdzenia zlecenia serwisowego. Funkcjonalność wprowadzona po to, aby użytkownik mobilny nieumyślnie nie zatwierdził zlecenia, czym zamyka sobie możliwość dalszej edycji zlecenia poprzez np. dodanie serwisanta, składników itd.
W celu zablokowania zatwierdzenia należy wartość parametru CanConfirmServiceOrders ustawić na 0. Szczegółowy opis parametrów aplikacji znajduje się [TUTAJ].
W momencie, gdy parametr CanConfirmServiceOrders zostanie wyłączony (wartość parametru - 0), wówczas przy wyjściu ze zlecenia serwisowego będą widnieć opcje:
Opcje przy wychodzeniu ze zlecenia serwisowego - z lewej bez blokady, z prawej z włączoną blokadą
Społeczność Comarch
Dzięki społeczności Comarch ERP rozwiązujemy problemy, dzielimy się pomysłami oraz informujemy o różnych nowościach.