1C:Enterprise 8 Integrated Framework
On the one hand, 1C:Enterprise 8 is an integrated framework where an applied solution is operating while a business application is being used by end-users ('1C:Enterprise' operation mode).
On the other hand, 1C:Enterprise 8 Framework is called 'integrated' because it includes a full set of integrated tools for designing and development of applied solutions ('Designer' operation mode).
The composition of the platform and an applied solution running with it gives us a business application, as it's seen by a user.
Therefore, the platform is an execution environment for an applied solution, and it's also a development framework, with a complete set of tools for development, administration and maintenance of business applications created on the platform.
The important thing about the platform is that it provides a developer with a single development model that isolates the one from terms and details of lower-level technologies and other platforms where it operates (such as operating systems). This allows
The platform includes a number of templates of business components, such as document templates (for invoices, orders, bills, etc), catalog templates (for various lists, like personnel roll, or catalog of customers), management accounting mechanism template, real-time asset movements' registration mechanism, templates for complex periodical calculation (such as payroll calculation, flexibly configurable for various economic conditions), etc. For example, if a developer creates a business application with usual tools (universal programming languages), he must think of many details concerning creation of tables, fields, relationships between objects, links, database issues, etc. In case of creation one on the platform, he deals with metadata (i.e. the data describing other data); the framework isolates him from those details, providing a full set of tables, functions forms and properties in the templates.
The scalability support provided by the platform makes a business application capable to work in a standalone computer, in multi-user environment (within LAN) in file-server mode (a native file server engine is included into the platform), in a three-tier architecture with a separated application server (1C:Enterprise 8) and MS SQL Server, PostgreSQL or IBM DB2 databases, as well as with a distributed database (i.e. on a standalone PC interacting with a central database, but without a permanent connection with it).
There is an embedded language (similar to Java Script) used for creation an application's business logic or modification of standard objects' behaviour; a native SQL-like query language, supporting all SQL standard, but extending it with more business tasks-oriented features.
Reporting mechanism uses this query language to provide a quick and easy visual way to build representative reports, and for a user to compose his own (customized) reports or modify existing ones without the need to write some code but just using special report building tools. A report may include spreadsheet-styled information, as well as various types of diagrams (charts, histograms, Gantt charts, etc).
Integrated localization support allows creating business applications with multilingual interfaces and with proper date/time formats and number-to-text conversion (for textual representation of totals, for example).
Data exchange support provides working with distributed databases. This is used, for example, for remote offices in arbitrary interaction scheme (centralized or hierarchical, for example). In this case there is one centralized file database server, and the information base is spread across several offices (warehouses, street vendors, etc.). Data exchange occurs only from time to time, at that various means can be used for this - from data upload over Internet to a courier service (with data on external media, such as floppy or flash drive, etc.).
Web-extension uses .NET Framework technology and makes it possible to access a business application's functionality; this is very useful for mobile users or remote departments.
A powerful access rights system controls user access to diverse business information. It allows management for user access on various levels - from access to entire documents to particular fields in forms (row-level security). The system also provides logging of users' activity; the log can be viewed only by users permitted to do so.
User productivity means include several aspects. First, this is the ergonomic user interface, designed for continuous user work. It provides such convenient features as 'data entry by line' (the system displays a drop-down list with items from a catalog, beginning with the one or several letters typed by user), speeding up mass data entry times faster; or 'auto select' mode, when a user, using a single adjustable hot-key, selects a unfilled field in a form, fills it with data and goes over to next field, etc. This is important for tasks involving mass data entry. The second thing is that a user is provided with a developed help system, on both the platform and the business application he's using. The third, there is a set of means making work with the system for a user more productive, such optimization of browsing broad lists and tables, data filtration by a substring, etc.
Developed administration means include 1C native authentication, also support Windows authentication, user actions log, database set up and maintenance, platform and business applications update, client-server and file server administration tools, file database restore tool, lists of active users, etc.
The complete set of integrated development tools is intended for creation of complete commercial business applications and modifying existing ones. Designer is a powerful visual development tool (IDE) specially designed to provide rapid application development (RAD). Development of economic business applications with 1C:Enterprise Designer is times faster than in case of using universal programming languages for the same goal. It is efficient and convenient way for a developer to create, debug and profile business applications. There are means for group development, including versioning, checking-in/out functionality, visual comparison of versions and other means.
This unique composition of integrated means, and technologies makes 1C:Enterprise platform a very flexible and comprehensive tool for implementation of the tasks being solved by business applications created and functioning on the base of the platform.