ApiLogicServer 14.3.20__py3-none-any.whl → 14.4.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. api_logic_server_cli/api_logic_server.py +5 -14
  2. api_logic_server_cli/api_logic_server_info.yaml +3 -3
  3. api_logic_server_cli/cli.py +52 -5
  4. api_logic_server_cli/create_from_model/__pycache__/create_db_from_model.cpython-312.pyc +0 -0
  5. api_logic_server_cli/create_from_model/__pycache__/ont_build.cpython-312.pyc +0 -0
  6. api_logic_server_cli/create_from_model/__pycache__/ont_create.cpython-312.pyc +0 -0
  7. api_logic_server_cli/create_from_model/create_db_from_model.py +2 -0
  8. api_logic_server_cli/create_from_model/ont_build.py +19 -14
  9. api_logic_server_cli/create_from_model/ont_create.py +5 -5
  10. api_logic_server_cli/create_from_model/safrs-react-admin-npm-build/static/.DS_Store +0 -0
  11. api_logic_server_cli/database/nw-gold-fix.sql +62 -0
  12. api_logic_server_cli/database/nw-gold.sqlite +0 -0
  13. api_logic_server_cli/fragments/docker-compose.yml +27 -0
  14. api_logic_server_cli/genai/genai.py +43 -11
  15. api_logic_server_cli/genai/genai_graphics.py +379 -0
  16. api_logic_server_cli/genai/genai_logic_builder.py +2 -2
  17. api_logic_server_cli/genai/genai_svcs.py +24 -8
  18. api_logic_server_cli/manager.py +19 -10
  19. api_logic_server_cli/prototypes/.DS_Store +0 -0
  20. api_logic_server_cli/prototypes/base/.DS_Store +0 -0
  21. api_logic_server_cli/prototypes/base/.vscode/launch.json +19 -0
  22. api_logic_server_cli/prototypes/base/api/expose_api_models.py +3 -1
  23. api_logic_server_cli/prototypes/base/api_logic_server_run.py +5 -2
  24. api_logic_server_cli/prototypes/base/config/activate_logicbank.py +1 -0
  25. api_logic_server_cli/prototypes/base/config/config.py +95 -24
  26. api_logic_server_cli/prototypes/base/config/logging.yml +1 -0
  27. api_logic_server_cli/prototypes/base/config/server_setup.py +33 -1
  28. api_logic_server_cli/prototypes/base/database/test_data/readme.md +3 -1
  29. api_logic_server_cli/prototypes/base/devops/docker-standard-image/docker-compose-standard-image.yml +7 -2
  30. api_logic_server_cli/prototypes/base/docs/graphics/readme.md +12 -0
  31. api_logic_server_cli/prototypes/base/docs/training/logic_bank_api.prompt +314 -0
  32. api_logic_server_cli/prototypes/base/docs/training/logic_example.py +41 -0
  33. api_logic_server_cli/prototypes/base/integration/kafka/kafka_producer.py +7 -3
  34. api_logic_server_cli/prototypes/base/integration/system/FlaskKafka.py +5 -1
  35. api_logic_server_cli/prototypes/base/security/authentication_provider/keycloak/auth_provider.py +1 -1
  36. api_logic_server_cli/prototypes/base/security/declare_security.py +4 -0
  37. api_logic_server_cli/prototypes/base/ui/admin/admin_loader.py +3 -1
  38. api_logic_server_cli/prototypes/base/ui/templates/bar_chart.jinja +64 -0
  39. api_logic_server_cli/prototypes/genai_demo/ui/admin/admin.yaml +1 -1
  40. api_logic_server_cli/prototypes/manager/README.md +56 -5
  41. api_logic_server_cli/prototypes/manager/system/genai/.DS_Store +0 -0
  42. api_logic_server_cli/prototypes/manager/system/genai/examples/.DS_Store +0 -0
  43. api_logic_server_cli/prototypes/manager/system/genai/examples/genai_demo/.DS_Store +0 -0
  44. api_logic_server_cli/prototypes/manager/system/genai/examples/genai_demo/genai_demo.prompt +0 -8
  45. api_logic_server_cli/prototypes/manager/system/genai/examples/genai_demo/genai_demo.response_example +90 -60
  46. api_logic_server_cli/prototypes/manager/system/genai/examples/genai_demo/genai_demo_docs_logic/docs/002_create_db_models.prompt +4 -4
  47. api_logic_server_cli/prototypes/manager/system/genai/examples/genai_demo/genai_demo_docs_logic/docs/003_create_db_models.response +77 -47
  48. api_logic_server_cli/prototypes/manager/system/genai/examples/genai_demo/genai_demo_informal.prompt +1 -1
  49. api_logic_server_cli/prototypes/manager/system/genai/graphics_templates/dashboard_services.jinja +83 -0
  50. api_logic_server_cli/prototypes/manager/system/genai/graphics_templates/graphics_dashboard_WIP.py +34 -0
  51. api_logic_server_cli/prototypes/manager/system/genai/graphics_templates/graphics_services_api_xxx.py +32 -0
  52. api_logic_server_cli/prototypes/manager/system/genai/graphics_templates/graphics_services_db.jinja +46 -0
  53. api_logic_server_cli/prototypes/manager/system/genai/graphics_templates/graphics_services_db_each_method.jinja +36 -0
  54. api_logic_server_cli/prototypes/manager/system/genai/graphics_templates/html_template.jinja +76 -0
  55. api_logic_server_cli/prototypes/manager/system/genai/graphics_templates/index.html +19 -0
  56. api_logic_server_cli/prototypes/manager/system/genai/graphics_templates/sales_by_region.jinja +63 -0
  57. api_logic_server_cli/prototypes/manager/system/genai/prompt_inserts/graphics.prompt +22 -0
  58. api_logic_server_cli/prototypes/manager/system/genai/prompt_inserts/graphics_request.prompt +5 -0
  59. api_logic_server_cli/prototypes/manager/system/genai/prompt_inserts/response_format.prompt +15 -0
  60. api_logic_server_cli/prototypes/manager/system/genai/prompt_inserts/sqlite_inserts.prompt +2 -0
  61. api_logic_server_cli/prototypes/manager/system/install-ApiLogicServer-dev/install-ApiLogicServer-dev.ps1 +100 -0
  62. api_logic_server_cli/prototypes/manager/system/install-ApiLogicServer-dev/install-ApiLogicServer-dev.sh +116 -0
  63. api_logic_server_cli/prototypes/manager/system/install-ApiLogicServer-dev/readme.md +7 -0
  64. api_logic_server_cli/prototypes/manager/system/style-guide.yaml +2 -2
  65. api_logic_server_cli/prototypes/manager/webgenai/README.md +6 -0
  66. api_logic_server_cli/prototypes/nw/docs/graphics/count_orders_by_category.prompt +1 -0
  67. api_logic_server_cli/prototypes/nw/docs/graphics/order_count_by_month.prompt +1 -0
  68. api_logic_server_cli/prototypes/nw/docs/graphics/request copy.json +892 -0
  69. api_logic_server_cli/prototypes/nw/docs/graphics/request.json +6 -0
  70. api_logic_server_cli/prototypes/nw/docs/graphics/response.json +17 -0
  71. api_logic_server_cli/prototypes/nw/docs/graphics/response.yaml +59 -0
  72. api_logic_server_cli/prototypes/nw/docs/graphics/sales_by_category.prompt +1 -0
  73. api_logic_server_cli/prototypes/nw/ui/admin/home.js +5 -4
  74. api_logic_server_cli/prototypes/nw/ui/app_model_custom.yaml +851 -1082
  75. api_logic_server_cli/prototypes/nw_no_cust/docs/graphics/count_orders_by_category.prompt +1 -0
  76. api_logic_server_cli/prototypes/nw_no_cust/docs/graphics/request copy.json +892 -0
  77. api_logic_server_cli/prototypes/nw_no_cust/docs/graphics/request.json +6 -0
  78. api_logic_server_cli/prototypes/nw_no_cust/docs/graphics/response.json +17 -0
  79. api_logic_server_cli/prototypes/nw_no_cust/docs/graphics/response.yaml +59 -0
  80. api_logic_server_cli/prototypes/nw_no_cust/docs/graphics/sales_by_category.prompt +1 -0
  81. api_logic_server_cli/prototypes/nw_no_cust/docs/graphics/sales_by_employee.prompt +1 -0
  82. api_logic_server_cli/prototypes/nw_no_cust/integration/mcp/1_langchain_loader.py +19 -0
  83. api_logic_server_cli/prototypes/nw_no_cust/integration/mcp/2_gpt_mcp_prompt.txt +19 -0
  84. api_logic_server_cli/prototypes/nw_no_cust/integration/mcp/3_executor_test_agent.py +38 -0
  85. api_logic_server_cli/prototypes/nw_no_cust/integration/mcp/README.md +17 -0
  86. api_logic_server_cli/prototypes/nw_no_cust/integration/mcp/resources/curl.txt +4 -0
  87. api_logic_server_cli/prototypes/nw_no_cust/integration/mcp/resources/nw_swagger_3.yaml +16660 -0
  88. api_logic_server_cli/prototypes/nw_no_cust/integration/mcp/run_executor.py +23 -0
  89. api_logic_server_cli/prototypes/ont_app/ontimize_seed/nginx/nginx.conf +2 -2
  90. api_logic_server_cli/prototypes/ont_app/ontimize_seed/package.json +6 -6
  91. api_logic_server_cli/prototypes/ont_app/ontimize_seed/src/app/app.config.ts +2 -1
  92. api_logic_server_cli/prototypes/ont_app/ontimize_seed/src/environments/environment.prod.ts +5 -5
  93. api_logic_server_cli/prototypes/ont_app/ontimize_seed/src/environments/environment.ts +5 -5
  94. api_logic_server_cli/prototypes/ont_app/templates/app_config.jinja +1 -1
  95. api_logic_server_cli/prototypes/ont_app/templates/detail_template.html +1 -1
  96. api_logic_server_cli/prototypes/ont_app/templates/new_template.html +16 -16
  97. apilogicserver-14.4.0.dist-info/METADATA +76 -0
  98. {apilogicserver-14.3.20.dist-info → apilogicserver-14.4.0.dist-info}/RECORD +102 -59
  99. {apilogicserver-14.3.20.dist-info → apilogicserver-14.4.0.dist-info}/WHEEL +1 -1
  100. api_logic_server_cli/prototypes/manager/system/genai/prompt_inserts/zsqlite_inserts_iterations.prompt +0 -29
  101. api_logic_server_cli/prototypes/manager/webgenai/docker-compose-webg.yml +0 -33
  102. api_logic_server_cli/prototypes/manager/webgenai/webg_config/license.json +0 -6
  103. api_logic_server_cli/prototypes/manager/webgenai/webg_config/web_genai.txt +0 -13
  104. apilogicserver-14.3.20.dist-info/METADATA +0 -167
  105. {apilogicserver-14.3.20.dist-info → apilogicserver-14.4.0.dist-info}/entry_points.txt +0 -0
  106. {apilogicserver-14.3.20.dist-info → apilogicserver-14.4.0.dist-info}/licenses/LICENSE +0 -0
  107. {apilogicserver-14.3.20.dist-info → apilogicserver-14.4.0.dist-info}/top_level.txt +0 -0
