Kako narediti 1c mobilno aplikacijo korak za korakom. Mobilni odjemalec: namestitev, odpravljanje napak, montaža za Android." Naprava mobilne platforme

Praksa razvoja mobilne aplikacije 1C 8.3 (1. del)

V tem članku bomo govorili o tem, kaj smo poskušali in kakšne napake smo storili, preden nam je uspelo narediti bolj ali manj normalno aplikacijo za tablice. Aplikacija je bila prvotno zasnovana samo za Android, na podlagi konfiguracije 1C: Naročila in mobilna aplikacija za razvoj.

Sprva je bil izbran »napačen« pristop: ročno prevajanje aplikacije in nalaganje na tablico. Naj vas spomnim, da za izdelavo mobilnih aplikacij uporabljate »Pomočnika za ustvarjanje mobilnih aplikacij« (MobileAppWizzard). Nato je bila na enem od forumov najdena lepa rešitev z uporabo mobilne aplikacije za razvoj. Ta aplikacija je vključena v namestitveni komplet mobilna platforma. V času razvoja je bila uporabljena različica platforme 8.3.3.24. V mapi »Android« najdete datoteko 1cem.apk. To je mobilna aplikacija za razvoj. Njegova največja prednost, ki nam je prihranila veliko časa, je, da lahko mobilno aplikacijo objavite na spletnem strežniku, na tablici pa lahko določite pot, kot je http://[ Naslov spletnega strežnika]/[ Ime mobilne aplikacije].

Na tabličnem računalniku lahko v nastavitvah dodane aplikacije označite potrditveno polje »Posodobi iz konfiguratorja« in ob vsakem zagonu se bo aplikacija poskusila povezati s spletnim strežnikom in preveriti posodobitve.

Po uvedbi mobilne aplikacije se je začel proces njenega izpopolnjevanja.

Kaj je bilo potrebno:

1. Vzpostavite izmenjavo med centralno bazo in mobilno napravo.

2. Organizirajte asimetrično sinhronizacijo: iz centralne baze prenesite podatke o artiklih, izvajalcih, ostanku blaga v skladišču in medsebojnih obračunih, iz mobilne aplikacije pa prenesite samo naročila strank.

3. Implementirati enostaven vmesnik za upravitelje, kjer lahko hitro pregledajo stanja, cene in medsebojne obračune.

V fazi testiranja je bila uporabljena vmesna baza podatkov »Upravljana aplikacija«, ker je bila demo aplikacija 1C:Naročila prvotno zasnovana za izmenjavo z upravljano aplikacijo.

Prva palačinka je bila grudasta. dobesedno. Za izmenjavo s centralno bazo je bil uporabljen v82.ComConnector. Ne bom se spuščal v podrobnosti o nastavitvi, o tem je veliko ločenih materialov. Šel bom samo skozi težave, na katere sem naletel.

1.Uporaba kom- objektov v 64-bitnem strežniškem OS. Za rešitev problema je bil uporabljen ovoj Aplikacije COM+ ki je konfiguriran v Storitve komponent.

2. Oddaljeni klic Kom z drugega strežnika. Klicani strežnik mora imeti vlogo Aplikacijski strežnik in mora biti konfiguriran Dostop do omrežja COM+. Poleg tega strežnik Apache mora imeti ustrezne pravice (tj. izvajati kot storitev v imenu pooblaščenega uporabnika)

Po težavah s povezavami Com smo se odločili, da delovno bazo prenesemo na spletne storitve.

Tudi o objavljanju spletnih storitev je bilo veliko napisanega, piše pa se o tem, kako deluje. Spodaj bom delil, kako NE deluje.

Delovna osnova je nameščena na platformi 8.2, mobilna aplikacija pa na 8.3.

Pri objavi aplikacij najprej 8.3 in nato 8.2. občasno zazna napako »Stream format error« v spletnem odjemalcu 8.3 ali sporočilo o napaki »različici platforme odjemalca in strežnika se razlikujeta«. Ponovna objava ne pomaga, prav tako ne ponovni zagon Apache. Toda onemogočanje objave in ponovno povezovanje pomaga.

Nato sem zasledil smešno napako pri avtorizaciji uporabnika (pri ustvarjanju ws Definicije). Pri testiranju na računalniku je avtorizacija z dolgim ​​imenom enostavna. Ko poskušate pooblastiti istega uporabnika iz tabličnega računalnika, ki se izvaja Android, avtorizacija se je končala, preden se je začela. Eksperimentalno je bilo mogoče izračunati, da je v cirilici dolžina prijave omejena na 22 znakov. Hkrati mi je kombinacija ciriličnih znakov in številk omogočila prijavo s prijavo dolžine 27 znakov. Obstaja sum, da je to posledica pretvorbe ciriličnih znakov. Tako na primer v brskalniku Firefox vrstica iz Wikipedije "ivo" se pretvori v "».

