Bpm'online Developer Guide
Total Page:16
File Type:pdf, Size:1020Kb
Bpm’online Development Guide Simplify the future Table of Contents Getting started with the bpm’online platform 10 Architecture 10 Application infrastructure 10-14 Components 14-16 Packages, schemas, modules 16-21 Application interface and structure 21 Main menu 21-22 Sections 22-23 Section lists 23-26 Section analytics 26 Section actions 26-27 Filters 27-29 Tags 30 Record edit page 30-31 Details 31-34 Mini-page 34 Modal windows 34-35 Communication panel 35-36 Command line 36-37 Action dashboard 37 Development tools 38 How to start development 38 Development process organization 38-39 Organizing a development environment 39-41 Recommended development sequence 41-45 Development rules 45-46 How to deploy bpm'online on-site 46-57 Deploying the bpm'online "cloud" application 57-59 Create user and setup workspaces 59 Create repository in SVN server 59-62 Working with packages 62 Package structure and contents 62-65 Package dependencies. Basic application packages 65-70 Package [Custom] 70-71 Creating and installing a package for development 71-75 Committing a package to repository 75-77 Installing packages from repository 77-80 Updating package from repository 80-81 Installing packages from an application 81-85 Exporting packages from the application interface 85-87 Creating a package in the file system development mode 87-94 Transferring changes between the working environments 94 Transferring changes using schema export and import 94-96 Transferring changes using SVN 96-98 Transferring changes using WorkspaceConsole 98-101 Creating a custom client module schema 101-106 Creating the entity schema 106-115 Creating the [Source code] schema 115-116 Development resources 116 Built-in development tools 116-117 General information about the [Configuration] section 117 Source code and metadata viewport 117-119 Designers of configuration items 119-120 Workspace of the Object Designer 120-121 Module designer 121-124 Source code designer 124-126 Process designer workspace 126-127 User task designer workspace 127-128 Workspace of image list designer 128-129 DevExpress report designer 129-130 Setting up the report designer connection with server 130-131 Report designer workspace 131-135 Report designer features 135-139 Development in the file system 139-142 Visual Studio settings for development in the file system 142-147 Working with the server side source code in Visual Studio 147-152 Working with the client code in the file system 152-155 Working with SVN in the file system 155-158 Working with WorkspaceConsole 158 WorkspaceConsole settings 158-159 WorkspaceConsole parameters 159-163 Exporting packages from database 163-165 Saving packages to the database 165-168 Saving SVN packages 168-170 Client code debugging 170-174 Server code debugging 174-182 Bpm’online development cases 183 Section business logic 183 Creating new section 183-186 Adding an action to the list 186-188 How to add a section action: handling the selection of a single record 188-191 How to add a section action: handling the selection of several records 191-195 Handling the selection of several records. Examples 195-202 How to add a button to a section 202-205 How to highlight a record in the list in color 205-207 How to add a fixed filters block to the section 207-210 Page configuration 210 Setting the edit page fields using business rules 210-213 Adding the [FILTRATION] rule to the edit page 213-216 How to hide the edit page field by a specific condition 216-222 How to block the edit page field by a specific condition 222-224 How to make the field required by a specific condition 224-227 Business rules created in wizards 227-229 Adding an action to the edit page 229-234 Control elements 234 Adding a new field to the edit page 234-239 Adding a button to the edit page 239-241 How to add a button to an edit page in the new record add mode 241-244 How to add a button to an existing record edit page 244-249 How to add a field with an image to the edit page 249-256 How to add the color select button to the edit page 256-259 How to add multi-currency field 259-266 How to add a computed field 266-271 How to set a default value for a field 271-276 How to add the field validation 276-283 Using filtration for lookup fields. Examples 283-286 Adding an action panel 286-289 Adding a new channel to the action dashboard 289-294 Displaying contact's time zone 294-300 Adding details 300 Adding an edit page detail 300-309 Adding a detail with an editable list 309-316 Adding a detail with a lookup 316-324 Adding multiple records to a detail 324-327 Creating a custom detail with fields 327-332 Advanced settings of a custom detail with fields 332-337 Creating a detail in wizards 337-341 How to hide menu commands of the detail with list 341-342 Business processes 342 How to add auto-numbering to the edit page field 342-346 How to run a process from client module 346-350 Creating custom [User task] process element 350-360 Typical customizations 360 How to create a mini-page 360-368 Adding a mini-page to a module 368-373 Adding pop-up hints 373-380 How to modify sales pipeline calculations 380-384 How to add extra filtering to a pipeline 384-386 Adding a custom dashboard widget 386-392 The Terrasoft.AlignableContainer custom element 392-401 Adding a duplicate search rule 401-404 Junk case custom filtering 404-405 Analytics 405 How to create own macros for a MS Word printable 405-413 Working with data 413 CRUD-operations in configuration 413 The use of EntitySchemaQuery implementation on client 413-414 Building of paths to columns relative to root schema 414-415 Adding columns to a query 415-418 Getting query result 418-419 EntitySchemaQuery filters handling 420-423 CRUD-operations on server side 423 Composing add data queries 423-424 The use of EntitySchemaQuery for creation of queries in database 424-435 Composing modify data queries 435-436 Composing delete data queries 436 Web-services in configuration 436 How to create own configuration service 436-438 How to call a configuration service 438-440 Reading multilingual data with EntitySchemaQuery 440-442 Views localization 442-447 Working with the localized data via Entity 447-451 Adding a multilingual terminator to an object schema 451-453 Using the DBExecutor for working with the database 453-454 Mobile application 454-455 Mobile application debugging 455-459 How to add a custom section to a mobile application 459-472 Working with editable lists in the mobile app 472-474 Adding the [Attachments] detail to the section in mobile application 474-479 Adding a custom widget to the mobile application 479-481 Service products customization 481-482 Adding a new rule for the case deadline calculation 482-487 Adding a macro handler in email templates 487-489 Creating Web-to-Case landing pages 489-494 How to hide feed area in the agent desktop 494-496 Lending product customization 496 How to create custom verification action page 496-500 Using the EntityMapper schema 500-506 Recommended integration options 507 Authenticating external requests to bpm'online web-services 507 The AuthService.svc authentication service 507-511 Protection from CSRF attacks during integration with bpm'online 511-512 DataService web service 512-514 DataService. Adding records 514-521 DataService. Reading records 521-531 DataService. Data filtering 531-537 DataService. Using macros 537-541 DataService. Updating records 541-546 DataServiсe. Deleting records 546-550 DataService. Batch queries 550-554 OData 554 Possibilities for the bpm'online integration over the OData protocol 554-556 Working with bpm'online objects over the OData protocol using Http 556-564 request Working with bpm'online objects over the OData protocol WCF-client 564-570 Examples of requests for filter selection 570-574 Integration of third-party sites via iframe 574-578 Platform description 579 System Settings 579 Setting user session timeout 579-581 Working with data structure 582 Configuration localizable resources 582-585 Localizable resource structure and use 585-587 Localization tables 587-588 Bound data structure 588-590 User interface 590 AMD concept Modules 590-592 Modular development principles in bpm'online 592-598 Client Modules 598-603 Client view model schemas 603-604 Mixins. The "mixins" property 604-605 Attributes. The "attributes" property 605-607 Messages. The "messages" property 607-608 Methods. The "methods" property 608-609 Rules. The "rules" property 609 Business rules. The businessRules property 609-610 Modules. The "modules" property 610-611 The "diff" array 611-613 Alias mechanism 613-616 Schema formatting requirements for compatibility with wizards 617-621 Handling a data context loss 621-625 Properties. The "properties" property 625-626 Controls 626 Controls. Introduction 626-627 Details 627-635 The [Connected entity profile] control 635-645 SourceCodeEditMixin class description and work examples. 645-648 Dashboard widgets 648-651 Charts 651-653 Metrics 653-654 Gauge 654-655 Lists 655-656 Web-page 656-657 Sales pipeline 657-658 Integration 658 Phone integration 658-661 Oktell 661-664 Webitel 664-665 Asterisk 665-667 Email integration 667 Working with email threads 667-669 Mobile application 669-670 Mobile app architecture 670-674 Mobile application manifest 674-676 Manifest. Application interface properties 676-678 Manifest. Data and business logic properties 679-681 Manifest. Application synchronization properties 681-685 Mobile application background update 685 Resolving synchronization conflicts automatically 686 Batch mode export 686-687 Getting the settings and data from the [Dashboards] section 687-689 Self-service Portal 689-690 ClientMessageBridge 690 ClientMessageBridge .