@@ -1,51 +1,522 @@
1
1
  about:
2
- date: 5/17/2024
3
- recent_changes: custom app_model.yaml, api_root, altered Customer/Order/Employee attribute ordering, tab, captions, info, EmpType, dept emps, defaults, show_when, cascade add, toggles, images, security, login, virtual relns, global filters, no IsCommissioned, add expand template to Order, add mode - dialog and exclude - true for a few tables
2
+ date: 7/22/2024
3
+ recent_changes: auth config, api_root, altered Customer/Order/Employee attribute
4
+ ordering, tab captions, info, EmpType, dept emps, defaults, show_when, cascade
5
+ add, toggles, images, security, login, virtual relns, global filters, no IsCommissioned,
6
+ employee.notes as textarea, reln names
4
7
  api_root: '{http_type}://{swagger_host}:{port}/{api}'
5
- authentication:
6
- endpoint: '{http_type}://{swagger_host}:{port}/api/auth/login'
8
+ application:
9
+ app:
10
+ description: generated Ontimize application
11
+ menu_group:
12
+ data:
13
+ icon: edit_square
14
+ menu_item:
15
+ Category:
16
+ icon: edit_square
17
+ menu_name: Category
18
+ menu_title: Category
19
+ page:
20
+ detail:
21
+ columns: CategoryName,Description,Client_id,Id
22
+ include_children: true
23
+ page_name: detail
24
+ template_name: detail_template.html
25
+ title: Category
26
+ typescript_name: detail_component.jinja
27
+ visible_columns: CategoryName,Description,Client_id,Id
28
+ home:
29
+ columns: CategoryName,Description,Client_id,Id
30
+ include_children: true
31
+ page_name: home
32
+ template_name: home_template.html
33
+ title: Category
34
+ typescript_name: home_template.jinja
35
+ visible_columns: CategoryName,Description,Client_id,Id
36
+ new:
37
+ columns: CategoryName,Description,Client_id,Id
38
+ include_children: true
39
+ page_name: new
40
+ template_name: new_template.html
41
+ title: Category
42
+ typescript_name: new_component.jinja
43
+ visible_columns: CategoryName,Description,Client_id,Id
44
+ template_name: module.jinja
45
+ Customer:
46
+ icon: edit_square
47
+ menu_name: Customer
48
+ menu_title: Customer
49
+ page:
50
+ detail:
51
+ columns: Id,CompanyName,Balance,CreditLimit,OrderCount,UnpaidOrderCount,Client_id,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax
52
+ include_children: true
53
+ page_name: detail
54
+ template_name: detail_template.html
55
+ title: Customer
56
+ typescript_name: detail_component.jinja
57
+ visible_columns: Id,CompanyName,Balance,CreditLimit,OrderCount,UnpaidOrderCount,Client_id,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax
58
+ home:
59
+ columns: Id,CompanyName,Balance,CreditLimit,OrderCount,UnpaidOrderCount,Client_id,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax
60
+ include_children: true
61
+ page_name: home
62
+ template_name: home_tree_template.html
63
+ title: Customer
64
+ typescript_name: tree_routing.jinja
65
+ visible_columns: Id,CompanyName,Balance,CreditLimit,OrderCount,UnpaidOrderCount,Client_id,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax
66
+ new:
67
+ columns: Id,CompanyName,Balance,CreditLimit,OrderCount,UnpaidOrderCount,Client_id,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax
68
+ include_children: true
69
+ page_name: new
70
+ template_name: new_template.html
71
+ title: Customer
72
+ typescript_name: new_component.jinja
73
+ visible_columns: Id,CompanyName,Balance,CreditLimit,OrderCount,UnpaidOrderCount,Client_id,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax
74
+ template_name: module.jinja
75
+ CustomerDemographic:
76
+ icon: edit_square
77
+ menu_name: CustomerDemographic
78
+ menu_title: CustomerDemographic
79
+ page:
80
+ detail:
81
+ columns: Id,CustomerDesc
82
+ include_children: true
83
+ page_name: detail
84
+ template_name: detail_template.html
85
+ title: CustomerDemographic
86
+ typescript_name: detail_component.jinja
87
+ visible_columns: Id,CustomerDesc
88
+ home:
89
+ columns: Id,CustomerDesc
90
+ include_children: true
91
+ page_name: home
92
+ template_name: home_template.html
93
+ title: CustomerDemographic
94
+ typescript_name: home_template.jinja
95
+ visible_columns: Id,CustomerDesc
96
+ new:
97
+ columns: Id,CustomerDesc
98
+ include_children: true
99
+ page_name: new
100
+ template_name: new_template.html
101
+ title: CustomerDemographic
102
+ typescript_name: new_component.jinja
103
+ visible_columns: Id,CustomerDesc
104
+ template_name: module.jinja
105
+ Department:
106
+ icon: edit_square
107
+ menu_name: Department
108
+ menu_title: Department
109
+ page:
110
+ detail:
111
+ columns: DepartmentName,DepartmentId,Id,SecurityLevel
112
+ include_children: true
113
+ page_name: detail
114
+ template_name: detail_template.html
115
+ title: Department
116
+ typescript_name: detail_component.jinja
117
+ visible_columns: DepartmentName,DepartmentId,Id,SecurityLevel
118
+ home:
119
+ columns: DepartmentName,DepartmentId,Id,SecurityLevel
120
+ include_children: true
121
+ page_name: home
122
+ template_name: home_template.html
123
+ title: Department
124
+ typescript_name: home_template.jinja
125
+ visible_columns: DepartmentName,DepartmentId,Id,SecurityLevel
126
+ new:
127
+ columns: DepartmentName,DepartmentId,Id,SecurityLevel
128
+ include_children: true
129
+ page_name: new
130
+ template_name: new_template.html
131
+ title: Department
132
+ typescript_name: new_component.jinja
133
+ visible_columns: DepartmentName,DepartmentId,Id,SecurityLevel
134
+ template_name: module.jinja
135
+ Employee:
136
+ icon: edit_square
137
+ menu_name: Employee
138
+ menu_title: Employee
139
+ page:
140
+ detail:
141
+ columns: LastName,OnLoanDepartmentId,WorksForDepartmentId,Salary,ProperSalary,EmployeeType,Dues,FirstName,Id,Title,TitleOfCourtesy,BirthDate,HireDate,Address,City,Region,PostalCode,Country,HomePhone,Extension,ReportsTo,PhotoPath,Notes
142
+ include_children: true
143
+ page_name: detail
144
+ template_name: detail_template.html
145
+ title: Employee
146
+ typescript_name: detail_component.jinja
147
+ visible_columns: LastName,OnLoanDepartmentId,WorksForDepartmentId,Salary,ProperSalary,EmployeeType,Dues,FirstName,Id,Title,TitleOfCourtesy,BirthDate,HireDate,Address,City,Region,PostalCode,Country,HomePhone,Extension,ReportsTo,PhotoPath,Notes
148
+ home:
149
+ columns: LastName,OnLoanDepartmentId,WorksForDepartmentId,Salary,ProperSalary,EmployeeType,Dues,FirstName,Id,Title,TitleOfCourtesy,BirthDate,HireDate,Address,City,Region,PostalCode,Country,HomePhone,Extension,ReportsTo,PhotoPath,Notes
150
+ include_children: true
151
+ page_name: home
152
+ template_name: grid_template.html
153
+ title: Employee
154
+ typescript_name: grid_home_template.jinja
155
+ visible_columns: LastName,OnLoanDepartmentId,WorksForDepartmentId,Salary,ProperSalary,EmployeeType,Dues,FirstName,Id,Title,TitleOfCourtesy,BirthDate,HireDate,Address,City,Region,PostalCode,Country,HomePhone,Extension,ReportsTo,PhotoPath,Notes
156
+ new:
157
+ columns: LastName,OnLoanDepartmentId,WorksForDepartmentId,Salary,ProperSalary,EmployeeType,Dues,FirstName,Id,Title,TitleOfCourtesy,BirthDate,HireDate,Address,City,Region,PostalCode,Country,HomePhone,Extension,ReportsTo,PhotoPath,Notes
158
+ include_children: true
159
+ page_name: new
160
+ template_name: new_template.html
161
+ title: Employee
162
+ typescript_name: new_component.jinja
163
+ visible_columns: LastName,OnLoanDepartmentId,WorksForDepartmentId,Salary,ProperSalary,EmployeeType,Dues,FirstName,Id,Title,TitleOfCourtesy,BirthDate,HireDate,Address,City,Region,PostalCode,Country,HomePhone,Extension,ReportsTo,PhotoPath,Notes
164
+ template_name: module.jinja
165
+ EmployeeAudit:
166
+ icon: edit_square
167
+ menu_name: EmployeeAudit
168
+ menu_title: EmployeeAudit
169
+ page:
170
+ detail:
171
+ columns: LastName,EmployeeId,Title,Salary,FirstName,CreatedOn,CreatedBy,UpdatedOn,UpdatedBy,Id
172
+ include_children: true
173
+ page_name: detail
174
+ template_name: detail_template.html
175
+ title: EmployeeAudit
176
+ typescript_name: detail_component.jinja
177
+ visible_columns: LastName,EmployeeId,Title,Salary,FirstName,CreatedOn,CreatedBy,UpdatedOn,UpdatedBy,Id
178
+ home:
179
+ columns: LastName,EmployeeId,Title,Salary,FirstName,CreatedOn,CreatedBy,UpdatedOn,UpdatedBy,Id
180
+ include_children: true
181
+ page_name: home
182
+ template_name: home_template.html
183
+ title: EmployeeAudit
184
+ typescript_name: home_template.jinja
185
+ visible_columns: LastName,EmployeeId,Title,Salary,FirstName,CreatedOn,CreatedBy,UpdatedOn,UpdatedBy,Id
186
+ new:
187
+ columns: LastName,EmployeeId,Title,Salary,FirstName,CreatedOn,CreatedBy,UpdatedOn,UpdatedBy,Id
188
+ include_children: true
189
+ page_name: new
190
+ template_name: new_template.html
191
+ title: EmployeeAudit
192
+ typescript_name: new_component.jinja
193
+ visible_columns: LastName,EmployeeId,Title,Salary,FirstName,CreatedOn,CreatedBy,UpdatedOn,UpdatedBy,Id
194
+ template_name: module.jinja
195
+ EmployeeTerritory:
196
+ icon: edit_square
197
+ menu_name: EmployeeTerritory
198
+ menu_title: EmployeeTerritory
199
+ page:
200
+ detail:
201
+ columns: Id,TerritoryId,EmployeeId
202
+ include_children: true
203
+ page_name: detail
204
+ template_name: detail_template.html
205
+ title: EmployeeTerritory
206
+ typescript_name: detail_component.jinja
207
+ visible_columns: Id,TerritoryId,EmployeeId
208
+ home:
209
+ columns: Id,TerritoryId,EmployeeId
210
+ include_children: true
211
+ page_name: home
212
+ template_name: home_template.html
213
+ title: EmployeeTerritory
214
+ typescript_name: home_template.jinja
215
+ visible_columns: Id,TerritoryId,EmployeeId
216
+ new:
217
+ columns: Id,TerritoryId,EmployeeId
218
+ include_children: true
219
+ page_name: new
220
+ template_name: new_template.html
221
+ title: EmployeeTerritory
222
+ typescript_name: new_component.jinja
223
+ visible_columns: Id,TerritoryId,EmployeeId
224
+ template_name: module.jinja
225
+ Location:
226
+ icon: edit_square
227
+ menu_name: Location
228
+ menu_title: Location
229
+ page:
230
+ detail:
231
+ columns: country,city,notes
232
+ include_children: true
233
+ page_name: detail
234
+ template_name: detail_template.html
235
+ title: Location
236
+ typescript_name: detail_component.jinja
237
+ visible_columns: country,city,notes
238
+ home:
239
+ columns: country,city,notes
240
+ include_children: true
241
+ page_name: home
242
+ template_name: home_template.html
243
+ title: Location
244
+ typescript_name: home_template.jinja
245
+ visible_columns: country,city,notes
246
+ new:
247
+ columns: country,city,notes
248
+ include_children: true
249
+ page_name: new
250
+ template_name: new_template.html
251
+ title: Location
252
+ typescript_name: new_component.jinja
253
+ visible_columns: country,city,notes
254
+ template_name: module.jinja
255
+ Order:
256
+ icon: edit_square
257
+ menu_name: Order
258
+ menu_title: Order
259
+ page:
260
+ detail:
261
+ columns: Id,EmployeeId,ShippedDate,OrderDate,AmountTotal,Ready,CloneFromOrder,OrderDetailCount,Freight,Country,City,RequiredDate,CustomerId,ShipName,ShipVia,ShipAddress,ShipCity,ShipRegion,ShipZip,ShipCountry
262
+ include_children: true
263
+ page_name: detail
264
+ template_name: detail_template.html
265
+ title: Order
266
+ typescript_name: detail_component.jinja
267
+ visible_columns: Id,EmployeeId,ShippedDate,OrderDate,AmountTotal,Ready,CloneFromOrder,OrderDetailCount,Freight,Country,City,RequiredDate,CustomerId,ShipName,ShipVia,ShipAddress,ShipCity,ShipRegion,ShipZip,ShipCountry
268
+ home:
269
+ columns: Id,EmployeeId,ShippedDate,OrderDate,AmountTotal,Ready,CloneFromOrder,OrderDetailCount,Freight,Country,City,RequiredDate,CustomerId,ShipName,ShipVia,ShipAddress,ShipCity,ShipRegion,ShipZip,ShipCountry
270
+ include_children: true
271
+ page_name: home
272
+ template_name: home_template.html
273
+ title: Order
274
+ typescript_name: home_template.jinja
275
+ visible_columns: Id,EmployeeId,ShippedDate,OrderDate,AmountTotal,Ready,CloneFromOrder,OrderDetailCount,Freight,Country,City,RequiredDate,CustomerId,ShipName,ShipVia,ShipAddress,ShipCity,ShipRegion,ShipZip,ShipCountry
276
+ new:
277
+ columns: Id,EmployeeId,ShippedDate,OrderDate,AmountTotal,Ready,CloneFromOrder,OrderDetailCount,Freight,Country,City,RequiredDate,CustomerId,ShipName,ShipVia,ShipAddress,ShipCity,ShipRegion,ShipZip,ShipCountry
278
+ include_children: true
279
+ page_name: new
280
+ template_name: new_template.html
281
+ title: Order
282
+ typescript_name: new_component.jinja
283
+ visible_columns: Id,EmployeeId,ShippedDate,OrderDate,AmountTotal,Ready,CloneFromOrder,OrderDetailCount,Freight,Country,City,RequiredDate,CustomerId,ShipName,ShipVia,ShipAddress,ShipCity,ShipRegion,ShipZip,ShipCountry
284
+ template_name: module.jinja
285
+ OrderDetail:
286
+ icon: edit_square
287
+ menu_name: OrderDetail
288
+ menu_title: OrderDetail
289
+ page:
290
+ detail:
291
+ columns: Id,ProductId,OrderId,UnitPrice,Quantity,Discount,Amount,ShippedDate
292
+ include_children: true
293
+ page_name: detail
294
+ template_name: detail_template.html
295
+ title: OrderDetail
296
+ typescript_name: detail_component.jinja
297
+ visible_columns: Id,ProductId,OrderId,UnitPrice,Quantity,Discount,Amount,ShippedDate
298
+ home:
299
+ columns: Id,ProductId,OrderId,UnitPrice,Quantity,Discount,Amount,ShippedDate
300
+ include_children: true
301
+ page_name: home
302
+ template_name: home_template.html
303
+ title: OrderDetail
304
+ typescript_name: home_template.jinja
305
+ visible_columns: Id,ProductId,OrderId,UnitPrice,Quantity,Discount,Amount,ShippedDate
306
+ new:
307
+ columns: Id,ProductId,OrderId,UnitPrice,Quantity,Discount,Amount,ShippedDate
308
+ include_children: true
309
+ page_name: new
310
+ template_name: new_template.html
311
+ title: OrderDetail
312
+ typescript_name: new_component.jinja
313
+ visible_columns: Id,ProductId,OrderId,UnitPrice,Quantity,Discount,Amount,ShippedDate
314
+ template_name: module.jinja
315
+ Product:
316
+ icon: edit_square
317
+ menu_name: Product
318
+ menu_title: Product
319
+ page:
320
+ detail:
321
+ columns: ProductName,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued,UnitsShipped,Id,SupplierId,CategoryId
322
+ include_children: true
323
+ page_name: detail
324
+ template_name: detail_template.html
325
+ title: Product
326
+ typescript_name: detail_component.jinja
327
+ visible_columns: ProductName,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued,UnitsShipped,Id,SupplierId,CategoryId
328
+ home:
329
+ columns: ProductName,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued,UnitsShipped,Id,SupplierId,CategoryId
330
+ include_children: true
331
+ page_name: home
332
+ template_name: home_template.html
333
+ title: Product
334
+ typescript_name: home_template.jinja
335
+ visible_columns: ProductName,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued,UnitsShipped,Id,SupplierId,CategoryId
336
+ new:
337
+ columns: ProductName,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued,UnitsShipped,Id,SupplierId,CategoryId
338
+ include_children: true
339
+ page_name: new
340
+ template_name: new_template.html
341
+ title: Product
342
+ typescript_name: new_component.jinja
343
+ visible_columns: ProductName,QuantityPerUnit,UnitPrice,UnitsInStock,UnitsOnOrder,ReorderLevel,Discontinued,UnitsShipped,Id,SupplierId,CategoryId
344
+ template_name: module.jinja
345
+ Region:
346
+ icon: edit_square
347
+ menu_name: Region
348
+ menu_title: Region
349
+ page:
350
+ detail:
351
+ columns: RegionDescription,Id
352
+ include_children: true
353
+ page_name: detail
354
+ template_name: detail_template.html
355
+ title: Region
356
+ typescript_name: detail_component.jinja
357
+ visible_columns: RegionDescription,Id
358
+ home:
359
+ columns: RegionDescription,Id
360
+ include_children: true
361
+ page_name: home
362
+ template_name: home_template.html
363
+ title: Region
364
+ typescript_name: home_template.jinja
365
+ visible_columns: RegionDescription,Id
366
+ new:
367
+ columns: RegionDescription,Id
368
+ include_children: true
369
+ page_name: new
370
+ template_name: new_template.html
371
+ title: Region
372
+ typescript_name: new_component.jinja
373
+ visible_columns: RegionDescription,Id
374
+ template_name: module.jinja
375
+ Shipper:
376
+ icon: edit_square
377
+ menu_name: Shipper
378
+ menu_title: Shipper
379
+ page:
380
+ detail:
381
+ columns: CompanyName,Phone,Id
382
+ include_children: true
383
+ page_name: detail
384
+ template_name: detail_template.html
385
+ title: Shipper
386
+ typescript_name: detail_component.jinja
387
+ visible_columns: CompanyName,Phone,Id
388
+ home:
389
+ columns: CompanyName,Phone,Id
390
+ include_children: true
391
+ page_name: home
392
+ template_name: home_template.html
393
+ title: Shipper
394
+ typescript_name: home_template.jinja
395
+ visible_columns: CompanyName,Phone,Id
396
+ new:
397
+ columns: CompanyName,Phone,Id
398
+ include_children: true
399
+ page_name: new
400
+ template_name: new_template.html
401
+ title: Shipper
402
+ typescript_name: new_component.jinja
403
+ visible_columns: CompanyName,Phone,Id
404
+ template_name: module.jinja
405
+ Supplier:
406
+ icon: edit_square
407
+ menu_name: Supplier
408
+ menu_title: Supplier
409
+ page:
410
+ detail:
411
+ columns: CompanyName,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax,HomePage,Id
412
+ include_children: true
413
+ page_name: detail
414
+ template_name: detail_template.html
415
+ title: Supplier
416
+ typescript_name: detail_component.jinja
417
+ visible_columns: CompanyName,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax,HomePage,Id
418
+ home:
419
+ columns: CompanyName,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax,HomePage,Id
420
+ include_children: true
421
+ page_name: home
422
+ template_name: home_template.html
423
+ title: Supplier
424
+ typescript_name: home_template.jinja
425
+ visible_columns: CompanyName,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax,HomePage,Id
426
+ new:
427
+ columns: CompanyName,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax,HomePage,Id
428
+ include_children: true
429
+ page_name: new
430
+ template_name: new_template.html
431
+ title: Supplier
432
+ typescript_name: new_component.jinja
433
+ visible_columns: CompanyName,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,Fax,HomePage,Id
434
+ template_name: module.jinja
435
+ Territory:
436
+ icon: edit_square
437
+ menu_name: Territory
438
+ menu_title: Territory
439
+ page:
440
+ detail:
441
+ columns: TerritoryDescription,Id,RegionId
442
+ include_children: true
443
+ page_name: detail
444
+ template_name: detail_template.html
445
+ title: Territory
446
+ typescript_name: detail_component.jinja
447
+ visible_columns: TerritoryDescription,Id,RegionId
448
+ home:
449
+ columns: TerritoryDescription,Id,RegionId
450
+ include_children: true
451
+ page_name: home
452
+ template_name: home_template.html
453
+ title: Territory
454
+ typescript_name: home_template.jinja
455
+ visible_columns: TerritoryDescription,Id,RegionId
456
+ new:
457
+ columns: TerritoryDescription,Id,RegionId
458
+ include_children: true
459
+ page_name: new
460
+ template_name: new_template.html
461
+ title: Territory
462
+ typescript_name: new_component.jinja
463
+ visible_columns: TerritoryDescription,Id,RegionId
464
+ template_name: module.jinja
465
+ Union:
466
+ icon: edit_square
467
+ menu_name: Union
468
+ menu_title: Union
469
+ page:
470
+ detail:
471
+ columns: Name,Id
472
+ include_children: true
473
+ page_name: detail
474
+ template_name: detail_template.html
475
+ title: Union
476
+ typescript_name: detail_component.jinja
477
+ visible_columns: Name,Id
478
+ home:
479
+ columns: Name,Id
480
+ include_children: true
481
+ page_name: home
482
+ template_name: home_template.html
483
+ title: Union
484
+ typescript_name: home_template.jinja
485
+ visible_columns: Name,Id
486
+ new:
487
+ columns: Name,Id
488
+ include_children: true
489
+ page_name: new
490
+ template_name: new_template.html
491
+ title: Union
492
+ typescript_name: new_component.jinja
493
+ visible_columns: Name,Id
494
+ template_name: module.jinja
495
+ menu_name: data
496
+ menu_title: data
497
+ opened: true
498
+ name: jsonapi
499
+ authentication: '{system-default}'
7
500
  entities:
8
501
  Category:
9
502
  columns:
10
- - enabled: true
11
- exclude: false
12
- label: ' Category Name*'
503
+ - label: ' Category Name*'
13
504
  name: CategoryName
14
- required: false
15
505
  search: true
16
506
  sort: true
17
507
  template: text
18
- type: VARCHAR(8000)
19
- - enabled: true
20
- exclude: false
21
- label: Description
22
- name: Description
23
- required: false
24
- search: true
25
- sort: true
508
+ type: VARCHAR
509
+ - name: Description
26
510
  template: text
27
- type: VARCHAR(8000)
28
- - enabled: true
29
- exclude: false
30
- label: Client_id
31
- name: Client_id
32
- required: false
33
- search: false
34
- sort: false
511
+ type: VARCHAR
512
+ - name: Client_id
35
513
  template: integer
36
514
  type: INTEGER
37
- - enabled: true
38
- exclude: false
39
- label: Id
40
- name: Id
41
- required: false
42
- search: false
43
- sort: false
44
- template: text
515
+ - name: Id
516
+ template: integer
45
517
  type: INTEGER
46
- detail_template: detail_template.html
47
518
  favorite: CategoryName
48
- home_template: home_template.html
519
+ hidden: {}
49
520
  info_list: <h1>Tour - Application Information, Authorization</h1> <h2>Application
50
521
  Information</h2> Info is set in the <span style="font-family:'Courier New'">ui/admin/admin.yaml</span>
51
522
  file with <span style="font-family:'Courier New'">info_list</span> and <span
@@ -58,160 +529,71 @@ entities:
58
529
  'p', upper right).<br><br> But, logout and login as 'u1' -- only 1 is shown,
59
530
  per <a target="_blank" href="https://apilogicserver.github.io/Docs/Security-Authorization/">authorization</a>.
60
531
  <br><br>
61
- mode: dialog
62
- new_template: new_template.html
532
+ label: Category
63
533
  primary_key:
64
534
  - Id
65
535
  type: Category
66
536
  Customer:
67
537
  columns:
68
- - enabled: true
69
- exclude: false
70
- label: Id
71
- name: Id
72
- required: false
538
+ - name: Id
73
539
  search: true
74
540
  sort: true
75
541
  template: text
76
- type: VARCHAR(8000)
77
- - enabled: true
78
- exclude: false
79
- label: ' Company Name*'
542
+ type: VARCHAR
543
+ - label: ' Company Name*'
80
544
  name: CompanyName
81
- required: false
82
545
  search: true
83
546
  sort: true
84
547
  template: text
85
- type: VARCHAR(8000)
86
- - enabled: true
87
- exclude: false
88
- label: Balance
548
+ type: VARCHAR
549
+ - info: derived as sum(Order.AmountTotal where ShippedDate is None)
89
550
  name: Balance
90
- required: false
91
- search: false
92
- sort: false
93
- template: currency
94
551
  type: DECIMAL
95
- - enabled: true
96
- exclude: false
97
- label: CreditLimit
552
+ - info: Balance may not exceed this value
98
553
  name: CreditLimit
99
- required: false
100
- search: false
101
- sort: false
102
- template: currency
103
554
  type: DECIMAL
104
- - enabled: true
105
- exclude: false
106
- label: OrderCount
555
+ - default: '0'
556
+ info: derived as sum(Order)
107
557
  name: OrderCount
108
- required: false
109
- search: false
110
- sort: false
111
558
  template: integer
112
559
  type: INTEGER
113
- - enabled: true
114
- exclude: false
115
- label: UnpaidOrderCount
560
+ - default: '0'
561
+ info: derived as count(Order where ShippedDate is None)
116
562
  name: UnpaidOrderCount
117
- required: false
118
- search: false
119
- sort: false
120
- template: text
563
+ template: integer
121
564
  type: INTEGER
122
- - enabled: true
123
- exclude: false
124
- label: Client_id
125
- name: Client_id
126
- required: false
127
- search: false
128
- sort: false
129
- template: text
565
+ - name: Client_id
566
+ template: integer
130
567
  type: INTEGER
131
- - enabled: true
132
- exclude: false
133
- label: ContactName
134
- name: ContactName
135
- required: false
136
- search: false
137
- sort: false
138
- template: text
139
- type: VARCHAR(8000)
140
- - enabled: true
141
- exclude: false
142
- label: ContactTitle
143
- name: ContactTitle
144
- required: false
145
- search: false
146
- sort: false
147
- template: text
148
- type: VARCHAR(8000)
149
- - enabled: true
150
- exclude: false
151
- label: Address
152
- name: Address
153
- required: false
154
- search: false
155
- sort: false
156
- template: text
157
- type: VARCHAR(8000)
158
- - enabled: true
159
- exclude: false
160
- label: City
161
- name: City
162
- required: false
163
- search: false
164
- sort: false
165
- template: text
166
- type: VARCHAR(8000)
167
- - enabled: true
168
- exclude: false
169
- label: Region
170
- name: Region
171
- required: false
172
- search: false
173
- sort: false
174
- template: text
175
- type: VARCHAR(8000)
176
- - enabled: true
177
- exclude: false
178
- label: PostalCode
179
- name: PostalCode
180
- required: false
181
- search: false
182
- sort: false
183
- template: text
184
- type: VARCHAR(8000)
185
- - enabled: true
186
- exclude: false
187
- label: Country
188
- name: Country
189
- required: false
190
- search: false
191
- sort: false
192
- template: text
193
- type: VARCHAR(8000)
194
- - enabled: true
195
- exclude: false
196
- label: Phone
197
- name: Phone
198
- required: false
199
- search: false
200
- sort: false
201
- template: phone
202
- type: VARCHAR(8000)
203
- - enabled: true
204
- exclude: false
205
- label: Fax
206
- name: Fax
207
- required: false
208
- search: false
209
- sort: false
210
- template: phone
211
- type: VARCHAR(8000)
212
- detail_template: detail_template.html
568
+ - name: ContactName
569
+ template: text
570
+ type: VARCHAR
571
+ - name: ContactTitle
572
+ template: text
573
+ type: VARCHAR
574
+ - name: Address
575
+ template: text
576
+ type: VARCHAR
577
+ - name: City
578
+ template: text
579
+ type: VARCHAR
580
+ - name: Region
581
+ template: text
582
+ type: VARCHAR
583
+ - name: PostalCode
584
+ template: text
585
+ type: VARCHAR
586
+ - name: Country
587
+ template: text
588
+ type: VARCHAR
589
+ - name: Phone
590
+ template: text
591
+ type: VARCHAR
592
+ - name: Fax
593
+ template: text
594
+ type: VARCHAR
213
595
  favorite: CompanyName
214
- home_template: home_template.html
596
+ hidden: {}
215
597
  info_list: <h1>List Pages</h1> In this <a target="_blank" href="https://apilogicserver.github.io/Docs/Sample-Database/">Northwind
216
598
  demo,</a> Info provides Tour suggestions (see Category for instructions). On
217
599
  this page... <ul> <li> <strong>Search</strong> on multiple fields (Company,
@@ -235,12 +617,11 @@ entities:
235
617
  not shown ("Show_when")</li> <li>Lookup a Product</li> <li>Click <strong>Save
236
618
  and Add Another</strong> </li> <li>Lookup another Product, and click <strong>Add</strong>
237
619
  to see the added Order </li> </ul> </li> </ul>
238
- new_template: new_template.html
620
+ label: Customer
239
621
  primary_key:
240
622
  - Id
241
623
  tab_groups:
242
624
  - direction: tomany
243
- exclude: false
244
625
  fks:
245
626
  - CustomerId
246
627
  label: Placed Order List
@@ -249,322 +630,142 @@ entities:
249
630
  type: Customer
250
631
  CustomerDemographic:
251
632
  columns:
252
- - enabled: true
253
- exclude: false
254
- label: ' Id*'
633
+ - label: ' Id*'
255
634
  name: Id
256
- required: false
257
635
  search: true
258
636
  sort: true
259
637
  template: text
260
- type: VARCHAR(8000)
261
- - enabled: true
262
- exclude: false
263
- label: CustomerDesc
264
- name: CustomerDesc
265
- required: false
266
- search: false
267
- sort: false
268
- template: text
269
- type: VARCHAR(8000)
270
- detail_template: detail_template.html
638
+ type: VARCHAR
639
+ - name: CustomerDesc
640
+ template: text
641
+ type: VARCHAR
271
642
  favorite: Id
272
- home_template: home_template.html
273
- exclude: true
274
- new_template: new_template.html
643
+ hidden: {}
644
+ label: CustomerDemographic
275
645
  primary_key:
276
646
  - Id
277
647
  type: CustomerDemographic
278
648
  Department:
279
649
  columns:
280
- - enabled: true
281
- exclude: false
282
- label: ' Department Name*'
650
+ - label: ' Department Name*'
283
651
  name: DepartmentName
284
- required: false
285
652
  search: true
286
653
  sort: true
287
654
  template: text
288
655
  type: VARCHAR(100)
289
- - enabled: true
290
- exclude: false
291
- label: DepartmentId
292
- name: DepartmentId
293
- required: false
294
- search: false
295
- sort: false
296
- template: text
656
+ - name: DepartmentId
657
+ template: integer
297
658
  type: INTEGER
298
- - enabled: true
299
- exclude: false
300
- label: Id
301
- name: Id
302
- required: false
303
- search: false
304
- sort: false
305
- template: text
659
+ - name: Id
660
+ template: integer
306
661
  type: INTEGER
307
- - enabled: true
308
- exclude: false
309
- label: SecurityLevel
662
+ - default: '0'
310
663
  name: SecurityLevel
311
- required: false
312
- search: false
313
- sort: false
314
- template: text
664
+ template: integer
315
665
  type: INTEGER
316
- detail_template: detail_template.html
317
666
  favorite: DepartmentName
318
- home_template: home_template.html
667
+ hidden: {}
319
668
  info_list: <h1>Tour - Authorization</h1> <h2>Global Security Filters</h2> Only
320
669
  role sa & manager can view SecurityLevel > 0 - see security/declare_security.py
321
670
  <br><br>
322
- new_template: new_template.html
671
+ label: Department
323
672
  primary_key:
324
673
  - Id
325
674
  tab_groups:
326
675
  - direction: tomany
327
- exclude: false
328
676
  fks:
329
677
  - DepartmentId
330
- label: DepartmentList
331
678
  name: DepartmentList
332
679
  resource: Department
333
- - direction: toone
334
- exclude: false
335
- fks:
336
- - DepartmentId
337
- label: Department
338
- name: Department
339
- resource: Department
340
680
  - direction: tomany
341
- exclude: false
342
681
  fks:
343
682
  - OnLoanDepartmentId
344
- label: Employees On Loan
345
683
  name: EmployeeList
346
684
  resource: Employee
347
685
  - direction: tomany
348
- exclude: false
349
686
  fks:
350
687
  - WorksForDepartmentId
351
- label: Employees
352
- name: EmployeeList1
688
+ name: WorksForEmployeeList
353
689
  resource: Employee
690
+ - direction: toone
691
+ fks:
692
+ - DepartmentId
693
+ name: Department
694
+ resource: Department
354
695
  type: Department
355
696
  Employee:
356
697
  columns:
357
- - enabled: true
358
- exclude: false
359
- label: ' Last Name*'
698
+ - label: ' Last Name*'
360
699
  name: LastName
361
- required: false
362
700
  search: true
363
701
  sort: true
364
702
  template: text
365
- type: VARCHAR(8000)
366
- - enabled: true
367
- exclude: false
368
- label: OnLoanDepartmentId
369
- name: OnLoanDepartmentId
370
- required: false
371
- search: false
372
- sort: false
373
- template: text
703
+ type: VARCHAR
704
+ - name: OnLoanDepartmentId
705
+ template: integer
374
706
  type: INTEGER
375
- - enabled: true
376
- exclude: false
377
- label: WorksForDepartmentId
378
- name: WorksForDepartmentId
379
- required: false
380
- search: false
381
- sort: false
382
- template: text
707
+ - name: WorksForDepartmentId
708
+ template: integer
383
709
  type: INTEGER
384
- - enabled: true
385
- exclude: false
386
- label: Salary
387
- name: Salary
388
- required: false
389
- search: false
390
- sort: false
391
- template: currency
710
+ - name: Salary
392
711
  type: DECIMAL
393
- - enabled: true
394
- exclude: false
395
- label: ProperSalary
396
- name: ProperSalary
397
- required: false
398
- search: false
399
- sort: false
400
- template: currency
712
+ - name: ProperSalary
401
713
  type: DECIMAL
402
- - enabled: true
403
- exclude: false
404
- label: EmployeeType
714
+ - default: Salaried
405
715
  name: EmployeeType
406
- required: false
407
- search: false
408
- sort: false
409
716
  template: text
410
717
  type: VARCHAR(16)
411
- - enabled: true
412
- exclude: false
413
- label: Dues
414
- name: Dues
415
- required: false
416
- search: false
417
- sort: false
418
- template: currency
718
+ - name: Dues
719
+ show_when: record["EmployeeType"] == "Hourly"
419
720
  type: DECIMAL
420
- - enabled: true
421
- exclude: false
422
- label: FirstName
423
- name: FirstName
424
- required: false
425
- search: false
426
- sort: false
427
- template: text
428
- type: VARCHAR(8000)
429
- - enabled: true
430
- exclude: false
431
- label: Id
432
- name: Id
433
- required: false
434
- search: false
435
- sort: false
721
+ - name: FirstName
436
722
  template: text
723
+ type: VARCHAR
724
+ - name: Id
725
+ template: integer
437
726
  type: INTEGER
438
- - enabled: true
439
- exclude: false
440
- label: Title
441
- name: Title
442
- required: false
443
- search: false
444
- sort: false
445
- template: text
446
- type: VARCHAR(8000)
447
- - enabled: true
448
- exclude: false
449
- label: TitleOfCourtesy
450
- name: TitleOfCourtesy
451
- required: false
452
- search: false
453
- sort: false
454
- template: text
455
- type: VARCHAR(8000)
456
- - enabled: true
457
- exclude: false
458
- label: BirthDate
459
- name: BirthDate
460
- required: false
461
- search: false
462
- sort: false
463
- template: date
464
- type: VARCHAR(8000)
465
- - enabled: true
466
- exclude: false
467
- label: HireDate
468
- name: HireDate
469
- required: false
470
- search: false
471
- sort: false
472
- template: date
473
- type: VARCHAR(8000)
474
- - enabled: true
475
- exclude: false
476
- label: Address
477
- name: Address
478
- required: false
479
- search: false
480
- sort: false
481
- template: text
482
- type: VARCHAR(8000)
483
- - enabled: true
484
- exclude: false
485
- label: City
486
- name: City
487
- required: false
488
- search: false
489
- sort: false
490
- template: text
491
- type: VARCHAR(8000)
492
- - enabled: true
493
- exclude: false
494
- label: Region
495
- name: Region
496
- required: false
497
- search: false
498
- sort: false
499
- template: text
500
- type: VARCHAR(8000)
501
- - enabled: true
502
- exclude: false
503
- label: PostalCode
504
- name: PostalCode
505
- required: false
506
- search: false
507
- sort: false
508
- template: text
509
- type: VARCHAR(8000)
510
- - enabled: true
511
- exclude: false
512
- label: Country
513
- name: Country
514
- required: false
515
- search: false
516
- sort: false
517
- template: text
518
- type: VARCHAR(8000)
519
- - enabled: true
520
- exclude: false
521
- label: HomePhone
522
- name: HomePhone
523
- required: false
524
- search: false
525
- sort: false
526
- template: phone
527
- type: VARCHAR(8000)
528
- - enabled: true
529
- exclude: false
530
- label: Extension
531
- name: Extension
532
- required: false
533
- search: false
534
- sort: false
535
- template: text
536
- type: VARCHAR(8000)
537
- - enabled: true
538
- exclude: false
539
- label: Notes
540
- name: Notes
541
- required: false
542
- search: false
543
- sort: false
544
- template: text
545
- type: VARCHAR(8000)
546
- - enabled: true
547
- exclude: false
548
- label: ReportsTo
549
- name: ReportsTo
550
- required: false
551
- search: false
552
- sort: false
727
+ - name: Title
728
+ template: text
729
+ type: VARCHAR
730
+ - name: TitleOfCourtesy
731
+ template: text
732
+ type: VARCHAR
733
+ - name: BirthDate
734
+ template: text
735
+ type: DATE
736
+ - name: HireDate
737
+ template: text
738
+ type: DATE
739
+ - name: Address
740
+ template: text
741
+ type: VARCHAR
742
+ - name: City
743
+ template: text
744
+ type: VARCHAR
745
+ - name: Region
746
+ template: text
747
+ type: VARCHAR
748
+ - name: PostalCode
553
749
  template: text
750
+ type: VARCHAR
751
+ - name: Country
752
+ template: text
753
+ type: VARCHAR
754
+ - name: HomePhone
755
+ template: text
756
+ type: VARCHAR
757
+ - name: Extension
758
+ template: text
759
+ type: VARCHAR
760
+ - name: ReportsTo
761
+ template: integer
554
762
  type: INTEGER
555
- - enabled: true
556
- exclude: false
557
- label: PhotoPath
558
- name: PhotoPath
559
- required: false
560
- search: false
561
- sort: false
562
- template: text
563
- type: Image
564
- detail_template: detail_template.html
763
+ - name: PhotoPath
764
+ type: image
765
+ - name: Notes
766
+ type: textarea
565
767
  favorite: LastName
566
- home_template: grid_template.html
567
- grid_items: 'LastName, FirstName, HomePhone'
768
+ hidden: {}
568
769
  info_list: <h1>Show When</h1> Support for <a target="_blank" href="https://apilogicserver.github.io/Docs/Admin-Customization/#show_when">Show
569
770
  When</a> means you can define expressions that determine when a field is shown
570
771
  or hidden. On this page... <ul> <li> Click <strong>Suyama</strong> and note
@@ -575,436 +776,229 @@ entities:
575
776
  New'">Dues</span> field </li> </ul> </li> <li> Observe the same effect on Update
576
777
  / Insert screens as you alter the value of <span style="font-family:'Courier
577
778
  New'">EmployeeType</span></li> </ul> <h1>Images</h1> Observe that "show" pages
578
- support images. <h1>Virtual Relationships</h1> Observe that "show" pages have
579
- tabs for Manages and Manager.<br> These foreign keys are *not* defined in the
580
- database, but in <span style="font-family:'Courier New'">database/customize_models.py</span>.<br>
779
+ support images. <h1>Virtual Relationships</h1> Observe that your API includes
780
+ Manages and Manager.<br> These foreign keys are *not* defined in the database,
781
+ but in <span style="font-family:'Courier New'">database/customize_models.py</span>.<br>
581
782
  <h1>Derived Attributes</h1> <span style="font-family:'Courier New'">ProperSalary</span>
582
783
  is not defined in the database.<br> See <span style="font-family:'Courier New'">database/customize_models.py</span>.<br>
583
- new_template: new_template.html
784
+ label: Employee
785
+ grid_items: 'EmployeeType, LastName,FirstName,Address, Country, HomePhone'
786
+ grid_image: PhotoPath
584
787
  primary_key:
585
788
  - Id
586
789
  tab_groups:
587
- - direction: toone
588
- exclude: false
589
- fks:
590
- - OnLoanDepartmentId
591
- label: Department
592
- name: Department
593
- resource: Department
594
- - direction: toone
595
- exclude: false
596
- fks:
597
- - WorksForDepartmentId
598
- label: Department1
599
- name: Department1
600
- resource: Department
601
- - direction: tomany
602
- exclude: false
603
- fks:
604
- - ReportsTo
605
- label: Manages
606
- name: Manages
607
- resource: Employee
608
- - direction: toone
609
- exclude: false
610
- fks:
611
- - ReportsTo
612
- label: Manager
613
- name: Manager
614
- resource: Employee
615
790
  - direction: tomany
616
- exclude: false
617
791
  fks:
618
792
  - EmployeeId
619
- label: EmployeeAuditList
620
793
  name: EmployeeAuditList
621
794
  resource: EmployeeAudit
622
795
  - direction: tomany
623
- exclude: false
624
796
  fks:
625
797
  - EmployeeId
626
- label: EmployeeTerritoryList
627
798
  name: EmployeeTerritoryList
628
799
  resource: EmployeeTerritory
629
800
  - direction: tomany
630
- exclude: false
631
801
  fks:
632
802
  - EmployeeId
633
- label: OrderList
634
803
  name: OrderList
635
804
  resource: Order
636
805
  - direction: toone
637
- exclude: false
806
+ fks:
807
+ - OnLoanDepartmentId
808
+ name: OnLoanDepartment
809
+ resource: Department
810
+ - direction: toone
638
811
  fks:
639
812
  - UnionId
640
- label: Union
641
813
  name: Union
642
814
  resource: Union
815
+ - direction: toone
816
+ fks:
817
+ - WorksForDepartmentId
818
+ name: WorksForDepartment
819
+ resource: Department
643
820
  type: Employee
644
821
  EmployeeAudit:
645
822
  columns:
646
- - enabled: true
647
- exclude: false
648
- label: ' Last Name*'
823
+ - label: ' Last Name*'
649
824
  name: LastName
650
- required: false
651
825
  search: true
652
826
  sort: true
653
827
  template: text
654
828
  type: VARCHAR
655
- - enabled: true
656
- exclude: false
657
- label: EmployeeId
658
- name: EmployeeId
659
- required: false
660
- search: false
661
- sort: false
662
- template: text
829
+ - name: EmployeeId
830
+ template: integer
663
831
  type: INTEGER
664
- - enabled: true
665
- exclude: false
666
- label: Title
667
- name: Title
668
- required: false
669
- search: false
670
- sort: false
832
+ - name: Title
671
833
  template: text
672
834
  type: VARCHAR
673
- - enabled: true
674
- exclude: false
675
- label: Salary
676
- name: Salary
677
- required: false
678
- search: false
679
- sort: false
680
- template: currency
835
+ - name: Salary
681
836
  type: DECIMAL
682
- - enabled: true
683
- exclude: false
684
- label: FirstName
685
- name: FirstName
686
- required: false
687
- search: false
688
- sort: false
837
+ - name: FirstName
689
838
  template: text
690
839
  type: VARCHAR
691
- - enabled: true
692
- exclude: false
693
- label: CreatedOn
694
- name: CreatedOn
695
- required: false
696
- search: false
697
- sort: false
840
+ - name: CreatedOn
698
841
  template: text
699
842
  type: TEXT
700
- - enabled: true
701
- exclude: false
702
- label: Id
703
- name: Id
704
- required: false
705
- search: false
706
- sort: false
843
+ - name: CreatedBy
844
+ template: text
845
+ type: TEXT
846
+ - name: UpdatedOn
707
847
  template: text
848
+ type: TEXT
849
+ - name: UpdatedBy
850
+ template: text
851
+ type: TEXT
852
+ - name: Id
853
+ template: integer
708
854
  type: INTEGER
709
- detail_template: detail_template.html
710
855
  favorite: LastName
711
- home_template: home_template.html
712
- exclude: true
713
- new_template: new_template.html
856
+ hidden: {}
857
+ label: EmployeeAudit
714
858
  primary_key:
715
859
  - Id
716
860
  tab_groups:
717
861
  - direction: toone
718
- exclude: false
719
862
  fks:
720
863
  - EmployeeId
721
- label: Employee
722
864
  name: Employee
723
865
  resource: Employee
724
866
  type: EmployeeAudit
725
867
  EmployeeTerritory:
726
868
  columns:
727
- - enabled: true
728
- exclude: false
729
- label: ' Id*'
869
+ - label: ' Id*'
730
870
  name: Id
731
- required: false
732
871
  search: true
733
872
  sort: true
734
873
  template: text
735
- type: VARCHAR(8000)
736
- - enabled: true
737
- exclude: false
738
- label: TerritoryId
739
- name: TerritoryId
740
- required: false
741
- search: false
742
- sort: false
743
- template: text
744
- type: VARCHAR(8000)
745
- - enabled: true
746
- exclude: false
747
- label: EmployeeId
748
- name: EmployeeId
749
- required: true
750
- search: false
751
- sort: false
874
+ type: VARCHAR
875
+ - name: TerritoryId
752
876
  template: text
877
+ type: VARCHAR
878
+ - name: EmployeeId
879
+ required: true
880
+ template: integer
753
881
  type: INTEGER
754
- detail_template: detail_template.html
755
882
  favorite: Id
756
- home_template: home_template.html
757
- new_template: new_template.html
883
+ hidden: {}
884
+ label: EmployeeTerritory
758
885
  primary_key:
759
886
  - Id
760
887
  tab_groups:
761
888
  - direction: toone
762
- exclude: false
763
- fks:
764
- - EmployeeId
765
- label: Employee
766
- name: Employee
767
- resource: Employee
768
- - direction: toone
769
- exclude: false
770
889
  fks:
771
890
  - TerritoryId
772
- label: Territory
773
891
  name: Territory
774
892
  resource: Territory
893
+ - direction: toone
894
+ fks:
895
+ - EmployeeId
896
+ name: Employee
897
+ resource: Employee
775
898
  type: EmployeeTerritory
776
899
  Location:
777
900
  columns:
778
- - enabled: true
779
- exclude: false
780
- label: ' country*'
901
+ - label: ' country*'
781
902
  name: country
782
903
  required: true
783
904
  search: true
784
905
  sort: true
785
906
  template: text
786
907
  type: VARCHAR(50)
787
- - enabled: true
788
- exclude: false
789
- label: city
790
- name: city
908
+ - name: city
791
909
  required: true
792
- search: false
793
- sort: false
794
910
  template: text
795
911
  type: VARCHAR(50)
796
- - enabled: true
797
- exclude: false
798
- label: notes
799
- name: notes
800
- required: false
801
- search: false
802
- sort: false
912
+ - name: notes
803
913
  template: text
804
914
  type: VARCHAR(256)
805
- detail_template: detail_template.html
806
915
  favorite: country
807
- home_template: home_template.html
808
- mode: dialog
809
- new_template: new_template.html
916
+ hidden: {}
917
+ label: Location
810
918
  primary_key:
811
919
  - country
812
920
  - city
813
921
  tab_groups:
814
922
  - direction: tomany
815
- exclude: false
816
923
  fks:
817
924
  - Country
818
925
  - City
819
- label: OrderList
820
926
  name: OrderList
821
927
  resource: Order
822
928
  type: Location
823
929
  Order:
824
930
  columns:
825
- - enabled: true
826
- exclude: false
827
- label: Id
828
- name: Id
829
- required: false
830
- search: false
831
- sort: false
832
- template: text
931
+ - name: Id
932
+ show_when: isInserting == false
933
+ template: integer
833
934
  type: INTEGER
834
- - enabled: true
835
- exclude: false
836
- label: EmployeeId
837
- name: EmployeeId
838
- required: false
839
- search: false
840
- sort: false
841
- template: text
935
+ - name: EmployeeId
936
+ template: integer
842
937
  type: INTEGER
843
- - enabled: true
844
- exclude: false
845
- label: ShippedDate
938
+ - info: set reduces Customer Balance, decreases Product Stock
846
939
  name: ShippedDate
847
- required: false
848
- search: false
849
- sort: false
850
- template: date
851
- type: VARCHAR(8000)
852
- - enabled: true
853
- exclude: false
854
- label: OrderDate
855
- name: OrderDate
856
- required: false
857
- search: false
858
- sort: false
859
- template: date
940
+ show_when: isInserting == false
941
+ template: text
942
+ type: VARCHAR
943
+ - name: OrderDate
860
944
  type: DATE
861
- - enabled: true
862
- exclude: false
863
- label: AmountTotal
945
+ - info: derived as sum(OrderDetail.Amount)
864
946
  name: AmountTotal
865
- required: false
866
- search: false
867
- sort: false
868
- template: currency
947
+ show_when: isInserting == false
869
948
  type: DECIMAL
870
- - enabled: true
871
- exclude: false
872
- label: Ready
873
- name: Ready
874
- required: false
875
- search: false
876
- sort: false
877
- template: checkbox
949
+ - name: Ready
878
950
  type: Boolean
879
- - enabled: true
880
- exclude: false
881
- label: CloneFromOrder
882
- name: CloneFromOrder
883
- required: false
884
- search: false
885
- sort: false
886
- template: text
951
+ - name: CloneFromOrder
952
+ template: integer
887
953
  type: INTEGER
888
- - enabled: true
889
- exclude: false
890
- label: OrderDetailCount
954
+ - default: '0'
891
955
  name: OrderDetailCount
892
- required: false
893
- search: false
894
- sort: false
895
- template: text
956
+ show_when: isInserting == false
957
+ template: integer
896
958
  type: INTEGER
897
- - enabled: true
898
- exclude: false
899
- label: Freight
900
- name: Freight
901
- required: false
902
- search: false
903
- sort: false
904
- template: text
959
+ - name: Freight
905
960
  type: DECIMAL
906
- - enabled: true
907
- exclude: false
908
- label: Country
961
+ - label: Country
909
962
  name: Country
910
- required: false
911
- search: false
912
- sort: false
913
963
  template: text
914
964
  type: VARCHAR(50)
915
- - enabled: true
916
- exclude: false
917
- label: City
965
+ - label: City
918
966
  name: City
919
- required: false
920
- search: false
921
- sort: false
922
967
  template: text
923
968
  type: VARCHAR(50)
924
- - enabled: true
925
- exclude: false
926
- label: RequiredDate
927
- name: RequiredDate
928
- required: false
929
- search: false
930
- sort: false
969
+ - name: RequiredDate
931
970
  template: date
932
971
  type: DATE
933
- - enabled: true
934
- exclude: false
935
- label: CustomerId
936
- name: CustomerId
972
+ - name: CustomerId
937
973
  required: true
938
- search: false
939
- sort: false
940
974
  template: text
941
- type: VARCHAR(8000)
942
- - enabled: true
943
- exclude: false
944
- label: ' Ship Name*'
975
+ type: VARCHAR
976
+ - label: ' Ship Name*'
945
977
  name: ShipName
946
- required: false
947
978
  search: true
948
979
  sort: true
949
980
  template: text
950
- type: VARCHAR(8000)
951
- - enabled: true
952
- exclude: false
953
- label: ShipVia
954
- name: ShipVia
955
- required: false
956
- search: false
957
- sort: false
958
- template: text
981
+ type: VARCHAR
982
+ - name: ShipVia
983
+ template: integer
959
984
  type: INTEGER
960
- - enabled: true
961
- exclude: false
962
- label: ShipAddress
963
- name: ShipAddress
964
- required: false
965
- search: false
966
- sort: false
967
- template: text
968
- type: VARCHAR(8000)
969
- - enabled: true
970
- exclude: false
971
- label: ShipCity
972
- name: ShipCity
973
- required: false
974
- search: false
975
- sort: false
976
- template: text
977
- type: VARCHAR(8000)
978
- - enabled: true
979
- exclude: false
980
- label: ShipRegion
981
- name: ShipRegion
982
- required: false
983
- search: false
984
- sort: false
985
- template: text
986
- type: VARCHAR(8000)
987
- - enabled: true
988
- exclude: false
989
- label: ShipZip
990
- name: ShipZip
991
- required: false
992
- search: false
993
- sort: false
994
- template: text
995
- type: VARCHAR(8000)
996
- - enabled: true
997
- exclude: false
998
- label: ShipCountry
999
- name: ShipCountry
1000
- required: false
1001
- search: false
1002
- sort: false
1003
- template: text
1004
- type: VARCHAR(8000)
1005
- detail_template: detail_template.html
985
+ - name: ShipAddress
986
+ template: text
987
+ type: VARCHAR
988
+ - name: ShipCity
989
+ template: text
990
+ type: VARCHAR
991
+ - name: ShipRegion
992
+ template: text
993
+ type: VARCHAR
994
+ - name: ShipZip
995
+ template: text
996
+ type: VARCHAR
997
+ - name: ShipCountry
998
+ template: text
999
+ type: VARCHAR
1006
1000
  favorite: Id
1007
- home_template: home_template_expand.html
1001
+ hidden: {}
1008
1002
  info_show: <h1>Tour</h1> <h3>Automatic Joins</h3> <ul> <li> Observe the Product
1009
1003
  Name in the Order Detail list.</li> <li> In the <a target="_blank" href="https://apilogicserver.github.io/Docs/Sample-Database/">sample
1010
1004
  database,</a> the Order Detail is related to the Product by <span style="font-family:'Courier
@@ -1017,513 +1011,278 @@ entities:
1017
1011
  <span style="font-family:'Courier New'">Amount Total.</span> <ul> <li> This
1018
1012
  is not from code, but from <a target="_blank" href="https://apilogicserver.github.io/Docs/Tutorial/#logic">this
1019
1013
  logic.</a> </li> </ul> </li> </ul>
1020
- new_template: new_template.html
1014
+ label: Order
1021
1015
  primary_key:
1022
1016
  - Id
1023
1017
  tab_groups:
1018
+ - direction: tomany
1019
+ fks:
1020
+ - OrderId
1021
+ label: Order Detail List
1022
+ name: OrderDetailList
1023
+ resource: OrderDetail
1024
1024
  - direction: toone
1025
- exclude: false
1026
1025
  fks:
1027
1026
  - CustomerId
1028
- label: Customer
1029
1027
  name: Customer
1030
1028
  resource: Customer
1031
1029
  - direction: toone
1032
- exclude: false
1033
1030
  fks:
1034
1031
  - Country
1035
1032
  - City
1036
- label: Location
1037
1033
  name: Location
1038
1034
  resource: Location
1039
1035
  - direction: toone
1040
- exclude: false
1041
1036
  fks:
1042
1037
  - EmployeeId
1043
- label: Employee
1044
1038
  name: Employee
1045
1039
  resource: Employee
1046
- - direction: tomany
1047
- exclude: false
1048
- fks:
1049
- - OrderId
1050
- label: Order Detail List
1051
- name: OrderDetailList
1052
- resource: OrderDetail
1053
1040
  type: Order
1054
1041
  OrderDetail:
1055
1042
  columns:
1056
- - enabled: true
1057
- exclude: false
1058
- label: ' Id*'
1043
+ - label: ' Id*'
1059
1044
  name: Id
1060
- required: false
1061
1045
  search: true
1046
+ show_when: isInserting == false
1062
1047
  sort: true
1063
- template: text
1048
+ template: integer
1064
1049
  type: INTEGER
1065
- - enabled: true
1066
- exclude: false
1067
- label: ProductId
1068
- name: ProductId
1050
+ - name: ProductId
1069
1051
  required: true
1070
- search: false
1071
- sort: false
1072
- template: text
1052
+ template: integer
1073
1053
  type: INTEGER
1074
- - enabled: true
1075
- exclude: false
1076
- label: OrderId
1077
- name: OrderId
1054
+ - name: OrderId
1078
1055
  required: true
1079
- search: false
1080
- sort: false
1081
- template: text
1056
+ show_when: isInserting == false
1057
+ template: integer
1082
1058
  type: INTEGER
1083
- - enabled: true
1084
- exclude: false
1085
- label: UnitPrice
1059
+ - info: derived as copy(Product.UnitPrice)
1086
1060
  name: UnitPrice
1087
- required: false
1088
- search: false
1089
- sort: false
1090
- template: text
1061
+ show_when: isInserting == false
1091
1062
  type: DECIMAL
1092
- - enabled: true
1093
- exclude: false
1094
- label: Quantity
1063
+ - default: '1'
1095
1064
  name: Quantity
1096
- required: false
1097
- search: false
1098
- sort: false
1099
1065
  template: integer
1100
1066
  type: INTEGER
1101
- - enabled: true
1102
- exclude: false
1103
- label: Discount
1067
+ - default: '0'
1104
1068
  name: Discount
1105
- required: false
1106
- search: false
1107
- sort: false
1108
1069
  template: real
1109
1070
  type: DOUBLE
1110
- - enabled: true
1111
- exclude: false
1112
- label: Amount
1071
+ - info: derived as UnitPrice * Quantity
1113
1072
  name: Amount
1114
- required: false
1115
- search: false
1116
- sort: false
1117
- template: currency
1073
+ show_when: isInserting == false
1118
1074
  type: DECIMAL
1119
- - enabled: true
1120
- exclude: false
1121
- label: ShippedDate
1075
+ - info: derived as Order.ShippedDate
1122
1076
  name: ShippedDate
1123
- required: false
1124
- search: false
1125
- sort: false
1126
- template: date
1127
- type: VARCHAR(8000)
1128
- detail_template: detail_template.html
1077
+ show_when: isInserting == false
1078
+ template: text
1079
+ type: VARCHAR
1129
1080
  favorite: Id
1130
- home_template: home_template.html
1131
- new_template: new_template.html
1081
+ hidden: {}
1082
+ label: OrderDetail
1132
1083
  primary_key:
1133
1084
  - Id
1134
1085
  tab_groups:
1135
1086
  - direction: toone
1136
- exclude: false
1137
- fks:
1138
- - OrderId
1139
- label: Order
1140
- name: Order
1141
- resource: Order
1142
- - direction: toone
1143
- exclude: false
1144
1087
  fks:
1145
1088
  - ProductId
1146
- label: Product
1147
1089
  name: Product
1148
1090
  resource: Product
1091
+ - direction: toone
1092
+ fks:
1093
+ - OrderId
1094
+ name: Order
1095
+ resource: Order
1149
1096
  type: OrderDetail
1150
1097
  Product:
1151
1098
  columns:
1152
- - enabled: true
1153
- exclude: false
1154
- label: ' Product Name*'
1099
+ - label: ' Product Name*'
1155
1100
  name: ProductName
1156
- required: false
1157
1101
  search: true
1158
1102
  sort: true
1159
1103
  template: text
1160
- type: VARCHAR(8000)
1161
- - enabled: true
1162
- exclude: false
1163
- label: QuantityPerUnit
1164
- name: QuantityPerUnit
1165
- required: false
1166
- search: false
1167
- sort: false
1168
- template: text
1169
- type: VARCHAR(8000)
1170
- - enabled: true
1171
- exclude: false
1172
- label: UnitPrice
1173
- name: UnitPrice
1174
- required: true
1175
- search: false
1176
- sort: false
1104
+ type: VARCHAR
1105
+ - name: QuantityPerUnit
1177
1106
  template: text
1107
+ type: VARCHAR
1108
+ - name: UnitPrice
1109
+ required: true
1178
1110
  type: DECIMAL
1179
- - enabled: true
1180
- exclude: false
1181
- label: UnitsInStock
1111
+ - info: derived as UnitsInStock - (UnitsShipped - old_row.UnitsShipped)
1182
1112
  name: UnitsInStock
1183
1113
  required: true
1184
- search: false
1185
- sort: false
1186
1114
  template: integer
1187
1115
  type: INTEGER
1188
- - enabled: true
1189
- exclude: false
1190
- label: UnitsOnOrder
1191
- name: UnitsOnOrder
1116
+ - name: UnitsOnOrder
1192
1117
  required: true
1193
- search: false
1194
- sort: false
1195
- template: text
1118
+ template: integer
1196
1119
  type: INTEGER
1197
- - enabled: true
1198
- exclude: false
1199
- label: ReorderLevel
1200
- name: ReorderLevel
1120
+ - name: ReorderLevel
1201
1121
  required: true
1202
- search: false
1203
- sort: false
1204
- template: text
1122
+ template: integer
1205
1123
  type: INTEGER
1206
- - enabled: true
1207
- exclude: false
1208
- label: Discontinued
1209
- name: Discontinued
1124
+ - name: Discontinued
1210
1125
  required: true
1211
- search: false
1212
- sort: false
1213
- template: text
1126
+ template: integer
1214
1127
  type: INTEGER
1215
- - enabled: true
1216
- exclude: false
1217
- label: UnitsShipped
1218
- name: UnitsShipped
1219
- required: false
1220
- search: false
1221
- sort: false
1222
- template: text
1128
+ - name: UnitsShipped
1129
+ template: integer
1223
1130
  type: INTEGER
1224
- - enabled: true
1225
- exclude: false
1226
- label: Id
1131
+ - info: derived as sum(OrderDetail.Quantity where ShippedDate is not None)
1227
1132
  name: Id
1228
- required: false
1229
- search: false
1230
- sort: false
1231
- template: text
1133
+ template: integer
1232
1134
  type: INTEGER
1233
- - enabled: true
1234
- exclude: false
1235
- label: SupplierId
1236
- name: SupplierId
1135
+ - name: SupplierId
1237
1136
  required: true
1238
- search: false
1239
- sort: false
1240
- template: text
1137
+ template: integer
1241
1138
  type: INTEGER
1242
- - enabled: true
1243
- exclude: false
1244
- label: CategoryId
1245
- name: CategoryId
1139
+ - name: CategoryId
1246
1140
  required: true
1247
- search: false
1248
- sort: false
1249
- template: text
1141
+ template: integer
1250
1142
  type: INTEGER
1251
- detail_template: detail_template.html
1252
1143
  favorite: ProductName
1253
- home_template: home_template.html
1254
- new_template: new_template.html
1144
+ hidden: {}
1145
+ label: Product
1255
1146
  primary_key:
1256
1147
  - Id
1257
1148
  tab_groups:
1258
1149
  - direction: tomany
1259
- exclude: false
1260
1150
  fks:
1261
1151
  - ProductId
1262
- label: OrderDetailList
1263
1152
  name: OrderDetailList
1264
1153
  resource: OrderDetail
1265
1154
  type: Product
1266
1155
  Region:
1267
1156
  columns:
1268
- - enabled: true
1269
- exclude: false
1270
- label: ' Region Description*'
1157
+ - label: ' Region Description*'
1271
1158
  name: RegionDescription
1272
- required: false
1273
1159
  search: true
1274
1160
  sort: true
1275
1161
  template: text
1276
- type: VARCHAR(8000)
1277
- - enabled: true
1278
- exclude: false
1279
- label: Id
1280
- name: Id
1281
- required: false
1282
- search: false
1283
- sort: false
1284
- template: text
1162
+ type: VARCHAR
1163
+ - name: Id
1164
+ template: integer
1285
1165
  type: INTEGER
1286
- detail_template: detail_template.html
1287
1166
  favorite: RegionDescription
1288
- home_template: home_template.html
1289
- mode: dialog
1290
- new_template: new_template.html
1167
+ hidden: {}
1168
+ label: Region
1291
1169
  primary_key:
1292
1170
  - Id
1293
1171
  type: Region
1294
1172
  Shipper:
1295
1173
  columns:
1296
- - enabled: true
1297
- exclude: false
1298
- label: ' Company Name*'
1174
+ - label: ' Company Name*'
1299
1175
  name: CompanyName
1300
- required: false
1301
1176
  search: true
1302
1177
  sort: true
1303
1178
  template: text
1304
- type: VARCHAR(8000)
1305
- - enabled: true
1306
- exclude: false
1307
- label: Phone
1308
- name: Phone
1309
- required: false
1310
- search: false
1311
- sort: false
1312
- template: text
1313
- type: VARCHAR(8000)
1314
- - enabled: true
1315
- exclude: false
1316
- label: Id
1317
- name: Id
1318
- required: false
1319
- search: false
1320
- sort: false
1179
+ type: VARCHAR
1180
+ - name: Phone
1321
1181
  template: text
1182
+ type: VARCHAR
1183
+ - name: Id
1184
+ template: integer
1322
1185
  type: INTEGER
1323
- detail_template: detail_template.html
1324
1186
  favorite: CompanyName
1325
- home_template: home_template.html
1326
- mode: dialog
1327
- new_template: new_template.html
1187
+ hidden: {}
1188
+ label: Shipper
1328
1189
  primary_key:
1329
1190
  - Id
1330
1191
  type: Shipper
1331
1192
  Supplier:
1332
1193
  columns:
1333
- - enabled: true
1334
- exclude: false
1335
- label: ' Company Name*'
1194
+ - label: ' Company Name*'
1336
1195
  name: CompanyName
1337
- required: false
1338
1196
  search: true
1339
1197
  sort: true
1340
1198
  template: text
1341
- type: VARCHAR(8000)
1342
- - enabled: true
1343
- exclude: false
1344
- label: ContactName
1345
- name: ContactName
1346
- required: false
1347
- search: false
1348
- sort: false
1349
- template: text
1350
- type: VARCHAR(8000)
1351
- - enabled: true
1352
- exclude: false
1353
- label: ContactTitle
1354
- name: ContactTitle
1355
- required: false
1356
- search: false
1357
- sort: false
1358
- template: text
1359
- type: VARCHAR(8000)
1360
- - enabled: true
1361
- exclude: false
1362
- label: Address
1363
- name: Address
1364
- required: false
1365
- search: false
1366
- sort: false
1367
- template: text
1368
- type: VARCHAR(8000)
1369
- - enabled: true
1370
- exclude: false
1371
- label: City
1372
- name: City
1373
- required: false
1374
- search: false
1375
- sort: false
1376
- template: text
1377
- type: VARCHAR(8000)
1378
- - enabled: true
1379
- exclude: false
1380
- label: Region
1381
- name: Region
1382
- required: false
1383
- search: false
1384
- sort: false
1385
- template: text
1386
- type: VARCHAR(8000)
1387
- - enabled: true
1388
- exclude: false
1389
- label: PostalCode
1390
- name: PostalCode
1391
- required: false
1392
- search: false
1393
- sort: false
1394
- template: text
1395
- type: VARCHAR(8000)
1396
- - enabled: true
1397
- exclude: false
1398
- label: Country
1399
- name: Country
1400
- required: false
1401
- search: false
1402
- sort: false
1403
- template: text
1404
- type: VARCHAR(8000)
1405
- - enabled: true
1406
- exclude: false
1407
- label: Phone
1408
- name: Phone
1409
- required: false
1410
- search: false
1411
- sort: false
1412
- template: phone
1413
- type: VARCHAR(8000)
1414
- - enabled: true
1415
- exclude: false
1416
- label: Fax
1417
- name: Fax
1418
- required: false
1419
- search: false
1420
- sort: false
1421
- template: phone
1422
- type: VARCHAR(8000)
1423
- - enabled: true
1424
- exclude: false
1425
- label: HomePage
1426
- name: HomePage
1427
- required: false
1428
- search: false
1429
- sort: false
1430
- template: text
1431
- type: VARCHAR(8000)
1432
- - enabled: true
1433
- exclude: false
1434
- label: Id
1435
- name: Id
1436
- required: false
1437
- search: false
1438
- sort: false
1199
+ type: VARCHAR
1200
+ - name: ContactName
1201
+ template: text
1202
+ type: VARCHAR
1203
+ - name: ContactTitle
1204
+ template: text
1205
+ type: VARCHAR
1206
+ - name: Address
1207
+ template: text
1208
+ type: VARCHAR
1209
+ - name: City
1210
+ template: text
1211
+ type: VARCHAR
1212
+ - name: Region
1213
+ template: text
1214
+ type: VARCHAR
1215
+ - name: PostalCode
1216
+ template: text
1217
+ type: VARCHAR
1218
+ - name: Country
1219
+ template: text
1220
+ type: VARCHAR
1221
+ - name: Phone
1439
1222
  template: text
1223
+ type: VARCHAR
1224
+ - name: Fax
1225
+ template: text
1226
+ type: VARCHAR
1227
+ - name: HomePage
1228
+ template: text
1229
+ type: VARCHAR
1230
+ - name: Id
1231
+ template: integer
1440
1232
  type: INTEGER
1441
- detail_template: detail_template.html
1442
1233
  favorite: CompanyName
1443
- home_template: home_template.html
1444
- mode: dialog
1445
- new_template: new_template.html
1234
+ hidden: {}
1235
+ label: Supplier
1446
1236
  primary_key:
1447
1237
  - Id
1448
1238
  type: Supplier
1449
1239
  Territory:
1450
1240
  columns:
1451
- - enabled: true
1452
- exclude: false
1453
- label: ' Territory Description*'
1241
+ - label: ' Territory Description*'
1454
1242
  name: TerritoryDescription
1455
- required: false
1456
1243
  search: true
1457
1244
  sort: true
1458
1245
  template: text
1459
- type: VARCHAR(8000)
1460
- - enabled: true
1461
- exclude: false
1462
- label: Id
1463
- name: Id
1464
- required: false
1465
- search: false
1466
- sort: false
1467
- template: text
1468
- type: VARCHAR(8000)
1469
- - enabled: true
1470
- exclude: false
1471
- label: RegionId
1472
- name: RegionId
1473
- required: true
1474
- search: false
1475
- sort: false
1246
+ type: VARCHAR
1247
+ - name: Id
1476
1248
  template: text
1249
+ type: VARCHAR
1250
+ - name: RegionId
1251
+ required: true
1252
+ template: integer
1477
1253
  type: INTEGER
1478
- detail_template: detail_template.html
1479
- exclude: true
1480
1254
  favorite: TerritoryDescription
1481
- home_template: home_template.html
1482
- new_template: new_template.html
1255
+ hidden: {}
1256
+ label: Territory
1483
1257
  primary_key:
1484
1258
  - Id
1485
1259
  tab_groups:
1486
1260
  - direction: tomany
1487
- exclude: false
1488
1261
  fks:
1489
1262
  - TerritoryId
1490
- label: EmployeeTerritoryList
1491
1263
  name: EmployeeTerritoryList
1492
1264
  resource: EmployeeTerritory
1493
1265
  type: Territory
1494
1266
  Union:
1495
1267
  columns:
1496
- - enabled: true
1497
- exclude: false
1498
- label: ' Name*'
1268
+ - label: ' Name*'
1499
1269
  name: Name
1500
- required: false
1501
1270
  search: true
1502
1271
  sort: true
1503
1272
  template: text
1504
1273
  type: VARCHAR(80)
1505
- - enabled: true
1506
- exclude: false
1507
- label: Id
1508
- name: Id
1509
- required: false
1510
- search: false
1511
- sort: false
1512
- template: text
1274
+ - name: Id
1275
+ template: integer
1513
1276
  type: INTEGER
1514
- detail_template: detail_template.html
1515
- exclude: true
1516
1277
  favorite: Name
1517
- home_template: home_template.html
1518
- new_template: new_template.html
1278
+ hidden: {}
1279
+ label: Union
1519
1280
  primary_key:
1520
1281
  - Id
1521
1282
  tab_groups:
1522
1283
  - direction: tomany
1523
- exclude: false
1524
1284
  fks:
1525
1285
  - UnionId
1526
- label: EmployeeList
1527
1286
  name: EmployeeList
1528
1287
  resource: Employee
1529
1288
  type: Union
@@ -1531,18 +1290,28 @@ settings:
1531
1290
  HomeJS: http://localhost:5656/admin-app/home.js
1532
1291
  max_list_columns: 8
1533
1292
  style_guide:
1293
+ applicationLocales:
1294
+ - en
1295
+ - es
1534
1296
  currency_symbol: $
1535
1297
  currency_symbol_position: left
1536
1298
  date_format: LL
1537
- decimal_max: '1000000'
1299
+ decimal_max: '1000000000'
1538
1300
  decimal_min: '0'
1539
1301
  decimal_separator: .
1540
1302
  edit_on_mode: dblclick
1303
+ exclude_listpicker: false
1541
1304
  include_translation: false
1305
+ keycloak_client_id: alsclient
1306
+ keycloak_realm: kcals
1307
+ keycloak_url: http://localhost:8080
1308
+ locale: en
1542
1309
  max_decimal_digits: '4'
1543
1310
  min_decimal_digits: '2'
1544
1311
  mode: tab
1545
1312
  pick_style: list
1313
+ serviceType: JSONAPI
1314
+ startSessionPath: /auth/login
1546
1315
  style: light
1547
1316
  thousand_separator: ','
1548
1317
  use_keycloak: false