Tehnološko ima mobilna platforma 8.3.3 trenutno številne omejitve. Najbolj pričakovana novost je po mojem mnenju podpora za poizvedbe. A ker mobilna platforma še ne podpira poljubnih poizvedb v dinamičnih seznamih, smo morali »ubrati drugo pot«.

Za rešitev problema prikaza imenika izdelkov s cenami in stanjem je bil uporabljen naslednji pristop:

1. Izdelani sta dve tabeli v obliki nomenklaturnega priročnika. Prvi je dinamični seznam, sam imenik. Filter dinamični seznam konfiguriran za prikaz samo skupin. Druga tabela je dejanska stanja in cene. Ko je aktivirana vrstica dinamičnega seznama, se na strežniku izpolni tabela vrednosti, ki se nato izpiše v drugo tabelo. Za pridobitev cen in bilanc je bil uporabljen objektni model. Vsi ti plesi s tamburinom so bili izvedeni samo zato, ker običajna metoda debelega odjemalca "pri izpisu vrstice" ali "pri prejemanju podatkov" ne obstaja in je nemogoče dinamično risati številke v stolpcu.

Podoben pristop je bil uporabljen v obliki selekcije

2. Za prikaz vrstice s trenutnimi cenami je bil FormattedString popoln.

Spodaj je primer kode.

Funkcija &OnServerWithoutContext RemainingWhenActivatingStringsOnServer(nom)RecordSet = InformationRegisters.ProductPrices.CreateRecordSet(); RecordSet.Selection.Product.Value = nom; RecordSet.Selection.Product.Use = True; Recordset.Read(); ArrayFormatStrings = Nova matrika; Za vsako nastavljeno vrstico iz nabora zapisov krožite Array of Formatted Rows.Add(New Formatted Row(Set Row.Price Type.Name,WebColors.Blue)); Matrika FormattedStrings.Add(New FormattedString(" " + String(SetString.Price) + " ")); EndCycle; Vrni nov oblikovani niz (ArrayFormatStrings); // Vstavite vsebino obdelovalca. EndFunction

3. Za nalaganje imenikov, stanj in cen v mobilno aplikacijo je bila uporabljena spletna storitev, ki kot vhod prejme strukturo parametrov in kot izhod vrne shrambo vrednosti. Drugo neprijetno odkritje je bil tudi zlom borze dolgotrajna obdelava na strani strežnika. Videti je, da je prišlo do neke vrste časovne omejitve, po kateri aplikacija "verjame", da je povezava prekinjena (čeprav se v resnici podatki še vedno obdelujejo v delujoči bazi preko ws povezave) in prekine izmenjavo z napako .

Da bi se temu izognili, je bilo odločeno, da celotno izmenjavo razdelimo na dele, pri čemer se fokus vrne nazaj na mobilno aplikacijo. Tisti. najprej sinhronizirajte postavke, nato nasprotne stranke, nato stanja itd.

4. Za pridobitev poročil se uporablja enak pristop kot v konfiguraciji 1C: Naročila. Pokliče se spletna storitev s parametri, na strani strežnika se oblikuje delujoča baza podatkov dokument s preglednico, nato pa se dokončan dokument preglednice vrne v mobilno aplikacijo.

Dober dan, dragi bralci, predstavljamo vam kratek članek o ustvarjanju preproste mobilne aplikacije, ki temelji na mobilni platformi 1C: Enterprise za Android brez prevajanja v datoteko apk.

Za začetek na kratko opredelimo osnovne pojme in programsko opremo, ki jo bomo potrebovali za razvoj.

1.Osnovni pojmi

Mobilna platforma- orodje, ki vam omogoča implementacijo aplikacij, ki delujejo na mobilne naprave z operacijskimi sistemi iOS, Android, Windows Phone.

Mobilna aplikacija - je končni rezultat razvoj . Nameščen je na mobilni napravi in ​​ima možnost izmenjave informacij z glavno aplikacijo v načinu Off-line. Za izmenjavo so na voljo naslednji kanali za prenos informacij: izmenjava datotek, e-pošta, spletne storitve itd.

Konfigurator deluje kot razvojno okolje, pri čemer je treba upoštevati le to, da mobilna aplikacija ne podpira vseh konfiguracijskih objektov in sistemskih mehanizmov.

2. Nastavitev programske opreme

