Jak krok po kroku stworzyć aplikację mobilną 1c. Klient mobilny: instalacja, debugowanie, montaż dla systemu Android.” Urządzenie platformy mobilnej

Praktyka tworzenia aplikacji mobilnej 1C 8.3 (część 1)

W tym artykule porozmawiamy o tym, czego próbowaliśmy i jakie błędy popełniliśmy, zanim udało nam się stworzyć mniej więcej normalną aplikację na tablety. Aplikacja została początkowo zaprojektowana tylko dla systemu Android, w oparciu o konfigurację 1C: Zamówienia i Aplikacja mobilna dla rozwoju.

Początkowo wybrano „złe” podejście: ręczne skompilowanie aplikacji i przesłanie jej na tablet. Przypominam, że do budowy aplikacji mobilnych wykorzystuje się „Asystenta tworzenia aplikacji mobilnych” (MobileAppWizzard). Następnie na jednym z forów znaleziono piękne rozwiązanie polegające na wykorzystaniu aplikacji mobilnej do programowania. Ta aplikacja jest zawarta w zestawie instalacyjnym platforma mobilna. W momencie opracowywania korzystano z platformy w wersji 8.3.3.24. W folderze „Android” znajdziesz plik 1cem.apk. Jest to aplikacja mobilna przeznaczona do programowania. Jego największą zaletą, dzięki której zaoszczędziliśmy mnóstwo czasu, jest to, że możesz opublikować aplikację mobilną na serwerze WWW, a na tablecie możesz podać ścieżkę np. http://[ Adres serwera WWW]/[ Nazwa aplikacji mobilnej].

Na tablecie PC w ustawieniach dodanej aplikacji możesz zaznaczyć opcję „Aktualizuj z konfiguratora”, a przy każdym uruchomieniu aplikacja będzie próbowała połączyć się z serwerem WWW i sprawdzić dostępność aktualizacji.

Po wdrożeniu aplikacji mobilnej rozpoczął się proces jej udoskonalania.

Co było wymagane:

1. Skonfiguruj wymianę pomiędzy centralną bazą danych a urządzeniem mobilnym.

2. Zorganizuj synchronizację asymetryczną: pobierz dane o pozycjach produktów, kontrahentach, pozostałych towarach w magazynie i wzajemnych rozliczeniach z centralnej bazy danych, a z aplikacji mobilnej pobierz tylko zamówienia klientów.

3. Wdrożyć prosty interfejs dla menedżerów, w którym będą mogli szybko przeglądać salda, ceny i wzajemne rozliczenia.

Na etapie testów wykorzystano pośrednią bazę danych „Aplikacja Zarządzana”, z uwagi na fakt, że aplikacja demonstracyjna 1C:Orders była początkowo przeznaczona do wymiany z Aplikacją Zarządzaną.

Pierwszy naleśnik wyszedł grudkowaty. Dosłownie. Do wymiany z centralną bazą danych wykorzystano v82.ComConnector. Nie będę się wdawał w szczegóły jego konfiguracji, jest na ten temat mnóstwo osobnych materiałów. Przejdę tylko przez trudności, które napotkałem.

1. Korzystanie z com- obiektów w 64-bitowym systemie operacyjnym serwera. Aby rozwiązać problem, zastosowano opakowanie Aplikacje COM+ w którym jest skonfigurowany Usługi składowe.

2. Połączenie zdalne Kom z innego serwera. Wywoływany serwer musi mieć tę rolę Serwer aplikacji i należy to skonfigurować Dostęp do sieci COM+. Poza tym serwer Apacz musi posiadać odpowiednie uprawnienia (tj. działać jako usługa w imieniu autoryzowanego użytkownika)

Po cierpieniu z powodu połączeń Com postanowiliśmy przenieść bazę roboczą do usługi internetowe.

Wiele napisano także o publikowaniu serwisów internetowych, ale jest napisane o tym, jak to działa. Podzielę się poniżej, jak to NIE działa.

Baza robocza jest wdrożona na platformie 8.2, aplikacja mobilna odpowiednio na 8.3.

Publikując aplikacje najpierw 8.3, a potem 8.2. okresowo wychwytywał błąd „Błąd formatu strumienia” w kliencie WWW 8.3 lub komunikat o błędzie „Wersje platformy klienta i serwera różnią się”. Ponowne opublikowanie nie pomaga, ponowne uruchomienie też nie Apacz. Ale wyłączenie publikacji i ponowne połączenie pomaga.

Następnie złapałem zabawny błąd podczas autoryzacji użytkownika (podczas tworzenia ws Definicje). Podczas testowania na komputerze autoryzacja przy użyciu długiej nazwy jest łatwa. Kiedy próbujesz autoryzować tego samego użytkownika z uruchomionego tabletu Android, autoryzacja zakończyła się przed jej rozpoczęciem. Eksperymentalnie udało się obliczyć, że w cyrylicy długość loginu jest ograniczona do 22 znaków. Jednocześnie kombinacja znaków cyrylicy i cyfr pozwoliła mi zalogować się loginem o długości 27 znaków. Istnieje podejrzenie, że jest to spowodowane konwersją znaków cyrylicy. Na przykład w przeglądarce Firefoksa wiersz z Wikipedii”ivo” jest konwertowane na „».

