1c բջջային հավելված Android- ի համար: Ավտոմատացման խորհուրդներ

Այս տարվա սեպտեմբերի 28 -ին, 1C- ն առանց մեծ աղմուկի և պաթոսի, թողարկեց 8.3.2.163 հարթակի գնահատման տարբերակը, որը նախատեսված էր փորձարկման համար: Oneանկացած անձ կարող է կարդալ փոփոխությունների և բարելավումների ամբողջական ցանկը կամ, եթե նա ունի բաժանորդագրություն,
Վերոնշյալ բարելավումներից ես կարծում եմ, որ «1C: Enterprise 8 Mobile Platform» - ը բավականին «համեղ» է, ինչը թույլ է տալիս ստեղծել ծրագիր ՝ Android կամ iOS բջջային օպերացիոն համակարգերի համար ՝ օգտագործելով սովորական 1C գործիքները:

Բջջային հարթակը, ինչպես իրենք են գրում մշակողները, «Սա այն ընդհանուր տեխնոլոգիայի անվանումն է, որը թույլ է տալիս ստեղծել ծրագրեր, որոնք աշխատում են Android կամ iOS օպերացիոն համակարգերով աշխատող շարժական սարքերի վրա»:
«Սարքի վրա տեղադրված բջջային հավելվածը բջջային հարթակի և տեղեկատվական բազա.».

Այսինքն, պարզ ասած, կարող եք ձեր գրավոր կազմաձևը կազմել Android (.apk) կամ iOS (.zip) հավելվածի մեջ: Այնուհետև այս ամբողջ բարությունը կարող է ձևավորվել Google playկամ AppStore. Trueիշտ է, եթե Android- ի համար ծրագիրը կարող է ստորագրվել 1C- ում անմիջապես նույն տեղում ստեղծված բանալիով, և այն պատրաստ կլինի անմիջապես հրապարակման, ապա AppStore- ում ծրագիր հրապարակելու համար նախ այն պետք է կազմվի ՝ օգտագործելով օպերացիոն համակարգ ունեցող համակարգչի վրա Xcode ծրագիրը: Mac համակարգ OS X. Եվ, իհարկե, ձեզ անհրաժեշտ է մշակողի լիցենզիա ՝ այս խանութներից որևէ մեկում հրապարակելու համար:
Ամեն ինչ լավ է հնչում, և ես, բնականաբար, ցանկանում էի փորձել նոր գործառույթները գործողության մեջ:

Ստեղծում բջջային հավելված 1C- ի վրա

Դրա համար մեզ պետք է նոր տարբերակհարթակներ (), ֆայլը վերցվում է, android SDK և JDK:
Ես անմիջապես ձեզ կզգուշացնեմ. Հիմա ես իմ առջև խնդիր չեմ դնում ցույց տալ ինչ -որ բանի զարգացման ընթացքը 1C- ում, այլ պարզապես ուզում եմ ստուգել և ցույց տալ ձեզ, որ այո, աշխարհը խելագարվել է, և 1C- ում դա իսկապես հնարավոր է ծրագիր գրել Android- ի համար:
Դե, եկեք փորձենք մի տեսակ «բարև աշխարհ» գրել Googlephone- ի համար: Եկեք փորձարկման նպատակով ծրագիր կազմենք `մեկ ընդհանուր ձևով կազմաձևում, որը մենք կտեղադրենք« աշխատասեղանին »:
Այսպիսով, մենք ստեղծում ենք նոր կազմաձև վերահսկվող ռեժիմ, և առաջին բանը, որ մենք պետք է անենք, եթե գրում ենք բջջային հարթակի համար, բուն կազմաձևի հատկությունների մեջ նշվում է «Օգտագործման նպատակը»:

Եվ այստեղ մենք անմիջապես նկատում ենք, որ շատ կազմաձևման օբյեկտներ դարձել են օգտագործման համար անհասանելի: Մենք այլևս չենք կարողանա օգտագործել ենթահամակարգեր, պլանավորված առաջադրանքներ, XDTO փաթեթներ, վեբ ծառայություններ, հաշվետվություններ, բիզնես գործընթացներ և շատ ավելին: Բացի այդ, որոշ օբյեկտների համար շատ ընթացակարգեր և մեթոդներ անհասանելի են: Սա պետք է հաշվի առնել մշակման ժամանակ:
Մենք կազմում ենք «ձև», ստեղծում ենք լարային հատկանիշ ՝ վերնագրով ՝ «Բարև, Հաբր»: - և գցեք այն ձևի վրա: Եկեք ստեղծենք նաև կոճակ: Սեղմման գործընթացում մենք, օրինակ, կգրենք հաղորդագրության ելքը:

& OnClient Procedure Command1 (Command) arnգուշացում («Աշխատում է»); Գործընթացի ավարտը

Սա բավական է մեզ կատարումը ստուգելու համար, ուստի եկեք անցնենք ամենահետաքրքիրին: Մենք պահում ենք կազմաձևը բջջային հավելվածի համար նախատեսված ֆայլում (Կազմաձևում-> Բջջային հավելված-> Գրեք ֆայլում), գործարկում ենք վերահսկվող ռեժիմով և սկսում մշակել MobileAppWizard.epf- ը: Այս ֆայլը գտնվում է mobile.zip արխիվում, որը մենք ներբեռնել ենք հենց սկզբից:
Եվ այժմ մեզ առաջարկվում է լրացնել սկզբնական կարգավորումները, որտեղ կարմիր գույնով ընդգծված են բոլոր պահանջվող դաշտերը:

Բջջային հարթակի գտնվելու վայրը `գրացուցակը, որտեղ գտնվում են android.zip և ios.zip ֆայլերը, որոնք պահանջվում են բջջային հավելվածի առաքումը ձևավորելու համար: Նրանք բոլորը նույն mobile.zip արխիվում են:
Մենք նշում ենք այն թղթապանակը, որտեղ մենք տեղադրել ենք Android SDK(կարող եք ներբեռնել): 1C- ն սահմանում է հետևյալ պահանջները.
Android SDK գործիքների տարբերակ `առնվազն 20.0.3;
Android SDK պլատֆորմ -գործիքների տարբերակ `առնվազն 14;
SDK Հարթակի տարբերակ - API 8 (ոչ ցածր, քան 8.3 տարբերակը):
Եվ մեզ պետք է նաև Java SDK (կարող եք ձեռք բերել այս հասցեով) Եվ 1C- ն մեզ զգուշացնում է, որ JDK7- ը չի աշխատում Android SDK- ի հետ համատեղ:
Մենք նշում ենք այն թղթապանակները, որտեղ կտեղադրվի մեր .apk ֆայլը, ստորագրության բանալու տեղը և գաղտնաբառով կեղծանունը: Եթե ​​դա անում եք առաջին անգամ, և չունեք բանալին, ապա կարող եք լրացնել «հիմնական պարամետրերը» և ինքներդ ձեզ համար բանալին ստեղծել (այս դեպքում «հիմնական ֆայլ» դաշտում պետք է նշեք թղթապանակ, որտեղ կստեղծվի այս բանալին):
Կտտացրեք «Լավ» և անցեք երկրորդ պատուհանը:

Դրանում, առաջին հերթին, մենք նշում ենք «Բջջային հավելվածի կազմաձևումը» `նույն ֆայլը, որը մենք պահեցինք: Հետո լեզուն, և միայն դրանից հետո մենք կտտացնում ենք «խոշորացույցով» կոճակին և այնտեղ մուտքագրում ներկայացուցչությունը: Մենք նշում ենք «Application ID» - Java դասի եզակի անուն, որը հետագայում կօգտագործվի թարմացումը կատարելու համար: Նույնացուցիչը պետք է գրված լինի լատինական այբուբենով, և 1C- ն խորհուրդ է տալիս իր անունը սկսել «com.e1c» - ով: Լրացրեք տարբերակը և կառուցեք համարը և կտտացրեք «Ստեղծել» կոճակին: Եթե ​​ամեն ինչ լավ ընթանա, համակարգը ձեզ կտեղեկացնի .apk ֆայլի հաջող ստեղծման մասին:
Մենք արդյունքում ֆայլը գցում ենք հեռախոսի վրա և տեղադրում այն ​​ձեր նախընտրած մենեջերի հետ ՝ համակարգի կարգավորումներում տեղադրումը թույլ տալուց հետո երրորդ կողմի դիմումներ... Կամ տեղադրեք ծրագիրը emulator- ի միջոցով adb- ի միջոցով: Ես անմիջապես կասեմ. Ամեն ինչ սարսափելի դանդաղեցնում է էմուլյատորի վրա, բայց հեռախոսով (ես ստուգեցի միայն միացվածը HTC անտառային հրդեհ S) ամեն ինչ շատ ավելի լավ է, բայց դեռ խնդիրներ կան: Օրինակ, ես ստացել եմ 34 Մբ քաշ ունեցող ֆայլ, ուստի տեղադրումը երկար տևեց: Գործարկելուց հետո մեզ ողջունում է շաղ տալու էկրանը, և որոշ ժամանակ անց կազմաձևումն ինքնին սկսվում է: (ներողություն նկարի համար. fotkal հաշվիչի վրա)

Առայժմ նոր գործառույթները շատ «հում» են թվում ՝ 1C- ի սահմանափակ ֆունկցիոնալությունը, SDK- ի ուղղակի օգտագործման անհնարինությունը, գումարած մեծ չափսերը և որոշ «արգելակներ» ... Բայց բջջային հարթակի համար ծրագիր գրելու հենց հնարավորությունը 1C- ում մի փոքր զարմանալի է: Անձամբ ես այս մասին կրկնակի կարծիք ունեմ: Մի կողմից, այս «առանձնահատկությունը» դեռ ավելի շատ նման է խաղալիքի, քանի որ հնարավորություն չկա իսկապես արժանի բան անել: Բայց մյուս կողմից, սա ակնհայտորեն 1C- ի մեծ քայլ է դեպի շարժունակություն, և եթե այս ուղղությունըակտիվորեն կզարգանա, դա կարող է շատ օգուտներ բերել: Որպես օրինակ, դուք կարող եք պահեստատերերին սարքավորել պլանշետներով: Եթե ​​հնարավոր կլինի օգտագործել «ինքնաթիռ» տեսախցիկներ, ապա կարող եք ազատվել ընթերցողներից և կոդերը սկանավորել անմիջապես պլանշետից, դրանք կարող եք տրամադրել մեքենայի վարորդներին և ուղարկել տրանսպորտի առաջադրանքներ կամ հետևել մեքենայի երթուղուն և շարժման ժամանակը: Ընդհանուր առմամբ, շատ տարբերակներ կան, և այն, որ այս ամենը լինելու է մեկ տեղեկատվական համակարգում, մեծապես կուրախացնի հաճախորդներին / ղեկավարներին, քանի որ ինչ -ինչ պատճառներով նրանք միշտ խուճապի մեջ են վախենում օգտագործել մեծ թիվտարբեր համակարգեր, նրանք ցանկանում են օգտագործել բոլոր գործառույթները մեկ հարթակում:

Բջջային հարթակ 1C: Ձեռնարկությունը գործիքների և տեխնոլոգիաների մի շարք է ՝ բջջային օպերացիոն համակարգի iOS, Android ծրագրերի արագ զարգացման համար, Windows Phone/ 8.1 / 10, օգտագործելով նույն զարգացման միջավայրերը (Configurator կամ 1C: Entrprise Development Tools) և զարգացման նույն տեխնիկան, որոնք օգտագործվում են «կանոնավոր» 1C ծրագրերի համար: Արդյունքը ինքնավար, անցանց ծրագրեր են, բայց արտաքին աշխարհի հետ տեղեկատվություն փոխանակելու ունակությամբ `օգտագործելով հարթակի կողմից տրամադրված ինտեգրացիոն գործիքների լայն շրջանակ` վեբ և HTTP ծառայություններ, էլ. Փոստ և այլն: Քանի որ փոխանակման արձանագրությունները հարթակից անկախ են, 1C բջջային հարթակը, ի թիվս այլ բաների, միջոց է արագ ստեղծումբջջային ճակատ `գրեթե ցանկացած սերվերի լուծման համար:

Նախապատմություն

Դեռևս 1C- ի օրերին ՝ 8.0 ձեռնարկության տարբերակ (և հետագա տարբերակները), կար ծրագրային արտադրանք, որը կոչվում էր Extension for ձեռքի համակարգիչներ". Ընդլայնումը թույլ տվեց ձեզ արտադրանք ստեղծել միայն OS- ի համար Windows Mobile, Windows CE և այլն: Ապրանքը ուներ իր կազմաձևիչը և սերվերը և աջակցվում էր մինչև 1C: Enterprise 8.3 տարբերակի թողարկումը: Վերջին տարբերակըընդլայնումը (8.2.9) թողարկվել է 2013 թվականի հոկտեմբերին, իսկ ամբողջական աջակցությունն ավարտվել է 2015 թվականի հունվարի 1 -ին:
Ընդլայնումը սահմանափակ կիրառություն ուներ նույնիսկ Windows Mobile- ի հաղորդավարների ծաղկման շրջանում, և բջջային շուկայից նման սարքերի հեռանալը ակնհայտորեն չավելացրեց դրա ժողովրդականությունը: ծրագրային արտադրանք... IOS և Android սարքերը զբաղեցրել են բջջային սարքերի գրեթե ամբողջ շուկան, և ակնհայտ դարձավ, որ այս օպերացիոն համակարգերի աջակցությունը համակարգի համար առանցքային կետերից մեկն է, որը պետք է գործի ժամանակակից բջջային աշխարհում: Նաև ակնհայտ էր, որ գոյություն ունեցող 1C: Enterprise պլատֆորմի հիմնական մոտեցումը պետք է օգտագործվի նաև բջջային սարքերի վրա. Կիրառական մշակողը պետք է առաջին հերթին մտածի կիրառական խնդիրների լուծման մասին, և երկրորդ `օպերացիոն համակարգի ինչ հնարավորությունների մասին է նա լուծում: այս խնդիրները .... Այլ կերպ ասած, ձեզ անհրաժեշտ է գործիք, որը մեկուսացնում է հավելվածի մշակողին բջջային ՕՀ -ի և զարգացման գործիքի առանձնահատկություններից:

Բջջային հարթակ

Ձեռքի համակարգիչների համար ընդլայնման մշակման և շահագործման փորձի հիման վրա որոշվեց մշակել մասնագիտացված համակարգ, որը կբավարարի մի քանի պահանջ.
  • այն պետք է աջակցի ժամանակակից հանրաճանաչ բջջայինին ՕՀև նրանց վերահսկողության տակ գտնվող սարքերը: Նախ, դրանք Apple- ի iOS- ն են, իսկ Google- ը `Android- ը:
  • այս համակարգը պետք է թույլ տա զարգացած ծրագրերի օգտագործումը ժամանակակից բջջային սարքերում ընդունված ոճով: Մասնավորապես, ինտերֆեյսը պետք է հենվի ձեռքով հսկողություն(բառացիորեն) սենսորային էկրանների օգտագործմամբ:
  • համակարգը պետք է ապահովի ծրագրավորման միասնական ինտերֆեյս `տարբեր հատուկ մեխանիզմների ներդրման համար` անկախ օգտագործվող շարժական ՕՀ -ից:
  • մշակողը պետք է օգտագործի նույն գործիքը և զարգացման մոտեցումները, ինչ «սովորական» համակարգչի համար ծրագրեր մշակելիս:
  • ծրագիր մշակողը պետք է մշակի կիրառական լուծումծանոթ զարգացման միջավայրում, հնարավորության դեպքում օգտագործելով նույն ծածկագիրը աշխատասեղանի և բջջային համակարգերի համար:
  • Բջջային սարքի վրա աշխատող կիրառական լուծման միջերեսը պետք է նման լինի տարբեր հարթակների համար և, ընդհանուր առմամբ, միանշանակ ճանաչելի:
Մշակման արդյունքը եղավ այսպես կոչված բջջային հարթակը, որը թողարկվեց 2013 թվականի մայիսի 29-ին iOS և Android տարբերակների համար: 1C: Enterprise բջջային հարթակը գործիքների և տեխնոլոգիաների մի շարք է, որը թույլ է տալիս ծրագրեր ստեղծել iOS, Android, Windows Phone / 8.1 / 10 բջջային օպերացիոն համակարգերի համար ՝ օգտագործելով զարգացման նույն միջավայրը (Configurator) և զարգացման նույն մեթոդները, ինչ սովորական ծրագրերի համար: 1C: Ձեռնարկությունների հարթակում: Արդյունքը ինքնավար, անցանց ծրագրեր են, բայց արտաքին աշխարհի հետ տեղեկատվություն փոխանակելու ունակությամբ `օգտագործելով հարթակի կողմից տրամադրված ինտեգրացիոն գործիքների լայն շրջանակ` վեբ և HTTP ծառայություններ, Էլեւ այլն
Բջջային հարթակը բավականին լավ ընդունվեց համայնքի կողմից, սկսեցին հայտնվել այս թեմայով տարբեր հոդվածներ (օրինակ, և): Բջջային սարքերի ճնշող մեծամասնության վրա միաժամանակ աշխատող լիարժեք ֆունկցիոնալ ծրագիր մշակելու համար այժմ պահանջվել է նվազագույն ժամանակ և գիտելիք, որն էապես չի տարբերվում 1C: Enterprise հարթակում «կանոնավոր» ծրագրերի մշակողի գիտելիքներից: . Անկասկած, մուտքի նման ցածր շեմը գրավում է այն ծրագրավորողներին, ովքեր պետք է որոշ հիմնական գործառույթներ ապահովեն դաշտային աշխատողների, ղեկավարների և այլ շարժական աշխատակիցների համար, ովքեր պետք է աշխատեն կորպորատիվ համակարգով:
Հեշտ է սկսել բջջային հավելվածի մշակումը 1C: Enterprise հարթակում: Configurator- ում «Օգտագործման նպատակը» հատկությունը կազմաձևեք «Շարժական սարք» արժեքին: Այս դեպքում կիրառվող կազմաձևման որոշ օբյեկտներ կդառնան անհասանելի (բնութագրական տեսակների գծապատկերներ, հաշիվների գծապատկերներ և այլն), սակայն բջջային ծրագրերին հատուկ հատկությունները հասանելի կդառնան (օրինակ ՝ ներկառուցված մուլտիմեդիա և տեղաբաշխում շարժական սարքըև այլն):


Միևնույն ժամանակ, կարող եք կարգաբերել հիմնական կիրառման ալգորիթմները (որոնք անմիջականորեն կապված չեն բջջային բնութագրերի հետ) անմիջապես մշակողի համակարգչի Configurator- ում: Միևնույն ժամանակ, խորհուրդ է տրվում շրջանակի այն հատվածները, որոնցում «բջջային» գործառույթը կանչվում է համապատասխան հրահանգներով `նախամշակողին` անձնական համակարգչի վրա ծածկագիրը կատարելիս սխալներից խուսափելու համար.
#Եթե MobileApplicationClient Then Data = GeolocationServer.GetProviderName (); # ՎերջԵթե
Բջջային հարթակի 8.3.7 տարբերակից սկսած ՝ հավելվածի կարգաբերումը անմիջապես բջջային սարքում հասանելի դարձավ (ավելին ՝ ստորև):

Բջջային հարթակում զարգանալը կարող է հետևել տարբեր մոտեցումների, սակայն մի քանի հիմնական կետեր կարող են ընդգծվել: Իրական բջջային հավելվածի կառուցման տեսանկյունից, դրա ֆունկցիոնալ հարստությունն ու դերը ձեռնարկության ՏՏ ենթակառուցվածքներում.

  • բջջային հավելվածը կարող է լինել գոյություն ունեցող ձեռնարկության տեղեկատվական համակարգի անբաժանելի և անբաժանելի մասը: Բջջային հավելվածը կապահովի ինտերֆեյս և այլ հնարավորություններ (ներառյալ տվյալների փոխանակումը) `հարմարեցված առկա տեղեկատվական համակարգի հնարավորություններին: Այս դեպքում բջջային հավելվածը շատ սերտորեն կապված է «սովորական» տեղեկատվական համակարգև չի կարող վիրահատվել դրանից մեկուսացված:
  • բջջային հավելվածը կատարում է կոնկրետ խնդիրներ, որոնք գործնականում կապ չունեն ձեռնարկության տեղեկատվական համակարգի հետ: Բջջային հավելվածի և տեղեկատվական համակարգի միջև փոխանակվում է տվյալների միայն նվազագույն փաթեթ: Այս դեպքում, ամենայն հավանականությամբ, բջջային հավելվածը կկատարի փոխանակում ըստ որոշ ստանդարտացված արձանագրության, ինչը հնարավորություն է տալիս օգտագործել այս բջջային հավելվածը բոլորովին այլ դեպքերում և իրավիճակներում:
Վերը նկարագրված երկու իրավիճակները կարելի է համարել ծայրահեղ տարբերակներ: Բայց դրանք զարգացման միակ տարբերակները չեն: Applicationրագրի մշակողը կարող է ինքնուրույն ընտրել բջջային հավելվածի և այն տեղեկատվական համակարգի միջև ինտեգրման տարբերակները, որոնք գործում են որպես դրա հիմնական գրասենյակ:
Բջջային հավելվածը մշակված է որպես ամբողջովին ինքնուրույն կազմաձև, սակայն այն կարող է որոշ աղբյուրի կոդի հետ կիսվել «ծնողի» կազմաձևով: Ի դեպ, «ծնողի» կոնֆիգուրացիան կարող է ֆիզիկապես գոյություն չունենալ (օրինակ, եթե դուք զարգացնում եք որոշները համընդհանուր կիրառությունորի հետ կարող է աշխատել տարբեր համակարգերհամընդհանուր արձանագրության համաձայն):

Շարժական հարթակի սարք

Ի՞նչ է բջջային հարթակը և ինչո՞վ է այն զբաղված:
Ազնվության համար պետք է ասել, որ բջջային հարթակը միայն ամբողջ համալիրի բաղադրիչներից մեկն է, որի շնորհիվ 1C: Enterprise 8 -ը աշխատում է շարժական սարքերի վրա: Այսպիսով, կիրառական մշակողը գործում է հետևյալ բաղադրիչներով.
  1. Բջջային հարթակն ինքնին 1C: Enterprise շրջանակի շարժական մասն է: Այն կարող է լինել սովորական (որը օգտագործվում է հավելվածների խանութում հրապարակման համար հավելված ստեղծելու ժամանակ) և բջջային ծրագրավորողի հարթակ, որն օգտագործվում է (անակնկալ) բջջային հավելվածի մշակման ժամանակ:
  2. Բջջային կազմաձևը 1C: Enterprise ծրագրային համակարգի կազմաձևումն է, որը գրված է XML ֆայլի տեսքով:
  3. Բջջային հարթակի և բջջային կազմաձևման համադրությունը հանգեցնում է բջջային հավելվածի:
  4. Բջջային հավելվածների ստեղծողը ծրագրերի մասնագիտացված լուծում է, որը կարող է պատրաստել բջջային հարթակից, կազմաձևից, ցայտող էկրաններից, պատկերակներից և այլ բաղադրիչներից, պատրաստ ֆայլբջջային հավելված, որը կարելի է ներբեռնել Apple AppStore, Google Play, Windows Phone Apps / Windows Apps:
Ինչու՞ է ամեն ինչ այդքան դժվար: Ինչու՞ դա հնարավոր չէ անել բջջային սարքի վրա այնպես, ինչպես դա արվում է մեծ հարթակում: Նրանք տեղադրել մեկ բջջային հարթակ սարքի վրա և բեռնե՞լ դրա մեջ ցանկացած քանակի կազմաձևեր / ծրագրեր: Սա արգելված է դիմումների լիցենզավորման սահմանափակումներով, որոնք տարածվում են հավելվածների խանութների միջոցով: Օրինակ, եթե ձեր ծրագիրը ներբեռնում է գործարկվող ծածկագիրը (սցենարի տեսքով) ինտերնետով, ապա այն երբեք չի երևա Apple App Store- ում: Այնուամենայնիվ, պետք է հասկանալ, որ ծրագրավորողի բջջային հարթակում գտնվող ցանկացած կոնֆիգուրացիա ներլցնելու հնարավորությունը նախատեսված չէ բջջային հավելվածների բաշխման համար նույնիսկ նույն ընկերության ներսում, առավել ևս ՝ մշակողի հաճախորդներին:
Բջջային հավելվածի թիրախային բջջային սարքում հայտնվելուց հետո անհրաժեշտություն է առաջանում օգտագործել մի տեսակ տվյալների բազա (տվյալները պետք է պահվեն ինչ -որ տեղ): Որպես տվյալների բազայի շարժիչ, բջջային հարթակը օգտագործում է իր տվյալների բազայի շարժիչը, որը շարժական հարթակ տեղափոխվում է հարթակից դրա համար անհատական ​​համակարգիչ... Այն բավականին կոմպակտ և բավականաչափ արագ է, բայց գլխավորն այն է, որ այն ապահովի ճիշտ նույն վարքագիծը, որին սովոր էին ծրագրերի մշակողները ՝ անհատական ​​համակարգիչների համար հարթակում աշխատելիս:
Հարկ է նաև նշել, որ բջջային հավելվածն իր ներսում կառուցված է նույն սխեմայով, ինչ սովորական հարթակի աշխատանքը ՝ ֆայլերի վրա հիմնված տեղեկատվական բազայով. Կա հաճախորդի մաս, կա սերվերի մաս, կա տվյալների բազա և կա հաճախորդ-սերվեր փոխազդեցություն:
Բջջային հարթակն ինքնին գրված է որպես հարազատ ծրագիր, որը կազմված է երկուական կոդի մեջ ՝ բջջային աշխարհում ներկայումս օգտագործվող հիմնական պրոցեսորային ճարտարապետությունների համար. Դրանք ARM v5 և ավելի բարձր և x86 ճարտարապետություններ են:
Բացի այդ, հատուկ թույլտվություններ կարող են պահանջվել բջջային սարքի որոշակի հնարավորությունների հետ փոխազդեցության համար (հեռախոսակապ, GPS, ներկառուցված տեսախցիկով աշխատանք և այլն): IOS- ի համար դրանք ուղղակիորեն սահմանվում են հենց հավելվածի գործընթացում, իսկ Android- ի համար թույլտվություններ են նշվում ՝ ծրագիր ստեղծելիս: Բջջային հավելված մշակելիս նշվում են պահանջվող թույլտվությունները և օգտագործվում են բջջային հավելվածներ ստեղծողի կողմից, սակայն շինարարի մասին ավելի ուշ:

Մի փոքր մշակողի հարթակի մասին

Մինչ մենք մշակում ենք բջջային հավելված, մենք կապված չենք բջջային հավելվածների համար կիրառվող խանութների միջոցով բաշխված լիցենզավորման սահմանափակումների հետ: Սա նշանակում է, որ մենք կարող ենք օգտագործել 1C բջջային հարթակը այնպես, ինչպես օգտագործում ենք «մեծ» հարթակը անհատական ​​համակարգչում. Գործարկվելուց հետո հարթակը մեզ ցույց կտա դրանում գրանցված ծրագրերի ցանկը.

Հարթակին նոր ծրագիր ավելացնելու համար անհրաժեշտ է տեղադրել XML ֆայլ `դրա նկարագրությամբ` HTTP արձանագրության միջոցով շարժական սարքից հասանելի ռեսուրսի վրա: Դա անելու ամենահարմար եղանակը Configurator- ից է ՝ «Կազմաձև \ Բջջային հավելված \ Հրապարակել» ցանկի միջոցով: Այս դեպքում կիրառման կազմաձևով XML ֆայլը տեղադրվում է մշակողի համակարգչի վեբ սերվերի վրա (համապատասխանաբար, այս համակարգիչը պետք է ունենա վեբ սերվեր ՝ IIS կամ Apache):

Եթե ​​ծրագրի համար նշեք «Վերագործարկեք կազմաձևից» տարբերակը, ապա բջջային սարքի դիմումը ինքնաբերաբար կթարմացվի մշակողի համակարգչից ամեն անգամ, երբ ծրագրավորողը թարմացնում է հյուրընկալողը վեբ սերվերում XML ֆայլկազմաձևում:
Երբ թույլատրված է «Վրիպազերծումը թույլատրված է» տարբերակը, հնարավոր է, որ ծրագրաշարի քայլ առ քայլ կարգաբերումը բջջային սարքում կազմաձևողից մշակողի համակարգչում լինի (Կարգավորիչում ՝ «Deառայություն Ընտրանքներ "ընտրացանկը պետք է ընտրվի): Եթե ​​կազմաձևում կոդի մեջ դրեք ընդմիջման կետեր և ընտրեք «Բջջային ծրագիր - սկսեք կարգաբերում» հրամանը, սարքի բջջային հավելվածը կդադարի, երբ գործարկվող ծածկագիրը հասնի ճեղքման կետին, և Կարգավորիչում կարող եք դիտել արժեքները: փոփոխականներ, զանգերի բուրգ և այլն:

Ինչ կարող է դա անել:

Այսպիսով, ինչի՞ է ընդունակ բջջային հարթակը: Բավական:)
Եթե ​​դուք չեք օգտագործում «1C: Ձեռնարկություն» հատուկ տերմինները, ապա բջջային հարթակը հնարավորություն է տալիս աշխատել կարգավորիչ և տեղեկատու տեղեկատվության հետ, կազմել որոշ արտաքին գործողություններ նկարագրող փաստաթղթեր, դիտել հաշվետվություններ, արտաքին աշխարհի հետ շփվել ինտերնետային ծառայությունների միջոցով և այլն: ավելին: Նրանք այն ծրագրավորողին հնարավորություն է տալիս գրել բավականին ֆունկցիոնալ ծրագիր, օրինակ ՝ տնային ֆինանսների հաշվառման ծրագիր, առևտուր այցելելու ծրագիր և այլն:
Բայց բացի անհատական ​​համակարգչի համար նախատեսված հարթակից սովորական գործառույթից, բջջային հարթակը պետք է ապահովի աշխատանք ՝ հատուկ հնարավորություններով, որոնք բնորոշ են միայն շարժական սարքերին.
  • աշխատել զանգերի և զանգերի մատյանով;
  • աշխատել կարճ հաղորդագրությունների (SMS) և դրանց ցուցակի հետ.
  • կոնտակտներ;
  • օրացույցներ;
  • geolocation (առանց երթուղղման);
  • թույլ է տալիս լուսանկարել, ինչպես նաև կատարել տեսաձայնագրություն և ձայնագրություն.
  • արձագանքել էկրանի կողմնորոշման փոփոխություններին.
  • աշխատել ծանուցումների հետ (տեղական և PUSH, ինչպես ուղղակիորեն, այնպես էլ հատուկ միջնորդական ծառայության միջոցով);
  • տեսախցիկով սկանավորել շտրիխ կոդերը և QR կոդերը
  • Բջջային հավելվածների դրամայնացում (այսինքն ՝ բջջային հավելվածի մշակողին լրացուցիչ եկամուտ ստանալու հնարավորություններ տալու միջոց).
    • Աշխատեք Apple In-App Purchase (iOS- ի համար) և Google Play In-App Billing (Android- ի համար) ծառայությունների հետ, որոնցով կարող եք կազմակերպել տարբեր տեսակի բաժանորդագրություններ, գործառնական գնումներ և այլն բջջային հավելվածում
    • Բջջային հավելվածներում գովազդի ցուցադրում (iOS- ի համար iAd- ը և Android- ի համար AdMob- ը դեռ աջակցվում են):
  • եւ այլն
Հասկանալի է, որ որոշ գործառույթներ կարող են հասանելի չլինել ամեն դեպքում կոնկրետ սարքհետևաբար, որոշելու, թե ինչ կարելի է անել այն սարքի վրա, որի վրա աշխատում է բջջային հավելվածը, հատուկ մեթոդներորը ձեզ տեղյակ պահելու համար հասանելի է այս սարքըինչպիսիք են հավաքելու ունակությունը, թե ոչ: Այսպիսով, կիրառվում է մոտավորապես օգտագործման հետևյալ սխեման. Մենք ստուգում ենք ՝ հնարավոր է օգտագործել ինչ -որ հնարավորություն, թե ոչ, և հնարավորության դեպքում ՝
Եթե ​​հեռախոսակապը նշանակում է. EndIf;
Մեզ համար կարևոր խնդիր է թաքցնել օգտագործված բջջային ՕՀ -ի մասին մանրամասները հավելվածի մշակողից, նրան տրամադրել բջջային գործառույթների օգտագործման միասնական մեխանիզմներ: Մենք հավատում ենք, որ մենք հաջողությամբ լուծում ենք խնդիրը: Իրականացված մեխանիզմների տարբերությունները կա՛մ բացակայում են, կա՛մ նվազագույնի հասցվում: Բացառությամբ, իհարկե, երբ OS- ներից մեկում ընդհանրապես ֆունկցիոնալություն չկա:
Օրինակ, PUSH ծանուցումների հետ աշխատելու տեխնիկան շատ տարբեր է Google- ի և Apple- ի համար: Մենք շատ ջանքեր ենք գործադրել հայտի ծածկագրից PUSH ծանուցումների հետ աշխատելու մեխանիզմը միավորելու համար: Բջջային հավելվածի դեպքում մեզ հաջողվեց գրեթե 100%. Բջջային սարքի նույն դիմումի կոդը կարգավորում է POSH ծանուցումներ ստանալ ինչպես iOS- ում, այնպես էլ Android- ում: Իսկ սերվերային հավելվածում PUSH ծանուցումներ ուղարկելու ծածկագիրը նույնպես նույնն է: Բայց նման միավորման հասնելու համար մենք պետք է մշակեինք հատուկ պրոքսի սերվեր https://pushnotifications.1c.com/, որը ծրագրավորողից թաքցնում է Apple Push Notification Service (APNS) և Google Cloud Messaging (GCM) հետ աշխատելու տարբեր տեխնիկա: Ամբողջ տարբերությունն այն է տարբեր պարամետրերուղղակիորեն վստահված անձի կայքում ՝ https://pushnotifications.1c.com/; APNS- ի հետ աշխատելու համար հարկավոր է կայքում տեղադրել SSL վկայագիր (որը Apple- ը թողարկում է հավելվածի համար `մշակողի խնդրանքով), GCM- ի հետ աշխատելու համար անհրաժեշտ է նշել ծրագրի եզակի նույնացուցիչը:
Ակնհայտ է, որ անհնար է անմիջապես իրականացնել բոլոր հնարավորությունները, որոնք ցանկանում եք ունենալ բջջային հավելվածում: Եվ միշտ պետք է փոխզիջում գտնել մի քանի շատ օգտակար բաների միջև: Եվ եթե ինչ -որ բան բաց է թողնում, գրեք մեզ այն մասին, թե ինչ բիզնես առաջադրանքներ (ի վերջո, պլատֆորմը հիմնականում գործարար առաջադրանքների իրականացման գործիք է): Դուք չեք կարող լուծել, և ինչ մեխանիզմ կօգնի ձեզ դրա համար:

Ինչպիսի տեսք ունի?

Բջջային հարթակի գրաֆիկական ինտերֆեյսը առանձին թեմա է: 1C: Enterprise- ում, ինչպես գիտեք, ինտերֆեյսը նկարագրված է դեկլարատիվ: Սա, մի կողմից, որոշակի սահմանափակումներ է դնում UI- ի զարգացման վրա (օրինակ ՝ մեկ պիքսելային դիրքի հնարավորություն չկա), բայց, մյուս կողմից, այն հարթակին թույլ է տալիս միատեսակ կերպով ինտերֆեյսը մատուցել տարբեր էկրաններին չափերը, բարակ և վեբ հաճախորդի մեջ: Բջջային հարթակում մենք փորձեցինք հավատարիմ մնալ նույն սկզբունքին: Որքան լավ արեցինք դա: Փորձենք պարզել դա:
Բջջային հարթակի առաջին տարբերակներում (մինչև 8.3.5 ներառյալ) գրաֆիկական ինտերֆեյսծրագրերը շատ ծանոթ տեսք ունեին 1C բարդ օգտագործողների համար. փաստորեն, նա 1C- ի «աշխատասեղան» տարբերակներից ծանոթ ինտերֆեյսը տեղափոխեց բջջային աշխարհ: Բայց այն օգտվողների տեսանկյունից, ովքեր նախկինում ծանոթ չէին 1C- ին, ինտերֆեյսը որոշ չափով արխայիկ տեսք ուներ:
Հաշվի առնելով մեկնաբանություններն ու առաջարկությունները ՝ մենք արմատապես վերանայեցինք բջջային ինտերֆեյսի մեր մոտեցումը 8.3.6 տարբերակում: Կարող ենք ասել, որ մենք կատարել ենք բոլորովին նոր բջջային ինտերֆեյս մեր ծրագրերի համար: Այն շատ ընդհանրություններ ունի մեր տաքսի ինտերֆեյսի հետ: Բջջային ծրագրեր մշակողների զարգացման մոդելը համապատասխանում է Taxi- ի զարգացման մոդելին: Միևնույն ժամանակ, բջջային ինտերֆեյսը լիովին համապատասխանում է բջջային հավելվածներում ընդունված դիզայնի մոտեցումներին և. Ինտերֆեյսը լիովին հաշվի է առնում բջջային աշխարհի առանձնահատկությունները. Փոքր էկրանի չափս (ինչը նշանակում է, որ գրաֆիկական տարրերի դիզայնը պետք է դառնա ավելի ասկետիկ `առանց ստվերների, գրադիենտների), կա մատների ժեստերի աջակցություն և այլն: Հետաքրքիր փաստ. նոր պլատֆորմի մեխանիզմը, որը պատասխանատու է տարրերի ձևի (դասավորության) տեղադրման համար, այնքան հաջող և ժամանակին ստացվեց բջջային հարթակի համար, որ այն թողարկվեց ավելի վաղ (8.3.6 տարբերակում), քան ԱՀ -ի հարթակում (8.3 տարբերակում) .7), որի համար այն հիմնականում նախատեսված էր:
Նկարում կարող եք տեսնել, թե ինչպես է փոխվել մեր ինտերֆեյսը:
Դիմում «Փոքր ընկերության կառավարում» բջջային հարթակի 8.3.5 տարբերակի վրա.


Նույնն է 8.3.6 տարբերակում.

Եվ այսպես է թվում բջջային հարթակի կենդանի ինտերֆեյսը.

Կոլեկցիոներ - իսկ սա ի՞նչ գազան է:

Ինչպես արդեն նշվեց, բջջային հավելվածը բաղկացած է մի քանի բաղադրիչներից (իրական բջջային հարթակ, կազմաձևում, տարբեր ռեսուրսներ), որոնք պետք է լինեն մեկ ամբողջություն `հավելվածը խանութում տեղադրելու համար: Որպեսզի բաղադրիչներն ավելի հեշտ դարձնեն հավելվածը, ստեղծվել է բջջային հավելվածների ստեղծող: Սա 1C: Enterprise հարթակում ստեղծված կոնֆիգուրացիա (ծրագիր) է, որն իր տվյալների բազայում պահում է բջջային հավելված ստեղծելու համար անհրաժեշտ բոլոր բաղադրիչները: Որպեսզի շինարարը կատարի իր աշխատանքը, դուք պետք է ներբեռնեք և տեղադրեք տարբեր ծրագրային փաթեթներորոնք անհրաժեշտ են դրա աշխատանքի համար (Java և Android SDK և այլն), այնուհետև կոլեկցիոների կարգավորումներում նշեք այս փաթեթների ուղիները և որոշ Լրացուցիչ ընտրանքներ(մշակողի բանալիներ և այլն):


Կարգավորվելուց հետո կոլեկտորը պատրաստ է գնալ: Ընդհանուր առմամբ, կոլեկցիոների հետ աշխատելն ունի հետևյալ տեսքը.
  1. Ներբեռնեք 1C բջջային հարթակի տարբերակը, որի վրա մենք կկառուցենք ծրագիրը
  2. Մենք բեռնում ենք կազմաձևը, որից մենք կկառուցենք բջջային հավելվածը
  3. Մենք ստեղծում ենք բջջային ծրագիր, որում նշում ենք, թե որ հարթակների համար (Android, iOS, Windows) պետք է իրականացվի հավաքումը, որ կազմաձևը և հարթակը պետք է օգտագործվեն (մասնավորապես, նշեք, թե iOS- ի համար հավաքման որ վկայականը պետք է օգտագործվի, եթե ծրագիրը աշխատում է PUSH) ծանուցումների միջոցով):
  4. Մենք իրականացնում ենք բջջային հավելվածի «մեկ կտտոցով» հավաքում բոլոր ընտրված հարթակների համար
  5. «Մեկ այլ կտտոցով» մենք հավաքված բջջային հավելվածները ուղարկում ենք հավելվածների խանութներ (եթե դա iOS կամ Android ծրագրերի համար է): Վ Windows խանութներ Sրագրեր / Windows Phone Sրագրերի հավելվածդուք պետք է այն ձեռքով ներբեռնեք, քանի որ Microsoft- ը դեռ չի տրամադրում API խանութում հավելված տեղադրելու համար:
Առանձին -առանձին պետք է նշել, որ կոլեկցիոները բջջային հավելվածի մշակման և կարգաբերման կարիք չունի: Դա անելու համար կարող եք օգտագործել բջջային ծրագրավորողի պլատֆորմը և Configurator- ի գործիքները ՝ կոնֆիգուրացիան շարժական սարքին փոխանցելու համար: Բայց բջջային հավելվածը տարածելու համար ձեզ հարկավոր է կոլեկցիոներ:

Applicրագրեր բջջային հարթակում

