Jak vytvořit 1c mobilní aplikaci krok za krokem. Mobilní klient: instalace, ladění, sestavení pro Android." Zařízení mobilní platformy

Cvičení vývoje mobilní aplikace 1C 8.3 (část 1)

V tomto článku si povíme, co jsme vyzkoušeli a jaké chyby jsme udělali, než se nám podařilo udělat víceméně normální aplikaci pro tablety. Aplikace byla původně navržena pouze pro Android na základě konfigurace 1C: Orders a mobilní aplikace pro rozvoj.

Zpočátku byl zvolen „špatný“ přístup: zkompilovat aplikaci a nahrát ji do tabletu ručně. Dovolte mi připomenout, že k vytváření mobilních aplikací používáte „Asistenta vytváření mobilních aplikací“ (MobileAppWizzard). Pak se na jednom z fór našlo krásné řešení pomocí mobilní aplikace pro vývoj. Tato aplikace je součástí instalační sady mobilní platforma. V době vývoje byla používána platforma verze 8.3.3.24. Ve složce „Android“ můžete najít soubor 1cem.apk. Jedná se o mobilní aplikaci pro vývoj. Jeho největší výhodou, která nám ušetřila spoustu času, je, že mobilní aplikaci můžete publikovat na webovém serveru a na tabletu můžete zadat cestu jako http://[ Adresa webového serveru]/[ Název mobilní aplikace].

Na tabletu PC můžete v nastavení přidané aplikace zaškrtnout políčko „Aktualizovat z konfigurátoru“ a při každém spuštění aplikace se pokusí připojit k webovému serveru a zkontrolovat aktualizace.

Po nasazení mobilní aplikace začal proces její dolaďování.

Co bylo požadováno:

1. Nastavte výměnu mezi centrální databází a mobilním zařízením.

2. Uspořádejte asymetrickou synchronizaci: stahujte data o produktových položkách, dodavatelích, zbývajícím zboží na skladě a vzájemných vyúčtováních z centrální databáze a stahujte pouze objednávky zákazníků z mobilní aplikace.

3. Implementujte jednoduché rozhraní pro manažery, kde mohou rychle prohlížet zůstatky, ceny a vzájemné vypořádání.

Ve fázi testování byla použita zprostředkující databáze „Managed Application“, protože demo aplikace 1C:Orders byla původně navržena pro výměnu s Managed Application.

První palačinka vyšla hrudkovatě. Doslova. Pro výměnu s centrální databází byl použit v82.ComConnector. Nebudu zabíhat do podrobností o jeho nastavení; existuje o tom mnoho samostatných materiálů. Projdu pouze obtížemi, se kterými jsem se setkal.

1. Pomocí com- objektů na 64bitovém serveru OS. K vyřešení problému byl použit obal Aplikace COM+ který je nakonfigurován v Komponentní služby.

2. Vzdálené volání Com z jiného serveru. Volaný server musí mít roli Aplikační server a měl by být nakonfigurován Síťový přístup COM+. Kromě toho server Apache musí mít příslušná práva (tj. provozovat jako službu jménem oprávněného uživatele)

Po utrpení spojení s Com jsme se rozhodli přenést pracovní základnu na webové služby.

O publikování webových služeb bylo také napsáno mnoho, ale píše se o tom, jak to funguje. Níže se podělím o to, jak to NEFUNGUJE.

Pracovní základna je nasazena na platformě 8.2, mobilní aplikace, resp. 8.3.

Při publikování aplikací nejprve 8.3 a poté 8.2. pravidelně zachycoval závadu „Chyba formátu streamu“ ve webovém klientovi 8.3 nebo chybovou zprávu „verze klientských a serverových platforem se liší“. Opětovné publikování nepomáhá, ani restart Apache. Ale deaktivace publikování a opětovné připojení pomáhá.

Dále jsem zachytil vtipnou chybu při autorizaci uživatele (při vytváření ws Definice). Při testování na počítači je autorizace s dlouhým názvem snadná. Když se pokusíte autorizovat stejného uživatele ze spuštěného tabletu Android, autorizace skončila dříve, než začala. Experimentálně bylo možné spočítat, že v azbuce je délka přihlášení omezena na 22 znaků. Kombinace znaků azbuky a číslic mi zároveň umožnila přihlásit se loginem dlouhým 27 znaků. Existuje podezření, že je to kvůli převodu znaků azbuky. Tedy například v prohlížeči Firefox řádek z Wikipedie"ivo" se převede na "».