2.1 NamestitevSplet strežniki

Najprej namestimo spletni strežnik. Delo je možno z obema Internet informacije storitve od Microsofta in s Apache. V našem primeru bomo upoštevali Apache ker je enostavnejša za postavitev in stabilna v delovanju.

Uporabljati " Naslednji » pojdi na naslednje okno:

V polja "Omrežna domena" in "Ime strežnika" napiši " lokalni gostitelj« (ali 127.0.0.1). To pomeni, da bo strežnik deloval na lokalnem računalniku.

Na terenu « Administrators E-naslov Naslov» navedemo poštni naslov, mu bodo poslani odgovori strežnika.

Privzeto Apache deluje z vrati 80. Številni priljubljeni programi na primer privzeto delujejo z istimi vrati TeamViewer, Skype, kar vam v prihodnosti ne bo omogočilo zagona Apache. Obstajata dve možnosti za rešitev te težave, onemogočite uporabo tega pristanišča v teh programih ali spremenite vrata Apache.

Če želite izvedeti, kateri programi uporabljajo vrata 80, morate zagnati cmd.exe (kliknite Start - vnesite cmd v iskanje - kliknite desni klik"Zaženi kot skrbnik") v oknu, ki se prikaže, vnesite ukaz netstat -ab.

Na posnetku zaslona vidimo, da vrata 80 zaseda Skype.

Pustimo privzeta vrata 80. Kliknite " Naslednji » izberite standardno namestitev. Kliknite " Naslednji » , po potrebi spremenite namestitveni imenik, v naslednjem oknu kliknite » Namestite, po katerem se bo začel postopek namestitve.

Po končani namestitvi se v sistemski vrstici pojavi ikona, na katero dvokliknemo, se odpre naslednje okno:

Če imate še vedno težave s standardnimi vrati, jih lahko vedno spremenite ročno, za to morate iti v mapo, kjer so nameščena Apache, izberite mapo " konf", odprite datoteko v njem " httpd.conf" V njem poiščite parameter "Poslušaj" in spremenite njegove vrednosti na vrata, ki jih potrebujete, na primer 8080.

Ko spremenite številko vrat, shranite datoteko in znova zaženite Apache. Če želite to narediti, kliknite ikono v pladnju

Z levim gumbom miške v meniju, ki se prikaže, izberite » Ponovni zagon».

Prepričajmo se, da spletni strežnik deluje, pojdimo v brskalnik in v polje za vnos naslova vnesemo http://localhost:8080/ (kjer je 8080 vrata, ki smo jih namestili), na zaslonu se mora prikazati naslednja stran:

2.2 Postavitev platforme

Za uspešno delovanje je treba namestiti naslednje komponente:

2.3 Namestitev mobilne platforme

Prenesite mobilno platformo s spletnega mesta 1C https://users.v8.1c.ru/. V našem primeru je uporabljena različica 8.3.8.70.

Prenesena platforma je arhiv, ki je sestavljen iz naslednjih map:

  1. Android- vsebuje datoteke za montažo za Android;
  2. iOS- vsebuje datoteke za montažo za iPhone;
  3. Windows- vsebuje datoteke za montažo za Windows Phone;
  4. MobileAppMaker- vsebuje konfiguracijske datoteke »Application Builder«.

Ker bomo razvijali aplikacijo za napravo z operacijskim sistemom Android, nas zanima prvi imenik.

Poglejmo si njegovo vsebino:

  • 1cem-arm.apk je mobilna razvijalska platforma za arhitekturo ARM, ki se najpogosteje uporablja;
  • 1cem-x86.apk - mobilna razvojna platforma za arhitekturo x86, ki se uporablja za procesorje Intel;
  • prjandroid-arm.zip - mobilna platforma za izdelavo mobilnih aplikacij (za arhitekturo ARM);
  • prjandroid-x86.zip je mobilna platforma za izdelavo mobilnih aplikacij (za arhitekturo x86).

Na napravo bomo namestili mobilno platformo; za to kopirajte datoteko »1cem-arm.apk« v pomnilnik telefona ali, če vaša naprava uporablja procesor Intel, "1cem-x86.apk".

Pojdimo v upravitelj datotek na mobilni napravi, poiščimo svojo datoteko in jo zaženimo

Med namestitvijo boste morda prejeli sporočilo o blokiranju aplikacij, ki niso bile prejete iz Trgovine Play.

V tem primeru morate klikniti » nastavitve" in v oknu, ki se prikaže, potrdite polje " neznani viri»

in ponovite namestitev.

2.4 Konfiguracijske nastavitve

