-
What is Bitrix Framework?
-
Production Architecture
-
Production Architecture
-
Structure of files
-
Access Rights
-
A Site in Terms of Bitrix Framework
-
-
Processing Techniques
-
Core D7
-
Modules
-
Name Spaces
-
Core Parameter Setup
-
Exceptions
-
Events
-
Code Writing Rules
-
Applications and Context
-
Errors
-
ORM
-
API
-
Highloadblock
-
-
Design Integration
-
Using Access Rights
-
Site Design Template
-
Using message files for localization
-
Editable areas
-
Navigation tools
-
Advertisement
-
Managing Template Service Data
-
Editing Service Areas
-
Managing Page Encoding
-
Managing Document Header
-
Managing Metadata Values
-
CSS management
-
-
Setup of External Appearance of Additional Elements of the Site Design
-
-
Information Blocks
-
Working with Infoblocks Using Standard Means
-
Infoblocks 2.0
-
Action Plan in Case of Problems
-
Sorting
-
Work with Infoblocks through API
-
Examples
-
-
Components
-
Simple and composite components
-
Location of a Component in the System and Its Connection
-
Component Structure
-
Composite Component Structure
-
Component Description
-
Component Parameters
-
Component Templates
-
Support of Component Classes
-
result_modifier.php
-
component_epilog.php
-
Operation of a Composite Component in a SEF Mode
-
Frequent Errors
-
Component Caching
-
Working with Components
-
Template Customization
-
Component Customization
-
Creating Components
-
Additional Methods
-
Redefinition of Incoming Variables
-
User-Defined Templating Engines
-
Operation of a Composite Component in SEF Mode
-
Ways of Data Transmission among Components
-
A Simple Example of a Component Creation
-
Component Creation Example
-
TinyMCE Visual Editor Integration Component
-
Caching in own components
-
-
CUSTOM Parameter Type
-
More examples
-
Errors When Working with Components
-
-
-
Modules
-
Programming in Bitrix Framework
-
Golden Rules
-
The file init.php
-
UTF-8 or a National Encoding?
-
Working with Databases
-
Setup of SEF for URLs
-
Language Files
-
JS Library
-
Interface of the Control Panel Toolbar as Seen by a Developer
-
Some Theory
-
Performance
-
Security
-
Examples, tricks, and advice
-
Custom Fields
-
Gadgets
-
Project Testing
-
Project Quality Control
-
Debugging Web Applications
-
-
Push and Pull module
-
Version Control System
-
-
Multiple Sites
-
Introduction
-
Use of Multiple Site Version
-
How many sites can I create?
-
Language versions (mirrors)
-
Sharing visitors between sites
-
Configuring the multisite system
-
Working with the Data in a Multiple Site Configuration
-
Frequent Questions Arising When Working with a Multiple Site Configuration
-
-
Business Processes for Developer
-
Template of a Business Process
-
Business Process
-
Activities
-
Executing a business process activity using API
-
Arbitrary PHP Code in a Business Process
-
-
Additional Information and Examples
Business Process
Lesson 237 out of 253
A business process ceases to exist upon after its termination. But its status is maintained and available for use.
A business process is always executed over a certain document which is determined by its code. In this case, the document may not have a physical representation (i.e. it can be virtual). Business process may be set up for automatic launch in case any document is added or any modification is done to a document.
Each business process has a unique identification code which can be assigned by an executing environment or preset by the programmer. The code may be used to access a certain business process.
An event can be sent to a business process using methods of executing environment. The message is sent to the business process using its unique code.
When launched, a business process can accept as input parameters the values which list is preset at the business process’ design stage. For example, it can be an order ID or a current user’s code. Any activity of a business process will have access to these parameters.
A business process is not necessarily executed continuously. For example, a business process contains the activity CBPDelayActivity (executes a delay, postponing execution for a certain term), in which the business process enters into a wait condition, gets saved into the database, and then is removed from memory. Upon the expiry of the preset time, the business process is read from the database, recalled in memory, and goes on executing from the stop point on.
Advice
To see all the interior details during debugging, for example, in order to understand which variables can be operated, introduce the following PHP code into the points of interest in the diagram: echo "<pre>", print_r( $_REQUEST ), "</pre>"; echo "-----<br />"; echo "<pre>", print_r( $this ), "</pre>"; exit;After that, launch the business process for execution, for example, create or edit an infoblock element and take your time reviewing the process. |