1C ընկերությունն ինքն է բջջային հարթակում թողարկում մի շարք ծրագրեր, որոնք հանդիսանում են 1C սերվերային ծրագրերի շարժական հաճախորդներ (1C: Փաստաթղթերի կառավարում, 1C: Փոքր ձեռնարկությունների կառավարում և այլն): Այս ծրագրերն իրականացնում են «կանոնավոր» հաճախորդների ֆունկցիոնալության ենթախումբ: Երբ բջջային տարբերակ«1C: Փոքր ձեռնարկության կառավարում» գործառույթը բավարար է ծրագրի լիարժեք օգտագործման համար, և մենք հաճախ տեսնում էինք մի իրավիճակ, երբ հավելվածի բջջային տարբերակը բավական է հաճախորդներին բիզնես վարելու համար:
Մեր գործընկերները օգտագործում են բջջային հարթակը ինչպես զանգվածային արտադրության բջջային հավելվածների մշակման համար, որոնք տարածվում են հավելվածների խանութների միջոցով, այնպես էլ հատուկ հաճախորդների պահանջով ստեղծված հատուկ ծրագրերի համար: Շրջանառվող ծրագրերի շարքում կան ծրագրեր, որոնք օգտագործում են ոչ 1C- ի հետևը ՝ որպես տվյալների կենտրոնական պահեստ:
Հաճախորդների պատվերով ստեղծված բջջային հավելվածների շարքում կարող ենք նշել բջջային հաճախորդ 1C- ի համար ՝ Manufacturing Enterprise Management, որը ստեղծվել է մեքենաշինական խոշոր հոլդինգի պատվերով: Հոլդինգի մոտ հարյուր աշխատակից բջջային հավելված են օգտագործում տաք խանութներում, որտեղ, անվտանգության նկատառումներից ելնելով, ստացիոնար համակարգիչներանհնար Բջջային սարքի ներկառուցված տեսախցիկը օգտագործվում է ապրանքների շտրիխ կոդերը կարդալու և դրանք անվանացանկի տեղեկատու գրքում որոնելու համար, բջջային հավելվածը թույլ է տալիս հասկանալ տվյալ ապրանքի տեխնոլոգիական շղթայի որ փուլում է, նշելու անցումը ապրանքի կողմից հաջորդ գործողությունը և այլն:

Եզրակացություն

Մենք փորձեցինք շատ մակերեսորեն նկարագրել բջջային հարթակը, թե ինչ է այն թույլ տալիս անել ձեզ և ինչու է ստացվել այնպես, ինչպես դա եղավ: Այս հոդվածում գործնականում ոչինչ չի ասվում բջջային Windows... Դրա համար մի քանի պատճառ կա. Նախ ՝ Windows- ի համար շարժական հարթակի տարբերակը համեմատաբար վերջերս է դուրս եկել («1C: Ձեռնարկություն» տարբերակ 8.3.7), և երկրորդ ՝ բջջային հարթակի այս տարբերակը էական տարբերություններ չունի բջջային այլ օպերացիոն համակարգերի իրականացում ... Բնականաբար, մենք կբարձրացնենք Windows OS- ի գործառույթը: Ինչպես նաև բջջային հարթակի ֆունկցիոնալության բարձրացումն ամբողջությամբ: Այսպիսով, մոտ ապագայում մենք ունենք աջակցություն բջջային հարթակում արտաքին բաղադրիչներ; այս մեխանիզմը (երկար ժամանակ հասանելի է «մեծ» հարթակում) թույլ կտա մշակողներին իրականացնել ֆունկցիոնալություն, որը բջջային հարթակում որևէ պատճառով անհասանելի է:
Ավանդաբար ուժեղ կողմերը«1C: Ձեռնարկություն» տեխնոլոգիական հարթակը մշակողի համար զարգացման հեշտությունն է և բիզնես ծրագրերի ստեղծման և փոփոխման արագությունը: 1C բջջային հարթակը այս երկու հաղթաթղթերն է բերել բջջային աշխարհ: 1C բջջային հարթակը հնարավորություն է տալիս արագ մշակել ծրագիր, որն աշխատում է երեք ամենահայտնի բջջային հարթակներում (iOS, Android, Windows Phone / 8.1 / 10): Եվ շնորհիվ հարթակից անկախ ինտեգրման գործիքների լայն շրջանակի (վեբ և HTTP ծառայություններ և այլն), 1C բջջային հարթակը հնարավորություն է տալիս արագորեն ստեղծել բջջային հաճախորդ երեք բջջային հարթակների համար գրեթե ցանկացած սերվերային ծրագրի համար, որն աջակցում է որևէ մեկին: ինտեգրման առկա մեթոդներ: 1C հարթակում (վեբ և HTTP ծառայություններ, ֆայլերի փոխանակում և այլն):

Հարցմանը կարող են մասնակցել միայն գրանցված օգտվողները: Համեցեք խնդրեմ.

Բջջային հավելվածների մշակումը միշտ կապված է լրացուցիչ տեխնոլոգիաներ սովորելու անհրաժեշտության հետ: Ի՞նչ անել, եթե նորից անդրադառնաք հարցին և օգտագործեք արդեն իմացած գործիքները:

Առաջին անգամ 1C- ն փորձեց ներս մտնել շուկա բջջային կապի զարգացում 2006 թվականին: Այն ժամանակ իրական ոգևորություն կար PDA- ի միջոցով հեռավոր աշխատողների աշխատանքի ավտոմատացման վերաբերյալ: Նման խնդիրների լուծման նոր ծրագրեր հայտնվեցին սնկի պես, և բիզնեսի տարբեր ոլորտների ավտոմատացման համար հաջողակ արտադրանք ունեցող 1C- ի նման վաճառողը չէր կարող բաց թողնել եկամտաբեր շուկա դուրս գալու հնարավորությունը:

2006 թ. Կեսերին ընկերությունը ներկայացրեց նոր արտադրանքի թողարկումը `խոստումնալից անունով` "1C. Enterprise 8. Extension for Pocket Computers": 1C- ի մշակողները, որոնք տեսել են 8 -րդ հարթակի հեռանկարները, հույս ունեին, որ այժմ հնարավոր է դարձել առանց այդքան դժվարությունների մեկ գործիքով զարգանալ այն տարիներին հանրաճանաչ «Windows Mobile» բջջային օպերացիոն համակարգի համար:

Գործնականում ամեն ինչ շատ ավելի վատ տեսք ուներ: Մարմնավորել օրիգինալ գաղափարներայս գործիքը թույլ չի տվել: Պլաստիկ տոպրակ » Գրպանի համակարգչի ընդլայնում”Ավելի շատ հավելում էր որոշակի բնորոշ կազմաձևերի համար, քան զարգացման ամբողջական լուծում: Չի նախատեսվում ընդլայնել կազմաձևման գործառույթը `ավելացնելով նոր մետատվյալների օբյեկտներ: Բավականին պարզ բաներ մնացին երրորդ կողմի ծրագրավորողների ողորմածության մեջ. Օգտագործողի հետ փոխգործակցության նոր ձևերի ստեղծում, օգտագործողի իրադարձությունների կառավարում:

Այո, կային սահմանափակումների բոլոր տեսակի շրջանցումներ, բայց նույնիսկ դրանք թույլ չտվեցին իրոք բացվել: Բացի տեխնիկական սահմանափակումներից, սպառողները զգալի ֆինանսական խոչընդոտ են ունեցել: Այն ընկերությունները, որոնք որոշել են 1C- ից լուծում ներդնել, պարտավոր էին ձեռք բերել արդյունավետ PDA- ներ, ձեռք բերել լիցենզիաներ Windows Mobile- ի համար, ինչպես նաև վճարել 1C լուծման և վերջնական հայտի առաքման համար:

1C լուծումը չափազանց թանկ էր: Գումար խնայելուն սովոր ընկերությունները շարունակում էին օգտագործել այլընտրանքային լուծումներ: Ավելին, այլընտրանքների մշակողներին հաջողվեց իրենց արտադրանքին ապահովել ֆունկցիոնալություն `1C ստանդարտ լուծումների հետ փոխազդեցության համար:

Տեխնիկական սահմանափակումները և բարձր արժեքը թույլ չեն տալիս արտադրանքին կրկնել աշխատասեղանի հարթակի վիթխարի հաջողությունը: Բջջային կապի շուկան գրավելու գաղափարը:

դիմումները խափանվեցին:

Քայլ առաջ

Անհաջող նախագծի կորուստներն ու կորուստները վերջ չեն դրել հեռանկարային ուղղության զարգացմանը: 2013 թվականին 1C ընկերությունը ներկայացրեց նոր հարթակի 8.3 առաջին կայուն տարբերակը, որն ունի բջջային հավելվածների մշակման գործառույթ:

1C- ն ամբողջությամբ վերաիմաստավորեց շարժական «թեորեմի» լուծման մոտեցումը և հաշվի առավ նախորդ անհաջող արտադրանքի սխալները: Արդյունքը բոլորովին նոր գործիք է, որը ոչ մի կապ չունի իր նախորդի հետ և կենտրոնացած է բջջային ամենաարդիական հարթակների վրա `Android և iOS:

Բջջային հավելվածներ 1C ոճով

Բջջային հարթակների համար զարգացման հնարավորություններին լիարժեք ծանոթանալու համար մենք կփորձենք փոքր կոնֆիգուրացիա մշակել: Օգտագործելով վերջնական օրինակ ՝ դուք կկարողանաք ավելի լավ գնահատել առկա ֆունկցիոնալությունը և որոշել խնդիրները լուծելու համար 1C հարթակից օգտվելու հնարավորությունը:

Աշխատելու համար ձեզ հարկավոր է 1C: Enterprise 8.3 հարթակի վերջին թողարկումը: Բաշխման հանդերձանքի կրթական տարբերակը հասանելի է 1C պաշտոնական կայքում: Նրա հնարավորությունների օրինակ վերստեղծելն ավելի քան բավարար է:

Բացի 1C: Enterprise 8.3 հարթակից, մեզ անհրաժեշտ են մի շարք լրացուցիչ գործիքներ: Հոդվածում կքննարկվի Android հավելվածի մշակման օրինակ: Այս առումով, դուք ստիպված կլինեք ներբեռնել ՝ Android SDK և Apache WEB սերվեր: Առաջին բաղադրիչը պարունակում է այն ամենը, ինչ ձեզ հարկավոր է հավելվածը կառուցելու և փորձարկման համար էմուլատոր ստեղծելու համար, իսկ WEB սերվերը օգտակար է դրա համար արագ բեռնումբջջային OS- ի ծրագրեր:

Մեզ անհրաժեշտ է նաև «Բջջային ծրագրավորողի պլատֆորմի» առաքում: Այն պարունակում է կոնֆիգուրացիա ՝ ստեղծված բջջային հավելվածի կառուցման գործընթացը պարզեցնելու, ինչպես նաև բջջային ծրագրավորողի հարթակ: Այն պետք է տեղադրվի շարժական սարքի կամ էմուլյատորի վրա:

Google Play- ի միջոցով բաշխման համար պատրաստ ծրագիր ստեղծելու համար անհրաժեշտ կլինի ներբեռնել Apacheantեւ JavaJDK... Այս թեման դուրս է հոդվածի շրջանակներից, այնպես որ կարող եք մանրամասներ իմանալ այս գործիքների հետ աշխատելու և հավելվածը կառուցելու մասին իմ համապատասխան բաժնում:

Գործիքների կազմաձևում

Հարթակ » 1C: Ձեռնարկություն 8.3»Իսկ Apache վեբ սերվերը մատակարարվում են տեղադրիչներով և տեղադրվում են ստանդարտ եղանակով: Android SDKպարզապես անհրաժեշտ է այն անջատել առանձին գրացուցակում և գործարկել « sdk manager.exe»: Դուք կտեսնեք պատուհան `տեղադրման համար մատչելի փաթեթների ընտրությամբ: Փորձարկման համար, որը դիտարկվում է օրինակ հոդվածի շրջանակներում, ձեզ հարկավոր է ընտրել և տեղադրել. Android SDK գործիքներ, Ա ndroid պլատֆորմի գործիքներ, SDK հարթակ API 17.

Վերջին քայլը նոր ինֆոբազի ստեղծումն է: Նրանց համար, ովքեր կապված չեն զարգացման հետ » 1C: Ձեռնարկություն»Ես կբացատրեմ, որ այս հարթակի ցանկացած լուծում բաղկացած է ինֆոբազից և կազմաձևից: Նոր տվյալների բազայի ավելացումն իրականացվում է կոճակը սեղմելով » Ավելացնել»Սկսել պատուհանը: Հիմքը ավելացնելուց հետո բացեք այն « Կազմաձեւիչ».

Առաջին բջջային կազմաձևում

Կարգավորիչի հիմնական ընտրացանկում մենք կգտնենք բաժինը « Կազմաձևում«Եվ ընտրեք« Բաց կոնֆիգուրացիա »կետը: Կազմաձևման ծառը (այն օբյեկտներից, որոնցից բաղկացած կլինի ապագա ծրագիրը) կցուցադրվի պատուհանի ձախ կողմում: Ընտրեք դրա կազմաձևման արմատը և սեղմեք ստեղների համադրությունը » Alt + Enter". Հատկությունների խմբագիրը կբացվի կազմաձևողի պատուհանի աջ կողմում:

Եկեք զանգահարենք կոնֆիգուրացիա » ԱՆԵԼ«Իսկ« Օգտագործման նպատակը »գույքում մենք նշում ենք Շարժական սարքը". Ուշադրություն դարձրեք ՝ վազելով վերջին գործողությունը, կազմաձևման ծառի որոշ հանգույցներ կդառնան անգործուն: Unfortunatelyավոք, դուք չեք կարողանա օգտագործել բջջային հարթակի բոլոր մետատվյալների օբյեկտները:

Մեր խնդիրը լուծելու համար մենք պետք է կազմաձևման ծառում ստեղծենք մի քանի մետատվյալ օբյեկտ.


Ընթացակարգ AddTask (Առաջադրանք) ExportRecordManager = CreateRecordManager (); RecordManager.Period = CurrentDate (); Գրառումների կառավարիչ: Առաջադրանք = առաջադրանք; ManagerRecords.Status = Task.Status; ManagerRecord.Record (); Գործընթացի ավարտը

Ingուցակ 2. «Չփակված առաջադրանքների ցանկ» () գործառույթի ծածկագիրը

Function GetList of UnclosedTasks () Export Request = New Request; Query.Text = "SELECT | TasksStatusLast Slice. Task AS Task, | TasksStatusLast Slice.<>VALUE (Enumeration.Tasks.Winished)) AS TasksStatusSliceLast | | ՊԱՏՎԻՐՈYՄ | | ExecutionDateDATE "; Request.SetParameter (" CurrentDate ", CurrentDate ()); Return Request.Run (). Բեռնաթափում (); EndFunction