Technologicky má mobilní platforma 8.3.3 v současnosti řadu omezení. Nejočekávanější novinkou je podle mého názoru podpora dotazů. Ale protože mobilní platforma zatím nepodporuje libovolné dotazy v dynamických seznamech, museli jsme „vybrat jinou cestu“.

K vyřešení problému zobrazení produktového adresáře s cenami a zůstatky byl použit následující přístup:

1. Byly vytvořeny dvě tabulky ve formě příručky nomenklatury. První je dynamický seznam, samotný adresář. Filtr dynamický seznam nakonfigurován tak, aby zobrazoval pouze skupiny. Druhá tabulka jsou skutečné zůstatky a ceny. Při aktivaci řádku dynamického seznamu se na serveru vyplní tabulka hodnot, která se poté odešle do druhé tabulky. K získání cen a zůstatků byl použit objektový model. Všechny tyto tance s tamburínou byly provedeny pouze proto, že obvyklá metoda tlustého klienta „při výstupu řádku“ nebo „při příjmu dat“ neexistuje a není možné dynamicky kreslit čísla ve sloupci.

Podobný přístup byl použit ve formě výběru

2. Pro zobrazení řádku s aktuálními cenami byl FormattedString perfektní.

Níže je uveden příklad kódu.

Funkce &OnServerWithoutContext RemainingWhenActivatingStringsOnServer(nom)RecordSet = InformationRegisters.ProductPrices.CreateRecordSet(); RecordSet.Selection.Product.Value = nom; RecordSet.Selection.Product.Use = True; Recordset.Read(); ArrayFormatStrings = Nové pole; Pro každý řádek sady ze sady záznamů cyklujte Array of Formatted Rows.Add(New Formatted Row(Set Row.Price Type.Name,WebColors.Blue)); Pole FormattedStrings.Add(New FormattedString(" " + String(SetString.Price) + " ")); EndCycle; Return New FormattedString(ArrayFormatStrings); // Vložte obsah handleru. EndFunction

3. Pro načtení adresářů, zůstatků a cen do mobilní aplikace byla využita webová služba, která jako vstup přijímá strukturu parametrů a jako výstup vrací úložiště hodnot. Dalším nepříjemným zjištěním byl pád burzy, když taky dlouhodobé zpracování na straně serveru. Zdá se, že došlo k nějakému časovému limitu, po kterém aplikace „uvěří“, že připojení bylo přerušeno (ačkoli ve skutečnosti se data stále zpracovávají v pracovní databázi prostřednictvím připojení ws), a zastaví výměnu s chybou .

Aby se tomu zabránilo, bylo rozhodnuto rozdělit celou výměnu na části se zaměřením na návrat zpět do mobilní aplikace. Tito. nejprve synchronizujte položky, poté protistrany, poté zůstatky atd.

4. K získání sestav se používá stejný přístup jako v konfiguraci 1C: Objednávky. Zavolá se webová služba s parametry, na straně serveru se vytvoří funkční databáze tabulkový dokument a poté se hotový tabulkový dokument vrátí do mobilní aplikace.

Dobré odpoledne, milí čtenáři, dáváme vám do pozornosti krátký článek o vytvoření jednoduché mobilní aplikace založené na mobilní platformě 1C: Enterprise pro Android bez kompilace do apk souboru.

Pro začátek si stručně definujme základní pojmy a software, který budeme k vývoji potřebovat.

1.Základní pojmy

Mobilní platforma- nástroj, který vám umožní implementovat aplikace, které fungují mobilní zařízení s operačními systémy iOS, Android, Windows Phone.

Mobilní aplikace - je konečný výsledek rozvoj . Je nainstalován na mobilním zařízení a má schopnost vyměňovat si informace s hlavní aplikací v režimu Off-line. Pro výměnu jsou k dispozici následující kanály přenosu informací: Výměna souborů, e-mail, webové služby atd.

Konfigurátor funguje jako vývojové prostředí, jediné, co je potřeba vzít v úvahu, je, že ne všechny konfigurační objekty a systémové mechanismy jsou mobilní aplikací podporovány.

2. Nastavení softwaru

2.1 InstalaceWeb servery