Po vsem programsko opremo Pripravljamo se na začetek razvoja naše mobilne aplikacije. Ustvarimo novo informacijsko bazo in pojdimo vanjo v konfiguracijskem načinu.
Pojdite v meni Orodja -> Možnosti in potrdite polja, kot je prikazano na posnetku zaslona:

Imate vprašanje ali potrebujete pomoč svetovalca?

Nato pokličite lastnosti korenskega konfiguracijskega vozlišča in nastavite parameter »Namen uporabe« kot »Mobilna naprava«, označite » Osebni računalnik"Odstranimo ga. Po tem bodo na voljo objekti mobilne aplikacije. Nekateri konfiguracijski objekti ne bodo na voljo.

2.5 Konfiguracija aplikacije za objavljanje

Naslednji korak je prenos konfiguracije na telefon. Da bi to naredili, najprej ustvarimo imenik; pot do tega imenika mora biti kratka, brez presledkov in sestavljena samo iz latiničnih znakov, na primer C:\MobileApp. Nadalje pojdite na Konfiguracija -> Mobilna aplikacija -> Objavi . V oknu, ki se prikaže, izpolnite parametre:

  • Ime – ime mobilne aplikacije. Ime ne sme biti enako imenu objave baze podatkov za tankega odjemalca.
  • Posodobite mobilno aplikacijo – če ta parameter nameščen, se bo ob vsaki posodobitvi konfiguracije samodejno posodobila konfiguracija v napravi
  • Imenik - pot do mape, kjer bodo shranjene datoteke mobilne aplikacije.

Prepričajmo se, da vse deluje, pojdimo v brskalnik na http://localhost:8080/Mobapp/, videli bi morali to datoteko xml:

V naslovno polje vnesite IP računalnika, na katerem je objavljena konfiguracija, in ime same objave, ločeno s poševnico. V našem primeru so uporabljena nestandardna vrata, zato bo naslov videti takole:

Kliknite gumb za prenos, po prenosu se mora prikazati naslednje okno z nastavitvami:

Nastavite parametre:

  • « Znova zaženite iz konfiguratorja" - Aplikacija se samodejno posodobi, ko se posodobi konfiguracijska datoteka XML, ki se nahaja na spletnem strežniku.
  • « Odpravljanje napak omogočeno» - korak za korakom odpravljanje napak v aplikaciji na mobilni napravi je možno iz konfiguratorja na računalniku razvijalca. Pritisni gumb " v redu».

Če po pritisku na gumb " Prenesi"pojavila se bo podobna napaka:

Zdaj je naša baza podatkov dodana v mobilno napravo in jo lahko zaženemo, kliknemo jo na seznamu izbire baze podatkov. Okno, ki se prikaže, je prazno, ker še nismo dodali nobenega metapodatkovnega predmeta. Začnimo z razvojem.

  1. Nastavitev menjave med centralno banko in mobilno aplikacijo

Predpostavimo, da imamo določeno izvorno bazo podatkov, ki vsebuje samo en imenik: “Nomenklatura”. In mora izmenjevati informacije z našo mobilno aplikacijo.

Pojdimo v konfigurator mobilne aplikacije in ustvarimo hierarhični imenik z imenom »Nomenklatura«. Dodajmo obrazec za seznam.

Pojdimo na delovno področje domača stran in tja dodajte obrazec s seznamom imenikov »Nomenklatura«, nastavite parameter »Predloga začetne strani« kot »En stolpec«.

Kliknite gumb " Nadgradnja«, bi se morala aplikacija v vašem telefonu samodejno posodobiti. Če ne, prikažite gumb na plošči in ga pritisnite. Na zaslonu bi se moralo prikazati naslednje okno:

Naslednji korak je ustvarjanje nove informacijske varnosti. Dodali mu bomo imenik »Nomenklatura«, katerega struktura bo popolnoma ponovila imenik »Nomenklatura« mobilne aplikacije. Ta zbirka podatkov bo deloval kot vir.

Ustvarimo novo spletno storitev, poimenujmo jo "MobileExchange". V lastnostih nastavite URI imenskega prostora »MobileExchange«. V to spletno storitev bomo dodali novo operacijo in jo poimenovali »Prenos izdelkov«.

Zdaj pa napišimo kodo, ki bo v obrazcu vrnila seznam izdelkov iz izvorne baze podatkov xml datoteko. Pojdimo na lastnosti operacije »Naloži izdelke« in ustvarimo nova funkcija s polja" Ime metode" V funkcijo bomo zapisali naslednjo kodo:

Objavimo spletno storitev, za to gremo Administracija -> Objavi na Splet -strežnik . V oknu, ki se prikaže, nastavite ime spletne storitve »MobileExchange« in počistite potrditveno polje »Objavi tankega odjemalca in spletnega odjemalca«. Po tem pritisnite gumb " Objavi».

Po objavi spletne storitve pojdimo na konfiguracijo mobilne platforme, odpremo obrazec seznama imenika »Nomenklatura« in dodamo nova ekipa“Posodobi element” v ukazni plošči obrazca. Preden to storite, priporočamo, da počistite polje » Samodejno izpolnjevanje" na tej plošči.

Ustvarite novo dejanje za ukaz »Posodobi element« in napišite to kodo:

Posodabljamo konfiguracijo.

S tem je razvoj zaključen. Gremo v način uporabniške konfiguracije vira in poljubno izpolnimo imenik nomenklature

Gremo na mobilno napravo, zaženemo aplikacijo in kliknemo gumb »Posodobi element«. Če je vse opravljeno pravilno, se morajo na zaslonu prikazati naslednji podatki:

Zaključek

Naj povzamemo naše delo – uspelo nam je konfigurirati in razviti mobilno aplikacijo iz nič ter vzpostaviti njeno izmenjavo z drugo bazo podatkov. Omeniti velja, da vam platforma 1C Mobile omogoča, da to storite hitro in priročno.

Tako smo prišli do 1C: Enterprise v obliki mobilne aplikacije -Kratek pregled mobilne aplikacije od znotraj.

Mobilna aplikacija je samostojna aplikacija z lastno bazo podatkov za delo z uporabniškimi informacijami. Za zdaj, mobilne aplikacije iz 1C lahko delujejo na treh najbolj priljubljenih platformah - Android, Apple iOS in Windows.


Namestitev mobilne aplikacije se izvede iz "trgov" na teh platformah. Če aplikacija ni objavljena, jo lahko namestite tako, da prenesete distribucijsko datoteko na svojo mobilno napravo.

Samo mobilno aplikacijo lahko konfigurirate in programirate samo v polnem načinu konfiguratorja, nato pa jo sestavite s posebnim konfiguracijskim graditeljem mobilnih aplikacij.
To je velik plus, saj lahko razvoj mobilne aplikacije izvede razvijalec konfiguracije 1C, ki vzdržuje vaš program 1C: Enterprise.
Mobilna aplikacija ima seveda manj zmožnosti kot namizna platforma: na primer ni predmetov, kot so poročila, računovodski registri, poslovni procesi..




Še en minus - ne boste mogli vzpostaviti povezave z bazo podatkov 1C, ki deluje na namizni platformi v različici datoteke ali strežnika.


Obstaja pa funkcionalnost za uporabo mobilnih prednosti: pri razvoju mobilne aplikacije lahko uporabite Imenik, pokličete iz aplikacije prek » T telefonija«, pridobivanje lokacijskih podatkov z Geopozicioniranjem.

Sprašujete: " Kako delati z običajno bazo podatkov 1C? Zakaj je takšna aplikacija sploh potrebna?

Za komunikacijo z "zunanjim svetom" obstaja večmehanizmi, kot so načrti izmenjave. Omogočajo vam povezavo popolne baze podatkov 1C in baze podatkov mobilnih aplikacij - približno na enak način delovanja porazdeljene baze podatkov podatke.

Mobilna aplikacija mora opravljati funkcijo mobilne aplikacije in pripadajoče funkcionalnosti, zato vsi podatki iz ene baze v drugo niso popolnoma sinhronizirani in jih zaradi zgoraj opisane objektne omejitve tudi ne morejo.
Ta izvedba izmenjave je na voljo na primer v kombinaciji programov 1C: Enterprise 8 Trade Management rev. 11 inmobilna aplikacija "1C: Naročila" . Podatkovne baze izmenjujejo informacije o nasprotnih strankah, naročilih strank, obsegu izdelkov in cenah. Hkrati lahko mobilna aplikacija deluje brez povezave in, če je na voljo internet, izmenjuje podatke.
Mobilna aplikacija je videti spodobno, v primerjavi z namizno različico 1C je vizualno prepoznaven slog, pa tudi nabor standardnih operacij, ki se izvajajo s predmeti, kot so: »Predaj«, »Označi za izbris« in podobno. Zato bodo uporabniki mobilne aplikacije poznali delovni kontekst.

Tako izgleda vmesnik aplikacije v najnovejših različicah:


Drugi priljubljen način komunikacije med mobilno aplikacijo in računovodskim sistemom
1C:Enterprise 8 je delo prek spletnih storitev