Technologicznie platforma mobilna 8.3.3 ma obecnie szereg ograniczeń. Najbardziej oczekiwaną innowacją jest moim zdaniem obsługa zapytań. Ponieważ jednak platforma mobilna nie obsługuje jeszcze dowolnych zapytań na listach dynamicznych, musieliśmy „obrać inną drogę”.

Aby rozwiązać problem wyświetlania katalogu produktów z cenami i saldami, zastosowano następujące podejście:

1. Utworzono dwie tabele w formie podręcznika nomenklatury. Pierwsza to lista dynamiczna, czyli sam katalog. Filtr lista dynamiczna skonfigurowany do wyświetlania tylko grup. Druga tabela przedstawia rzeczywiste salda i ceny. Kiedy aktywowana jest dynamiczna linia listy, na serwerze wypełniana jest tabela wartości, która następnie jest wyprowadzana do drugiej tabeli. Do uzyskania cen i sald wykorzystano model obiektowy. Wszystkie te tańce z tamburynem wykonano tylko dlatego, że nie istnieje zwykła metoda grubego klienta „podczas wyprowadzania linii” lub „podczas odbierania danych” i niemożliwe jest dynamiczne rysowanie liczb w kolumnie.

Podobne podejście zastosowano w formie selekcji

2. Do wyświetlenia linii z aktualnymi cenami doskonale sprawdził się FormattedString.

Poniżej znajduje się przykładowy kod.

&OnServerWithoutContext Funkcja RemainingWhenActivatingStringsOnServer(nom)RecordSet = InformationRegisters.ProductPrices.CreateRecordSet(); RecordSet.Selection.Product.Value = nom; RecordSet.Selection.Product.Use = True; Zestaw rekordów.Odczyt(); ArrayFormatStrings = Nowa tablica; Dla każdego ustawionego wiersza ze zbioru rekordów przeprowadź cykl Tablica sformatowanych wierszy.Add(Nowy sformatowany wiersz(Ustaw wiersz.Typ ceny.Nazwa,Kolory sieci.Niebieski)); Tablica FormattedStrings.Add(New FormattedString(" " + String(SetString.Price) + " ")); Koniec cyklu; Zwróć nowy sformatowany ciąg (ArrayFormatStrings); // Wstaw zawartość procedury obsługi. Funkcja końcowa

3. Do załadowania katalogów, sald i cen do aplikacji mobilnej wykorzystano usługę sieciową, która na wejściu otrzymuje strukturę parametrów, a na wyjściu zwraca magazyn wartości. Kolejnym nieprzyjemnym odkryciem była awaria giełdy, kiedy też długotrwałe przetwarzanie po stronie serwera. Wygląda na to, że nastąpił jakiś timeout, po którym aplikacja „uważa”, że połączenie zostało przerwane (chociaż tak naprawdę dane w działającej bazie danych nadal są przetwarzane poprzez połączenie ws) i zatrzymuje wymianę z błędem .

Aby tego uniknąć zdecydowano się podzielić całą wymianę na części, skupiając się ponownie na aplikacji mobilnej. Te. najpierw zsynchronizuj pozycje, następnie kontrahentów, następnie salda itp.

4. Aby uzyskać raporty, stosuje się to samo podejście, co w konfiguracji 1C: Zamówienia. Wywoływana jest usługa sieciowa z parametrami, po stronie serwera tworzona jest działająca baza danych dokument arkusza kalkulacyjnego, a następnie gotowy dokument arkusza kalkulacyjnego wraca do aplikacji mobilnej.

Dzień dobry, drodzy czytelnicy, zwracamy uwagę na krótki artykuł na temat tworzenia prostej aplikacji mobilnej opartej na platformie mobilnej 1C: Enterprise dla Androida bez kompilacji do pliku apk.

Na początek zdefiniujmy krótko podstawowe koncepcje i oprogramowanie, które będzie nam potrzebne do programowania.

1.Podstawowe pojęcia

Platforma mobilna- narzędzie umożliwiające implementację aplikacji działających na urządzenia mobilne z systemem operacyjnym iOS, Android, Windows Phone.

Aplikacja mobilna - Jest wynik końcowy rozwój . Instalowany jest na urządzeniu mobilnym i posiada możliwość wymiany informacji z aplikacją główną w trybie Off-line. Do wymiany dostępne są następujące kanały przesyłania informacji: wymiana plików, poczta elektroniczna, usługi sieciowe itp.

Konfigurator pełni rolę środowiska programistycznego, jedyne co trzeba wziąć pod uwagę to to, że nie wszystkie obiekty konfiguracyjne i mechanizmy systemu są obsługiwane przez aplikację mobilną.