Nejprve si nainstalujme webový server. Práce je možná s oběma Internet informace služby od společnosti Microsoft as Apache. V našem příkladu budeme uvažovat Apache protože je snadněji nastavitelný a stabilní v provozu.

Za použití " další » přejděte do dalšího okna:

Do polí "Síťová doména" A "Název serveru" napsat " localhost" (nebo 127.0.0.1). To znamená, že server poběží na místním počítači.

V terénu « Správces E-mailem Adresa» naznačme emailová adresa, budou na něj odeslány odpovědi serveru.

Výchozí Apache pracuje s portem 80. Mnoho populárních programů například standardně pracuje se stejným portem TeamViewer, SkypeE, který vám v budoucnu neumožní spustit Apache. Existují 2 možnosti, jak tento problém vyřešit, zakázat použití tohoto přístavu v těchto programech nebo změnit port Apache.

Chcete-li zjistit, které programy používají port 80, musíte spustit cmd.exe (klikněte na Start - do vyhledávání zadejte cmd - klikněte na klikněte pravým tlačítkem myši„Spustit jako správce“) v zobrazeném okně zadejte příkaz netstat -ab.

Na snímku obrazovky vidíme, že port 80 je obsazen Skypem.

Necháme výchozí port 80. Klikněte na " další » vyberte standardní instalaci. klikněte na " další » , v případě potřeby změňte instalační adresář, v dalším okně klikněte na „ Nainstalujte, po kterém se spustí proces instalace.

Po dokončení instalace se v systémové liště objeví ikona, pokud na ni dvakrát klikneme, otevře se následující okno:

Pokud máte stále problémy se standardním portem, můžete jej kdykoli změnit ručně, k tomu musíte přejít do složky, kde je nainstalován Apache, vyberte složku " conf", otevřete soubor v něm " httpd.conf" Najděte v něm parametr "Poslouchat" a změňte jeho hodnoty na port, který potřebujete, například 8080.

Po změně čísla portu uložte soubor a restartujte Apache. Chcete-li to provést, klikněte na ikonu v zásobníku

Levým tlačítkem myši v zobrazené nabídce vyberte „ Restartujte».

Ujistíme se, že webový server funguje, přejděte do prohlížeče a do pole pro zadání adresy zadejte http://localhost:8080/ (kde 8080 je port, který jsme nainstalovali), na obrazovce by se měla objevit následující stránka:

2.2 Nastavení platformy

Pro úspěšnou činnost je třeba nainstalovat následující součásti:

2.3 Instalace mobilní platformy

Stáhněte si mobilní platformu z webu 1C https://users.v8.1c.ru/. V našem příkladu je použita verze 8.3.8.70.

Stažená platforma je archiv, který se skládá z následujících složek:

  1. Android- obsahuje soubory pro sestavení pro Android;
  2. iOS- obsahuje soubory pro sestavení pro iPhone;
  3. Okna- obsahuje soubory pro sestavení pro Windows Phone;
  4. MobileAppMaker- obsahuje konfigurační soubory „Application Builder“.

Jelikož budeme aplikaci vyvíjet pro zařízení s OS Android, zajímá nás první adresář.

Podívejme se na jeho obsah:

  • 1cem-arm.apk je mobilní vývojářská platforma pro architekturu ARM, nejčastěji používaná;
  • 1cem-x86.apk - mobilní vývojová platforma pro architekturu x86, používaná pro procesory Intel;
  • prjandroid-arm.zip - mobilní platforma určená pro vytváření mobilních aplikací (pro architekturu ARM);
  • prjandroid-x86.zip je mobilní platforma určená pro vytváření mobilních aplikací (pro architekturu x86).

Mobilní platformu nainstalujeme do zařízení; k tomu zkopírujte soubor „1cem-arm.apk“ do paměti telefonu, nebo pokud vaše zařízení používá procesor Intel, "1cem-x86.apk".

Pojďme do správce souborů na mobilním zařízení, najdeme náš soubor a spustíme jej

Během instalace se může zobrazit zpráva o blokování aplikací nepřijatých z Obchodu Play.

V tomto případě musíte kliknout na „ Nastavení" a v okně, které se objeví, zaškrtněte políčko " neznámé zdroje»

a zopakujte instalaci.

2.4 Nastavení konfigurace

Po všem software Jsme připraveni začít s vývojem naší mobilní aplikace. Vytvořme novou informační základnu a jdeme do ní v konfiguračním režimu.
Přejděte do nabídky Nástroje -> Možnosti a zaškrtněte políčka, jak je znázorněno na snímku obrazovky:

Máte dotaz nebo potřebujete pomoc od konzultanta?

Dále zavolejte vlastnosti kořenového konfiguračního uzlu a nastavte parametr „Use Purpose“ jako „Mobile Device“, příznak „ Osobní počítač„Odstraníme to. Poté budou objekty mobilní aplikace dostupné. Některé konfigurační objekty budou nedostupné.

2.5 Publikování konfigurace aplikace

Dalším krokem je přenos konfigurace do telefonu. K tomu si nejprve vytvoříme adresář, cesta do tohoto adresáře by měla být krátká, neměla by obsahovat mezery a skládat se pouze ze znaků latinky, například C:\MobileApp. Dále přejděte na Konfigurace -> Mobilní aplikace -> Publikovat . V zobrazeném okně vyplňte parametry:

  • Název – Název mobilní aplikace. Název nesmí být stejný jako název publikace databáze pro tenkého klienta.
  • Aktualizujte mobilní aplikaci - pokud tento parametr nainstalován, pak při každé aktualizaci konfigurace se konfigurace na zařízení automaticky aktualizuje
  • Adresář - cesta ke složce, kde budou uloženy soubory mobilní aplikace.

Ujistíme se, že vše funguje, přejděte do prohlížeče na adrese http://localhost:8080/Mobapp/, měli bychom vidět následující soubor xml:

Do pole adresy zadejte IP počítače, na kterém je konfigurace publikována, a samotný název publikace oddělený lomítkem. V našem příkladu je použit nestandardní port, takže adresa bude vypadat takto:

Klikněte na tlačítko stahování, po stažení by se mělo zobrazit následující okno nastavení:

Nastavte parametry:

  • « Restartujte z konfigurátoru" - Aplikace bude automaticky aktualizována při aktualizaci konfiguračního souboru XML umístěného na webovém serveru.
  • « Ladění povoleno» - ladění aplikace na mobilním zařízení krok za krokem je možné z Konfigurátoru na počítači vývojáře. Zmáčknout tlačítko " OK».

Pokud po stisknutí tlačítka " Stažení"objeví se podobná chyba:

Nyní byla naše databáze přidána do mobilního zařízení a můžeme ji spustit, kliknout na ni ve výběrovém seznamu databáze. Okno, které se objeví, je prázdné, protože jsme zatím nepřidali žádné objekty metadat. Začněme vývoj.

  1. Nastavení výměny mezi centrální bankou a mobilní aplikací

Předpokládejme, že máme určitou zdrojovou databázi, která obsahuje pouze jeden adresář: „Nomenklatura“. A musí si vyměňovat informace s naší mobilní aplikací.

Přejdeme do konfigurátoru mobilní aplikace a vytvoříme hierarchický adresář s názvem „Nomenklatura“. Přidáme formulář seznamu.

Pojďme do pracovní oblasti domovská stránka a přidejte tam formulář seznamu adresářů „Nomenklatura“, nastavte parametr „Šablona úvodní stránky“ na „Jeden sloupec“.

Klikněte na tlačítko " Aktualizace“, aplikace v telefonu by se měla automaticky aktualizovat. Pokud ne, zobrazte na panelu tlačítko a stiskněte ho. Na obrazovce by se mělo objevit následující okno:

Dalším krokem je vytvoření nového zabezpečení informací. Přidáme do něj adresář “Nomenclature”, jehož struktura bude zcela opakovat adresář “Nomenclature” mobilní aplikace. Tato databáze bude fungovat jako Zdroj.

Pojďme vytvořit novou webovou službu, nazvěme ji "MobileExchange". Ve vlastnostech nastavte URI jmenného prostoru „MobileExchange“. Do této webové služby přidáme novou operaci a nazveme ji „Stáhnout produkty“

Nyní napíšeme kód, který nám ve formuláři vrátí seznam produktů ze zdrojové databáze xml soubor. Přejdeme do vlastností operace "Nahrát produkty" a vytvoříme nová vlastnost z pole" Název metody" Do funkce napíšeme následující kód:

Publikujme webovou službu, jdeme na to Administrace -> Publikovat na Web -Server . V okně, které se zobrazí, nastavte název webové služby „MobileExchange“ a zrušte zaškrtnutí políčka „Publikovat tenkého klienta a webového klienta“. Poté stiskněte tlačítko „ Publikovat».

