appRules® Concepts & Features
Before jumping in to start composing and orchestrating your projects with appRules, it is recommended that you review this section to get a basic idea of the concepts that drive appRules.
The concepts are not discussed in detail here but are rather presented in a concise manner to help you hit the ground running. In addition to understanding the concepts and features, this section will also introduce you to the most frequently used terms in appRules.
While appRules features so many options, only the key common features are included in this section.
appRules is a no-code environment that includes thousands of configurable options for performing all design and runtime tasks for data migration, data integration, business rules and process automation.
Simple and complex conditions to be evaluated by the system can be defined and maintained without writing code.
Simple and complex actions to be performed by the system during processing can be defined and maintained without writing code.
The actual work performed by appRules projects are done through the execution of one or more workflow activities. Workflow activities in appRules are actually actions and conditions participating in orchestration.
A workflow activity takes input and gives output and contains user-configurable variables and properties. appRules workflow activities are grouped into modules that can be configured to complete a process. appRules activities are able to move and share data between modules and also with external systems.
Each module is specific to the features of the application that it supports -- including files, databases, SaaS etc.
The process of composing your projects (workflows), involves dragging activities on to the designer, configuring the associated properties, and associating them in a logical sequence order.
appRules is based on appStrategy’s appConnector technology. appConnector technology delivers software libraries that connect a wide variety of applications and data sources.
appConnector functionality is based on workflow activities that are packaged in modules related to the job they perform as a group.
To use a module, refer to its documentation in the Data Sources section.
The appRules Data Migration Engine is a powerful engine based on the appRules platform that supports several data migration options include replication and synchronization. appRules Data Migration engine works with hundreds of data sources. It is sold as a separate appRules platform product.
The appRules Integration & Automation Engine is a powerful engine based on the appRules platform that supports integration, automation, and business rules processes. Decision Tables, Rule Sets and other features are included in the appRules Integration & Automation Engine. It is sold as a separate appRules platform product.
appRules Enterprise 360 is the enterprise suite that includes the appRules Data Migration Engine and the appRules Integration & Automation Engine - the All-In-One package.
In appRules, projects are composed and orchestrated as opposed to being programmed or developed. Using appConnector modules with powerful activities featuring easy-to-use and reusable editors makes this possible.
To compose projects in appRules, you simply drag and drop activities from the toolbox onto the designer and associate them in sequence using control flow activities (while, if, sequence …):
appRules includes a Microsoft SQL Server compatible embedded database that you can use to host your small and mid-size projects. No installation or configuration is required for the appRules Embedded Database - it is automatically installed and configured.
appRules stores projects in project databases. Your project database can contain a few, or unlimited number of projects. You can also maintain several project databases and synchronize data between project databases. This feature makes it easy for you to maintain separate environments for Development, Test and Production.
Project databases are not just used for storing your job definitions. They also store other data including data source definitions, lists, settings and logs. appRules currently supports the appRules Embedded Database and Microsoft SQL Server as project databases. The appRules Embedded database is used mostly for development and for small and medium deployments. It requires little or no resources to create and maintain. The samples supplied with appRules are in the appRules Embedded database.
appRules includes utilities (CheckIn/CheckOut) that allow you to move your project database from one format to another.
A project database named Samples is installed along with your edition of the appRules software product.
The Samples database contains several examples that show you how to hit the ground running with appRules.
In addition, a database named Northwind containing test data is also automatically installed on your computer.
Before running other sample projects (non-Northwind samples), make sure that you properly configure the required settings (connection strings, authentication etc.).
Most software projects consume a lot of time at runtime (configuring registry settings, checking activations, connection strings, file locations, location specific defaults, etc.). To alleviate these problems, appRules includes Runtime Settings that you can use to define how your projects will be deployed -- even before the projects are composed. For example, you can create runtime settings for Development, Test and Production. You can also create runtime settings for departments, teams and locations. There is no limit to the number of runtime settings that you can define. Runtime Settings are linked to users running the projects.
appRules relies on data source metadata for all processing. Metadata is generated from the data sources and stored in the project database.
When creating a data source, appRules gathers not only information related to entities or table metadata, but also any additional information included in the database of applications including pick lists and data mapping information.
To deliver a code-free environment where projects can be created and deployed quickly, appRules employs “Sourced Values”. In simple terms, a Sourced Value allows you to quickly select a source for a value and an identifier for it. To specify a sourced value, you select the Source and then specify a value identifier (Source Value Identifier). Below are some examples of the many sourced values used in appRules:
The String source allows you to enter any value in the value identifier. Example: “Constant:John Smith”
The DataFieldValue source gets a value from a record that exists in a specific Source or Target in the project. Example: “Employees.LastName” gets the value of the LastName column in the Employees record.
The DateTime sourced value points to a date/time related value. They can also be used to specify other date/time related data. Example: “DateTime.DateTimeNow” generates the current date/time.
The ActionField source allows you to select results of specific actions
The above examples give you an idea of how Sourced Values are defined and used in appRules. There are over one hundred Sourced Values and associated types that you can use to specify data anywhere in your projects.
By providing a rich set of editors and controls to manage Sourced Values, appRules is able to provide a very powerful and flexible combination that gives users the fastest and most compact environment for configuring actions, conditions, activities and orchestrating processes.
Sourced Values in Property Grid
Below are examples of Sourced Value controls on the property grid at design time:
Data Managers are a special set of workflow activities that can be initialized as Sources or Targets in the appRules project. Source Data Managers retrieve data records from a data source and make the records and values in them available for other modules in the project. Target Data Managers are used for saving records to a specific data source. The properties, connectors configuration options, and execution context of Data Managers is based on the parent module of the Data Manager.
appRules projects can support an unlimited number of Source and Target Data Managers in the same project. And you can define configuration values using values from unrelated Sources/Targets and even dynamic values. A standard Source can be initialized using an InitializeSource activity and a standard Target activity can be initialized using an InitializeTarget activity.
In addition to standard Data Managers (Source & Target), appRules also supports derived Data Managers such as Lists, Lookups, PreloadedRecords, PickLists, etc.
appRules persists the values of the current records of Data Managers so they can be utilized by other activities using the DataFieldValue Sourced Value. Some appConnector modules provide additional Data Managers that are specific to the data source.
You can configure your appRules project to log as much information as possible regarding the process. Several selections are included for viewing logs and other project runtime data. After running the job or while it is still running, you can view all details related to the job, including Condition, Action and Activity statistics, Source and Target statistics, performance logs and error logs.