Մենք պարզեցինք տեղեկատվության գրանցամատյանից տվյալների ստացումը և դրանց գրանցումը, այժմ մենք կսովորեցնենք մեր տեղեկատուին աշխատել գրանցամատյանի հետ: Դա անելու համար ավելացրեք «մոդուլ» անունով ընդհանուր մոդուլ: Աշխատեք առաջադրանքներով". Դուք կարող եք անել առանց դրա, բայց ես անմիջապես ուզում եմ կենտրոնանալ կոդը մոդուլների մեջ կոտրելու հնարավորության վրա: Շատ 1C ծրագրավորողներ դեռ անտեսում են այս առաջարկությունը և նկարագրում ամբողջ տրամաբանությունը մեկ տեղում ՝ դրանով իսկ բարդացնելով ծածկագրի հետագա պահպանումը: Եկեք մոդուլում ստեղծենք նոր ընթացակարգ » Ստեղծեք նոր առաջադրանք«(Տես ցուցակ 3):

Ingուցակ 3. «Ստեղծել նոր առաջադրանք» ընթացակարգի ծածկագիր

Ընթացակարգ Ստեղծեք NewTask (Հղում) Արտահանում Եթե Link. Այս Խումբը Հետո Վերադառնա; EndIf; Հարցում = Նոր հարցում; Query.Text = "SELECT | TasksStatusLastSlice .Status | FROM | InformationRegister.TasksStatus.Wast Slice (& CurrentDate, Task = & Task) AS TasksStatusLast Slice"; Request.SetParameter ("CurrentDate", CurrentDate ()); Request.SetParameter («Առաջադրանք», Հղում); Արդյունք = Query.Run (): Ընտրեք (); If Result.Next () Այնուհետեւ If Result.Status<>Ref.Status Այնուհետեւ Information Registers.TasksStatus.AddTask (Հղում); EndIf; Հակառակ դեպքում Տեղեկատվություն Registers.TasksState.AddTask (Հղում); EndIf; Գործընթացի ավարտը

Նախքան նոր գրառում ստեղծելը, ստուգվում է առաջադրանքի համար առկա գրառումների առկայությունը: Եթե ​​գրառումն արդեն գոյություն ունի, ապա անհրաժեշտ է համեմատել առաջադրանքների կարգավիճակները: Եթե ​​գրանցամատյանի կարգավիճակը չի տարբերվում գրվող նյութի կարգավիճակից, ապա լրացուցիչ գրառում ստեղծելու կարիք չկա:

Վերջնական հպումով բացեք «Առաջադրանքներ» կատալոգի տարրի ձևը և ստեղծեք իրադարձությունների կառավարիչ « AfterRecordOnServer". Դրանում մենք կգրենք երրորդ ցուցակում նկարագրված ընթացակարգին ուղղված զանգ.

WorkWithTasks. Ստեղծեք նոր առաջադրանք (CurrentObject.Link);

Աշխատում է ինտերֆեյսի վրա

Հավելվածի հիմնական ֆունկցիոնալությունը պատրաստ է. Օգտագործողը կարող է առաջադրանքներ ստեղծել, և յուրաքանչյուր նոր առաջադրանք կազմում է պարբերական տեղեկատվական գրանցամատյանում գրառում: Հիմա անցնենք ինտերֆեյսի: Առաջ քաշենք առաջադրանքներով աշխատանքը: Ի վերջո, տրամաբանական է ցուցակը ցուցադրել դիմումը սկսելուց անմիջապես հետո: փակ առաջադրանքներիսկ նորը ստեղծելու ունակությու՞նը:

Կազմաձևման ծառի մեջ գտեք հանգույցը » Ընդհանուր ձևեր«Եվ ավելացրեք նոր ձևԱնունով " Աշխատասեղան". Եկեք բացենք ստեղծված ձևը ինտերֆեյսի կոնստրուկտորում և ավելացնենք այնպիսի պարագաներ, ինչպիսիք են. Արժեքների աղյուսակ". Եկեք այն անվանենք «OpenZachi»: Աղյուսակը պարունակում է երկու սյունակ - " Առաջադրանք"(ReferenceLink.Tasks) և" Կատարման ամսաթիվը»(Ամսաթիվ):

Հաջորդ քայլը ավելացված հենարանները քաշել ձևի վրա: Մենք պետք է ունենանք ինտերֆեյս ամենապարզ սեղանը... Չափեր չենք նշի, ինտերֆեյսի մասշտաբի վերաբերյալ մտահոգությունը կթողնենք հարթակին:

Ստեղծված աղյուսակի համար, գույքի տեսուչում, նշեք «« Միայն դիտել«Եվ գույքը» Հրամանի վահանակի դիրքը«Մենք նշելու ենք« Ոչ »արժեքը: Մենք աղյուսակը կլրացնենք դինամիկ տեղեկատվությամբ, այնպես որ օգտագործողի կողմից խմբագրելն իմաստ չունի:

Այժմ եկեք նկարագրենք իրադարձության մշակողը «OnCreateAtServer» ձևի համար: Եկեք դրան ավելացնենք մեկ տող կոդ.

OpenTasks.Load (Տեղեկատվական գրանցումներ. TasksStatus. Ստացեք չփակված առաջադրանքների ցուցակ ());

Կոդում մենք վերաբերում ենք մեր նկարագրած ընթացակարգին » GetList of UnclosedTasks»Եվ դրա կատարման արդյունքը տեղադրված է աղյուսակում:

Եկեք վերադառնանք ձևի կոնստրուկտորին և ավելացնենք «Սովորական խումբ առանց ցուցադրման» տիպի խումբ երկու կոճակներով. " Ստեղծել"և" Թարմացնել". Գույքը » Խմբավորում«Ավելացված խմբի համար սահմանեք« Հորիզոնական »արժեքը: Կոճակների ավելի արտահայտիչ ձևավորման համար եկեք պատկերներ ավելացնենք և փոխենք լռելյայն տառատեսակը:

Այժմ ընտրենք կոճակը » Ստեղծել«Եվ հարցրեք նրան գլոբալ թիմ « Առաջադրանքներ ՝ ստեղծել". Սա թույլ կտա ձեզ առաջադրանքներ ստեղծել ՝ առանց գրացուցակը մուտքագրելու: Սեղմելով երկրորդ կոճակը ՝ մենք կթարմացնենք աղյուսակի բովանդակությունը առաջադրանքներով: Դա անելու համար հարկավոր է ստեղծել լրացուցիչ հրամանձևեր:

Ձևի բոլոր նոր հրամանները ստեղծվում են համանուն ներդիրում « Հրամաններ". Սկզբունքը պարզ է. Մենք ավելացնում ենք նոր հրաման, նկարագրում ենք դրա գործողության կոդը, այնուհետև հրամանը կապում ենք ինտերֆեյսի հետ, մեր դեպքում `կոճակի հետ:

Նաև հիշեք, որ մենք մշակում ենք կառավարվող ծրագիր, ուստի պետք է հստակ տարբերակել հաճախորդի և սերվերի ծածկագիրը: Երբ կոճակը կտտացվի, կլինի ենթատեքստ » Հաճախորդի վրա", Եվ մենք տվյալների բազայից տվյալներ կստանանք սերվերից: Կոդում դա հետևյալն է.

& OnClient Procedure UpdateTasksList (Command) UpdateList (); EndProcedure & AtServer Procedure OnCreateAtServer (Failure, StandardProcessing) OpenTasks.Load (Information Registers.TaskStatus.GetList of Not ClosedTasks ()); Գործընթացի ավարտը

Այժմ եկեք սահմանենք մեր աշխատասեղանի ձևը որպես տարածք մեկնարկային էջ... Բացեք կազմաձևման հատկությունները (ընտրեք վերին հանգույցը և կտտացրեք « Alt + Enter") Եվ սահմանեք արժեքը" Մեկ սյունակ", Theուցակին մեր ձևը ավելացնելուց հետո" Աշխատասեղան».

Դիմումը լիովին պատրաստ է, և ժամանակն է այն փորձարկել աշխատանքում: Փորձեք գործարկել օրինակը և ստեղծել մի քանի առաջադրանք, այլ կարգավիճակով, քան « Ավարտված է". Տեղեկատվական գրանցամատյանը թարմացվել է նոր գրառումներով (դա կարելի է դիտել ընտրացանկի կետի միջոցով « Բոլոր գործառույթները") Եվ դրանցից մի քանիսը ցուցադրվում են աշխատասեղանին:

Android- ում վայրէջք

Կազմաձևը հիանալի է աշխատում աշխատասեղանի վրա, և այժմ ժամանակն է այն փորձարկել բջջային օպերացիոն համակարգի էմուլյատորի վրա: Նոր էմուլյատոր պատրաստելու համար գործարկեք հրամանի թարգմանիչը ( cmd.exe) և Android SDK- ով անցեք բաշխման «toos» գրացուցակին: Գործարկել հրամանը " android.bat avd", Որը գործարկելու է վիրտուալը Android սարքեր... Դրա մեջ կտտացրեք «Ստեղծել» կոճակը և հայտնվող պատուհանում նշեք վիրտուալ սարքի պարամետրերը: Իմ աշխատանքային միջավայրում ես որոշեցի ընդօրինակել Nexus S Android- ովտարբերակ 4.2.2. (API մակարդակ 17):

Սարքը ստեղծելուց հետո մենք անմիջապես գործարկելու ենք այն: Մինչ Android- ը բեռնում է, եկեք վերադառնանք կազմաձևիչին և հրապարակենք մեր ծրագիրը վեբ սերվերում: Կազմաձևողի հիմնական ընտրացանկում ընտրեք տարրը " Կազմաձևում» -> « Բջջային հավելված» -> « Հրապարակել". Հրապարակման կարգավորումների պատուհանում նշեք ծրագրի անունը (այն կարող է լինել ամեն ինչ), վեբ սերվերը (մեր միջավայրում այն ​​պետք է լինի մեկը) և կարգավորումները պահելու գրացուցակը:

Որպես անուն նշելով « todo-mobile", Դիմումը հասանելի կլինի -" http: // host / todo-mobile". Կտտացրեք «լավ» և փորձեք դիտարկիչով մուտք գործել հրապարակված ծրագիր: Հաջողության դեպքում սերվերը կվերադարձնի առաջացած կազմաձևի XML կոդը:

Վերադարձեք էմուլյատոր և ներբեռնեք ծրագիրը բջջային ծրագրավորողի հարթակով դրա մեջ: Հավելվածի ֆայլն ինքնին հասանելի է բջջային ծրագրավորողի հարթակի առաքման հետ միասին և կոչվում է «1cem-arm.apk»: Այս ծրագիրը էմուլյատորում տեղադրելու համար մենք կօգտագործենք օգտակար « adb.exe«Գրացուցակից» հարթակ-գործիքներ»: adb.exe install –r 1cem-arm.apk.

Հաջող տեղադրումից հետո բացեք էմուլյատորի դիմումների ցանկը և գործարկեք բջջային ծրագրավորողի հարթակը: Բացվող պատուհանում կտտացրեք « Ավելացնել դիմում«Իսկ« հասցե »դաշտում նշեք մեր վեբ սերվերի հասցեն: ես ունեմ դա http://192.0.168.106/todo-mobile... Սեղմել " Ավելացնել«Եվ մեր կազմաձևը հաջողությամբ տեղափոխվեց բջջային հարթակ: Դիմումը պատրաստ է գնալ: Փորձարկեք արդյունքը և վերադառնաք կազմաձևիչին, ժամանակն է ծրագրերին տրամադրել «բջջային գործառույթ»:

SMS / MMS հաղորդագրություններ ուղարկելը

SMS / MMS- ով աշխատելու գործառույթներհաղորդագրությունների փոխանցման շարժական հարթակները տարբեր կերպ են աջակցվում: Օրինակ, երբ ծրագիրը աշխատում է Android- ով, մշակողը հնարավորություն ունի բաժանորդագրվել SMS- ին և ստանալ նոր հաղորդագրություններ անմիջապես ստանալուց հետո: Ավաղ, այս գործառույթը հասանելի չէ iOS- ում, այնպես որ փաստաթղթերի մշակումը պետք է ձեռքի տակ լինի:

Համար SMS ուղարկելըհաղորդագրությունների տրամադրված օբյեկտ SMS հաղորդագրություն... Եկեք դիտարկենք մի օրինակ.

& OnClient ընթացակարգ SendSMSMessage (Ստացող, MessageText) NewMessage = Նոր SMSMessage (); NewMessage.Text = MessageText; NewMessage.Recipients.Add (Ստացող); MeansTelephony.SendSMS (NewMessage); Գործընթացի ավարտը

Կոդը բավականին պարզ է և գրեթե մեկնաբանությունների կարիք չունի: Այժմ եկեք նայենք մուտքային հաղորդագրություններին բաժանորդագրվելուն.

& OnClient ընթացակարգ ConnectMessageReceivingHandler () SubscribeOnMessages = NewNotificationDescription ("NewMessagesProcessing", ThisObject); MeansTelephony.ConnectSMSMessage handler (SubscribeMessages); EndProcedure & AtClient Procedure NewMessages Handling (Message, AdditionalParameters) // Կառավարեք նոր հաղորդագրություն //Message.Send, Message.Text; Գործընթացի ավարտը

Ընթացակարգ » Նոր հաղորդագրությունների մշակում»Կզանգահարվի ամեն անգամ, երբ նոր SMS է ստացվում: Պարամետրի միջոցով » Հաղորդագրություն«Տիպի օբյեկտ» SMS հաղորդագրություն»Եվ մենք կարող ենք հեշտությամբ ստանալ հաղորդագրության տեքստը և ուղարկողի մասին տեղեկությունները:

MMS հաղորդագրությունների հետ աշխատանքը կատարվում է նույն ձևով: Նախ, մենք ստեղծում ենք SMS հաղորդագրություն, այնուհետև դրան ավելացնում ենք կցորդ (օրինակ ՝ պատկերներ): Նման պարզ գործողությամբ SMS- ը վերածվում է MMS- ի.

NewMessage = Նոր SMSMessage (); Հավելված = Նոր MMS հավելված; Հավելված. Տվյալներ = Նկար; Attachment.ContentType = "image / jpeg"; MMS հաղորդագրություն: Հավելվածներ Ավելացնել (Հավելված);

Բջջային հավելվածից զանգեր կատարելը

Programրագրով զանգ կատարելը կատարվում է «Հեռախոսակապի գործիքներ» գլոբալ օբյեկտի «DialNumber» մեթոդով: Նախքան մեթոդին զանգելը, ցանկալի է ստուգել զանգ կատարելու հնարավորությունը.

Եթե ​​հեռախոսակապը նշանակում է. EndIf;