Po publikování webové služby přejdeme do konfigurace mobilní platformy, otevřeme formulář seznamu adresáře „Nomenklatura“ a přidáme nový tým„Aktualizovat položku“ na příkazovém panelu formuláře. Než to uděláte, doporučujeme zrušit zaškrtnutí „ Automatické vyplňování“ na tomto panelu.

Vytvořte novou akci pro příkaz „Aktualizovat položku“ a napište následující kód:

Aktualizujeme konfiguraci.

Tím je vývoj dokončen. Přejdeme do uživatelského konfiguračního režimu Zdroje a libovolným způsobem vyplníme adresář nomenklatury

Přejdeme do mobilního zařízení, spustíme aplikaci a klikneme na tlačítko „Aktualizovat položku“. Pokud je vše provedeno správně, měla by se na obrazovce objevit následující data:

Závěr

Shrňme naši práci – podařilo se nám od základu nakonfigurovat a vyvinout mobilní aplikaci a nastavit její výměnu s jinou databází. Stojí za zmínku, že platforma 1C Mobile vám to umožňuje rychle a pohodlně.

Takže se dostáváme k 1C: Enterprise ve formě mobilní aplikace -Krátký přehled mobilní aplikace zevnitř.

Mobilní aplikace je samostatná aplikace s vlastní databází pro práci s informacemi o uživateli. Pro teď, mobilní aplikace od 1C mohou běžet na třech nejpopulárnějších platformách - Android, Apple iOS a Windows.


Instalace mobilní aplikace se provádí z „trhů“ na těchto platformách. Pokud aplikace není publikována, můžete ji nainstalovat přenesením distribučního souboru do svého mobilního zařízení.

Samotnou mobilní aplikaci můžete nakonfigurovat a naprogramovat pouze v plném režimu Konfigurátor a poté ji sestavit pomocí speciální konfigurace Mobile Application Builder.
To je obrovské plus, protože vývoj mobilní aplikace může provádět vývojář konfigurace 1C, který spravuje váš program 1C: Enterprise.
Mobilní aplikace má samozřejmě méně možností než desktopová platforma: například neexistují žádné objekty, jako jsou sestavy, účetní registry, obchodní procesy.




Další mínus - nebudete se moci připojit k databázi 1C, která běží na desktopové platformě v souborové nebo serverové verzi.


Existuje však funkce pro využití mobilních výhod: při vývoji mobilní aplikace můžete použít knihu kontaktů, volat z aplikace prostřednictvím „ T telefonie“, získat údaje o poloze pomocí Geopositioning.

Ptáte se: " Jak pracovat s běžnou databází 1C? Proč je taková aplikace vůbec potřeba?

Pro komunikaci s „vnějším světem“ existuje několikmechanismy, jako jsou výměnné plány. Umožňují propojit plnohodnotnou databázi 1C a databázi mobilních aplikací – přibližně stejně fungují distribuované databáze data.

Mobilní aplikace musí plnit funkci mobilní aplikace a odpovídající funkcionalitu, takže veškerá data z jedné databáze do druhé nejsou zcela synchronizována a nemohla z důvodu výše popsaného omezení objektu.
Tato implementace výměny je dostupná například v kombinaci programů 1C: Enterprise 8 Trade Management rev. 11 amobilní aplikace "1C:Orders" . Databáze si vyměňují informace o protistranách, zákaznických objednávkách, sortimentech a cenách. Mobilní aplikace přitom umí pracovat offline a v případě dostupnosti internetu si vyměňovat data.
Mobilní aplikace vypadá slušně, je zde vizuálně rozpoznatelný styl ve srovnání s desktopovou verzí 1C a také sada standardních operací prováděných s objekty, jako jsou: „Pass“, „Mark for deletion“ a podobně. Uživatelé mobilní aplikace tedy budou obeznámeni s pracovním kontextem.

Takto vypadá rozhraní aplikace v nejnovějších verzích:


Druhý oblíbený způsob komunikace mezi mobilní aplikací a účetním systémem
1C:Enterprise 8 je práce prostřednictvím webových služeb

Obecné organizační schéma je následující: v aplikačním řešení 1C: Enterprise 8 nebo jednodušeji - v konfiguraci je popsána webová služba, která provádí některé funkce na straně, kde je služba publikována a může přenášet data.