2. Konfiguracja oprogramowania

2.1 InstalacjaSieć serwery

Najpierw zainstalujmy serwer WWW. Praca jest możliwa z obydwoma Internet Informacja usługi od Microsoftu i z Apacz. W naszym przykładzie rozważymy Apacz ponieważ jest łatwiejszy w konfiguracji i stabilny w działaniu.

Używając " Następny » przejdź do następnego okna:

Na pola „domena sieciowa” I "Nazwa serwera" pisać " Lokalny Gospodarz" (lub 127.0.0.1). Oznacza to, że serwer będzie działał na komputerze lokalnym.

W polu « AdministratorS E-mail Adres» wskażmy adres pocztowy, odpowiedzi serwera zostaną do niego wysłane.

Domyślny Apacz działa z portem 80. Na przykład wiele popularnych programów domyślnie współpracuje z tym samym portem TeamViewer, Skypemi, co nie pozwoli na uruchomienie w przyszłości Apacz. Istnieją 2 opcje rozwiązania tego problemu, wyłącz użycie tego portu w tych programach lub zmień port Apacz.

Aby dowiedzieć się, które programy korzystają z portu 80, należy uruchomić cmd.exe (kliknij Start - w wyszukiwarce wpisz cmd - kliknij kliknij prawym przyciskiem myszy„Uruchom jako administrator”) w wyświetlonym oknie wprowadź polecenie netstat -ab.

Na zrzucie ekranu widzimy, że port 80 jest zajęty przez Skype.

Zostawmy domyślny port 80. Kliknij „ Następny » wybierz instalację standardową. Kliknij " Następny » , w razie potrzeby zmień katalog instalacyjny, w kolejnym oknie kliknij „ zainstalować, po czym rozpocznie się proces instalacji.

Po zakończeniu instalacji w zasobniku systemowym pojawi się ikona, po dwukrotnym kliknięciu otworzy się okno:

Jeśli nadal masz problemy ze standardowym portem, zawsze możesz go zmienić ręcznie, w tym celu musisz przejść do folderu, w którym jest on zainstalowany Apacz, wybierz folder „ konf", otwórz znajdujący się w nim plik „ httpd.conf" Znajdź w nim parametr "Słuchać" i zmień jego wartości na potrzebny port, na przykład 8080.

Po zmianie numeru portu zapisz plik i uruchom ponownie Apacz. Aby to zrobić, kliknij ikonę w zasobniku

W wyświetlonym menu lewym przyciskiem myszy wybierz „ Uruchom ponownie».

Upewnijmy się, że serwer WWW działa, przejdź do przeglądarki i wpisz http://localhost:8080/ w polu wprowadzania adresu (gdzie 8080 to port, który zainstalowaliśmy), na ekranie powinna pojawić się następująca strona:

2.2 Konfiguracja platformy

Aby działanie było pomyślne, należy zainstalować następujące komponenty:

2.3 Instalacja platformy mobilnej

Pobierz platformę mobilną ze strony 1C https://users.v8.1c.ru/. W naszym przykładzie użyto wersji 8.3.8.70.

Pobrana platforma to archiwum składające się z następujących folderów:

  1. Android- zawiera pliki do montażu dla Androida;
  2. iOS- zawiera pliki do montażu dla iPhone'a;
  3. Okna- zawiera pliki do montażu dla Windows Phone;
  4. Kreator aplikacji mobilnych- zawiera pliki konfiguracyjne „Application Builder”.

Ponieważ będziemy tworzyć aplikację na urządzenie z systemem operacyjnym Android, interesuje nas pierwszy katalog.

Przyjrzyjmy się jego zawartości:

  • 1cem-arm.apk to mobilna platforma programistyczna dla najczęściej używanej architektury ARM;
  • 1cem-x86.apk - mobilna platforma programistyczna dla architektury x86, wykorzystywana dla procesorów Intel;
  • prjandroid-arm.zip - platforma mobilna przeznaczona do budowy aplikacji mobilnych (dla architektury ARM);
  • prjandroid-x86.zip to platforma mobilna przeznaczona do budowy aplikacji mobilnych (dla architektury x86).

Zainstalujemy na urządzeniu platformę mobilną, w tym celu skopiuj do pamięci telefonu plik „1cem-arm.apk” lub jeśli Twoje urządzenie korzysta z Procesor Intela, „1cem-x86.apk”.

Przejdźmy do menedżera plików na urządzeniu mobilnym, znajdź nasz plik i uruchom go

Podczas instalacji może pojawić się komunikat o blokowaniu aplikacji, które nie zostały otrzymane ze Sklepu Play.

W takim przypadku należy kliknąć przycisk „ Ustawienia" i w wyświetlonym oknie zaznacz pole " nieznane źródła»

i powtórz instalację.

2.4 Ustawienia konfiguracyjne