Պարամետր » Անմիջապես զանգահարեք»Ազդում է հավաքման կատարման վրա: Երբ այն հավասար է « Ճիշտ», Համարը ինքնաբերաբար հավաքվում է հետո ստանդարտ կիրառությունզանգեր կատարելը. Եթե ​​սահմանվել է «Կեղծ», օգտագործողը նույնպես կտեսնի ստանդարտ ինտերֆեյսզանգահարելու ծրագիր, բայց ձեզ հարկավոր է սեղմել " Կանչել».

Callանգերի մատյան

Բջջային հարթակը ծրագրավորողին հնարավորություն է տալիս փոխազդել զանգերի մատյանի հետ: Օրինակ, հեշտությամբ կարող եք ստանալ ելքային, բաց թողնված կամ մուտքային զանգերի ցանկ: Ֆունկցիան աջակցվում է միայն Android- ում.

CallLog = Telephony Means.GetCallLog (); Ընտրություն = Նոր SelectionDataComposition; SelectionElement = Selection.Elements.Add (տեսակը («DataCompositionSelectionElement»)); SelectionElement.LeftValue = NewDataCompositionField ("RingType"); SelectionItem.ComparisonType = LayoutComparisonTypeData.Equal; SelectionElement.RightValue = CallLogCallType.Missed; SelectionItem.Usage = True; Callանգերի մատյանների գրառումների ցուցակ = Callանգերի մատյան: Գտեք գրառումներ (ընտրություն); // CallLog գրառումների ցանկը պարունակում է գրառումների հավաքածու

Երկրաբաշխում

Գրեթե ցանկացած ժամանակակից սմարթֆոնունի աշխարհագրական տեղորոշման որոշման գործառույթ: Դուք կարող եք օգտագործել այս գործառույթը ներկառուցված 1C լեզվից: Սարքի ընթացիկ կոորդինատների ձեռքբերումը պայմանականորեն կարելի է բաժանել 2 փուլի `տեղաբաշխման մատակարարի ընտրություն և ստացված կոորդինատների մշակում.

// Թող մատուցողի ընտրությունը տրամադրվի IdealProvider = Geo Positioning Tools հարթակին: Ստացեք առավել ճշգրիտ մատուցողը (); Coordinates = Positioning.GetLastLocation (IdealProvider); // Եթե կոորդինատները վաղուց են ստացվել, ապա թարմացրեք If Coordinates = Undefined OR CurrentDate () - Coordinates.Date> 3600 Այնուհետեւ Geolocation Tools.UpdateLocation (IdealProvider, 60); Coordinates = Positioning.GetLastLocation (IdealProvider); EndIf;

Աշխատեք մուլտիմեդիա գործառույթների հետ

Մշակողը հնարավորություն ունի լուսանկարներ, տեսանյութեր, աուդիոձայնագրություններ անել ներկառուցված լեզվով. Լուսանկարել(), MakeVideo ձայնագրում(), Կատարեք աուդիո ձայնագրություն().

Ո՞ր բջջային OS- ի համար է ավելի լավ մշակվել 1C- ով:

Չնայած իմ սիրուն Apple տեխնոլոգիա, ամենալավն այն է, որ բջջային հավելվածներ ստեղծեք ՝ օգտագործելով Android- ի համար նախատեսված 1C հարթակը: Դրա համար մի քանի պատճառ կա, բայց ամենակարևորը աջակցվող գործառույթներն են: Unfortunatelyավոք, iOS- ի դեպքում շատ անհրաժեշտ բաներ չեն ապահովվում: Օրինակ, SMS հաղորդագրություններին ծրագրային ապահովման բաժանորդագրություն սահմանելու կամ զանգերի մատյանին փոխազդելու անկարողությունը կարող է անհնարին դարձնել որոշ գաղափարների իրականացումը: Android- ն այս առումով ավելի բարեկամական է: Մի մոռացեք սարքերի արժեքի մասին: Ոչ բոլոր ընկերությունները չեն ցանկանա լուսաբանել Apple- ի բջջային սարքերը:

Ավարտման փոխարեն

Հարթակ » 1C: Ձեռնարկություն 8»Գործնականում ապացուցեց իր պատրաստակամությունը` դառնալ կորպորացիայի զարգացման պարզ գործիք: Mobileրագրեր բջջային հարթակների համար: Հոդվածում դիտարկված օրինակները դրա ավելորդ հաստատումն են: Ամենևին էլ անհրաժեշտ չէ ռեսուրսներ ծախսել հայրենի գործիքներ սովորելու համար, եթե հավելվածի ֆունկցիոնալությունը տեղավորվում է բջջային հարթակի հնարավորությունների մեջ, և ընկերությունում գերակշռում են 1C արտադրանքները:

Բոլորովին վերջերս, 1C Enterprise 8.3 բջջային հարթակը 1C- ով տարածվեց միայն վճարովի բաժանորդների միջև: Բայց ոչ վաղ անցյալում, 1C- ն վերանայեց իր քաղաքականությունը այս հարցըև այժմ բջջային հարթակի էլեկտրոնային տարբերակը անվճար բաժանվում է դրա հետ միասին:

Ի՞նչ է 1C 8.3 բջջային հարթակը:

Հավանաբար դուք արդեն գիտեք, որ 1C Enterprise 8.3 հարթակը ինքնին թույլ է տալիս զարգացնել բջջային հավելվածներ: Միեւնույն ժամանակ, բջջային հավելվածի մշակումն իրականացվում է այնպես, ինչպես «նորմալ» կոնֆիգուրացիայի մշակումը: Բայց ինչպե՞ս կարելի է այս կերպ մշակված կոնֆիգուրացիան գործարկել սմարթֆոնի կամ պլանշետի վրա: Այս նպատակների համար մեզ անհրաժեշտ է բջջային հարթակ 1C Enterprise 8.3:

Բջջային հարթակ 1C Enterprise 8.3ծրագիր է, որը թույլ է տալիս տեղադրել և գործարկել կոնֆիգուրացիաներ (ծրագրեր) սմարթֆոնների և պլանշետների վրա Google Androidկամ Apple iOS:

1C բջջային հարթակի ամենակարևոր առավելությունն այն է, որ ծրագիրը (կազմաձևումը) մշակվում է միաժամանակ երկու բջջային օպերացիոն համակարգերի համար, այնուհետև պարզապես տեղադրվում է շարժական սարքի վրա: Այսպիսով, 1C- ում բջջային հավելված գրելով, մենք կարող ենք այն անմիջապես տեղադրել ընկերության բոլոր աշխատակիցներին ՝ անկախ նրանից, թե որ օպերացիոն համակարգով (Android կամ iOS) է աշխատում նրանց հեռախոսը կամ պլանշետը:

Կարևոր! Բջջային հավելվածների զարգացման համար մենք խստորեն խորհուրդ ենք տալիս օգտագործել 1C պլատֆորմի տարբերակը ոչ ցածր, քան 8.3.4.482 -ը: 1C Enterprise հարթակի 8.3.4.482 կրթական տարբերակը ներառված է 1C բջջային հարթակի այս բաշխման մեջ: Դուք կարող եք ծանոթանալ հարթակի կրթական տարբերակի սահմանափակումներին

Բջջային հարթակ 1C: Ձեռնարկությունը գործիքների և տեխնոլոգիաների շարք է ՝ բջջային օպերացիոն համակարգի iOS, Android, Windows Phone / 8.1 / 10 բջջային ծրագրերի կիրառման արագ զարգացման համար ՝ օգտագործելով նույն զարգացման միջավայրերը (կազմաձևող կամ 1C: Ձեռնարկությունների զարգացման գործիքներ) և նույն զարգացումը: մեթոդներ, որոնք օգտագործվում են «նորմալ» 1C ծրագրերի համար: Արդյունքը ինքնավար, անցանց ծրագրեր են, բայց արտաքին աշխարհի հետ տեղեկատվություն փոխանակելու ունակությամբ `օգտագործելով հարթակի կողմից տրամադրված ինտեգրացիոն գործիքների լայն շրջանակ` վեբ և HTTP ծառայություններ, էլ. Փոստ և այլն: Քանի որ փոխանակման արձանագրությունները անկախ են պլատֆորմից, 1C բջջային հարթակը, ի թիվս այլ բաների, միջոց է արագ սերվերի ստեղծման համար գրեթե ցանկացած սերվերի լուծման համար:

Նախապատմություն

Դեռևս 1C- ի օրերին ՝ 8.0 ձեռնարկության տարբերակ (և ավելի ուշ տարբերակներ), կար ծրագրային արտադրանք, որը կոչվում էր «Extension for Pocket Computers»: Ընդլայնումը թույլ է տալիս արտադրանք ստեղծել միայն Windows Mobile- ի, Windows CE- ի և այլն: Ապրանքը ուներ իր կազմաձևիչը և սերվերը և աջակցվում էր մինչև 1C: Enterprise 8.3 տարբերակի թողարկումը: Ընդլայնման վերջին տարբերակը (8.2.9) թողարկվել է 2013 թվականի հոկտեմբերին, իսկ ամբողջական աջակցությունն ավարտվել է 2015 թվականի հունվարի 1 -ին:
Ընդլայնումը սահմանափակ կիրառություն ուներ նույնիսկ Windows Mobile- ի հաղորդավարների ծաղկման շրջանում, և բջջային շուկայից նման սարքերի հեռանալը ակնհայտորեն չավելացրեց այս ծրագրային արտադրանքի ժողովրդականությունը: IOS և Android սարքերը զբաղեցրել են բջջային սարքերի գրեթե ամբողջ շուկան, և ակնհայտ դարձավ, որ այս օպերացիոն համակարգերի աջակցությունը համակարգի համար առանցքային կետերից մեկն է, որը պետք է գործի ժամանակակից բջջային աշխարհում: Նաև ակնհայտ էր, որ գոյություն ունեցող 1C: Enterprise պլատֆորմի հիմնական մոտեցումը պետք է օգտագործվի նաև բջջային սարքերի վրա. Կիրառական մշակողը պետք է առաջին հերթին մտածի կիրառական խնդիրների լուծման մասին, և երկրորդ `օպերացիոն համակարգի ինչ հնարավորությունների մասին է նա լուծում: այս խնդիրները .... Այլ կերպ ասած, ձեզ անհրաժեշտ է գործիք, որը մեկուսացնում է հավելվածի մշակողին բջջային ՕՀ -ի և զարգացման գործիքի առանձնահատկություններից:

Բջջային հարթակ

Ձեռքի համակարգիչների համար ընդլայնման մշակման և շահագործման փորձի հիման վրա որոշվեց մշակել մասնագիտացված համակարգ, որը կբավարարի մի քանի պահանջ.
  • այն պետք է աջակցի ժամանակակից հանրաճանաչ բջջային օպերացիոն համակարգերին և նրանց վերահսկողության տակ գտնվող սարքերին: Նախ, դրանք Apple- ի iOS- ն են, իսկ Google- ը `Android- ը:
  • այս համակարգը պետք է թույլ տա զարգացած ծրագրերի օգտագործումը ժամանակակից բջջային սարքերում ընդունված ոճով: Մասնավորապես, ինտերֆեյսը պետք է հենվի ձեռքի կառավարման վրա (բառի բառացի իմաստով) `սենսորային էկրանների միջոցով:
  • համակարգը պետք է ապահովի ծրագրավորման միասնական ինտերֆեյս `տարբեր հատուկ մեխանիզմների ներդրման համար` անկախ օգտագործվող շարժական ՕՀ -ից:
  • մշակողը պետք է օգտագործի նույն գործիքը և զարգացման մոտեցումները, ինչ «սովորական» համակարգչի համար ծրագրեր մշակելիս:
  • ծրագրերի մշակողը պետք է կիրառական լուծում մշակի ծանոթ զարգացման միջավայրում ՝ հնարավորության դեպքում օգտագործելով նույն ծածկագիրը աշխատասեղանի և բջջային համակարգերի համար:
  • Բջջային սարքի վրա աշխատող կիրառական լուծման միջերեսը պետք է նման լինի տարբեր հարթակների համար և, ընդհանուր առմամբ, միանշանակ ճանաչելի:
Մշակման արդյունքը եղավ այսպես կոչված բջջային հարթակը, որը թողարկվեց 2013 թվականի մայիսի 29-ին iOS և Android տարբերակների համար: 1C: Enterprise բջջային հարթակը գործիքների և տեխնոլոգիաների մի շարք է, որը թույլ է տալիս ծրագրեր ստեղծել iOS, Android, Windows Phone / 8.1 / 10 բջջային օպերացիոն համակարգերի համար ՝ օգտագործելով զարգացման նույն միջավայրը (Configurator) և զարգացման նույն մեթոդները, ինչ սովորական ծրագրերի համար: 1C: Ձեռնարկությունների հարթակում: Արդյունքն ինքնուրույն, անցանց ծրագրեր են, բայց արտաքին աշխարհի հետ տեղեկատվություն փոխանակելու ունակությամբ `օգտագործելով հարթակի կողմից տրամադրված ինտեգրացիոն գործիքների լայն շրջանակ` վեբ և HTTP ծառայություններ, էլ. Փոստ և այլն:
Բջջային հարթակը բավականին լավ ընդունվեց համայնքի կողմից, սկսեցին հայտնվել այս թեմայով տարբեր հոդվածներ (օրինակ, և): Բջջային սարքերի ճնշող մեծամասնության վրա միաժամանակ աշխատող լիարժեք ֆունկցիոնալ ծրագիր մշակելու համար այժմ պահանջվել է նվազագույն ժամանակ և գիտելիք, որն էապես չի տարբերվում 1C: Enterprise հարթակում «կանոնավոր» ծրագրերի մշակողի գիտելիքներից: . Անկասկած, մուտքի նման ցածր շեմը գրավում է այն ծրագրավորողներին, ովքեր պետք է որոշ հիմնական գործառույթներ ապահովեն դաշտային աշխատողների, ղեկավարների և այլ շարժական աշխատակիցների համար, ովքեր պետք է աշխատեն կորպորատիվ համակարգով:
Հեշտ է սկսել բջջային հավելվածի մշակումը 1C: Enterprise հարթակում: Configurator- ում «Օգտագործման նպատակը» հատկությունը կազմաձևեք «Շարժական սարք» արժեքին: Այս դեպքում դիմումի կազմաձևման որոշ օբյեկտներ կդառնան անհասանելի (բնորոշ տեսակների գծապատկերներ, հաշիվների գծապատկերներ և այլն), բայց բջջային ծրագրերին հատուկ հատկություններ (օրինակ ՝ ներկառուցված մուլտիմեդիա և շարժական սարքի տեղաբաշխում և այլն): ) հասանելի կդառնա:


Միևնույն ժամանակ, կարող եք կարգաբերել հիմնական կիրառման ալգորիթմները (որոնք անմիջականորեն կապված չեն բջջային բնութագրերի հետ) անմիջապես մշակողի համակարգչի Configurator- ում: Միևնույն ժամանակ, խորհուրդ է տրվում շրջանակի այն հատվածները, որոնցում «բջջային» գործառույթը կանչվում է համապատասխան հրահանգներով `նախամշակողին` անձնական համակարգչի վրա ծածկագիրը կատարելիս սխալներից խուսափելու համար.
#Եթե MobileApplicationClient Then Data = GeolocationServer.GetProviderName (); # ՎերջԵթե
Բջջային հարթակի 8.3.7 տարբերակից սկսած ՝ հավելվածի կարգաբերումը անմիջապես բջջային սարքում հասանելի դարձավ (ավելին ՝ ստորև):

Բջջային հարթակում զարգանալը կարող է հետևել տարբեր մոտեցումների, սակայն մի քանի հիմնական կետեր կարող են ընդգծվել: Իրական բջջային հավելվածի կառուցման տեսանկյունից, դրա ֆունկցիոնալ հարստությունն ու դերը ձեռնարկության ՏՏ ենթակառուցվածքներում.

  • բջջային հավելվածը կարող է լինել գոյություն ունեցող ձեռնարկության տեղեկատվական համակարգի անբաժանելի և անբաժանելի մասը: Բջջային հավելվածը կապահովի ինտերֆեյս և այլ հնարավորություններ (ներառյալ տվյալների փոխանակումը) `հարմարեցված առկա տեղեկատվական համակարգի հնարավորություններին: Այս դեպքում բջջային հավելվածը շատ սերտորեն կապված է «սովորական» տեղեկատվական համակարգի հետ և չի կարող գործել դրանից անջատ:
  • բջջային հավելվածը կատարում է կոնկրետ խնդիրներ, որոնք գործնականում կապ չունեն ձեռնարկության տեղեկատվական համակարգի հետ: Բջջային հավելվածի և տեղեկատվական համակարգի միջև փոխանակվում է տվյալների միայն նվազագույն փաթեթ: Այս դեպքում, ամենայն հավանականությամբ, բջջային հավելվածը կկատարի փոխանակում ըստ որոշ ստանդարտացված արձանագրության, ինչը հնարավորություն է տալիս օգտագործել այս բջջային հավելվածը բոլորովին այլ դեպքերում և իրավիճակներում:
Վերը նկարագրված երկու իրավիճակները կարելի է համարել ծայրահեղ տարբերակներ: Բայց դրանք զարգացման միակ տարբերակները չեն: Applicationրագրի մշակողը կարող է ինքնուրույն ընտրել բջջային հավելվածի և այն տեղեկատվական համակարգի միջև ինտեգրման տարբերակները, որոնք գործում են որպես դրա հիմնական գրասենյակ:
Բջջային հավելվածը մշակված է որպես ամբողջովին ինքնուրույն կազմաձև, սակայն այն կարող է որոշ աղբյուրի կոդի հետ կիսվել «ծնողի» կազմաձևով: Ի դեպ, «ծնողի» կոնֆիգուրացիան կարող է ֆիզիկապես գոյություն չունենալ (օրինակ, եթե դուք մշակում եք ինչ -որ ունիվերսալ ծրագիր, որը ունիվերսալ արձանագրության միջոցով կարող է աշխատել տարբեր համակարգերի հետ):

Շարժական հարթակի սարք

Ի՞նչ է բջջային հարթակը և ինչո՞վ է այն զբաղված:
Ազնվության համար պետք է ասել, որ բջջային հարթակը միայն ամբողջ համալիրի բաղադրիչներից մեկն է, որի շնորհիվ 1C: Enterprise 8 -ը աշխատում է շարժական սարքերի վրա: Այսպիսով, կիրառական մշակողը գործում է հետևյալ բաղադրիչներով.
  1. Բջջային հարթակն ինքնին 1C: Enterprise շրջանակի շարժական մասն է: Այն կարող է լինել սովորական (որը օգտագործվում է հավելվածների խանութում հրապարակման համար հավելված ստեղծելու ժամանակ) և բջջային ծրագրավորողի հարթակ, որն օգտագործվում է (անակնկալ) բջջային հավելվածի մշակման ժամանակ:
  2. Բջջային կազմաձևը 1C: Enterprise ծրագրային համակարգի կազմաձևումն է, որը գրված է XML ֆայլի տեսքով:
  3. Բջջային հարթակի և բջջային կազմաձևման համադրությունը հանգեցնում է բջջային հավելվածի:
  4. Բջջային հավելվածների կոլեկտորը կիրառական մասնագիտացված լուծում է, որը կարող է բջջային հարթակը, կազմաձևումը, շողացող էկրանները, պատկերակները և այլ բաղադրիչները վերածել պատրաստի բջջային հավելվածի ֆայլի, որը կարելի է ներբեռնել Apple AppStore, Google Play, Windows Phone Apps / Windows Apps .
Ինչու՞ է ամեն ինչ այդքան դժվար: Ինչու՞ դա հնարավոր չէ անել բջջային սարքի վրա այնպես, ինչպես դա արվում է մեծ հարթակում: Նրանք տեղադրել մեկ բջջային հարթակ սարքի վրա և բեռնե՞լ դրա մեջ ցանկացած քանակի կազմաձևեր / ծրագրեր: Սա արգելված է դիմումների լիցենզավորման սահմանափակումներով, որոնք տարածվում են հավելվածների խանութների միջոցով: Օրինակ, եթե ձեր ծրագիրը ներբեռնում է գործարկվող ծածկագիրը (սցենարի տեսքով) ինտերնետով, ապա այն երբեք չի երևա Apple App Store- ում: Այնուամենայնիվ, պետք է հասկանալ, որ ծրագրավորողի բջջային հարթակում գտնվող ցանկացած կոնֆիգուրացիա ներլցնելու հնարավորությունը նախատեսված չէ բջջային հավելվածների բաշխման համար նույնիսկ նույն ընկերության ներսում, առավել ևս ՝ մշակողի հաճախորդներին:
Բջջային հավելվածի թիրախային բջջային սարքում հայտնվելուց հետո անհրաժեշտություն է առաջանում օգտագործել մի տեսակ տվյալների բազա (տվյալները պետք է պահվեն ինչ -որ տեղ): Որպես տվյալների բազայի շարժիչ, շարժական հարթակն օգտագործում է տվյալների բազայի սեփական շարժիչը, որը շարժական հարթակ է տեղափոխվում անհատական ​​համակարգչի համար նախատեսված հարթակից: Այն բավականին կոմպակտ և բավականաչափ արագ է, բայց գլխավորն այն է, որ այն ապահովի ճիշտ նույն վարքագիծը, որին սովոր էին ծրագրերի մշակողները ՝ անհատական ​​համակարգիչների համար հարթակում աշխատելիս:
Հարկ է նաև նշել, որ բջջային հավելվածն իր ներսում կառուցված է նույն սխեմայով, ինչ սովորական հարթակի աշխատանքը ՝ ֆայլերի վրա հիմնված տեղեկատվական բազայով. Կա հաճախորդի մաս, կա սերվերի մաս, կա տվյալների բազա և կա հաճախորդ-սերվեր փոխազդեցություն:
Բջջային հարթակն ինքնին գրված է որպես հարազատ ծրագիր, որը կազմված է երկուական կոդի մեջ ՝ բջջային աշխարհում ներկայումս օգտագործվող հիմնական պրոցեսորային ճարտարապետությունների համար. Դրանք ARM v5 և ավելի բարձր և x86 ճարտարապետություններ են:
Բացի այդ, հատուկ թույլտվություններ կարող են պահանջվել բջջային սարքի որոշակի հնարավորությունների հետ փոխազդեցության համար (հեռախոսակապ, GPS, ներկառուցված տեսախցիկով աշխատանք և այլն): IOS- ի համար դրանք ուղղակիորեն սահմանվում են հենց հավելվածի գործընթացում, իսկ Android- ի համար թույլտվություններ են նշվում ՝ ծրագիր ստեղծելիս: Բջջային հավելված մշակելիս նշվում են պահանջվող թույլտվությունները և օգտագործվում են բջջային հավելվածներ ստեղծողի կողմից, սակայն շինարարի մասին ավելի ուշ:

Մի փոքր մշակողի հարթակի մասին

Մինչ մենք մշակում ենք բջջային հավելված, մենք կապված չենք բջջային հավելվածների համար կիրառվող խանութների միջոցով բաշխված լիցենզավորման սահմանափակումների հետ: Սա նշանակում է, որ մենք կարող ենք օգտագործել 1C բջջային հարթակը այնպես, ինչպես օգտագործում ենք «մեծ» հարթակը անհատական ​​համակարգչում. Գործարկվելուց հետո հարթակը մեզ ցույց կտա դրանում գրանցված ծրագրերի ցանկը.

Հարթակին նոր ծրագիր ավելացնելու համար անհրաժեշտ է տեղադրել XML ֆայլ `դրա նկարագրությամբ` HTTP արձանագրության միջոցով շարժական սարքից հասանելի ռեսուրսի վրա: Դա անելու ամենահարմար եղանակը Configurator- ից է ՝ «Կազմաձև \ Բջջային հավելված \ Հրապարակել» ցանկի միջոցով: Այս դեպքում կիրառման կազմաձևով XML ֆայլը տեղադրվում է մշակողի համակարգչի վեբ սերվերի վրա (համապատասխանաբար, այս համակարգիչը պետք է ունենա վեբ սերվեր ՝ IIS կամ Apache):

Եթե ​​ծրագրի համար նշվում է «Վերագործարկեք կազմաձևիչից» տարբերակը, բջջային սարքի դիմումը ինքնաբերաբար կթարմացվի մշակողի համակարգչից ամեն անգամ, երբ ծրագրավորողը թարմացնում է վեբ սերվերում տեղադրված XML կազմաձևման ֆայլը:
Երբ թույլատրված է «Վրիպազերծումը թույլատրված է» տարբերակը, հնարավոր է, որ ծրագրաշարի քայլ առ քայլ կարգաբերումը բջջային սարքում կազմաձևողից մշակողի համակարգչում լինի (Կարգավորիչում ՝ «Deառայություն Ընտրանքներ "ընտրացանկը պետք է ընտրվի): Եթե ​​կազմաձևում կոդի մեջ դրեք ընդմիջման կետեր և ընտրեք «Բջջային ծրագիր - սկսեք կարգաբերում» հրամանը, սարքի բջջային հավելվածը կդադարի, երբ գործարկվող ծածկագիրը հասնի ճեղքման կետին, և Կարգավորիչում կարող եք դիտել արժեքները: փոփոխականներ, զանգերի բուրգ և այլն:

Ինչ կարող է դա անել:

Այսպիսով, ինչի՞ է ընդունակ բջջային հարթակը: Բավական:)
Եթե ​​դուք չեք օգտագործում «1C: Ձեռնարկություն» հատուկ տերմինները, ապա բջջային հարթակը հնարավորություն է տալիս աշխատել կարգավորիչ և տեղեկատու տեղեկատվության հետ, կազմել որոշ արտաքին գործողություններ նկարագրող փաստաթղթեր, դիտել հաշվետվություններ, արտաքին աշխարհի հետ շփվել ինտերնետային ծառայությունների միջոցով և այլն: ավելին: Նրանք այն ծրագրավորողին հնարավորություն է տալիս գրել բավականին ֆունկցիոնալ ծրագիր, օրինակ ՝ տնային ֆինանսների հաշվառման ծրագիր, առևտուր այցելելու ծրագիր և այլն:
Բայց բացի անհատական ​​համակարգչի համար նախատեսված հարթակից սովորական գործառույթից, բջջային հարթակը պետք է ապահովի աշխատանք ՝ հատուկ հնարավորություններով, որոնք բնորոշ են միայն շարժական սարքերին.
  • աշխատել զանգերի և զանգերի մատյանով;
  • աշխատել կարճ հաղորդագրությունների (SMS) և դրանց ցուցակի հետ.
  • կոնտակտներ;
  • օրացույցներ;
  • geolocation (առանց երթուղղման);
  • թույլ է տալիս լուսանկարել, ինչպես նաև կատարել տեսաձայնագրություն և ձայնագրություն.
  • արձագանքել էկրանի կողմնորոշման փոփոխություններին.
  • աշխատել ծանուցումների հետ (տեղական և PUSH, ինչպես ուղղակիորեն, այնպես էլ հատուկ միջնորդական ծառայության միջոցով);
  • տեսախցիկով սկանավորել շտրիխ կոդերը և QR կոդերը
  • Բջջային հավելվածների դրամայնացում (այսինքն ՝ բջջային հավելվածի մշակողին լրացուցիչ եկամուտ ստանալու հնարավորություններ տալու միջոց).
    • Աշխատեք Apple In-App Purchase (iOS- ի համար) և Google Play In-App Billing (Android- ի համար) ծառայությունների հետ, որոնցով կարող եք կազմակերպել տարբեր տեսակի բաժանորդագրություններ, գործառնական գնումներ և այլն բջջային հավելվածում
    • Բջջային հավելվածներում գովազդի ցուցադրում (iOS- ի համար iAd- ը և Android- ի համար AdMob- ը դեռ աջակցվում են):
  • եւ այլն
