010-68421378
sales@cogitosoft.com
Your location:Home>News Center >New release

Optimajet--DWkit

latest update:2023/07/12 Views:505
Develop workflow applications fast with high-performance low-code

Optimajet--DWkit

Workflow platform

Develop workflow applications fast with high-performance low-code

DWKit is a development platform that allows .NET developers to build and deploy process management applications quickly and easily.

DWKit is an extremely fast and friendly business process management solution that allows you to create your applications, workflows, forms, and custom processes quickly and efficiently.

DWKit’s main goal is to help you effectively manage form and business process development time with drag&drop interaction. In our estimation, using DWKit allows you to shorten your first release cycle fourfold and reduce your project Total Cost of Ownership by 30%.

 

Architecture

 

Generally, DWKit consists of two React-based client SPA and a NETCoreApp2.*-based server side. Server side uses ASP.NET Core to organize HTTP REST API for client applications. The two client applications are:

Data model. Introduction

Describe your data model to allow DWKit to work with your database. Each data model entity refers to a table in the database. Data model also includes attributes which correlate to table columns in the database. In this section you will learn how to create Data Model and synchronize it with database, which attributes (columns) you can create and how they work. We'll also talk about primary keys selection.

Data Model and database synchronization in DWKit

Very often, when you have just started creating a new system, you already have partially or fully-built database. In the Sync With Database section in the admin panel you can synchronize your database with your Data Models. DWKit will request to analyze database structure and will specify discrepancies between your database and Data Models. After which you'll be able to apply this difference to all Data Models in the system or to a particular attribute of a certain Data Model. In this way, DWKit adheres to designing the data structure when the database is primary. First you make changes to your database and then transfer these changes to DWKit. We do not provide reverse synchronization (transfer of changes from DWKit into the database) for the following reasons:

Data Model editing in DWKit

Any DWKit-based system developer (or advance user) usually edits Data Models in the Manage data model section of the admin panel. See UI example here. This interface describes which table in database Data Model and all its attributes (columns) are bound to.

Storing Data Models in DWKit

DWKit stores JSON serialized Data Models in the file system. By default, Data Models are stored in the Metadata folder in the metadata.json file of ASP.NET MVC Core DWKit project. In all our examples and starter packs this project is called OptimaJet.DWKit.StarterApplication. Thus, you can use your favorite VCS (for example, git) for joint development and data models version control.

Forms. Introduction

DWKit in its frontend displays forms which as a rule are created in DWKit admin panel. In this section we're going to describe all aspects connected with forms creation and binding data to forms. You can read about writing server code to handle form events and manipulate data in the Server side section. As for writing client code to handle events from form components - learn more about it in the following section: Client side.

Form editing implementation in DWKit

Any developer (or advance user) of the system created on DWKit basis, usually creates forms in the Manage forms section in admin panel. When creating a form, DWKit component interface is launched, which is called Form Builder. See example here. If we go further into detail, we'll learn that React component  from optimajet-builder.js library is embedded in admin panel. It is responsible for form editor display and transforming visual markdown of the edited form into text markdown in JSON format. Everything that you edit in Form Builder will be saved in JSON file. Also, there's a Preview mode in the form editor. Turn it on to see how this form will look like in users' eyes. We recommend to watch this video Form builder in DWKit and building your first form, to understand the process of form creation and editing.

What do the process management features in DWKit provide

Besides DWKit our company also has another great product - Workflow Engine.NET. It is an embedded workflow engine with graphic HTML5 designer. It is fully integrated into DWKit. It means that DWKit can use 100% capacity of Workflow Engine.NET. However, as DWKit is a business app builder, we have added additional features into it to simplify Workflow Engine.NET usage. Such as:

Where is the process management features control carried out

Process schemes, business flows, command forms are created in the Workflow section of the admin panel. Also, there's an interface in this section which controls all created processes in the system: Manage instances. Here you can find any process created in the system, review it and change its state. Scheme connection to process is executed in Form builder. Here you can specify which process the form is using and place special Workflow bar component into the form, which displays command buttons and allows forced changes to workflow process state. End user manages process, by clicking command buttons in the Workflow bar.

Where to start

We suggest the following sequence of steps to learn how to manage workflow features in DWKit:

Where can I find the server-side code that is responsible for process management features

Workflow runtime is the main object which controls processes on server. It is configured in the OptimaJet.DWKit.Application/WorkflowInit.cs class. Learn more about Workflow runtime settings in Workflow Engine.NET documentation. There is also a WorkflowController controller on server-side. Graphic designer of scheme processes works using its methods. This controller returns available commands for execution and available states for process state changing. It is also responsible for command execution and process state changing.

Next:Dynamsoft--A Guide to Industrial Cameras for Pallet Barcode Scanning
Prev:Advanced animation with Vyond and Adobe

© Copyright 2000-2023  COGITO SOFTWARE CO.,LTD. All rights reserved