Splošna organizacijska shema je naslednja: v aplikacijski rešitvi 1C: Enterprise 8 ali preprosteje - v konfiguraciji je opisana spletna storitev, ki izvaja nekatere funkcije na strani, kjer je storitev objavljena in lahko prenaša podatke.

Preprosto povedano: iz mobilne aplikacije na spletu lahko dostopate do računovodskega sistema 1C: Enterprise 8, izvajate katero koli funkcijo, opisano v storitvi - na primer pridobite podatke o poročilu ali ustvarite novo nasprotno stranko.

Več podrobnosti:

Storitev lahko prenaša podatke v formatu, opisanem v XDTO paket, in razvijalec sam opisuje ta podatkovni model. Lahko prenesete primitivne vrste: številke, nize, datume. Lahko prenašate kompleksne vrste, lahko prenašate binarne podatke - na primer slike, oz PDF dokumenti, XLS. Prikazali bomo preprost primer, kjer je opisan paket z nalogami - številka in naslov naloge. Primer, kako izgleda paket:

V zameno, vV mobilni aplikaciji se ustvari objekt tipa WS-Link. Določa naslov spletne storitve, po katerem se samodejno naložijo tipi podatkov in metode, ki jih storitev uporablja:

Vse je pripravljeno! V mobilni aplikaciji lahko zdaj pokličete servisno funkcijo 1C: Enterprise 8 ali prejmete potrebne podatke.

Kaj pa licence za mobilne aplikacije iz 1C?

To vprašanje je zajeto v informativnem pismu 1C. Izvleček je spodaj.

Naša priporočila:
Mobilne aplikacije iz 1C so precej Nov izdelek, vendar v običajnem "ovitku" - razvoj lahko izvaja strokovnjak 1C s polnim delovnim časom. Odpirajo nova obzorja za širitev interakcije z računovodskim sistemom in konsolidacijo podatkov za poslovodno računovodstvo. To možnost priporočamo, kadar stacionarna možnost dela z 1C ni primerna in bo zadostovala mobilna funkcionalnost, na primer dostop le do dela podatkov ali dela procesa.

In po tradiciji primer:

Naloga:

Stranka ima centralni urad in več točk v njem trgovsko mrežo. Na vsaki točki je več vodij prodaje in en delovnem mestu prodaja blaga z računovodskim programom.

pri čemer, centrala daje navodila prodajalcem- na primer zbrati naročilo za drugo točko iz vaših ostankov ali razstaviti navedeni izdelek.

Stranka je za nastavitev nalog najprej uporabila e-pošto in telefonski klici, Ampak -Obstajala je samo ena avtomatizirana delovna postaja in delavci niso mogli hitro prejeti nalog in se nanje odzvati. Centrala je imela težave pri spremljanju takšnih nalog, saj ob telefonski nastavitvi naloga ni bila nikjer zapisana in je bilo oteženo pregledovanje pošte za nedokončane naloge.

rešitev:

Predlagali smo naslednjo rešitev. Na podlagi mobilne aplikacije 1C: Naročila razvijte potrebno funkcionalnost za zastavljanje nalog za zaposlene in jo integrirajte s centralnim računovodskim sistemom.

Kot platformo za zagon in delo z mobilno aplikacijo bi zaposleni v maloprodajnem mestu lahko uporabil svojo mobilni telefon, tistim, ki jih niso imeli, pa je centrala nabavila poceni pametne telefone.

Ker mobilna aplikacija in centralni računovodski sistem delujeta v enem informacijski prostor- dosežena je bila učinkovitost zastavljanja nalog in naslavljanja točno tistega zaposlenega, ki mu je bila namenjena.

Povečala se je natančnost prenosa informacij – če prej E-naslov vodja v pisarni je napisal - "pripravite blago po nalogu št. ___", zdaj pa je v nalogi preprosto navedel povezavo do zahtevanega naročila, ki bi ga lahko uslužbenec točke odprl po telefonu.

Povečala se je stopnja nadzora nad nalogami – niso nikamor izginile in so imele status, ki jim ga je dodelil zaposleni v procesu izpolnjevanja naloge. In centralna pisarna je lahko vedno nadzorovala nalogo.

Anatolij Nikulin

Mobilna platforma "1C:Enterprise 8" je ime tehnologije, ki vam omogoča razvoj rešitev, ki delujejo na pametnih telefonih in tablicah. Google Android ali Apple iOS. Pomembna prednost platforme 1C je, da so rešitve razvite v eni različici za oba mobilna operacijska sistema in nato preprosto izvozene za Android in za iOS brez dodatnega spreminjanja in pisanja programske kode, odvisne od platforme.

Tako platforma 1C:Enterprise kot sama informacijska baza (konfiguracija, v smislu 1C) sta takoj nameščena na mobilni napravi. Informacijska baza na napravi vsebuje različico datotečne baze (za shranjevanje različnih podatkov, s katerimi uporabnik dela ali bo delal) in samo aplikacijo (programska bajtna koda, ki teče na tablici ali pametnem telefonu).

Primer mobilnega odjemalca za EDMS "Corporate Document Flow", ustvarjen na mobilni platformi "1C:Enterprise 8.3"

Platforma podpira prenos in uvajanje aplikacij s strani uporabnikov na njihovih napravah iz trgovin Trgovina z aplikacijami oz Google Play. Distribucijski komplet vsebuje vse potrebne komponente za začetek.

Na podlagi mobilne platforme 1C je mogoče ustvariti različne rešitve, vendar so glavna rešitev mobilni odjemalci za računovodske sisteme brez povezave. Te rešitve so zasnovane za podporo mobilnih uporabnikov na oddaljenih delovnih mestih. Izmenjava podatkov poteka preko redne sinhronizacije s centralno bazo podatkov. Izmenjava podatkov je mogoča preko naslednjih mehanizmov:

  • Spletne storitve
  • Deljenje datotek
  • E-naslov
  • in drugi mehanizmi
    Druga možnost je spletno delo s spletnim odjemalcem.

Razvita mobilna aplikacija je ločen, zaokrožen programski izdelek in lahko izmenjuje podatke z več centralnimi bazami podatkov hkrati. Na primer, v eni mobilni aplikaciji lahko implementirate dostop in delo z dokumenti iz računovodske baze podatkov in naloge iz sistema za upravljanje dokumentov podjetja.


28. septembra letos je 1C brez veliko hrupa in patosa izdal ocenjevalno različico platforme 8.3.2.163, ki je bila namenjena testiranju. Celoten seznam spremembe in izboljšave, kdor želi, lahko prebere ali, če ima naročnino, .
Od naštetih izboljšav se mi zdi precej "okusna" "1C Mobile Platform: Enterprise 8", ki omogoča ustvarjanje aplikacije za mobilne operacijske sisteme Android ali iOS z običajnimi orodji 1C

Mobilna platforma, kot pišejo razvijalci sami, »to je splošno ime za tehnologijo, ki vam omogoča ustvarjanje aplikacij, ki se izvajajo na mobilnih napravah z operacijskimi sistemi sistemi Android ali iOS."
"Mobilna aplikacija, nameščena na napravi, je kombinacija mobilne platforme in informacijske baze."

To pomeni, poenostavljeno povedano, svojo pisno konfiguracijo lahko prevedete v aplikacijo za Android (.apk) ali iOS (.zip). Nato lahko vse te stvari objavite v Google Play ali AppStore. Res je, če je mogoče program za Android podpisati s ključem, ustvarjenim tam takoj v 1C, in bo takoj pripravljen za objavo, potem bo za objavo aplikacije v AppStore najprej treba prevesti s programom Xcode v računalniku z operacijskim sistemom Mac sistem OS X. In seveda, za objavo v kateri koli od teh trgovin potrebujete licenco razvijalca.
Vse se sliši dobro in seveda sem želel preizkusiti nove funkcije v akciji.

Ustvarjanje mobilne aplikacije na 1C

Za to potrebujemo nova različica platforme (), posneta datoteka, android SDK in JDK.
Takoj vas opozorim: trenutno si ne postavljam naloge, da bi prikazal proces razvoja nečesa specifičnega na 1C, ampak želim samo preveriti in vam pokazati, da - ja, svet je ponorel in res lahko napišite program za Android na 1C.
No, poskusimo napisati nekakšen "helloWorld" za Google Phone. Naredimo program za testne namene - konfiguracijo z eno splošno obliko, ki jo bomo postavili na “namizje”.
Torej ustvarimo novo konfiguracijo v upravljanem načinu in prva stvar, ki jo moramo narediti, če pišemo za mobilno platformo, je, da v lastnostih same konfiguracije navedemo »Namen uporabe«.

In tukaj takoj opazimo, da je veliko konfiguracijskih objektov postalo nedosegljivih za uporabo. Ne bomo več mogli uporabljati podsistemov, rutinskih opravil, paketov XDTO, Spletne storitve, poročila, poslovni procesi in še veliko več. Poleg tega številni postopki in metode za nekatere objekte niso na voljo. To je treba upoštevati pri razvoju.
Naredimo "obrazec", ustvarimo atribut niza z naslovom: "Pozdravljeni, Habr!" - in vrzite na obrazec. Ustvarimo tudi gumb. Pri obdelavi klikov bomo na primer napisali izpis sporočila.