Հասկանալի է, որ որոշ հնարավորություններ կարող են հասանելի չլինել յուրաքանչյուր կոնկրետ սարքի վրա, հետևաբար, որոշելու համար, թե ինչ կարելի է անել այն սարքի վրա, որի վրա աշխատում է բջջային հավելվածը, տրամադրվում են հատուկ մեթոդներ, որոնք թույլ են տալիս պարզել, թե ինչ կա այս սարքում , օրինակ ՝ թվեր հավաքելու կամ չկարողանալու ունակությունը: Այսպիսով, կիրառվում է մոտավորապես օգտագործման հետևյալ սխեման. Մենք ստուգում ենք ՝ հնարավոր է օգտագործել ինչ -որ հնարավորություն, թե ոչ, և հնարավորության դեպքում ՝
Եթե ​​հեռախոսակապը նշանակում է. EndIf;
Մեզ համար կարևոր խնդիր է թաքցնել օգտագործված բջջային ՕՀ -ի մասին մանրամասները հավելվածի մշակողից, նրան տրամադրել բջջային գործառույթների օգտագործման միասնական մեխանիզմներ: Մենք հավատում ենք, որ մենք հաջողությամբ լուծում ենք խնդիրը: Իրականացված մեխանիզմների տարբերությունները կա՛մ բացակայում են, կա՛մ նվազագույնի հասցվում: Բացառությամբ, իհարկե, երբ OS- ներից մեկում ընդհանրապես ֆունկցիոնալություն չկա:
Օրինակ, PUSH ծանուցումների հետ աշխատելու տեխնիկան շատ տարբեր է Google- ի և Apple- ի համար: Մենք շատ ջանքեր ենք գործադրել հայտի ծածկագրից PUSH ծանուցումների հետ աշխատելու մեխանիզմը միավորելու համար: Բջջային հավելվածի դեպքում մեզ հաջողվեց գրեթե 100%. Բջջային սարքի նույն դիմումի կոդը կարգավորում է POSH ծանուցումներ ստանալ ինչպես iOS- ում, այնպես էլ Android- ում: Իսկ սերվերային հավելվածում PUSH ծանուցումներ ուղարկելու ծածկագիրը նույնպես նույնն է: Բայց նման միավորման հասնելու համար մենք պետք է մշակեինք հատուկ պրոքսի սերվեր https://pushnotifications.1c.com/, որը ծրագրավորողից թաքցնում է Apple Push Notification Service (APNS) և Google Cloud Messaging (GCM) հետ աշխատելու տարբեր տեխնիկա: Ամբողջ տարբերությունը կայանում է տարբեր կարգավորումներում ՝ անմիջապես վստահված անձի կայքում ՝ https://pushnotifications.1c.com/; APNS- ի հետ աշխատելու համար հարկավոր է կայքում տեղադրել SSL վկայագիր (որը Apple- ը թողարկում է հավելվածի համար `մշակողի խնդրանքով), GCM- ի հետ աշխատելու համար անհրաժեշտ է նշել ծրագրի եզակի նույնացուցիչը:
Ակնհայտ է, որ անհնար է անմիջապես իրականացնել բոլոր հնարավորությունները, որոնք ցանկանում եք ունենալ բջջային հավելվածում: Եվ միշտ պետք է փոխզիջում գտնել մի քանի շատ օգտակար բաների միջև: Եվ եթե ինչ -որ բան բաց է թողնում, գրեք մեզ այն մասին, թե ինչ բիզնես առաջադրանքներ (ի վերջո, պլատֆորմը հիմնականում գործարար առաջադրանքների իրականացման գործիք է): Դուք չեք կարող լուծել, և ինչ մեխանիզմ կօգնի ձեզ դրա համար:

Ինչպիսի տեսք ունի?

Բջջային հարթակի գրաֆիկական ինտերֆեյսը առանձին թեմա է: 1C: Enterprise- ում, ինչպես գիտեք, ինտերֆեյսը նկարագրված է դեկլարատիվ: Սա, մի կողմից, որոշակի սահմանափակումներ է դնում UI- ի զարգացման վրա (օրինակ ՝ մեկ պիքսելային դիրքի հնարավորություն չկա), բայց, մյուս կողմից, այն հարթակին թույլ է տալիս միատեսակ կերպով ինտերֆեյսը մատուցել տարբեր էկրաններին չափերը, բարակ և վեբ հաճախորդի մեջ: Բջջային հարթակում մենք փորձեցինք հավատարիմ մնալ նույն սկզբունքին: Որքան լավ արեցինք դա: Փորձենք պարզել դա:
Բջջային հարթակի առաջին տարբերակներում (մինչև 8.3.5 ներառյալ) ծրագրերի գրաֆիկական ինտերֆեյսը շատ ծանոթ էր 1C բարդ օգտագործողների համար. փաստորեն, նա 1C- ի «աշխատասեղան» տարբերակներից ծանոթ ինտերֆեյսը տեղափոխեց բջջային աշխարհ: Բայց այն օգտվողների տեսանկյունից, ովքեր նախկինում ծանոթ չէին 1C- ին, ինտերֆեյսը որոշ չափով արխայիկ տեսք ուներ:
Հաշվի առնելով մեկնաբանություններն ու առաջարկությունները ՝ մենք արմատապես վերանայեցինք բջջային ինտերֆեյսի մեր մոտեցումը 8.3.6 տարբերակում: Կարող ենք ասել, որ մենք կատարել ենք բոլորովին նոր բջջային ինտերֆեյս մեր ծրագրերի համար: Այն շատ ընդհանրություններ ունի մեր տաքսի ինտերֆեյսի հետ: Բջջային ծրագրեր մշակողների զարգացման մոդելը համապատասխանում է Taxi- ի զարգացման մոդելին: Միևնույն ժամանակ, բջջային ինտերֆեյսը լիովին համապատասխանում է բջջային հավելվածներում ընդունված դիզայնի մոտեցումներին և. Ինտերֆեյսը լիովին հաշվի է առնում բջջային աշխարհի առանձնահատկությունները. Փոքր էկրանի չափս (ինչը նշանակում է, որ գրաֆիկական տարրերի դիզայնը պետք է դառնա ավելի ասկետիկ `առանց ստվերների, գրադիենտների), կա մատների ժեստերի աջակցություն և այլն: Հետաքրքիր փաստ. Նոր հարթակի մեխանիզմը, որը պատասխանատու է տարրերի ձևը տեղադրելու համար (դասավորություն), բջջային հարթակի համար այնքան հաջող և ժամանակին ստացվեց, որ այն թողարկվեց ավելի վաղ (8.3.6 տարբերակում), քան ԱՀ հարթակում (8.3 տարբերակում): .7) որի համար այն հիմնականում նախատեսված էր:
Նկարում կարող եք տեսնել, թե ինչպես է փոխվել մեր ինտերֆեյսը:
Դիմում «Փոքր ընկերության կառավարում» բջջային հարթակի 8.3.5 տարբերակի վրա.


Նույնն է 8.3.6 տարբերակում.

Եվ այսպես է թվում բջջային հարթակի կենդանի ինտերֆեյսը.

Կոլեկցիոներ - իսկ սա ի՞նչ գազան է:

Ինչպես արդեն նշվեց, բջջային հավելվածը բաղկացած է մի քանի բաղադրիչներից (իրական բջջային հարթակ, կազմաձևում, տարբեր ռեսուրսներ), որոնք պետք է լինեն մեկ ամբողջություն `հավելվածը խանութում տեղադրելու համար: Որպեսզի բաղադրիչներն ավելի հեշտ դարձնեն հավելվածը, ստեղծվել է բջջային հավելվածների ստեղծող: Սա 1C: Enterprise հարթակում ստեղծված կոնֆիգուրացիա (ծրագիր) է, որն իր տվյալների բազայում պահում է բջջային հավելված ստեղծելու համար անհրաժեշտ բոլոր բաղադրիչները: Որպեսզի կոլեկցիոներն իր գործն անի, դուք պետք է ներբեռնեք և տեղադրեք տարբեր ծրագրային փաթեթներ, որոնք անհրաժեշտ են նրա աշխատանքի համար (Java և Android SDK և այլն), այնուհետև կոլեկցիոների կարգավորումներում նշեք այս փաթեթների ուղիները և որոշ լրացուցիչ պարամետրեր (մշակողի բանալիներ և այլն):


Կարգավորվելուց հետո կոլեկտորը պատրաստ է գնալ: Ընդհանուր առմամբ, կոլեկցիոների հետ աշխատելն ունի հետևյալ տեսքը.
  1. Ներբեռնեք 1C բջջային հարթակի տարբերակը, որի վրա մենք կկառուցենք ծրագիրը
  2. Մենք բեռնում ենք կազմաձևը, որից մենք կկառուցենք բջջային հավելվածը
  3. Մենք ստեղծում ենք բջջային ծրագիր, որում նշում ենք, թե որ հարթակների համար (Android, iOS, Windows) պետք է իրականացվի հավաքումը, որ կազմաձևը և հարթակը պետք է օգտագործվեն (մասնավորապես, նշեք, թե iOS- ի համար հավաքման որ վկայականը պետք է օգտագործվի, եթե ծրագիրը աշխատում է PUSH) ծանուցումների միջոցով):
  4. Մենք իրականացնում ենք բջջային հավելվածի «մեկ կտտոցով» հավաքում բոլոր ընտրված հարթակների համար
  5. «Մեկ այլ կտտոցով» մենք հավաքված բջջային հավելվածները ուղարկում ենք հավելվածների խանութներ (եթե դա iOS կամ Android ծրագրերի համար է): Windows Apps / Windows Phone Apps խանութներում ծրագիրը պետք է ձեռքով ներբեռնվի, քանի որ Microsoft- ը դեռ չի տրամադրում API խանութում հավելված տեղադրելու համար:
Առանձին -առանձին պետք է նշել, որ կոլեկցիոները բջջային հավելվածի մշակման և կարգաբերման կարիք չունի: Դա անելու համար կարող եք օգտագործել բջջային ծրագրավորողի պլատֆորմը և Configurator- ի գործիքները ՝ կոնֆիգուրացիան շարժական սարքին փոխանցելու համար: Բայց բջջային հավելվածը տարածելու համար ձեզ հարկավոր է կոլեկցիոներ:

Applicրագրեր բջջային հարթակում

1C ընկերությունն ինքն է բջջային հարթակում թողարկում մի շարք ծրագրեր, որոնք հանդիսանում են 1C սերվերային ծրագրերի շարժական հաճախորդներ (1C: Փաստաթղթերի կառավարում, 1C: Փոքր ձեռնարկությունների կառավարում և այլն): Այս ծրագրերն իրականացնում են «կանոնավոր» հաճախորդների ֆունկցիոնալության ենթախումբ: «1C: Փոքր ձեռնարկության կառավարում» բջջային տարբերակի դեպքում ֆունկցիոնալությունը բավարար է ծրագրի լիարժեք օգտագործման համար, և մենք հաճախ ենք տեսել մի իրավիճակ, երբ դիմումի բջջային տարբերակը բավական է հաճախորդներին վարելու համար բիզնես
Մեր գործընկերները օգտագործում են բջջային հարթակը ինչպես զանգվածային արտադրության բջջային հավելվածների մշակման համար, որոնք տարածվում են հավելվածների խանութների միջոցով, այնպես էլ հատուկ հաճախորդների պահանջով ստեղծված հատուկ ծրագրերի համար: Շրջանառվող ծրագրերի շարքում կան ծրագրեր, որոնք օգտագործում են ոչ 1C- ի հետևը ՝ որպես տվյալների կենտրոնական պահեստ:
Հաճախորդների պատվերով ստեղծված բջջային հավելվածների շարքում կարող ենք նշել բջջային հաճախորդ 1C- ի համար ՝ Manufacturing Enterprise Management, որը ստեղծվել է մեքենաշինական խոշոր հոլդինգի պատվերով: Հոլդինգի մոտ հարյուր աշխատակից բջջային հավելված են օգտագործում տաք խանութներում, որտեղ, անվտանգության նկատառումներից ելնելով, անհնար է ապահովել ստացիոնար համակարգիչներ: Բջջային սարքի ներկառուցված տեսախցիկը օգտագործվում է ապրանքների շտրիխ կոդերը կարդալու և դրանք անվանացանկի տեղեկատու գրքում որոնելու համար, բջջային հավելվածը թույլ է տալիս հասկանալ տվյալ ապրանքի տեխնոլոգիական շղթայի որ փուլում է, նշելու անցումը ապրանքի կողմից հաջորդ գործողությունը և այլն:

Եզրակացություն

Մենք փորձեցինք շատ մակերեսորեն նկարագրել բջջային հարթակը, թե ինչ է այն թույլ տալիս անել ձեզ և ինչու է ստացվել այնպես, ինչպես դա եղավ: Այս հոդվածը գրեթե ոչինչ չի ասում բջջային Windows- ի մասին: Դրա համար մի քանի պատճառ կա. Նախ ՝ Windows- ի համար շարժական հարթակի տարբերակը համեմատաբար վերջերս է դուրս եկել («1C: Ձեռնարկություն» տարբերակ 8.3.7), և երկրորդ ՝ բջջային հարթակի այս տարբերակը էական տարբերություններ չունի բջջային այլ օպերացիոն համակարգերի իրականացում ... Բնականաբար, մենք կբարձրացնենք Windows OS- ի գործառույթը: Ինչպես նաև բջջային հարթակի ֆունկցիոնալության բարձրացումն ամբողջությամբ: Այսպիսով, մոտ ապագայում մենք ունենք `բջջային հարթակում արտաքին բաղադրիչների աջակցություն. այս մեխանիզմը (երկար ժամանակ հասանելի է «մեծ» հարթակում) թույլ կտա մշակողներին իրականացնել ֆունկցիոնալություն, որը բջջային հարթակում որևէ պատճառով անհասանելի է:
Ավանդաբար, 1C: Enterprise տեխնոլոգիական պլատֆորմի առավելություններն են մշակողի համար զարգացման հեշտությունը և բիզնես ծրագրերի ստեղծման և փոփոխման արագությունը: 1C բջջային հարթակը այս երկու հաղթաթղթերն է բերել բջջային աշխարհ: 1C բջջային հարթակը հնարավորություն է տալիս արագ մշակել ծրագիր, որն աշխատում է երեք ամենահայտնի բջջային հարթակներում (iOS, Android, Windows Phone / 8.1 / 10): Եվ շնորհիվ հարթակից անկախ ինտեգրման գործիքների լայն շրջանակի (վեբ և HTTP ծառայություններ և այլն), 1C բջջային հարթակը հնարավորություն է տալիս արագորեն ստեղծել բջջային հաճախորդ երեք բջջային հարթակների համար գրեթե ցանկացած սերվերային ծրագրի համար, որն աջակցում է որևէ մեկին: ինտեգրման առկա մեթոդներ: 1C հարթակում (վեբ և HTTP ծառայություններ, ֆայլերի փոխանակում և այլն):

Հարցմանը կարող են մասնակցել միայն գրանցված օգտվողները: , խնդրում եմ: