# Developing Web-Based Process Management with Automatic Code Generation
## 3 Architecture
### Automatic Code Generation to Create a Task
```
1<divclass=\"entity-form-contentform\">
2<formaction=\"javascript:void(0)\"
3 data-plugin=\"form\"
4 name=\"Student_form\"
5 data-plugin-settings=('Common':{},'Definition':{})\"
6 data-plugin-proxies=\"[
7{
8'Handler':'UICrt',
9'Service':'StudentService',
10'Module':'Student',
11'Function':'Create',
12'Inputs':['StudentName','CreateUserID'],
13'Require':[]
14},
15}
16'Handler':'UISlc',
17'Service':'StudentService',
18'Module':'Student',
19'Function':'Head',
20'Inputs':['StudentID'],
21'Require':[]
22},
23'Handler':'UIDdt',
24'Service':'StudentService',
25'Module':'Student',
26'Function':'Update',
27'Inputs':['StudentID','StudentName','CreateUserID'],
28'Require':[]},
29{
30'Handler':'UID',
31'Service':'StudentService',
32'Module':'Student',
33'Function':'Delete',
34'Inputs':['StudentID','CreateUserID'],
35'Require':[]},
36{
37'Handler':'UIClc',
38'Service':'StudentService',
39'Module':'Student',
40'Function':'Lock','Inputs':['StudentID'],
41'Require':[]
42},
43{'Handler':'UIClc',
44'Service':'StudentService',
45'Module':'Student',
46'Function':'UnLock',
47'Inputs':['StudentID'],
48'Require':[]
49}]\"
50 data-plugin-description='{'Name':'form','Type':'form',' Settings':{'Common':{},'Definition':{}},
51'Route':{'ServiceName':'StudentService','ModuleName':' Student',
52'WorkName':'studenttableform2_10_09_2023_ww'}\"
53 data-plugin-listens=\"[
54{
55{
56'ActionFunction':'lock',
57{'ListenerPlugin':'lock',
58},
59{
60'ActionFunction':'unlock',
61'ListenerPlugin':'unlock',
62'ListenerEvent':'Student_unlock_click'}
63},
64{
65{
66 This templating approach illuminates how the data and presentation layer are effectively separated and integrated with dynamic web applications. This methodology significantly facilitates code readability and maintainability while increasing the flexibility of the application. In addition, we observe that dynamic HTML generation is possible in just a few steps by incorporating a manually created database into the low-code platform with the \"Register\" command and then using the \"Generate JSON\" and \"Generate HTML\" commands. This dramatically increases the efficiency and speed of development processes. The integration between the interface and the backend is realized using the RESTful web service. This methodology unlocks the potential of automatically coding existing stored procedures based on database tables. The generated code is compatible with RESTful service protocols. Following the automated coding process, the resulting web service code is compiled, and the DLL file generated due to this compilation must be hosted on the target server. The automation process is presented in the pseudocode below. In this pseudocode, the \"Create\" and \"Update\" methods are examples of the web service code

Figure 4.0 GeneratedHTML web page view. pattern (Listing 7). We can observe that the CreateMethodName, MethodReturnType, table name, and model variables are dynamically assigned; these variables are populated based on the corresponding database table, thus enabling automatic code generation. ```
1[Route(^<+=MetaHelp.CreateMethodName#>^)]
2[HttpPost]
3 public<#=MetaHelp.MethodReturnType#><#=MetaHelp.CreateMethodName#>
4(SP_<#=table.Name#>_SELECT_Resultmodel)
5{
6 returndb.SP_<#=table.Name#>_CREATE(
7<=NETHelp.WriteCreateClause(table, \"model\")#>).FirstOrDefault();
8}
9[Route(^<+=MetaHelp.UpdateMethodName#>^)]
10[HttpPut]
11 public<#=MetaHelp.MethodReturnType#><#=MetaHelp.UpdateMethodName#>
12(SP_<#=table.Name#>_SELECT_Resultmodel)
13{
14 returndb.SP_<#=table.Name#>_UPDATE(
15<#=NETHelp.WriteUpdateValues(table, \"model\")#>).FirstOrDefault();
16}
```
The automatically generated code of the ASP.NET Web API is essential in data integration. However, it should be noted that this automatic process requires some manual steps. In particular, the DLL obtained after compilation must be manually integrated into the server. This is an indispensable step for efficient data transmission between the client and the backend.