&OnClient Procedure Command1(Command) Warning("Deluje!"); Konec postopka

To je dovolj, da preverimo njegovo delovanje, zato preidimo na zabavni del. Konfiguracijo shranimo v datoteko za mobilno aplikacijo (Configuration->Mobile application->Write to file), zaženemo v upravljanem načinu in začnemo obdelovati MobileAppWizard.epf. Ta datoteka je v arhivu mobile.zip, ki smo ga prenesli na samem začetku.
In zdaj smo pozvani, da izpolnimo začetne nastavitve, kjer so vsa zahtevana polja podčrtana z rdečo.

Lokacija mobilne platforme - imenik, v katerem se nahajata datoteki android.zip in ios.zip, potrebni za oblikovanje dostave mobilne aplikacije. Vsi so v istem arhivu mobile.zip.
Označimo mapo, v katero smo namestili Android SDK (lahko ga prenesete). 1C postavlja naslednje zahteve:
Android SDK Tools različica - ni nižja od 20.0.3;
Različica Android SDK Platform-tools - ni nižja od 14;
Različica platforme SDK - API 8 (ni nižja od različice 8.3).
Potrebujemo tudi Java SDK (dobite ga na tem naslovu) Poleg tega nas 1C opozarja, da JDK7 ne deluje v povezavi z Android SDK.
Označimo mape, v katere bo postavljena naša datoteka .apk, lokacijo podpisnega ključa in vzdevek z geslom. Če to počnete prvič in nimate ključa, potem lahko izpolnite "ključne parametre" in ustvarite ključ zase (v tem primeru morate v polju "ključna datoteka" navesti mapo kjer bo ta ključ ustvarjen).
Kliknite »V redu« in pojdite na drugo okno.

V njem najprej navedemo »Konfiguracija mobilne aplikacije« - isto datoteko, ki smo jo shranili. Nato jezik in šele nato kliknite na gumb s "povečevalnim steklom" in tam vnesite predstavitev. Navedemo »ID aplikacije« - edinstveno ime razreda Java, ki bo v prihodnosti uporabljen za izvedbo posodobitve. Identifikator mora biti napisan v latinici in 1C priporoča, da se njegovo ime začne z »com.e1c«. Vnesite različico in številko gradnje ter kliknite gumb »Ustvari«. Če bo vse v redu, vas bo sistem obvestil, da je bila datoteka .apk uspešno ustvarjena.
Nastalo datoteko naložimo v telefon in jo namestimo z našim najljubšim upraviteljem, pri čemer predhodno omogočimo namestitev v sistemskih nastavitvah aplikacije tretjih oseb. Ali pa namestite program na emulator preko adb. Takoj bom rekel: na emulatorju je vse strašno počasno, na telefonu pa (preveril sem ga samo HTC Wildfire S) Stvari so veliko boljše, vendar še vedno obstajajo težave. Na primer, izkazalo se je, da moja datoteka tehta kar 34 Mb, tako da je namestitev trajala precej dolgo. Po zagonu nas pozdravi pozdravni zaslon, čez nekaj časa pa se začne sama konfiguracija. (se opravičujem za fotografijo: slikal sem jo s kalkulatorjem)

Zaenkrat so nove funkcije videti zelo "surove": omejena funkcionalnost 1C, nemogoče uporabo SDK neposredno, plus velika številka in nekaj "zavor" ... Toda sama možnost pisanja programa za mobilno platformo na 1C je malo presenetljiva! Osebno sem dvoumnega glede tega. Po eni strani je ta "funkcija" še vedno bolj podobna igrači, ker ni možnosti narediti nekaj resnično vrednega. Toda po drugi strani je to očitno velik korak podjetja 1C k mobilnosti in če se ta smer aktivno razvija, lahko prinese veliko koristi. Na primer, skladiščnike lahko opremite s tablicami. Če je možno uporabljati “on-board” kamere, potem se lahko osvobodite bralnih naprav in skenirate kode neposredno iz tablice, jih lahko posredujete voznikom avtomobilov in pošiljate prevozne naloge ali spremljate pot in čas vozila v gibanje. Na splošno obstaja veliko možnosti in dejstvo, da bo vse v enem informacijski sistem, bo zelo razveselil stranke/upravljavce, saj imajo iz nekega razloga vedno panični strah pred uporabo velika količina različne sisteme, želijo uporabljati vse funkcionalnosti na eni platformi.