Po wszystkim oprogramowanie Rozpoczynamy prace nad naszą aplikacją mobilną. Stwórzmy nową bazę informacji i przejdźmy do niej w trybie konfiguracji.
Przejdź do menu Narzędzia -> Opcje i zaznacz pola, jak pokazano na zrzucie ekranu:

Masz pytanie lub potrzebujesz pomocy konsultanta?

Następnie wywołaj właściwości głównego węzła konfiguracyjnego i ustaw parametr „Użyj celu” na „Urządzenie mobilne”, flagę „ Komputer osobisty„Usuwamy to. Następnie obiekty aplikacji mobilnych staną się dostępne. Niektóre obiekty konfiguracyjne staną się niedostępne.

2.5 Publikowanie konfiguracji aplikacji

Kolejnym krokiem jest przesłanie konfiguracji na telefon. W tym celu najpierw utworzymy katalog, ścieżka do tego katalogu powinna być krótka, nie zawierać spacji i składać się wyłącznie ze znaków łacińskich, np. C:\MobileApp. Dalej przejdź do Konfiguracja -> Aplikacja mobilna -> Publikuj . W wyświetlonym oknie uzupełnij parametry:

  • Nazwa – nazwa aplikacji mobilnej. Nazwa nie może być taka sama jak nazwa publikacji bazy danych dla cienkiego klienta.
  • Zaktualizuj aplikację mobilną - jeśli ten parametr zainstalowany, to przy każdej aktualizacji konfiguracji konfiguracja na urządzeniu zostanie automatycznie zaktualizowana
  • Katalog - ścieżka do folderu, w którym będą przechowywane pliki aplikacji mobilnej.

Upewnijmy się, że wszystko działa, przejdź do przeglądarki pod adresem http://localhost:8080/Mobapp/, powinniśmy zobaczyć następujący plik xml:

W polu adresu wpisz adres IP komputera, na którym opublikowana jest konfiguracja oraz nazwę samej publikacji oddzieloną ukośnikiem. W naszym przykładzie użyto niestandardowego portu, więc adres będzie wyglądał następująco:

Kliknij przycisk pobierania, po pobraniu powinno pojawić się następujące okno ustawień:

Ustaw parametry:

  • « Uruchom ponownie z konfiguratora" - Aplikacja zostanie automatycznie zaktualizowana po aktualizacji pliku konfiguracyjnego XML znajdującego się na serwerze WWW.
  • « Debugowanie włączone» - etapowe debugowanie aplikacji na urządzeniu mobilnym możliwe jest z poziomu Konfiguratora na komputerze programisty. Naciśnij przycisk " OK».

Jeśli po naciśnięciu przycisku „ Pobierać„wystąpi podobny błąd:

Teraz nasza baza danych została dodana do urządzenia mobilnego i możemy ją uruchomić, klikając na nią na liście wyboru bazy danych. Okno, które się pojawi, jest puste, ponieważ nie dodaliśmy jeszcze żadnych obiektów metadanych. Zacznijmy rozwój.

  1. Konfiguracja wymiany pomiędzy Bankiem Centralnym a aplikacją mobilną

Załóżmy, że mamy pewną bazę źródłową, która zawiera tylko jeden katalog: „Nomenklatura”. I musi wymieniać informacje z naszą aplikacją mobilną.

Przejdźmy do konfiguratora aplikacji mobilnej i utwórzmy hierarchiczny katalog o nazwie „Nomenklatura”. Dodajmy formularz listy.

Przejdźmy do miejsca pracy strona główna i dodaj tam formularz listy katalogów „Nomenklatura”, ustaw parametr „Szablon strony początkowej” na „Jedna kolumna”.

Naciśnij przycisk " Aktualizacja", aplikacja na Twoim telefonie powinna zaktualizować się automatycznie. Jeśli nie, to wyświetl przycisk na panelu i naciśnij go. Na ekranie powinno pojawić się następujące okno:

Kolejnym krokiem jest stworzenie nowego bezpieczeństwa informacji. Dodamy do niego katalog „Nomenklatura”, którego struktura całkowicie powtórzy katalog „Nomenklatura” aplikacji mobilnej. Ta baza danych będzie pełnić rolę Źródła.

Stwórzmy nową usługę internetową, nazwijmy ją „MobileExchange”. We właściwościach ustaw URI przestrzeni nazw „MobileExchange”. W tej usłudze internetowej dodamy nową operację i nazwiemy ją „Pobierz produkty”

Napiszmy teraz kod, który w formularzu zwróci listę produktów ze źródłowej bazy danych plik XML. Przejdźmy do właściwości operacji „Prześlij produkty” i utwórzmy Nowa cecha z pola " Nazwa metody" W funkcji napiszemy następujący kod:

Opublikujmy usługę internetową i do tego zmierzamy Administracja ->Opublikuj w dniu Sieć -Serwer . W wyświetlonym oknie ustaw nazwę usługi internetowej „MobileExchange” i usuń zaznaczenie pola wyboru „Publikuj cienkiego klienta i klienta sieciowego”. Następnie naciśnij przycisk „ Publikować».