Jednoduše řečeno: z mobilní aplikace online můžete přistupovat k účetnímu systému 1C: Enterprise 8, provádět jakoukoli funkci popsanou ve službě - například získat data o zprávě nebo vytvořit novou protistranu

Více informací:

Služba může přenášet data ve formátu popsaném v XDTO balíček a samotný vývojář tento datový model popisuje. Můžete přenášet primitivní typy: čísla, řetězce, data. Můžete přenášet složité typy, můžete přenášet binární data – například obrázky, popř PDF dokumenty, XLS. Ukážeme si jednoduchý příklad, kde je popsán balíček s úkoly - číslo úkolu a název. Ukázka, jak balíček vypadá:

Na druhé straně, vV mobilní aplikaci se vytvoří objekt typu WS-Link. Určuje adresu webové služby, po které se automaticky načtou datové typy a metody, které služba provozuje:

Vše je připraveno! V mobilní aplikaci nyní můžete volat servisní funkci 1C: Enterprise 8 nebo přijímat potřebná data.

Jak je to s licencemi pro mobilní aplikace od 1C?

Touto otázkou se zabývá informační dopis od 1C. Výňatek je níže.

Naše doporučení:
Mobilní aplikace od 1C jsou docela Nový výrobek, ale v obvyklém „balíčku“ - vývoj může provádět specialista 1C na plný úvazek. Otevírají nové obzory pro rozšíření interakce s účetním systémem a konsolidaci dat pro manažerské účetnictví. Tuto možnost doporučujeme použít, když stacionární možnost práce s 1C není vhodná a mobilní funkčnost bude stačit, například přístup pouze k části dat nebo části procesu.

A podle tradice případ:

Úkol:

Zákazník má centrála a několik jejích bodů obchodní síť. Na každém místě je několik obchodních manažerů a jeden pracoviště prodej zboží s účetním programem.

kde centrála dává pokyny prodejcům- například seberte objednávku na další bod ze svých zbytků nebo rozeberte určený produkt.

K nastavení úkolů Zákazník nejprve použil e-mail a telefonní hovory, Ale -Existovala pouze jedna automatizovaná pracovní stanice a pracovníci nemohli rychle přijímat úkoly a reagovat na ně. Centrální kancelář měla potíže s monitorováním takových úkolů, protože při nastavení po telefonu nebyl úkol nikde zapsán a bylo obtížné kontrolovat poštu, zda nedokončené úkoly.

Řešení:

Navrhli jsme následující řešení. Vyvinout potřebnou funkcionalitu pro nastavení úkolů pro zaměstnance na základě mobilní aplikace 1C: Orders a integrovat ji s centrálním účetním systémem.

Jako platformu pro spouštění a práci s mobilní aplikací mohl zaměstnanec maloobchodu využít svou vlastní mobilní telefon a pro ty, kteří je neměli, centrála zakoupila levné chytré telefony.

Vzhledem k tomu, že mobilní aplikace a centrální účetní systém fungují v jednom informační prostor- byla dosažena efektivita zadávání úkolů a oslovování přesně toho zaměstnance, pro kterého byl určen.

Přesnost přenosu informací se zvýšila - pokud dříve e-mailem vedoucí v kanceláři napsal - „připravte zboží podle objednávky č. ___“, ale nyní v úkolu pouze uvedl odkaz na požadovanou objednávku, kterou mohl pracovník výdejního místa otevřít na telefonu.

Zvýšila se úroveň kontroly nad úkoly – nikde nezmizely a měly stav, který jim přidělil zaměstnanec v procesu plnění úkolu. A centrála mohla úkol vždy kontrolovat.

Anatolij Nikulin

Mobilní platforma „1C:Enterprise 8“ je název technologie, která vám umožňuje vyvíjet řešení fungující na chytrých telefonech a tabletech. Google Android nebo Apple iOS. Důležitou výhodou platformy 1C je, že řešení jsou vyvíjena v jedné verzi pro oba mobilní operační systémy a poté jednoduše exportována pro Android a pro iOS bez jakýchkoli dalších úprav a psaní programového kódu závislého na platformě.

Jak platforma 1C:Enterprise, tak samotná informační základna (konfigurace, v podmínkách 1C) jsou okamžitě nainstalovány na mobilním zařízení. Informační základna na zařízení obsahuje verzi souborové databáze (pro ukládání různých dat, se kterými uživatel pracuje nebo bude pracovat) a samotnou aplikaci (softwarový bytekód, který běží na tabletu nebo chytrém telefonu).

