Menu
Is free
check in
the main  /  the Internet / 1C mobile Android platform. Automation Tips

1C mobile platform Android. Automation Tips

So we came to 1C: an enterprise as a mobile application - A small overview for a mobile application from the inside.

Mobile application is a self-sufficient application with its own database to work with user information. At the moment, Mobile application from 1C can work on the three most popular platforms - Android, Apple iOS, and Windows.


Installing a mobile application is made from "Markets" on these platforms. If the application is not published, you can install it by passing the file-distribution to a mobile device.

You can configure and program the Mobile application itself only in full configurator mode, and then collect it using a special configuration of mobile application collector.
This is a huge plus, since the development of a mobile application can lead a 1C configuration developer, which accompanies your 1C program: Enterprise.
Of course, the mobile application has less possibilities than desktop platform: for example, there are no objects such as reports, accounting registers, business processes.




One more minus - You will not be able to connect to 1C database, which runs on a desktop platform in a file or server version.


But there is a functionality for the use of mobile advantages: when developing a mobile application, you can use the contact book, make a challenge from the application through the subsystem "T. electronic, to obtain data on the location through geopositioning.

You ask: " How to work with an ordinary base for 1C? Why is such an application at all? "

For communication with the "external world" there are severalmechanisms, such as exchange plans. They allow you to associate a full-fledged database 1C and a mobile application database - about as well as distributed databases.

The mobile application must perform the function of the mobile application and the corresponding functionality, so completely all data from one base to another are not synchronized, and they could not be due to the object restriction described above.
Such an implementation of exchange is available, for example, in a bunch of programs 1C: Enterprise 8 Trade Management Redu 11 andmobile application "1C: orders" . Bases exchange information about counterparties, customer orders in commodity assortment and prices. At the same time, the mobile application can work offline, and in the availability of the Internet network data exchange.
The mobile application looks worthy, there is a visual recognizable style compared to the desktop version of 1C, as well as a set of standard operations manufactured with objects, type: "Conduct", "mark for deletion" and the like. Therefore, users of the mobile application will be familiar to the context of work.

This is what the application interface in recent versions looks like:


The second popular way to communicate between the mobile application and the accounting system
1C:Enterprise 8 is a job through web services

The general scheme of the organization is as follows: in the application solution 1C: Enterprise 8, and in more simply, in the configuration, a web service is described that performs any functions on the side where the service is published, and may transmit data.

By simple: from the mobile application online, you can contact the 1C accounting system: Enterprise 8, to perform any function described in the service - for example, to obtain data on the report or make a new counterparty

Read more:

The service can transmit the data in the format described inXdto. package, and the developer itself describes this data model. You can transfer Primitive Types: numbers, lines, dates. You can transmit composite types, you can transmit binary data - for example, pictures, or PDF, XLS documents. We will show a simple example, where the package with tasks is described - the task number and header. An example of how the package looks like:

In turn, inthe mobile application creates an object with a type of WS link. It specifies the address of the web service, after which the data types and methods that the service operates are automatically loaded:

All is ready! In a mobile application, you can now call the 1C service function: Enterprise 8 or receive the necessary data.

And what about licenses for mobile applications from 1C?

In the information letter from the company 1c, this issue is disclosed. Excerpt is shown below.

Our recommendations:
Mobile applications from 1C is a pretty new product, but in the usual "wrapper" - the development can perform a regular specialist in 1C. They open up new horizons to expand interaction with the accounting system and consolidating data for management accounting. We recommend using this version of work when the stationary version of operation with 1C does not fit and mobile functional will be sufficient, for example, access only to part of the data or part of a process.

And by tradition, Case:

A task:

Customer has Central office and several points in their trading network. At each point, several seller managers and one workplace of the sale of goods with the accounting program.

Wherein , central office gives orders to sellers - For example, collect an order for another point from your remnants or uncomplying the specified product.

To set the tasks, the Customer first used email and phone calls, but - The automated workplace is one and promptly obtaining tasks and respond to them workers could not. The central office had difficulty controlling such tasks, since when setting the problem, the task was not recorded anywhere, and it was difficult to revise mail for unfulfilled tasks.

Decision:

We offered the following decision. Develop the necessary functionality for setting tasks to employees based on Mobile Application "1C: Orders" and integrate it with the Central Accounting System.

As a platform for starting and working with a mobile application, a trading point worker could use its own mobile phone, and who did not have them - for them the central office bought inexpensive smartphones.

Due to the fact that the mobile application and the central accounting system work in one information space - the efficiency of setting tasks and addressing is on the employee who was intended to be accomplished.

The accuracy of information transmission increased - if earlier by e-mail the manager in the office wrote - "Prepare a product on request ___", now in the task he just pointed to the link to the necessary order that the point of the point could open on the phone.

The level of control in the tasks has increased - they have not disappeared anywhere and had the status that a worker installed them in the process of execution of the problem. And the central office could always check the task.

Anatoly Nikulin

I think everyone already heard about the new features of the new release 1c. But people are far from programming under mobile platforms, some features may not be understood. To do this, we made this "light" guide.

Update 12.08.2012 or 1C ignites.

Good day. 1c updated the mobile platform to 8.3.3.30.

Fun began, because Google also decided to update the SDK.

What you need to do so that everything worked.

1. The database name is not specified - we climb into the configurator and make the field open for editing.

3. We climb into the SDK manager and download SDK 17. There will be no work without it.

4. We climb on the site dl-ssl.google.com/android/repository/tools_r20-windows.zip, break in the SDK folder, looking there at the beginning of the Tools folder, we rename it, and merge the archive to the new Tools folder.

5. Changes made in processing - attached to the header.

Update 06.06.2013

Combining the intellect with serg_gre, installed how to write a confusion for a mobile application, while not biting with the compilation.

What an idea is - in fact there are 2 types of APK files (these are those that are installed for the phone):

1. This is a compiled file that you yourself compile, and follow the instructions in this article. After compilation - you get a confusion, and now you can work with it, however, if you want to remake something, you will have everything to recompile and reinstall.

2. This is an initial APK that lies in the archive mobile8.3.3.24android1cem.apk,and his chip is that you can prescribe different paths to configurations there. And it will automatically update the database when connecting to the server.

And so, it is much more convenient. How to do it?

After you have created a configuration, you can publish it under a certain name to access through the web (how to do it - there are a lot of articles, including mine), but we are interested in the outstand everything before the publication starts.

Instead of publishing the base in our usual mode, we are in the configurator we click Configuration - Mobile App - Publish.

Clear business - indicate the name of the base (I think it makes no sense to say that it should differ on behalf of the publication of web access) and press it. Suppose we gave her name Infobase..

For this we go to 127.0.0.1/ Infobase.. Note, without any WSDL there and so on. If we see the HML schema - it means everything is OK.

After that, everything will be cool. Please note that this is updated only configuration, not data.

One question remained, from the same observational SERG_GRES:

In the configurator - in the Debug menu - the start of debugging is a mobile application.

Question - what is this beast? If anyone knows, welcome to the Camments.

Maybe everyone knew everything about it, but as usual, the fact that in sight - many do not see :)

Update 05/30/2013

Released a new version of the platform - 8.3.3

I would like to highlight some features and changes in it.

License:

Licensing of mobile platform and mobile applications

Mobile Application Development Tools and Mobile Platform "1C: Enterprise 8" for the development goals are included in the commercial delivery of the 1C: Enterprise platform and are available to developers of applied solutions, lawfully owning the distribution of the 1C: Enterprise 8.3 platform.

Mobile applications developed by users and partners on the 1C: Enterprise 8.3 platform, is currently allowed to disseminate without paying the company "1C" if the number of copies distributed does not exceed 50. To distribute a larger number of copies, coordination is required with the company "1C".

In the forum, in the appropriate branch - posted a complete list of changes from 1C. Please unsubscribe there on the found glitches.

From myself I want to highlight a few features that I crateled:

On the mobile platform it became possible:

  • Establish a timeout when interacting with network resources;
  • Specify in user names or passwords not only ascii characters;
  • Form a URL (and get values \u200b\u200bfrom it) in accordance with the RFC 1738 standard (http://www.ietf.org/rfc/rfc1738.txt) if arbitrary text is added to the URL;
  • Software to generate HTTP request and process the answer, interact with the REST services.
On the mobile platform it became possible:
  • Receive the sections of the first / last to the very first and most recent (current) time of time with greater speed.
At the expense of visual changes - it became much more pleasant to work. Those. Buttons and icons began to adjust the screen size, now they really get into them. Subjectively - it became faster to work, less shy.

However, all sorts of little things remained. For example - information in the input field - shifted up, not much, but striking.

When opening a reference book - the name is normal, and the note of the props is shifted strongly upwards, which is very infuriated :) Although it may be so conceived. Created a report on the SCD - he did not appear in my mobile application.

The installed version of the program eats 118 meters of phone memory.

Welcome to the forum :)

The first version of the article

1C released a new platform 8.3.2, the feature of which is the ability to design a configuration for mobile platforms. The bottom line is that after all manipulations you get ready-made packages. Apk (for Android) I.Zip (for iOS).

The main idea is that it can make a programmer 1C and fully monitor the development. You can place this file on Google Play or on the AppStore, and people will be able to download.

The main features are described here http://v8.1c.ru/overview/term_000000818.htm.

Under the android file.apk weighs from 38MB. It is worth paying attention to the fact that he all these megabytes will ship into the phone's memory, so if you have about 50mb on your phone's memory, you will not be able to install it J.

Let's go to the most interesting, namely, try to create your configuration. To do this, you need to update the platform to 8.3.2, and download the file http://users.v8.1c.ru/getdist.jsp?path\u003dmobile/8_3_1_20/mobile.zip.

It is unzipping into some daddy, then we need to install Android SDK and Java SDK.

In chapter Java Platform, Standard Edition Gmose Jdk download, put a tank that accept the license agreement and download the file according to your operating system. There should be no problem with the installation. After that, it is advisable to reboot. Pay attention - Java should be 1.6! At 1.7 everyone will compile, but it will not work :)

Android SDK includes the tools needed to develop Android applications. It is recommended to download the EXE-Shnik, but I suggest download the ZIP version and to unpack yourself in some kind of thread a convenient directory for you (if there is no link to zip, click the Other Platforms link).

Note that it should be the catalog "on the century". And it is better not to move it anywhere, otherwise you have to reconfigure the development environment. I propose somewhere to create the Android directory. It is extremely desirable that the path to it is short. Ideal -: Android. For myself remember this catalog under the pseudonym. And we break into it our SDK archive, we get android-SDK-Windows.

Then go there, and make sure that the Android 2.2 platform is downloaded - we reveal the plusics - SDK Platform, if not installed, then put a tick and install.

Pay attention - synonym and comment - must be empty, as the parser will not adequately work. Thanks to society for vigilance :)

After that, unzip the archive that was downloaded to the folder with adequate name.

Open the configuration in controlled forms and open the processing that was in the archive and fill the fields.

It's all a little fun - first choose a file that you saved, then select the language, then click on the magnifier, on the application view - we write a view.

If the language cannot be selected - then you have a comment or description in the configuration. Read above.

The application identifier is also critical if it will coincide with the already existing on the store, the market will not allow it to download it, but so far it is without a difference, and take it on somehow, only consider - the name must contain only the Latin (and preferably not to hold capital letters).

Everything is not less fun, in the location of the platform mobile platform, specify the address of the unpacked archive, i.e. The top folder in which there are still folders for android and iOS.

Choose where we will be recorded the result.

But with the worked worship. It is necessary to understand that this is an important file if you have previously published the application on the market for one key, then in case of loss - there will be fun. But we will leave it yet. And so, since we do not have the key, you need to create it, for this we indicate the essence of the login and password of the key, then the data about yourself and form the key, then choose it and click OK, if everything is fine, the console window will appear, in which the operations will be described. After all this - you will receive files that can be downloaded for your phone and install.

Please note that you need to disable the installation function only with known sources.

And in the late Newans:

When developing a mobile application, it is necessary to take into account the limitations that

imposes a mobile platform compared to the 1C: Enterprise platform for

personal computer:

  • Limited list of available configuration and mechanisms;
  • Limited set of properties of details;
  • Limited set of elements of controlled forms;
  • Simplified implementation of some mechanisms (for example, dynamic list or desktop);
  • Lack of conventional forms and normal launch mode;
  • Lack of mobile application debugging;
In a nutshell - it is to do it.

Apply a couple of pictures of the created confes. Do not forget that for tests, if there is no Android - you can download http://bluestacks.com/. It looks it there is certainly slaughter, but for starters and so comes.

If you have any questions - welcome to the Camments.

Here you can download on android test conflue from 1c

https://play.google.com/store/apps/details?id\u003dcom.e1c.mobile.Orders&feature\u003dsearch_result.

It also appeared for UNF KONF, you can download on the link:

https://play.google.com/store/apps/details?id\u003dcom.e1c.mobilesmallbusiness

However, it is empty, i.e. Ready to work with your database.

In the previous article, we talked about what Mobile Platform 1C: Enterprises - a set of tools and technologies for a quick cross-platform development of mobile applications. Today we will tell, which applications are made using the mobile platform as the company "1C" and our partners and third-party developers.


Only a few applications are listed; To write about all applications, there will not be enough one article, even if we talk only about applications created by the company "1C". This is a mobile client 1C: Document Management, and mobile clients 1C: accounting and 1C: Accounting (work with cloud versions 1C: Accounting or 1C: entrepreneur in our cloud service http://1cfresh.com), and the ERP monitor (wide Spectrum of reports underway based on data from 1C: ERP or 1C: Trade Management), and 1C: Orders (application for working with client orders "in the fields"), and 1C: Mobile cash desk, and others.

Before describing the application, we bring it a brief description:

  • There was an application created by the customer's order or this is a replicable application distributed through application stores
  • Number of application settings; may be unknown for replicable applications, because Not all application stores open this information.
  • Mobile OS, which applies to the application. Applications created on 1C mobile platform: enterprises work immediately on three mobile OS (Android, iOS, Windows), but for custom applications it can be one OS, because Customers are often limited in the company with one model of mobile devices.
  • The scope of development (if known). The amount of work (in man-days), spent on the release of the first working version of the application.

1C: Management of a small company

Solution Type: Circulation, Free
Number of installations: Over 170.000
Mobile OS: Android, iOS, Windows Phone

Mobile 1C: Managing a small company (abbreviated UNF) - Mobile version of our popular program for doing a small organization. The program automates trading activities, allows you to enter and print orders for the purchase and sale, keep the base of buyers and suppliers, to conduct the product catalog and their accounting (prices, remains in stock), the built-in device camera is used for photos of goods and barcode recognition. There are several types of reports. Payment for payment can be sent to customers through the built-in mail client of the mobile device or via SMS.

Offline application - all data it stores on a mobile device. There is a synchronization option with a "large" application 1C: UNF, located on the server or in the cloud. The application is free, the new version also gives free access to the "large" version 1C: UNF, located in the cloud service http://1cfresh.com; In the case of free access, three mobile devices may synchronize their data with a cloud application (and through it - among themselves), and one user - to work directly with the "big" version of UNF in the cloud through a thin or web client (the functionality of the "big" OFF in This case is limited to the functionality of the mobile application). In the case of buying a cloud UNF, an unlimited number of mobile devices can work with it, and all restrictions on its functionality are removed.

Many users of Mobile UNF use only the mobile version of the application - for their tasks of the mobile version functionality is quite enough. Many of the users before working with Mobile UNF were unfamiliar with 1C products - they simply needed a mobile application for automation of trading activities (accounting for orders, a simple calculation of profitability, etc.), and they found UNF in the AppStore or GooglePlay. As business development and growth needs in automation, some of the users are "growing" to the "big" version of UNF and acquire it in a box or cloud version.

Mobile app for the company Yolville

Solution Type: Custom
Installation number: about 200
Scope of development: 5 people-months (edition of the first version)
Mobile OS: Android

The network of natural food stores for healthy nutrition "Dvorillam" with the products "1C" relationships are interesting. The system for managing the business of the company "Datville" was originally written to the "1C: enterprise" the owner of the business, Andrei Krivenko. Later, the support and development of the system assumed the company "Automation and consulting". She, by order of "Drafts," made a mobile application on the 1C platform.

Better here to quote the Andrei Krivenko itself, the owner of the company (Interview with the RBC site):

- One of the last large projects - we have introduced a mobile phone to our operating system. We banned office employees to be in stores. Now we have in every store all photos flock into a single system. This allows you to control all returns, write off, some nuances in quality - everything goes through the phone. If something broke in the store, it is not necessary to explain - I took a photo, we immediately saw in the center. In stock via phones scanners control all acceptance of goods. Drivers control unloading. We closed such a big circle.
- How much did it cost you?
- It all cost a penny. For example, the phones us "MegaFon" sold on 1 rub., Soft is all for 1C. About ten times cheaper than the cost for which mobile applications are written. This is the usual 1C system, only runs on the computer, but on your mobile phone. The whole project is several million rubles. Savings - millions per month.

2.5 months have passed from the start of development before the release of the pilot version, to the first working version - 5 months. A characteristic feature of the application is a large amount of photos performed by a mobile device camera. During the same report, the daily from the store in the head office, the volume of photos varies from 300 MB to 1 GB. The application also uses push notifications - with their help, the server reports to mobile applications on obtaining service messages (for example, about changes in the rules of store operations).

Planning operational production management

Solution Type: Custom
Number of installations: Over 100
Scope of development: 4 people-month
Mobile OS: iOS

One of our customers, Atomenergomash Technology JSC, introduced the decision "1C: Management of the Production Enterprise" at its enterprises. During the operation of the solution, it was necessary to work with a solution directly from the enterprise shops.

One of the types of products manufactured by Atomenergomash enterprises is components for atomic reactors. Huge products, the size of the dump truck, are made in the shops of enterprises, they are processed, painting, a number of other operations, and shipped to customers. Each operation must be recorded in the program. But, for reasons of safety, stationary jobs in the workshops could not be equipped.

It was decided to work in workshops from mobile devices. For 4 people-months (part of the time has occupied the task) of the 1c partner - the NEOSTEMS company, a mobile application was created for planning operational production management, synchronized with the server solution "1C: Managing the Production Enterprise". The application produces, in particular, the search for the nomenclature of the product barcode (readable camera of the mobile device) provides access to technological cards, makes issuing tasks to employees, makes it possible to note the facts of performing production and control operations. More than 100 employees of the company use a mobile application, including in those places in production (hot workshops, warehouses, etc.), where it is impossible to establish stationary jobs or where employee mobility is required.

Mobile sales agent

Solution Type: Custom
Scope of development: 6 person-days (release of the first version)
Mobile OS: Android

Comparatively recently, I got the task of automating the activities of trading agents of a large wholesale distributor. It would seem that it could be easier? There are many ready-made solutions, take and use, but everything would be fine, if not a number of customer requirements, namely:

  • The application must fast Download from the database residues, prices, receivables.
  • Application processing and reverse response must occur in mode real-time.
  • The application should be able to work with all Price list, namely (20,000 positions of nomenclature and 150,000 characteristics)
  • The application should be able to display images goods (18,000 images)
  • The application must exist comfortable and ergonomic Form of selection of goods
  • The application must control location of agents
  • The application should be able to control overdue debts customers.

As well as a list of purely individual customer requirements that did not fit into the ability no one existing today's finished decision.

If there is no ready to solve all the requirements of the client, the solution is obvious - it is necessary to develop an individual solution for a specific customer. But what if the budget and terms are very compressed? Here we came to the issue of technology.

Writing the application completely from scratch is not easy and not fast, but if you take the platform adapted to writing such applications - it will go much faster, which is why our choice fell on a new technology for developing applications for mobile devices from the company 1C "Mobile platform 1c: enterprises 8 "

I had kicked up demonstration applications on a mobile platform - I liked everything, tormented only one question, and whether this platform can handle such information volumes and how fast the exchange process with the central base is. That is exactly what I decided to figure out.

In order not to reinvent the bike, a demo example of Mademo.cf was taken as the application, supplied by 1C with its mobile platform. Mobile application exchange options with a central base of a lot, but because There was a task of receiving RealTime, exchange with the base was decided to perform using Web services. In the specified demo example, the exchange has already been implemented in this way. The minus was that exchange with the central base was performed by objects with identical metadata. In my case, in the mobile database, the composition of the details was substantially trimmed, so it was necessary to finalize the procedures for unloading / downloading data using data conversion. After solving this task, I had to check how the mobile platform would be able to display and process this data quickly. Sketching the primitive form of the selection, I was convinced that the platform had successfully coped with this task. It remains for small - to draw the necessary forms and lay in them the necessary functionality required by the customer, by the way, it is worth noting that the demo-example of 1C contains examples of all features of the mobile platform, it is working with multimedia, with geopositioning, as well as with functions Mobile device (set of numbers from Appendix 1C). In this case, these capabilities are constantly expanding with the appearance of fresh platforms.
Of the features that I would like to mention, I will allocate the following:

  • Development is carried out in the usual configurator 1C, did not have to spend time on the study of new means of development.
  • The features of the platform will be sewn a large functionality that takes into account work on the mobile device.
  • Very convenient update of mobile device configuration. Literally 1 click and on all devices a new configuration, which is very strongly unloading the IT department.
  • Ability to use Web services for exchanging.
  • Work speed with large amounts of data (with a competent organization of the data model).
The speed of our application fully satisfied the client, so the goal can be considered achieved. The first exchange with the central base took about 10 minutes (8 of which ranked image loading), further regular exchanges occupy 10-30 seconds, which most of them depends on the quality of the Internet connection. In the nearest plans - writing a new functionality for the implemented application. The implementation of this decision took about 50 hours, provided that it had to spend a significant part of the time for some experiments associated with a large amount of data. According to financial costs, the development of a new application was lower than the costs of the purchase of adapted decisions assessed by the Client, plus this solution can always be finalized or corrected with very minor labor costs.

1C: Minidoney

Solution Type: Grade, Paid
Mobile OS: iOS, Android


An application for accounting personal and family finances. Support for different currencies (with updating currency exchange rates via the Internet), credit card accounting, limit balance and interest on them, accounting for interest and commission in calculating bank loans, etc. The application can work autonomously, and can synchronize with a desktop program

Mobile platform 1c: enterprises are a set of tools and technologies to quickly develop applications for mobile OS, Android, Windows Phone / 8.1 / 10, using the same development environments (configurator or 1C: Entrprise Development Tools) and the same development techniques, What is used for "ordinary" applications 1C. As a result, autonomous, offline applications are obtained, but with the possibility of exchanging information with the outside world with the help of a wide range of integration tools provided by the platform: Web and HTTP services, E-Male, etc. Since the exchange protocols - platform-independent, mobile platform 1c, among other things, is a means of quickly creating a mobile front-end for almost any server solution.

Prehistory.

Even in the time of "1C: enterprises" version 8.0 (and subsequent versions) there was a software product "Expansion for pocket computers". The extension allowed to create products only for Windows Mobile, Windows CE, etc. The product possessed its own configurator, and the server, and maintained up to the release of "1C: Enterprises" version 8.3. The latest extension version (8.2.9) was issued in October 2013, and complete support ceased on January 1, 2015.
The extension had limited use even during the heyday of communicators on Windows Mobile, and the care of such devices from the mobile market clearly did not add popularity to this software product. The devices on iOS and Android took almost the entire market of mobile devices, and it became apparent that the support of these OS is one of the key points for the system that should be operated in the modern mobile world. It also seemed obvious that the main approach of the existing platform "1C: Enterprise" should be used on mobile devices: the applied developer must first think about solving applied tasks, and in the second one, what the possibilities of the OS used to use it to solve these tasks . In other words, you need a tool that isolates an applied developer from the features of specific mobile operating systems and the development tool.

Mobile platform

Relying on the experience of developing and operating expansion for pocket computers, it was decided to develop a specialized system that would satisfy several requirements:
  • it should support modern popular mobile operating systems and devices under their control. First of all, this is an IOS company Apple and Android company Google.
  • this system should allow the use of developed apps in the style taken on modern mobile devices. In particular, the interface must rely on manual control (literally of the word) using touch screens.
  • the system should provide a uniform programming interface to implement various specific mechanisms, regardless of the mobile OS used.
  • the developer must use the same tool and the same approaches to the development as when developing applications for a "ordinary" computer.
  • the application developer must develop an applied solution in the usual development environment, if possible, using a single code for desktop and mobile systems.
  • the interface of the applied solution operating on a mobile device must be similar to different platforms and generally understand it in general.
The result of the development was the so-called mobile platform, which was released on May 29, 2013 in options for iOS and Android. Mobile platform "1C: enterprises" is a set of tools and technologies that allows you to create applications for iOS mobile OS, Android, Windows Phone / 8.1 / 10 using the same development environment (configurator) and the same development techniques as for ordinary applications On the 1C: Enterprise platform. As a result, autonomous, offline applications are obtained, but with the possibility of exchanging information with the outside world with the help of a wide range of integration tools provided by the platform: Web and HTTP services, email, etc.
Mobile platform was quite well perceived by the community, various articles on this topic began to appear (for example, and). In order to develop a full-featured application that operates simultaneously on the overwhelming majority of mobile devices, it has now been required to minimal time and knowledge, fundamentally not different from the knowledge of the "regular" application developer on the 1C: Enterprise platform. Of course, such a low entry threshold attracts developers who need "low blood" to provide some basic functionality of employees working on the departure, bosses, and other mobile employees who need work with the corporate system.
Start developing a mobile application on the 1C: Enterprise platform simply. In the configurator, you need to set the "Assigning" property in the configuration to the "Mobile Device" value. At the same time, part of the configuration objects will be unavailable (types of characteristics, account plans, etc.), but will be available specific properties specific for mobile applications (for example, built-in media and geopositioning devices, etc.).


At the same time debug the main algorithms of the application (not directly related to mobile specificity) can be directly in the configurator on the developer's computer. At the same time, the sections of the code in which the "mobile" functionality appeals occurs, it is recommended to fraperate with the relevant instructions of the preprocessor to avoid errors when executing the code on a personal computer:
# If mobile enroller is then the data \u003d geopositioningReer. Pereskimyader (); # Endox
Starting from the version of the mobile platform, 8.3.7 has become available and debugging applications directly on a mobile device (more about this below).

Development on the mobile platform can follow different approaches, but several main points can be distinguished. From the point of view of building a mobile application actually, its functional saturation and role in the IT infrastructure of the enterprise:

  • mobile application can be an integral and integral part of the existing enterprise information system. The mobile application will provide an interface and other features (including data exchange), "sharpened" as an existing information system. In this case, the mobile application is very tightly connected with the "ordinary" information system and cannot be operated in the separation from it.
  • mobile application performs specific tasks that are practically not connected with the information system of the enterprise. There is only a minimum data set that the mobile application and the information system are exchanged. In this case, most likely, the mobile application will be exchanged for some standardized protocol, which makes it possible to use this mobile application in completely different cases and situations.
The two situations described above can be considered extreme options. But these are not the only development options. Applied developer can independently choose the possibility of integration between the mobile application and the information system that is the backup office for it.
The mobile application is developed as a fully autonomous configuration, but may separate part of the source text with the "parent" configuration. By the way, the "parent" configuration may not physically exist (for example, if you develop a kind of universal application that can work with different systems on a universal protocol).

Mobile platform device

What is a mobile platform and what does she know how?
Justice for the sake of the mobile platform is just one of the components of the entire complex, thanks to which "1C: Enterprise 8" works on mobile devices. So, the application developer operates with the following components:
  1. Actually mobile platform - mobile part of the framework "1C: Enterprise". It happens the usual (which is used during an assembly of an application for publishing in the application store) and the developer's mobile platform, which is used (surprise) during the development of a mobile application.
  2. Mobile configuration is the configuration of the "1C: Enterprise" program system, recorded as an XML file.
  3. The combination of mobile platform and mobile configuration gives a mobile application.
  4. Mobile Application Collector - a specialized application solution that can make from a mobile platform, configuration, screensavers, icons and other components, a ready-made mobile application file that can be downloaded to Apple Appstore, Google Play, Windows Phone Apps / Windows Apps.
Why is everything so difficult? Why can not be done on a mobile device exactly as it is done in a big platform? Those. To put one mobile platform on the device and download any number of configurations / applications to it? It is forbidden to make licensing restrictions on applications that apply through application stores. For example, if your application will download executable code (as a script) via the Internet, then it will never appear at Apple Application Store. It should, however, understand that the possibilities for downloading any configuration that are in the mobile platform of the developer are not intended to distribute mobile applications even within one company, not to mention the distribution of developer customers.
After the mobile application turns out to be on the target mobile device, it becomes necessary to use some database (data must be stored somewhere). As a database engine, the mobile platform uses its own database engine, which is ported to a mobile platform from the platform for a personal computer. It is compact and fairly fast, but the main thing is that it provides exactly the same behavior to which the applied developers are used to working on the platform for personal computers.
It is also worth noting that inside itself the mobile application is built on the same scheme as the operation of a regular platform with a file version of the information base: there is a client part, there is a server part, there is a database and there is a client-server interaction.
Actually, the mobile platform is written as a Native application, compiled into binary code for the main processor architectures used now in the mobile world: this is an Arm V5 architecture and higher and x86.
In addition, to interact with those or other capabilities of a mobile device (telephony, GPS, work with a built-in camera, etc.) Special permissions may be required. For iOS, they are set directly during the operation of the application itself, and for Android permissions are specified when creating an application. The required permissions are specified when developing a mobile application and are used by the collector of mobile applications, but about the collector - a little later.

A little about the developer platform

While we are developing a mobile application - we are not related to licensed restrictions imposed on mobile applications distributed through application stores. So, we can use 1C mobile platform as well as using a "big" platform on a personal computer - install the mobile platform to the smartphone / tablet itself and load mobile application configurations into it. After starting, the platform will show us a list of applications registered in it:

To add a new application to the platform, you need to place an XML file with its description on the resource available from the Mobile device using the HTTP protocol. It is convenient to do this from the configurator, through the "Configuration \\ Mobile App to publish" menu. At the same time, the XML file with the application configuration is posted on a web server on a developer's computer (respectively, this computer must have a web server - IIS or Apache).

If you specify the "Restart from the Configurator" option for the application, the application on the mobile device will be automatically updated from the developer's computer every time the developer updates the configuration file located on the XML web server.
When the "Debug is enabled" is enabled, step by step debugging application on a mobile device from the configurator on the developer's computer (in the configurator, the Option "Debug via HTTP protocol" in the "Service \\ parameters" menu must be selected. If you put the stop in the stopping point in the stop code and select the "Mobile application - start debugging" command, the mobile application on the device will stop when the executable code comes to the stop point, and in the configurator you can see the values \u200b\u200bof the variables, the chalk stack, etc.

What can?

So, what can Mobile Platform? Enough:)
If you do not operate with specific terms "1C: enterprises", the mobile platform provides an opportunity to work with regulatory information, draw up documents describing some external actions, view reports, contact the outside world with the help of Internet services and much more. Those. It provides an applied developer to write a fairly functional application, such as home finance accounting program, a program for field trading and the like.
But besides the usual functionality, which is on the platform for a personal computer, the mobile platform should provide work with specific capabilities that are inherent in only mobile devices:
  • working with calls and call log;
  • work with short messages (SMS) and their list;
  • contacts;
  • calendars;
  • geopositioning (without laying routes);
  • allows you to take photos, as well as carry out video and audio recording;
  • respond to changing the orientation of the screen;
  • work with notifications (local and push, both directly and through a special service intermediary);
  • scan barcode and QR codes with the camera
  • Monetization of mobile applications (i.e., the way to make the developer of mobile applications opportunities for additional earnings):
    • Work with Apple In-App Purchase Shopping Services (for IOS OS) and Google Play In-App Billing (for Android OS), with which you can organize in a mobile application of various kinds of subscriptions, purchase of functionality, etc.
    • Advertising display in mobile applications (while IAD services are supported for IOS and Admob OS for Android OS).
  • etc.
It is clear that some possibilities may not be available on each specific device, so to determine what can be done on the device on which the mobile application is executed, special methods that allow you to know are available on this device, such as the ability to set Rooms or not. Thus, approximately this use scheme is being implemented: check, you can use some possibility or cannot be used and if you can - use:
If the means of funds. Contributor meter () then the means of heart disease. Promptomer (number telephone, calls therapist); Ended;
Hide from the application developer details about the mobile OS used, provide him with unified mechanisms for using mobile functionality - an important task for us. We believe that the task is successfully solved by us. Differences in implemented mechanisms or absent or minimized. In addition, of course, cases when functionality in one of the OS is not at all.
For example, technique work with push-notifications is very different from Google and Apple. We have made a lot of effort to unify the mechanism of working with push-notifications from the application code. In the case of a mobile application, we managed to almost 100%: the same application code on the mobile device processes the reception of push notifications and on iOS, and on Android. And the Push-notification distribution code in the server application also looks the same. But in order to achieve such a unification, we had to develop a special server-proxy server https://pushnotifications.1c.com/, which hides from the developer to different work techniques with Apple Push Notification Service (APNS) and Google Cloud Messaging (GCM). The whole difference lies in different settings directly on the proxy site https://pushnotifications.1c.com/; To work with APNS to the site you need to download the SSL certificate (which Apple displays for the application on the application of the developer), to work with GCM, specify the unique identifier of the application.
Obviously, it is immediately impossible to implement all the features you want to have in a mobile application. And always have to search for a compromise between several very useful things. And if you miss something - write to us about what business tasks (after all, the platform is first of all a tool for realizing business tasks!) You can't solve and what mechanism would help you for this.

What does it look like?

The graphical interface of the mobile platform is a separate topic. In 1C: the enterprise, as you know, the interface is described declaratively. This, on the one hand, imposes some restrictions on the development of UI (for example, there is no possibility of pixel positioning), but on the other hand, allows the platform to draw the interface on the screens of different sizes, in a thin and web client. The same principle, we tried to stick to the mobile platform. How well did we succeed? Let's try to figure out.
In the first versions of the mobile platform (up to 8.3.5 inclusive), the application graphical interface looked very familiar for sophisticated users 1C; In fact, he transferred a friend to the "desktop" versions of 1C interface into a mobile world. But from the point of view of users, earlier with 1C not acquaintances, the interface looked several archaic.
Consider comments and wishes, we have fundamentally revised your approach to the mobile interface in version 8.3.6. We can say that we made a brand new mobile interface for our applications. It has a lot in common with our "Taxi" interface. The development model for mobile application developers corresponds to a development model in Taxi. At the same time, the mobile interface fully complies with the approaches adopted in mobile applications and. The interface fully takes into account the specifics of the mobile world: a small screen size (and therefore the design of graphic elements should become more ascetic - without shadows, gradients), there is support for finger gestures, etc. Interesting Fact: A new platform mechanism responsible for the placement of elements in the form (layouuter) was so successful and timely for the mobile platform, which was released in it before (in version 8.3.6) than in the PC platform (in version 8.3.7) For which he first was intended.
In the picture you can see how our interface has changed.
Application "Management of a small company" on the version of the mobile platform 8.3.5:


It is on version 8.3.6:

And this is what the mobile platform interface is in a lively:

The collector - and what is this beast?

As mentioned earlier, the mobile application consists of several components (actually mobile platform, configuration, various resources), which must be a single integer for the placement of the application to the store. To facilitate the transformation of components into the application, a mobile application collector was developed. This configuration (application) created on the 1C: Enterprise platform, which stores all the components required to form a mobile application in its database. In order for the collector to perform its work, you need to download and install various software packages that are needed for its operation (Java and Android SDK, etc.), then specify the paths to these packages in the settings of the collector and set some additional parameters (developer keys etc.).


After setting, the collector is ready for work. In general, work with the collector looks like this:
  1. Load the version of the mobile platform 1c, on which we will collect the application
  2. We load the configuration from which we will collect a mobile application
  3. Create a mobile application in which you specify which platforms (Android, iOS, Windows) must be used, which configuration and platform should be used (in particular, specify which certificate to build under iOS to use if the application works with Push- Notifications).
  4. We carry out the "one click" to build a mobile application under all selected platforms
  5. "Another click" send collected mobile applications to application stores (if this is an application for iOS or Android). In Windows Apps / Windows Phone Apps Apps, the application must be loaded manually, because Microsoft does not yet provide an API to place the application in the store.
It should be noted separately that the collector is not needed to develop and debug a mobile application. To do this, you can use the developer's mobile platform and configurator tools to transfer the configuration to the mobile device. But to distribute a mobile application - you need a collector.

Applications on a mobile platform

The company "1C" produces a number of applications on a mobile platform, which are mobile clients of 1C server applications (1C: Document Drive, 1C: Control of a small company, etc.). These applications implement some subset of the functionality of "ordinary" customers. In the case of the mobile version of "1C: the management of a small company" functionality is enough for the full use of the program, and we often have seen the situation when customers for doing business is enough mobile version of the application.
Our partners use a mobile platform for both the development of circulation mobile applications distributed through application stores and for custom applications created by requests for specific customers. Among the circulation applications there are applications that use not 1Cth back-end as a central data warehouse.
Among the mobile applications created by order of customers, you can mention a mobile client for "1C: production enterprise", created by order of a large machine-building holding. About one hundred employees of the holding use a mobile application in hot shops, where for reasons of safety, it is impossible to put stationary computers. The built-in mobile camera camera is used to read the barcodes of products and search them in the Handbook of the Nomenclature, the mobile application allows you to understand at what stage of the technological chain is this product, note the passage of another operation, etc.

Conclusion

We tried very superficially describing the mobile platform, what it allows you to do and why it turned out to be the one. In this article, practically nothing is said about Mobile Windows. There are several reasons for that: first, the version of the mobile platform under Windows came out relatively recently ("1C: Enterprise" version 8.3.7), secondly, this version of the mobile platform does not have any significant differences from the implementation for other mobile OS . Naturally, we will build up functionality for Windows. Equally, how to build the functionality of the mobile platform as a whole. So, in the nearest plans we have support in the mobile platform of external components; This mechanism (a long-affordable platform is available in the "big" platform) will allow developers to implement functionality, inaccessible due to any reasons in the mobile platform.
Traditionally, the strongest parties to the 1C: Enterprise technological platform are ease of development for the developer and the speed of creating and modifying business applications. Mobile platform 1C transferred both of these trumps into the mobile world. 1C mobile platform is an opportunity to quickly develop an application running on the three most massive mobile platforms (IOS, Android, Windows Phone / 8.1 / 10). And thanks to the wide range of available platform-independent integration tools (Web and HTTP services, etc.), the 1c mobile platform is the ability to quickly create a mobile client under three mobile platforms for almost any server application that supports any of the integration methods available. In the 1C platform (Web and HTTP services, file exchange, etc.).

Only registered users can participate in the survey. , you are welcome.

If you do not go into subtleties, then the mobile platform is the same file database 1c, as in a stationary computer, only working in mobile operating systems - iOS and Android.
The main difference between Mobile 1C from stationary is that it uses a specialized interface focused on touch control on small screens, and it is also possible to interact with the mobile device (take photos, get the coordinates, send SMS, etc.). Mobile platform 1C is a set of tools that allows you to create solutions for mobile OS.

Development of solutions for a mobile platform is conducted in the same configurator 1C as
developing conventional solutions. Also at the moment, another development environment is available in Beta version - "1C: Enterprise Development Tools" based on Eclipse.

Mobile Platform Opportunities

Since the mobile platform is non-stationary, it clearly should have a certain functionality that is available when working with a mobile device. For example, do not surprise us that the stationary platform can print documents for the printer? At the same time, the stationary platform uses the capabilities of the operating system where it works. An example of a close integration is an HTML document field in 1C, since in the case of Windows, the Internet Explorer engine is used, and with Linux
- The default browser engine. Now consider a list of features that have a mobile platform in mobile systems:

  • Working with telephony - work with call logs (call history) or the ability to make a call
  • Working with messages (SMS and MMS) is not only sending, but also reading received messages. This is convenient when it is necessary, for example, to catch SMS from the client - the bank and enter the flow rate or arrival of money on the basis of it. However, 1C does not know how to read existing SMS messages.
  • Geopositioning tools - Coordinates on satellites and networks. Getting coordinates at the address or address by coordinate. Display data on the map
  • Working with multimedia - opportunity to make photos, video and audio recording
  • Barcode Scanning - Barcode Scanning Phone Codes: As linear (EAN13, Code39, etc.) and two-dimensional (QR et al.)
  • Working with e-mail is the main difference from stationary in the fact that in the stationary 1c you just have to register all connection settings, and in the mobile OS, for example - Android, you already have a local mail. Therefore, to send a letter, you do not need to enter registration data in the 1C itself
  • Work with contacts - read, write, edit contacts in your device
  • Work with calendar - creation, reading reminders in the calendar
  • The orientation of the screen is the possibility of tracking the fact of the rotation of the device screen, which means it is possible, for example, redraw some forms so that they look better in portrait orientation, and not just turn the album according to the principle "as is" and hope that 1C itself scales the form, As need
  • Work with notifications is one of the most interesting and sufficiently complex points for a quick explanation. But if in a nutshell - this is the ability to notify mobile 1c about something, for example, that it is necessary to synchronize, etc.

The data list of mobile 1C is not limited to, but consider it in more detail in the following publications.

The list above is the full-time possibilities of 1C, and there are still the staff capabilities of the mobile system itself, which can be used by 1C by analogy with how stationary 1C works with printers

Where to get a mobile platform?

You can download the archive with the mobile platform from the 1C update site. In addition, you can get a mobile platform with stationary for free. At the same time, the stationary will not be full version, but the study.

So, we are interested in the archive of Mobile.zip, which contains the following files:

  • 1centerprise_en.htm.
  • 1centerprise_en.htm.
  • Android
  • MobileAppmaker.

In files.htm you will find a license agreement that allows you to develop and test 1C on 50 mobile devices.
Next, you will see three folders, each of which has the files needed to receive
the end version of your application. Consider them in order.
The Android folder contains the following files:

  • 1Cem-Arm.apk.
  • 1cem-x86.apk.
  • prjandroid-arm.zip.
  • prjandroid-x86.zip.

Files with extension.apk is a platform for developers that can be installed on the phone itself. And the remaining files are needed to compile the final version. Please note that the Android devices use two processor architectures: ARM and X86. Accordingly, for each architecture it is necessary to use your version of the application. Determine what architecture from your device is very simple - if you have an Intel processor, then it is x86, everything else is ARM. The most important thing is not to confuse, because if you try to put a version from x86 to the phone with an ARM processor, that is, a considerable share of the probabilities that it will be installed (although it may give an error at the time of installation), but then it will not work correctly or when you start just issue an error And close.
The iOS folder contains files that are needed to work with iOS devices.

  • prjios.zip.
  • prjios_en_ru.zip.

And in the last folder MobileAppMaker is the "Mobile Application Collector" configuration file.

To be continued...