Po opublikowaniu serwisu WWW przejdźmy do konfiguracji platformy mobilnej, otwórz formularz listy katalogu „Nomenklatura” i dodaj Nowa drużyna„Aktualizuj element” w panelu poleceń formularza. Przed wykonaniem tej czynności zaleca się odznaczenie „ Automatyczne uzupełnianie" na tym panelu.

Utwórz nową akcję dla polecenia „Aktualizuj element” i napisz następujący kod:

Aktualizujemy konfigurację.

To kończy rozwój. Przechodzimy do trybu konfiguracji użytkownika Źródła i w dowolny sposób wypełniamy katalog nomenklatury

Podchodzimy do urządzenia mobilnego, uruchamiamy aplikację i klikamy przycisk „Aktualizuj element”. Jeśli wszystko zostało wykonane poprawnie, na ekranie powinny pojawić się następujące dane:

Wniosek

Podsumujmy naszą pracę - udało nam się od podstaw skonfigurować i rozwinąć aplikację mobilną oraz skonfigurować jej wymianę z inną bazą danych. Warto zauważyć, że platforma 1C Mobile pozwala to zrobić szybko i wygodnie.

Dochodzimy więc do 1C: Enterprise w formie aplikacji mobilnej -Krótki przegląd aplikacji mobilnej od środka.

Aplikacja mobilna jest samodzielną aplikacją posiadającą własną bazę danych do pracy z informacjami o użytkowniku. Na razie, aplikacje mobilne od 1C mogą działać na trzech najpopularniejszych platformach - Android, Apple iOS i Windowsa.


Instalacja aplikacji mobilnej odbywa się z „rynków” na tych platformach. Jeśli aplikacja nie jest opublikowana, możesz ją zainstalować, przesyłając plik dystrybucyjny na swoje urządzenie mobilne.

Samą aplikację mobilną możesz skonfigurować i zaprogramować jedynie w pełnym trybie Konfiguratora, a następnie złożyć ją za pomocą specjalnej konfiguracji Mobile Application Builder.
To ogromny plus, ponieważ rozwój aplikacji mobilnej może wykonać programista konfiguracji 1C, który utrzymuje Twój program 1C: Enterprise.
Oczywiście aplikacja mobilna ma mniejsze możliwości niż platforma desktopowa: nie ma tu np. obiektów takich jak Raporty, Rejestry księgowe, Procesy Biznesowe.




Kolejny minus - nie będziesz mógł połączyć się z bazą danych 1C działającą na platformie komputerowej w wersji plikowej lub serwerowej.


Istnieje jednak funkcjonalność umożliwiająca korzystanie z zalet mobilnych: podczas tworzenia aplikacji mobilnej możesz korzystać z Książki kontaktów, wykonywać połączenia z aplikacji za pośrednictwem „ T telefonia”, uzyskaj dane o lokalizacji za pomocą funkcji Geopositioning.

Ty pytasz: " Jak pracować ze zwykłą bazą danych 1C? Dlaczego taka aplikacja jest w ogóle potrzebna?

Istnieje kilka sposobów komunikowania się ze „światem zewnętrznym”.mechanizmy, takie jak plany wymiany. Umożliwiają połączenie pełnoprawnej bazy danych 1C z bazą danych aplikacji mobilnej - w przybliżeniu w ten sam sposób, w jaki działają rozproszone bazy danych dane.

Aplikacja mobilna musi pełnić funkcję aplikacji mobilnej i odpowiadającą jej funkcjonalność, aby wszystkie dane z jednej bazy danych do drugiej nie były w pełni zsynchronizowane, a nie było to możliwe ze względu na opisane powyżej ograniczenia obiektowe.
Ta implementacja wymiany jest dostępna na przykład w kombinacji programów 1C: Enterprise 8 Trade Management wersja 11 iaplikacja mobilna „1C:Zamówienia” . W bazach danych wymieniane są informacje o kontrahentach, zamówieniach klientów, asortymencie produktów i cenach. Jednocześnie aplikacja mobilna może pracować w trybie offline i, jeśli jest dostępny Internet, wymieniać dane.
Aplikacja mobilna wygląda przyzwoicie, ma rozpoznawalny wizualnie styl w porównaniu do wersji komputerowej 1C, a także zestaw standardowych operacji wykonywanych na obiektach, takich jak: „Podaj”, „Zaznacz do usunięcia” i tym podobne. Dzięki temu użytkownicy aplikacji mobilnej będą zaznajomieni z kontekstem pracy.

Tak wygląda interfejs aplikacji w najnowszych wersjach:


Drugi popularny sposób komunikacji aplikacji mobilnej z systemem księgowym
1C:Enterprise 8 działa poprzez usługi sieciowe

Ogólny schemat organizacji jest następujący: w rozwiązaniu aplikacyjnym 1C: Enterprise 8 lub prościej - w konfiguracji opisano usługę internetową, która wykonuje pewne funkcje po stronie, na której usługa jest publikowana i może przesyłać dane.

Mówiąc najprościej: z aplikacji mobilnej online możesz uzyskać dostęp do systemu księgowego 1C: Enterprise 8, wykonać dowolną funkcję opisaną w usłudze - na przykład uzyskać dane do raportu lub utworzyć nowego kontrahenta

Więcej szczegółów:

Serwis może przesyłać dane w formacie opisanym w XDTO pakiet, a sam programista opisuje ten model danych. Możesz przenosić typy pierwotne: liczby, ciągi znaków, daty. Możesz przesyłać typy złożone, możesz przesyłać dane binarne - na przykład obrazy lub Dokumenty PDF, XLS. Pokażemy prosty przykład, w którym opisany jest pakiet z zadaniami - numer zadania i jego tytuł. Przykładowy wygląd paczki:

Z kolei wW aplikacji mobilnej tworzony jest obiekt typu WS-Link. Określa adres usługi internetowej, po czym automatycznie ładowane są typy danych i metody, którymi operuje usługa:

Wszystko jest gotowe! W aplikacji mobilnej możesz teraz wywołać funkcję serwisową 1C: Enterprise 8 lub otrzymać niezbędne dane.

A co z licencjami na aplikacje mobilne od 1C?

Kwestię tę omówiono w piśmie informacyjnym od 1C. Fragment znajduje się poniżej.

Nasze rekomendacje:
Aplikacje mobilne od 1C są dość Nowy produkt, ale w zwykłym „opakowaniu” - rozwój może przeprowadzić pełnoetatowy specjalista 1C. Otwierają nowe horyzonty w zakresie poszerzania interakcji z systemem księgowym i konsolidacji danych dla rachunkowości zarządczej. Zalecamy korzystanie z tej opcji, gdy stacjonarna opcja pracy z 1C nie jest odpowiednia, a wystarczająca będzie funkcjonalność mobilna, na przykład dostęp tylko do części danych lub części procesu.

A według tradycji sprawa:

Zadanie:

Klient ma centrala i kilka punktów w jej obrębie sieć handlowa. W każdym punkcie jest kilku kierowników sprzedaży i jeden Miejsce pracy sprzedaż towarów z programem księgowym.

W której , centrala wydaje instrukcje sprzedawcom- na przykład z resztek odbierz zamówienie na kolejny punkt lub zdemontuj wskazany produkt.

Aby ustawić zadania, Klient najpierw skorzystał z poczty elektronicznej i rozmowy telefoniczne, Ale -Było tylko jedno zautomatyzowane stanowisko pracy i pracownicy nie mogli szybko otrzymywać zadań i na nie odpowiadać. Centrala miała trudności z monitorowaniem takich zadań, gdyż przy ustalaniu telefonicznym zadanie nie było nigdzie spisane, a ponadto trudno było sprawdzić pocztę pod kątem niezakończonych zadań.

Rozwiązanie:

Zaproponowaliśmy następujące rozwiązanie. Opracuj niezbędną funkcjonalność do wyznaczania zadań dla pracowników w oparciu o aplikację mobilną 1C: Zamówienia i zintegruj ją z centralnym systemem księgowym.

Jako platformę do uruchomienia i pracy z aplikacją mobilną pracownik punktu sprzedaży mógłby wykorzystać własną telefon komórkowy, a dla tych, którzy ich nie mieli, centrala zakupiła dla nich niedrogie smartfony.

Dzięki temu, że aplikacja mobilna i centralny system księgowy działają w jednym przestrzeń informacyjna- uzyskano efektywność wyznaczania zadań i zwracania się dokładnie do pracownika, dla którego było to przeznaczone.

Zwiększyła się dokładność przekazywania informacji - jeśli wcześniej e-mail kierownik w biurze napisał - „przygotowaj towar według zamówienia nr ___”, ale teraz w zadaniu po prostu wskazał link do wymaganego zamówienia, który pracownik punktu mógł otworzyć na telefonie.

Wzrósł poziom kontroli nad zadaniami – nie znikały one nigdzie i miały status, który nadał im pracownik w trakcie realizacji zadania. A centrala zawsze mogła kontrolować zadanie.

Anatolij Nikulin

Platforma mobilna „1C:Enterprise 8” to nazwa technologii, która pozwala na tworzenie rozwiązań działających na smartfonach i tabletach Google’a na Androida lub Apple iOS. Ważną zaletą platformy 1C jest to, że rozwiązania są opracowywane w jednej wersji dla obu mobilnych systemów operacyjnych, a następnie po prostu eksportowane do Android i dla iOS bez żadnych dodatkowych modyfikacji i pisania kodu programu zależnego od platformy.

Zarówno platforma 1C:Enterprise, jak i sama baza informacyjna (konfiguracja w kategoriach 1C) są natychmiast instalowane na urządzeniu mobilnym. Baza informacyjna na urządzeniu zawiera wersję plikowej bazy danych (do przechowywania różnych danych, z którymi użytkownik pracuje lub będzie pracował) oraz samą aplikację (kod bajtowy oprogramowania działającego na tablecie lub smartfonie).

Przykład klienta mobilnego dla EDMS „Corporate Document Flow” stworzonego na platformie mobilnej „1C:Enterprise 8.3”

Platforma umożliwia pobieranie i wdrażanie aplikacji przez użytkowników na ich urządzeniach ze sklepów Sklep z aplikacjami Lub Google Play. Zestaw dystrybucyjny zawiera wszystkie elementy niezbędne do rozpoczęcia pracy.

W oparciu o platformę mobilną 1C można tworzyć różne rozwiązania, ale główną opcją rozwiązania są mobilni klienci offline dla systemów księgowych. Rozwiązania te mają na celu wsparcie użytkownicy mobilni w odległych miejscach pracy. Wymiana danych odbywa się poprzez regularną synchronizację z centralną bazą danych. Wymiana danych możliwa jest poprzez następujące mechanizmy:

  • usługi internetowe
  • Udostępnianie plików
  • E-mail
  • i inne mechanizmy
    Alternatywną opcją jest praca online przy użyciu klienta WWW.

Opracowana aplikacja mobilna stanowi odrębny, kompletny produkt programowy i może wymieniać dane z kilkoma centralnymi bazami danych jednocześnie. Przykładowo w jednej aplikacji mobilnej możesz zaimplementować dostęp i pracę z dokumentami z księgowej bazy danych oraz zadaniami z przedsiębiorstwaowego systemu zarządzania dokumentami.


28 września tego roku 1C bez większego szumu i patosu wypuściło wersję ewaluacyjną platformy 8.3.2.163, która była przeznaczona do testów. Pełna lista zmian i ulepszeń, ci, którzy chcą, mogą przeczytać lub, jeśli mają subskrypcję, .
Spośród wymienionych ulepszeń „Platforma mobilna 1C: Enterprise 8” wydaje mi się dość „smaczna”, co pozwala stworzyć aplikację na mobilne systemy operacyjne Android lub iOS przy użyciu zwykłych narzędzi 1C

Platforma mobilna, jak piszą sami deweloperzy, „to ogólna nazwa technologii umożliwiającej tworzenie aplikacji działających na urządzeniach mobilnych z systemami operacyjnymi Systemy Android lub iOS.”
„Aplikacja mobilna instalowana na urządzeniu to połączenie platformy mobilnej i bazy informacji.”

Oznacza to, że w uproszczeniu możesz skompilować napisaną konfigurację do aplikacji na Androida (.apk) lub iOS (.zip). Następnie wszystkie te rzeczy można opublikować w Google Play lub AppStore. To prawda, że ​​​​jeśli program na Androida można podpisać utworzonym tam kluczem natychmiast w 1C i będzie on natychmiast gotowy do publikacji, to aby opublikować aplikację w AppStore, należy ją najpierw skompilować za pomocą programu Xcode na komputerze z systemem operacyjnym System Mac OS X. I oczywiście, aby publikować w którymkolwiek z tych sklepów, potrzebujesz licencji programisty.
Wszystko brzmi dobrze i oczywiście chciałem wypróbować nowe funkcje w akcji.

Tworzenie aplikacji mobilnej na 1C

Do tego potrzebujemy nowa wersja platformy (), pobrany plik, Android SDK i JDK.
Od razu ostrzegam: nie stawiam sobie obecnie zadania pokazania procesu tworzenia czegoś konkretnego na 1C, ale chcę to tylko sprawdzić i pokazać – tak, świat oszalał i naprawdę można napisz program dla Androida w 1C.
Cóż, spróbujmy napisać coś w rodzaju „helloWorld” dla Google Phone. Zróbmy program do celów testowych - konfigurację z jednym ogólnym formularzem, którą umieścimy na „pulpicie”.
Tworzymy więc nową konfigurację w trybie zarządzanym i pierwszą rzeczą, którą musimy zrobić, jeśli piszemy na platformę mobilną, jest wskazanie „Cel użycia” we właściwościach samej konfiguracji.

I tutaj od razu zauważamy, że wiele obiektów konfiguracyjnych stało się niedostępnych do użycia. Nie będziemy już mogli korzystać z podsystemów, rutynowych zadań, pakietów XDTO, usługi internetowe, raporty, procesy biznesowe i wiele więcej. Ponadto wiele procedur i metod dla niektórych obiektów nie jest dostępnych. Należy to wziąć pod uwagę przy opracowywaniu.
Tworzymy „formularz”, tworzymy atrybut string z tytułem: „Hello, Habr!” - i wrzuć go do formularza. Stwórzmy także przycisk. Podczas przetwarzania kliknięć napiszemy na przykład wynik wiadomości.

&OnClient Procedura Polecenie1(Polecenie) Ostrzeżenie("To działa!"); Koniec procedury

Nam to wystarczy do sprawdzenia jego funkcjonalności, więc przejdźmy do przyjemniejszej części. Zapisujemy konfigurację do pliku aplikacji mobilnej (Konfiguracja->Aplikacja mobilna->Zapisz do pliku), uruchamiamy w trybie zarządzanym i rozpoczynamy przetwarzanie MobileAppWizard.epf. Plik ten znajduje się w archiwum mobile.zip, które pobraliśmy na samym początku.
A teraz jesteśmy proszeni o wypełnienie ustawień początkowych, gdzie wszystkie wymagane pola są podkreślone na czerwono.

Lokalizacja platformy mobilnej – katalog, w którym znajdują się pliki android.zip i ios.zip niezbędne do dostarczenia aplikacji mobilnej. Wszystkie znajdują się w tym samym archiwum mobile.zip.
Wskazujemy folder, w którym zainstalowaliśmy pakiet SDK systemu Android (można go pobrać). 1C określa następujące wymagania:
Wersja Android SDK Tools - nie niższa niż 20.0.3;
Wersja narzędzi platformy Android SDK - nie niższa niż 14;
Wersja Platformy SDK - API 8 (nie niższa niż wersja 8.3).
Potrzebujemy również pakietu Java SDK (można go uzyskać pod tym adresem). Ponadto 1C ostrzega nas, że JDK7 nie działa w połączeniu z zestawem SDK systemu Android.
Wskazujemy foldery, w których będzie umieszczony nasz plik .apk, lokalizację klucza podpisującego oraz alias z hasłem. Jeśli robisz to po raz pierwszy i nie masz klucza, możesz wypełnić „parametry klucza” i utworzyć klucz dla siebie (w tym przypadku w polu „plik klucza” musisz wskazać folder gdzie ten klucz zostanie utworzony).
Kliknij „OK” i przejdź do drugiego okna.

W nim przede wszystkim wskazujemy „Konfigurację aplikacji mobilnej” - ten sam plik, który zapisaliśmy. Następnie język i dopiero wtedy kliknij przycisk ze „szkłem powiększającym” i wprowadź tam reprezentację. Wskazujemy „ID aplikacji” – unikalną nazwę klasy Java, która będzie używana w przyszłości przy wykonywaniu aktualizacji. Identyfikator musi być napisany po łacinie, a 1C zaleca rozpoczynanie nazwy od „com.e1c”. Wpisz numer wersji i kompilacji, a następnie kliknij przycisk „Utwórz”. Jeśli wszystko pójdzie dobrze, system powiadomi Cię, że plik .apk został pomyślnie utworzony.
Przesyłamy powstały plik do telefonu i instalujemy go za pomocą naszego ulubionego menedżera, zezwalając wcześniej na instalację w ustawieniach systemu aplikacje stron trzecich. Lub zainstaluj program na emulatorze poprzez adb. Powiem od razu: na emulatorze wszystko strasznie wolno, ale na telefonie (tylko sprawdzałem HTC Wildfire S) Sytuacja jest znacznie lepsza, ale nadal występują problemy. Przykładowo mój plik okazał się ważyć aż 34 Mb, więc instalacja trwała dość długo. Po uruchomieniu wita nas ekran powitalny, a po chwili rozpoczyna się sama konfiguracja. (przepraszam za zdjęcie: robiłem je kalkulatorem)

Jak dotąd nowe funkcje wyglądają bardzo „surowo”: ograniczona funkcjonalność 1C, niemożność za pomocą SDK bezpośrednio, plus duży rozmiar i trochę „hamulców”... Ale sama możliwość napisania programu na platformę mobilną na 1C jest trochę zaskakująca! Osobiście mam co do tego dwa zdania. Z jednej strony ta „cecha” nadal przypomina raczej zabawkę, ponieważ nie ma możliwości zrobienia czegoś naprawdę wartościowego. Ale z drugiej strony jest to wyraźnie duży krok firmy 1C w stronę mobilności, a jeśli ten kierunek będzie aktywnie rozwijany, może przynieść wiele korzyści. Przykładowo możesz wyposażyć magazynierów w tablety. Jeśli istnieje możliwość wykorzystania kamer „pokładowych”, można uwolnić się od urządzeń odczytujących i skanować kody bezpośrednio z tabletu, przekazywać je kierowcom samochodów, wysyłać zadania transportowe czy śledzić trasę i czas przejazdu pojazdu w ruch. Ogólnie rzecz biorąc, istnieje wiele opcji i fakt, że wszystko będzie w jednym System informacyjny, bardzo zadowoli klientów/menedżerów, ponieważ z jakiegoś powodu zawsze panicznie boją się używać duża ilość różne systemy chcą korzystać ze wszystkich funkcji na jednej platformie.