Příklad mobilního klienta pro EDMS „Corporate Document Flow“ vytvořeného na mobilní platformě „1C:Enterprise 8.3“

Platforma podporuje stahování a nasazování aplikací uživateli na jejich zařízení z obchodů Obchod s aplikacemi nebo Google Play. Distribuční sada obsahuje všechny součásti potřebné k zahájení práce.

Na mobilní platformě 1C lze vytvářet různá řešení, ale hlavní možností řešení jsou mobilní off-line klienti pro účetní systémy. Tato řešení jsou navržena tak, aby podporovala mobilní uživatelé na vzdálených pracovištích. Výměna dat probíhá pravidelnou synchronizací s centrální databází. Výměna dat je možná prostřednictvím následujících mechanismů:

  • webové služby
  • Sdílení souborů
  • E-mailem
  • a další mechanismy
    Alternativní možností je pracovat online pomocí webového klienta.

Vyvinutá mobilní aplikace je samostatný kompletní softwarový produkt a dokáže si vyměňovat data s několika centrálními databázemi najednou. V jedné mobilní aplikaci můžete například implementovat přístup a práci s dokumenty z účetní databáze a úkoly z podnikového systému správy dokumentů.


28. září tohoto roku 1C bez velkého hluku a patosu vydalo zkušební verzi platformy 8.3.2.163, která byla určena k testování. Úplný seznam změny a vylepšení si mohou zájemci přečíst nebo, pokud mají předplatné, .
Z uvedených vylepšení se mi „1C Mobile Platform: Enterprise 8“ zdá být docela „chutné“, což vám umožňuje vytvořit aplikaci pro mobilní operační systémy Android nebo iOS pomocí obvyklých nástrojů 1C.

Mobilní platforma, jak píší sami vývojáři, „Toto je obecný název pro technologii, která umožňuje vytvářet aplikace běžící na mobilních zařízeních s operačními systémy Systémy Android nebo iOS."
"Mobilní aplikace nainstalovaná na zařízení je kombinací mobilní platformy a informační základny."

Tedy zjednodušeně řečeno, svou psanou konfiguraci si můžete zkompilovat do aplikace pro Android (.apk) nebo iOS (.zip). Pak lze všechny tyto věci zveřejnit na Google Play nebo AppStore. Je pravda, že pokud lze program pro Android podepsat pomocí klíče vytvořeného tam okamžitě v 1C a bude okamžitě připraven k publikaci, pak pro publikování aplikace v AppStore bude muset být nejprve zkompilován pomocí programu Xcode na počítači. s operačním systémem Systém Mac OS X. A samozřejmě k publikování v kterémkoli z těchto obchodů potřebujete vývojářskou licenci.
Všechno zní dobře a přirozeně jsem chtěl vyzkoušet nové funkce v akci.

Vytvoření mobilní aplikace na 1C

K tomu potřebujeme novou verzi platformy (), převzatý soubor, android SDK a JDK.
Hned vás varuji: Aktuálně si nekladu za úkol ukazovat proces vývoje něčeho konkrétního na 1C, ale chci vám to jen ověřit a ukázat, že – ano, svět se zbláznil a vy můžete opravdu napsat program pro Android na 1C.
No, zkusme napsat jakýsi „helloWorld“ pro Google Phone. Udělejme si program pro testovací účely - konfiguraci s jedním obecným formulářem, který dáme na „desktop“.
Takže vytvoříme novou konfiguraci ve spravovaném režimu a první věc, kterou musíme udělat, pokud píšeme pro mobilní platformu, je uvést „Účel použití“ ve vlastnostech samotné konfigurace.

A zde si okamžitě všimneme, že mnoho konfiguračních objektů se stalo nedostupnými pro použití. Již nebudeme moci používat subsystémy, rutinní úlohy, balíčky XDTO, webové služby, reporty, obchodní procesy a mnoho dalšího. Také mnoho procedur a metod pro některé objekty není k dispozici. To je třeba vzít v úvahu při vývoji.
Vytvoříme „formulář“, vytvoříme řetězcový atribut s názvem: „Ahoj Habr!“ - a hodit to na formulář. Vytvořme také tlačítko. Ve zpracování kliknutí napíšeme například výstup zprávy.

&Procedura OnClient Command1(Command) Warning("Funguje!"); Konec procedury

To nám stačí k ověření jeho funkčnosti, takže pojďme k zábavnější části. Konfiguraci uložíme do souboru pro mobilní aplikaci (Konfigurace->Mobilní aplikace->Zápis do souboru), spustíme ve spravovaném režimu a začneme zpracovávat MobileAppWizard.epf. Tento soubor je v archivu mobile.zip, který jsme si stáhli hned na začátku.
A nyní jsme vyzváni k vyplnění úvodního nastavení, kde jsou všechna povinná pole podtržena červeně.

Umístění mobilní platformy – adresář, ve kterém jsou umístěny soubory android.zip a ios.zip potřebné k vytvoření dodávky mobilní aplikace. Všechny jsou ve stejném archivu mobile.zip.
Označíme složku, do které jsme nainstalovali Android SDK (můžete si ji stáhnout). 1C stanoví následující požadavky:
Verze Android SDK Tools - ne nižší než 20.0.3;
Verze Android SDK Platform-tools - ne nižší než 14;
Verze platformy SDK - API 8 (ne nižší než verze 8.3).
A také potřebujeme Java SDK (lze získat na této adrese) Navíc nás 1C varuje, že JDK7 nefunguje ve spojení s Android SDK.
Označíme složky, kde bude umístěn náš soubor .apk, umístění podpisového klíče a alias s heslem. Pokud to děláte poprvé a nemáte klíč, můžete vyplnit „parametry klíče“ a vytvořit si klíč pro sebe (v tomto případě musíte v poli „soubor klíče“ uvést složku kde bude tento klíč vytvořen).
Klikněte na „OK“ a přejděte do druhého okna.

V něm nejprve označíme „Konfigurace mobilní aplikace“ - stejný soubor, který jsme uložili. Poté jazyk a teprve poté klikněte na tlačítko s „lupou“ a zadejte tam reprezentaci. Označujeme „ID aplikace“ – jedinečný název třídy Java, který bude v budoucnu použit k provedení aktualizace. Identifikátor musí být napsán latinkou a společnost 1C doporučuje začínat jeho název „com.e1c“. Vyplňte verzi a číslo sestavení a klikněte na tlačítko „Vytvořit“. Pokud vše proběhne v pořádku, systém vás upozorní, že soubor .apk byl úspěšně vytvořen.
Výsledný soubor nahrajeme do telefonu a nainstalujeme jej pomocí našeho oblíbeného správce, který dříve povolil instalaci v nastavení systému aplikace třetích stran. Nebo nainstalujte program na emulátor přes adb. Hned řeknu: na emulátoru je všechno strašně pomalé, ale na telefonu (pouze jsem to zkontroloval HTC Wildfire S) věci jsou mnohem lepší, ale stále existují problémy. Ukázalo se například, že můj soubor váží až 34 Mb, takže instalace trvala poměrně dlouho. Po spuštění nás uvítá úvodní obrazovka a po chvíli se spustí samotná konfigurace. (omlouvám se za fotku, fotil jsem to kalkulačkou)

Nové funkce zatím vypadají velmi „surově“: omezená funkčnost 1C, nemožnost pomocí SDK přímo, plus velká velikost a nějaké „brzdy“... Ale samotná možnost napsat program pro mobilní platformu na 1C je trochu překvapivá! Osobně mám na tohle dva názory. Na jedné straně je tato „funkce“ stále spíše hračkou, protože neexistuje příležitost udělat něco, co skutečně stojí za to. Ale na druhou stranu jde jednoznačně o velký krok společnosti 1C směrem k mobilitě a pokud se tento směr bude aktivně rozvíjet, může přinést spoustu výhod. Jako příklad můžete skladníky vybavit tablety. Pokud je možné použít „palubní“ kamery, můžete se osvobodit od čtení zařízení a skenovat kódy přímo z tabletu, můžete je poskytnout řidičům automobilů, posílat přepravní úkoly nebo sledovat trasu a čas vozidla v pohyb. Obecně platí, že existuje mnoho možností a skutečnost, že to bude vše v jednom informační systém, velmi potěší zákazníky/manažery, protože z nějakého důvodu mají vždy panický strach z použití velké množství různé systémy, chtějí využívat všechny funkce na jediné platformě.