From 725a26478c0db79a48efd8e4fd898de4722a47f0 Mon Sep 17 00:00:00 2001 From: kochetkov Date: Thu, 21 Nov 2024 10:29:18 +0300 Subject: [PATCH] initial commit --- .gitignore | 67 + .studioignore | 29 + README.md | 224 + backend/pom.xml | 309 + backend/src/main/java/AppConfig.java | 92 + backend/src/main/java/WebAppInitializer.java | 31 + .../src/main/java/dto/ExportDataRequest.java | 24 + .../java/rpc/ConfigExecutorRpcService.java | 27 + .../main/java/rpc/ExportDataRpcService.java | 30 + .../service/ReadOnlySqlButtonServiceImpl.java | 169 + .../java/service/ConfigExecutorService.java | 88 + .../java/service/DataTypeComboBoxService.java | 35 + backend/src/main/resources/.gitkeep | 0 config-data-executor/.gitignore | 38 + config-data-executor/Dockerfile | 4 + config-data-executor/pom.xml | 114 + .../src/main/java/org/micord/Main.java | 15 + .../micord/SpringBootTomcatApplication.java | 8 + .../org/micord/config/ArangoDBConnection.java | 34 + .../org/micord/config/AtomikosConfig.java | 39 + .../org/micord/config/DatabaseConnection.java | 67 + .../org/micord/config/HttpClientConfig.java | 19 + .../org/micord/config/S3HttpConnection.java | 76 + .../org/micord/controller/ApiController.java | 78 + .../org/micord/enums/RequestArgumentType.java | 19 + .../micord/models/AqlConnectionParams.java | 50 + .../java/org/micord/models/AqlRequest.java | 42 + .../micord/models/AqlRequestCollection.java | 27 + .../java/org/micord/models/BaseRequest.java | 29 + .../java/org/micord/models/CachedConfig.java | 21 + .../org/micord/models/DownloadCSVRequest.java | 13 + .../org/micord/models/DownloadRequest.java | 23 + .../main/java/org/micord/models/Request.java | 29 + .../org/micord/models/RequestArgument.java | 44 + .../main/java/org/micord/models/Requests.java | 41 + .../org/micord/models/S3ConnectionParams.java | 56 + .../java/org/micord/models/S3Request.java | 20 + .../micord/models/SqlConnectionParams.java | 66 + .../java/org/micord/models/SqlRequest.java | 20 + .../java/org/micord/service/ApiService.java | 64 + .../org/micord/service/DownloadService.java | 157 + .../org/micord/service/RequestService.java | 329 + .../java/org/micord/utils/ConfigLoader.java | 70 + .../src/main/resources/application.yml | 1 + config.md | 749 +++ config/.gitignore | 2 + config/Dockerfile | 43 + config/Dockerfile.build | 58 + config/JDK_version | 1 + config/cde-xml/arangorequest.xml | 50 + config/cde-xml/block.xml | 167 + config/cde-xml/downloadCSV.xml | 54 + config/cde-xml/removeFromCallList.xml | 52 + config/cde-xml/removeFromSystem.xml | 244 + config/cde-xml/s3request.xml | 28 + config/cde-xml/unblock.xml | 32 + config/db.env | 20 + config/docker-compose.db.yaml | 31 + config/docker-compose.yaml | 14 + config/entrypoint.sh | 48 + config/initdb.d/createdb.sql | 23 + config/micord.env | 22 + config/patches/add-logger-database.cli | 3 + config/patches/default.cli | 68 + config/patches/system/add-demo-user.sh | 1 + .../patches/system/add-postgresql-driver.cli | 5 + config/patches/system/init.cli | 14 + config/standalone.xml | 590 ++ distribution/pom.xml | 66 + frontend/.npmrc | 1 + frontend/angular.json | 71 + frontend/index.html | 23 + frontend/index.webpack.html | 11 + frontend/package.json | 100 + frontend/pom.xml | 113 + frontend/preview.html | 23 + frontend/save.ts.metadata.js | 72 + frontend/src/resources/app-config.json | 19 + frontend/src/resources/app.version | 1 + frontend/src/resources/css/components-app.css | 1584 +++++ frontend/src/resources/css/inbox-app.css | 342 + frontend/src/resources/css/structure.css | 846 +++ frontend/src/resources/css/style.css | 10 + frontend/src/resources/fonts/Segoe.ttf | Bin 0 -> 955804 bytes frontend/src/resources/fonts/SegoeB.ttf | Bin 0 -> 951724 bytes frontend/src/resources/fonts/SegoeBL.ttf | Bin 0 -> 324260 bytes frontend/src/resources/fonts/SegoeSB.ttf | Bin 0 -> 971080 bytes frontend/src/resources/fonts/SegoeSL.ttf | Bin 0 -> 854140 bytes frontend/src/resources/img/access_denied.png | Bin 0 -> 855 bytes frontend/src/resources/img/admin.png | Bin 0 -> 811 bytes frontend/src/resources/img/country-flags.jpg | Bin 0 -> 31142 bytes frontend/src/resources/img/create.png | Bin 0 -> 673 bytes .../resources/img/icons/dots-six-vertical.svg | 10 + .../src/resources/img/icons/settings-sm.svg | 3 + frontend/src/resources/img/logo-full.png | Bin 0 -> 5801 bytes frontend/src/resources/img/logo.png | Bin 0 -> 4924 bytes frontend/src/resources/img/progress.gif | Bin 0 -> 6794 bytes frontend/src/resources/img/project.png | Bin 0 -> 712 bytes frontend/src/resources/img/tasks.png | Bin 0 -> 351 bytes .../app/component/ConfigExecuteBtn.html | 9 + .../template/app/component/access_denied.html | 4 + .../template/app/component/admin_menu.html | 29 + .../template/app/component/app_footer.html | 10 + .../template/app/component/app_header.html | 9 + .../app/component/application_version.html | 1 + .../app/component/confirm-user-email.html | 27 + .../template/app/component/log_out.html | 9 + .../template/app/component/login.html | 51 + .../template/app/component/new_password.html | 103 + .../app/component/progress-indication.html | 3 + .../template/app/component/register.html | 121 + .../app/component/reset_password.html | 45 + .../resources/template/preview/preview.html | 3 + .../template/preview/preview_container.html | 1 + .../src/resources/template/webbpm/home.html | 6 + .../src/resources/template/webbpm/page.html | 1 + .../src/resources/template/webbpm/webbpm.html | 12 + frontend/src/ts/ervu/ConfigExecuteBtn.ts | 47 + frontend/src/ts/ervu/ExportDataBtn.ts | 69 + frontend/src/ts/main.aot.ts | 8 + frontend/src/ts/main.ts | 7 + .../src/ts/modules/app/app-routing.module.ts | 47 + frontend/src/ts/modules/app/app.module.ts | 76 + .../app/component/access-denied.component.ts | 11 + .../app/component/admin-menu.component.ts | 23 + .../app/component/app-footer.component.ts | 9 + .../app/component/app-header.component.ts | 20 + .../app-progress-indication.component.ts | 11 + .../application-version.component.ts | 24 + .../component/confirm-user-email.component.ts | 51 + .../modules/app/component/login.component.ts | 68 + .../modules/app/component/logout.component.ts | 37 + .../app/component/new-password.component.ts | 79 + .../app/component/register.component.ts | 71 + .../app/component/reset-password.component.ts | 30 + .../app-progress-indication.service.ts | 95 + .../component/preview-container.component.ts | 9 + .../preview/component/preview.component.ts | 9 + .../modules/preview/preview-routing.module.ts | 20 + .../src/ts/modules/preview/preview.main.ts | 7 + .../src/ts/modules/preview/preview.module.ts | 51 + .../http-preview-interceptor.service.ts | 16 + .../webbpm/component/home.component.ts | 9 + .../webbpm/component/webbpm.component.ts | 34 + .../handler/global-error.handler.prod.ts | 10 + .../webbpm/handler/global-error.handler.ts | 35 + .../interceptor/default-interceptors.prod.ts | 12 + .../interceptor/default-interceptors.ts | 9 + .../http-security-error-interceptor.dev.ts | 31 + .../webbpm/user-management-routing.module.ts | 88 + .../modules/webbpm/webbpm-routing.module.ts | 27 + .../src/ts/modules/webbpm/webbpm.module.ts | 56 + frontend/src/ts/page.routing.d.ts | 3 + frontend/src/ts/polyfills.ts | 59 + frontend/src/ts/vendor.ts | 38 + frontend/systemjs.config.js | 93 + frontend/systemjs.preview.config.js | 92 + frontend/tsconfig.aot.json | 42 + frontend/tsconfig.json | 40 + frontend/webpack.aot.config.js | 142 + packages/.gitkeep | 0 .../.flattened-pom.xml | 78 + .../META-INF/MANIFEST.MF | 4 + .../META-INF/components-package.xml | 30 + .../BpmnStartProcessVariable.ts.html | 71 + .../docs/component/buttons/index.html | 70 + ...び契ミコミスミセミソミコムダミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク_ミスミー_ムムびミーミスミクムムダ.html | 86 + ...クムび契ミコミスミセミソミコムダミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム祇ミスミー_ムムびミーミスミクムムダ.html | 87 + .../ミ墟スミセミソミコミー_ミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク.html | 118 + .../ミ墟スミセミソミコミー_ミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム.html | 117 + ...ミーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾アミセムミー_ミスミー_ムムびミーミスミクムムダ.html | 90 + ...ミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾キミセミイミー_ミセム威クミアミコミク_ミスミー_ムムびミーミスミクムムダ.html | 80 + ...セミアミーミイミクムび契ミコミスミセミソミコムダミイム巾ソミセミサミスミオミスミクム柔SQL_ミスミー_ムムびミーミスミクムムダ.html | 103 + ...セミアミーミイミクムび契ミコミスミセミソミコムダミエミサム柔ムミクミサム袴びミームミクミク_ミスミー_ムムびミーミスミクムムダ.html | 81 + ...ミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミキミーミウムムσキミコミク_ミスミー_ムムびミーミスミクムムダ.html | 82 + .../ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミー_ムムびミーミスミクムムダ.html | 86 + ...コ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミーミイミクミウミームミクミク_ミスミー_ムムびミーミスミクムムダ.html | 84 + ...ミーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミセムひシミオミスム祇ミスミー_ムムびミーミスミクムムダ.html | 82 + ...ミアミーミイミクムび契ミコミスミセミソミコムダミセムミクムムひコミク_ムミクミサム袴びミー_ミスミー_ムムびミーミスミクムムダ.html | 83 + ..._ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムミセムムミーミスミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html | 86 + ...ミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムσエミーミサミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html | 84 + .../docs/component/buttons/ミ墟スミセミソミコミー.html | 105 + .../docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾アミセムミー.html | 117 + .../buttons/ミ墟スミセミソミコミー_ミイム巾キミセミイミー_ミセム威クミアミコミク.html | 172 + .../buttons/ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔SQL.html | 117 + .../ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔ミアミクミキミスミオム-ミソムミセムミオムムミー.html | 86 + .../buttons/ミ墟スミセミソミコミー_ミエミサム柔ムミクミサム袴びミームミクミク.html | 110 + .../component/buttons/ミ墟スミセミソミコミー_ミキミーミウムムσキミコミク.html | 115 + .../ミ墟スミセミソミコミー_ミキミーミソムτミコミー_ミアミクミキミスミオム-ミソムミセムミオムムミー.html | 81 + .../component/buttons/ミ墟スミセミソミコミー_ミスミーミイミクミウミームミクミク.html | 107 + .../docs/component/buttons/ミ墟スミセミソミコミー_ミセムひシミオミスム.html | 107 + .../buttons/ミ墟スミセミソミコミー_ミセムミクムムひコミク_ムミクミサム袴びミー.html | 118 + .../component/buttons/ミ墟スミセミソミコミー_ミソミセミエミソミクムミク.html | 152 + .../buttons/ミ墟スミセミソミコミー_ミソムミセミイミオムミコミク_ミソミセミエミソミクムミク.html | 100 + .../component/buttons/ミ墟スミセミソミコミー_ムミセムムミーミスミオミスミクム.html | 112 + .../component/buttons/ミ墟スミセミソミコミー_ムσエミーミサミオミスミクム.html | 110 + .../docs/component/buttons/ミ墟スミセミソミコミク.html | 69 + ..._ContainerValueByEventLoaderRpcService.html | 53 + .../docs/component/containers/index.html | 130 + .../containers/ミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html | 162 + .../docs/component/containers/ミ漬コミサミーミエミコミー.html | 92 + ...イミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソミセムミサミオミエムτ紗禾τ.html | 82 + ...ミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソムミオミエム巾エムτ禾τ.html | 82 + ...ムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミスミー_ミイミコミサミーミエミコムダミソミセ_ミスミセミシミオムム.html | 82 + .../containers/ミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html | 98 + .../component/containers/ミ酉ムσソミソミー_ミソミセミサミオミケ.html | 123 + .../docs/component/containers/ミ頒クミーミサミセミウ.html | 118 + .../component/containers/ミ頒クミーミサミセミウ_ミ柘巾キミイミームび.html | 78 + .../component/containers/ミ頒クミーミサミセミウ_ミ。ミコムム錦び.html | 79 + ...契ミコミセミシミソミセミスミオミスムびダミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html | 166 + ...ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ漬コミサミーミエミコミー_ミスミー_ムムびミーミスミクムムダ.html | 115 + ...ミコミセミシミソミセミスミオミスムびダミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html | 173 + ...アミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ酉ムσソミソミー_ミソミセミサミオミケ_ミスミー_ムムびミーミスミクムムダ.html | 157 + ...ミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ_ミスミー_ムムびミーミスミクムムダ.html | 90 + ...イミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミコミスミセミソミセミコ_ミスミー_ムムびミーミスミクムムダ.html | 191 + ...ーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ斷ーミアミセム_ムミクミサム袴びミセミイ_ミスミー_ムムびミーミスミクムムダ.html | 135 + ...び契ミコミセミシミソミセミスミオミスムびダミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム契ミスミー_ムムびミーミスミクムムダ.html | 161 + ...コ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ、ミセムミシミー_ミスミー_ムムびミーミスミクムムダ.html | 184 + .../ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧コミスミセ_.html | 137 + ...ミサミセミウ_ミエミサム柔ミイム巾イミセミエミー_ミソムミオミエムσソムミオミカミエミオミスミクム柔ミソミセミサム糊キミセミイミームひオミサム酸ミスミー_ムムびミーミスミクムミオ_.html | 146 + .../containers/ミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ.html | 121 + .../containers/ミ墟セミスムひオミケミスミオム_ム\ミコミスミセミソミコミーミシミク.html | 98 + .../docs/component/containers/ミ墟セミスムひオミケミスミオムム.html | 53 + .../component/containers/ミ斷ーミアミセム_ムミクミサム袴びミセミイ.html | 181 + .../docs/component/containers/ミ榧コミスミセ.html | 179 + .../containers/ミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム.html | 107 + .../containers/ミ。ムひクミサミク-ミコミセミスムひオミケミスミオムミセミイ.html | 129 + .../docs/component/containers/ミ、ミセムミシミー.html | 162 + ...ミ、ミセムミシミー_ミアミオミキ_ミソミオムミオムミセミエミー_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html | 56 + .../ミ、ミセムミシミー_ム\ミソミオムミオムミセミエミセミシ_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html | 56 + .../docs/component/control-properties.html | 140 + .../editable-grids/EditableGrid.html | 244 + .../component/fields/EditableOneToMany.html | 118 + .../docs/component/fields/ManyToMany.html | 464 ++ .../component/fields/ManyToManyField.html | 115 + .../docs/component/fields/OneToMany.html | 170 + .../docs/component/fields/TreeField.html | 146 + .../docs/component/fields/filters/index.html | 63 + ...ミーミイミクムび契ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html | 193 + ...災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html | 159 + ...ミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミエミームひオ_ミスミー_ムムびミーミスミクムムダ.html | 136 + ...ミオミスム_ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー_ミスミー_ムムびミーミスミクムムダ.html | 172 + ...ム_ミ、ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html | 140 + ...契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html | 178 + ...キミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミ、ミサミーミウムダ.html | 181 + ...ム契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。_ミスミー_ムムびミーミスミクムミオ_.html | 144 + ...スミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html | 240 + .../filters/ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html | 116 + .../fields/filters/ミ、ミクミサム袴び_ミソミセ_ミエミームひオ.html | 140 + .../filters/ミ、ミクミサム袴び_ミソミセ_ミコミセミシミソミセミスミオミスムひオ_ミ、ミサミーミウ.html | 115 + .../filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。.html | 173 + ...クミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html | 241 + .../ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー.html | 193 + ...ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html | 118 + .../filters/ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム.html | 181 + .../filters/ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム.html | 132 + .../component/fields/filters/ミ、ミクミサム袴びム.html | 63 + .../docs/component/fields/index.html | 79 + .../docs/component/fields/ミ籍エムミオム.html | 290 + .../docs/component/fields/ミ柘ミオミシム.html | 142 + .../component/fields/ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html | 223 + .../docs/component/fields/ミ頒ームひー.html | 191 + .../docs/component/fields/ミ頒オミスミオミカミスミセミオ_ミソミセミサミオ.html | 174 + ...ミエミセミアミーミイミクムび契ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html | 88 + ...ミーミコ_ミエミセミアミーミイミクムび契ミ渙オムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html | 88 + ...ーミコ_ミエミセミアミーミイミクムび契ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html | 109 + ...ミーミコ_ミエミセミアミーミイミクムび契ミエミオミスミオミカミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html | 89 + ...コ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ「ミオミコムム_ミスミー_ムムびミーミスミクムムダ.html | 99 + ...ミオミケ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダム\ミーミイムひセミシミームひクムミオムミコミクミシ_ミキミーミソミセミサミスミオミスミクミオミシ_ミソミセムミサミオミエミスミオミウミセ_.html | 116 + .../ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ柘ミオミシム柔ミスミー_ムムびミーミスミクムムダ.html | 95 + .../ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダ.html | 93 + ...ミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html | 239 + ...イミクムび契ムムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html | 85 + ...ミーミコ_ミエミセミアミーミイミクムび契ムミクムミサミセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html | 91 + ...ーミイミクムび契ム災サミオミシミオミスム_ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html | 82 + ...び契ム災サミオミシミオミスム_ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html | 82 + ...ムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ厘ーミウムムσキミコミー_ムミーミケミサミー_ミスミー_ムムびミーミスミクムミオ_.html | 300 + ...コミセミシミソミセミスミオミスムびダミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html | 187 + ...ムび契ミコミセミシミソミセミスミオミスムびダミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html | 290 + ...ムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html | 165 + ...イミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html | 133 + ...ミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミサミーミウ_ミスミー_ムムびミーミスミクムミオ_.html | 135 + ...ミスムびダミ「ミオミコムム_ミエミサム柔ミセムひセミアムミーミカミオミスミクム柔ミスミーミキミイミーミスミクム柔ミセムミウミーミスミクミキミームミクミク_ミスミー_ムムびミーミスミクムミオ_.html | 95 + ...オミコムムひセミイミセミオ_ミソミセミサミオ_ミイ_ミコミームミオムムひイミオ_ミソミームミーミシミオムびミー_ミエミサム柔ミソミオムミームひスミセミケ_ムミセムミシム祇.html | 104 + ...ミオ_ミソミセミサミオ_ミエミサム柔ミスミームムびミセミケミコミク_ミイミクミエミクミシミセムムひク_ミエムムσウミクム_ム災サミオミシミオミスムひセミイ_ミスミー_ムムびミーミスミクムミオ_.html | 137 + ..._ミセムひセミアムミーミキミクムび契ミスミーミキミイミーミスミクミオ_ミセムミウミーミスミクミキミームミクミク_ムひオミコムムひセミシ.html | 95 + .../component/fields/ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ.html | 213 + ...ミコミー_ミイミキミーミクミシミセミキミーミイミクムミクミシム錦_ミソミセミサミオミケ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html | 88 + .../docs/component/fields/ミ渙オムミオミコミサム紗ミームひオミサム.html | 152 + .../ミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html | 201 + .../ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html | 449 ++ .../fields/ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html | 777 +++ .../ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html | 751 +++ ...ムミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム.html | 675 ++ .../fields/ミ。ムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html | 144 + .../fields/ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム.html | 138 + .../component/fields/ミ。ムひクミサミク-ミソミセミサミオミケ-ミイミイミセミエミー.html | 201 + .../docs/component/fields/ミ「ミオミコムム.html | 146 + .../docs/component/fields/ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ.html | 231 + .../docs/component/fields/ミ、ミーミケミサ.html | 172 + .../fields/ミ、ミクミサム袴びミームミクム柔ミクムムひセムミスミクミコミー_ミエミーミスミスム錦.html | 105 + ...ミセミシ_ミキミスミームミオミスミクム柔ミイ_ミキミーミイミクムミクミシミセムムひク_ミセム_ミイム巾アムミーミスミスミセミウミセ_ミキミスミームミオミスミクム柔ミイ_ミエムムσウミセミシ_ミソミセミサミオ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html | 105 + .../docs/component/fields/ミ、ミサミーミウ.html | 138 + .../docs/component/fields/ミァミクムミサミセミイミセミオ_ミソミセミサミオ.html | 165 + .../grids/ColumnNavigationRenderer.html | 70 + .../CustomSqlLoadDao-ミク-CustomSqlFormDao.html | 53 + ...eWithAggregationColumnsImpl-ミーミウムミオミウミームミクム.html | 52 + .../docs/component/grids/GridV2.html | 264 + .../grids/MaskCellValueFormatter.html | 51 + .../grids/NavigateOnGridCellOrRow.html | 98 + .../component/grids/RowNavigationHandler.html | 69 + ...onfigurator.ts-(ミ墟セミサミセミスミコミク-ム-ミスミーミイミクミウミームミクミオミケ).html | 58 + .../docs/component/grids/index.html | 72 + .../component/grids/ミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー.html | 182 + ...アミサミクムムダミスミー_ムムびミーミスミクムムダム\ムミクミサム袴びミームミクミオミケ_ミキミーミソミクムミオミケ_ミソミセ_ムτミサミセミイミクム酸.html | 104 + ...ミスミー_ムムびミーミスミクムムダミ「ミーミアミサミクムムダム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ_.html | 102 + ..._ミエミセミアミーミイミクムび契ムミイム紹キミーミスミスム巾オ_ミ「ミーミアミサミクムム祇ミスミー_ムムびミーミスミクムムダ.html | 89 + ...ソミセミスミオミスムびダミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー_ミスミー_ミソミセミサム糊キミセミイミームひオミサム袴ミコミセミケ_ムムびミーミスミクムミオ_.html | 158 + ...クミコミームひセム_ムミイム紹キミーミスミスミセミケ_ムひーミアミサミクムム祇ミクムミソミセミサム糊キムτ柔ムミコムム錦ひセミオ_ムミクムミサミセミイミセミオ_ミソミセミサミオ_.html | 68 + .../grids/ミ斷ームムびミセミケミコミー_ミコミセミサミセミスミセミコ_ミ「ミーミアミサミクムム.html | 100 + ...ムミクムムひクムび契ムミセムミシミームひクムミセミイミーミスミクミオ_ミコミセミサミセミスミセミコ_ムひーミアミサミクムム.html | 77 + .../docs/component/grids/ミ「ミーミアミサミクムミー.html | 247 + .../ミ「ミーミアミサミクムミー_ム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ.html | 187 + .../docs/component/grids/ミ「ミーミアミサミクムム.html | 53 + .../components/docs/component/index.html | 104 + .../AC._ミ慴オムひセミエム-ミセミアム諌オミコムひセミイ-ムムびミーミスミクムム.html | 83 + .../uncategorized/ConditionOperation.html | 108 + .../uncategorized/EventCalendar.html | 359 + .../component/uncategorized/HyperLink.html | 80 + .../docs/component/uncategorized/IFrame.html | 98 + .../component/uncategorized/InnerHtml.html | 69 + .../docs/component/uncategorized/Menu.html | 100 + .../component/uncategorized/MenuGroup.html | 75 + .../component/uncategorized/MenuItem.html | 119 + .../uncategorized/ValidationController.html | 138 + .../docs/component/uncategorized/index.html | 52 + .../component/uncategorized/ミ頒クミーミウムミーミシミシミー.html | 160 + .../uncategorized/ミ頒クミーミウムミーミシミシミー_chart-v2.html | 257 + .../ミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_.html | 152 + ...ミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_ミスミー_ムムびミーミスミクムミオ_.html | 141 + ...オミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミスミー_ムムびミーミスミクムミオ_.html | 163 + ...イミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ_ミスミー_ムムびミーミスミクムミオ_.html | 239 + ...びミームミクミク_ミイ_ムひーミアミサミクムミオ_ミク_ミウムミームミクミコミオ_ミエミサム柔ミコミセミシミソミセミスミオミスムび祇ミ頒クミーミウムミーミシミシミー.html | 54 + .../uncategorized/ミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ.html | 148 + .../uncategorized/ミミーミキミスム巾オ_ミコミセミシミソミセミスミオミスムび.html | 52 + ...ム紗ミクムび契ミイム錦ミクムミサミオミスミクミオ_ミシミームひオミシミームひクムミオムミコミクム_ミセミソミオムミームミクミケ.html | 63 + ...ミアミーミイミクムび契ムムびミセミコムダミコ_ミキミスミームミオミスミクム酸ミイ_ムひオミコムτ禍オミシ_ミソミセミサミオ.html | 63 + ...ソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミクミキ_ミソミオムミオミシミオミスミスミセミケ_ミソムミセムミオムムミー.html | 78 + .../ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム.html | 115 + ...クミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html | 83 + ...キミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html | 93 + ..._ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html | 83 + ...アミーミイミクムび-ム尉ミクムムび-ミイ-ミシミセミエムσサム-ミソミオムミームひク-JasperReports.html | 56 + .../component/ミ斷ームムびミセミケミコミー_ミ酉ミームミー_ムムτ禍スミセムムひオミケ.html | 144 + .../docs/component/ミ榧アム禍クミオ-ムムひクミサミク.html | 65 + .../component/ミ榧アム禍クミオ_ムミイミセミケムムひイミー_ミコミセミシミソミセミスミオミスム.html | 177 + ...榧ソムミオミエミオミサミクムび契ミソムミーミイミー_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html | 57 + ...ミ榧ソムミオミエミオミサミクムび契ムミセミサミク_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html | 57 + ...ミエミームびダミク_ムミシミオムムひクムび契ミオム狙ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ_ミスミー_ミキミーミエミーミスミスム巾ケ_ミソミオムミクミセミエ.html | 104 + .../docs/component/ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦.html | 105 + .../ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦_ミソミセ_ムσシミセミサムミーミスミクム.html | 105 + .../ミ湲ミオミセミアムミーミキミセミイミーミスミクミオ_ムひオミコムτ禍オミケ_ミエミームび.html | 104 + ...ミーミキミセミイミームび契ミイ_ミコミセミサミセミスミコミク_ムミセ_ミキミスミームミオミスミクム紹シミク-ミソミオムミオムミセミエミーミシミク.html | 96 + .../component/ミ。ミコミサミオミクムび契ミスミオムミコミセミサム糊コミセ_ミキミスミームミオミスミクミケ.html | 112 + ...スミイミオムムひクムミセミイミームび契ミキミスミームミオミスミクミオ_ミイ_ムミオミサミセムミクムミサミオミスミスム巾ケ_ムひクミソ.html | 65 + ...クムび契ミエミームびダミクミキ_ミソミセミサム柔ミスミー_ミソミオムミクミセミエ_ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ.html | 97 + ...ミーミウミセミサミセミイミコミー_ミイム巾アムミーミスミスミセミケ_ミイミコミサミーミエミコミク_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html | 54 + ...セムムミーミスミクムび契ミキミスミームミオミスミクミオ_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html | 58 + .../docs/component/ミ」ミソムミーミイミサミオミスミクミオ_ミスミーミイミクミウミームミクミオミケ.html | 72 + .../components/docs/component/ミ、ムσスミコムミクミク.html | 77 + .../docs/css/apache-maven-fluido-1.9.min.css | 17 + .../META-INF/components/docs/css/print.css | 21 + .../META-INF/components/docs/css/site.css | 1 + .../components/docs/dependencies.html | 5824 +++++++++++++++++ .../components/docs/dependency-info.html | 73 + .../docs/dependency-management.html | 1167 ++++ .../docs/distribution-management.html | 54 + .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 35691 bytes .../fonts/glyphicons-halflings-regular.svg | 229 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 55383 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 42340 bytes .../docs/handlers/EmailHandler.html | 105 + .../docs/handlers/JiraCreateIssueHandler.html | 120 + .../components/docs/handlers/RESTHandler.html | 100 + .../docs/handlers/SetVariableHandler.html | 73 + .../handlers/SqlAttachmentsEmailHandler.html | 75 + .../components/docs/handlers/Telegram.html | 96 + .../docs/handlers/UserAuthorityHandler.html | 119 + .../components/docs/handlers/index.html | 60 + .../docs/images/accessories-text-editor.png | Bin 0 -> 746 bytes .../META-INF/components/docs/images/add.gif | Bin 0 -> 397 bytes .../docs/images/apache-maven-project-2.png | Bin 0 -> 43073 bytes .../docs/images/application-certificate.png | Bin 0 -> 923 bytes .../META-INF/components/docs/images/close.gif | Bin 0 -> 279 bytes .../components/docs/images/contact-new.png | Bin 0 -> 736 bytes .../docs/images/document-properties.png | Bin 0 -> 577 bytes .../components/docs/images/drive-harddisk.png | Bin 0 -> 700 bytes .../META-INF/components/docs/images/fix.gif | Bin 0 -> 366 bytes .../components/docs/images/icon_error_sml.gif | Bin 0 -> 633 bytes .../components/docs/images/icon_help_sml.gif | Bin 0 -> 1072 bytes .../components/docs/images/icon_info_sml.gif | Bin 0 -> 638 bytes .../docs/images/icon_success_sml.gif | Bin 0 -> 604 bytes .../docs/images/icon_warning_sml.gif | Bin 0 -> 625 bytes .../docs/images/image-x-generic.png | Bin 0 -> 662 bytes .../docs/images/internet-web-browser.png | Bin 0 -> 1017 bytes .../images/logos/build-by-maven-black.png | Bin 0 -> 2294 bytes .../images/logos/build-by-maven-white.png | Bin 0 -> 2260 bytes .../docs/images/logos/maven-feather.png | Bin 0 -> 3330 bytes .../components/docs/images/network-server.png | Bin 0 -> 536 bytes .../docs/images/package-x-generic.png | Bin 0 -> 717 bytes .../docs/images/profiles/pre-release.png | Bin 0 -> 32607 bytes .../docs/images/profiles/retired.png | Bin 0 -> 22003 bytes .../docs/images/profiles/sandbox.png | Bin 0 -> 33010 bytes .../components/docs/images/remove.gif | Bin 0 -> 607 bytes .../META-INF/components/docs/images/rss.png | Bin 0 -> 474 bytes .../components/docs/images/update.gif | Bin 0 -> 1090 bytes .../components/docs/images/window-new.png | Bin 0 -> 583 bytes .../docs/img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../docs/img/glyphicons-halflings.png | Bin 0 -> 12799 bytes .../META-INF/components/docs/index.html | 52 + .../docs/js/apache-maven-fluido-1.9.min.js | 25 + .../components/docs/plugin-management.html | 176 + .../META-INF/components/docs/plugins.html | 130 + .../components/docs/project-info.html | 84 + .../ru/css/apache-maven-fluido-1.9.min.css | 17 + .../META-INF/components/docs/ru/css/print.css | 21 + .../META-INF/components/docs/ru/css/site.css | 1 + .../components/docs/ru/dependencies.html | 5824 +++++++++++++++++ .../components/docs/ru/dependency-info.html | 73 + .../docs/ru/dependency-management.html | 1167 ++++ .../docs/ru/distribution-management.html | 54 + .../ru/fonts/glyphicons-halflings-regular.eot | Bin 0 -> 35691 bytes .../ru/fonts/glyphicons-halflings-regular.svg | 229 + .../ru/fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 55383 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 42340 bytes .../ru/images/accessories-text-editor.png | Bin 0 -> 746 bytes .../components/docs/ru/images/add.gif | Bin 0 -> 397 bytes .../docs/ru/images/apache-maven-project-2.png | Bin 0 -> 43073 bytes .../ru/images/application-certificate.png | Bin 0 -> 923 bytes .../components/docs/ru/images/close.gif | Bin 0 -> 279 bytes .../components/docs/ru/images/contact-new.png | Bin 0 -> 736 bytes .../docs/ru/images/document-properties.png | Bin 0 -> 577 bytes .../docs/ru/images/drive-harddisk.png | Bin 0 -> 700 bytes .../components/docs/ru/images/fix.gif | Bin 0 -> 366 bytes .../docs/ru/images/icon_error_sml.gif | Bin 0 -> 633 bytes .../docs/ru/images/icon_help_sml.gif | Bin 0 -> 1072 bytes .../docs/ru/images/icon_info_sml.gif | Bin 0 -> 638 bytes .../docs/ru/images/icon_success_sml.gif | Bin 0 -> 604 bytes .../docs/ru/images/icon_warning_sml.gif | Bin 0 -> 625 bytes .../docs/ru/images/image-x-generic.png | Bin 0 -> 662 bytes .../docs/ru/images/internet-web-browser.png | Bin 0 -> 1017 bytes .../ru/images/logos/build-by-maven-black.png | Bin 0 -> 2294 bytes .../ru/images/logos/build-by-maven-white.png | Bin 0 -> 2260 bytes .../docs/ru/images/logos/maven-feather.png | Bin 0 -> 3330 bytes .../docs/ru/images/network-server.png | Bin 0 -> 536 bytes .../docs/ru/images/package-x-generic.png | Bin 0 -> 717 bytes .../docs/ru/images/profiles/pre-release.png | Bin 0 -> 32607 bytes .../docs/ru/images/profiles/retired.png | Bin 0 -> 22003 bytes .../docs/ru/images/profiles/sandbox.png | Bin 0 -> 33010 bytes .../components/docs/ru/images/remove.gif | Bin 0 -> 607 bytes .../components/docs/ru/images/rss.png | Bin 0 -> 474 bytes .../components/docs/ru/images/update.gif | Bin 0 -> 1090 bytes .../components/docs/ru/images/window-new.png | Bin 0 -> 583 bytes .../ru/img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../docs/ru/img/glyphicons-halflings.png | Bin 0 -> 12799 bytes .../META-INF/components/docs/ru/index.html | 52 + .../docs/ru/js/apache-maven-fluido-1.9.min.js | 25 + .../components/docs/ru/plugin-management.html | 176 + .../META-INF/components/docs/ru/plugins.html | 130 + .../components/docs/ru/project-info.html | 84 + .../META-INF/components/docs/ru/scm.html | 59 + .../META-INF/components/docs/ru/summary.html | 96 + .../META-INF/components/docs/scm.html | 59 + .../META-INF/components/docs/summary.html | 96 + .../CheckUserAuthority.ts.html | 51 + .../user-management/CheckUserRole.ts.html | 51 + .../components/icons/buttons/Button.png | Bin 0 -> 284 bytes .../components/icons/buttons/Cancel.png | Bin 0 -> 826 bytes .../components/icons/buttons/ClearFilter.png | Bin 0 -> 551 bytes .../components/icons/buttons/Delete.png | Bin 0 -> 401 bytes .../components/icons/buttons/Download.png | Bin 0 -> 447 bytes .../icons/buttons/EntityGraphReporting.png | Bin 0 -> 507 bytes .../components/icons/buttons/Error.png | Bin 0 -> 611 bytes .../icons/buttons/ExecProcessButton.png | Bin 0 -> 988 bytes .../icons/buttons/ExecuteSQLButton.png | Bin 0 -> 508 bytes .../components/icons/buttons/Filter.png | Bin 0 -> 379 bytes .../icons/buttons/FormReporting.png | Bin 0 -> 453 bytes .../components/icons/buttons/Navigation.png | Bin 0 -> 503 bytes .../components/icons/buttons/Save.png | Bin 0 -> 406 bytes .../components/icons/buttons/Select.png | Bin 0 -> 338 bytes .../components/icons/buttons/SignButton.png | Bin 0 -> 702 bytes .../icons/buttons/StartProcessButton.png | Bin 0 -> 425 bytes .../icons/containers/CollapsiblePanel.png | Bin 0 -> 356 bytes .../components/icons/containers/Dialog.png | Bin 0 -> 270 bytes .../components/icons/containers/DropDown.png | Bin 0 -> 485 bytes .../components/icons/containers/FieldSet.png | Bin 0 -> 326 bytes .../icons/containers/FilterGroup.png | Bin 0 -> 281 bytes .../components/icons/containers/Form.png | Bin 0 -> 440 bytes .../components/icons/containers/HBox.png | Bin 0 -> 255 bytes .../icons/containers/TabContainer.png | Bin 0 -> 327 bytes .../components/icons/containers/TabItem.png | Bin 0 -> 234 bytes .../components/icons/containers/VBox.png | Bin 0 -> 285 bytes .../components/icons/containers/Window.png | Bin 0 -> 270 bytes .../icons/editable-grids/EditableGrid.png | Bin 0 -> 204 bytes .../components/icons/fields/Address.png | Bin 0 -> 637 bytes .../components/icons/fields/Autocomplete.png | Bin 0 -> 355 bytes .../components/icons/fields/Checkbox.png | Bin 0 -> 589 bytes .../components/icons/fields/Combobox.png | Bin 0 -> 313 bytes .../icons/fields/DateTimePicker.png | Bin 0 -> 370 bytes .../components/icons/fields/EditableLinks.png | Bin 0 -> 588 bytes .../icons/fields/EditableOnetoMany.png | Bin 0 -> 479 bytes .../components/icons/fields/FilePreview.png | Bin 0 -> 418 bytes .../components/icons/fields/FileUpload.png | Bin 0 -> 399 bytes .../components/icons/fields/ManytoMany.png | Bin 0 -> 432 bytes .../icons/fields/ManytoManyField.png | Bin 0 -> 509 bytes .../components/icons/fields/MoneyField.png | Bin 0 -> 499 bytes .../components/icons/fields/NumberField.png | Bin 0 -> 2043 bytes .../components/icons/fields/OnetoMany.png | Bin 0 -> 425 bytes .../components/icons/fields/Radiobutton.png | Bin 0 -> 1357 bytes .../icons/fields/SignVerification.png | Bin 0 -> 765 bytes .../icons/fields/StaticCombobox.png | Bin 0 -> 433 bytes .../icons/fields/StaticRadiobutton.png | Bin 0 -> 1313 bytes .../META-INF/components/icons/fields/Text.png | Bin 0 -> 241 bytes .../components/icons/fields/TextArea.png | Bin 0 -> 346 bytes .../components/icons/fields/TextField.png | Bin 0 -> 376 bytes .../components/icons/fields/TimePicker.png | Bin 0 -> 356 bytes .../components/icons/fields/TreeField.png | Bin 0 -> 309 bytes .../icons/fields/TreeMultiField.png | Bin 0 -> 304 bytes .../icons/fields/filters/Address.png | Bin 0 -> 637 bytes .../icons/fields/filters/Autocomplete.png | Bin 0 -> 355 bytes .../icons/fields/filters/Boolean.png | Bin 0 -> 620 bytes .../icons/fields/filters/Checkbox.png | Bin 0 -> 589 bytes .../icons/fields/filters/Combobox.png | Bin 0 -> 313 bytes .../icons/fields/filters/DateTimePicker.png | Bin 0 -> 370 bytes .../icons/fields/filters/FileUpload.png | Bin 0 -> 399 bytes .../icons/fields/filters/MoneyField.png | Bin 0 -> 499 bytes .../icons/fields/filters/NumberField.png | Bin 0 -> 2043 bytes .../icons/fields/filters/Radiobutton.png | Bin 0 -> 1357 bytes .../icons/fields/filters/StaticCombobox.png | Bin 0 -> 433 bytes .../fields/filters/StaticRadiobutton.png | Bin 0 -> 1313 bytes .../components/icons/fields/filters/Text.png | Bin 0 -> 241 bytes .../icons/fields/filters/TextArea.png | Bin 0 -> 346 bytes .../icons/fields/filters/TextField.png | Bin 0 -> 376 bytes .../icons/fields/filters/TimePicker.png | Bin 0 -> 356 bytes .../META-INF/components/icons/grids/Grid.png | Bin 0 -> 270 bytes .../components/icons/grids/PagingGrid.png | Bin 0 -> 418 bytes .../components/icons/grids/TreeGrid.png | Bin 0 -> 406 bytes .../icons/uncategorized/ActionController.png | Bin 0 -> 1075 bytes .../icons/uncategorized/Calendar.png | Bin 0 -> 306 bytes .../components/icons/uncategorized/Chart.png | Bin 0 -> 265 bytes .../icons/uncategorized/GanttChart.png | Bin 0 -> 388 bytes .../components/icons/uncategorized/Menu.png | Bin 0 -> 270 bytes .../uncategorized/ValidationController.png | Bin 0 -> 532 bytes .../components/icons/uncategorized/iframe.png | Bin 0 -> 329 bytes .../localization/buttons/button.properties | 2 + .../buttons/button_en_US.properties | 2 + .../buttons/cancel-button.properties | 2 + .../buttons/cancel-button_en_US.properties | 2 + .../buttons/clear-filter-button.properties | 2 + .../clear-filter-button_en_US.properties | 2 + .../buttons/delete-button.properties | 2 + .../buttons/delete-button_en_US.properties | 2 + .../buttons/download-button.properties | 2 + .../buttons/download-button_en_US.properties | 2 + .../entity-graph-reporting-button.properties | 2 + ...ty-graph-reporting-button_en_US.properties | 2 + .../buttons/error-button.properties | 2 + .../buttons/error-button_en_US.properties | 2 + .../buttons/execute-sql-button.properties | 2 + .../execute-sql-button_en_US.properties | 2 + .../buttons/filter-button.properties | 2 + .../buttons/filter-button_en_US.properties | 2 + .../buttons/form-reporting-button.properties | 2 + .../form-reporting-button_en_US.properties | 2 + .../buttons/navigation-button.properties | 2 + .../navigation-button_en_US.properties | 2 + .../buttons/save-button.properties | 2 + .../buttons/save-button_en_US.properties | 2 + .../buttons/select-button.properties | 2 + .../buttons/select-button_en_US.properties | 2 + .../buttons/sign-button.properties | 5 + .../buttons/sign-button_en_US.properties | 5 + .../buttons/start-process-button.properties | 2 + .../start-process-button_en_US.properties | 2 + .../project-scripts-localization.properties | 0 ...ject-scripts-localization_en_US.properties | 0 .../webbpm-scripts-localization.properties | 4231 ++++++++++++ ...bbpm-scripts-localization_en_US.properties | 1796 +++++ .../containers/collapsible-panel.properties | 2 + .../collapsible-panel_en_US.properties | 2 + .../localization/containers/dialog.properties | 2 + .../containers/dialog_en_US.properties | 2 + .../containers/drop-down.properties | 2 + .../containers/drop-down_en_US.properties | 2 + .../containers/field-set.properties | 2 + .../containers/field-set_en_US.properties | 2 + .../containers/filter-group.properties | 2 + .../containers/filter-group_en_US.properties | 2 + .../localization/containers/form.properties | 2 + .../containers/form_en_US.properties | 2 + .../localization/containers/h-box.properties | 2 + .../containers/h-box_en_US.properties | 2 + .../containers/i-frame.properties | 2 + .../containers/i-frame_en_US.properties | 2 + .../containers/tab-container.properties | 2 + .../containers/tab-container_en_US.properties | 2 + .../containers/tab-item.properties | 2 + .../containers/tab-item_en_US.properties | 2 + .../localization/containers/v-box.properties | 2 + .../containers/v-box_en_US.properties | 2 + .../localization/containers/window.properties | 2 + .../containers/window_en_US.properties | 2 + .../default-components.properties | 16 + .../default-components_en_US.properties | 16 + .../editable-grids/autocomplete.properties | 2 + .../autocomplete_en_US.properties | 2 + .../editable-grids/check-box.properties | 2 + .../editable-grids/check-box_en_US.properties | 2 + .../editable-grids/combo-box.properties | 2 + .../editable-grids/combo-box_en_US.properties | 2 + .../date-time-picker.properties | 2 + .../date-time-picker_en_US.properties | 2 + .../editable-grids/editable-grid.properties | 2 + .../editable-grid_en_US.properties | 2 + .../editable-grids/number-field.properties | 2 + .../number-field_en_US.properties | 2 + .../editable-grids/one-to-many.properties | 2 + .../one-to-many_en_US.properties | 2 + .../editable-grids/read-only.properties | 2 + .../editable-grids/read-only_en_US.properties | 2 + .../editable-grids/text-area.properties | 2 + .../editable-grids/text-area_en_US.properties | 2 + .../editable-grids/text-field.properties | 2 + .../text-field_en_US.properties | 2 + .../editable-grids/time-picker.properties | 2 + .../time-picker_en_US.properties | 2 + .../localization/fields/address.properties | 2 + .../fields/address_en_US.properties | 2 + .../fields/autocomplete.properties | 2 + .../fields/autocomplete_en_US.properties | 2 + .../localization/fields/check-box.properties | 2 + .../fields/check-box_en_US.properties | 2 + .../localization/fields/combo-box.properties | 2 + .../fields/combo-box_en_US.properties | 2 + .../fields/date-time-picker.properties | 2 + .../fields/date-time-picker_en_US.properties | 2 + .../fields/editable-one-to-many.properties | 2 + .../editable-one-to-many_en_US.properties | 2 + .../fields/file-preview.properties | 2 + .../fields/file-preview_en_US.properties | 2 + .../fields/file-upload-field.properties | 2 + .../fields/file-upload-field_en_US.properties | 2 + .../fields/file-upload.properties | 2 + .../fields/file-upload_en_US.properties | 2 + .../filters/filter-autocomplete.properties | 2 + .../filter-autocomplete_en_US.properties | 2 + .../fields/filters/filter-boolean.properties | 2 + .../filters/filter-boolean_en_US.properties | 2 + .../filters/filter-check-box.properties | 2 + .../filters/filter-check-box_en_US.properties | 2 + .../filters/filter-combo-box.properties | 2 + .../filters/filter-combo-box_en_US.properties | 2 + .../filter-date-time-picker.properties | 2 + .../filter-date-time-picker_en_US.properties | 2 + .../filters/filter-fias-address.properties | 2 + .../filter-fias-address_en_US.properties | 2 + .../filters/filter-number-field.properties | 2 + .../filter-number-field_en_US.properties | 2 + .../filters/filter-radio-button.properties | 2 + .../filter-radio-button_en_US.properties | 2 + .../filter-static-combo-box.properties | 2 + .../filter-static-combo-box_en_US.properties | 2 + .../filters/filter-text-area.properties | 2 + .../filters/filter-text-area_en_US.properties | 2 + .../filters/filter-text-field.properties | 2 + .../filter-text-field_en_US.properties | 2 + .../localization/fields/link-field.properties | 2 + .../fields/link-field_en_US.properties | 2 + .../fields/many-to-many-field.properties | 2 + .../many-to-many-field_en_US.properties | 2 + .../fields/many-to-many.properties | 2 + .../fields/many-to-many_en_US.properties | 2 + .../fields/money-field.properties | 2 + .../fields/money-field_en_US.properties | 2 + .../fields/multi-value-field.properties | 2 + .../fields/multi-value-field_en_US.properties | 2 + .../fields/number-field.properties | 2 + .../fields/number-field_en_US.properties | 2 + .../fields/one-to-many.properties | 2 + .../fields/one-to-many_en_US.properties | 2 + .../fields/radio-button.properties | 2 + .../fields/radio-button_en_US.properties | 2 + .../fields/sign-verification.properties | 4 + .../fields/sign-verification_en_US.properties | 4 + .../fields/static-combo-box.properties | 2 + .../fields/static-combo-box_en_US.properties | 2 + .../fields/static-radio-button.properties | 2 + .../static-radio-button_en_US.properties | 2 + .../localization/fields/text-area.properties | 2 + .../fields/text-area_en_US.properties | 2 + .../localization/fields/text-field.properties | 2 + .../fields/text-field_en_US.properties | 2 + .../localization/fields/text.properties | 2 + .../localization/fields/text_en_US.properties | 2 + .../fields/time-picker.properties | 2 + .../fields/time-picker_en_US.properties | 2 + .../localization/fields/tree-field.properties | 2 + .../fields/tree-field_en_US.properties | 2 + .../fields/tree-multi-field.properties | 2 + .../fields/tree-multi-field_en_US.properties | 2 + .../localization/grids/grid.properties | 8 + .../localization/grids/grid_en_US.properties | 9 + .../localization/grids/paging-grid.properties | 2 + .../grids/paging-grid_en_US.properties | 2 + .../localization/grids/tree-grid.properties | 2 + .../grids/tree-grid_en_US.properties | 2 + .../action-controller.properties | 2 + .../action-controller_en_US.properties | 2 + .../uncategorized/chart.properties | 2 + .../uncategorized/chart_en_US.properties | 2 + .../uncategorized/event-calendar.properties | 2 + .../event-calendar_en_US.properties | 2 + .../uncategorized/gantt-chart.properties | 2 + .../gantt-chart_en_US.properties | 2 + .../uncategorized/hyper-link.properties | 2 + .../uncategorized/hyper-link_en_US.properties | 2 + .../uncategorized/i-frame.properties | 2 + .../uncategorized/i-frame_en_US.properties | 2 + .../uncategorized/inner-html.properties | 2 + .../uncategorized/inner-html_en_US.properties | 2 + .../uncategorized/menu-group.properties | 2 + .../uncategorized/menu-group_en_US.properties | 2 + .../uncategorized/menu-item.properties | 2 + .../uncategorized/menu-item_en_US.properties | 2 + .../validation-controller.properties | 2 + .../validation-controller_en_US.properties | 2 + .../META-INF/package-descriptor.xml | 20 + .../component/buttons/Button.component | 55 + .../component/buttons/CancelButton.component | 57 + .../buttons/ClearFilterButton.component | 62 + .../component/buttons/DeleteButton.component | 92 + .../buttons/DownloadButton.component | 94 + .../component/buttons/ErrorButton.component | 56 + .../buttons/ExecProcessButton.component | 61 + .../buttons/ExecuteSqlButton.component | 84 + .../component/buttons/FilterButton.component | 48 + .../buttons/NavigationButton.component | 58 + .../component/buttons/SaveButton.component | 55 + .../component/buttons/SelectButton.component | 86 + .../component/buttons/SignButton.component | 341 + .../component/buttons/SignButtonV2.component | 340 + .../buttons/StartProcessButton.component | 56 + .../EntityGraphReportingButton.component | 74 + .../reporting/FormReportingButton.component | 82 + .../containers/CollapsiblePanel.component | 97 + .../component/containers/Dialog.component | 97 + .../component/containers/DropDown.component | 49 + .../component/containers/FieldSet.component | 90 + .../containers/FilterGroup.component | 128 + .../component/containers/Form.component | 182 + .../component/containers/HBox.component | 90 + .../containers/TabContainer.component | 90 + .../component/containers/TabItem.component | 90 + .../component/containers/VBox.component | 90 + .../component/containers/Window.component | 338 + .../editable-grids/EditableGrid.component | 185 + .../columns/AutocompleteGridColumn.component | 147 + .../columns/CheckBoxGridColumn.component | 87 + .../columns/ComboBoxGridColumn.component | 130 + .../DateTimePickerGridColumn.component | 95 + .../columns/MoneyFieldGridColumn.component | 99 + .../columns/NumberFieldGridColumn.component | 81 + .../columns/OneToManyGridColumn.component | 546 ++ .../columns/OneToManyGridColumnV2.component | 770 +++ .../ReadonlyClientGridColumn.component | 54 + .../ReadonlyServerGridColumn.component | 53 + .../StaticComboBoxGridColumn.component | 94 + .../columns/TextAreaGridColumn.component | 87 + .../columns/TextFieldGridColumn.component | 87 + .../columns/TimePickerGridColumn.component | 81 + .../component/fields/Address.component | 181 + .../component/fields/Autocomplete.component | 176 + .../component/fields/CheckBox.component | 111 + .../component/fields/ComboBox.component | 148 + .../component/fields/DateTimePicker.component | 111 + .../fields/EditableOneToMany.component | 518 ++ .../component/fields/FilePreview.component | 87 + .../component/fields/FileUpload.component | 137 + .../component/fields/ManyToMany.component | 700 ++ .../fields/ManyToManyField.component | 1011 +++ .../component/fields/MoneyField.component | 96 + .../component/fields/NumberField.component | 135 + .../component/fields/OneToMany.component | 638 ++ .../component/fields/OneToManyV2.component | 775 +++ .../component/fields/RadioButton.component | 144 + .../fields/SignVerification.component | 168 + .../component/fields/StaticComboBox.component | 98 + .../fields/StaticRadioButton.component | 113 + .../component/fields/Text.component | 91 + .../component/fields/TextArea.component | 104 + .../component/fields/TextField.component | 166 + .../component/fields/TimePicker.component | 98 + .../component/fields/TreeField.component | 608 ++ .../editableonetomany/EditableGrid.component | 159 + .../fields/editableonetomany/Form.component | 94 + .../fileupload/FileUploadField.component | 39 + .../fields/filters/FilterAddress.component | 73 + .../filters/FilterAutocomplete.component | 143 + .../fields/filters/FilterBoolean.component | 121 + .../fields/filters/FilterCheckBox.component | 74 + .../fields/filters/FilterComboBox.component | 136 + .../filters/FilterDateTimePicker.component | 67 + .../filters/FilterNumberField.component | 67 + .../filters/FilterRadioButton.component | 70 + .../filters/FilterStaticComboBox.component | 67 + .../fields/filters/FilterTextArea.component | 67 + .../fields/filters/FilterTextField.component | 67 + .../fields/treefield/LinkField.component | 186 + .../treefield/MultiValueField.component | 115 + .../component/grids/Grid.component | 170 + .../component/grids/GridV2.component | 179 + .../component/grids/GridV2Column.component | 53 + .../component/grids/GridV2Group.component | 33 + .../component/grids/PagingGrid.component | 194 + .../component/grids/TreeGrid.component | 126 + .../uncategorized/ActionController.component | 52 + .../uncategorized/Calendar.component | 95 + .../component/uncategorized/Chart.component | 116 + .../component/uncategorized/ChartV2.component | 91 + .../uncategorized/EventCalendar.component | 84 + .../uncategorized/GanttChart.component | 75 + .../uncategorized/HyperLink.component | 54 + .../component/uncategorized/IFrame.component | 48 + .../uncategorized/InnerHtml.component | 48 + .../uncategorized/MenuGroup.component | 86 + .../uncategorized/MenuItem.component | 72 + .../ValidationController.component | 42 + .../converters/converters.jar | Bin 0 -> 97826 bytes .../metadata/java.metadata | Bin 0 -> 1110017 bytes .../metadata/typescript.metadata.json | 1 + .../ProcessInstance.component | 879 +++ .../ProcessInstanceDiagram.component | 50 + .../ProcessInstanceList.component | 1074 +++ .../user-management/Groups.component | 1774 +++++ .../user-management/GroupsCreate.component | 1463 +++++ .../user-management/GroupsEdit.component | 1474 +++++ .../OrganizationEdit.component | 533 ++ .../user-management/Organizations.component | 1593 +++++ .../user-management/Roles.component | 1779 +++++ .../user-management/RolesEdit.component | 540 ++ .../SecurityFeatures.component | 1663 +++++ .../StaticRouteNavigationButton.component | 42 + .../StaticRouteSelectButton.component | 62 + .../user-management/UserForm.component | 1649 +++++ .../user-management/Users.component | 5544 ++++++++++++++++ .../user-management/UsersCreate.component | 1545 +++++ .../user-management/UsersEdit.component | 2220 +++++++ pom.xml | 689 ++ project.md | 3 + resources/pom.xml | 101 + .../resources/META-INF/components-package.xml | 34 + .../META-INF/filtered/resources.properties | 7 + .../main/resources/business-model/.gitkeep | 0 .../ConfigExecuteButton.component | 50 + .../business-model/ExportDataButton.component | 50 + .../main/resources/business-model/main.page | 2811 ++++++++ .../ミ酉ムσソミソム ムミオミエミーミコムひクムミセミイミーミスミクミオ.page | 282 + .../ミ酉ムσソミソム ムミセミキミエミーミスミクミオ.page | 282 + .../ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ酉ムσソミソム.page | 197 + .../ミ樮ミウミーミスミクミキミームミクミク.page | 168 + .../ミ樮ミウミーミスミクミキミームミクム ムミオミエミーミコムひクムミセミイミーミスミクミオ(ムミセミキミエミーミスミクミオ).page | 225 + .../ミ渙セミサム糊キミセミイミームひオミサミク ムミオミエミーミコムひクムミセミイミーミスミクミオ.page | 526 ++ .../ミ渙セミサム糊キミセミイミームひオミサミク ムミセミキミエミーミスミクミオ.page | 432 ++ .../ミ渙セミサム糊キミセミイミームひオミサミク.page | 563 ++ .../ミミセミサミク ムミオミエミーミコムひクムミセミイミーミスミクミオ (ムミセミキミエミーミスミクミオ).page | 227 + .../ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミミセミサミク.page | 196 + .../ミ、ムσスミコムミクミク ミアミオミキミセミソミームミスミセムムひク.page | 276 + .../main/resources/config/jndi-resources.xml | 4 + resources/src/main/resources/config/roles.xml | 6 + .../_8b788e75-0f84-4511-8517-d9f24e29556d.svg | 183 + .../main/resources/database/datasource.xml | 16 + .../src/main/resources/mail/confirmation.html | 36 + .../main/resources/mail/reset_password.html | 36 + ...-4f10-b748-c9a7f33d31d9.component.override | 5666 ++++++++++++++++ ...-4367-8ff3-7f049c284978.component.override | 1778 +++++ ...-4c33-b29b-886876016415.component.override | 182 + ...-413e-babf-ce54cb4e5279.component.override | 1763 +++++ ...-4b0e-b7a7-15a36bdeb682.component.override | 1062 +++ ...-4c2d-99df-924b5ba018d6.component.override | 140 + ...-47a8-a9dc-3170f1a99721.component.override | 1553 +++++ ...-4df3-b93c-e48534e798db.component.override | 1641 +++++ ...-423b-b6b5-727ecfce2ca1.component.override | 737 +++ ...-4662-96ad-84c0dae0ecff.component.override | 196 + ...-4453-a2df-d5ffafa2c019.component.override | 175 + ...-4960-9c59-02f4f0c2e4dd.component.override | 541 ++ ...-431e-815a-490959083787.component.override | 1765 +++++ ...-48fe-9ae0-dec9b6f4c53c.component.override | 2367 +++++++ ...-4161-b8ae-ef66de5776b7.component.override | 1543 +++++ ...-4360-8f61-1087179ad78b.component.override | 1564 +++++ ...-485e-a069-18b92ab4f7f7.component.override | 900 +++ system-requirements.md | 117 + 901 files changed, 131887 insertions(+) create mode 100644 .gitignore create mode 100644 .studioignore create mode 100644 README.md create mode 100644 backend/pom.xml create mode 100644 backend/src/main/java/AppConfig.java create mode 100644 backend/src/main/java/WebAppInitializer.java create mode 100644 backend/src/main/java/dto/ExportDataRequest.java create mode 100644 backend/src/main/java/rpc/ConfigExecutorRpcService.java create mode 100644 backend/src/main/java/rpc/ExportDataRpcService.java create mode 100644 backend/src/main/java/ru/micord/ervu_eks/component/service/ReadOnlySqlButtonServiceImpl.java create mode 100644 backend/src/main/java/service/ConfigExecutorService.java create mode 100644 backend/src/main/java/service/DataTypeComboBoxService.java create mode 100644 backend/src/main/resources/.gitkeep create mode 100644 config-data-executor/.gitignore create mode 100644 config-data-executor/Dockerfile create mode 100644 config-data-executor/pom.xml create mode 100644 config-data-executor/src/main/java/org/micord/Main.java create mode 100644 config-data-executor/src/main/java/org/micord/SpringBootTomcatApplication.java create mode 100644 config-data-executor/src/main/java/org/micord/config/ArangoDBConnection.java create mode 100644 config-data-executor/src/main/java/org/micord/config/AtomikosConfig.java create mode 100644 config-data-executor/src/main/java/org/micord/config/DatabaseConnection.java create mode 100644 config-data-executor/src/main/java/org/micord/config/HttpClientConfig.java create mode 100644 config-data-executor/src/main/java/org/micord/config/S3HttpConnection.java create mode 100644 config-data-executor/src/main/java/org/micord/controller/ApiController.java create mode 100644 config-data-executor/src/main/java/org/micord/enums/RequestArgumentType.java create mode 100644 config-data-executor/src/main/java/org/micord/models/AqlConnectionParams.java create mode 100644 config-data-executor/src/main/java/org/micord/models/AqlRequest.java create mode 100644 config-data-executor/src/main/java/org/micord/models/AqlRequestCollection.java create mode 100644 config-data-executor/src/main/java/org/micord/models/BaseRequest.java create mode 100644 config-data-executor/src/main/java/org/micord/models/CachedConfig.java create mode 100644 config-data-executor/src/main/java/org/micord/models/DownloadCSVRequest.java create mode 100644 config-data-executor/src/main/java/org/micord/models/DownloadRequest.java create mode 100644 config-data-executor/src/main/java/org/micord/models/Request.java create mode 100644 config-data-executor/src/main/java/org/micord/models/RequestArgument.java create mode 100644 config-data-executor/src/main/java/org/micord/models/Requests.java create mode 100644 config-data-executor/src/main/java/org/micord/models/S3ConnectionParams.java create mode 100644 config-data-executor/src/main/java/org/micord/models/S3Request.java create mode 100644 config-data-executor/src/main/java/org/micord/models/SqlConnectionParams.java create mode 100644 config-data-executor/src/main/java/org/micord/models/SqlRequest.java create mode 100644 config-data-executor/src/main/java/org/micord/service/ApiService.java create mode 100644 config-data-executor/src/main/java/org/micord/service/DownloadService.java create mode 100644 config-data-executor/src/main/java/org/micord/service/RequestService.java create mode 100644 config-data-executor/src/main/java/org/micord/utils/ConfigLoader.java create mode 100644 config-data-executor/src/main/resources/application.yml create mode 100644 config.md create mode 100644 config/.gitignore create mode 100644 config/Dockerfile create mode 100644 config/Dockerfile.build create mode 100644 config/JDK_version create mode 100644 config/cde-xml/arangorequest.xml create mode 100644 config/cde-xml/block.xml create mode 100644 config/cde-xml/downloadCSV.xml create mode 100644 config/cde-xml/removeFromCallList.xml create mode 100644 config/cde-xml/removeFromSystem.xml create mode 100644 config/cde-xml/s3request.xml create mode 100644 config/cde-xml/unblock.xml create mode 100644 config/db.env create mode 100644 config/docker-compose.db.yaml create mode 100644 config/docker-compose.yaml create mode 100644 config/entrypoint.sh create mode 100644 config/initdb.d/createdb.sql create mode 100644 config/micord.env create mode 100644 config/patches/add-logger-database.cli create mode 100644 config/patches/default.cli create mode 100644 config/patches/system/add-demo-user.sh create mode 100644 config/patches/system/add-postgresql-driver.cli create mode 100644 config/patches/system/init.cli create mode 100644 config/standalone.xml create mode 100644 distribution/pom.xml create mode 100644 frontend/.npmrc create mode 100644 frontend/angular.json create mode 100644 frontend/index.html create mode 100644 frontend/index.webpack.html create mode 100644 frontend/package.json create mode 100644 frontend/pom.xml create mode 100644 frontend/preview.html create mode 100644 frontend/save.ts.metadata.js create mode 100644 frontend/src/resources/app-config.json create mode 100644 frontend/src/resources/app.version create mode 100644 frontend/src/resources/css/components-app.css create mode 100644 frontend/src/resources/css/inbox-app.css create mode 100644 frontend/src/resources/css/structure.css create mode 100644 frontend/src/resources/css/style.css create mode 100644 frontend/src/resources/fonts/Segoe.ttf create mode 100644 frontend/src/resources/fonts/SegoeB.ttf create mode 100644 frontend/src/resources/fonts/SegoeBL.ttf create mode 100644 frontend/src/resources/fonts/SegoeSB.ttf create mode 100644 frontend/src/resources/fonts/SegoeSL.ttf create mode 100644 frontend/src/resources/img/access_denied.png create mode 100644 frontend/src/resources/img/admin.png create mode 100644 frontend/src/resources/img/country-flags.jpg create mode 100644 frontend/src/resources/img/create.png create mode 100644 frontend/src/resources/img/icons/dots-six-vertical.svg create mode 100644 frontend/src/resources/img/icons/settings-sm.svg create mode 100644 frontend/src/resources/img/logo-full.png create mode 100644 frontend/src/resources/img/logo.png create mode 100644 frontend/src/resources/img/progress.gif create mode 100644 frontend/src/resources/img/project.png create mode 100644 frontend/src/resources/img/tasks.png create mode 100644 frontend/src/resources/template/app/component/ConfigExecuteBtn.html create mode 100644 frontend/src/resources/template/app/component/access_denied.html create mode 100644 frontend/src/resources/template/app/component/admin_menu.html create mode 100644 frontend/src/resources/template/app/component/app_footer.html create mode 100644 frontend/src/resources/template/app/component/app_header.html create mode 100644 frontend/src/resources/template/app/component/application_version.html create mode 100644 frontend/src/resources/template/app/component/confirm-user-email.html create mode 100644 frontend/src/resources/template/app/component/log_out.html create mode 100644 frontend/src/resources/template/app/component/login.html create mode 100644 frontend/src/resources/template/app/component/new_password.html create mode 100644 frontend/src/resources/template/app/component/progress-indication.html create mode 100644 frontend/src/resources/template/app/component/register.html create mode 100644 frontend/src/resources/template/app/component/reset_password.html create mode 100644 frontend/src/resources/template/preview/preview.html create mode 100644 frontend/src/resources/template/preview/preview_container.html create mode 100644 frontend/src/resources/template/webbpm/home.html create mode 100644 frontend/src/resources/template/webbpm/page.html create mode 100644 frontend/src/resources/template/webbpm/webbpm.html create mode 100644 frontend/src/ts/ervu/ConfigExecuteBtn.ts create mode 100644 frontend/src/ts/ervu/ExportDataBtn.ts create mode 100644 frontend/src/ts/main.aot.ts create mode 100644 frontend/src/ts/main.ts create mode 100644 frontend/src/ts/modules/app/app-routing.module.ts create mode 100644 frontend/src/ts/modules/app/app.module.ts create mode 100644 frontend/src/ts/modules/app/component/access-denied.component.ts create mode 100644 frontend/src/ts/modules/app/component/admin-menu.component.ts create mode 100644 frontend/src/ts/modules/app/component/app-footer.component.ts create mode 100644 frontend/src/ts/modules/app/component/app-header.component.ts create mode 100644 frontend/src/ts/modules/app/component/app-progress-indication.component.ts create mode 100644 frontend/src/ts/modules/app/component/application-version.component.ts create mode 100644 frontend/src/ts/modules/app/component/confirm-user-email.component.ts create mode 100644 frontend/src/ts/modules/app/component/login.component.ts create mode 100644 frontend/src/ts/modules/app/component/logout.component.ts create mode 100644 frontend/src/ts/modules/app/component/new-password.component.ts create mode 100644 frontend/src/ts/modules/app/component/register.component.ts create mode 100644 frontend/src/ts/modules/app/component/reset-password.component.ts create mode 100644 frontend/src/ts/modules/app/service/app-progress-indication.service.ts create mode 100644 frontend/src/ts/modules/preview/component/preview-container.component.ts create mode 100644 frontend/src/ts/modules/preview/component/preview.component.ts create mode 100644 frontend/src/ts/modules/preview/preview-routing.module.ts create mode 100644 frontend/src/ts/modules/preview/preview.main.ts create mode 100644 frontend/src/ts/modules/preview/preview.module.ts create mode 100644 frontend/src/ts/modules/preview/service/http-preview-interceptor.service.ts create mode 100644 frontend/src/ts/modules/webbpm/component/home.component.ts create mode 100644 frontend/src/ts/modules/webbpm/component/webbpm.component.ts create mode 100644 frontend/src/ts/modules/webbpm/handler/global-error.handler.prod.ts create mode 100644 frontend/src/ts/modules/webbpm/handler/global-error.handler.ts create mode 100644 frontend/src/ts/modules/webbpm/interceptor/default-interceptors.prod.ts create mode 100644 frontend/src/ts/modules/webbpm/interceptor/default-interceptors.ts create mode 100644 frontend/src/ts/modules/webbpm/interceptor/http-security-error-interceptor.dev.ts create mode 100644 frontend/src/ts/modules/webbpm/user-management-routing.module.ts create mode 100644 frontend/src/ts/modules/webbpm/webbpm-routing.module.ts create mode 100644 frontend/src/ts/modules/webbpm/webbpm.module.ts create mode 100644 frontend/src/ts/page.routing.d.ts create mode 100644 frontend/src/ts/polyfills.ts create mode 100644 frontend/src/ts/vendor.ts create mode 100644 frontend/systemjs.config.js create mode 100644 frontend/systemjs.preview.config.js create mode 100644 frontend/tsconfig.aot.json create mode 100644 frontend/tsconfig.json create mode 100644 frontend/webpack.aot.config.js create mode 100644 packages/.gitkeep create mode 100644 packages/ru.cg.webbpm.packages.base.resources/.flattened-pom.xml create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/MANIFEST.MF create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components-package.xml create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/BpmnStartProcessVariable.ts.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム祇ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟スミセミソミコミー_ミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟スミセミソミコミー_ミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾アミセムミー_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾キミセミイミー_ミセム威クミアミコミク_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾ソミセミサミスミオミスミクム柔SQL_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミエミサム柔ムミクミサム袴びミームミクミク_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミキミーミウムムσキミコミク_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミーミイミクミウミームミクミク_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミセムひシミオミスム祇ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミセムミクムムひコミク_ムミクミサム袴びミー_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムミセムムミーミスミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムσエミーミサミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾アミセムミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾キミセミイミー_ミセム威クミアミコミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔SQL.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔ミアミクミキミスミオム-ミソムミセムミオムムミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミエミサム柔ムミクミサム袴びミームミクミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミキミーミウムムσキミコミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミキミーミソムτミコミー_ミアミクミキミスミオム-ミソムミセムミオムムミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミスミーミイミクミウミームミクミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミセムひシミオミスム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミセムミクムムひコミク_ムミクミサム袴びミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミソミセミエミソミクムミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミソムミセミイミオムミコミク_ミソミセミエミソミクムミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ムミセムムミーミスミオミスミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ムσエミーミサミオミスミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ContainerValueByEventLoader_ミク_ContainerValueByEventLoaderRpcService.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソミセムミサミオミエムτ紗禾τ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソムミオミエム巾エムτ禾τ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミスミー_ミイミコミサミーミエミコムダミソミセ_ミスミセミシミオムム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ酉ムσソミソミー_ミソミセミサミオミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ_ミ柘巾キミイミームび.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ_ミ。ミコムム錦び.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ漬コミサミーミエミコミー_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ酉ムσソミソミー_ミソミセミサミオミケ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミコミスミセミソミセミコ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ斷ーミアミセム_ムミクミサム袴びミセミイ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム契ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ、ミセムミシミー_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧コミスミセ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ミ頒クミーミサミセミウ_ミエミサム柔ミイム巾イミセミエミー_ミソムミオミエムσソムミオミカミエミオミスミクム柔ミソミセミサム糊キミセミイミームひオミサム酸ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオム_ム\ミコミスミセミソミコミーミシミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオムム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ斷ーミアミセム_ムミクミサム袴びミセミイ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ榧コミスミセ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ。ムひクミサミク-ミコミセミスムひオミケミスミオムミセミイ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー_ミアミオミキ_ミソミオムミオムミセミエミー_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー_ム\ミソミオムミオムミセミエミセミシ_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/control-properties.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/editable-grids/EditableGrid.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/EditableOneToMany.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ManyToMany.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ManyToManyField.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/OneToMany.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/TreeField.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミエミームひオ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミ、ミサミーミウムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。_ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミエミームひオ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミコミセミシミソミセミスミオミスムひオ_ミ、ミサミーミウ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴びム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ籍エムミオム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ柘ミオミシム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ頒ームひー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ頒オミスミオミカミスミセミオ_ミソミセミサミオ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ渙オムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミエミオミスミオミカミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ「ミオミコムム_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミスミオムミコミセミサム糊コミセ_ミソミセミサミオミケ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダム\ミーミイムひセミシミームひクムミオムミコミクミシ_ミキミーミソミセミサミスミオミスミクミオミシ_ミソミセムミサミオミエミスミオミウミセ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ柘ミオミシム柔ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミソミクムミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミクムミサミセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ厘ーミウムムσキミコミー_ムミーミケミサミー_ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミサミーミウ_ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ「ミオミコムム_ミエミサム柔ミセムひセミアムミーミカミオミスミクム柔ミスミーミキミイミーミスミクム柔ミセムミウミーミスミクミキミームミクミク_ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ムひオミコムムひセミイミセミオ_ミソミセミサミオ_ミイ_ミコミームミオムムひイミオ_ミソミームミーミシミオムびミー_ミエミサム柔ミソミオムミームひスミセミケ_ムミセムミシム祇.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ムひオミコムムひセミイミセミオ_ミソミセミサミオ_ミエミサム柔ミスミームムびミセミケミコミク_ミイミクミエミクミシミセムムひク_ミエムムσウミクム_ム災サミオミシミオミスムひセミイ_ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミセムひセミアムミーミキミクムび契ミスミーミキミイミーミスミクミオ_ミセムミウミーミスミクミキミームミクミク_ムひオミコムムひセミシ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ斷ームムびミセミケミコミー_ミイミキミーミクミシミセミキミーミイミクムミクミシム錦_ミソミセミサミオミケ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙オムミオミコミサム紗ミームひオミサム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひクミサミク-ミソミセミサミオミケ-ミイミイミセミエミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ「ミオミコムム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミーミケミサ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミクミサム袴びミームミクム柔ミクムムひセムミスミクミコミー_ミエミーミスミスム錦.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミクミサム袴びミームミクム柔ミクムムひセムミスミクミコミー_ミエミーミスミスム錦_ミセミエミスミセミウミセ_ミクミキ_ミソミセミサミオミケ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミイ_ミキミーミイミクムミクミシミセムムひク_ミセム_ミイム巾アムミーミスミスミセミウミセ_ミキミスミームミオミスミクム柔ミイ_ミエムムσウミセミシ_ミソミセミサミオ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミサミーミウ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミァミクムミサミセミイミセミオ_ミソミセミサミオ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ColumnNavigationRenderer.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/CustomSqlLoadDao-ミク-CustomSqlFormDao.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/GridServiceWithAggregationColumnsImpl-ミーミウムミオミウミームミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/GridV2.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/MaskCellValueFormatter.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/NavigateOnGridCellOrRow.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/RowNavigationHandler.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/SelectAndNavigateCellGridConfigurator.ts-(ミ墟セミサミセミスミコミク-ム-ミスミーミイミクミウミームミクミオミケ).html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ「ミーミアミサミクムムダミスミー_ムムびミーミスミクムムダム\ムミクミサム袴びミームミクミオミケ_ミキミーミソミクムミオミケ_ミソミセ_ムτミサミセミイミクム酸.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミスミー_ムムびミーミスミクムムダミ「ミーミアミサミクムムダム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミイム紹キミーミスミスム巾オ_ミ「ミーミアミサミクムム祇ミスミー_ムムびミーミスミクムムダ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー_ミスミー_ミソミセミサム糊キミセミイミームひオミサム袴ミコミセミケ_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ムミセムムミーミスミクムび契ミクミエミオミスムひクムミクミコミームひセム_ムミイム紹キミーミスミスミセミケ_ムひーミアミサミクムム祇ミクムミソミセミサム糊キムτ柔ムミコムム錦ひセミオ_ムミクムミサミセミイミセミオ_ミソミセミサミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ斷ームムびミセミケミコミー_ミコミセミサミセミスミセミコ_ミ「ミーミアミサミクムム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ樮ミクムムひクムび契ムミセムミシミームひクムミセミイミーミスミクミオ_ミコミセミサミセミスミセミコ_ムひーミアミサミクムム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムミー_ム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/AC._ミ慴オムひセミエム-ミセミアム諌オミコムひセミイ-ムムびミーミスミクムム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ConditionOperation.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/EventCalendar.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/HyperLink.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/IFrame.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/InnerHtml.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/Menu.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/MenuGroup.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/MenuItem.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ValidationController.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー_chart-v2.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ_ミスミー_ムムびミーミスミクムミオ_.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ斷ームムびミセミケミコミー_ムミクミサム袴びミームミクミク_ミイ_ムひーミアミサミクムミオ_ミク_ミウムミームミクミコミオ_ミエミサム柔ミコミセミシミソミセミスミオミスムび祇ミ頒クミーミウムミーミシミシミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミミーミキミスム巾オ_ミコミセミシミソミセミスミオミスムび.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ漬コミサム紗ミクムび契ミイム錦ミクムミサミオミスミクミオ_ミシミームひオミシミームひクムミオムミコミクム_ミセミソミオムミームミクミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ頒セミアミーミイミクムび契ムムびミセミコムダミコ_ミキミスミームミオミスミクム酸ミイ_ムひオミコムτ禍オミシ_ミソミセミサミオ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミクミキ_ミソミオムミオミシミオミスミスミセミケ_ミソムミセムミオムムミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘スミームミオミスミクミオ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ墟ーミコ-ミエミセミアミーミイミクムび-ム尉ミクムムび-ミイ-ミシミセミエムσサム-ミソミオムミームひク-JasperReports.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ斷ームムびミセミケミコミー_ミ酉ミームミー_ムムτ禍スミセムムひオミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧アム禍クミオ-ムムひクミサミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧アム禍クミオ_ムミイミセミケムムひイミー_ミコミセミシミソミセミスミオミスム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ミソムミーミイミー_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ムミセミサミク_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ムひオミコムτ禾τ酸ミエミームびダミク_ムミシミオムムひクムび契ミオム狙ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ_ミスミー_ミキミーミエミーミスミスム巾ケ_ミソミオムミクミセミエ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦_ミソミセ_ムσシミセミサムミーミスミクム.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ湲ミオミセミアムミーミキミセミイミーミスミクミオ_ムひオミコムτ禍オミケ_ミエミームび.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ湲ミオミセミアムミーミキミセミイミームび契ミイ_ミコミセミサミセミスミコミク_ムミセ_ミキミスミームミオミスミクム紹シミク-ミソミオムミオムミセミエミーミシミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミコミサミオミクムび契ミスミオムミコミセミサム糊コミセ_ミキミスミームミオミスミクミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミコミセミスミイミオムムひクムミセミイミームび契ミキミスミームミオミスミクミオ_ミイ_ムミオミサミセムミクムミサミオミスミスム巾ケ_ムひクミソ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミシミオムムひクムび契ミエミームびダミクミキ_ミソミセミサム柔ミスミー_ミソミオムミクミセミエ_ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミセムムミーミスミオミスミクミオ_ミキミーミウミセミサミセミイミコミー_ミイム巾アムミーミスミスミセミケ_ミイミコミサミーミエミコミク_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミセムムミーミスミクムび契ミキミスミームミオミスミクミオ_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ」ミソムミーミイミサミオミスミクミオ_ミスミーミイミクミウミームミクミオミケ.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ、ムσスミコムミクミク.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/apache-maven-fluido-1.9.min.css create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/print.css create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/site.css create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependencies.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependency-info.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependency-management.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/distribution-management.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.eot create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.svg create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.ttf create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.woff create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/EmailHandler.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/JiraCreateIssueHandler.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/RESTHandler.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/SetVariableHandler.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/SqlAttachmentsEmailHandler.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/Telegram.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/UserAuthorityHandler.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/accessories-text-editor.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/add.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/apache-maven-project-2.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/application-certificate.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/close.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/contact-new.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/document-properties.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/drive-harddisk.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/fix.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_error_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_help_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_info_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_success_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_warning_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/image-x-generic.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/internet-web-browser.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/logos/build-by-maven-black.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/logos/build-by-maven-white.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/logos/maven-feather.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/network-server.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/package-x-generic.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/profiles/pre-release.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/profiles/retired.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/profiles/sandbox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/remove.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/rss.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/update.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/window-new.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/img/glyphicons-halflings-white.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/img/glyphicons-halflings.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/js/apache-maven-fluido-1.9.min.js create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/plugin-management.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/plugins.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/project-info.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/css/apache-maven-fluido-1.9.min.css create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/css/print.css create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/css/site.css create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/dependencies.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/dependency-info.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/dependency-management.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/distribution-management.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/fonts/glyphicons-halflings-regular.eot create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/fonts/glyphicons-halflings-regular.svg create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/fonts/glyphicons-halflings-regular.ttf create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/fonts/glyphicons-halflings-regular.woff create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/accessories-text-editor.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/add.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/apache-maven-project-2.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/application-certificate.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/close.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/contact-new.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/document-properties.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/drive-harddisk.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/fix.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/icon_error_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/icon_help_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/icon_info_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/icon_success_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/icon_warning_sml.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/image-x-generic.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/internet-web-browser.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/logos/build-by-maven-black.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/logos/build-by-maven-white.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/logos/maven-feather.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/network-server.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/package-x-generic.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/profiles/pre-release.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/profiles/retired.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/profiles/sandbox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/remove.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/rss.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/update.gif create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/images/window-new.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/img/glyphicons-halflings-white.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/img/glyphicons-halflings.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/index.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/js/apache-maven-fluido-1.9.min.js create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/plugin-management.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/plugins.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/project-info.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/scm.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/ru/summary.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/scm.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/summary.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/user-management/CheckUserAuthority.ts.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/user-management/CheckUserRole.ts.html create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/Button.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/Cancel.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/ClearFilter.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/Delete.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/Download.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/EntityGraphReporting.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/Error.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/ExecProcessButton.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/ExecuteSQLButton.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/Filter.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/FormReporting.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/Navigation.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/Save.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/Select.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/SignButton.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/buttons/StartProcessButton.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/CollapsiblePanel.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/Dialog.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/DropDown.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/FieldSet.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/FilterGroup.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/Form.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/HBox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/TabContainer.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/TabItem.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/VBox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/containers/Window.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/editable-grids/EditableGrid.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/Address.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/Autocomplete.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/Checkbox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/Combobox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/DateTimePicker.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/EditableLinks.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/EditableOnetoMany.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/FilePreview.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/FileUpload.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/ManytoMany.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/ManytoManyField.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/MoneyField.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/NumberField.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/OnetoMany.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/Radiobutton.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/SignVerification.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/StaticCombobox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/StaticRadiobutton.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/Text.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/TextArea.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/TextField.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/TimePicker.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/TreeField.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/TreeMultiField.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/Address.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/Autocomplete.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/Boolean.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/Checkbox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/Combobox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/DateTimePicker.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/FileUpload.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/MoneyField.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/NumberField.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/Radiobutton.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/StaticCombobox.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/StaticRadiobutton.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/Text.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/TextArea.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/TextField.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/fields/filters/TimePicker.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/grids/Grid.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/grids/PagingGrid.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/grids/TreeGrid.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/uncategorized/ActionController.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/uncategorized/Calendar.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/uncategorized/Chart.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/uncategorized/GanttChart.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/uncategorized/Menu.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/uncategorized/ValidationController.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/icons/uncategorized/iframe.png create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/cancel-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/cancel-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/clear-filter-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/clear-filter-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/delete-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/delete-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/download-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/download-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/entity-graph-reporting-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/entity-graph-reporting-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/error-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/error-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/execute-sql-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/execute-sql-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/filter-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/filter-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/form-reporting-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/form-reporting-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/navigation-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/navigation-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/save-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/save-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/select-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/select-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/sign-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/sign-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/start-process-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/buttons/start-process-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/common/project-scripts-localization.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/common/project-scripts-localization_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/common/webbpm-scripts-localization.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/common/webbpm-scripts-localization_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/collapsible-panel.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/collapsible-panel_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/dialog.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/dialog_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/drop-down.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/drop-down_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/field-set.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/field-set_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/filter-group.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/filter-group_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/form.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/form_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/h-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/h-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/i-frame.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/i-frame_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/tab-container.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/tab-container_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/tab-item.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/tab-item_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/v-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/v-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/window.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/containers/window_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/default-components.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/default-components_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/autocomplete.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/autocomplete_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/check-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/check-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/combo-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/combo-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/date-time-picker.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/date-time-picker_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/editable-grid.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/editable-grid_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/number-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/number-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/one-to-many.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/one-to-many_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/read-only.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/read-only_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/text-area.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/text-area_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/text-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/text-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/time-picker.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/editable-grids/time-picker_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/address.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/address_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/autocomplete.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/autocomplete_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/check-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/check-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/combo-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/combo-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/date-time-picker.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/date-time-picker_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/editable-one-to-many.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/editable-one-to-many_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/file-preview.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/file-preview_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/file-upload-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/file-upload-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/file-upload.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/file-upload_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-autocomplete.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-autocomplete_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-boolean.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-boolean_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-check-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-check-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-combo-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-combo-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-date-time-picker.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-date-time-picker_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-fias-address.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-fias-address_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-number-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-number-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-radio-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-radio-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-static-combo-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-static-combo-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-text-area.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-text-area_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-text-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/filters/filter-text-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/link-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/link-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/many-to-many-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/many-to-many-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/many-to-many.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/many-to-many_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/money-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/money-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/multi-value-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/multi-value-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/number-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/number-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/one-to-many.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/one-to-many_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/radio-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/radio-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/sign-verification.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/sign-verification_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/static-combo-box.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/static-combo-box_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/static-radio-button.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/static-radio-button_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/text-area.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/text-area_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/text-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/text-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/text.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/text_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/time-picker.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/time-picker_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/tree-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/tree-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/tree-multi-field.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/fields/tree-multi-field_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/grids/grid.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/grids/grid_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/grids/paging-grid.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/grids/paging-grid_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/grids/tree-grid.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/grids/tree-grid_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/action-controller.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/action-controller_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/chart.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/chart_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/event-calendar.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/event-calendar_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/gantt-chart.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/gantt-chart_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/hyper-link.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/hyper-link_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/i-frame.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/i-frame_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/inner-html.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/inner-html_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/menu-group.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/menu-group_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/menu-item.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/menu-item_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/validation-controller.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/components/localization/uncategorized/validation-controller_en_US.properties create mode 100644 packages/ru.cg.webbpm.packages.base.resources/META-INF/package-descriptor.xml create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/Button.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/CancelButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/ClearFilterButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/DeleteButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/DownloadButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/ErrorButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/ExecProcessButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/ExecuteSqlButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/FilterButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/NavigationButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/SaveButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/SelectButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/SignButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/SignButtonV2.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/StartProcessButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/reporting/EntityGraphReportingButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/buttons/reporting/FormReportingButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/CollapsiblePanel.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/Dialog.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/DropDown.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/FieldSet.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/FilterGroup.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/Form.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/HBox.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/TabContainer.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/TabItem.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/VBox.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/containers/Window.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/EditableGrid.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/AutocompleteGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/CheckBoxGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/ComboBoxGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/DateTimePickerGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/MoneyFieldGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/NumberFieldGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/OneToManyGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/OneToManyGridColumnV2.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/ReadonlyClientGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/ReadonlyServerGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/StaticComboBoxGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/TextAreaGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/TextFieldGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/editable-grids/columns/TimePickerGridColumn.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/Address.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/Autocomplete.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/CheckBox.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/ComboBox.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/DateTimePicker.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/EditableOneToMany.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/FilePreview.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/FileUpload.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/ManyToMany.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/ManyToManyField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/MoneyField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/NumberField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/OneToMany.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/OneToManyV2.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/RadioButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/SignVerification.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/StaticComboBox.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/StaticRadioButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/Text.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/TextArea.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/TextField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/TimePicker.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/TreeField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/editableonetomany/EditableGrid.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/editableonetomany/Form.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/fileupload/FileUploadField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterAddress.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterAutocomplete.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterBoolean.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterCheckBox.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterComboBox.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterDateTimePicker.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterNumberField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterRadioButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterStaticComboBox.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterTextArea.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/filters/FilterTextField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/treefield/LinkField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/fields/treefield/MultiValueField.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/grids/Grid.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/grids/GridV2.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/grids/GridV2Column.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/grids/GridV2Group.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/grids/PagingGrid.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/grids/TreeGrid.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/ActionController.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/Calendar.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/Chart.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/ChartV2.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/EventCalendar.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/GanttChart.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/HyperLink.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/IFrame.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/InnerHtml.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/MenuGroup.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/MenuItem.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/component/uncategorized/ValidationController.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/converters/converters.jar create mode 100644 packages/ru.cg.webbpm.packages.base.resources/metadata/java.metadata create mode 100644 packages/ru.cg.webbpm.packages.base.resources/metadata/typescript.metadata.json create mode 100644 packages/ru.cg.webbpm.packages.base.resources/process-instance/ProcessInstance.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/process-instance/ProcessInstanceDiagram.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/process-instance/ProcessInstanceList.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/Groups.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/GroupsCreate.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/GroupsEdit.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/OrganizationEdit.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/Organizations.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/Roles.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/RolesEdit.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/SecurityFeatures.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/StaticRouteNavigationButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/StaticRouteSelectButton.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/UserForm.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/Users.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/UsersCreate.component create mode 100644 packages/ru.cg.webbpm.packages.base.resources/user-management/UsersEdit.component create mode 100644 pom.xml create mode 100644 project.md create mode 100644 resources/pom.xml create mode 100644 resources/src/main/resources/META-INF/components-package.xml create mode 100644 resources/src/main/resources/META-INF/filtered/resources.properties create mode 100644 resources/src/main/resources/business-model/.gitkeep create mode 100644 resources/src/main/resources/business-model/ConfigExecuteButton.component create mode 100644 resources/src/main/resources/business-model/ExportDataButton.component create mode 100644 resources/src/main/resources/business-model/main.page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ酉ムσソミソム ムミオミエミーミコムひクムミセミイミーミスミクミオ.page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ酉ムσソミソム ムミセミキミエミーミスミクミオ.page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ酉ムσソミソム.page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ樮ミウミーミスミクミキミームミクミク.page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ樮ミウミーミスミクミキミームミクム ムミオミエミーミコムひクムミセミイミーミスミクミオ(ムミセミキミエミーミスミクミオ).page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ渙セミサム糊キミセミイミームひオミサミク ムミオミエミーミコムひクムミセミイミーミスミクミオ.page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ渙セミサム糊キミセミイミームひオミサミク ムミセミキミエミーミスミクミオ.page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ渙セミサム糊キミセミイミームひオミサミク.page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミミセミサミク ムミオミエミーミコムひクムミセミイミーミスミクミオ (ムミセミキミエミーミスミクミオ).page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミミセミサミク.page create mode 100644 resources/src/main/resources/business-model/ミ」ミソムミーミイミサミオミスミクミオ ミソミセミサム糊キミセミイミームひオミサム紹シミク/ミ、ムσスミコムミクミク ミアミオミキミセミソミームミスミセムムひク.page create mode 100644 resources/src/main/resources/config/jndi-resources.xml create mode 100644 resources/src/main/resources/config/roles.xml create mode 100644 resources/src/main/resources/config/svg/_8b788e75-0f84-4511-8517-d9f24e29556d.svg create mode 100644 resources/src/main/resources/database/datasource.xml create mode 100644 resources/src/main/resources/mail/confirmation.html create mode 100644 resources/src/main/resources/mail/reset_password.html create mode 100644 resources/src/main/resources/overrides/0f470331-dfb0-4f10-b748-c9a7f33d31d9.component.override create mode 100644 resources/src/main/resources/overrides/0f8d0a8b-8014-4367-8ff3-7f049c284978.component.override create mode 100644 resources/src/main/resources/overrides/16071adb-3bdf-4c33-b29b-886876016415.component.override create mode 100644 resources/src/main/resources/overrides/38c2de2f-c5dd-413e-babf-ce54cb4e5279.component.override create mode 100644 resources/src/main/resources/overrides/4e314e88-02d6-4b0e-b7a7-15a36bdeb682.component.override create mode 100644 resources/src/main/resources/overrides/57537dbd-c468-4c2d-99df-924b5ba018d6.component.override create mode 100644 resources/src/main/resources/overrides/5cc0e63d-f697-47a8-a9dc-3170f1a99721.component.override create mode 100644 resources/src/main/resources/overrides/5f9c58f8-9ee1-4df3-b93c-e48534e798db.component.override create mode 100644 resources/src/main/resources/overrides/67605d63-1081-423b-b6b5-727ecfce2ca1.component.override create mode 100644 resources/src/main/resources/overrides/76e91ef4-d2ef-4662-96ad-84c0dae0ecff.component.override create mode 100644 resources/src/main/resources/overrides/7a57e082-99e3-4453-a2df-d5ffafa2c019.component.override create mode 100644 resources/src/main/resources/overrides/8e1d9023-42c0-4960-9c59-02f4f0c2e4dd.component.override create mode 100644 resources/src/main/resources/overrides/a4d442cf-72a8-431e-815a-490959083787.component.override create mode 100644 resources/src/main/resources/overrides/c4b48815-f449-48fe-9ae0-dec9b6f4c53c.component.override create mode 100644 resources/src/main/resources/overrides/ca7390f1-1891-4161-b8ae-ef66de5776b7.component.override create mode 100644 resources/src/main/resources/overrides/ed47cfae-64da-4360-8f61-1087179ad78b.component.override create mode 100644 resources/src/main/resources/overrides/fe225a1a-1c03-485e-a069-18b92ab4f7f7.component.override create mode 100644 system-requirements.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..de62d73 --- /dev/null +++ b/.gitignore @@ -0,0 +1,67 @@ +#ignore target dir +target*/ + +#gradle files +.gradle*/ + +*.orig +# +# Eclipse project files +# +#.classpath +#.project +#.settings*/ +.springBeans +.metadata/ +war*/ + +# +# IntelliJ IDEA project files +# +.idea*/ +.classes*/ +*.ipr +*.iml +*.iws +*.ids +atlassian-ide-plugin.xml + +#ignore NetBeans project files +nb-configuration.xml +profiles.xml +catalog.xml +nbactions.xml + +#ignore some temporary files +*.vpp~* + +# os meta files +Thumbs.db +.DS_Store + + +pom.xml.versionsBackup +*.jasper + +#studio +.studio*/ + +resources/src/main/generated-resources*/ +resources/src/main/resources/database/database_structure.xml + +frontend/build*/ +frontend/tmp*/ +frontend/.angular*/ +frontend/build_dev*/ +frontend/dist*/ +frontend/node_modules*/ +frontend/src/ts/**/*.js +frontend/src/ts/**/*.js.map +frontend/src/ts/**/*.ngsummary.json +frontend/src/ts/aot*/ +frontend/src/ts/generated*/ +npm-debug.log + +#Sublime project files +*.sublime-project +*.sublime-workspace diff --git a/.studioignore b/.studioignore new file mode 100644 index 0000000..3fc9113 --- /dev/null +++ b/.studioignore @@ -0,0 +1,29 @@ +#Files for Webbpm-Studio to ignore +frontend/build/ +frontend/build_dev/ +frontend/dist/ +frontend/node_modules/ +frontend/src/ts/page.routing.ts +frontend/src/ts/generated-sources/ +frontend/src/ts/generated/ +frontend/target/ + +backend/target/ +backend/src/main/generated-sources/ + +distribution/target/ + +resources/target/ + +test/ +extensions/ + +config/ +target/ +themes/ + +.studio/ +.git/ +.idea/ +.studioignore +**.js \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..acbeeb3 --- /dev/null +++ b/README.md @@ -0,0 +1,224 @@ +# ミ。ミセミキミエミーミスミクミオ ミ岱 ミソムミセミオミコムひー + +ミ。ミセミキミエミーミスミクミオ ムミセミサミク ミエミサム ミセムミスミセミイミスミセミケ ムムミオミシム ミ岱 ミソムミセミオミコムひー + +``` +CREATE ROLE "" WITH + LOGIN + NOSUPERUSER + INHERIT + NOCREATEDB + NOCREATEROLE + NOREPLICATION + PASSWORD ''; +``` + +ミ。ミセミキミエミーミスミクミオ ムミセミサミク ミエミサム ムムミオミシム ミアミオミキミセミソミームミスミセムムひク ミ岱 ミソムミセミオミコムひー + +``` +CREATE ROLE "" WITH + LOGIN + NOSUPERUSER + INHERIT + NOCREATEDB + NOCREATEROLE + NOREPLICATION + PASSWORD ''; +``` + +ミ。ミセミキミエミーミスミクミオ ミ岱 ミソムミセミオミコムひー + +``` +CREATE DATABASE "" + WITH + OWNER = ""; +``` + +ミ漬斷侑慴籍斷侑: ミイ ミセミアム禍オミシ ムミサムτミーミオ, ミセムひエミオミサム糊スムτ ミ岱 ミエミサム ミアミオミキミセミソミームミスミセムムひク ムミセミキミエミーミイミームび ミスミオ ミスムσカミスミセ. ミ ミコミセミスムミクミウムτミームミクミク ミクムムひセムミスミクミコミー ミエミーミスミスム錦 security-ds ミイ ムミーミケミサミオ standalone.xml ミイ ミコミームミオムムひイミオ ミクミシミオミスミク ミアミーミキム ミエミーミスミスム錦 ミクムミソミセミサム糊キムσケムひオ ミアミーミキム ミエミーミスミスム錦 ミソムミクミサミセミカミオミスミクム. + +ミ湲ミオミエミセムムひーミイミサミオミスミクミオ ミスミオミセミアムミセミエミクミシム錦 ミソムミーミイ ミエミサム ムミセミサミク <your-project-security-role> + +``` +GRANT CREATE ON DATABASE "" TO ""; +``` + +ミ。ミセミキミエミーミスミクミオ ムひーミアミサミクムム shedlock ミエミサム ミーミイムひセムミクミスムムミセミスミクミキミームミクミク + +``` +CREATE TABLE shedlock +( + name varchar not null + constraint tasks_lock_pkey + primary key, + lock_until timestamp, + locked_at timestamp, + locked_by varchar +); + +comment on table shedlock is 'ミ「ミーミアミサミクムミー ミエミサム ムミクミスムムミセミスミクミキミームミクミク ミイム巾ソミセミサミスミオミスミクム ミキミーミソミサミーミスミクムミセミイミーミスミスム錦 ミキミーミエミーム ミシミオミカミエム ミスミセミエミーミシミク.'; + +ALTER TABLE shedlock + OWNER to "owner"; +``` + +## ミ頒セミソミセミサミスミクムひオミサム糊スム巾オ ミセミウムミーミスミクムミオミスミクム ミアミーミキム ムミオミコム袴紗ミクムひク + +ミ嶢セミウミクミス ミソミセミサム糊キミセミイミームひオミサム <user_account.username> ミク ミクミシミオミスミー ムミセミサミオミケ <user_role.name> ミスミオ ミエミセミサミカミスム ムミセミイミソミーミエミームび, ムひーミコ ミコミーミコ ミイ ムミセミエミオ ムミーミアミセムび jbpm-ミー ミセミスミク ムミセムムミーミスム肖紗びム ミイ ミセミエミスム ミク ムび ミカミオ ムひーミアミサミクムム. +ミ湲ミクミシミオム ミセム威クミアミコミク ミソムミク ムミセミイミソミーミエミオミスミクミク: username = 'qa_test' ミク role_name = 'qa_test' (ムミセミサム ミソムミクミイム紹キミーミスミー ミコ ム采ひセミシム ミソミセミサム糊キミセミイミームひオミサム). ミ樮威クミアミコミー ミイミセミキミスミクミコミーミオム ミソムミク ミキミーミソムτミコミオ ミサム社アミセミウミセ ミソムミセムミオムムミー ミソミセミエ ム采ひクミシ ミソミセミサム糊キミセミイミームひオミサミオミシ. + +``` +ERROR [errorhandling.ExceptionHandlerController] (default task-5) [19usm9-bgyi63] +Organizational entity already exists with [GroupImpl:'qa_test'] id, +please check that there is no group and user with same id: +java.lang.RuntimeException: Organizational entity already exists with [GroupImpl:'qa_test'] id, +please check that there is no group and user with same id +``` + +## ミ。ミセミキミエミーミスミクミオ ミスミセミイミセミウミセ ミーミエミシミクミスミクムムびミームひセムミー + +ミ。ミセミキミエミーミケムひオ ミウムムσソミソム <your-admin-group> ミク ミソムミオミエミセムムひーミイム袴ひオ ミオミケ ミソムミーミイミー ミイ ミシミセミエムσサム ミーミエミシミクミスミクムムびミクムミセミイミーミスミクム. ミ頒サム ム采ひセミウミセ ミイム巾ソミセミサミスミクムひオ ミイ ミ岱 ミソムミセミオミコムひー + +``` +INSERT INTO security.user_group( + user_group_id, name, access_level_id) + (SELECT uuid_in(md5(random()::text || clock_timestamp()::text)::cstring), + '', access_level_id FROM security.access_level where level=999); +``` + +``` +INSERT INTO security.link_user_group_user_role( + link_user_group_user_role_id, user_group_id, user_role_id) + (SELECT uuid_in(md5(random()::text || clock_timestamp()::text)::cstring), + (SELECT user_group_id FROM security.user_group WHERE name = ''), + (SELECT user_role_id FROM security.user_role WHERE name = 'Security - User Admin')); +``` + +``` +INSERT INTO security.link_user_group_user_role( + link_user_group_user_role_id, user_group_id, user_role_id) + (SELECT uuid_in(md5(random()::text || clock_timestamp()::text)::cstring), + (SELECT user_group_id FROM security.user_group WHERE name = ''), + (SELECT user_role_id FROM security.user_role WHERE name = 'Security - Group Admin')); +``` + +``` +INSERT INTO security.link_user_group_user_role( + link_user_group_user_role_id, user_group_id, user_role_id) + (SELECT uuid_in(md5(random()::text || clock_timestamp()::text)::cstring), + (SELECT user_group_id FROM security.user_group WHERE name = ''), + (SELECT user_role_id FROM security.user_role WHERE name = 'Security - Role Admin')); +``` + +# ミ斷ームムびミセミケミコミー ミアムミームσキミオムミー ミエミサム ミイムミセミエミー ミイ ムミクムムひオミシム ム ミソミセミシミセム禾袴 Kerberos + +1. ミ厘ーミソムτムひクムひオ ミアムミームσキミオム firefox. +2. ミ ミーミエムミオムミスミセミケ ムムびミセミコミオ ミイミイミオミエミクムひオ about:config, ミスミーミカミームび ミコミスミセミソミコム "ム ミソムミクミスミクミシミーム ミスミー ムミオミアム ムミクムミコ" +3. ミ。 ミソミセミシミセム禾袴 ミソミセミクムミコミー ミスミーミケミエミクムひオ ミソミームミーミシミオムび network.negotiate-auth.trusted-uris ミク ミイ ミコミームミオムムひイミオ ミキミスミームミオミスミクム ミイミイミオムムひク ミエミセミシミオミス(ミスミーミソムミクミシミオム ミエミサム ミエミセミシミオミスミー example.com ミスミーミエミセ ミイミイミオムムひク .example.com) +4. ミ樮ひコムミセミケムひオ ミイ ミアムミームσキミオムミオ ミソムミクミサミセミカミオミスミクミオ. ミ湲ミクミシミオム http://app.example.com/ . ミ湲ミクミサミセミカミオミスミクミオ ミエミセミサミカミスミセ ミセムひコムム錦び袴ム ミアミオミキ ミキミーミソムミセムミー ミサミセミウミクミスミー/ミソミームミセミサム + +# ミ漬セムムムひーミスミセミイミサミオミスミクミオ ムムびムσコムびτム ミ岱 + +ミ斷ー ミセムミスミセミイミオ ミ岱 ミソムミセミオミコムひー ム ミソミセミシミセム禾袴 jOOQ ミウミオミスミオムミクムムτ紗びム Java ミコミサミームムム ミエミサム ミコミーミカミエミセミウミセ ミセミアム諌オミコムひー ミ岱. ミュムひセ ミソムミセミクムムミセミエミクム ミソミセ ミスミーミカミームひクム ミコミスミセミソミコミク ミ榧アミスミセミイミクムび ミスミー ミソミーミスミオミサミク ミ岱 ミイ ムムびσエミクミク. ミ湲ミク ミスミオミセミアムミセミエミクミシミセムムひク ミシミセミカミスミセ ムムミセムミシミクムミセミイミームび DDL ミスミー ミセムミスミセミイミオ ミエミーミスミスム錦 ミコミサミームムミセミイ. ミ湲ミクミシミオム ミコミサミームムミー ミエミサム ミウミオミスミオムミームミクミク DDL + +``` +package ru.cg.webbpm.test_project.db_beans; + +import org.jooq.*; +import org.jooq.impl.*; + +public class Main { + public static void main (String args []) { + DefaultConfiguration defaultConfiguration = new DefaultConfiguration(); + defaultConfiguration.setSQLDialect(SQLDialect.POSTGRES); + Queries ddl = DSL.using(defaultConfiguration).ddl(DefaultCatalog.DEFAULT_CATALOG); + + for (Query query : ddl.queries()) { + System.out.println(query); + } + } +} +``` + +** ミ漬斷侑慴籍斷侑: ** + +- ム采ひクミシ ムミソミセムミセミアミセミシ ミスミオミサム糊キム ミイミセムムムひーミスミセミイミクムび ムムσスミコムミクミク/ミソムミセムミオミエムτム ミ岱 + +ムミシ. ムひーミコミカミオ [https://www.jooq.org/doc/latest/manual/sql-building/ddl-statements/generating-ddl/](https://www.jooq.org/doc/latest/manual/sql-building/ddl-statements/generating-ddl/) + +# ミ。ミアミセムミコミー ミソムミセミオミコムひー +## ミ dev ムミオミカミクミシミオ +```bash +mvn clean && mvn package +``` +## ミ prod ムミオミカミクミシミオ +```bash +mvn clean && mvn package -Pprod -DngcCoreCount=4 -DpagePackSizeMb=24 +``` +ngcCoreCount - ミコミセミサミクムミオムムひイミセ ム紹エミオム, ミイム巾エミオミサム紹オミシム錦 ミソムミセムミオムムム ミコミセミシミソミクミサム肖ミクミク ngc. ミ渙セ ムσシミセミサムミーミスミクム - ミコミセミサミクムミオムムひイミセ ム紹エミオム - 1 +pagePackSizeMb - ムミーミキミシミオム ミソミームミコミク ミイ ミ慴. ミ渙セ ムσシミセミサムミーミスミクム - ミコミセミサミクムミオムムひイミセ ム紹エミオム - 24 ミ慴. + +## ミ。 ミセミアミスミセミイミサミオミスミクミオミシ database beans +```bash +mvn clean && mvn package -Dwebbpm.generate-db-beans +``` + +# ミ漬オムムミクム ミソムミセミオミコムひー + +ミ篇ミサミク ミイミオムムミクム ミソムミセミオミコムひー ムミセミエミオムミカミクム SNAPSHOT (ミスミーミソムミクミシミオム 1.0-SNAPSHOT), ムひセ ミソムミク ムτムひーミスミセミイミコミオ ムひーミコミセミケ ミイミオムムミクミク ミスミー ムミオムミイミオムミオ ミソムミクミサミセミカミオミスミクミケ ミアムσエミオム ミキミーミソムτ禍オミスミー ミソムミセムミオミエムτミー ミセムムひーミスミセミイミコミク ミキミーミソムτ禍オミスミスム錦 ミソムミセムミオムムミセミイ ミエミーミスミスミセミケ ミイミオムムミクミク. ミュムひセム ムミオミカミクミシ ムσエミセミアミオミス ミソムミク ミセムひサミーミエミコミオ ミソムミセムミオムムミー ミスミー ムミーミアミセムミオミシ ミシミオムムひオ ミーミスミーミサミクムひクミコミー. +ミ斷ー ミアミセミオミイミセミシ ミク ムひオムムひセミイミセミシ ムムひオミスミエミオ ミスミオミセミアムミセミエミクミシミセ ミソミオムミオミエミーミイミームび ミエミクムムびミクミアムτひクミイ ミソムミセミオミコムひー, ム ミイミオムムミクミオミケ, ミコミセムひセムミーム ミスミオ ムミセミエミオムミカミクム SNAPSHOT. ミ斷ーミソムミクミシミオム - 1.0 + +# ミ榧アミスミセミイミサミオミスミクミオ ミソミサミームびミセムミシム + +## ミ榧アミスミセミイミサミオミスミクム ミイミオムムミクミク ミソミサミームびミセムミシム + +### ミ。 ミソミセミシミセム禾袴 ムムびσエミクミク + +1. ミ樮ひコムミセミケムひオ ミソムミセミオミコム ミイ ムムびσエミクミク. ミ漬オムムミクム ミソミサミームびミセムミシム ミセミアミスミセミイミクムびム ミーミイムひセミシミームひクムミオムミコミク + +### ミ柘ムτミスムτ + +1. ミ榧アミスミセミイミクムひオ ミキミスミームミオミスミクミオ webbpm-platform.version ミイ pom.xml. ミ湲ミクミシミオム + + ```xml + 3.164.0-SNAPSHOT + ``` + +## ミ榧アミスミセミイミサミオミスミクミオ ミアミーミキミセミイミセミウミセ ミソミーミコミオムひー ミコミセミシミソミセミスミオミスム + +### ミ。 ミソミセミシミセム禾袴 ムムびσエミクミク + +1. ミ樮ひコムミセミケムひオ ミソムミセミオミコム ミイ ムムびσエミクミク. + +2. ミ樮ひコムミセミケムひオ ミシミオミスム "ミ湲ミセミオミコム - ミ渙ーミコミオムび" + +3. ミ斷ーミカミシミクムひオ ミセミアミスミセミイミクムび. + + +### ミ柘ムτミスムτ + +#### ミ侑キ ムσエミーミサミオミスミスミセミウミセ ムミオミソミセミキミクムひセムミクム + +```bash +mvn webbpm:update-package -DpackageVersion="3.158.8" +``` + +#### ミ侑キ ムミーミケミサミー + +```bash +mvn webbpm:update-package -DexecuteNpmInstall=false -Dpath=resources-.jar +``` + +#### ミムσコミーミシミク + +1. ミ侑キミシミオミスミクムひオ ミイミオムムミクム ミソミサミームびミセムミシム ミク backend ミシミセミエムσサム ミイ ムミーミケミサミオ [pom.xml](pom.xml) ミイミーム威オミウミセ ミソムミセミオミコムひー ミスミー ミスムσカミスムτ ミイミオムムミクム +2. ミ。ミコミセミソミクムムσケムひオ ムミオムムτムム +``` +ミクミキ ミエミクムミオミコムひセムミクミク: webbpm-platform\components\resources\target\classes\ +ミイ ミエミクムミオミコムひセムミクム: {your-project}\packages\ru.cg.webbpm.packages.base.resources\ +``` +3. ミ。ミコミセミソミクムムσケムひオ ムムミセミスム +``` +ミクミキ ミエミクムミオミコムひセムミクミク: webbpm-platform\components\frontend\dist +ミイ ミエミクムミオミコムひセムミクム: {your-project}\frontend\node_modules\@webbpm\base-package\ +``` +4. ミ厘ーミソムミオムひクムひオ ミイム巾ソミセミサミスミオミスミクミオ npm install ミソムミク ミキミーミソムτミコミオ ムムびσエミクミク. ミ頒サム ム采ひセミウミセ ミエミセミアミーミイム袴ひオ ミソミームミーミシミオムび `-DexecuteNpmInstall=false` ミイ ミスミームムびミセミケミコミーム Run/Debug Configurations ムムびσエミクミク diff --git a/backend/pom.xml b/backend/pom.xml new file mode 100644 index 0000000..e35c87e --- /dev/null +++ b/backend/pom.xml @@ -0,0 +1,309 @@ + + + 4.0.0 + + ru.micord.ervu + eks + 1.0.0-SNAPSHOT + + ru.micord.ervu.eks + backend + war + + + io.jsonwebtoken + jjwt-api + + + io.jsonwebtoken + jjwt-impl + runtime + + + ru.micord.ervu.eks + resources + runtime + + + ru.cg.webbpm.modules.reporting.reporting-jasper + reporting-jasper-fonts + runtime + + + org.ocpsoft.prettytime + prettytime + + + org.jooq + jooq + + + javax.servlet + javax.servlet-api + + + org.slf4j + slf4j-api + provided + + + org.springframework + spring-core + + + org.springframework + spring-context + + + org.springframework + spring-beans + + + org.springframework + spring-aop + + + org.springframework + spring-jdbc + + + org.springframework + spring-tx + + + org.springframework + spring-aspects + + + org.springframework + spring-web + + + org.springframework + spring-webmvc + + + org.springframework.security + spring-security-web + + + org.springframework.security + spring-security-config + + + ru.cg.webbpm.modules + inject + + + ru.cg.webbpm.modules + webkit-rpc + + + ru.cg.webbpm.modules + webkit-beans + + + ru.cg.webbpm.modules.core + core-runtime-api + + + ru.cg.webbpm.modules.resources + resources-api + + + ru.cg.webbpm.modules.core + error-handling-api + + + ru.cg.webbpm.modules.database + database-api + + + ru.cg.webbpm.modules.database + database-impl + + + ru.cg.webbpm.modules.jndi + jndi-beans + + + ru.cg.webbpm.modules.jndi + jndi-inject + + + com.sun.mail + javax.mail + + + ru.cg.webbpm.modules.database + database-test + test + + + ru.cg.webbpm.modules + standard-annotations + + + ru.cg.webbpm.modules.security + security-beans + + + ru.cg.webbpm.modules.security + security-api + + + ru.cg.webbpm.modules.security + security-esia + + + ru.cg.webbpm.modules.reporting + reporting-api + + + ru.cg.webbpm.modules.reporting + reporting-runtime-api + + + ru.cg.webbpm.modules.reporting + reporting-runtime-impl + + + ru.cg.webbpm.modules.reporting.reporting-jasper + reporting-jasper-impl + + + ru.cg.webbpm.modules.reporting.reporting-jasper + reporting-jasper-runtime-impl + + + ru.cg.webbpm.modules.reporting.reporting-xdoc + reporting-xdoc-impl + + + ru.cg.webbpm.modules.reporting.reporting-xdoc + reporting-xdoc-runtime-impl + + + org.liquibase + liquibase-core + + + ru.cg.webbpm.modules + webkit-base + + + ru.cg.webbpm.modules.security + security-db-synchronization-api + + + ru.cg.webbpm.modules.security + security-db-synchronization-ldap-impl + + + xerces + xercesImpl + + + com.google.guava + guava + + + ru.micord.fias + client + + + org.apache.tika + tika-core + + + org.springframework.security.kerberos + spring-security-kerberos-core + + + org.springframework.security.kerberos + spring-security-kerberos-web + + + org.bouncycastle + bcprov-jdk15on + + + org.bouncycastle + bcpkix-jdk15on + + + net.javacrumbs.shedlock + shedlock-spring + + + net.javacrumbs.shedlock + shedlock-provider-jdbc-template + + + ru.cg.webbpm.packages.base + backend + + + + + + maven-compiler-plugin + + false + true + 17 + + + + org.codehaus.mojo + build-helper-maven-plugin + 3.2.0 + + + add-source + generate-sources + + add-source + + + + ${project.basedir}/target/generated-sources/java + + + + + + + + + + studio + + + + maven-war-plugin + + ${project.artifactId} + + + + + + + ru.cg.webbpm.modules.resources + resources-impl-development + + + + + dev + + + org.postgresql + postgresql + + + + + diff --git a/backend/src/main/java/AppConfig.java b/backend/src/main/java/AppConfig.java new file mode 100644 index 0000000..03b77a7 --- /dev/null +++ b/backend/src/main/java/AppConfig.java @@ -0,0 +1,92 @@ +import net.javacrumbs.shedlock.core.LockProvider; +import net.javacrumbs.shedlock.provider.jdbctemplate.JdbcTemplateLockProvider; +import net.javacrumbs.shedlock.spring.ScheduledLockConfiguration; +import net.javacrumbs.shedlock.spring.ScheduledLockConfigurationBuilder; +import org.apache.http.client.config.RequestConfig; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.EnableAspectJAutoProxy; +import org.springframework.context.support.PropertySourcesPlaceholderConfigurer; +import org.springframework.http.client.HttpComponentsClientHttpRequestFactory; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler; +import org.springframework.web.client.RestTemplate; +import org.springframework.web.servlet.config.annotation.EnableWebMvc; + +import javax.sql.DataSource; +import java.time.Duration; + +/** + * Root application context + * This context imports XML configs from all the other jars, and is created by {@link WebAppInitializer} + * NB: modules are excluded from component scan since spring-context.xml sometimes holds important parameters and / or annotations + * @author krylov + */ +@Configuration +@ComponentScan(basePackages = { + "service", + "dao", + "bpmn", + "i18n", + "errorhandling", + "database", + "security", + "component.addresses", + "gen", + "ru.cg", + "ru.micord" +}) +@EnableAspectJAutoProxy(proxyTargetClass = true) +@EnableWebMvc +@EnableScheduling +public class AppConfig { + + @Value("${config.data.executor.socket.timeout:10}") + private int socketTimeout; + @Value("${config.data.executor.connection.timeout:10}") + private int connectionTimeout; + + @Bean + public PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer(){ + return new PropertySourcesPlaceholderConfigurer(); + } + + @Bean + public ScheduledLockConfiguration taskScheduler(LockProvider lockProvider) { + ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler(); + scheduler.setPoolSize(12); + scheduler.initialize(); + return ScheduledLockConfigurationBuilder + .withLockProvider(lockProvider) + .withTaskScheduler(scheduler) + .withDefaultLockAtMostFor(Duration.ofHours(4)) + .build(); + } + + @Bean + public LockProvider lockProvider(@Qualifier("datasource") DataSource dataSource) { + return new JdbcTemplateLockProvider(dataSource); + } + + @Bean + public RestTemplate restTemplate() { + RequestConfig requestConfig = RequestConfig.custom() + .setSocketTimeout(socketTimeout * 1000) + .setConnectionRequestTimeout(connectionTimeout * 1000) + .setConnectTimeout(connectionTimeout * 1000) + .build(); + + CloseableHttpClient httpClient = HttpClients.custom() + .setDefaultRequestConfig(requestConfig) + .build(); + + HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(httpClient); + + return new RestTemplate(factory); + } +} diff --git a/backend/src/main/java/WebAppInitializer.java b/backend/src/main/java/WebAppInitializer.java new file mode 100644 index 0000000..f4fef23 --- /dev/null +++ b/backend/src/main/java/WebAppInitializer.java @@ -0,0 +1,31 @@ +import javax.servlet.ServletContext; +import javax.servlet.ServletException; + +import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; +import org.springframework.web.util.IntrospectorCleanupListener; + +/** + * This initializer creates root context and registers dispatcher servlet + * Spring scans for initializers automatically + */ +public class WebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer { + + public void onStartup(ServletContext servletContext) throws ServletException { + super.onStartup(servletContext); + servletContext.addListener(new IntrospectorCleanupListener()); + } + + protected String[] getServletMappings() { + return new String[]{"/"}; + } + + @Override + protected Class[] getRootConfigClasses() { + return new Class[]{AppConfig.class}; + } + + @Override + protected Class[] getServletConfigClasses() { + return new Class[0]; + } +} diff --git a/backend/src/main/java/dto/ExportDataRequest.java b/backend/src/main/java/dto/ExportDataRequest.java new file mode 100644 index 0000000..25701e1 --- /dev/null +++ b/backend/src/main/java/dto/ExportDataRequest.java @@ -0,0 +1,24 @@ +package dto; + +import java.util.List; + +public class ExportDataRequest { + public String type; + public List ids; + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public List getIds() { + return ids; + } + + public void setIds(List ids) { + this.ids = ids; + } +} diff --git a/backend/src/main/java/rpc/ConfigExecutorRpcService.java b/backend/src/main/java/rpc/ConfigExecutorRpcService.java new file mode 100644 index 0000000..ff169b4 --- /dev/null +++ b/backend/src/main/java/rpc/ConfigExecutorRpcService.java @@ -0,0 +1,27 @@ +package rpc; + +import org.springframework.beans.factory.annotation.Autowired; +import ru.cg.webbpm.modules.webkit.annotations.RpcCall; +import ru.cg.webbpm.modules.webkit.annotations.RpcService; +import ru.cg.webbpm.modules.webkit.beans.Behavior; +import service.ConfigExecutorService; + +import java.util.List; + +/** + * @author Evgenii Malkov + */ +@RpcService +public class ConfigExecutorRpcService extends Behavior { + + private final ConfigExecutorService configExecutorService; + + public ConfigExecutorRpcService(@Autowired ConfigExecutorService configExecutorService) { + this.configExecutorService = configExecutorService; + } + + @RpcCall + public void callConfigExecutor(String methodPath, List ids) { + configExecutorService.call(methodPath, ids); + } +} diff --git a/backend/src/main/java/rpc/ExportDataRpcService.java b/backend/src/main/java/rpc/ExportDataRpcService.java new file mode 100644 index 0000000..3202c70 --- /dev/null +++ b/backend/src/main/java/rpc/ExportDataRpcService.java @@ -0,0 +1,30 @@ +package rpc; + +import java.util.List; + +import dto.ExportDataRequest; +import model.FileModel; +import org.springframework.beans.factory.annotation.Autowired; +import service.ConfigExecutorService; + +import ru.cg.webbpm.modules.webkit.annotations.RpcCall; +import ru.cg.webbpm.modules.webkit.annotations.RpcService; +import ru.cg.webbpm.modules.webkit.beans.Behavior; + +/** + * @author kochetkov + */ +@RpcService +public class ExportDataRpcService extends Behavior { + + private final ConfigExecutorService configExecutorService; + + public ExportDataRpcService(@Autowired ConfigExecutorService configExecutorService) { + this.configExecutorService = configExecutorService; + } + + @RpcCall + public FileModel exportData(ExportDataRequest request) { + return configExecutorService.exportData(request); + } +} diff --git a/backend/src/main/java/ru/micord/ervu_eks/component/service/ReadOnlySqlButtonServiceImpl.java b/backend/src/main/java/ru/micord/ervu_eks/component/service/ReadOnlySqlButtonServiceImpl.java new file mode 100644 index 0000000..6cf4bcf --- /dev/null +++ b/backend/src/main/java/ru/micord/ervu_eks/component/service/ReadOnlySqlButtonServiceImpl.java @@ -0,0 +1,169 @@ +package ru.micord.ervu_eks.component.service; + +import java.sql.Array; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import bpmn.handler.sql_handler.SQLHandlerUtils; +import bpmn.handler.sql_handler.SQLParameters; +import org.jooq.DSLContext; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.exception.DataAccessException; +import org.jooq.impl.DefaultDataType; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import service.button.sql.ExecuteSqlButtonService; +import utils.SqlQueryUtils; + +import ru.cg.webbpm.modules.core.runtime.api.context.ExecutionContextHelper; +import ru.cg.webbpm.modules.database.api.provider.DslProvider; +import ru.cg.webbpm.modules.standard_annotations.editor.TextAreaEditor; +import ru.cg.webbpm.modules.standard_annotations.validation.NotNull; + +public class ReadOnlySqlButtonServiceImpl implements ExecuteSqlButtonService { + private static final Logger logger = LoggerFactory.getLogger(ReadOnlySqlButtonServiceImpl.class); + @Autowired + private DslProvider dslProvider; + @Autowired + protected ExecutionContextHelper executionContextHelper; + private DSLContext dsl; + @TextAreaEditor + @NotNull + public String sql; + public String jndiName; + + public void initDsl() { + + if (dsl != null) { + return; + } + dsl = this.dslProvider.getDslContext(jndiName); + if (dsl == null) { + throw new RuntimeException("Couldn't get dslContext with datasourceJndiName = " + jndiName); + } + } + + public List executeSql(Object[] params) { + initDsl(); + SQLParameters parameters = new SQLParameters(); + parameters.setSql(sql); + parameters.setSqlParameters(params); + + return switch (SqlQueryUtils.queryType(sql)) { + case SELECT -> executeSelect(parameters); + case UNKNOWN -> executeUnknownQuery(parameters); + default -> Collections.EMPTY_LIST; + }; + } + + private List executeSelect(SQLParameters parameters) { + Result result = executeSelectRaw(parameters); + + if (result.size() > 1) { + String message = String.format("Query \"%s\" with arguments %s returned more than one row.", + parameters.getSql(), Arrays.toString(parameters.getSqlParameters()) + ); + throw new IllegalStateException(message); + } + Record row = result.get(0); + List results = new ArrayList<>(); + + for (int i = 0; + i < row.size(); + i++) { + results.add(row.getValue(i)); + } + return results; + } + + private List executeUnknownQuery(SQLParameters parameters) { + // jooq does not provide any way to get generated keys for sql queries + Connection connection = dsl.configuration().connectionProvider().acquire(); + try (PreparedStatement statement = connection.prepareStatement(parameters.getSql())) { + setParameters(statement, parameters, connection); + + String query = dsl.renderInlined( + dsl.query(parameters.getSql(), parameters.getSqlParameters())); + String executionContext = + "\n with Execution Context: \n" + executionContextHelper.getExecutionContext(); + logger.debug("Executing query " + query + executionContext); + + statement.execute(); + ResultSet resultSet = statement.getResultSet(); + + if (resultSet != null) { + List results = new ArrayList<>(); + ResultSetMetaData metaData = resultSet.getMetaData(); + while (resultSet.next()) { + Object[] row = new Object[metaData.getColumnCount()]; + for (int i = 0; + i < metaData.getColumnCount(); + i++) { + row[i] = resultSet.getObject(i + 1); + } + results.add(row); + } + return results; + } + else { + return Collections.emptyList(); + } + } + catch (SQLException e) { + StringBuilder sb = new StringBuilder("Failed to execute SQL query. SQL: \"").append( + parameters.getSql()).append("\""); + if (parameters.getSqlParameters() != null && parameters.getSqlParameters().length > 0) { + String parametersStr = Arrays.toString(parameters.getSqlParameters()); + sb.append(", with parameters: ").append(parametersStr); + } + throw new DataAccessException(sb.toString(), e); + } + finally { + dsl.configuration().connectionProvider().release(connection); + } + } + + private void setParameters(PreparedStatement statement, SQLParameters parameters, + Connection connection) throws SQLException { + for (int i = 0; + i < parameters.getSqlParameters().length; + i++) { + Object parameter = parameters.getSqlParameters()[i]; + if (parameter == null) { + // Also documentation states that it's better to use setNull method + // because not all databases support setObject with null value but + // in practice we don't know parameter type and the only sql type left + // for setNull method argument is java.sql.Types.NULL, which is not + // supported by all databases as well. + statement.setObject(i + 1, null); + } + else { + if (SQLHandlerUtils.isArrayExceptBytesArray(parameter)) { + Object[] castParameter = (Object[]) parameter; + org.jooq.SQLDialect dialect = dsl.configuration().dialect(); + String typeName = DefaultDataType.getDataType(dialect, + castParameter.getClass().getComponentType() + ).getTypeName(); + Array arrayOf = connection.createArrayOf(typeName, castParameter); + statement.setArray(i + 1, arrayOf); + } + else { + statement.setObject(i + 1, parameter); + } + } + } + } + + private Result executeSelectRaw(SQLParameters parameters) { + return dsl.resultQuery(parameters.getSql(), parameters.getSqlParameters()).fetch(); + } +} diff --git a/backend/src/main/java/service/ConfigExecutorService.java b/backend/src/main/java/service/ConfigExecutorService.java new file mode 100644 index 0000000..a2fee0d --- /dev/null +++ b/backend/src/main/java/service/ConfigExecutorService.java @@ -0,0 +1,88 @@ +package service; + +import java.lang.invoke.MethodHandles; +import java.text.SimpleDateFormat; +import java.util.Arrays; +import java.util.Base64; +import java.util.Date; +import java.util.List; +import java.util.Objects; + +import dto.ExportDataRequest; +import model.FileModel; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.web.client.RestTemplate; + +/** + * @author Evgenii Malkov + */ +@Service +public class ConfigExecutorService { + + private static final Logger LOGGER = LoggerFactory.getLogger( + MethodHandles.lookup().lookupClass()); + private final RestTemplate restTemplate; + private final String url; + + public ConfigExecutorService(@Autowired RestTemplate restTemplate, + @Value("${config.data.executor.url}") String url) { + this.restTemplate = restTemplate; + this.url = url; + } + + public FileModel exportData(ExportDataRequest request) { + HttpHeaders headers = new HttpHeaders(); + HttpEntity entity = new HttpEntity<>(request, headers); + + ResponseEntity response = restTemplate.exchange( + url.concat("/").concat("downloadCSV"), + HttpMethod.POST, entity, byte[].class + ); + + String content = Base64.getEncoder().encodeToString(response.getBody()); + FileModel fileModel = new FileModel(); + fileModel.setFileContent(content); + fileModel.setFileExtension(".csv"); + fileModel.setFileName( + request.getType() + "_" + new SimpleDateFormat("dd.MM.yyyy").format(new Date()) + ".csv"); + return fileModel; + } + + public void call(String methodPath, List ids) { + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON); + HttpEntity> entity = new HttpEntity<>(ids, headers); + LOGGER.info("Starts call config executor service with method: {}, for ids: {}", methodPath, + ids + ); + try { + ResponseEntity response = restTemplate.exchange(url.concat(methodPath), + HttpMethod.POST, entity, Object.class + ); + LOGGER.info("Method: {}, executed with status: {}, for ids:{}", methodPath, + response.getStatusCode().value(), ids + ); + } + catch (Exception e) { + throw new RuntimeException( + String.format("Failed call config executor service method: %s for ids: %s with error", + methodPath, ids + ), e); + } + } + + public List getExportDataIds() { + ResponseEntity listDownloadTypes = restTemplate.getForEntity( + url.concat("/").concat("listDownloadTypes"), String[].class); + return Arrays.stream(Objects.requireNonNull(listDownloadTypes.getBody())).toList(); + } +} diff --git a/backend/src/main/java/service/DataTypeComboBoxService.java b/backend/src/main/java/service/DataTypeComboBoxService.java new file mode 100644 index 0000000..f729194 --- /dev/null +++ b/backend/src/main/java/service/DataTypeComboBoxService.java @@ -0,0 +1,35 @@ +package service; + +import java.util.List; + +import model.ComboBoxModel; +import org.springframework.beans.factory.annotation.Autowired; +import service.field.ComboBoxService; + +public class DataTypeComboBoxService implements ComboBoxService { + @Autowired + private ConfigExecutorService configExecutorService; + + + @Override + public List loadData() { + return configExecutorService.getExportDataIds().stream().sorted().map(s -> new ComboBoxModel(s, s, s, true)).toList(); + } + + + @Override + public ComboBoxModel loadModelWithoutGraphConditions(Object id, Object parentValue) { + throw new UnsupportedOperationException(); + } + + @Override + public List loadDataWithFilter(Object filterValue) { + throw new UnsupportedOperationException(); + } + + @Override + public List loadDataByParentValueWithFilter(Object parentValue, + Object filterValue) { + throw new UnsupportedOperationException(); + } +} diff --git a/backend/src/main/resources/.gitkeep b/backend/src/main/resources/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/config-data-executor/.gitignore b/config-data-executor/.gitignore new file mode 100644 index 0000000..5ff6309 --- /dev/null +++ b/config-data-executor/.gitignore @@ -0,0 +1,38 @@ +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### IntelliJ IDEA ### +.idea/modules.xml +.idea/jarRepositories.xml +.idea/compiler.xml +.idea/libraries/ +*.iws +*.iml +*.ipr + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store \ No newline at end of file diff --git a/config-data-executor/Dockerfile b/config-data-executor/Dockerfile new file mode 100644 index 0000000..0aaea2c --- /dev/null +++ b/config-data-executor/Dockerfile @@ -0,0 +1,4 @@ +FROM bellsoft/liberica-openjdk-alpine:17-cds +COPY target/*.jar app.jar + +CMD ["java", "-jar", "app.jar"] \ No newline at end of file diff --git a/config-data-executor/pom.xml b/config-data-executor/pom.xml new file mode 100644 index 0000000..ce0d141 --- /dev/null +++ b/config-data-executor/pom.xml @@ -0,0 +1,114 @@ + + + 4.0.0 + + ru.micord.ervu + eks + 1.0.0-SNAPSHOT + + ru.micord.ervu.eks + config-data-executor + war + + + 17 + 17 + UTF-8 + + + + + + + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework + spring-tx + + + com.atomikos + transactions-jta + + + com.atomikos + transactions-jdbc + + + javax.transaction + javax.transaction-api + + + org.postgresql + postgresql + runtime + + + org.projectlombok + lombok + provided + + + jakarta.xml.bind + jakarta.xml.bind-api + + + com.sun.xml.bind + jaxb-impl + + + com.arangodb + arangodb-java-driver + + + com.amazonaws + aws-java-sdk-s3 + + + javax.servlet + javax.servlet-api + provided + + + + + maven_central + Maven Central + https://repo.maven.apache.org/maven2/ + + + + ${artifactId} + + + org.apache.maven.plugins + maven-war-plugin + 3.1.0 + + false + + + + org.springframework.boot + spring-boot-maven-plugin + 2.7.18 + + org.micord.Main + + + + + repackage + + + + + + + diff --git a/config-data-executor/src/main/java/org/micord/Main.java b/config-data-executor/src/main/java/org/micord/Main.java new file mode 100644 index 0000000..b37af38 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/Main.java @@ -0,0 +1,15 @@ +package org.micord; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; + +/** + * @author Maksim Tereshin + */ +@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) +public class Main { + public static void main(String[] args) { + SpringApplication.run(Main.class, args); + } +} \ No newline at end of file diff --git a/config-data-executor/src/main/java/org/micord/SpringBootTomcatApplication.java b/config-data-executor/src/main/java/org/micord/SpringBootTomcatApplication.java new file mode 100644 index 0000000..3c15e47 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/SpringBootTomcatApplication.java @@ -0,0 +1,8 @@ +package org.micord; + +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; + +@SpringBootApplication +public class SpringBootTomcatApplication extends SpringBootServletInitializer { +} diff --git a/config-data-executor/src/main/java/org/micord/config/ArangoDBConnection.java b/config-data-executor/src/main/java/org/micord/config/ArangoDBConnection.java new file mode 100644 index 0000000..266f816 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/config/ArangoDBConnection.java @@ -0,0 +1,34 @@ +package org.micord.config; + +import com.arangodb.ArangoDB; +import com.arangodb.ArangoDBException; +import com.arangodb.ArangoDatabase; +import org.micord.models.AqlConnectionParams; + +/** + * @author Maksim Tereshin + */ +public class ArangoDBConnection { + + public static ArangoDatabase getConnection(AqlConnectionParams params) { + try { + ArangoDB arangoDB = new ArangoDB.Builder() + .host(params.getHost(), params.getPort()) + .user(params.getUsername()) + .password(params.getPassword()) + .build(); + + ArangoDatabase db = arangoDB.db(params.getDatabase()); + + if (!db.exists()) { + throw new ArangoDBException("Database does not exist: " + params.getDatabase()); + } + + return db; + + } catch (ArangoDBException e) { + throw new RuntimeException("Failed to connect to ArangoDB", e); + } + } + +} diff --git a/config-data-executor/src/main/java/org/micord/config/AtomikosConfig.java b/config-data-executor/src/main/java/org/micord/config/AtomikosConfig.java new file mode 100644 index 0000000..1cc4563 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/config/AtomikosConfig.java @@ -0,0 +1,39 @@ +package org.micord.config; + +import com.atomikos.icatch.jta.UserTransactionImp; +import com.atomikos.icatch.jta.UserTransactionManager; +import javax.transaction.TransactionManager; +import javax.transaction.UserTransaction; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.transaction.annotation.EnableTransactionManagement; +import org.springframework.transaction.jta.JtaTransactionManager; + +/** + * @author Maksim Tereshin + */ +@Configuration +@EnableTransactionManagement +public class AtomikosConfig { + + @Bean + public UserTransaction userTransaction() throws Throwable { + UserTransactionImp userTransactionImp = new UserTransactionImp(); + userTransactionImp.setTransactionTimeout(300); + return userTransactionImp; + } + + @Bean + public TransactionManager atomikosTransactionManager() { + UserTransactionManager userTransactionManager = new UserTransactionManager(); + userTransactionManager.setForceShutdown(true); + return userTransactionManager; + } + + @Bean + public JtaTransactionManager transactionManager() throws Throwable { + return new JtaTransactionManager(userTransaction(), atomikosTransactionManager()); + } + +} + diff --git a/config-data-executor/src/main/java/org/micord/config/DatabaseConnection.java b/config-data-executor/src/main/java/org/micord/config/DatabaseConnection.java new file mode 100644 index 0000000..04f9003 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/config/DatabaseConnection.java @@ -0,0 +1,67 @@ +package org.micord.config; + +import com.atomikos.jdbc.AtomikosDataSourceBean; +import org.micord.models.SqlConnectionParams; + +import javax.sql.DataSource; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.HashMap; +import java.util.Map; +import java.util.Properties; + +/** + * @author Maksim Tereshin + */ +public class DatabaseConnection { + + private static final Map dataSources = new HashMap<>(); + + public static Connection getConnection(SqlConnectionParams params) throws SQLException { + try { + Class.forName(params.getJdbcDriverClassName()); + } catch (ClassNotFoundException e) { + throw new SQLException("Unable to load the JDBC driver class", e); + } + + return getXaDataSource(params).getConnection(); + } + + public static DataSource getXaDataSource(SqlConnectionParams params) { + String database = params.getJdbcDatabase(); + + if (!dataSources.containsKey(database)) { + AtomikosDataSourceBean xaDataSource = new AtomikosDataSourceBean(); + xaDataSource.setUniqueResourceName("jdbcDatasource_" + database); + xaDataSource.setXaDataSourceClassName(params.getJdbcXaDataSourceClassName()); + xaDataSource.setPoolSize(Integer.parseInt(params.getJdbcXaDataSourcePoolSize())); + + if (params.getJdbcXaDataSourceBorrowConnectionTimeout() != null) { + xaDataSource.setBorrowConnectionTimeout(Integer.parseInt(params.getJdbcXaDataSourceBorrowConnectionTimeout())); + } + + Properties xaProperties = loadDatabaseProperties(params); + xaDataSource.setXaProperties(xaProperties); + + dataSources.put(database, xaDataSource); + } + + return dataSources.get(database); + } + + private static Properties loadDatabaseProperties(SqlConnectionParams params) { + Properties xaProperties = new Properties(); + try { + xaProperties.setProperty("user", params.getJdbcUsername()); + xaProperties.setProperty("password", params.getJdbcPassword()); + xaProperties.setProperty("serverName", params.getJdbcHost()); + xaProperties.setProperty("portNumber", String.valueOf(params.getJdbcPort())); + xaProperties.setProperty("databaseName", params.getJdbcDatabase()); + + } catch (Exception e) { + throw new RuntimeException("Failed to load database properties", e); + } + return xaProperties; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/config/HttpClientConfig.java b/config-data-executor/src/main/java/org/micord/config/HttpClientConfig.java new file mode 100644 index 0000000..9957ad4 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/config/HttpClientConfig.java @@ -0,0 +1,19 @@ +package org.micord.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.net.http.HttpClient; + +/** + * @author Maksim Tereshin + */ +@Configuration +public class HttpClientConfig { + + @Bean + public HttpClient httpClient() { + return HttpClient.newHttpClient(); + } + +} diff --git a/config-data-executor/src/main/java/org/micord/config/S3HttpConnection.java b/config-data-executor/src/main/java/org/micord/config/S3HttpConnection.java new file mode 100644 index 0000000..668332d --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/config/S3HttpConnection.java @@ -0,0 +1,76 @@ +package org.micord.config; + +import org.micord.models.S3ConnectionParams; +import org.micord.models.S3Request; + +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import java.net.URI; +import java.net.http.HttpRequest; +import java.nio.charset.StandardCharsets; +import java.time.ZonedDateTime; +import java.time.format.DateTimeFormatter; +import java.util.Base64; + +/** + * @author Maksim Tereshin + */ +public class S3HttpConnection { + + public static HttpRequest buildHttpRequest(S3Request request, String file) throws Exception { + S3ConnectionParams connectionParams = request.getS3ConnectionParams(); + String host = connectionParams.getHost() + ":" + connectionParams.getPort(); + String s3Key = connectionParams.getS3Key(); + String s3Secret = connectionParams.getS3Secret(); + String method = connectionParams.getMethod().toUpperCase(); + String body = connectionParams.getBody(); + + String resource = "/" + file; + String contentType = connectionParams.getContentType(); + String date = ZonedDateTime.now().format(DateTimeFormatter.RFC_1123_DATE_TIME); + + String signature = generateSignature(method, contentType, date, resource, s3Secret); + + HttpRequest.Builder requestBuilder = HttpRequest.newBuilder() + .uri(URI.create("http://" + host + resource)) + .header("Date", date) + .header("Content-Type", contentType) + .header("Authorization", "AWS " + s3Key + ":" + signature); + + + switch (method) { + case "DELETE": + requestBuilder.DELETE(); + break; + case "GET": + requestBuilder.GET(); + break; + case "PUT": + requestBuilder.PUT(HttpRequest.BodyPublishers.ofString(body != null ? body : "")); + break; + case "POST": + requestBuilder.POST(HttpRequest.BodyPublishers.ofString(body != null ? body : "")); + break; + default: + throw new IllegalArgumentException("Unsupported HTTP method: " + method); + } + + return requestBuilder.build(); + } + + private static String generateSignature(String method, String contentType, String date, String resource, String s3Secret) throws Exception { + String stringToSign = method + "\n" + + "\n" + // MD5 - not used for DELETE requests + contentType + "\n" + + date + "\n" + + resource; + + Mac mac = Mac.getInstance("HmacSHA1"); + SecretKeySpec secretKey = new SecretKeySpec(s3Secret.getBytes(StandardCharsets.UTF_8), "HmacSHA1"); + mac.init(secretKey); + + byte[] hash = mac.doFinal(stringToSign.getBytes(StandardCharsets.UTF_8)); + return Base64.getEncoder().encodeToString(hash); + } + +} diff --git a/config-data-executor/src/main/java/org/micord/controller/ApiController.java b/config-data-executor/src/main/java/org/micord/controller/ApiController.java new file mode 100644 index 0000000..5b61141 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/controller/ApiController.java @@ -0,0 +1,78 @@ +package org.micord.controller; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.List; + +import org.micord.models.DownloadCSVRequest; +import org.micord.service.ApiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.io.InputStreamResource; +import org.springframework.core.io.Resource; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +/** + * REST Controller for API operations. + */ +@RestController +@RequestMapping("/api") +public class ApiController { + + @Autowired + private ApiService apiService; + + @PostMapping("/block") + public ResponseEntity block(@RequestBody List ids) throws FileNotFoundException { + apiService.process("block", ids); + return ResponseEntity.ok(""); + } + + @PostMapping("/unblock") + public ResponseEntity unblock(@RequestBody List ids) throws FileNotFoundException { + + apiService.process("unblock", ids); + return ResponseEntity.ok(""); + } + + @PostMapping("/removeFromSystem") + public ResponseEntity removeFromSystem(@RequestBody List ids) + throws FileNotFoundException { + + apiService.process("removeFromSystem", ids); + return ResponseEntity.ok(""); + } + + @PostMapping("/removeFromCallList") + public ResponseEntity removeFromCallList(@RequestBody List ids) + throws FileNotFoundException { + apiService.process("removeFromCallList", ids); + return ResponseEntity.ok(""); + } + + @PostMapping("/downloadCSV") + public ResponseEntity downloadCSV(@RequestBody DownloadCSVRequest request) + throws IOException { + + File csvFile = apiService.download("downloadCSV", request); + InputStreamResource resource = new InputStreamResource(new FileInputStream(csvFile)); + + return ResponseEntity.ok() + .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=" + csvFile.getName()) + .contentType(MediaType.parseMediaType("text/csv")) + .contentLength(csvFile.length()) + .body(resource); + } + + @GetMapping("/listDownloadTypes") + public ResponseEntity listDownloadTypes() + throws FileNotFoundException { + List downloadCSVTypes = apiService.getDownloadTypes("downloadCSV"); + + return ResponseEntity.ok(downloadCSVTypes); + } +} diff --git a/config-data-executor/src/main/java/org/micord/enums/RequestArgumentType.java b/config-data-executor/src/main/java/org/micord/enums/RequestArgumentType.java new file mode 100644 index 0000000..66e9048 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/enums/RequestArgumentType.java @@ -0,0 +1,19 @@ +package org.micord.enums; + +import lombok.Getter; + +/** + * @author Maksim Tereshin + */ +@Getter +public enum RequestArgumentType { + SQL("SQL"), + AQL("AQL"), + S3("S3"); + + private final String type; + + RequestArgumentType(String type) { + this.type = type; + } +} diff --git a/config-data-executor/src/main/java/org/micord/models/AqlConnectionParams.java b/config-data-executor/src/main/java/org/micord/models/AqlConnectionParams.java new file mode 100644 index 0000000..e40210b --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/AqlConnectionParams.java @@ -0,0 +1,50 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlElement; + +/** + * @author Maksim Tereshin + */ +@Setter +public class AqlConnectionParams { + + private String host; + private int port; + private String username; + private String password; + private String database; + private String collection; + + @XmlElement(name = "Host") + public String getHost() { + return host; + } + + @XmlElement(name = "Port") + public int getPort() { + return port; + } + + @XmlElement(name = "Username") + public String getUsername() { + return username; + } + + @XmlElement(name = "Password") + public String getPassword() { + return password; + } + + @XmlElement(name = "Database") + public String getDatabase() { + return database; + } + + @XmlElement(name = "Collection") + public String getCollection() { + return collection; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/AqlRequest.java b/config-data-executor/src/main/java/org/micord/models/AqlRequest.java new file mode 100644 index 0000000..ba26178 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/AqlRequest.java @@ -0,0 +1,42 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlElement; +import jakarta.xml.bind.annotation.XmlElementWrapper; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @author Maksim Tereshin + */ +@Setter +public class AqlRequest extends BaseRequest { + + private AqlConnectionParams aqlConnectionParams; + private List aqlRequestCollections; + + @XmlElement(name = "AqlConnectionParams") + public AqlConnectionParams getAqlConnectionParams() { + return aqlConnectionParams; + } + + @XmlElementWrapper(name = "AqlRequestCollections") + @XmlElement(name = "AqlRequestCollection") + public List getAqlRequestCollections() { + return aqlRequestCollections; + } + + public List getReadCollections() { + return aqlRequestCollections.stream() + .filter(collection -> collection.getType() != null && collection.getType().contains("read")) + .collect(Collectors.toList()); + } + + public List getWriteCollections() { + return aqlRequestCollections.stream() + .filter(collection -> collection.getType() != null && collection.getType().contains("write")) + .collect(Collectors.toList()); + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/AqlRequestCollection.java b/config-data-executor/src/main/java/org/micord/models/AqlRequestCollection.java new file mode 100644 index 0000000..54e905f --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/AqlRequestCollection.java @@ -0,0 +1,27 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlAttribute; +import jakarta.xml.bind.annotation.XmlValue; + +/** + * @author Maksim Tereshin + */ +@Setter +public class AqlRequestCollection { + + private String type; + private String collectionName; + + @XmlAttribute(name = "type") + public String getType() { + return type; + } + + @XmlValue + public String getCollectionName() { + return collectionName; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/BaseRequest.java b/config-data-executor/src/main/java/org/micord/models/BaseRequest.java new file mode 100644 index 0000000..f8f80e9 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/BaseRequest.java @@ -0,0 +1,29 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlElement; +import jakarta.xml.bind.annotation.XmlSeeAlso; +import java.util.List; + +/** + * @author Maksim Tereshin + */ +@Setter +@XmlSeeAlso({SqlRequest.class, S3Request.class, AqlRequest.class}) +public abstract class BaseRequest { + + private List requestArguments; + private String requestURL; + + @XmlElement(name = "RequestArgument") + public List getRequestArguments() { + return requestArguments; + } + + @XmlElement(name = "RequestURL") + public String getRequestURL() { + return requestURL; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/CachedConfig.java b/config-data-executor/src/main/java/org/micord/models/CachedConfig.java new file mode 100644 index 0000000..1c19cbb --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/CachedConfig.java @@ -0,0 +1,21 @@ +package org.micord.models; + +import java.nio.file.attribute.FileTime; + +public class CachedConfig { + private final Requests config; + private final FileTime modifiedTime; + + public CachedConfig(Requests config, FileTime modifiedTime) { + this.config = config; + this.modifiedTime = modifiedTime; + } + + public Requests getConfig() { + return config; + } + + public FileTime getModifiedTime() { + return modifiedTime; + } +} diff --git a/config-data-executor/src/main/java/org/micord/models/DownloadCSVRequest.java b/config-data-executor/src/main/java/org/micord/models/DownloadCSVRequest.java new file mode 100644 index 0000000..93dea19 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/DownloadCSVRequest.java @@ -0,0 +1,13 @@ +package org.micord.models; + + +import lombok.Data; + +import java.util.List; + +@Data +public class DownloadCSVRequest { + private String type; + private List ids; +} + diff --git a/config-data-executor/src/main/java/org/micord/models/DownloadRequest.java b/config-data-executor/src/main/java/org/micord/models/DownloadRequest.java new file mode 100644 index 0000000..744eb36 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/DownloadRequest.java @@ -0,0 +1,23 @@ +package org.micord.models; + +import jakarta.xml.bind.annotation.XmlElement; +import lombok.Setter; + + +@Setter +public class DownloadRequest extends BaseRequest { + + private SqlConnectionParams sqlConnectionParams; + private String downloadRequestType; + + @XmlElement(name = "SqlConnectionParams") + public SqlConnectionParams getSqlConnectionParams() { + return sqlConnectionParams; + } + + @XmlElement(name = "DownloadRequestType") + public String getDownloadRequestType() { + return downloadRequestType; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/Request.java b/config-data-executor/src/main/java/org/micord/models/Request.java new file mode 100644 index 0000000..2fa59cf --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/Request.java @@ -0,0 +1,29 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlElement; +import jakarta.xml.bind.annotation.XmlSeeAlso; +import java.util.List; + +/** + * @author Maksim Tereshin + */ +@Setter +@XmlSeeAlso({SqlRequest.class, S3Request.class}) +public abstract class Request { + + private List requestArguments; + private String requestURL; + + @XmlElement(name = "RequestArgument") + public List getRequestArguments() { + return requestArguments; + } + + @XmlElement(name = "RequestURL") + public String getRequestURL() { + return requestURL; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/RequestArgument.java b/config-data-executor/src/main/java/org/micord/models/RequestArgument.java new file mode 100644 index 0000000..d05d7a6 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/RequestArgument.java @@ -0,0 +1,44 @@ +package org.micord.models; + +import lombok.Setter; +import org.micord.enums.RequestArgumentType; + +import jakarta.xml.bind.annotation.XmlAttribute; +import jakarta.xml.bind.annotation.XmlElement; +import jakarta.xml.bind.annotation.XmlElementWrapper; +import jakarta.xml.bind.annotation.XmlRootElement; +import java.util.List; + +/** + * @author Maksim Tereshin + */ +@Setter +@XmlRootElement(name = "RequestArgument") +public class RequestArgument { + + private RequestArgumentType type; + private String requestArgumentName;; + private String requestArgumentURL; + private SqlConnectionParams requestArgumentConnectionParams; + + @XmlAttribute(name = "type") + public RequestArgumentType getType() { + return type; + } + + @XmlElement(name = "RequestArgumentName") + public String getRequestArgumentName() { + return requestArgumentName; + } + + @XmlElement(name = "RequestArgumentURL") + public String getRequestArgumentURL() { + return requestArgumentURL; + } + + @XmlElement(name = "RequestArgumentConnectionParams") + public SqlConnectionParams getRequestArgumentConnectionParams() { + return requestArgumentConnectionParams; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/Requests.java b/config-data-executor/src/main/java/org/micord/models/Requests.java new file mode 100644 index 0000000..61f9575 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/Requests.java @@ -0,0 +1,41 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlElement; +import jakarta.xml.bind.annotation.XmlRootElement; +import java.util.List; + +/** + * @author Maksim Tereshin + */ +@Setter +@XmlRootElement(name = "Requests") +public class Requests { + + private List sqlRequests; + private List aqlRequests; + private List s3Requests; + private List downloadRequests; + + @XmlElement(name = "DownloadRequest") + public List getDownloadRequests() { + return downloadRequests; + } + + @XmlElement(name = "SqlRequest") + public List getSqlRequests() { + return sqlRequests; + } + + @XmlElement(name = "AqlRequest") + public List getAqlRequests() { + return aqlRequests; + } + + @XmlElement(name = "S3Request") + public List getS3Requests() { + return s3Requests; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/S3ConnectionParams.java b/config-data-executor/src/main/java/org/micord/models/S3ConnectionParams.java new file mode 100644 index 0000000..2c6abb9 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/S3ConnectionParams.java @@ -0,0 +1,56 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlElement; + +/** + * @author Maksim Tereshin + */ +@Setter +public class S3ConnectionParams { + + private String s3Key; + private String s3Secret; + private String host; + private String port; + private String contentType; + private String method; + private String body; + + @XmlElement(name = "S3Key") + public String getS3Key() { + return s3Key; + } + + @XmlElement(name = "S3Secret") + public String getS3Secret() { + return s3Secret; + } + + @XmlElement(name = "Host") + public String getHost() { + return host; + } + + @XmlElement(name = "Port") + public String getPort() { + return port; + } + + @XmlElement(name = "ContentType") + public String getContentType() { + return contentType; + } + + @XmlElement(name = "Method") + public String getMethod() { + return method; + } + + @XmlElement(name = "Body") + public String getBody() { + return body; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/S3Request.java b/config-data-executor/src/main/java/org/micord/models/S3Request.java new file mode 100644 index 0000000..c690271 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/S3Request.java @@ -0,0 +1,20 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlElement; + +/** + * @author Maksim Tereshin + */ +@Setter +public class S3Request extends BaseRequest { + + private S3ConnectionParams s3ConnectionParams; + + @XmlElement(name = "S3ConnectionParams") + public S3ConnectionParams getS3ConnectionParams() { + return s3ConnectionParams; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/models/SqlConnectionParams.java b/config-data-executor/src/main/java/org/micord/models/SqlConnectionParams.java new file mode 100644 index 0000000..70a053c --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/SqlConnectionParams.java @@ -0,0 +1,66 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlElement; + +@Setter +public class SqlConnectionParams { + + private String jdbcHost; + private String jdbcPort; + private String jdbcUsername; + private String jdbcPassword; + private String jdbcDriverClassName; + private String jdbcXaDataSourceClassName; + private String jdbcXaDataSourcePoolSize; + private String jdbcDatabase; + private String jdbcXaDataSourceBorrowConnectionTimeout; + + + @XmlElement(name = "JdbcXaDataSourceBorrowConnectionTimeout") + public String getJdbcXaDataSourceBorrowConnectionTimeout() { + return jdbcXaDataSourceBorrowConnectionTimeout; + } + + @XmlElement(name = "JdbcXaDataSourcePoolSize") + public String getJdbcXaDataSourcePoolSize() { + return jdbcXaDataSourcePoolSize; + } + + @XmlElement(name = "JdbcHost") + public String getJdbcHost() { + return jdbcHost; + } + + @XmlElement(name = "JdbcPort") + public String getJdbcPort() { + return jdbcPort; + } + + @XmlElement(name = "JdbcUsername") + public String getJdbcUsername() { + return jdbcUsername; + } + + @XmlElement(name = "JdbcPassword") + public String getJdbcPassword() { + return jdbcPassword; + } + + @XmlElement(name = "JdbcDriverClassName") + public String getJdbcDriverClassName() { + return jdbcDriverClassName; + } + + @XmlElement(name = "JdbcXaDataSourceClassName") + public String getJdbcXaDataSourceClassName() { + return jdbcXaDataSourceClassName; + } + + @XmlElement(name = "JdbcDatabase") + public String getJdbcDatabase() { + return jdbcDatabase; + } + +} \ No newline at end of file diff --git a/config-data-executor/src/main/java/org/micord/models/SqlRequest.java b/config-data-executor/src/main/java/org/micord/models/SqlRequest.java new file mode 100644 index 0000000..68f8bc4 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/models/SqlRequest.java @@ -0,0 +1,20 @@ +package org.micord.models; + +import lombok.Setter; + +import jakarta.xml.bind.annotation.XmlElement; + +/** + * @author Maksim Tereshin + */ +@Setter +public class SqlRequest extends BaseRequest { + + private SqlConnectionParams sqlConnectionParams; + + @XmlElement(name = "SqlConnectionParams") + public SqlConnectionParams getSqlConnectionParams() { + return sqlConnectionParams; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/service/ApiService.java b/config-data-executor/src/main/java/org/micord/service/ApiService.java new file mode 100644 index 0000000..f9cab61 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/service/ApiService.java @@ -0,0 +1,64 @@ +package org.micord.service; + +import org.micord.models.*; +import org.micord.utils.ConfigLoader; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.*; +import java.util.stream.Collectors; + +@Service +public class ApiService { + + @Autowired + private ConfigLoader configLoader; + + @Autowired + private RequestService sqlAndAqlService; + + @Autowired + private DownloadService downloadService; + + public void process(String methodName, List ids) throws FileNotFoundException { + Requests config = getConfig(methodName); + sqlAndAqlService.processSqlAndAqlRequests(config, ids); + } + + public File download(String methodName, DownloadCSVRequest request) throws IOException { + Requests config = getConfig(methodName); + + String type = request.getType(); + List ids = Optional.ofNullable(request.getIds()) + .filter(list -> !list.isEmpty()) + .orElse(null); + + DownloadRequest selectedRequest = config.getDownloadRequests().stream() + .filter(r -> r.getDownloadRequestType().equals(type)) + .findFirst() + .orElseThrow(() -> new IllegalArgumentException("Invalid download type: " + type)); + + return downloadService.download(selectedRequest, ids); + } + + public List getDownloadTypes(String methodName) throws FileNotFoundException { + Requests config = getConfig(methodName); + + return config.getDownloadRequests().stream() + .map(DownloadRequest::getDownloadRequestType) + .collect(Collectors.toList()); + } + + private Requests getConfig(String methodName) throws FileNotFoundException { + Optional optionalConfig = configLoader.loadConfigIfModified(methodName); + + if (optionalConfig.isEmpty()) { + throw new FileNotFoundException("Configuration for method " + methodName + " could not be loaded."); + } + + return optionalConfig.get(); + } +} diff --git a/config-data-executor/src/main/java/org/micord/service/DownloadService.java b/config-data-executor/src/main/java/org/micord/service/DownloadService.java new file mode 100644 index 0000000..9e4d9c9 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/service/DownloadService.java @@ -0,0 +1,157 @@ +package org.micord.service; + +import org.micord.config.DatabaseConnection; +import org.micord.models.DownloadRequest; +import org.micord.models.RequestArgument; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.io.IOException; +import java.io.PrintWriter; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +@Service +public class DownloadService { + + private static final Logger logger = LoggerFactory.getLogger(DownloadService.class); + + public File download(DownloadRequest selectedRequest, List ids) { + + return processDownloadRequest(selectedRequest, ids); + } + + private File processDownloadRequest(DownloadRequest request, List ids) { + Map query = buildSqlQuery(request, ids); + try (Connection connection = DatabaseConnection.getConnection( + request.getSqlConnectionParams())) { + String requestURL = (String) query.get("requestURL"); + + List results = executeSqlQuery(connection, requestURL); + + File csvFile = File.createTempFile("download-", ".csv"); + + try (PrintWriter writer = new PrintWriter(csvFile)) { + for (String[] row : results) { + writer.println(String.join(",", row)); + } + } catch (IOException e) { + logger.error("Failed to write to CSV file", e); + } + + return csvFile; + + } + catch (SQLException | IOException e) { + logger.error("SQL execution failed for query: {}", query, e); + } + return null; + } + + private Map buildSqlQuery(DownloadRequest request, List ids) { + Map resultMap = new HashMap<>(); + String endpointArguments; + + String requestURL = request.getRequestURL(); + + if (ids == null || ids.isEmpty()) { + resultMap.put("requestURL", requestURL + .replace("${DB}", request.getSqlConnectionParams().getJdbcDatabase()) + .replace("where id in ${endpointArguments}", "")); + + return resultMap; + } + + if (requestURL.contains(":=")) { + endpointArguments = "'{" + ids.stream() + .map(String::trim) + .collect(Collectors.joining(", ")) + "}'"; + } else { + endpointArguments = "(" + ids.stream() + .map(s -> "'" + s.trim() + "'") + .collect(Collectors.joining(", ")) + ")"; + } + + if (request.getRequestArguments() != null && !request.getRequestArguments().isEmpty()) { + for (RequestArgument argument : request.getRequestArguments()) { + + if (argument.getRequestArgumentConnectionParams() != null) { + try (Connection connection = DatabaseConnection.getConnection( + argument.getRequestArgumentConnectionParams())) { + String query = argument.getRequestArgumentURL(); + List result = fetchFileListFromDatabaseSQL(connection, query); + + resultMap.put("ids", result); + + + if (result != null && !result.isEmpty()) { + String resultSet = "(" + result.stream() + .map(s -> "'" + s.trim() + "'") + .collect(Collectors.joining(", ")) + ")"; + + requestURL = requestURL.replace("${" + argument.getRequestArgumentName() + "}", resultSet); + + } + + } + catch (SQLException e) { + logger.error("Failed to execute query for RequestArgument", e); + } + } + } + } + + resultMap.put("requestURL", requestURL + .replace("${DB}", request.getSqlConnectionParams().getJdbcDatabase()) + .replace("${endpointArguments}", endpointArguments)); + + return resultMap; + } + + private List executeSqlQuery(Connection connection, String query) throws SQLException { + List results = new ArrayList<>(); + try (PreparedStatement stmt = connection.prepareStatement(query); + ResultSet resultSet = stmt.executeQuery()) { + + int columnCount = resultSet.getMetaData().getColumnCount(); + // Add headers + String[] headers = new String[columnCount]; + for (int i = 1; i <= columnCount; i++) { + headers[i - 1] = resultSet.getMetaData().getColumnName(i); + } + results.add(headers); + + // Add rows + while (resultSet.next()) { + String[] row = new String[columnCount]; + for (int i = 1; i <= columnCount; i++) { + row[i - 1] = resultSet.getString(i); + } + results.add(row); + } + } + return results; + } + + public List fetchFileListFromDatabaseSQL(Connection connection, String query) + throws SQLException { + List results = new ArrayList<>(); + try (PreparedStatement stmt = connection.prepareStatement(query); + ResultSet rs = stmt.executeQuery()) { + while (rs.next()) { + results.add(rs.getString(1)); // Fetch the first column + } + } + return results; + } + +} diff --git a/config-data-executor/src/main/java/org/micord/service/RequestService.java b/config-data-executor/src/main/java/org/micord/service/RequestService.java new file mode 100644 index 0000000..abbe32b --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/service/RequestService.java @@ -0,0 +1,329 @@ +package org.micord.service; + +import java.net.HttpURLConnection; +import java.net.http.HttpClient; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.*; +import java.util.concurrent.CompletableFuture; +import java.util.stream.Collectors; + +import com.arangodb.ArangoCursor; +import com.arangodb.ArangoDBException; +import com.arangodb.ArangoDatabase; +import com.arangodb.entity.StreamTransactionEntity; +import com.arangodb.model.AqlQueryOptions; +import com.arangodb.model.StreamTransactionOptions; +import org.micord.config.ArangoDBConnection; +import org.micord.config.DatabaseConnection; +import org.micord.config.S3HttpConnection; +import org.micord.enums.RequestArgumentType; +import org.micord.models.*; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +/** + * @author Maksim Tereshin + */ +@Service +public class RequestService { + + private static final Logger logger = LoggerFactory.getLogger(RequestService.class); + + @Autowired + private HttpClient httpClient; + + public void processS3Requests(List s3Requests, List ids) { + if (s3Requests != null) { + s3Requests.forEach(request -> { + List> futures = ids.stream() + .map(id -> CompletableFuture.runAsync(() -> processS3Request(request, id))) + .toList(); + + CompletableFuture.allOf(futures.toArray(new CompletableFuture[0])) + .thenRun(() -> logger.info("Successfully processed all S3 requests.")) + .exceptionally(ex -> { + logger.error("Failed to process S3 requests", ex); + return null; + }); + }); + } + } + + private void processS3Request(S3Request request, String id) { + try { + List files = new ArrayList<>(); + + if (request.getRequestArguments() != null && !request.getRequestArguments().isEmpty()) { + for (RequestArgument argument : request.getRequestArguments()) { + try (Connection connection = DatabaseConnection.getConnection( + argument.getRequestArgumentConnectionParams())) { + String query = argument.getRequestArgumentURL(); + List result = fetchFileListFromDatabaseSQL(connection, query); + if (result != null && !result.isEmpty()) { + files.addAll(result); + } + } + catch (SQLException e) { + logger.error("Failed to execute query for RequestArgument", e); + } + } + } + + files.forEach(file -> { + HttpRequest httpRequest; + try { + httpRequest = S3HttpConnection.buildHttpRequest(request, file); + } + catch (Exception e) { + throw new RuntimeException(e); + } + + httpClient.sendAsync(httpRequest, HttpResponse.BodyHandlers.ofString()) + .thenAccept(response -> { + if (response.statusCode() == HttpURLConnection.HTTP_NO_CONTENT + || response.statusCode() == HttpURLConnection.HTTP_OK) { + logger.info("Successfully deleted object for ID {}", id); + } + else { + logger.error("Failed to delete object for ID {}. Response code: {}", id, + response.statusCode() + ); + } + }) + .exceptionally(ex -> { + logger.error("Failed to delete object for ID {}", id, ex); + return null; + }); + }); + + } + catch (Exception e) { + logger.error("Failed to process S3 request for id: {}", id, e); + } + } + + @Transactional + public void processSqlAndAqlRequests(Requests config, List ids) { + if (config.getSqlRequests() != null) { + for (SqlRequest request : config.getSqlRequests()) { + processSqlRequests(request, ids); + } + } + + if (config.getAqlRequests() != null) { + for (AqlRequest request : config.getAqlRequests()) { + processAqlRequests(request, ids); + } + } + processS3Requests(config.getS3Requests(), ids); + } + + private void processSqlRequests(SqlRequest request, List ids) { + Map query = buildSqlQuery(request, ids); + try (Connection connection = DatabaseConnection.getConnection( + request.getSqlConnectionParams())) { + String requestURL = (String) query.get("requestURL"); + executeSqlQuery(connection, requestURL); + + List queryIds = (List) query.get("ids"); + if (queryIds != null && !queryIds.isEmpty()) { + ids.addAll(queryIds); + } else { + logger.warn("No IDs found for the query"); + } + + logger.info("Successfully executed query {} for IDs: ({})", requestURL, String.join(", ", ids)); + } + catch (SQLException e) { + logger.error("SQL execution failed for query: {}", query, e); + } + } + +private Map buildSqlQuery(SqlRequest request, List ids) { + Map resultMap = new HashMap<>(); + String endpointArguments; + + String requestURL = request.getRequestURL(); + + if (requestURL.contains(":=")) { + endpointArguments = "'{" + ids.stream() + .map(String::trim) + .collect(Collectors.joining(", ")) + "}'"; + } else { + endpointArguments = "(" + ids.stream() + .map(s -> "'" + s.trim() + "'") + .collect(Collectors.joining(", ")) + ")"; + } + + if (request.getRequestArguments() != null && !request.getRequestArguments().isEmpty()) { + for (RequestArgument argument : request.getRequestArguments()) { + + if (argument.getRequestArgumentConnectionParams() != null) { + try (Connection connection = DatabaseConnection.getConnection( + argument.getRequestArgumentConnectionParams())) { + String query = argument.getRequestArgumentURL(); + List result = fetchFileListFromDatabaseSQL(connection, query); + + resultMap.put("ids", result); + + + if (result != null && !result.isEmpty()) { + String resultSet = "(" + result.stream() + .map(s -> "'" + s.trim() + "'") + .collect(Collectors.joining(", ")) + ")"; + + requestURL = requestURL.replace("${" + argument.getRequestArgumentName() + "}", resultSet); + + } + + } + catch (SQLException e) { + logger.error("Failed to execute query for RequestArgument", e); + } + } + } + } + + resultMap.put("requestURL", requestURL + .replace("${DB}", request.getSqlConnectionParams().getJdbcDatabase()) + .replace("${endpointArguments}", endpointArguments)); + + return resultMap; +} + + + private boolean executeSqlQuery(Connection connection, String query) throws SQLException { + try (PreparedStatement stmt = connection.prepareStatement(query)) { + return stmt.execute(); + } + } + + public List fetchFileListFromDatabaseSQL(Connection connection, String query) + throws SQLException { + List results = new ArrayList<>(); + try (PreparedStatement stmt = connection.prepareStatement(query); + ResultSet rs = stmt.executeQuery()) { + while (rs.next()) { + results.add(rs.getString(1)); // Fetch the first column + } + } + return results; + } + + private void processAqlRequests(AqlRequest request, List ids) { + ArangoDatabase arangoDb = ArangoDBConnection.getConnection(request.getAqlConnectionParams()); + + // TODO: implement for multiple request arguments + RequestArgument requestArgument = request.getRequestArguments().get(0); + List aqlCollectionRead = request.getReadCollections().stream() + .map(AqlRequestCollection::getCollectionName) + .toList(); + String aqlCollectionWrite = request.getWriteCollections().stream() + .map(AqlRequestCollection::getCollectionName) + .findFirst().orElseGet(null); + + StreamTransactionEntity tx = null; + try { + StreamTransactionOptions options = new StreamTransactionOptions() + .writeCollections(aqlCollectionWrite) + .readCollections(aqlCollectionRead.toArray(new String[0])); + + tx = arangoDb.beginStreamTransaction(options); + String transactionId = tx.getId(); + + logger.info("Stream transaction started with ID: {}", transactionId); + + Map entities = executeSelectAqlRequest(arangoDb, aqlCollectionWrite, requestArgument, ids, transactionId); + executeMainAqlRequest(arangoDb, aqlCollectionWrite, request.getRequestURL(), entities, transactionId); + + arangoDb.commitStreamTransaction(transactionId); + logger.info("Stream transaction with ID {} committed successfully", transactionId); + + } + catch (ArangoDBException e) { + if (tx != null) { + arangoDb.abortStreamTransaction(tx.getId()); + logger.error("Stream transaction with ID {} aborted due to an error", tx.getId(), e); + } + throw new RuntimeException("Failed to execute AQL request within a stream transaction", e); + } + + logger.info("Successfully executed AQL request"); + } + + private Map executeSelectAqlRequest(ArangoDatabase arangoDb, + String aqlCollectionWrite, + RequestArgument requestArgument, + List ids, String transactionId) { + Map entities = new HashMap<>(); + + String url = requestArgument.getRequestArgumentURL(); + RequestArgumentType type = requestArgument.getType(); + + if (type == RequestArgumentType.AQL) { + Map bindVars = new HashMap<>(); + bindVars.put("ids", ids); + + AqlQueryOptions aqlQueryOptions = new AqlQueryOptions().streamTransactionId(transactionId); + + try (ArangoCursor cursor = arangoDb.query(url, Map.class, bindVars, aqlQueryOptions)) { + while (cursor.hasNext()) { + Map result = cursor.next(); + + for (Map.Entry entry : result.entrySet()) { + String key = entry.getKey(); + Object entityValue = entry.getValue(); + + entities.put(key, entityValue); + } + } + } + catch (Exception e) { + logger.error("Failed to execute AQL url", e); + } + } else if (type == RequestArgumentType.SQL) { + if (requestArgument.getRequestArgumentConnectionParams() != null) { + try (Connection connection = DatabaseConnection.getConnection( + requestArgument.getRequestArgumentConnectionParams())) { + String query = requestArgument.getRequestArgumentURL(); + List result = fetchFileListFromDatabaseSQL(connection, query); + + entities.put(aqlCollectionWrite, result); + } + catch (SQLException e) { + logger.error("Failed to execute query for RequestArgument", e); + } + } + } + + return entities; + } + + private void executeMainAqlRequest(ArangoDatabase arangoDb, String aqlCollectionWrite, String requestURL, + Map entities, String transactionId) { + if (entities == null || entities.isEmpty()) { + logger.warn("No entities found for main AQL request."); + return; + } + + Map bindVars = new HashMap<>(); + // TODO: verify correctness of received entities and compare keys + Object writeEntity = entities.get(aqlCollectionWrite); + bindVars.put("ids", entities); + + AqlQueryOptions aqlQueryOptions = new AqlQueryOptions().streamTransactionId(transactionId); + + arangoDb.query(requestURL, null, bindVars, aqlQueryOptions); + + logger.info("Successfully removed {}: {}", aqlCollectionWrite, writeEntity); + } + +} diff --git a/config-data-executor/src/main/java/org/micord/utils/ConfigLoader.java b/config-data-executor/src/main/java/org/micord/utils/ConfigLoader.java new file mode 100644 index 0000000..9347ed3 --- /dev/null +++ b/config-data-executor/src/main/java/org/micord/utils/ConfigLoader.java @@ -0,0 +1,70 @@ +package org.micord.utils; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.attribute.FileTime; +import java.util.Map; +import java.util.Optional; +import java.util.concurrent.ConcurrentHashMap; +import java.util.logging.Level; +import java.util.logging.Logger; +import jakarta.xml.bind.JAXBContext; +import jakarta.xml.bind.JAXBException; +import jakarta.xml.bind.Unmarshaller; + +import org.micord.models.CachedConfig; +import org.micord.models.Requests; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Component; + +/** + * @author Maksim Tereshin + */ +@Component +public class ConfigLoader { + + private static final Logger LOGGER = Logger.getLogger(ConfigLoader.class.getName()); + private static final Map cachedConfigs = new ConcurrentHashMap<>(); + + @Value("${configDirectory}") + private String configDirectory; + + public Optional loadConfigIfModified(String methodName) { + String fileName = methodName + ".xml"; + + if (configDirectory == null) { + LOGGER.log(Level.SEVERE, "No configuration directory found for method: " + methodName); + return Optional.empty(); + } + + try { + File configFile = new File(configDirectory + File.separator + fileName); + Path configFilePath = configFile.toPath(); + FileTime currentModifiedTime = Files.getLastModifiedTime(configFilePath); + CachedConfig cachedConfig = cachedConfigs.getOrDefault(methodName, null); + + if (cachedConfig == null || !currentModifiedTime.equals(cachedConfig.getModifiedTime())) { + // Load the updated configuration + JAXBContext jaxbContext = JAXBContext.newInstance(Requests.class); + Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); + Requests loadedConfig = (Requests) unmarshaller.unmarshal(configFile); + cachedConfigs.put(methodName, new CachedConfig(loadedConfig, currentModifiedTime)); + return Optional.of(loadedConfig); + } + else { + return Optional.of(cachedConfigs.get(methodName).getConfig()); + } + + } + catch (IOException e) { + LOGGER.log(Level.SEVERE, "Failed to load configuration file: " + fileName, e); + return Optional.empty(); // Return empty if there is an IO error + } + catch (JAXBException e) { + LOGGER.log(Level.SEVERE, "Failed to unmarshal configuration file: " + fileName, e); + return Optional.empty(); // Return empty if unmarshalling fails + } + } +} diff --git a/config-data-executor/src/main/resources/application.yml b/config-data-executor/src/main/resources/application.yml new file mode 100644 index 0000000..789b675 --- /dev/null +++ b/config-data-executor/src/main/resources/application.yml @@ -0,0 +1 @@ +configDirectory: C:\work\ervu-secret\config\cde-xml diff --git a/config.md b/config.md new file mode 100644 index 0000000..7455710 --- /dev/null +++ b/config.md @@ -0,0 +1,749 @@ +# ミ榧ソミクムミーミスミクミオ ミソミームミーミシミオムびミセミイ ミコミセミスムミクミウムτミームミクミク ムミオムミイミオムミー ミソムミクミサミセミカミオミスミクミケ + +ミ、ミーミケミサ /standalone/configuration/standalone.xml + +## ミ榧アム禍クミオ + +- `webbpm.security.login.case_sensitive`. Default value = true. ミ渙ームミーミシミオムび ミセムひイミオムミーム紗禍クミケ ミキミー ムムσイムムひイミクムひオミサム糊スミセムムび ミコ ムミオミウミクムムびム ミソムミク ミセミアムミーミアミセムひコミオ ミサミセミウミクミスミー ミソミセミサム糊キミセミイミームひオミサム. + - true - Login ミク login, ミセミアムミーミアミームび巾イミーム紗びム ミコミーミコ ムミーミキミスム巾オ ミサミセミウミクミスム. + - false - Login ミク login, ミセミアムミーミアミームび巾イミーミオムびム ミコミーミコ ミセミエミクミス ミク ムひセム ミカミオ ミサミセミウミクミス. +- `webbpm.db.pool_size`. ミ旃σカミオミス ムひセミサム糊コミセ ミエミサム `webbpm.mode` = development. +- `webbpm.mode`. ミミオミカミクミシ ムミーミアミセムび ミソムミクミサミセミカミオミスミクム. ミ厘スミームミオミスミクム - development, production. + - development - ミイ ム采ひセミシ ムミオミカミクミシミオ ミクムミソミセミサム糊キムσオムびム ムミセミオミエミクミスミオミスミクミオ ミコ ミ岱 ミソムミセミオミコムひー, ミキミーミエミーミスミスミセミオ ミイ Studio. + - production - ミイ ム采ひセミシ ムミオミカミクミシミオ ミクムミソミセミサム糊キムσオムびム ムミセミオミエミクミスミオミスミクミオ ミコ ミ岱 ミソムミセミオミコムひー, ミキミーミエミーミスミスミセミオ ム ミソミセミシミセム禾袴 jndi ミクミシミオミスミク. + +## jBPM + +- `com.arjuna.ats.arjuna.allowMultipleLastResources` +- `webbpm.jbpm.audit-log.disabled` - ムミサミーミウ, ミセムひイミオムミーム紗禍クミケ ミキミー ミイミコミサム紗ミオミスミクミオ/ミセムひコミサム紗ミオミスミクミオ ミームσエミクムひー jBPM +- `webbpm.jbpm.cleaner_cron` - cron ムミームミソミクムミーミスミクミオ ミーミイムひセミシミームひクムミオムミコミセミケ ミセムミクムムひコミク ミ岱 JBPM, ミソミセ ムσシミセミサムミーミスミクム "-" ム.ミオ. ミイム巾コミサム紗ミオミス. ミ樮ミクム禍ーム紗びム ミスミオミキミーミイミオムム威オミスミスム巾オ ミソムミセムミオムムム. +- `webbpm.jbpm.cleaner_timeout` - ミイムミオミシム, ムミソムτムび ミコミセムひセムミセミオ ミソムミセムミオムム ムムミクムひーミオムびム ムτムひームミオミイム威クミシ. ミ渙セ ムσシミセミサムミーミスミクム - 10 ムミームミセミイ. +- `webbpm.jbpm.finished_process_cleaner_cron` - cron ムミームミソミクムミーミスミクミオ ミーミイムひセミシミームひクムミオムミコミセミケ ミセムミクムムひコミク ミームσエミクムひー ミソムミセムミオムムミセミイ ミイ ミ岱 JBPM, ミソミセ ムσシミセミサムミーミスミクム "-" + ム.ミオ. ミイム巾コミサム紗ミオミス +- `webbpm.jbpm.finished_process_cleaner_timeout` - ミイムミオミシム, ムミソムτムび ミコミセムひセムミセミオ ミソムミセムミオムム ムムミクムひーミオムびム ムτムひームミオミイム威クミシ. ミ渙セ ムσシミセミサムミーミスミクム - 10 ムミームミセミイ. + +ミ湲ミクミシミオム: + +```xml + + + +``` + +### jBPM Runtime Strategy + +ミ漬セミキミシミセミカミスム巾オ ミイミームミクミーミスムび runtime strategy: + +- SINGLETON +- PER_REQUEST (ミキミスミームミオミスミクミオ ミソミセ ムσシミセミサムミーミスミクム) +- PER_PROCESS_INSTANCE +- PER_CASE + +ミ湲ミクミシミオム: + +```xml + +``` + +## ミ。ミソミセムミセミア ミームτひオミスムひクムミクミコミームミクミク + +- authentication.method - ムミソミセムミセミア ミームτひオミスムひクムミクミコミームミクミク. ミ渙セミエミエミオムミカミクミイミーミオミシム巾オ ムミソミセムミセミアム ミームτひオミスムひクムミクミコミームミクミク: form, kerberos, cert_over_db, cert_over_ldap + +### ミ渙セ ミサミセミウミクミスム ミク ミソミームミセミサム + +ミ湲ミクミシミオム ミコミセミスムミクミウムτミームミクミク: + +```xml + +``` + +### ミ渙セ ムミオムムひクムミクミコミームび + +- cert_over_db - ミソムミセミイミオムミコミー ミスミーミサミクムミクム ミソミセミサム糊キミセミイミームひオミサム ミイ ミアミーミキミオ ミエミーミスミスム錦 ミアミオミキミセミソミームミスミセムムひク +- cert_over_ldap - ミソムミセミイミオムミコミー ミスミーミサミクムミクム ミソミセミサム糊キミセミイミームひオミサム ミイ ミアミーミキミオ ミエミーミスミスム錦 ミアミオミキミセミソミームミスミセムムひク ミク ミイ LDAP + +ミ湲ミクミシミオムム: + +```xml + + +``` + +ミ渙ームミーミシミオムび ムミソミセムミセミアミー ミームτひオミスムひクムミクミコミームミクミク authentication.method ミエミセミサミカミオミス ミアム錦び ムひーミコミカミオ ムτムひーミスミセミイミサミオミス ミスミー ミコミサミクミオミスムびミコミセミケ ムミームムひク ミソムミクミサミセミカミオミスミクム ミイ app-config.json + +ミ「ミーミコミカミオ ミエミサム ミームτひオミスムひクムミクミコミームミクミク ミソミセ ムミオムムひクムミクミコミームび ミスムσカミスム ムミイミセミケムムひイミー ミエミサム ムムミーミスミクミサミクム禍ー ムミオムムひクムミクミコミームひセミイ: + +- certificate.keystore.location - ミソムτび ミエミセ java key store. Key store - ム采ひセ ムムミーミスミクミサミクム禍オ ミエミセミイミオムミオミスミスム錦 ムミオムムひクムミクミコミームひセミイ, ム ミソミセミシミセム禾袴 ミコミセムひセムム錦 ミシミセミカミスミセ ミソムミセミイミオムミクムび ミコミセムミスミオミイミセミケ ムミオムムひクムミクミコミーム. ミ。ミオムムひクムミクミコミーム ムτムひーミスミーミイミサミクミイミーミオムびム ム ミソミセミシミセム禾袴 ミコミセミシミーミスミエム: + + ```text + keytool -importcert -alias myAlias -file Example.cer -keystore exampleKeyStore + ``` + +- certificate.keystore.password - ミソミームミセミサム ミエミサム keystore, ムτムひーミスミセミイミサミオミスミスム巾ケ ミソムミク ミクミシミソミセムムひオ ムミオムムひクムミクミコミームひー + +ミ湲ミクミシミオムム: + +```xml + + +``` + +### Kerberos + +ミ渙セミサムτミクムひオ ミセム ミーミエミシミクミスミクムムびミームひセムミー Kerberos .keytab ムミーミケミサ, ミクミキ ミコミセムひセムミセミウミセ ミコミセミシミーミスミエミセミケ `klist -k http.keytab` ミシミセミカミスミセ ミソミセミサムτミクムび ムミソミクムミセミコ principal-ミセミイ +ミ湲ミセミイミオムミクムび ムτミソミオム威スミセムムび ミーミイムひセムミクミキミームミクミク principal-ミー ミシミセミカミスミセ ミコミセミシミーミスミエミセミケ `kinit -t -i http.keytab %principal%`. +ミ +ムミサムτミーミオ ムτミソミオム威スミセミケ ミーミイムひセムミクミキミームミクミク ミコミセミシミーミスミエミー `klist` ミイ ミコミームミオムムひイミオ default principal ミコミセムひセムム巾シ ミソムミセミイミセミエミクミサミームム ミーミイムひセムミクミキミームミクム. +ミ渙セムミサミオ ム采ひセミウミセ ミイ standalone.xml ミソミセミソムミーミイミクムび ミソミームミーミシミオムび `app.service-principal` ミスミー principal, ミコミセムひセムム巾シ ムτミソミオム威スミセ ミーミイムひセムミクミキミセミイミーミサミクムム. principal ミクミシミオミオム ムミセムミシミーム: `HTTP/%hostname%@%REALM%` + +ミ湲ミクミシミオム ミコミセミスムミクミウムτミームミクミク: + +```xml + + + +``` + +- app.service-principal. ミ湲ミクミシミオム - HTTP/oleg-rxserver.alt.dom@ALT.DOM +- app.keytab-location - ムミームミソミセミサミセミカミオミスミクミオ keytab ムミーミケミサミー. ミ湲ミクミシミオム - ${jboss.home.dir}/ +- http.keytab. + +ミ「ミーミコミカミオ ミスミオミセミアムミセミエミクミシミセ ミイ ミスミームムびミセミケミコミーム ミアムミームσキミオムミー ミスミー ミコミサミクミオミスムひオ ミキミーミエミームび ミソミームミーミシミオムび `network.negotiate-auth.trusted-uris` ミキミーミエミームび ミキミスミームミオミスミクミオ `.%domain%`. +ミ湲ミクミシミオム: + +```xml +.ALT.DOM +``` + +### Ldap + +ミ績τひオミスムひクムミクミコミームミクム ミソムミセミクムムミセミエミクム ミソミセムムミオミエムムひイミセミシ ミサミセミウミクミスミー ミク ミソミームミセミサム ムミクミスムムミセミスミクミキミクムミセミイミーミスミスミセミウミセ ミソミセミサム糊キミセミイミームひオミサム Ldap. +ミ嶢セミウミクミス ミク ミソミームミセミサム ミイミイミオミエミオミスミスム巾オ ミイ ムミセムミシム ミイムミセミエミー, ミアムσエムτ ミソムミセミイミオムミオミスム ムミオムミイミクムミセミシ Ldap. + +ミ湲ミクミシミオム ミコミセミスムミクミウムτミームミクミク: + +```xml + + + + + +``` + +#### ミ斷ームムびミセミケミコミー ムミオムミイミオムミー ミソムミクミサミセミカミオミスミクミケ ミエミサム ムミーミアミセムび ム Kerberos + +1. ムミセミキミエミームび ムτミオムひスム巾オ ミキミーミソミクムミク ミイ ミエミセミシミオミスミオ: + + - ムひオムムひセミイム巾オ ミエミサム ミソムミセミイミオムミコミク ムミーミアミセムひセムミソミセムミセミアミスミセムムひク ムムσスミコムミクミセミスミーミサミー (ミソミセミサム糊キミセミイミームひオミサミク ミエミセミシミオミスミー, ミソミセムムひセミイム巾オ ム肖禍クミコミク): + + `User1 pass1 user1@example.com` + + `User2 pass2 user2@example.com` + + - ムミオムミイミクムミスムτ ミエミサム ミエミセムムびσソミー ムミオムミイミクムミー(ミソムミクミサミセミカミオミスミクム) ミコ MS AD - (ミソミセミサム糊キミセミイミームひオミサム ミエミセミシミオミスミー - ムミスム肖び ムτムひームミオミイミーミスミクミオ ミソミームミセミサム, ミセミウムミーミスミクムミオミスミクミオ ミソミセ ミイムミオミシミオミスミク ミエミオミケムムひイミクム, ミソミセムムひセミイム巾ケ ム肖禍クミコ): + + `serviceUser servicePass serviceuser@example.com` + + --- + +2. ミキミーミイミオムムひク ムτミオムひスムτ ミキミーミソミクムム ミシミーム威クミスム `appserver.machine.name` (fqdn-ミクミシム ムミオムミイミクムミー) ミイ AD (ミイムムτミスムτ, ミコミーミコ ミキミーミソミクムム ミイ computer) ミク ミイ DNS (A-ミキミーミソミクムム) + + `appserver.machine.name 10.250.216.91` + +3. ムミウミオミスミオムミクムミセミイミームび keytab (ムτひクミサミクムひー ktpass) ミエミサム ミームτひオミスムひクムミクミコミームミクミク ムミオムミイミクムミセミイ(ミソムミクミサミセミカミオミスミクム) ミエミサム ミオミエミクミスミセミケ ムひセムミコミク ミイムミセミエミー - `serviceUser` - ム ミクミシミオミスミオミシ test.file.name.keytab - ミソムミクミイム紹キミーミイ ミコ ミスミオミケ ミソミセミサム糊キミセミイミームひオミサム serviceUser + + ミスミーミソムミクミシミオム, ムひーミコ: + + ``` + ktpass -princ http/appserverMachineName.example.com@example.com -mapuser example.com\serviceUser -pass "ミソミームミセミサム契ムσキ_serviceUser" -crypto All -ptype KRB5_NT_PRINCIPAL -out "ミソムτび契ミコ_ミエミクムミオミコムひセムミクミク_ミイム巾ウムムσキミコミク_ムミーミケミサミー\test.file.name.keytab" + ``` + +##### Kerberos FAQ + +- ミ ムミサムτミーミオ, ミオムミサミク ミーミイムひセムミクミキミームミクム ミスミオ ミソムミセムミセミエミクム ミク ミイ ミサミセミウミーム ムミオムミイミオムミー ミソムミクミサミセミカミオミスミクミケ ミソムミクムムτびムひイムσオム ムミサミオミエムτ紗禍クミケ ミイム巾イミセミエ: + + ``` + 2019-05-14 05:33:36,588 INFO [security.controller.KerberosAuthenticationController] (default task-3) Authentication request header Authorization not exists + 2019-05-14 05:33:36,588 INFO [security.controller.KerberosAuthenticationController] (default task-3) Authentication object is not presented + ``` + + ミスミオミセミアムミセミエミクミシミセ ミソムミセミイミオムミクムび ミスミームムびミセミケミコム ミアムミームσキミオムミー firefox `network.negotiate-auth.trusted-uris`, ミセミスミー ミエミセミサミカミスミー ムミセミセムひイミオムびムひイミセミイミームび ミエミセミシミオミスム ミクミキ principal-ミー. + ミ頒サム ム采ひセミウミセ ミイ ミソミセミクムミコミセミイムτ ムムびミセミコム ミアムミームσキミオムミー ミイミイミセミエミクミシ "about:config", ミイ ミセムひコムム巾イム威オミシムム ミセミコミスミオ ミスミーミカミクミシミーミオミシ "accept with risk and continue", ミイ ミソミセミクムミコミセミイミセミケ ムムびミセミコミオ ミセムひコムム巾イム威オミケムム ムムびミーミスミクムム ミイミイミオムムひク `network.negotiate-auth.trusted-uris`. + ミ湲ミクミシミオム: ミエミサム principal-ミー `HTTP/oleg-rxserver.alt.dom@ALT.DOM` ミスミームムびミセミケミコミー ミイ ミアムミームσキミオムミオ ミエミセミサミカミスミー ミアム錦び `.alt.dom`, ミソムミクミサミセミカミオミスミクミオ ミイ ミアムミームσキミオムミオ ミエミセミサミカミスミセ ミセムひコムム巾イミームび袴ム ミソミセ `http:\\oleg-rxserver.alt.dom:8080\...` + +- ミオムミサミク ミイ ミサミセミウミーム ムミオムミイミオムミー ミソムミクミサミセミカミオミスミクミケ ミオムムび ミセム威クミアミコミー: + + ```xml + 2019-05-13 14:13:07,095 WARN [org.springframework.security.kerberos.web.authentication.SpnegoAuthenticationProcessingFilter] (default task-1) Negotiate Header was invalid: Negotiate TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAKAGNFAAAADw==: org.springframework.security.authentication.BadCredentialsException: Kerberos validation not successful + ... + + Caused by: java.security.PrivilegedActionException: GSSException: Defective token detected (Mechanism level: GSSHeader did not find the right tag) + at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.8.0_211] + at javax.security.auth.Subject.doAs(Subject.java:422) [rt.jar:1.8.0_211] + at org.springframework.security.kerberos.authentication.sun.SunJaasKerberosTicketValidator.validateTicket(SunJaasKerberosTicketValidator.java:68) [spring-security-kerberos-core-1.0.1.RELEASE.jar:1.0.1.RELEASE] + ... 66 more + Caused by: GSSException: Defective token detected (Mechanism level: GSSHeader did not find the right tag) + at sun.security.jgss.GSSHeader.(GSSHeader.java:97) [rt.jar:1.8.0_211] + at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:306) [rt.jar:1.8.0_211] + at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:285) [rt.jar:1.8.0_211] + at org.springframework.security.kerberos.authentication.sun.SunJaasKerberosTicketValidatorKerberosValidateAction.run(SunJaasKerberosTicketValidator.java:170) [spring-security-kerberos-core-1.0.1.RELEASE.jar:1.0.1.RELEASE] + at org.springframework.security.kerberos.authentication.sun.SunJaasKerberosTicketValidatorKerberosValidateAction.run(SunJaasKerberosTicketValidator.java:153) [spring-security-kerberos-core-1.0.1.RELEASE.jar:1.0.1.RELEASE] + ... 69 more + ``` + + ミスミオミセミアムミセミエミクミシミセ ミソムミセミイミオムミクムび ミソムミーミイミクミサム糊スミセムムび ムσコミーミキミーミスミスミセミウミセ ミイ standalone.xml principal-ミー. + +### ミ墟セミシミアミクミスミームミクミク ミスミオムミコミセミサム糊コミクム ムミソミセムミセミアミセミイ ミームτひオミスムひクムミクミコミームミクミク + +ミ湲ミクミサミセミカミオミスミクミオ ミシミセミカミオム ミセミアムミーミアミームび巾イミームび ミキミーミソムミセムム ミスミー ミスミオムミコミセミサム糊コミセ ムミソミセムミセミアミセミイ ミームτひオミスムひクムミクミコミームミクミク. ミ頒サム ム采ひセミウミセ ミスミオミセミアムミセミエミクミシミセ ミソミオムミオミクムミクムミサミクムび ミスムσカミスム巾オ ミソムミセムミクミサミク ムミオムミオミキ ミキミーミソム肖びτ. +ミ湲ミクミシミオムム: + +```xml + + + + +``` + +### ミ柘ミオミシム ミカミクミキミスミク ムひセミコミオミスミセミイ ミームτひオミスムひクムミクミコミームミクミク + +```xml + + + +``` + +`webbpm.security.access_token.duration.minutes` - ミセミソムミクミセミスミーミサム糊スム巾ケ ミソミームミーミシミオムび (ミキミスミームミオミスミクミオ ミソミセ ムσシミセミサムミーミスミクム 60), ミイムミオミシム ミカミクミキミスミク ミイ ミシミクミスムτひーム, ムミコミセミサム糊コミセ ミアムσエミオム ミエミオミケムムひイミクムひオミサミオミス ムひセミコミオミス, ミソミセムミサミオ ミクムムひオムミオミスミクム ム采ひセミウミセ ミイムミオミシミオミスミク ムひセミコミオミス ミアムσエミオム ミセミアミスミセミイミサム岱ス `webbpm.security.refresh_token.duration.days` - ミセミソムミクミセミスミーミサム糊スム巾ケ ミソミームミーミシミオムび (ミキミスミームミオミスミクミオ ミソミセ ムσシミセミサムミーミスミクム 30), ミイムミオミシム ミカミクミキミスミク ミイ ミエミスム肖, ミソミセムミサミオ ミクムムひオムミオミスミクム ム采ひセミウミセ ミイムミオミシミオミスミク ム ミソミセムミサミオミエミスミオミウミセ ミセミアミスミセミイミサミオミスミクム, ミソミセミサム糊キミセミイミームひオミサム ミアムσエミオム ミスミオミセミアムミセミエミクミシミセ ミソミセミイムひセムミスミセ ミイミセミケムひク `webbpm.security.session.active.count` - ミセミソムミクミセミスミーミサム糊スム巾ケ ミソミームミーミシミオムび (ミキミスミームミオミスミクミオ ミソミセ ムσシミセミサムミーミスミクム 1), ミコミセミサミクムミオムムひイミセ ムミセムムミーミスム紹オミシム錦 ミイ ミアミーミキム ムひセミコミオミスミセミイ ミセミアミスミセミイミサミオミスミクム (ミコミセミサミクムミオムムひイミセ ミーミコムひクミイミスム錦 ムミオムムミクミケ) + +ミ湲ミクミシミオムミーミスミクム. + +- ミ斷オミサム糊キム ミクムミソミセミサム糊キミセミイミームび ミセミエミスミセミイムミオミシミオミスミスミセ ミソムミセムミクミサミク cert_over_db c cert_over_ldap ミク kerberos ム form. + +## ミ。ミクミスムムミセミスミクミキミームミクム ミソミセミサム糊キミセミイミームひオミサミオミケ ム LDAP + +```xml + + + + + + + +``` + +ミ斷ームムびミセミケミコミク ミソミセミエミコミサム紗ミオミスミクム ミコ LDAP: + +- `ldap.auto.sync.enabled` - ミイミコミサム紗ミーミオム/ミセムひコミサム紗ミーミオム ミーミイムひセミシミームひクムミオムミコムτ ムミクミスムムミセミスミクミキミームミクム ム LDAP +- `ldap.synchronizer.cron` - cron ムミームミソミクムミーミスミクミオ ミーミイムひセミシミームひクムミオムミコミセミケ ムミクミスムムミセミスミクミキミームミクミク ム LDAP +- `ldap.url`. ミ湲ミクミシミオム - ldap://localhost:389 +- `ldap.base`. ミ湲ミクミシミオム - dc=alt,dc=dom +- `ldap.username`. ミ湲ミクミシミオム - uid=test,ou=People,dc=alt,dc=dom +- `ldap.password` +- `webbpm.ldap.implementation`. ミ頒セミソムτミコミーミオムびム ミエミイミー ミキミスミームミオミスミクム: open-ldap ミク active-directory. + +## WEBGUARD + +ミ頒サム ムミクミスムムミセミスミクミキミームミクミク ミソミセミサム糊キミセミイミームひオミサミオミケ ミイ WEBGUARD ミク ミエミサム ミコミセムムミオミコムひスミセミケ ムミーミアミセムび ミーミエミシミクミスミコミク ミスミオミセミアムミセミエミクミシミセ ムσコミーミキミームび ミスミームムびミセミケミコミク ムミセミオミエミクミスミオミスミクム ミコ REST API WEBGUARD + +```xml + + + +``` + +## ミ。ムひームひクムムひクミコミー + +### jbpm hibernate statistics + +ミ。ムひームひクムムひクミコミー hibernate jbpm ミエミセムムびσソミスミー ミソミセ jmx ミソミセ ミソムτひク `org.hibernate:type=Stats,name=jbpm`. +ミ渙セミサミスム巾ケ ムミソミクムミセミコ ミソミームミーミシミオムびミセミイ ミシミセミカミスミセ ミソミセムミシミセムびミオムび ムミオムミオミキ jconsole. + +ミ渙セ ムσシミセミサムミーミスミクム ミイミコミサム紗ミオミスミー, ミセムひコミサム紗ミクムび ミシミセミカミスミセ ミスミームムびミセミケミコミセミケ `webbpm.jbpm.hibernate_statistics.enabled`: + +```xml + +``` + +## Schedulers ミソミセ ミセムミクムムひコミオ ミアミーミキム *jbpm*. + +- ミ樮ミクムムひコミー ムひーミアミサミクム ミームσエミクムひー ミセム ミキミーミイミオムム威オミスミスム錦 ミソムミセムミオムムミセミイ ミソミセ ミクムムひオムミオミスミクミク ムひーミケミシミームτひー + + - `webbpm.jbpm.finished_process_cleaner_cron` - ミキミーミエミーミオム ムミームミソミクムミーミスミクミオ (*spring cron*), ミオムミサミク ミスミームムびミセミケミコミー ミスミオ ミキミーミエミーミスミー - ミエミカミセミア ミスミオ ミキミーミソムτミコミーミオムびム + - `webbpm.jbpm.finished_process_cleaner_timeout` - ムひーミケミシミームτ ミイ ムミームミーム (*ムミオミサミセミオ ムミクムミサミセミイミセミオ ミキミスミームミオミスミクミオ*) + + ミ湲ミクミシミオム: + + ```xml + + + ``` + + ## ミ榧ウムミーミスミクムミオミスミクム ミエミサム ミキミーミソムミセムミセミイ ミ岱. + +- `webbpm.db.query_limit_enabled` - ムミサミーミウ, ミセムひイミオムミーム紗禍クミケ ミキミー ミイム巾イミセミエ ムミセミセミアム禍オミスミクミケ ミセ ミソムミオミイム錦威オミスミクミク ミサミクミシミクムひセミイ ミスミー ミコミセミサミクムミオムムひイミセ ミイミセミキミイムミーム禍ーミオミシム錦 ミキミーミソミクムミオミケ. ミ渙セ ムσシミセミサムミーミスミクム - false. + +- `webbpm.db.select_records_max_limit` - ミシミーミコムミクミシミーミサム糊スム巾ケ ミサミクミシミクム ミイミセミキミイムミーム禍ーミオミシム錦 ムムびミセミコ ミエミサム ミキミーミソムミセムミセミイ ミイ ミ岱, ミソムミク ミソムミオミイム錦威オミスミクミク/ムミーミイミオミスムムひイミオ ミエミーミスミスミセミウミセ ミサミクミシミクムひー ミアムσエミオム ミイム巾アムミセム威オミスミー ミセム威クミアミコミー (*ムミオミサミセミオ ムミクムミサミセミイミセミオ ミキミスミームミオミスミクミオ*). ミ渙セ ムσシミセミサムミーミスミクム - 100000 + +- `webbpm.db.select_records_min_limit` - ミシミクミスミクミシミーミサム糊スム巾ケ ミサミクミシミクム ミイミセミキミイムミーム禍ーミオミシム錦 ムムびミセミコ ミエミサム ミキミーミソムミセムミセミイ ミイ ミ岱, ミソムミク ミソムミオミイム錦威オミスミクミク/ムミーミイミオミスムムひイミオ ミエミーミスミスミセミウミセ ミサミクミシミクムひー ミイ ミサミセミウミク ミアムσエミオム ミイム巾イミオミエミオミス warning (*ムミオミサミセミオ ムミクムミサミセミイミセミオ ミキミスミームミオミスミクミオ*). ミ渙セ ムσシミセミサムミーミスミクム - 1000 + +- `webbpm.db.execution_time_threshold`. The threshold for time of executing a statement. ミ。ミクムムひオミシミー ミイム巾イミセミエミクム ムミセミセミアム禍オミスミクミオ ミイ ミサミセミウミク ミソムミク ミソムミオミイム錦威オミスミクミク. ミ頒オミケムムひイムσオム ミエミサム ミキミーミソムミセムミセミイ, ムミセミキミエミーミスミスム錦 ミイ jOOQ. ミ渙セ ムσシミセミサムミーミスミクム - 1000 ミシミクミサミサミクムミオミコムσスミエ + +- `webbpm.db.result_read_time_threshold`. The threshold for time of fetching a set of records from a ResultSet. + . ミ。ミクムムひオミシミー ミイム巾イミセミエミクム ムミセミセミアム禍オミスミクミオ ミイ ミサミセミウミク ミソムミク ミソムミオミイム錦威オミスミクミク. ミ頒オミケムムひイムσオム ミエミサム ミキミーミソムミセムミセミイ, ムミセミキミエミーミスミスム錦 ミイ jOOQ. ミ渙セ ムσシミセミサムミーミスミクム - 50 ミシミクミサミサミクムミオミコムσスミエ + +- `webbpm.db.results_count_threshold`. ミ。ミクムムひオミシミー ミイム巾イミセミエミクム ムミセミセミアム禍オミスミクミオ ミイ ミサミセミウミク ミソムミク ミソムミオミイム錦威オミスミクミク. ミ頒オミケムムひイムσオム ミエミサム ミキミーミソムミセムミセミイ, ムミセミキミエミーミスミスム錦 ミイ jOOQ. ミ渙セ ムσシミセミサムミーミスミクム - 1000 ミキミーミソミクムミオミケ + +- `webbpm.db.full_time_threshold`. ミ榧ウムミーミスミクムミオミスミクミオ ミスミー ミソミセミサミスミセミオ ミイムミオミシム ミイム巾ソミセミサミスミオミスミクム ミキミーミソムミセムミー. ミ。ミクムムひオミシミー ミイム巾イミセミエミクム ムミセミセミアム禍オミスミクミオ ミイ ミサミセミウミク ミソムミク ミソムミオミイム錦威オミスミクミク. ミ頒オミケムムひイムσオム ミエミサム ミキミーミソムミセムミセミイ, ムミセミキミエミーミスミスム錦 ミイ jOOQ. ミ渙セ ムσシミセミサムミーミスミクム sum(webbpm.db.result_read_time_threshold, webbpm.db.execution_time_threshold) ミシミクミサミサミクムミオミコムσスミエ + +- `webbpm.db.query_timeout`. ミ榧ウムミーミスミクムミオミスミクミオ ミスミー ミイムミオミシム ミイム巾ソミセミサミスミオミスミクム ミキミーミソムミセムミー. ミ湲ミク ミソムミオミイム錦威オミスミクミク ミキミーミソムミセム ミアムσエミオム ミセムひコミサミセミスミオミス. ミ頒オミケムムひイムσオム ミエミサム ミキミーミソムミセムミセミイ, ムミセミキミエミーミスミスム錦 ミイ jOOQ ミイ dev ムミオミカミクミシミオ. ミ渙セ ムσシミセミサムミーミスミクム 120 ムミオミコムσスミエ. + +ミ湲ミクミシミオム: + +```xml + + + + + + + + +``` + +## ミ頒セミアミーミイミサミオミスミクミオ ミイミオムムミクミク ミソムミクミサミセミカミオミスミクム ミイ URL ミソムミク ミキミーミソムミセムミーム ミコ backend-ム + +ミ湲ミク ムミアミセムミコミオ ミソムミクミサミセミカミオミスミクム ム ミソムミセムミクミサミオミシ enable-version-in-url ミイ URL ミアムσエミオム ミエミセミアミーミイミサム肖び袴ム ミイミオムムミクム ミソムミクミサミセミカミオミスミクム, ムσコミーミキミーミスミスミーム ミイ pom.xml. +ミィミーミアミサミセミス URL: + +``` +//:/backend/ +``` + +## ミ漬コミサム紗ミオミスミクミオ ムミオミウミクムムびミームミクミク ミソミセミサム糊キミセミイミームひオミサム + +1. ミ」ミコミーミカミクムひオ ミコミセミスムミクミウムτミームミクム ミソミセムムひセミイミセミウミセ ムミオムミイミオムミー ミエミサム ミセムひソムミーミイミコミク ミソミクムミオミシ ム ミソミセミエムひイミオムミカミエミオミスミクミオミシ ムミオミウミクムムびミームミクミク. +ミ頒サム ム采ひセミウミセ ミイ ムミーミケミサミオ ミソムミセミオミコムひー *jndi-resources.xml* ミエミセミアミーミイム袴ひオ ムミオムムτム SmtpConfiguration. +ミィミーミアミサミセミス: +``` +{"host":"host","port":1234,"login":"user","password":"password","from":"email_from","senderName":"sender_name","isSecured":true} +``` +ミ渙セムムひセミイム巾ケ ムミオムミイミオム - ミキミームミオミウミクムムびミクムミセミイミーミスミスム巾ケ ミーミコムびσーミサム糊スム巾ケ ミソミセムムひセミイム巾ケ ミーミエムミオム. ミ ミソミセミサミオ password ミスムσカミスミセ ムσコミーミキム巾イミームび ミスミオ ミソミームミセミサム ミエミサム ミイムミセミエミー ミイ ミソミセムムび, ミー ムミセミキミエミームび ミソミームミセミサム ミエミサム ミソムミクミサミセミカミオミスミクミケ ミイ ムτミオムひコミオ ミソミセムムび ミク ムσコミーミキミームび ミオミウミセ. +2. ミ頒サム ミイミコミサム紗ミオミスミクム ムミオミウミクムムびミームミクミク ミエミセミアミーミイム袴ひオ ミイ *standalone.xml* ムミイミセミケムムひイミセ +``` + +``` +3. ミ「ミーミコミカミオ ミイ *standalone.xml* ムσコミーミカミクムひオ ムミオムムτム ミエミサム ミセムひソムミーミイミコミク ミソミクムミオミシ ミエミサム ミソミセミエムひイミオムミカミエミオミスミクム ムミオミウミクムムびミームミクミク (ミクミキ ミソ.1) +``` + +``` +4. ミ湲ミク ミスミオミセミアムミセミエミクミシミセムムひク, ミセムびミオミエミーミコムひクムムσケムひオ ム威ーミアミサミセミス ミソミクムム糊シミー ミエミサム ミソミセミエムひイミオムミカミエミオミスミクム ムミオミウミクムムびミームミクミク +(resources/src/main/resources/mail/confirmation.html) + +5. ミ湲ミク ミスミオミセミアムミセミエミクミシミセムムひク, ミセムびミオミエミーミコムひクムムσケムひオ ム威ーミアミサミセミス ミソミクムム糊シミー ミエミサム ミイミセムムムひーミスミセミイミサミオミスミクム ミソミームミセミサム +(resources/src/main/resources/mail/reset_password.html) + + +#### ミ斷ームムびミセミケミコミー ミアムミームσキミオムミー ミエミサム ミイムミセミエミー ミイ ムミクムムひオミシム ム ミソミセミシミセム禾袴 Kerberos + +1. ミ厘ーミソムτムひクムひオ ミアムミームσキミオム firefox. +2. ミ ミーミエムミオムミスミセミケ ムムびミセミコミオ ミイミイミオミエミクムひオ about:config, ミスミーミカミームび ミコミスミセミソミコム "ム ミソムミクミスミクミシミーム ミスミー ムミオミアム ムミクムミコ" +3. ミ。 ミソミセミシミセム禾袴 ミソミセミクムミコミー ミスミーミケミエミクムひオ ミソミームミーミシミオムび network.negotiate-auth.trusted-uris ミク ミイ ミコミームミオムムひイミオ ミキミスミームミオミスミクム ミイミイミオムムひク ミエミセミシミオミス(ミスミーミソムミクミシミオム ミエミサム ミエミセミシミオミスミー example.com ミスミーミエミセ ミイミイミオムムひク .example.com) +4. ミ樮ひコムミセミケムひオ ミイ ミアムミームσキミオムミオ ミソムミクミサミセミカミオミスミクミオ. ミ湲ミクミシミオム [http://app.example.com/](http://app.example.com/) . ミ湲ミクミサミセミカミオミスミクミオ ミエミセミサミカミスミセ ミセムひコムム錦び袴ム ミアミオミキ ミキミーミソムミセムミー ミサミセミウミクミスミー/ミソミームミセミサム + +## ミ漬セムムムひーミスミセミイミサミオミスミクミオ ムムびムσコムびτム ミ岱 + +ミ斷ー ミセムミスミセミイミオ ミ岱 ミソムミセミオミコムひー ム ミソミセミシミセム禾袴 jOOQ ミウミオミスミオムミクムムτ紗びム Java ミコミサミームムム ミエミサム ミコミーミカミエミセミウミセ ミセミアム諌オミコムひー ミ岱. ミュムひセ ミソムミセミクムムミセミエミクム ミソミセ ミスミーミカミームひクム ミコミスミセミソミコミク ミ榧アミスミセミイミクムび ミスミー ミソミーミスミオミサミク ミ岱 ミイ ムムびσエミクミク. ミ湲ミク ミスミオミセミアムミセミエミクミシミセムムひク ミシミセミカミスミセ ムムミセムミシミクムミセミイミームび DDL ミスミー ミセムミスミセミイミオ ミエミーミスミスム錦 ミコミサミームムミセミイ. ミ湲ミクミシミオム ミコミサミームムミー ミエミサム ミウミオミスミオムミームミクミク DDL + +``` +package ru.cg.webbpm.test_project.db_beans; + +import org.jooq.*; +import org.jooq.impl.*; + +public class Main { + public static void main (String args []) { + DefaultConfiguration defaultConfiguration = new DefaultConfiguration(); + defaultConfiguration.setSQLDialect(SQLDialect.POSTGRES); + Queries ddl = DSL.using(defaultConfiguration).ddl(DefaultCatalog.DEFAULT_CATALOG); + + for (Query query : ddl.queries()) { + System.out.println(query); + } + } +} +``` + +** ミ漬斷侑慴籍斷侑: ** + +- ム采ひクミシ ムミソミセムミセミアミセミシ ミスミオミサム糊キム ミイミセムムムひーミスミセミイミクムび ムムσスミコムミクミク/ミソムミセムミオミエムτム ミ岱 + +ムミシ. ムひーミコミカミオ [Generating DDL from objects](https://www.jooq.org/doc/latest/manual/sql-building/ddl-statements/generating-ddl/) + +## ミミームミソムミオミエミオミサミオミスミスム巾ケ ミコム采 (Hazelcast) + +ミ ミソミサミームびミセムミシミオ ミソミセミエミコミサム紗ミオミス ミコム采. ミ榧ス ミクムミソミセミサム糊キムσオムびム ミエミサム ミソミセミエムムム帯ひー ミコミセミサミクムミオムムひイミー ミソミセミサム糊キミセミイミームひオミサミオミケ ミク ミコム采威クムミセミイミーミスミクム ミソミセミエムミクムムひオミシム ミアミオミキミセミソミームミスミセムムひク + +- `webbpm.cache.hazelcast.port` - ミイムミセミエム肖禍クミケ ミソミセムム hazelcast. ミソミセ ミエミオムミセミサムび 5701. +- ミ榧アム紹キミームひオミサム糊スミセミオ ミキミーミエミームび ミセミエミスミセ ミクミキ ミエミイムτ ムミサミオミエムτ紗禍クム ミソミームミーミシミオムびミセミイ + - `webbpm.cache.hazelcast.hosts` - ムミソミクムミセミコ ムミセムムひセミイ ムミオムミイミオムミセミイ ミソムミクミサミセミカミオミスミクミケ. + webbpm.cache.hazelcast.hosts = hostname1,hostname2,hostname3 + - `webbpm.cache.hazelcast.kubernetes.service_name` - ミクミシム ムミオムミイミクムミー ミイ ムムミオミエミオ kubernetes, + ミクムミソミセミサム糊キムσオミシム巾ケ ミエミサム ミセミアミスミームムσカミオミスミクム ミエムムσウミクム ミソミセミエミセミイ. ミ渙セミエムミセミエミクム ミコミーミコ ムムびミームひオミウミクム ミセミアミスミームムσカミオミスミクム, ミオムミサミク ミクムミソミセミサム糊キムσオムびム + kubernetes +- `webbpm.cache.hazelcast.outbound_port_definitions` - ミクムムミセミエム肖禍クミオ ミソミセムムび hazelcast. ミソミセ ミエミオムミセミサムび ミスミオ ミキミーミエミーミスミセ, ムミクムムひオミシミー ムミーミシミー ミイム巾アミクムミーミオム ムミイミセミアミセミエミスム巾オ ミソミセムムび. ミ厘ーミエミームび ミエミクミーミソミーミキミセミス 5801 - 5820 +- `webbpm.cache.hazelcast.backup_count`. ミ旃σカミスム ムムひセミアム ミコミセミウミエミー ムミオムミイミオム ミイム巾コミサム紗ミーミオムびム ミアム巾サ ミエミセムムびσソミオミス ミアミオミコミーミソ. ミ篇ミサミク ミソムミオミエミソミセミサミーミウミーミオムびム ミイム巾コミサム紗ミームび ミスミオムミコミセミサム糊コミセ ムミオムミイミオムミセミイ ミキミー ムミーミキ, ムひセ ミスムσカミスミセ ムσイミオミサミクムミクムび. + ミ頒ーミスミスム巾ケ ミアミオミコミーミソ ミエミオミサミーミオム ミコミセミソミクミク ムミクミスムムミセミスミスミセ ム ミセムミスミセミイミスミセミケ ミキミーミソミクムム袴 ミク ミセミソミオムミームミクム ミキミーミソミクムミク ミカミエミオム ミソミセミコミー ミアムσエミオム ミキミーミソミクムミーミスミー ミイミオミキミエミオ. ミ慴セミカミスミセ ミエミオミサミームび ミアミオミコミーミソ ミームミクミスムムミセミスミスミセ, ミスミームムびミーミクミイミーミオムびム ムミオムミオミキ async_backup_count + ミソミセミエムミセミアミスミオミオ ミソムミセ ミアミオミコミーミソム [Hazelcast IMDG Reference Manual](https://docs.hazelcast.org/docs/3.11/manual/html-single/index.html#backing-up-maps) . ミソミセ ミエミオムミセミサムび 1 +- `webbpm.cache.hazelcast.async_backup_count` +- `webbpm.cache.hazelcast.public_address` +- `webbpm.cache.hazelcast.interfaces` + +ミ湲ミクミシミオム ミコミセミスムミクミウムτミームミクミク: + +```xml + + ` +``` + +## ミ渙セミエミコミサム紗ミオミスミクミオ ミコミセミシミソミセミスミオミスムび ミーミエムミオムミー ミイ ムミオミカミクミシミオ ミ寅籍 (ミ寅セムムσエミームムムひイミオミスミスム巾ケ ミーミエムミオムミスム巾ケ ムミオミオムムび) + +ミ斷オミセミアムミセミエミクミシミセ ミキミーミエミームび ミソミームミーミシミオムびム: + +- `gar.enable` - ムミサミーミウ, ミコミセムひセムム巾ケ ミイミコミサム紗ミーミオム/ミセムひコミサム紗ミーミオム ムミオムミイミクム ミエミサム ムミーミアミセムび ム ミ寅籍. ミ頒セミサミカミオミス ミアム錦び ミキミーミエミーミス ミエミサム ムミーミアミセムび ミコミセミシミソミセミスミオミスムび ミイ ムミオミカミクミシミオ ミ寅籍. ミ渙セ ムσシミセミサムミーミスミクム true, ミエミサム ミセムひコミサム紗ミオミスミクム ミキミーミエミームび false. +- `gar.elastic.url.host` - ムミセムム ミスミー ミコミセムひセムミセミシ ムミーミキミイミオムミスムτ elasticsearch. +- `gar.elastic.password` - ミソミームミセミサム ミエミサム ミームτひオミスムひクムミクミコミームミクミク elasticsearch. + +ミ頒セミソミセミサミスミクムひオミサム糊スム巾オ ミソミームミーミシミオムびム: + +- `gar.elastic.url.port` - ミソミセムム ミスミー ミコミセムひセムミセミシ ムミーミキミイミオムミスムτ elasticsearch. +- `gar.elastic.username` - ミサミセミウミクミス ミエミサム ミームτひオミスムひクムミクミコミームミクミク elasticsearch. + +ミ湲ミクミシミオム ミコミセミスムミクミウムτミームミクミク: + +```xml + + + +``` + +## ミ慴オムびミクミコミク + +ミ樮びミオム + +ミ樮びミオム ムミセミアミクムミーミオムびム ムミーミキ ミイ 30 ムミオミコムσスミエ ミソミセ ミエミオムミセミサムび, ミシミオミスム紹オムびム ミソミームミーミシミオムびミセミシ `webbpm.metrics.report_period_ms`. +ミ柘ミオ ミシミオムびミクミコミク ミクミエムτ ミキミー ミセムびミオムひスム巾ケ ミソミオムミクミセミエ, ミソミセムミサミオ ムミアミセムミー ミセムびミオムひー ミセミスミク ムミアムミームム巾イミーム紗びム. + +ミ渙セミサムτミクムび json ムミセ ミイムミオミシミク ミシミオムびミクミコミーミシミク ミシミセミカミスミセ ミソミセ ムτミサム `backend/metrics/v1/all` - ミシミオムびミクミコミク ミアムσエムτ ム ミソミセムミサミオミエミスミオミウミセ ムミセミアムミーミスミスミセミウミセ ミセムびミオムひー, ミキミーミソムミセム ミスミオ ムびミクミウミウミオムミクム ムミアミセム ミセムびミオムひー - ム采ひセ ミスミオミキミーミイミクムミクミシム巾オ ミセミソミオムミームミクミク. ミ樮びミオム ムミセミエミオムミカミクム ムひセミサム糊コミセ ミシミオムびミクミコミク ミソミセ ミコミセムひセムム巾シ ミアム巾サ ムミセミイミオムム威オミス ムミセムび ミアム ミセミエミクミス ミイム巾キミセミイ ミイ ミセムびミオムひスム巾ケ ミソミオムミクミセミエ. ミ「ミセ ミオムムび, ミオムミサミク ミコミーミコミーム-ムひセ ミセミソミオムミームミクム ミスミオ ミアム巾サミー ムミセミイミオムム威オミスミー ミイ ミセムびミオムひスム巾ケ ミソミオムミクミセミエ, ムひセ ムミセミセムひイミオムびムひイムτ紗禍ーム ミオミケ ミシミオムびミクミコミー ミスミオ ミソミセミソミーミエミオム ミイ ミセムびミオム - ミオミオ ミスミオ ミアムσエミオム ミイ json. + +### ミ厘スミームミオミスミクム ミシミオムびミクミコ + +ミ柘ミオ ミシミオムびミクミコミク ミクミエムτ ミキミー ミセムびミオムひスム巾ケ ミソミオムミクミセミエ, ミソミセムミサミオ ムミアミセムミー ミセムびミオムひー ミセミスミク ムミアムミームム巾イミーム紗びム. +ミ斷ーム ミイ ミセムミスミセミイミスミセミシ ミクミスムひオムミオムムτ紗 `callsCountSum`, `latencyMin`, `latencyAvg`, `latencyMax` + +- `callsCountSum` - ミコミセミサミクムミオムムひイミセ ミキミーミイミオムム威オミスミスム錦 ミイム巾キミセミイミセミイ +- `latencyMin` - ミシミクミスミクミシミーミサム糊スミセミオ ミイムミオミシム ミイム巾ソミセミサミスミオミスミクム +- `latencyAvg` - ムムミオミエミスミオミオ ミイムミオミシム ミイム巾ソミセミサミスミオミスミクム +- `latencyMax` - ミシミーミコムミクミシミーミサム糊スミセミオ ミイムミオミシム ミイム巾ソミセミサミスミオミスミクム +- `activeCallsCountMax` - ミコミセミサミクムミオムムひイミセ ミスミームミームび錦, ミスミセ ミオム禍オ ミスミオ ミキミーミイミオムム威オミスミスム錦 ミイム巾キミセミイミセミイ. +- `activeCallsLatencyMax` - ミエミサミクムひオミサム糊スミセムムび ムミーミシミセミウミセ ミエミセミサミウミセミウミセ ミオム禍オ ミスミオ ミキミーミイミオムム威オミスミスミセミウミセ ミイム巾キミセミイミー + +### ミ「ミオミコムτ禍クミオ ミシミオムびミクミコミク ミソムミクミサミセミカミオミスミクム + +- ミ渙セミサムτミオミスミクミオ ミコミセミスミスミオミコムひー ミクミキ ミソムσサミー + + - `webbpm.jbpm.db.connection.acquire` + - `webbpm.security.db.connection.acquire` + - `webbpm.db.connection.acquire` + +- ミ柘ミオミシム ム ミシミセミシミオミスムひー ミソミセミサムτミオミスミクム ミコミセミスミスミオミコムひー ミエミセ ミイミセミキミイムミームひー ミオミウミセ ミイ ミソムσサ + + - `webbpm.jbpm.db.connection.in_use` + - `webbpm.security.db.connection.in_use` + - `webbpm.db.connection.in_use` + +- ミ柘ミオミシム ミイム巾ソミセミサミスミオミスミクム ミキミーミソムミセムミー ミスミー ミアミエ ミソムミセミオミコムひー + + - `webbpm.db.query.success.execution_time` + +- ミ柘ミオミシム ミイム巾ソミセミサミスミオミスミクム ミキミーミソムミセムミー ミスミー ミアミエ ミソムミセミオミコムひー + ミイムミオミシム ミソミセミサムτミオミスミクム ミコミセミスミスミオミコムひー ミクミキ ミソムσサミー + + - `webbpm.db.query.success.full_time` + +- active-users-count.indicatorMax + +- active-users-count-ttl.indicatorMax + + # ミ墟セミサミクムミオムムひイミセ ミソミセミサム糊キミセミイミームひオミサミオミケ + +- `webbpm.active_users_counter.enabled` - ミイミコミサム紗ミーミオム ミソミセミエムムミオム ミソミセミサム糊キミセミイミームひオミサミオミケ, ミスムσカミスミセ ムムひセミアム ミスミオ ミキミーミソムτミコミームび hazelcast ミスミー ミエミオミイ ミシミーム威クミスミーム. ミソミセ ミエミオムミセミサムび false. ミ斷ー ミアミセミオミイム錦 ムミオムミイミオムミーム ミスミオミセミアムミセミエミクミシミセ ムτムひーミスミセミイミクムび ミイ true. + +- `webbpm.active_users_counter.max_time_between_operations_in_seconds` - ミイムミオミシム, ミコミセムひセムミセミオ ミソミセミサム糊キミセミイミームひオミサム ムムミクムひーミオムびム ミーミコムひクミイミスム巾シ ミソミセムミサミオ ミエミオミケムムひイミクム. ミソミセ ミエミオムミセミサムび 15 ミシミクミスムτ. + +- `webbpm.active_users_counter.hazelcast.app_pool_size`. ミ厘ーミソミクムム ミイ hazelcast ミソムミセミクミキミイミセミエミクムびム ミームミクミスムムミセミスミスミセ ミイ ミセムひエミオミサム糊スミセミシ ミソムσサミオ, ミスミオ ミアミサミセミコミクムムτ ミセミアムミーミアミセムひコム http ミキミーミソムミセムミー. ミュムひセ ムミーミキミシミオム ム采ひセミウミセ ミソムσサミー. ミソミセ ミエミオムミセミサムび 4. ミ慴セミカミスミセ ミソミセミコミー ミセムムひーミイミクムび 4 ミク ミソミセムミサミオミエミクムび ミキミー ミシミオムびミクミコミーミシミク pool.hazelcast-executor.queue.indicatorMax ミク pool.hazelcast-executor.activeThreads.indicatorMax. ミ篇ミサミク ミセムミオムミオミエム ミアムσエミオム ムミクミサム糊スミセ ミコミセミソミクムび袴ム, ムひセ ムσイミオミサミクムミクムび. + +## ミ斷ームムびミセミケミコミー ミサミセミウミセミイ + +ミ柘ミオ ミスミームムびミセミケミコミク ミエミオミサミーム紗びム ミイ ムミーミケミサミオ `standalone.xml`, ミオムミサミク ミスミオ ムσコミーミキミーミスミセ ミクミスミームミオ. + +### ミ榧アム禍クミオ ミスミームムびミセミケミコミク + +ミ渙サミームびミセムミシミー Web-bpm ミクムミソミセミサム糊キムσオム ミコミセムミスミオミイムτ ミコミームひオミウミセムミクム ミサミセミウミクムミセミイミーミスミクム `ru.cg.webbpm`, ムミオミコミセミシミオミスミエムσオムびム ミイム錦ムひーミイミサム肖び ミオミオ ミイ ムτミセミイミオミスム `info`. todo check prod config + +```xml + + + +``` + +ミ湲ミク ム采ひセミシ ミコミセミシミソミセミスミオミスムび ミクムミソミセミサム糊キムσオミシム巾オ ミイ ミソムミセミオミコムひオ ミシミセミウムτ ミクムミソミセミサム糊キミセミイミームび ミエムムσウミクミオ ミコミームひオミウミセムミクミク. + +### ミ渙ームミーミシミオムびム ミコミセミスムミクミウムτミームミクミク + +**ミミオミコミセミシミオミスミエミセミイミーミスミスミセミオ ミクムミソミセミサム糊キミセミイミーミスミクミオ:** ミイムミオミウミエミー ミイ `info`. + +ミ柘ミオ ミソミームミーミシミオムびム ミコミセミスムミクミウムτミームミクミク ミキミーミウムムσカミーミオミシム巾オ ミソミサミームびミセムミシミセミケ web-bpm ミク ミソミセミサム糊キミセミイミームひオミサム袴ミコミクミシ ミソムミクミサミセミカミオミスミクミオミシ ムミオムミオミキ api webbpm ミサミセミウミクムムτ紗びム ミコミームひオミウミセムミクミオミケ `ru.cg.webbpm.modules.core.app_info.api.property.BaseProperty`. ミ榧スミー ミイムミオミウミエミー ミエミセミサミカミスミー ミアム錦び ミイム錦ムひーミイミサミオミスミー ミイ `info`. + +ミ湲ミクミシミオム ミイム巾イミセミエミー: + +``` +2017-12-04 16:02:19,074 INFO [ru.cg.webbpm.modules.core.app_info.api.property.BaseProperty] (EclipseGeminiBlueprintExtenderThread-1) System property [webbpm.active_users_counter.enabled] not set. Using default value [false] +2017-12-04 16:02:19,074 INFO [ru.cg.webbpm.modules.core.app_info.api.property.BaseProperty] (EclipseGeminiBlueprintExtenderThread-1) System property [webbpm.active_users_counter.hazelcast.hosts] set to [127.0.0.1] +``` + +### ミ岱 ミソムミセミオミコムひー + +#### ミ嶢セミウミクムミセミイミーミスミクミオ ミキミーミソムミセムミセミイ ミイ ミアミエ security ミク ミアミエ ミソムミセミオミコムひー + +**ミミオミコミセミシミオミスミエミセミイミーミスミスミセミオ ミクムミソミセミサム糊キミセミイミーミスミクミオ:** ムひセミサム糊コミセ ミソムミク ムミーミキムミーミアミセムひコミオ. + +ミ佯ミソミセミサム糊キミセミイミームび ムひセミサム糊コミセ ミソムミク ムミーミキムミーミアミセムひコミオ. ミ墟ームひオミウミセムミクム `org.jooq.tools.LoggerListener` ミイ `debug` ムτミセミイミオミスム. + +```xml + + + +``` + +ミ湲ミクミシミオム ミイム巾イミセミエミー: + +``` +2017-12-04 18:21:10,391 DEBUG [org.jooq.tools.LoggerListener] (default task-19) Executing query : select "department"."department_name", "department"."department_id", "department"."parent_department_id", "department"."parent_department_id", "department"."department_id", (select (count(*) <> ?) from "public"."department" as "$$child" where "$$child"."parent_department_id" = "department"."department_id") as "$$hasChildren" from "public"."department" as "department" limit ? +2017-12-04 18:21:10,395 DEBUG [org.jooq.tools.LoggerListener] (default task-19) -> with bind values : select "department"."department_name", "department"."department_id", "department"."parent_department_id", "department"."parent_department_id", "department"."department_id", (select (count(*) <> 0) from "public"."department" as "$$child" where "$$child"."parent_department_id" = "department"."department_id") as "$$hasChildren" from "public"."department" as "department" limit 2147483647 +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) Fetched result : +-----------------+-------------+--------------------+--------------------+-------------+-------------+ +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) : |department_name |department_id|parent_department_id|parent_department_id|department_id|$$hasChildren| +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) : +-----------------+-------------+--------------------+--------------------+-------------+-------------+ +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) : |ミ寅セミサミセミイミスミセミケ ミセムミクム 1 | 8| {null}| {null}| 8|true | +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) : |ミ寅セミサミセミイミスミセミケ ミセムミクム 2 | 9| {null}| {null}| 9|true | +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) : |ミ寅セミサミセミイミスミセミケ ミセムミクム 3 | 10| {null}| {null}| 10|true | +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) : |ミ渙セミエムミーミキミエミオミサミオミスミクミオ 1.1| 11| 8| 8| 11|true | +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) : |ミ渙セミエムミーミキミエミオミサミオミスミクミオ 1.2| 12| 8| 8| 12|true | +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) : +-----------------+-------------+--------------------+--------------------+-------------+-------------+ +2017-12-04 18:21:10,568 DEBUG [org.jooq.tools.LoggerListener] (default task-19) : |...55 record(s) truncated... +``` + +#### ミ嶢セミウミクムミセミイミーミスミクミオ ミアミセミサム袴威クム ミキミーミソムミセムミセミイ + +**ミミオミコミセミシミオミスミエミセミイミーミスミスミセミオ ミクムミソミセミサム糊キミセミイミーミスミクミオ:** ミイムミオミウミエミー ミイ `info`, ム ミソミセミエミセミアムミーミスミスム巾シミク ミエミサム ミソムミセミオミコムひー ミキミスミームミオミスミクム紹シミク. ミ ミソムミセミエミオ ミキミスミームミオミスミクム ミエミセミサミカミスム ミアム錦び ミソムミセミイミオムミオミスム ムムひセ ミセミスミク ミスミオ ミイム巾キム巾イミーム紗 ミクミキミサミクム威スミオミオ ミサミセミウミクムミセミイミーミスミクミオ. + +1. ミ頒サム ミセムびミサミオミカミクミイミーミスミクム ミアミセミサム袴威クム ミキミーミソムミセムミセミイ ミイ ミソミセミサム糊キミセミイミームひオミサム袴ミコムτ ミアミーミキム ミスムσカミスミセ ミキミーミエミームび ミソミームミーミシミオムびム ムムひセ ムムミクムひームび ミアミセミサム袴威クミシミク ミキミーミソムミセムミーミシミク, ミサミセミウミクムミセミイミームび袴ム ミアムσエムτ ミキミーミソムミセムム ミアミセミサム袴威オ ミキミーミエミーミスミスム錦 ミソミセミコミーミキミームひオミサミオミケ. + ミァムひセミアム ミサミセミウミクムミセミイミームび ミイムミオ ミキミーミソムミセムム ミシミセミカミスミセ ミキミーミエミームび ミキミスミームミオミスミクミオ `-1`. ミ頒セミアミーミイミサム肖紗びム ミコミーミコ property ミイ ムミーミキミエミオミサ `system-properties`: + + ```xml + + + ``` + + ミ `info` ムミオミカミクミシミオ ムミーミアミセムひーム紗: + + - `webbpm.db.full_time_threshold` - ミソミセミサミスミセミオ ミイムミオミシム ミイム巾ソミセミサミスミオミスミクム ミキミーミソムミセムミー ミイ ミシミクミサミサミクムミオミコムσスミエミーム. ミ漬コミサム紗ミーミオム ミソミセムムびミセミオミスミクミオ ミキミーミソムミセムミー ミアミクミアミサミクミセムひオミコミセミケ, ミイム巾ソミセミサミスミオミスミクミオ ミク ミキミーミウムムσキミコム ムミオミキムσサム袴ひームひセミイ. ミ湲ミクミシミオム ムミセミセミアム禍オミスミクム
`2023-01-11 13:09:38,361 WARN [ru.cg.webbpm.modules.database.impl.analytics.PerformanceListener] (default task-33) Query full time threshold exceeded. full_time=[6565ms] execution_time=[6565ms] read_time=[0ms] results_count=[4] query=[]` + - `webbpm.db.results_count_threshold` - ミコミセミサミクムミオムムひイミセ ミキミーミソミクムミオミケ, ミコミセムひセムミセミオ ミイミオムミスムσサ ミキミーミソムミセム. ミ湲ミクミシミオム ムミセミセミアム禍オミスミクム
`2023-01-11 13:10:34,088 WARN [ru.cg.webbpm.modules.database.impl.analytics.PerformanceListener] (default task-41) Query results count threshold exceeded. results_count=[11177] query=[]` + + ミ `debug` ムミオミカミクミシミオ ミエミセミソミセミサミスミクムひオミサム糊スミセ ミコ ムミーミアミセムひーム紗禍クミシ ミイ info: + + - `webbpm.db.execution_time_threshold` - ミイムミオミシム ミイム巾ソミセミサミスミオミスミクム ミキミーミソムミセムミー + ミソミセムムびミセミオミスミクム ミキミーミソムミセムミー ミアミクミアミサミクミセムひオミコミセミケ. + - `webbpm.db.result_read_time_threshold` - ミイムミオミシム ムムひオミスミクム ムミオミキムσサム袴ひームひセミイ ミキミーミソムミセムミー + +2. ミ渙セムミサミオ ミキミーミエミーミスミクム ミスミームムびミセミオミコ ミスムσカミスミセ ミスミームムびミセミクムび ミサミセミウミクムミセミイミーミスミクミオ - ミコミームひオミウミセムミクム `ru.cg.webbpm.modules.database.impl.analytics.PerformanceListener`, ムτミセミイミオミスム `info` ミクミサミク `debug`. + + ```xml + + + + ``` + +### JBPM + +#### ミ樮ミスミセミイミスム巾オ ミスミームムびミセミケミコミク + +JBPM ミクムミソミセミサム糊キムσオム 3 ミコミセムミスミオミイム錦 ミコミームひオミウミセムミクミク ミサミセミウミクムミセミイミーミスミクム 窶 `org.jbpm`, `org.drools`, `org.kie`. ミ柘ミオ ミセミスミク ミエミセミサミカミスム ミアム錦び ミイム錦ムひーミイミサミオミスム ミイ `warn`. + +```xml + + + + + + + + + +``` + +#### ミ嶢セミウミクムミセミイミーミスミクミオ ミキミーミソムミセムミセミイ ミイ ミ岱 + +**ミミオミコミセミシミオミスミエミセミイミーミスミスミセミオ ミクムミソミセミサム糊キミセミイミーミスミクミオ:** ムひセミサム糊コミセ ミソムミク ムミーミキムミーミアミセムひコミオ. + +ミ頒サム ミサミセミウミクムミセミイミーミスミクム sql ミキミーミソムミセムミセミイ ミスムσカミスミセ ミイミコミサム紗ミクムび ミコミームひオミウミセムミクム `org.hibernate.SQL` ミイ `debug`: + +```xml + + + +``` + +ミァムひセミアム ミイム巾イミオムムひク ミソミームミーミシミオムびム ミキミーミソムミセムミセミイ ミク ムミオミキムσサム袴ひーム ミイム巾ソミセミサミスミオミスミクム 窶 ミコミームひオミウミセムミクム `org.hibernate.type.descriptor.sql` ミイ `trace`: + +```xml + + + +``` + +ミ湲ミクミシミオム ミイム巾イミセミエミー: + +``` +18:21:06,938 DEBUG [org.hibernate.SQL] (default task-47) select names0_.Task_Names_Id as Task_Nam7_16_0_, names0_.id as id1_16_0_, names0_.id as id1_16_1_, names0_.language as language2_16_1_, names0_.shortText as shortTex3_16_1_, names0_.text as text4_16_1_ from I18NText names0_ where names0_.Task_Names_Id=? +18:21:06,939 TRACE [org.hibernate.type.descriptor.sql.BasicBinder] (default task-47) binding parameter [1] as [BIGINT] - [180] +18:21:06,940 TRACE [org.hibernate.type.descriptor.sql.BasicExtractor] (default task-47) extracted value ([id1_16_1_] : [BIGINT]) - [539] +18:21:06,940 TRACE [org.hibernate.type.descriptor.sql.BasicExtractor] (default task-47) extracted value ([language2_16_1_] : [VARCHAR]) - [en-UK] +18:21:06,940 TRACE [org.hibernate.type.descriptor.sql.BasicExtractor] (default task-47) extracted value ([shortTex3_16_1_] : [VARCHAR]) - [ミ。ミソミクムミセミコ ミキミーミソミクムミオミケ] +18:21:06,941 TRACE [org.hibernate.type.descriptor.sql.BasicExtractor] (default task-47) extracted value ([text4_16_1_] : [CLOB]) - [ミ。ミソミクムミセミコ ミキミーミソミクムミオミケ] +18:21:06,941 TRACE [org.hibernate.type.descriptor.sql.BasicExtractor] (default task-47) extracted value ([Task_Nam7_16_0_] : [BIGINT]) - [180] +18:21:06,942 TRACE [org.hibernate.type.descriptor.sql.BasicExtractor] (default task-47) extracted value ([id1_16_0_] : [BIGINT]) - [539] +``` + +#### ミ頒セミソミセミサミスミクムひオミサム糊スム巾オ ミサミセミウミク hibernate + +**ミミオミコミセミシミオミスミエミセミイミーミスミスミセミオ ミクムミソミセミサム糊キミセミイミーミスミクミオ:** ムひセミサム糊コミセ ミソムミク ムミーミキムミーミアミセムひコミオ ミイ ムミサムτミーミオ ミスミオミセミアムミセミエミクミシミセムムひク. + +1. ミ柘ミオミシム ミイム巾ソミセミサミスミオミスミクム ミキミーミソムミセムミー ミク ミコミセミサミクムミオムムひイミセ ムミオミキムσサム袴ひームひセミイ. + + ミ漬コミサム紗ミーム紗びム ミコミームひオミウミセムミクミオミケ `org.hibernate.stat` ミイ `debug`. ミ湲ミク ム采ひセミシ ミイ hibernate ミエミセミサミカミオミス ミアム錦び ミイミコミサム紗ミオミス ムミアミセム ムムひームひクムムひクミコミク. + ミ渙セムミセミカミオ ムムひセ ミサミセミウミクムムσオムびム ムひセミサム糊コミセ hql select ミキミーミソムミセムミセミイ. + + ```xml + + + + ``` + + ミ湲ミクミシミオム ミイム巾イミセミエミー: + + ``` + 18:21:06,858 DEBUG [org.hibernate.stat.internal.ConcurrentStatisticsImpl] (default task-41) HHH000117: HQL: select t from AuditTaskImpl t where t.taskId = :taskId, time: 6ms, rows: 1 + ``` + +2. ミ渙セミコミーミキミームひオミサミク hibernate ムミオムムミクミケ + + ミ漬コミサム紗ミーム紗びム ミコミームひオミウミセムミクミオミケ `org.hibernate.engine.internal.StatisticalLoggingSessionEventListener` ミイ `info`. + ミ湲ミク ム采ひセミシ ミイ hibernate ミエミセミサミカミオミス ミアム錦び ミイミコミサム紗ミオミス ムミアミセム ムムひームひクムムひクミコミク. ミ「ムτ ミシミセミカミオム ミアム錦び ミクミスムひオムミオムミスミセ ミコミセミサミクムミオムムひイミセ ミキミーミソムミセムミセミイ, ムミサミーム威オミケ ミク ミセミアム禍オミオ ミイムミオミシム ミスミー ミイムミオ ミキミーミソムミセムム ムミオムムミクミオミケ. + + ミ湲ミクミシミオム ミイム巾イミセミエミー: + + ``` + 2017-12-04 17:25:58,493 INFO [org.hibernate.engine.internal.StatisticalLoggingSessionEventListener] (default task-21) Session Metrics { + 63408365 nanoseconds spent acquiring 17 JDBC connections; + 521509 nanoseconds spent releasing 17 JDBC connections; + 65732621 nanoseconds spent preparing 17 JDBC statements; + 31471897 nanoseconds spent executing 17 JDBC statements; + 0 nanoseconds spent executing 0 JDBC batches; + 0 nanoseconds spent performing 0 L2C puts; + 0 nanoseconds spent performing 0 L2C hits; + 0 nanoseconds spent performing 0 L2C misses; + 297556 nanoseconds spent executing 1 flushes (flushing a total of 16 entities and 0 collections); + 430168 nanoseconds spent executing 1 partial-flushes (flushing a total of 16 entities and 16 collections) + } + ``` + +#### ミ嶢セミウミクムミセミイミーミスミクミオ hbm2ddl + +**ミミオミコミセミシミオミスミエミセミイミーミスミスミセミオ ミクムミソミセミサム糊キミセミイミーミスミクミオ:** ミイムミオミウミエミー ミイ `trace`. + +ミ頒セミサミカミスミセ ミアム錦び ミイミコミサム紗ミオミスミセ ミイムミオミウミエミー. ミ渙セミキミイミセミサム紹オム ムσアミオミエミクムび袴ム ムムひセ hibernate ミスミオ ミスミーミコミームび巾イミーミサ ミスミクミコミーミコミクミオ ミシミクミウムミームミクミク ミスミー ミアミーミキム. ミュムひセム ムムσスミコムミクミセミスミーミサ ミセムひコミサム紗ミオミス ム ミスミーム ミイ ミコミセミエミオ. + +```xml + + + +``` + +# ミ榧ソミクムミーミスミクミオ ミソミームミーミシミオムびミセミイ ミコミセミスムミクミウムτミームミクミク ミコミサミクミオミスムびミコミセミケ ムミームムひク + +ミ。ミイミセミケムムひイミー ミキミーミエミーム紗びム ミイ ムミーミケミサミオ frontend/src/resources/app-config.json ミクミサミク frontend.war/src/resources/app-config.json + +## ミ榧アム禍クミオ + +- `dev_mode` - ミスミームムびミセミケミコミー ミキミーミエミーム紗禍ーム dev_mode ミエミサム ミソムミセムミシミセムびミー ミサミセミウミセミイ (true/false). ミ湲ミク ミセムびムτびムひイミクミオ ミセムムひーミイミサム紹オム ミキミスミームミオミスミクミオ ミソムミク ムミアミセムミコミオ +- `guard.confirm_exit` - ミイム巾イミセミエミクムび ミクミサミク ミスミオム ミエミクミーミサミセミウ ミソミセミエムひイミオムミカミエミオミスミクム, ミオムミサミク ミセミアミスミームムσカミオミスム ミスミオムミセムムミーミスミオミスミスム巾オ ミエミーミスミスム巾オ ミイ ムミセムミシミオ. ミ厘スミームミオミスミクミオ ミソミセ ムσシミセミサムミーミスミクム - false. +- `password.pattern` - ミミオミウムσサム肖ミスミセミオ ミイム錦ミーミカミオミスミクミオ ミエミサム ミイミーミサミクミエミームミクミク ミソミームミセミサム. +- `password_pattern_error` - ミ。ミセミセミアム禍オミスミクミオ ミセミア ミセム威クミアミコミオ ミイミーミサミクミエミームミクミク. +- `show.client.errors` - ミセムひイミオムミーミオム ミキミー ミセムひセミアムミーミカミオミスミクミオ ミセム威クミアミセミコ javascript-a ミソミセミサム糊キミセミイミームひオミサム (ミエミセミサミカミスミー ミクムミソミセミサム糊キミセミイミームび袴ム ムひセミサム糊コミセ ミイ ムひオムムひセミイム錦 ミコミセミスムびτミーム) ミソミセ ムσシミセミサムミーミスミクム ミイム巾コミサム紗ミオミスミー +- 'available_task.single_fetch' - ミ樮ひイミオムミーミオム ミキミー ミコミセミサミクムミオムムひイミセ ミキミーミソムミセムミセミイ available_task ミソムミク ミキミーミイミオムム威オミスミクミク ミソムミセムミオムムミー. true - ミセミエミクミスミセムミスム巾ケ ミキミーミソムミセム, false/ミスミオ ムσコミーミキミーミスミセ - 10 ミキミーミソムミセムミセミイ(ムムひームミーム ムミオミーミサミクミキミームミクム). + +## ミ柘巾イミセミエ ムミセミセミアム禍オミスミクミケ + +- `message_service_error_timeout` ミイムミオミシム ミイ ミシム, ミイ ムひオムミオミスミクミオ ミコミセムひセムミセミウミセ ミアムσエミオム ミセムひセミアムミーミカミオミスミセ ムミセミセミアム禍オミスミクミオ ミセミア ミセム威クミアミコミオ. ミ厘スミームミオミスミクミオ ミソミセ ムσシミセミサムミーミスミクム - ムひーミケミシミームτ ミスミオ ミキミーミエミーミス (ミセミコミスミセ ミスミオ ミキミーミコムム巾イミーミオムびム). +- `message_service_warning_timeout` ミイムミオミシム ミイ ミシム, ミイ ムひオムミオミスミクミオ ミコミセムひセムミセミウミセ ミアムσエミオム ミセムひセミアムミーミカミオミスミセ ミソムミオミエムσソムミオミカミエミーム紗禍オミオ ムミセミセミアム禍オミスミクミオ. ミ厘スミームミオミスミクミオ ミソミセ ムσシミセミサムミーミスミクム - ムひーミケミシミームτ ミスミオ ミキミーミエミーミス (ミセミコミスミセ ミスミオ ミキミーミコムム巾イミーミオムびム). +- `message_service_success_timeout` ミイムミオミシム ミイ ミシム, ミイ ムひオムミオミスミクミオ ミコミセムひセムミセミウミセ ミアムσエミオム ミセムひセミアムミーミカミオミスミセ ムミセミセミアム禍オミスミクミオ ミセミア ムτミソミオムミオ. ミ厘スミームミオミスミクミオ ミソミセ ムσシミセミサムミーミスミクム - ムひーミケミシミームτ ミスミオ ミキミーミエミーミス (ミセミコミスミセ ミスミオ ミキミーミコムム巾イミーミオムびム). +- `message_service_info_timeout` ミイムミオミシム ミイ ミシム, ミイ ムひオムミオミスミクミオ ミコミセムひセムミセミウミセ ミアムσエミオム ミセムひセミアムミーミカミオミスミセ ミクミスムミセムミシミームミクミセミスミスミセミオ ムミセミセミアム禍オミスミクミオ. ミ厘スミームミオミスミクミオ ミソミセ ムσシミセミサムミーミスミクム - ムひーミケミシミームτ ミスミオ ミキミーミエミーミス (ミセミコミスミセ ミスミオ ミキミーミコムム巾イミーミオムびム). + +## ミュミサミオミコムびミセミスミスミーム ミソミセミエミソミクムム + +### Esmart + +- `electronic_sign.esmart_extension_url` - url ミエミサム ムミセミキミエミーミスミクム ムミームム威クムミオミスミスミセミケ ミソミセミエミソミクムミク. ミ渙セミエムミセミアミスミーム ミクミスムミセムミシミームミクム ミソミセ ムムム巾サミコミオ [http://demo.esmart.ru](http://demo.esmart.ru) +- `electronic_sign.tsp_address` - ミーミエムミオム ムミオムミイミオムミー ムミサムσカミアム ム尉ひーミシミソミセミイ ミイムミオミシミオミスミク + +ミ湲ミクミシミオム: + +```text +"electronic_sign.esmart_extension_url": "http://dsig.ibsdemo.ru/ibs_dsig/ibs_dSig.asmx" +``` + +## ミ。ミソミセムミセミア ミームτひオミスムひクムミクミコミームミクミク + +- `auth_method` - ムミソミセムミセミア ミームτひオミスムひクムミクミコミームミクミク. ミ慴セミカミオム ミソムミクミスミクミシミームび ミセミエミスミセ ミキミスミームミオミスミクミオ ミクミキ ムミソミクムミコミー: form, kerberos, cert_over_db, cert_over_ldap + +## ミ「ミーミケミシミオム ミセムミクムムひコミク ミキミーミコミオム威クムミセミイミーミスミスム錦 ミキミスミームミオミスミクミケ ムミクミサム袴びミセミイ + +- `filter_cleanup_interval_hours` - ミイムミオミシム ミカミクミキミスミク ミキミーミコミオム威クムミセミイミーミスミスミセミウミセ ミキミスミームミオミスミクム ムミクミサム袴びミー ミイ ムミームミーム. ミ渙セ ムσシミセミサムミーミスミクム - 720 ムミームミセミイ, +- `filter_cleanup_check_period_minutes` - ミソミオムミクミセミエ ミソムミセミイミオムミコミク ミスミーミサミクムミクム ミソムミセムムミセムミオミスミスム錦 ミキミーミコミオム威クムミセミイミーミスミスム錦 ミキミスミームミオミスミクミケ ミイ ミシミクミスムτひーム. ミ渙セ ムσシミセミサムミーミスミクム - 30 ミシミクミスムτ + +## ミ頒セミアミーミイミサミオミスミクミオ ミイミオムムミクミク ミソムミクミサミセミカミオミスミクム ミイ URL ミソムミク ミキミーミソムミセムミーム ミコ frontend-ム + +ミ ミシミセミエムσサミオ frontend ミイ src/resources/app-config.json ミエミセミアミーミイミサミオミスム 2 ミソミオムミオミシミオミスミスム巾オ + +- `"enable.version.in.url": "%enable.version.in.url%"` - ミソミセミエムムひーミイミサム肖び ミサミク ミイミオムムミクム ミイ URL ミソムミクミサミセミカミオミスミクム. ミ渙セ ムσシミセミサムミーミスミクム false. ミ篇ミサミク ムミアミセムミコミー ミソムミセミクミキミイミオミエミオミスミー +- `"app.version": "%project.version%"` - ミイミオムムミクム ミソムミクミサミセミカミオミスミクム. + ム ミソムミセムミクミサミオミシ `enable-version-in-url`, ムひセ ミキミスミームミオミスミクミオ ミアムσエミオム true. + +## ミ頒セミアミーミイミサミオミスミクミオ Jivo ムミーム ミイ ミソムミセミオミコム + +ミ。ミイミセミケムムひイミー ミキミーミエミーム紗びム ミイ ムミーミケミサミオ frontend/src/resources/app-config.json ミクミサミク frontend.war/src/resources/app-config.json + +- `jivo_chat_widget_api_url` - API url ミエミサム ムミーミアミセムび Jivo ムミームひー. ミ斷オミセミアムミセミエミクミシミセ ミキミーミシミオミスミクムび {WIDGET_ID} ミスミー ムミオミーミサム糊スム巾ケ Widget API ID +- `jivo_chat_widget_enabled` - ミソミームミーミシミオムび ミセムひイミオムミーム紗禍クミケ ミキミー ミーミコムひクミイミームミクム Jivo ムミームひー. ミ渙セ ミエミオムミセミサムび false, ミエミサム ミーミコムひクミイミームミクミク ミキミーミエミームび true. + +ミ湲ミクミシミオム: + +```json + "jivo_chat_widget_api_url": "https://code.jivo.ru/widget/{WIDGET_ID}", + "jivo_chat_widget_enabled": false +``` + +# ミ湲ミセムミオミオ + +## ミ。ミシミオミスミー ムσエミーミサム岱スミスミセミウミセ ムミオミソミセミキミクムひセムミクム + +1. ミ。ミシミオミスミクムひオ ミーミエムミオム NPM registry ミイ ムミーミケミサミオ frontend.npmrc. ミ湲ミクミシミオム - registry=https://repo.example.com/repository/npm-all/ +2. ミ渙セミシミオミスム紹ケムひオ ムムム巾サミコミク ミイ ミアミサミセミコミオ , ムミーミケミサミー pom.xml diff --git a/config/.gitignore b/config/.gitignore new file mode 100644 index 0000000..ba9a786 --- /dev/null +++ b/config/.gitignore @@ -0,0 +1,2 @@ +/*.ear +/*.jar diff --git a/config/Dockerfile b/config/Dockerfile new file mode 100644 index 0000000..28a98c7 --- /dev/null +++ b/config/Dockerfile @@ -0,0 +1,43 @@ +FROM quay.io/wildfly/wildfly:26.1.3.Final-jdk17 +USER root +ARG POSTGRES_DRIVER_VERSION=42.7.3 +RUN yum-config-manager --disable base --disable extras --disable updates \ + && yum-config-manager --enable C7.8.2003-base --enable C7.8.2003-extras --enable C7.8.2003-updates \ + && yum -y --disableplugin=fastestmirror install sudo \ + && chown -R jboss: /opt/jboss/ + +USER jboss +WORKDIR $JBOSS_HOME +ENV JAVA_ARGS=-Xmx3g +RUN echo 'JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,address=*:8787,server=y,suspend=n"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -XX:MaxMetaspaceSize=1g"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -XX:+UseStringDeduplication -XX:+ParallelRefProcEnabled -XX:+ExplicitGCInvokesConcurrent"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -XX:+UnlockDiagnosticVMOptions -XX:G1SummarizeRSetStatsPeriod=1"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -XX:-OmitStackTraceInFastThrow"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.logmanager.nocolor=true"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS $JAVA_ARGS"' >> bin/standalone.conf + +### Locale support ru_RU ### +USER root +RUN localedef -i ru_RU -f UTF-8 ru_RU.UTF-8 +RUN echo "LANG=\"ru_RU.UTF-8\"" > /etc/locale.conf +USER jboss +ENV LANG ru_RU.UTF-8 +ENV LANGUAGE ru_RU.UTF-8 +ENV LC_ALL ru_RU.UTF-8 +### Locale Support END ### + +COPY --chown=jboss entrypoint.sh . +COPY --chown=jboss patches patches +RUN (cd patches && wget https://repo.micord.ru/repository/libs-releases-local/org/jboss/ironjacamar/ironjacamar-core-impl/1.5.3.Final/ironjacamar-core-impl-1.5.3.Final.jar) +RUN (cd patches/system && wget https://repo1.maven.org/maven2/org/postgresql/postgresql/$POSTGRES_DRIVER_VERSION/postgresql-$POSTGRES_DRIVER_VERSION.jar -O postgresql-driver.jar) + +RUN chmod -R +x patches && \ + chmod +x entrypoint.sh && \ + ./entrypoint.sh && \ + rm -rf patches + +ENV SERVER_START=true +COPY --chown=jboss *.ear $JBOSS_HOME/standalone/deployments/ +COPY --chown=jboss *.war $JBOSS_HOME/standalone/deployments/ diff --git a/config/Dockerfile.build b/config/Dockerfile.build new file mode 100644 index 0000000..7fbc109 --- /dev/null +++ b/config/Dockerfile.build @@ -0,0 +1,58 @@ +FROM maven:3-openjdk-17-slim AS builder +RUN apt update \ + && apt upgrade -y \ + && curl -fsSL https://deb.nodesource.com/setup_14.x | bash - \ + && apt install -y git nodejs \ + && rm -rf /var/lib/apt/lists/* + +WORKDIR /app +COPY ../ . +RUN mvn clean \ + && mvn package -T4C \ + && cd config-data-executor \ + && mvn clean \ + && mvn package -T4C + +FROM quay.io/wildfly/wildfly:26.1.3.Final-jdk17 +USER root +ARG POSTGRES_DRIVER_VERSION=42.7.3 +RUN yum-config-manager --disable base --disable extras --disable updates \ + && yum-config-manager --enable C7.8.2003-base --enable C7.8.2003-extras --enable C7.8.2003-updates \ + && yum -y --disableplugin=fastestmirror install sudo \ + && chown -R jboss: /opt/jboss/ + +USER jboss +WORKDIR $JBOSS_HOME +ENV JAVA_ARGS=-Xmx3g +RUN echo 'JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,address=*:8787,server=y,suspend=n"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -XX:MaxMetaspaceSize=1g"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -XX:+UseStringDeduplication -XX:+ParallelRefProcEnabled -XX:+ExplicitGCInvokesConcurrent"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -XX:+UnlockDiagnosticVMOptions -XX:G1SummarizeRSetStatsPeriod=1"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -XX:-OmitStackTraceInFastThrow"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.logmanager.nocolor=true"' >> bin/standalone.conf && \ + echo 'JAVA_OPTS="$JAVA_OPTS $JAVA_ARGS"' >> bin/standalone.conf + +### Locale support ru_RU ### +USER root +RUN localedef -i ru_RU -f UTF-8 ru_RU.UTF-8 +RUN echo "LANG=\"ru_RU.UTF-8\"" > /etc/locale.conf +USER jboss +ENV LANG ru_RU.UTF-8 +ENV LANGUAGE ru_RU.UTF-8 +ENV LC_ALL ru_RU.UTF-8 +### Locale Support END ### + +COPY --chown=jboss config/entrypoint.sh . +COPY --chown=jboss config/patches patches +RUN (cd patches && wget https://repo.micord.ru/repository/libs-releases-local/org/jboss/ironjacamar/ironjacamar-core-impl/1.5.3.Final/ironjacamar-core-impl-1.5.3.Final.jar) +RUN (cd patches/system && wget https://repo1.maven.org/maven2/org/postgresql/postgresql/$POSTGRES_DRIVER_VERSION/postgresql-$POSTGRES_DRIVER_VERSION.jar -O postgresql-driver.jar) + +RUN chmod -R +x patches && \ + chmod +x entrypoint.sh && \ + ./entrypoint.sh && \ + rm -rf patches + +ENV SERVER_START=true +COPY --from=builder --chown=jboss /app/distribution/target/*.ear $JBOSS_HOME/standalone/deployments/ +COPY --from=builder --chown=jboss /app/config-data-executor/target/*.war $JBOSS_HOME/standalone/deployments/ diff --git a/config/JDK_version b/config/JDK_version new file mode 100644 index 0000000..98d9bcb --- /dev/null +++ b/config/JDK_version @@ -0,0 +1 @@ +17 diff --git a/config/cde-xml/arangorequest.xml b/config/cde-xml/arangorequest.xml new file mode 100644 index 0000000..afc38c8 --- /dev/null +++ b/config/cde-xml/arangorequest.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + applications + subject + history + edges + + + localhost + 8529 + root + test + _system + + + \ No newline at end of file diff --git a/config/cde-xml/block.xml b/config/cde-xml/block.xml new file mode 100644 index 0000000..90578d6 --- /dev/null +++ b/config/cde-xml/block.xml @@ -0,0 +1,167 @@ + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + person_registry + + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + subpoena + + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + incidents + + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + geps_notifications + + + + + + > 'importId' = ANY (importIds::text[]); + DELETE FROM object_history WHERE object_id = ANY (recruitIds); + DELETE FROM object_versions WHERE object_id = ANY (recruitIds); + END + $$; + ]]> + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + journal_dev + + + + \ No newline at end of file diff --git a/config/cde-xml/downloadCSV.xml b/config/cde-xml/downloadCSV.xml new file mode 100644 index 0000000..ffd604a --- /dev/null +++ b/config/cde-xml/downloadCSV.xml @@ -0,0 +1,54 @@ + + + Type_A + + Select system_id_ern from public.recruits where id in ${endpointArguments}; + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + person_registry + 4000 + + + + Type_B + + Select system_id_ern from public.recruits where id in ${endpointArguments}; + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + person_registry + 4000 + + + + Type_C + + Select system_id_ern from public.recruits where id in ${endpointArguments}; + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + person_registry + 4000 + + + + \ No newline at end of file diff --git a/config/cde-xml/removeFromCallList.xml b/config/cde-xml/removeFromCallList.xml new file mode 100644 index 0000000..404f7fb --- /dev/null +++ b/config/cde-xml/removeFromCallList.xml @@ -0,0 +1,52 @@ + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + summon-list-registry + + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + person_registry + + + \ No newline at end of file diff --git a/config/cde-xml/removeFromSystem.xml b/config/cde-xml/removeFromSystem.xml new file mode 100644 index 0000000..d5fce87 --- /dev/null +++ b/config/cde-xml/removeFromSystem.xml @@ -0,0 +1,244 @@ + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + subpoena + + + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + decision-document-service + + + + + + + > 'importId' = ANY (importIds::text[]); + DELETE FROM object_history WHERE object_id = ANY (recruitIds); + DELETE FROM object_versions WHERE object_id = ANY (recruitIds); + END + $$; + ]]> + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + journal_dev + + + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + geps_notifications + + + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + incidents + + + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + person_registry + + + + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + appeal-document-service + + + \ No newline at end of file diff --git a/config/cde-xml/s3request.xml b/config/cde-xml/s3request.xml new file mode 100644 index 0000000..0e13f99 --- /dev/null +++ b/config/cde-xml/s3request.xml @@ -0,0 +1,28 @@ + + + + + select path from paths; + + + localhost + 5432 + postgres + password + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + micord_test + + + + minioadmin + minioadmin + 127.0.0.1 + 9000 + application/octet-stream + DELETE + + + + \ No newline at end of file diff --git a/config/cde-xml/unblock.xml b/config/cde-xml/unblock.xml new file mode 100644 index 0000000..2789b6b --- /dev/null +++ b/config/cde-xml/unblock.xml @@ -0,0 +1,32 @@ + + + + + + + 10.10.31.118 + 5432 + ervu + ervu + org.postgresql.Driver + org.postgresql.xa.PGXADataSource + 50 + person_registry + + + + \ No newline at end of file diff --git a/config/db.env b/config/db.env new file mode 100644 index 0000000..1bdf427 --- /dev/null +++ b/config/db.env @@ -0,0 +1,20 @@ +# App datasource +DB_APP_NAME=ervu-eks +DB_APP_HOST=db +DB_APP_PORT=5432 +DB_APP_USERNAME=ervu-eks +DB_APP_PASSWORD=ervu-eks + +# Security datasource +DB_SEC_NAME=ervu-eks +DB_SEC_HOST=db +DB_SEC_PORT=5432 +DB_SEC_USERNAME=ervu-eks-sec +DB_SEC_PASSWORD=ervu-eks-sec + +# Person datasource +DB_PERSON_NAME=person_registry +DB_PERSON_HOST=10.10.31.118 +DB_PERSON_PORT=5432 +DB_PERSON_USERNAME=ervu +DB_PERSON_PASSWORD=ervu diff --git a/config/docker-compose.db.yaml b/config/docker-compose.db.yaml new file mode 100644 index 0000000..b1a08cb --- /dev/null +++ b/config/docker-compose.db.yaml @@ -0,0 +1,31 @@ +version: "3" +services: + db: + image: postgres:15-bullseye + volumes: + - ./initdb.d:/docker-entrypoint-initdb.d + - db-data:/var/lib/postgresql/data + command: + - "--max_prepared_transactions=100" + ports: + - "127.0.0.1:5432:5432" + environment: + - POSTGRES_PASSWORD=supersecretpassword + - TZ="Europe/Moscow" + + webbpm-app: + image: ervu-eks:latest + depends_on: + - db + ports: + - "127.0.0.1:9990:9990" + - "127.0.0.1:8080:8080" + volumes: + - ./cde-xml:/cde-xml + environment: + - TZ="Europe/Moscow" + env_file: + - db.env + +volumes: + db-data: diff --git a/config/docker-compose.yaml b/config/docker-compose.yaml new file mode 100644 index 0000000..8306fba --- /dev/null +++ b/config/docker-compose.yaml @@ -0,0 +1,14 @@ +version: "3" +services: + webbpm-app: + build: + context: . + dockerfile: Dockerfile + volumes: + - ./cde-xml:/cde-xml + ports: + - 8080 + - 8787 + - 9990 + env_file: + - micord.env diff --git a/config/entrypoint.sh b/config/entrypoint.sh new file mode 100644 index 0000000..7178804 --- /dev/null +++ b/config/entrypoint.sh @@ -0,0 +1,48 @@ +#! /bin/bash +set -e + +function wait_for_server() { + until `$JBOSS_HOME/bin/jboss-cli.sh -c ":read-attribute(name=server-state)" 2> /dev/null | grep -q running`; do + echo "Retry ..." + done +} + +echo "dump environment variables to env.properties file" +printenv > env.properties + +echo "starting JBoss" +nohup $JBOSS_HOME/bin/standalone.sh --admin-only 1>&2 2>/dev/null & + +# running system patches +wait_for_server +$JBOSS_HOME/bin/jboss-cli.sh --connect --file="./patches/system/init.cli" --properties=env.properties +$JBOSS_HOME/bin/jboss-cli.sh --connect --file="./patches/system/add-postgresql-driver.cli" --properties=env.properties +bash "./patches/system/add-demo-user.sh" + +# running project patches +find ./patches/ -type f -name '*.cli' -not -path './patches/system/*' -print0 | +while IFS= read -r -d '' f; do + wait_for_server + echo "running $f" + $JBOSS_HOME/bin/jboss-cli.sh --connect --file="$f" --properties=env.properties +done; + +find ./patches/ -type f -name '*.sh' -not -path './patches/system/*' -print0 | +while IFS= read -r -d '' f; do + wait_for_server + echo "running $f" + bash "$f" +done + +echo "stopping JBoss" +wait_for_server +$JBOSS_HOME/bin/jboss-cli.sh --connect --command=:shutdown + +if ! [[ -z $SERVER_START ]]; then + echo "starting JBoss in standalone" + sleep 10 # without this occurs error "address already in use" + /opt/jboss/wildfly/bin/standalone.sh -c standalone.xml -b 0.0.0.0 -bmanagement 0.0.0.0 +else + echo "cleaning up JBoss logs" + rm -rf $JBOSS_HOME/standalone/log +fi diff --git a/config/initdb.d/createdb.sql b/config/initdb.d/createdb.sql new file mode 100644 index 0000000..50b18f2 --- /dev/null +++ b/config/initdb.d/createdb.sql @@ -0,0 +1,23 @@ +CREATE ROLE "ervu-eks" WITH + LOGIN + NOSUPERUSER + INHERIT + NOCREATEDB + NOCREATEROLE + NOREPLICATION + PASSWORD 'ervu-eks'; + +CREATE ROLE "ervu-eks-sec" WITH + LOGIN + NOSUPERUSER + INHERIT + NOCREATEDB + NOCREATEROLE + NOREPLICATION + PASSWORD 'ervu-eks-sec'; + +CREATE DATABASE "ervu-eks" + WITH + OWNER = "ervu-eks"; + +GRANT CREATE ON DATABASE "ervu-eks" TO "ervu-eks-sec"; diff --git a/config/micord.env b/config/micord.env new file mode 100644 index 0000000..47f9e2d --- /dev/null +++ b/config/micord.env @@ -0,0 +1,22 @@ +TZ=Europe/Moscow + +# App datasource +DB_APP_USERNAME=ervu-eks +DB_APP_PASSWORD=ervu-eks +DB_APP_HOST=10.10.31.118 +DB_APP_PORT=5432 +DB_APP_NAME=ervu-eks + +# Security datasource +DB_SEC_USERNAME=ervu-eks-sec +DB_SEC_PASSWORD=ervu-eks-sec +DB_SEC_HOST=10.10.31.118 +DB_SEC_PORT=5432 +DB_SEC_NAME=ervu-eks + +# Person datasource +DB_PERSON_USERNAME=ervu +DB_PERSON_PASSWORD=ervu +DB_PERSON_HOST=10.10.31.118 +DB_PERSON_PORT=5432 +DB_PERSON_NAME=person_registry diff --git a/config/patches/add-logger-database.cli b/config/patches/add-logger-database.cli new file mode 100644 index 0000000..83ee893 --- /dev/null +++ b/config/patches/add-logger-database.cli @@ -0,0 +1,3 @@ +/subsystem=logging/logger=org.jooq.tools:add() +/subsystem=logging/logger=org.jooq.tools:write-attribute(name=level, value=DEBUG) +/subsystem=logging/logger=org.jooq.tools:add-handler(name=CONSOLE) \ No newline at end of file diff --git a/config/patches/default.cli b/config/patches/default.cli new file mode 100644 index 0000000..9394dd1 --- /dev/null +++ b/config/patches/default.cli @@ -0,0 +1,68 @@ +xa-data-source add \ + --name=AppDS \ + --enabled=true \ + --driver-name=postgresql \ + --jndi-name=java:/webbpm/AppDS \ + --user-name=${env.DB_APP_USERNAME:app_user} \ + --password=${env.DB_APP_PASSWORD:apppassword} \ + --use-ccm=true \ + --valid-connection-checker-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker \ + --validate-on-match=false \ + --background-validation=true \ + --background-validation-millis=5000 \ + --exception-sorter-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLExceptionSorter \ + --statistics-enabled=true \ + --max-pool-size=50 \ + --query-timeout=300 \ + --xa-datasource-properties=ServerName=${env.DB_APP_HOST:db},PortNumber=${env.DB_APP_PORT:5432},DatabaseName=${env.DB_APP_NAME:app} + +xa-data-source add \ + --name=SECURITYDS \ + --enabled=true \ + --driver-name=postgresql \ + --jndi-name=java:/webbpm/security-ds \ + --user-name=${env.DB_SEC_USERNAME:security_user} \ + --password=${env.DB_SEC_PASSWORD:secpassword} \ + --max-pool-size=70 \ + --valid-connection-checker-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker \ + --validate-on-match=false \ + --background-validation=true \ + --background-validation-millis=5000 \ + --exception-sorter-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLExceptionSorter \ + --statistics-enabled=true \ + --query-timeout=300 \ + --xa-datasource-properties=ServerName=${env.DB_SEC_HOST:db},PortNumber=${env.DB_SEC_PORT:5432},DatabaseName=${env.DB_SEC_NAME:app} + +data-source add \ + --name=PERSONDS \ + --enabled=true \ + --driver-name=postgresql \ + --connection-url=jdbc:postgresql://${env.DB_PERSON_HOST:db}:${env.DB_PERSON_PORT:5432}/${env.DB_PERSON_NAME:person_registry} \ + --jndi-name=java:/webbpm/personRegistryDS \ + --user-name=${env.DB_PERSON_USERNAME:ervu} \ + --password=${env.DB_PERSON_PASSWORD:ervu} \ + --valid-connection-checker-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker \ + --validate-on-match=false \ + --background-validation=true \ + --background-validation-millis=5000 \ + --exception-sorter-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLExceptionSorter \ + --statistics-enabled=true \ + --query-timeout=300 \ + --max-pool-size=10 + +/system-property=ldap.mapping.login.param:add(value=${env.WEBBPM_LDAP_LOGIN_ATTR:uid}) +/system-property=ldap.mapping.org.code.param:add(value=${env.WEBBPM_LDAP_ORGANIZATION_ATTR:ou}) +/system-property=jboss.as.management.blocking.timeout:add(value=900) +/subsystem=undertow/server=default-server/http-listener=default/:write-attribute(name=record-request-start-time,value=true) +/subsystem=undertow/server=default-server/host=default-host/setting=access-log:add(pattern=%h %t "%r" %s %b %D) +/system-property=webbpm.cache.hazelcast.hosts:add(value="127.0.0.1") +/system-property=webbpm.cache.hazelcast.outbound_port_definitions:add(value="5801-5820") +/system-property=webbpm.security.session.active.count:add(value="20") +/system-property=security.password.regex:add(value="^((?=(.*\\d){1,})(?=.*[a-zミー-ム肖曽)(?=.*[A-Zミ-ミッミ‐).{8,})$") +/system-property=gar.enable:add(value=false) +/system-property=fias.enable:add(value=false) +/system-property=bpmn.enable:add(value=false) +/system-property=config.data.executor.url:add(value="http://localhost:8080/config-data-executor/api") +/system-property=config.data.executor.socket.timeout:add(value="10") +/system-property=config.data.executor.connection.timeout:add(value="10") +/system-property=configDirectory:add(value="/cde-xml") diff --git a/config/patches/system/add-demo-user.sh b/config/patches/system/add-demo-user.sh new file mode 100644 index 0000000..32b2986 --- /dev/null +++ b/config/patches/system/add-demo-user.sh @@ -0,0 +1 @@ +$JBOSS_HOME/bin/add-user.sh demo@example.com demo diff --git a/config/patches/system/add-postgresql-driver.cli b/config/patches/system/add-postgresql-driver.cli new file mode 100644 index 0000000..66566bf --- /dev/null +++ b/config/patches/system/add-postgresql-driver.cli @@ -0,0 +1,5 @@ +/subsystem=datasources/jdbc-driver=postgresql:add( \ + driver-name="postgresql", \ + driver-module-name="org.postgresql", \ + driver-xa-datasource-class-name="org.postgresql.xa.PGXADataSource" \ +) diff --git a/config/patches/system/init.cli b/config/patches/system/init.cli new file mode 100644 index 0000000..100c4d3 --- /dev/null +++ b/config/patches/system/init.cli @@ -0,0 +1,14 @@ +/system-property=webbpm.mode:add(value=production) +/system-property=authentication.method:add(value=form) +/subsystem=undertow/configuration=filter/gzip=gzipFilter:add() +/subsystem=undertow/server=default-server/host=default-host/\ + filter-ref=gzipFilter:add(predicate="exists('%{o,Content-Type}') and regex(pattern='(?:application/javascript|text/css|text/html|text/xml|application/json)(;.*)?', value=%{o,Content-Type}, full-match=true)") +/subsystem=undertow/configuration=filter/response-header=vary-header:add(header-name="Vary", header-value="Accept-Encoding") +/subsystem=undertow/server=default-server/host=default-host/filter-ref=vary-header:add() +/subsystem=undertow/server=default-server/http-listener=default/:write-attribute(name=max-post-size,value=${env.MAX_POST_SIZE:104857600}) +data-source remove --name=ExampleDS +/subsystem=ee/service=default-bindings:remove +/system-property=jboss.bind.address.management:add(value=0.0.0.0) +/system-property=jboss.bind.address:add(value=0.0.0.0) +module add --name=org.postgresql --resources=./patches/system/postgresql-driver.jar --dependencies=javax.api,javax.transaction.api +shutdown --restart diff --git a/config/standalone.xml b/config/standalone.xml new file mode 100644 index 0000000..cb08a11 --- /dev/null +++ b/config/standalone.xml @@ -0,0 +1,590 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 10.10.31.118 + 5432 + ervu-eks + postgresql + + ervu-eks + ervu-eks + + + + false + true + 5000 + + + + + 10.10.31.118 + 5432 + ervu-eks + postgresql + + ervu-eks-sec + ervu-eks-sec + + + + false + true + 5000 + + + + + + jdbc:postgresql://10.10.31.118:5432/person_registry + postgresql + + ervu + ervu + + + + false + true + 5000 + + + + 300 + + + + + org.h2.jdbcx.JdbcDataSource + + + org.postgresql.xa.PGXADataSource + + + + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ${jboss.bind.address:127.0.0.1} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/distribution/pom.xml b/distribution/pom.xml new file mode 100644 index 0000000..8f0c61b --- /dev/null +++ b/distribution/pom.xml @@ -0,0 +1,66 @@ + + + 4.0.0 + + ru.micord.ervu + eks + 1.0.0-SNAPSHOT + + + ru.micord.ervu.eks + distribution + ear + + + /backend + + + + + ru.micord.ervu.eks + backend + war + + + ru.micord.ervu.eks + frontend + war + + + + + + + org.apache.maven.plugins + maven-ear-plugin + 3.2.0 + + + + ru.micord.ervu.eks + frontend + / + frontend.war + + + ru.micord.ervu.eks + backend + ${backendContext} + backend.war + + + + + + ${project.parent.artifactId} + + + + + enable-version-in-url + + /backend-${project.version} + + + + diff --git a/frontend/.npmrc b/frontend/.npmrc new file mode 100644 index 0000000..8ed054b --- /dev/null +++ b/frontend/.npmrc @@ -0,0 +1 @@ +registry=https://repo.micord.ru/repository/npm-all/ diff --git a/frontend/angular.json b/frontend/angular.json new file mode 100644 index 0000000..965697d --- /dev/null +++ b/frontend/angular.json @@ -0,0 +1,71 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "version": 1, + "newProjectRoot": "projects", + "projects": { + "webbpm-frontend": { + "root": "", + "sourceRoot": "src", + "projectType": "application", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist", + "index": "src/index.html", + "main": "src/ts/main.ts", + "tsConfig": "src/tsconfig.json", + "polyfills": "src/ts/polyfills.ts", + "assets": [ + "src/resources" + ], + "styles": [ + ], + "scripts": [ + "node_modules/jquery/dist/jquery.min.js", + "node_modules/moment/min/moment-with-locales.js", + "node_modules/moment-timezone/builds/moment-timezone-with-data.min.js", + "node_modules/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js", + "node_modules/selectize/dist/js/standalone/selectize.min.js", + "node_modules/downloadjs/download.min.js" + ] + }, + "configurations": { + "production": { + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "aot": true, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true + } + } + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "options": { + "browserTarget": "webbpm-frontend:build" + }, + "configurations": {} + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "webbpm-frontend:build" + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [], + "exclude": [] + } + } + } + } + }, + "defaultProject": "webbpm-frontend" +} diff --git a/frontend/index.html b/frontend/index.html new file mode 100644 index 0000000..a3f48ff --- /dev/null +++ b/frontend/index.html @@ -0,0 +1,23 @@ + + + + ervu-eks + + + + + + + + + + + + +
+ + diff --git a/frontend/index.webpack.html b/frontend/index.webpack.html new file mode 100644 index 0000000..c98f47a --- /dev/null +++ b/frontend/index.webpack.html @@ -0,0 +1,11 @@ + + + + ervu-eks + + + + +
+ + diff --git a/frontend/package.json b/frontend/package.json new file mode 100644 index 0000000..267a6ae --- /dev/null +++ b/frontend/package.json @@ -0,0 +1,100 @@ +{ + "name": "ervu-eks", + "version": "1.0.0", + "scripts": { + "cleanup": "npm run cleanup-ngc && node ./node_modules/rimraf/bin ./build ./dist", + "cleanup-ngc": "node ./node_modules/rimraf/bin ./src/ts/**/*.js ./src/ts/**/*.json ./src/ts/page.routing.ts", + "cleanup-and-ngc": "npm run cleanup && npm run ngc", + "ngc": "node --max-old-space-size=14336 ./node_modules/@angular/compiler-cli/src/main -p tsconfig.aot.json", + "build-webpack": "node --max-old-space-size=14336 ./node_modules/webpack/bin/webpack --config webpack.aot.config.js --progress --profile", + "save-ts-metadata": "node save.ts.metadata.js", + "tsc": "node ./node_modules/typescript/bin/tsc", + "tsc-watch": "node ./node_modules/typescript/bin/tsc --watch", + "ts-watch": "node node_modules/cross-env/dist/bin/cross-env.js TSC_NONPOLLING_WATCHER=true npm run tsc-watch", + "ts": "npm install && npm run tsc", + "compile": "npm run ts-watch", + "install-compile": "npm install && npm run ts-watch" + }, + "dependencies": { + "@angular/animations": "7.2.15", + "@angular/common": "7.2.15", + "@angular/compiler": "7.2.15", + "@angular/core": "7.2.15", + "@angular/forms": "7.2.15", + "@angular/http": "7.2.15", + "@angular/platform-browser": "7.2.15", + "@angular/platform-browser-dynamic": "7.2.15", + "@angular/router": "7.2.15", + "@ng-bootstrap/ng-bootstrap": "4.2.2-micord.1", + "@webbpm/base-package": "3.185.0", + "ag-grid-angular": "29.0.0-micord.4", + "ag-grid-community": "29.0.0-micord.4", + "angular-calendar": "0.28.28", + "autonumeric": "4.5.10-cg", + "bootstrap": "4.3.1", + "bootstrap-icons": "1.10.3", + "cadesplugin_api": "2.0.4-micord.1", + "chart.js": "3.8.0-cg.1", + "chartjs-adapter-moment": "1.0.0", + "core-js": "2.4.1", + "date-fns": "2.29.3", + "downloadjs": "1.4.8", + "eonasdan-bootstrap-datetimepicker": "4.17.47-micord.5", + "esmarttokenjs": "2.2.1-cg", + "font-awesome": "4.7.0", + "google-libphonenumber": "3.0.9", + "inputmask": "5.0.5-cg.2", + "jquery": "3.7.1", + "js-year-calendar": "1.0.0-cg.2", + "jsgantt-improved": "2.0.10-cg", + "moment": "2.30.1", + "moment-timezone": "0.5.46", + "ngx-cookie": "3.0.1", + "ngx-international-phone-number": "1.0.6", + "ngx-toastr": "10.2.0-cg", + "popper.js": "1.14.7", + "reflect-metadata": "0.1.13", + "rxjs": "6.4.0", + "rxjs-compat": "6.4.0", + "selectize": "0.12.4-cg.11", + "systemjs": "0.21.4", + "systemjs-plugin-babel": "0.0.25", + "tslib": "1.9.3", + "zone.js": "0.11.8" + }, + "devDependencies": { + "@angular-devkit/build-optimizer": "0.13.9", + "@angular-devkit/core": "7.3.9", + "@angular/cli": "7.3.9", + "@angular/compiler-cli": "7.2.15", + "@angular/platform-server": "7.2.15", + "@babel/core": "7.18.10", + "@babel/preset-env": "7.18.10", + "@types/bootstrap": "3.3.39", + "@types/eslint": "7.2.5", + "@types/jquery": "3.5.5", + "@types/node": "7.0.5", + "@types/selectize": "0.12.33", + "ajv": "8.8.2", + "angular-router-loader": "0.8.5", + "angular2-template-loader": "0.6.2", + "babel-loader": "9.1.2", + "codelyzer": "5.2.1", + "copy-webpack-plugin": "5.0.3", + "cross-env": "5.2.1", + "css-loader": "6.11.0", + "del": "2.2.2", + "file-loader": "6.2.0", + "html-webpack-plugin": "5.6.0", + "mini-css-extract-plugin": "2.9.1", + "mkdirp": "3.0.1", + "raw-loader": "4.0.2", + "style-loader": "3.3.4", + "terser-webpack-plugin": "5.3.10", + "tslint": "5.13.1", + "typescript": "3.2.4", + "typescript-parser": "2.6.1-cg.2", + "webpack": "5.90.1", + "webpack-cli": "5.0.2" + } +} diff --git a/frontend/pom.xml b/frontend/pom.xml new file mode 100644 index 0000000..d7f1fcc --- /dev/null +++ b/frontend/pom.xml @@ -0,0 +1,113 @@ + + + 4.0.0 + + ru.micord.ervu + eks + 1.0.0-SNAPSHOT + + + ru.micord.ervu.eks + frontend + war + + + + + com.google.code.maven-replacer-plugin + replacer + 1.5.3 + + + replace-version-in-url + process-resources + + replace + + + + + + ${basedir}/src/resources/app-config.json + ${basedir}/dist/src/resources/app-config.json + ${basedir}/src/resources/app.version + ${basedir}/dist/src/resources/app.version + + + + %project.version% + ${project.version} + + + %enable.version.in.url% + ${enable.version.in.url} + + + + + + + + + + dev + + true + + + + + org.apache.maven.plugins + maven-war-plugin + + false + + + ${basedir} + + src/resources/**/* + build_dev/**/* + node_modules/**/* + index.html + systemjs.config.js + + + + + + + + + + compile-ts + + false + + + + prod + + + + org.apache.maven.plugins + maven-war-plugin + + false + + + ${basedir}/dist + + + + + + + + + enable-version-in-url + + true + + + + diff --git a/frontend/preview.html b/frontend/preview.html new file mode 100644 index 0000000..16f4193 --- /dev/null +++ b/frontend/preview.html @@ -0,0 +1,23 @@ + + + + Web BPM + + + + + + + + + + + + +
+ + diff --git a/frontend/save.ts.metadata.js b/frontend/save.ts.metadata.js new file mode 100644 index 0000000..3e193d0 --- /dev/null +++ b/frontend/save.ts.metadata.js @@ -0,0 +1,72 @@ +#!/usr/bin/env node +var tsp = require("typescript-parser"); +var fs = require('fs'); +var path = require('path'); +var ts = require("typescript"); + +var parser = new tsp.TypescriptParser(); +var excludedDirs = [ + 'generated-sources' +]; + +var walkFileTree = function (dir, action) { + if (typeof action !== "function") { + return; + } + + fs.readdirSync(dir).forEach(function (file) { + var path = dir + "/" + file; + var stat = fs.statSync(path); + var extension = ".ts"; + if (stat && stat.isDirectory() && excludedDirs.indexOf(file) === -1) { + walkFileTree(path, action); + } + else if (path.indexOf(extension, path.length - extension.length) !== -1) { + action(null, path); + } + }); +}; + +var dateInLong = Date.now(); +var arr = []; + +var basePath = path.resolve(__dirname, "src/ts/"); +walkFileTree(basePath, function (err, file) { + var content = fs.readFileSync(file).toString(); + var jsonStructure = parser.parseTypescript(ts.createSourceFile( + file, + content, + ts.ScriptTarget.Latest, + true, + ts.ScriptKind.TS + ), + '/'); + jsonStructure['packageName'] = path.relative(path.resolve(__dirname, "src/ts/"),jsonStructure['filePath']); + jsonStructure['imports'].forEach( function (val) { + if (val.libraryName.startsWith(".")) { + val['libraryName'] = path.resolve(path.dirname(jsonStructure['filePath']), val['libraryName']); + val['libraryName'] = path.relative(path.resolve(__dirname, "src/ts/"), val['libraryName']); + val['libraryName'] = path.dirname(val['libraryName']).split(path.sep).join("."); + } + }); + delete jsonStructure['filePath']; + jsonStructure['packageName'] = path.dirname(jsonStructure['packageName']).split(path.sep).join( "."); + arr.push(jsonStructure); +}); +var cache = []; + +fs.writeFileSync("./../.studio/typescript.metadata.json", + JSON.stringify(arr, function (key, value) { + if (typeof value === 'object' && value !== null) { + if (cache.indexOf(value) !== -1) { + // Circular reference found, discard key + return; + } + // Store value in our collection + cache.push(value); + } + return value; + })); + +cache = null; +console.log("typescript parse time = " + (Date.now() - dateInLong)); \ No newline at end of file diff --git a/frontend/src/resources/app-config.json b/frontend/src/resources/app-config.json new file mode 100644 index 0000000..442b79c --- /dev/null +++ b/frontend/src/resources/app-config.json @@ -0,0 +1,19 @@ +{ + "electronic_sign.esmart_extension_url": "", + "electronic_sign.tsp_address": "", + "filter_cleanup_interval_hours": 720, + "filter_cleanup_check_period_minutes": 30, + "auth_method": "form", + "enable.version.in.url": "false", + "guard.confirm_exit": false, + "message_service_error_timeout": "", + "message_service_warning_timeout": "", + "message_service_success_timeout": "", + "message_service_info_timeout": "", + "jivo_chat_widget_api_url": "https://code.jivo.ru/widget/{ID}", + "jivo_chat_widget_enabled": false, + "password_pattern": "^((?=(.*\\d){1,})(?=.*[a-zミー-ム肖曽)(?=.*[A-Zミ-ミッミ‐).{8,})$", + "password_pattern_error": "ミ渙ームミセミサム ミエミセミサミカミオミス ムミセミエミオムミカミームび ミキミーミウミサミーミイミスム巾オ ミクミサミク ミソムミセミソミクムミスム巾オ ミアムσコミイム ミク ミコミーミコ ミシミクミスミクミシムσシ 1 ムミクムムム", + "show.client.errors": false, + "available_task.single_fetch": true +} diff --git a/frontend/src/resources/app.version b/frontend/src/resources/app.version new file mode 100644 index 0000000..5deada8 --- /dev/null +++ b/frontend/src/resources/app.version @@ -0,0 +1 @@ +1.0.0-SNAPSHOT \ No newline at end of file diff --git a/frontend/src/resources/css/components-app.css b/frontend/src/resources/css/components-app.css new file mode 100644 index 0000000..a5815c2 --- /dev/null +++ b/frontend/src/resources/css/components-app.css @@ -0,0 +1,1584 @@ +@charset "utf-8"; + +.webbpm div[id="page"], +.webbpm div[id="page"] > div, +.webbpm div[id="page"] > div > div { + display: flex; + flex-direction: column; + height: 100%; +} + +.webbpm [id="page"] > div > div > [page-object]:first-child { + padding-top: 15px; +} + +.webbpm [id="page"] > div > div > [page-object] { + display: inherit; + margin-bottom: 10px; + padding: 0 40px; +} + +.webbpm #dashboard { + padding: 15px 40px 0 40px; +} + +.webbpm .title { + font-size: 24px; + font-family: 'SegoeSB'; + padding: 10px 0 0 0; +} + +.webbpm .sub-header { + color: var(--white); + font-weight: normal; + padding: 0 20px; + margin-top: 10px; + border-radius: 20px; + background: var(--bg-secondary); + + & > .form-group { + padding: 10px 0; + margin-bottom: 0; + } + + & > div > div:last-of-type { + font-size: 18px; + padding: 0; + } +} + +.webbpm .form-signup input.ng-invalid.ng-touched, +.webbpm .form-signup input.ng-invalid.ng-touched ~ .input-group-append > .input-group-text, +.webbpm .form-signup input.ng-invalid.ng-dirty, +.webbpm .form-signup input.ng-invalid.ng-dirty ~ .input-group-append > .input-group-text { + border-color: var(--color-link) !important; +} + +.webbpm .form-signup .msg-alert { + color: var(--color-link); +} + +.webbpm input[type="text"], +.webbpm input[type="date"], +.webbpm input[type="email"], +.webbpm input[type="password"], +.webbpm input[type="number"], +.webbpm input.form-control, +.webbpm textarea, +.webbpm select, +.webbpm .selectize-control.single .selectize-input, +.webbpm .multi.plugin-remove_button .selectize-input { + color: var(--color-text-primary); + font-size: var(--size-text-primary); + min-height: 38px; + padding: 6px 8px; + border: 1px solid var(--border-light); + border-radius: 8px; + background-color: var(--white); + background-image: none; + box-shadow: none; +} + +.webbpm .wb-touched.wb-invalid .form-control, +.webbpm .wb-touched.wb-invalid .form-control:focus, +.webbpm .wb-touched.wb-invalid input.form-control, +.webbpm .wb-touched.wb-invalid input.form-control:focus, +.webbpm .wb-touched.wb-invalid .input-group-addon, +.webbpm .wb-touched.wb-invalid .input-group-addon:focus, +.webbpm .wb-touched.wb-invalid .selectize-input, +.webbpm .wb-touched.wb-invalid .selectize-input:focus { + border-color: var(--color-link) !important; + box-shadow: none !important; +} + +.webbpm select option:checked { + color: var(--color-link); +} + +.webbpm .input-group input[name="password"], +.webbpm .input-group input[name="confirmPassword"], +.webbpm .date input[type="text"] { + border-right: 0 ; + border-top-right-radius: 0; + border-bottom-right-radius: 0 ; +} + +.webbpm .input-group input[name="password"] ~ .input-group-append > .input-group-text, +.webbpm .input-group input[name="confirmPassword"] ~ .input-group-append > .input-group-text, +.webbpm .date input ~ .input-group-addon { + color: var(--color-text-primary); + border-color: var(--border-light); + border-radius: 8px; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + background-color: transparent; +} + +.webbpm .input-group input[name="password"] ~ .input-group-append > .input-group-text, +.webbpm .input-group input[name="confirmPassword"] ~ .input-group-append > .input-group-text, +.webbpm .date input ~ .input-group-addon { + color: var(--color-text-primary); + border-color: var(--border-light); + border-radius: 8px; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + background-color: transparent; +} + +.webbpm international-phone-number .input-group-addon.flagInput { + border: 0; + background-color: transparent; + + .btn { + border: 1px solid var(--border-light); + border-right: 0; + border-radius: 10px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + + & ~ input { + border-right: 1px solid var(--border-light); + border-radius: 10px; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } +} + +.webbpm .selectize-dropdown { + box-shadow: none; +} + +.webbpm .selectize-dropdown-content { + border: 1px solid var(--border-light); + border-radius: 10px; + background-color: var(--white); + box-shadow: 0 8px 12px rgb(77 72 91 / 5%), 0 6px 10px rgb(77 72 91 / 0%); +} + +.webbpm .selectize-dropdown .active { + color: var(--color-link); + background-color: transparent; +} + +.webbpm .form-group > label, +.webbpm .form-group > div { + display: inline-block; + vertical-align: top; +} +.webbpm .width-full .form-group > label, +.webbpm .width-full .form-group > div { + display: table-cell; +} + +.webbpm .form-control { + background-color: inherit; +} + +.webbpm .form-control[disabled], +.webbpm .form-control[readonly], +.webbpm .date .form-control[disabled] ~ .input-group-addon, +.webbpm .date .form-control[readonly] ~ .input-group-addon, +.webbpm fieldset[disabled] .form-control, +.webbpm .selectize-control .selectize-input.disabled { + background-color: var(--bg-light); +} + +.webbpm .selectize-control.form-control { + min-height: 38px; +} + +.webbpm .selectize-control.single .selectize-input > .item { + line-height: normal; +} + +.webbpm .selectize-control.single .selectize-input input { + line-height: normal !important; + border-radius: 0; +} + +.webbpm drop-down-button .dropdown-menu.show { + border: 1px solid var(--border-light); + border-radius: 10px; + background-color: var(--white); + box-shadow: 0 8px 12px rgb(77 72 91 / 5%), 0 6px 10px rgb(77 72 91 / 0%); +} + +.webbpm drop-down-button .dropdown-menu.show .btn { + padding-top: 4px; + padding-bottom: 4px; + border: 0; + box-shadow: none; +} + +.webbpm .selectize-dropdown-content { + font-size: var(--size-text-primary); +} + +.webbpm .selectize-dropdown .more_values { + color: var(--color-text-primary); + background-color: #f0f7fd; +} + +/*----------------- Button ---------------- */ +.webbpm .btn { + font-size: var(--size-text-primary); + font-family: 'SegoeSB'; + padding: 6px 14px; + margin-bottom: 0; + border-radius: 20px; +} + +.webbpm .btn:focus, +.webbpm .btn:active:focus { + box-shadow: none !important; +} + +.webbpm .btn-main { + border-color: transparent !important; + background: transparent !important; +} + +.webbpm .btn-main > * > .btn, +.webbpm .btn-primary { + color: var(--white) !important; + border-color: var(--color-link); + background: var(--color-link); + box-shadow: 0px 0px 6px 2px rgb(77 72 91 / 6%); +} +.webbpm .btn-main > * > .btn:not(:disabled):not(.disabled):hover, +.webbpm .btn-main > * > .btn:not(:disabled):not(.disabled):active, +.webbpm .btn-primary:hover, +.webbpm .btn-primary:active { + border-color: #1b84d2; + background: #1b84d2; +} +.webbpm .btn-main > * > .btn:not(:disabled):not(.disabled):focus, +.webbpm .btn-primary:focus { + border-color: #1b84d2; + background: #1b84d2; + box-shadow: none; +} + +.webbpm .btn-secondary, +.webbpm .btn-default { + color: var(--color-text-primary); + border: 1px solid var(--border-light); + background: var(--white); + box-shadow: 0px 0px 6px 2px rgb(77 72 91 / 6%); +} +.webbpm .btn-secondary:not(:disabled):not(.disabled):hover, +.webbpm .btn-secondary:not(:disabled):not(.disabled):active, +.webbpm .btn-default:not(:disabled):not(.disabled):hover, +.webbpm .btn-default:not(:disabled):not(.disabled):active { + color: var(--color-link); + border-color: var(--border-light); + background-color: var(--white); +} +.webbpm .btn-secondary:not(:disabled):not(.disabled):focus, +.webbpm .btn-default:not(:disabled):not(.disabled):focus { + border-color: var(--border-light); + background-color: var(--white); + box-shadow: none; +} + +.webbpm .btn.disabled, +.webbpm .btn:disabled { + color: #666; + border-color: #f3f3f3; + background-color: #f3f3f3; + box-shadow: none; +} + +.webbpm .btn.btn-primary.disabled, +.webbpm .btn.btn-primary:disabled, +.webbpm .btn-main .btn.disabled, +.webbpm .btn-main .btn:disabled { + color: rgba(255, 255, 255, 0.8) !important; + border-color: var(--color-link); + background-color: var(--color-link); + box-shadow: none; +} + +.webbpm ag-grid-angular .state-btn-edit, +.webbpm ag-grid-angular .state-btn-delete { + color: var(--color-link) !important; + border: 0; + background: transparent; + box-shadow: none; +} + +.webbpm button.close { + outline: none; +} +/*---------------- end - Button -------------- */ + +/*----------------- Bread-crumb -------------- */ +.webbpm bread-crumb { + display: flex; + flex-direction: column; + max-width: 800px; + margin-top: 20px; + + .status_bar { + position: relative; + display: flex; + flex-direction: row; + justify-content: stretch; + + .crumb-element { + color: var(--white); + font-size: var(--size-text-secondary); + padding: 4px 15px; + background-color: var(--bg-secondary); + border-radius: 20px; + z-index: 1; + } + + & > div + div { + position: relative; + display: flex; + justify-content: end; + flex: 1; + + &::before { + content: ""; + position: absolute; + left: 0; + right: 0; + top: 50%; + height: 2px; + background-color: var(--bg-secondary); + } + } + + & > div.active ~ div::before { + background-color: var(--border-light); + } + + & > div.active .crumb-element { + background-color: var(--color-link); + } + + & > div.active ~ div .crumb-element { + color: #989fa8; + background-color: var(--border-light); + } + } +} +/*--------------- end Bread-crumb ------------ */ + +.webbpm grid-v2-with-project-defined-sidebar, +.webbpm in-memory-route-param-filter-grid { + display: flex; + flex-direction: column; + flex: 1 1 auto; +} + +.webbpm .container-inside > div > div > grid, +.webbpm .container-inside > div > div > grid-v2-with-project-defined-sidebar{ + height: auto !important; + flex: 1 1 auto; + overflow: hidden; +} + +.webbpm ag-grid-angular .ag-body-viewport, +.webbpm ag-grid-angular .ag-row-odd, +.webbpm ag-grid-angular .ag-row-even { + background-color: transparent; +} + +.webbpm ag-grid-angular .ag-side-bar { + border: 0; + background-color: transparent; +} + +.webbpm ag-grid-angular .ag-header-cell { + line-height: 40px; + padding: 0 10px; + border: 0; +} +.webbpm ag-grid-angular .ag-header-cell::after, +.webbpm ag-grid-angular .ag-header-group-cell::after { + border-color: transparent; +} + +.webbpm ag-grid-angular { + font-family: 'Segoe'; + font-weight: normal; +} + +.webbpm ag-grid-angular .ag-header { + border: 0; + border-radius: 12px; + background: var(--bg-light); +} + +.webbpm ag-grid-angular .ag-header-row { + color: var(--color-text-primary); + font-family: 'SegoeSB'; + font-size: var(--size-text-secondary); + font-weight: normal; +} + +.webbpm ag-grid-angular .grid-filter-hide .ag-floating-filter-body, +.webbpm ag-grid-angular .grid-filter-hide .ag-floating-filter-button { + display: none; +} + +.webbpm ag-grid-angular .ag-header-group-cell { + font-family: 'SegoeB'; + font-size: var(--size-text-primary); +} + +.webbpm ag-grid-angular .ag-header-cell>.ag-cell-label-container>.ag-header-cell-label>.ag-header-cell-text { + white-space: nowrap; +} + +.webbpm ag-grid-angular .ag-header .ag-floating-filter-body input { + font-family: 'Segoe'; + font-size: var(--size-text-secondary); + min-height: 20px; + padding: 2px; + border: 1px solid var(--border-light); + border-radius: 4px; + background: transparent; +} + +.webbpm ag-grid-angular :is(.ag-root, .ag-header-row) { + border: 0; +} + +.webbpm ag-grid-angular .ag-root { + position: static; +} + +.webbpm ag-grid-angular .ag-row { + border-color: var(--border-light); +} +.webbpm ag-grid-angular .ag-row::before { + display: none; +} + +.webbpm ag-grid-angular .ag-row:not(.ag-row-first) { + border-width: 1px 0 0; + border-style: solid; +} +.webbpm ag-grid-angular .ag-row-last:not(.ag-row-first) { + border-width: 1px 0; +} + +.webbpm ag-grid-angular :is(.ag-row.ag-row-odd, .ag-row.ag-row-selected) { + background-color: inherit !important; +} + +.webbpm ag-grid-angular .ag-row.ag-row-selected .ag-cell { + color: var(--color-link); +} + +.webbpm ag-grid-angular .ag-body-viewport .ag-row.ag-row-hover { + border-radius: 10px; +} +.webbpm ag-grid-angular .ag-body-viewport .ag-row.ag-row-hover, +.webbpm ag-grid-angular .ag-body-viewport .ag-row.ag-row-hover .ag-cell { + background-color: #f9f9f9 !important; +} + +.webbpm ag-grid-angular .ag-body-viewport .ag-row.ag-row-hover:not(.ag-full-width-row)::before, +.webbpm ag-grid-angular .ag-body-viewport .ag-row.ag-row-hover.ag-full-width-row.ag-row-group::before { + background-color: transparent; +} + +.webbpm ag-grid-angular .ag-row.ag-row-hover, +.webbpm ag-grid-angular .ag-row.ag-row-hover + .ag-row { + border-color: transparent; +} + +.webbpm ag-grid-angular .ag-row .ag-cell { + display: inline-flex; + color: var(--color-text-primary); + font-size: var(--size-text-primary); + padding: 0 10px; + border: 1px solid transparent; +} + +.webbpm ag-grid-angular .ag-row .ag-cell.webbpm-checkbox-grid-column { + justify-content: center; +} + +.webbpm ag-grid-angular .ag-row .ag-cell .ag-cell-wrapper { + flex: 1 1 auto; + overflow: hidden; +} + +.webbpm ag-grid-angular .ag-row .ag-cell.ag-cell-last-left-pinned:not(.ag-cell-range-right):not(.ag-cell-range-single-cell) { + border-right: 0; +} + +.webbpm ag-grid-angular .ag-pinned-left-floating-bottom:not(.ag-hidden) .ag-row, +.webbpm ag-grid-angular .ag-pinned-left-floating-bottom:not(.ag-hidden) ~ .ag-floating-bottom-viewport { + border: 0; + border-radius: 12px; + background: #f0f7fd; + overflow-y: auto !important; +} + +.webbpm ag-grid-angular .ag-pinned-left-floating-bottom:not(.ag-hidden) .ag-row { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.webbpm ag-grid-angular .ag-pinned-left-floating-bottom:not(.ag-hidden) ~ .ag-floating-bottom-viewport { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.webbpm ag-grid-angular .ag-floating-bottom-container .ag-row { + border: 0; + border-radius: 12px; + background: #f0f7fd; + overflow-y: auto !important; +} + +.webbpm ag-grid-angular .ag-cell.ag-cell-focus.ag-cell-inline-editing { + height: 100%; +} + +.webbpm ag-grid-angular .ag-cell.ag-cell-focus.ag-cell-inline-editing input { + font-size: var(--size-text-primary); + padding: 0; + border: 0; + background: transparent; + box-shadow: none; +} + +.webbpm ag-grid-angular .ag-paging-panel { + color: var(--color-text-primary); + font-size: var(--size-text-secondary); + border: 0; + border-radius: 12px; + background: var(--bg-light); + + .ag-paging-button { + display: flex; + width: 32px; + height: 32px; + border: 1px solid var(--border-light); + border-radius: 16px; + box-shadow: 0px 0px 6px 2px rgb(77 72 91 / 6%); + + &:not(:disabled) { + opacity: 1; + } + + & > span { + display: flex; + align-items: center; + justify-content: center; + width: 100%; + } + + & + .ag-paging-button { + margin-left: 8px; + } + + &[ref="btPrevious"] { + margin-right: 16px; + } + &[ref="btNext"]{ + margin-left: 16px; + } + } +} + +.webbpm ag-grid-angular .ag-floating-bottom { + border-top: 0; + overflow-y: auto !important; +} + +.webbpm ag-grid-angular .ag-floating-bottom-container .ag-cell { + display: flex; + align-items: center; +} + +.webbpm ag-grid-angular .ag-floating-bottom-container input { + color: var(--color-text-primary); + font-family: 'SegoeSB'; + font-size: var(--size-text-primary); + height: 20px; + padding: 0; + border: 0; + background: transparent; + box-shadow: none; +} + +.webbpm ag-grid-angular .ag-header-cell-menu-button .ag-icon-menu { + height: 25px; +} + +.webbpm .grid-setting-icon { + width: 16px; + height: 25px; + right: 12px; + padding: 0; + background-position: center; +} + +.webbpm .grid-mtm { + width: 46%; + & + .many-to-many-move-buttons { + width: 8%; + & button.btn { + width: 100%; + } + } +} + +.webbpm ag-grid-angular .ag-overlay-loading-center { + border: 1px solid var(--border-light); + box-shadow: 0px 0px 6px 2px rgb(77 72 91 / 6%); +} + +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) > .ag-row.ag-row-selected, +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) > .ag-row.ag-row-hover { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) + .ag-center-cols-clipper > div > div > .ag-row.ag-row-selected, +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) + .ag-center-cols-clipper > div > div > .ag-row.ag-row-hover { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) > .ag-row.ag-row-first, +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) + .ag-center-cols-clipper > div > div > .ag-row.ag-row-first { + border-width: 1px 0 0 0; +} + + +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) > .ag-row:not(.ag-row-first), +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) + .ag-center-cols-clipper > div > div > .ag-row:not(.ag-row-first) { + border-width: 1px 0 0 0; +} + +.webbpm editable-grid ag-grid-angular .ag-floating-bottom .ag-row, +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) > .ag-row-hover, +.webbpm editable-grid ag-grid-angular .ag-pinned-left-cols-container:not(.ag-hidden) + .ag-center-cols-clipper > div > div > .ag-row-hover { + border-color: transparent; +} + +.webbpm editable-grid ag-grid-angular .ag-floating-bottom { + margin-top: 2px; + border: 0; + border-radius: 10px; + background-color: #f0f7fd; +} + +.webbpm editable-grid ag-grid-angular .ag-cell-wrapper { + height: 100%; +} + +.webbpm editable-grid ag-grid-angular .ag-row.ag-row-first { + border-style: solid; + border-width: 0; + border-color: transparent; +} + +.webbpm editable-grid ag-grid-angular .ag-cell input { + padding: 0; + border-color: transparent !important; + background-color: transparent; + box-shadow: none; +} +.webbpm editable-grid ag-grid-angular .ag-cell input:focus { + border-color: transparent !important; + box-shadow: none !important; +} +.webbpm editable-grid ag-grid-angular .ag-cell.ag-cell-value.wb-invalid { + border-color: transparent; +} + +.webbpm editable-grid ag-grid-angular .ag-cell-inline-editing { + background-color: transparent; +} + +.webbpm editable-grid ag-grid-angular check-box-grid-editor .form-group { + margin-bottom: 0; +} + +.webbpm editable-grid ag-grid-angular check-box-grid-editor .form-group > label { + display: flex; + align-items: center; + padding-top: 0; +} + +.webbpm editable-grid ag-grid-angular .ag-body-viewport .ag-row .ag-cell.ag-cell-inline-editing { + border: 0 !important; + background-color: #f0f7fd !important; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor { + padding: 0 !important; + border: 0 !important; + border-radius: 0 !important; + background-color: transparent; + box-shadow: none !important; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor .form-group, +.webbpm editable-grid ag-grid-angular number-field-grid-editor .form-group, +.webbpm editable-grid ag-grid-angular text-field-grid-editor .form-group { + margin-bottom: 0; +} + +.webbpm editable-grid ag-grid-angular text-area-grid-editor .form-control { + font-size: var(--size-text-primary); + min-height: 100px; + border: 0; + background-color: #f0f7fd; +} +.webbpm editable-grid ag-grid-angular text-area-grid-editor .form-control:focus { + box-shadow: none; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-many-grid-editor > div, +.webbpm editable-grid ag-grid-angular .ag-popup-editor auto-complete-grid-editor > div, +.webbpm editable-grid ag-grid-angular .ag-popup-editor combo-box-grid-editor > div, +.webbpm editable-grid ag-grid-angular .ag-popup-editor static-combo-box-grid-editor > div { + align-items: center; + margin-top: -1px; +} + +.webbpm editable-grid ag-grid-angular .ag-header .alarm, +.webbpm editable-grid ag-grid-angular .ag-overlay-loading-center, +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor label, +.webbpm editable-grid ag-grid-angular number-field-grid-editor label { + display: none; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor { + flex: 1; + height: 100%; + padding: 0; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor .form-group { + display: flex; + height: 100%; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor .component-float { + flex: 1; + width: auto; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor .selectize-control, +.webbpm editable-grid ag-grid-angular .ag-popup-editor auto-complete-grid-editor .selectize-control, +.webbpm editable-grid ag-grid-angular .ag-popup-editor combo-box-grid-editor .selectize-control, +.webbpm editable-grid ag-grid-angular .ag-popup-editor static-combo-box-grid-editor .selectize-control, +.webbpm editable-grid ag-grid-angular .ag-popup-editor .date > div, +.webbpm editable-grid ag-grid-angular .ag-popup-editor .date .input-group { + height: 100%; + min-height: auto; + width: 100%; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor .selectize-control.single .selectize-input, +.webbpm editable-grid ag-grid-angular .ag-popup-editor auto-complete-grid-editor .selectize-control.single .selectize-input, +.webbpm editable-grid ag-grid-angular .ag-popup-editor combo-box-grid-editor .selectize-control.single .selectize-input, +.webbpm editable-grid ag-grid-angular .ag-popup-editor static-combo-box-grid-editor .selectize-control.single .selectize-input, +.webbpm editable-grid ag-grid-angular .ag-popup-editor .date input, +.webbpm editable-grid ag-grid-angular .ag-popup-editor .date .input-group-addon { + display: inline-flex; + align-items: center; + height: 100%; + min-height: auto; + padding: 0 10px 1px 11px; + border: 0; + border-radius: 0; + background: #f0f7fd; + box-shadow: none; +} +.webbpm editable-grid ag-grid-angular .ag-popup-editor .date input { + padding-right: 0; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor .selectize-control.single .selectize-input.dropdown-active { + padding-right: 3px; +} +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor .selectize-control.single .selectize-input.dropdown-active::before, +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor .selectize-control.single .selectize-input::after { + display: none; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor input { + padding-left: 5px !important; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor + button-component { + height: 100%; + background: #f0f7fd; +} + +.webbpm editable-grid ag-grid-angular .ag-popup-editor one-to-may-auto-complete-grid-editor + button-component .btn { + color: var(--color-text-primary) !important; + white-space: nowrap; + padding: 0; + background-color: transparent !important; + border: 0 !important; + box-shadow: none !important; +} + +/*---------------- Table Header Menu --------------- */ +.webbpm ag-grid-angular .ag-menu { + padding: 6px; + border: 1px solid #f5f5f5; + border-radius: 12px; + background-color: var(--white); + box-shadow: 0px 100px 80px rgb(0 0 0 / 7%), 0px 40px 30px rgb(0 0 0 / 5%), 0px 22px 18px rgb(0 0 0 / 4%), 0px 12.5px 10px rgb(0 0 0 / 4%), 0px 6.5px 5px rgb(0 0 0 / 3%), 0px 2.5px 2px rgb(0 0 0 / 2%); +} + +.webbpm ag-grid-angular .ag-tab-header { + border: 0; + background-color: var(--white); +} + +.webbpm ag-grid-angular .ag-tab-header .ag-tab { + margin: 0 6px 6px 0; +} + +.webbpm ag-grid-angular .ag-tab-header .ag-tab.ag-tab-selected { + border-color: transparent; + border-radius: 6px; + background-color: #f2f2f2; +} + +.webbpm ag-grid-angular .ag-pinned-left-header { + border-right: 0; +} + +.webbpm ag-grid-angular .ag-header-checkbox-container .ag-icon-checkbox-checked, +.webbpm ag-grid-angular .ag-header-checkbox-container .ag-icon-checkbox-unchecked { + margin-top: 5px; +} + +.webbpm ag-grid-angular .ag-tab-body { + color: var(--color-text-primary); + font-size: var(--size-text-secondary); + padding: 0; +} + +.webbpm ag-grid-angular .ag-menu > .ag-menu-list { + margin: 0px; +} + +.webbpm ag-grid-angular .ag-menu .ag-menu-option { + color: var(--color-text-primary); + font-size: var(--size-text-secondary); +} + +.webbpm ag-grid-angular .ag-menu .ag-menu-option-active { + background-color: #f5f5f5; +} +.webbpm ag-grid-angular .ag-menu .ag-menu-option-active > *:first-child { + border-top-left-radius: 8px; + border-bottom-left-radius: 8px; +} +.webbpm ag-grid-angular .ag-menu .ag-menu-option-active > *:last-child { + border-top-right-radius: 8px; + border-bottom-right-radius: 8px; +} + +.webbpm ag-grid-angular .ag-menu .ag-menu-separator > span { + height: 9px; + background-image: url("data:image/svg+xml;utf8,"); +} + +/*---------------- Side-bar --------------- */ +.webbpm ag-grid-angular .ag-status-bar, +.webbpm ag-grid-angular .ag-side-bar, +.webbpm ag-grid-angular .ag-side-bar .ag-side-buttons, +.webbpm ag-grid-angular .ag-tool-panel-wrapper .ag-column-select-panel { + border: 0; +} +.webbpm ag-grid-angular .ag-side-bar { + background: transparent; +} + +.webbpm ag-grid-angular .ag-side-bar .ag-tool-panel-wrapper { + width: 300px; + border: 1px solid #efefef; + border-radius: 12px 0 0 12px; + background: var(--white); + box-shadow: -2px 0px 12px -6px rgb(0 0 0 / 20%); +} + +.webbpm ag-grid-angular .ag-side-bar .ag-tool-panel-wrapper, +.webbpm ag-grid-angular .ag-side-bar .ag-tool-panel-wrapper .ag-filter-toolpanel-header { + color: var(--color-text-primary); + font-size: var(--size-text-primary); + font-weight: normal; + background: transparent; +} + +.webbpm ag-grid-angular .ag-side-bar .ag-tool-panel-wrapper .ag-filter-panel .ag-filter-air { + padding: 0; + border: 0; +} + +.webbpm ag-grid-angular .ag-side-bar .ag-side-buttons { + width: 30px; + padding-top: 0; +} + +.webbpm ag-grid-angular .ag-side-bar .ag-side-buttons .ag-side-button { + padding-left: 4px; + +} + +.webbpm ag-grid-angular .ag-side-bar .ag-side-buttons .ag-side-button button { + color: var(--color-text-primary); + font-family: 'Segoe'; + font-size: var(--size-text-secondary); + border: 0; + border-radius: 10px; +} +.webbpm ag-grid-angular .ag-side-bar .ag-side-buttons .ag-side-button button:hover { + color: #eb5757; +} + +.webbpm ag-grid-angular .ag-side-bar .ag-side-buttons .ag-side-button.ag-selected button { + color: #eb5757; + background: #f2f2f2; +} + +.webbpm ag-grid-angular .ag-primary-cols-header-panel, +.webbpm ag-grid-angular .ag-filter-toolpanel-search { + align-items: center; + height: 50px; + padding-top: 0; + border-bottom: 1px solid #efefef; +} + +.webbpm ag-grid-angular .ag-tool-panel-wrapper .ag-column-panel-column-select { + border: 0; +} + +.webbpm ag-grid-angular .ag-tool-panel-wrapper .ag-column-select-panel .ag-column-tool-panel-column-group, +.webbpm ag-grid-angular .ag-tool-panel-wrapper .ag-column-select-panel .ag-column-tool-panel-column { + height: 30px; + line-height: 30px; + margin-left: 6px; + margin-right: 6px; + border-radius: 8px; +} +.webbpm ag-grid-angular .ag-tool-panel-wrapper .ag-column-select-panel .ag-column-tool-panel-column-group:hover, +.webbpm ag-grid-angular .ag-tool-panel-wrapper .ag-column-select-panel .ag-column-tool-panel-column:hover { + background: #f5f5f5; + cursor: pointer; +} + +.webbpm ag-grid-angular .ag-tool-panel-wrapper .ag-column-select-panel .ag-column-tool-panel-column-group { + font-family: 'SegoeSB'; +} + +.webbpm ag-grid-angular .ag-column-select-panel .ag-column-tool-panel-column.ag-toolpanel-add-group-indent { + padding-left: 44px; +} + +.webbpm ag-grid-angular .ag-icon-settings { + height: 10px; + width: 10px; + background: url('../img/icons/settings-sm.svg') center no-repeat; + opacity: 0.7; +} + +.webbpm ag-grid-angular .ag-side-bar .card { + border: 0; +} + +.webbpm ag-grid-angular .ag-side-bar .card-header { + text-align: left; + padding: 6px; + border: 0; + background: transparent; +} + +.webbpm ag-grid-angular .ag-side-bar .card-header i { + float: none; + font-size: var(--size-text-secondary); + text-align: center; + width: 16px; + margin: 0; +} +.webbpm ag-grid-angular .ag-side-bar .card-header i.fa-chevron-right::before { + content: "\f105"; +} +.webbpm ag-grid-angular .ag-side-bar .card-header i.fa-chevron-down::before { + content: "\f107"; +} + +.webbpm ag-grid-angular .ag-side-bar .card-block, +.webbpm ag-grid-angular.ag-side-bar .ag-filter-toolpanel-body { + margin: 0px 6px; +} + +.webbpm ag-grid-angular .ag-side-bar .card-block button { + color: var(--color-text-primary); + min-height: 35px; + margin-bottom: 6px; + border: 1px solid var(--border-light); + border-radius: 8px; + background: var(--white); + box-shadow: 0px 2px 3px -2px rgb(0 0 0 / 20%); +} + +.webbpm ag-grid-angular .ag-side-bar .ag-filter-body-wrapper > *, +.webbpm ag-grid-angular .ag-filter .ag-filter-body-wrapper > * { + margin-bottom: 6px; +} + +.webbpm ag-grid-angular .ag-side-bar .ag-filter-toolpanel .ag-group, +.webbpm ag-grid-angular .ag-side-bar .ag-filter-toolpanel .ag-group .ag-filter-toolpanel-instance-filter { + margin: 0; + border: 0; +} + +.webbpm ag-grid-angular .ag-column-drop-horizontal.ag-column-drop { + padding: 0; + border: 0; + background-color: transparent; +} + +.webbpm ag-grid-angular .ag-column-drop-horizontal.ag-column-drop > div:not(.ag-column-drop-list) { + display: none; +} + +.webbpm ag-grid-angular .ag-popup .ag-select-list-item { + font-size: var(--size-text-primary); + background: transparent; +} +.webbpm ag-grid-angular .ag-popup .ag-select-list-item.ag-active-item { + color: var(--color-link); +} + +.webbpm ag-grid-angular .ag-popup .ag-popup-child:not(.ag-tooltip-custom) { + padding: 6px 4px; + border: 0; + border-radius: 10px; + background-color: var(--white); + box-shadow: 0px 0px 6px 2px rgb(77 72 91 / 12%); +} + +.webbpm ag-grid-angular .ag-column-drag { + margin: 0 0 0 6px; + background: url('../img/icons/dots-six-vertical.svg') 0 0 no-repeat; +} + +.webbpm sales-grid .grid { + display: flex; + flex-direction: column; +} + +.webbpm sales-grid .grid > ag-grid-angular { + flex: 1; + overflow: hidden; +} + +.webbpm sales-grid .grid .ag-paging-panel { + display: flex; + flex-direction: row; +} + +.webbpm sales-grid .grid .table-panel-legend { + display: flex; + flex: 1; + justify-content: right; + margin: 0 80px 0 0; +} + +.webbpm sales-grid .grid .table-panel-legend > span { + position: relative; + margin-left: 48px; +} +.webbpm sales-grid .grid .table-panel-legend > span::before { + content: ""; + position: absolute; + width: 16px; + height: 16px; + left: -24px; + top: 0; + border: 1px solid var(--white); + border-radius: 8px; + box-shadow: 0px 1px 2px -1px rgb(0 0 0 / 45%); +} +.webbpm sales-grid .grid .table-panel-legend > .order-reject::before { + background: #feffee; +} +.webbpm sales-grid .grid .table-panel-legend > .order-return::before { + background: #fff1f1; +} +.webbpm sales-grid .grid .table-panel-legend > .order-self-redemption::before { + background: #edfcf8; +} + +.webbpm ag-grid-angular .ag-overlay-loading-center { + color: var(--color-text-primary); + font-size: var(--size-text-secondary); + padding: 20px; + border: 1px solid #f5f5f5; + border-radius: 12px; + background: var(--white); + box-shadow: 0px 100px 80px rgb(0 0 0 / 7%), 0px 40px 30px rgb(0 0 0 / 5%), 0px 22px 18px rgb(0 0 0 / 4%), 0px 12.5px 10px rgb(0 0 0 / 4%), 0px 6.5px 5px rgb(0 0 0 / 3%), 0px 2.5px 2px rgb(0 0 0 / 2%); +} + +.webbpm ag-grid-angular .ag-filter .ag-filter-header-container { + height: 32px; +} + +.webbpm ag-grid-angular .ag-filter .ag-filter-header-container:nth-child(2) { + margin-top: 8px; + border-bottom: 1px solid #e2e2e2; +} + +.webbpm ag-grid-angular .ag-virtual-list-item:hover { + border-radius: 8px; + background: #f5f5f5; +} + +.webbpm ag-grid-angular .ag-virtual-list-item:hover > label { + cursor: pointer; +} + +.webbpm ag-grid-angular .ag-filter label { + font-size: var(--size-text-primary); + width: auto; + margin: 0; +} + +.webbpm ag-grid-angular .ag-filter .ag-filter-checkbox { + margin-right: 6px; +} + +.webbpm .modal-content { + border: 0; + border-radius: 15px; + box-shadow: 0px 0px 30px 2px rgb(77 72 91 / 12%); + background-color: var(--white); +} + +.webbpm .modal-header { + border-bottom: 1px solid var(--border-light); +} + +/*-------------- Containers --------------- */ +.webbpm .block-content { + margin: 0; + border: 0; +} + +.webbpm .block-content, +.webbpm .block-content > div { + display: flex; + flex-direction: column; + height: 100%; +} + +.webbpm .nav-tabs { + width: max-content; + margin-bottom: 30px; + border: 0; + border-radius: 20px; + background-color: var(--border-light); +} + +.webbpm .nav-tabs .nav-item { + margin-bottom: 0; +} + +.webbpm .nav-tabs .nav-link { + color: var(--color-text-primary); + padding: 6px 14px; + border: 0; + background-color: transparent; +} + +.webbpm .nav-tabs .nav-link:hover, +.webbpm .nav-tabs .nav-link:focus, +.webbpm .nav-tabs .nav-link:active { + background-color: transparent; +} + +.webbpm .nav-tabs .active .nav-link { + color: var(--white); + border: 0; + border-radius: 20px; + background-color: var(--color-link); + box-shadow: 0px 0px 6px 2px rgb(77 72 91 / 24%); +} + +.webbpm tab-container .nav-tabs ~ .tab-active > .active { + flex-direction: column; + display: flex; + padding: 0; + border: 0; +} +/*------------- end Containers ------------ */ + +/*----------------- Filters ---------------- */ +.webbpm collapsible-panel:not(.grid-setting-panel):not(.column-states-panel):not(.filter-states-panel) .card, +.webbpm .fieldset { + border: 0; + border-radius: 8px; + background-color: var(--bg-light); +} + +.webbpm collapsible-panel:not(.grid-setting-panel):not(.column-states-panel):not(.filter-states-panel) .card-header, +.webbpm .fieldset > legend { + font-family: 'SegoeSB'; + font-size: 18px; + padding: 15px 20px; + border: 0; + background: transparent; +} + +.webbpm collapsible-panel:not(.grid-setting-panel):not(.column-states-panel):not(.filter-states-panel) .card-header .font-bold { + margin-top: 10px; +} + +.webbpm collapsible-panel:not(.grid-setting-panel):not(.column-states-panel):not(.filter-states-panel) .card-block { + padding: 0 20px 15px 20px; +} + +.webbpm .fieldset > .legend + div { + padding: 55px 20px 15px 20px; +} + +.webbpm collapsible-panel:not(.grid-setting-panel):not(.column-states-panel):not(.filter-states-panel) .card i { + float: none; + font-size: var(--size-text-secondary); + margin-right: 6px; + margin-left: 0; +} +/*-------------- end Filters -------------- */ + +/*-------------- Admin-pages -------------- */ +.webbpm [page-processinstance], +.webbpm #process-instance, +.webbpm #process-instance > vbox, +.webbpm #process-instance > vbox > div { + height: 100%; +} + +.webbpm [page-processinstance] #process-instance tab-container > div, +.webbpm [page-processinstance] #process-instance tab-container .tab-active { + display: flex !important; +} + +.webbpm [id^="user-management-"], +.webbpm #process-instance-list, +.webbpm #process-instance { + padding: 0 40px; +} + +.webbpm [id^="user-management-"] > vbox > div > *:not(.title), +.webbpm #process-instance-list > vbox > div > *:not(.title) { + margin-bottom: 20px; +} + +.webbpm [id^="user-management-"] .card label, +.webbpm #process-instance-list .card label { + display: inline-flex; +} + +.webbpm [id^="user-management-"] .card .width-full>div > label, +.webbpm #process-instance-list .card .width-full>div > label { + display: table-cell; + padding-top: 5px; +} + +.webbpm #user-management-authorities { + margin-top: 40px; +} + +.webbpm #process-instance-list static-column-grid { + margin-top: 20px; +} + +.webbpm #process-instance-list .radio-block .radio-content { + display: flex; + flex-direction: row; + align-items: flex-start; +} + +.webbpm #process-instance-list .radio-block .radio-content label.control-label { + padding-top: 0; +} + +.webbpm #process-instance bpmn-back-button { + margin: 20px 0; +} +/*----------- end Admin-pages ------------- */ + +/*---------------- Calendar --------------- */ +.webbpm .calendar .months-container { + display: flex !important; + flex-wrap: wrap; + width: 100%; +} + +.webbpm .calendar .month-container { + float: none; + height: max-content; + margin-bottom: 20px; +} + +.webbpm .calendar .month .day { + font-size: var(--size-text-secondary); +} + +.webbpm .calendar .month .day.day-start { + color: var(--white); + border-radius: 4px; + background-color: var(--color-link) !important; +} +.webbpm .calendar .month .day.day-start .day-content:hover { + color: var(--white); +} + +.webbpm .calendar .month .day .day-content:hover { + color: var(--color-link); + background-color: transparent; +} + +.webbpm .date .bootstrap-datetimepicker-widget { + color: var(--color-text-primary); + width: min-content; + padding: 10px; + margin: 0; + border: 1px solid var(--border-light); + + border-radius: 10px; + background-color: var(--white); + box-shadow: 0 8px 12px rgb(77 72 91 / 5%), 0 6px 10px rgb(77 72 91 / 0%); +} +.webbpm .date .bootstrap-datetimepicker-widget.dropdown-menu.bottom:before, +.webbpm .date .bootstrap-datetimepicker-widget.dropdown-menu.bottom:after, +.webbpm .date .bootstrap-datetimepicker-widget table td.today:before { + display: none; +} + +.webbpm .date .bootstrap-datetimepicker-widget table thead tr:first-child th:hover { + color: var(--color-link); + background-color: transparent; +} + +.webbpm .bootstrap-datetimepicker-widget table td.day:hover, +.webbpm .bootstrap-datetimepicker-widget table td.hour:hover, +.webbpm .bootstrap-datetimepicker-widget table td.minute:hover, +.webbpm .bootstrap-datetimepicker-widget table td.second:hover { + color: var(--color-link); + background-color: transparent; +} + +.webbpm .date .bootstrap-datetimepicker-widget table td.today, +.webbpm .date .bootstrap-datetimepicker-widget table td.today:hover { + color: var(--white) !important; + background-color: var(--color-link); +} + +.webbpm .date .bootstrap-datetimepicker-widget table td.active { + color: var(--color-text-primary) !important; + text-shadow: none; + background-color: #f9f9f9; +} + +.webbpm .btn-group-viewdate.btn-group .btn { + width: 38px; + height: 38px; + border-radius: 19px; + cursor: pointer; +} + +.webbpm .btn-group-viewperiod.btn-group .btn { + border-radius: 20px; + cursor: pointer; +} + +.webbpm .btn-group-viewperiod.btn-group .btn.active { + color: var(--white) !important; + border-color: var(--color-link) !important; + background: var(--color-link) !important; + box-shadow: 0px 0px 6px 2px rgb(77 72 91 / 6%); +} +.webbpm .btn-group-viewperiod.btn-group .btn.active:hover, +.webbpm .btn-group-viewperiod.btn-group .btn.active:active { + border-color: #1b84d2 !important; + background: #1b84d2 !important; +} +.webbpm .btn-group-viewperiod.btn-group .btn.active:focus { + border-color: #1b84d2 !important; + background: #1b84d2 !important; + box-shadow: none; +} + +.webbpm .btn-group-viewdate.btn-group .btn + .btn, +.webbpm .btn-group-viewperiod.btn-group .btn + .btn { + margin-left: 10px; +} + +.webbpm .cal-week-view .cal-header.cal-weekend span { + color: var(--color-link); + opacity: 0.7; +} + +.webbpm .cal-month-view .cal-day-badge { + height: 20px; + background-color: var(--color-link); +} + +.webbpm .cal-month-view .cal-open-day-events { + color: var(--color-text-primary); + background-color: #e6ebee; + box-shadow: none; +} + +.webbpm .cal-week-view .cal-event { + color: var(--color-link); +} +/*------------- Calendar - end ------------ */ + +/*---------- Block-dialog - end ----------- */ +.webbpm .block-dialog { + position: relative; + max-width: 800px; + padding: 60px 60px 50px 110px !important; + margin: 30px auto; + border: 0; + border-radius: 15px; + background-color: var(--white); + box-shadow: 0px 0px 30px 2px rgb(77 72 91 / 12%); + + &::before { + content: "\f332"; + position: absolute; + color: var(--color-link); + font-family: bootstrap-icons !important; + font-size: 30px; + top: 60px; + left: 60px; + } + + .title, + .title > div > div:last-of-type{ + padding: 0; + } +} +/*---------- Block-dialog - end ----------- */ + +/*------------------ ミ嶢オミイミセミオ ミシミオミスム -------------------*/ +/* +.webbpm .task-container { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + margin: 0 !important; + padding: 0 !important; + overflow: hidden; +} + +.webbpm .task-left-menu { + float: none; + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 240px; + padding: 0; + margin: 0; + background: #eef2f4; + z-index: 1; + overflow: auto; +} + +.webbpm .task-right-content { + float: none; + position: absolute; + top: 0; + bottom: 0; + left: 240px; + right: 0; + padding: 0; + margin: 0; + overflow: auto; +} + +.webbpm .task-left-menu > div { + padding: 15px 10px 15px 15px; +} + +.webbpm .task-left-menu auto-complete .component-float { + width: 100%; +} + +.webbpm .task-right-content > div { + padding: 0 15px 15px; +} + +.webbpm .menu-group-title { + font-weight: normal; +} + +.webbpm .menu-element > li > div:first-child { + font-size: 15px; + width: 100%; +} + +.webbpm .menu-element > li > div:last-child { + padding: 2px 6px; + border-radius: 6px; +} + +.webbpm .menu-group-title + menu { + padding-left: 0; +} + +.webbpm .menu-group .menu-group { + padding-left: 15px; +} +*/ +/*----------------- end - ミ嶢オミイミセミオ ミシミオミスム -----------------*/ + +/*-------------------- ミ頒クミーミウムミーミシミシミー ミ寅ーミスムひー --------------------*/ +.webbpm .gmajorheading { + background-color: #e0e5e9; +} +.webbpm .gminorheading { + background-color: #f1f5f7; +} +.webbpm .gminorheadingwkend { + background-color: #cce9f4; +} +.webbpm .gtaskcellwkend { + background-color: #f9fafb; +} + +.webbpm .gitemhighlight td { + background-color: #bcedfc !important; +} +/*----------------- end - ミ頒クミーミウムミーミシミシミー ミ寅ーミスムひー -----------------*/ + +.webbpm .modal-backdrop.show { + filter: alpha(opacity=25); + opacity: 0.25; + background-color: var(--black); +} + +/*------------------ FilePreview ------------------*/ +.webbpm .files-view { + width: auto; +} +/*--------------- end - FilePreview ---------------*/ diff --git a/frontend/src/resources/css/inbox-app.css b/frontend/src/resources/css/inbox-app.css new file mode 100644 index 0000000..ea6a419 --- /dev/null +++ b/frontend/src/resources/css/inbox-app.css @@ -0,0 +1,342 @@ +@font-face { + font-family: 'Segoe'; + src: url('../fonts/Segoe.ttf'); +} +@font-face { + font-family: 'SegoeSL'; + src: url('../fonts/SegoeSL.ttf'); +} +@font-face { + font-family: 'SegoeSB'; + src: url('../fonts/SegoeSB.ttf'); +} +@font-face { + font-family: 'SegoeB'; + src: url('../fonts/SegoeB.ttf'); +} +@font-face { + font-family: 'SegoeBL'; + src: url('../fonts/SegoeBL.ttf'); +} + +.webbpm a { + color: var(--color-link); + &:hover, + &:focus, + &:active { + color: var(--color-link-hover); + text-decoration: none; + } +} + +body.webbpm { + display: flex; + flex-direction: column; + color: var(--color-text-primary); + font-family: 'Segoe'; + background-color: var(--white); +} + +.webbpm .container { + padding: 70px 0 0; +} + +body.webbpm [id="page"], +.webbpm .container .container-inside { + font-family: 'Segoe'; + font-size: var(--size-text-primary); +} + +.webbpm .logo { + height: auto; + width: auto; +} + +.webbpm .header-logo { + display: flex; + flex-direction: row; + align-items: center; + margin-left: 40px; + + .logo a { + background: url('../../../src/resources/img/logo-full.png') no-repeat 0 50%; + } +} + +.webbpm .header-menu { + display: flex; + flex-direction: row; + margin-left: auto; + margin-right: 40px; + & > * { + margin-right: 20px; + &:last-child { + margin-right: 0; + } + } + .nav-link { + display: flex; + align-items: center; + justify-content: center; + color: var(--white); + font-size: var(--size-text-primary); + width: 30px; + height: 30px; + padding: 0; + border: 0; + border-radius: 15px; + background-color: var(--color-text-primary); + outline: transparent; + + &::after { + display: none; + } + + &:hover, + &:focus, + &:active { + background-color: var(--color-link); + } + } + .logout .user-info { + display: flex; + flex-direction: column; + color: var(--black); + padding: 4px 20px; + background: transparent; + cursor: default; + + & > * { + display: flex; + padding-bottom: 10px; + margin: 0 0 10px 0; + border-bottom: 1px solid #f1f5f9; + &:last-child { + margin-bottom: 0; + } + } + + .user-fio { + padding-bottom: 0; + margin-bottom: 0; + border-bottom: 0; + } + + .user-department { + color: #a0b1bc; + line-height: 1.2; + } + } +} + +.webbpm .header { + display: flex; + font-family: 'Segoe'; + width: 100%; + height: auto; + min-height: 70px; + border-bottom: 1px solid var(--bg-light); + background: var(--white); + box-shadow: 0px 15px 20px 0px rgb(0 0 0 / 4%); + + & > div > * { + position: relative; + display: flex; + align-items: center; + } + + .dropdown-menu.show { + top: 69px !important; + right: 0px !important; + left: auto !important; + transform: none !important; + margin: 0; + border: 0; + border-radius: 0 0 10px 10px; + background-color: var(--white); + box-shadow: 0 8px 12px rgb(77 72 91 / 5%), 0 6px 10px rgb(77 72 91 / 0%); + + .dropdown-menu-inner { + max-height: calc(100vh - 140px); + overflow-y: auto; + } + } + + :is(process, admin-menu) .dropdown-menu.show { + top: 49px !important; + } + + .logout .dropdown-menu.show { + width: 300px; + } +} + +.webbpm .dropdown-menu-inner:hover { + background-color: transparent; +} + +.webbpm .dropdown-item { + padding: 4px 20px; + &:hover, + &:focus, + &:active { + color: var(--color-link); + background-color: transparent; + outline: transparent; + } +} + +.webbpm footer { + color: var(--color-text-primary); + font-size: var(--size-text-secondary); + left: 0; + right: 0; + padding: 15px 40px; + border-top: 1px solid var(--border-light); + a { + color: var(--color-text-primary); + &:hover { + color: var(--color-link); + } + } +} + +/*-------------- Menu tasks -------------- */ +.webbpm .task-list-tree-panel { + padding: 0 40px; + .task-list-filter { + font-family: 'Segoe'; + box-shadow: none; + + li:first-of-type { + font-family: 'SegoeSB'; + font-weight: normal; + padding-left: 0; + } + + li.ontime label div { + background-color: #31c980; + } + + li.overdue label div { + background-color: var(--color-link); + } + } +} + +.webbpm .task-list-workplace { + padding: 20px 40px 0 40px; +} + +.webbpm .task-tbl :is(.tr.task-ontime, .tr.task-overdue) > .td.task::before { + top: 24px; + background-color: #31c980; +} + +.webbpm .task-tbl .tr.task-overdue > .td.task::before { + background-color: var(--color-link); +} + +.webbpm .task-tbl .thead { + display: table-header-group; + border: 0; + background: transparent; +} + +.webbpm .task-tbl .th { + color: var(--color-text-primary); + font-family: 'SegoeSB'; + font-size: var(--size-text-secondary); + font-weight: normal; + padding: 9px 12px; + border: 0; + background: var(--bg-light); +} +.webbpm .task-tbl .th:first-child { + border-top-left-radius: 12px; + border-bottom-left-radius: 12px; +} +.webbpm .task-tbl .th:last-child { + border-top-right-radius: 12px; + border-bottom-right-radius: 12px; +} + +.webbpm .task-tbl .td { + color: var(--color-text-primary); + font-size: var(--size-text-primary); + padding: 16px 12px; + border: 0; +} + +.webbpm .task-tbl .thead ~ .tr { + border-color: var(--border-light); + border-width: 1px 0 0 0; + border-style: solid; +} +.webbpm .task-tbl .thead + .tr { + border-top-color: transparent; +} + +.webbpm .task-tbl .thead ~ .tr:hover { + border-top-color: transparent; + border-bottom-color: transparent; +} +.webbpm .task-tbl .thead ~ .tr:hover +.tr { + border-top-color: transparent; +} + +.webbpm .task-tbl .thead ~ .tr:hover .td { + background-color: #f9f9f9; +} +.webbpm .task-tbl .thead ~ .tr:hover .td:first-child { + border-top-left-radius: 12px; + border-bottom-left-radius: 12px; +} +.webbpm .task-tbl .thead ~ .tr:hover .td:last-child { + border-top-right-radius: 12px; + border-bottom-right-radius: 12px; +} +/*------------- end Menu tasks ----------- */ + +/*----------------- Login ---------------- */ +.webbpm :is(.form-signin, .form-signup, .confirm) { + color: var(--color-text-primary); + width: 560px; + padding: 60px 80px; + margin: 30px auto; + border: 0; + border-radius: 15px; + box-shadow: 0px 0px 30px 2px rgb(77 72 91 / 12%); + background-color: var(--white); +} + +.webbpm :is(.form-signin, .form-signup) .row.title { + position: relative; + padding: 0; +} + +.webbpm .form-signin h1, +.webbpm .form-signin h2, +.webbpm .form-signup h2, +.webbpm .confirm h2 { + font-family: 'SegoeB'; + font-size: 32px; + text-align: left; + margin-bottom: 20px; +} + +.webbpm :is(.form-signin, .form-signup, .confirm) .logo { + position: absolute; + top: -10px; + right: 0; + width: 145px; + height: 40px; + background: none; +} + +.webbpm .form-signin .row.registration > * + *, +.webbpm .form-signin .login-btn-box .password, +.webbpm .form-signin .login-btn-box .btn + .btn { + margin-left: 20px; +} +/*--------------- end Login -------------- */ \ No newline at end of file diff --git a/frontend/src/resources/css/structure.css b/frontend/src/resources/css/structure.css new file mode 100644 index 0000000..b7dd9ac --- /dev/null +++ b/frontend/src/resources/css/structure.css @@ -0,0 +1,846 @@ +:root { + --white: #ffffff; + --black: #000000; + --color-text-primary: #404954; + --color-link: #1c92ea; + --color-link-hover: #1b84d2; + --bg-light: #f5f7fa; + --bg-secondary: #4c5969; + --border-light: #e3e6ed; + + --size-text-primary: 16px; + --size-text-secondary: 14px; +} + +* { + margin: 0; + padding: 0; +} + +*, *:before, *:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +body.webbpm .form-signin label { + width: 160px; + margin-right: 0; +} + +.webbpm .progress { + position: absolute; + width: 64px; + height: 64px; + margin-bottom: 0 !important; + background: url("../img/progress.gif") no-repeat 0 0; +} + +.webbpm > .progress { + top: 50%; + left: 50%; + margin-top: -30px; + margin-left: -30px; +} + +.webbpm .search-task-progress-bar { + text-align: center; +} + +.webbpm .modal-body .progress, +.webbpm .search-task-progress-bar .progress { + position: relative; + top: 0; + margin-top: 0; +} + +/*-- common class --*/ +.webbpm .fl-left { + float: left; +} + +.webbpm .fl-right { + float: right; +} + +.webbpm .anchor { + float: none; + clear: both; +} + +.webbpm :is(ul, ol) li { + list-style: none; +} + +.webbpm :is(h1, h2, h3) { + margin: 0; + font-weight: normal; +} +.webbpm h1 { + font-size: 2.33em; +} +.webbpm h2 { + font-size: 2em; +} +.webbpm h3 { + font-size: 1.5em; +} + +.webbpm .table { + display: table; +} + +.webbpm .tr { + display: table-row; +} + +.webbpm .td, .webbpm .th { + display: table-cell; +} + +/*-- layout --*/ +html, body.webbpm { + width: 100%; + height: 100%; + display: block; +} + +body.webbpm { + background-color: #f9f9fa; + font-family: Arial; + font-size: var(--size-text-secondary); + min-height: 0; + padding: 0; +} + +.webbpm .wrapper { + height: 100%; + min-height: 100%; + position: relative; +} + +.webbpm .container { + width: 100%; + max-width: 100%; + height: auto; + margin: 0; + padding: 67px 0 0; + position: absolute; + top: 0px; + left: 0; + right: 0; + bottom: 50px; + border: 0; + overflow: hidden; + + [ng-include="taskPageFile"] { + position: relative; + min-height: 100%; + height: 100%; + overflow: auto; + } + .container-inside { + font-family: Arial; + font-size: var(--size-text-secondary); + position: relative; + height: 100%; + overflow: auto; + } +} + +.webbpm footer { + position: absolute; + color: var(--black); + font-size: 12px; + bottom: 0; + left: 15px; + right: 15px; + height: 50px; + padding: 15px 0; + border-top: 1px solid #c1c1c1; + background: transparent; + + span + span { + padding-left: 20px; + } +} +/*--------- TOP MENU ----------*/ +.webbpm .logo { + display: inline-block; + margin: 0; + float: left; + + a { + width: 200px; + height: 67px; + position: absolute; + background: url("../img/logo.png") no-repeat 0 0; + } +} + +.webbpm .header { + position: absolute; + color: var(--white); + font-family: Corbel; + font-size: var(--size-text-secondary); + top: 0; + left: 0; + right: 0; + height: 67px; + min-height: 67px; + line-height: normal; + border: 0; + padding: 0; + background: #b9c0ca; + z-index: 997; + + .nav .nav-link { + color: var(--white); + float: none; + display: block; + line-height: 60px; + padding: 0 15px 0 60px; + text-shadow: none; + cursor: pointer; + } + + .nav .nav-link:hover { + text-decoration: none; + } +} + +.webbpm .dropdown-menu { + background-color: #eee; +} + +.webbpm .nav .nav-item .dropdown-menu:after { + border-bottom: 6px solid #eee; +} + +.webbpm .inner { + overflow-y: auto; +} + +@media (min-width: 768px) { + .webbpm .navbar .nav > * { + float: left; + } +} + +@media (max-width: 767px) { + .webbpm .dropdown-menu > div > button { + color: #d1dbe5; + } +} + +/*--------- end - TOP MENU ----------*/ +.webbpm .user-department, +.webbpm .user-info { + color: #5a6473; +} + +.webbpm .user-info > * { + display: inline-block; + margin-left: 5px; +} + +.webbpm [log-out] { + max-width: 40%; + margin-right: 15px; +} + +.webbpm .content { + padding: 0 20px; +} + +.webbpm .inner { + min-height: 100%; + height: 100%; + overflow-y : scroll; +} + +/*--------------task-list------------------*/ +.task-list { + font-size: 0; + height: 100%; + min-height: 100%; +} + +.task-list > div { + display: block; + float: left; + height: 100%; + min-height: 100%; + font-size: var(--size-text-secondary); +} + +.task-list-tree-panel { + width: 20%; + background: #e9edf2; + border-right: 1px solid #b9c1ca; +} + +.task-list-tree-panel .task-list-filter { + position: relative; + margin-top: 15px; + z-index: 10; +} + +.task-list-tree-panel .task-list-filter li { + position: relative; + padding: 8px 10px; + margin: 2px 10px; +} + +.task-list-tree-panel .task-list-filter li::before { + content: ""; + position: absolute; + left: 0px; + bottom: 0px; + right: 0; + top: 0; + border: 1px solid rgb(206, 212, 219); + border-radius: 4px; + background-color: var(--white); + opacity: 0.6; +} + +.task-list-tree-panel .task-list-filter li label:hover { + cursor: pointer; +} + +.task-list-tree-panel .task-list-filter li label { + position: relative; + width: 100%; + margin: 0; + z-index: 11; +} + +.task-list-tree-panel .task-list-filter li label input[type="radio"] { + float: left; + margin-top: 2px; + margin-right: 4px; +} + +.task-list-tree-panel .task-list-filter li label span { + float: right; + background-color: #bbb; + padding: 0px 4px; + border-radius: 3px; + min-width: 25px; + text-align: center; + color: var(--white); +} + +.task-list-tree-panel .task-list-filter li.ontime label span { + background-color: #a0c367; +} + +.task-list-tree-panel .task-list-filter li.overdue label span { + background-color: #fc2d2d; +} + +.task-list-header { + border-bottom: 1px solid #b9c1ca; + background-color: #ccd6e0; + height: 30px; + line-height: 30px; + color: #565968; + font-size: var(--size-text-secondary); + padding: 0 12px; +} + +.structure-box { + padding: 15px; +} + +.task-list-workplace { + width: 80%; + padding: 15px 15px 0; + overflow-y: auto; +} +/*--------------task-list end--------------*/ + +/*---------------table-list----------------*/ +.task-tbl { + background: var(--white); + width: 100%; + border-collapse: collapse; +} + +.task-tbl .td, .task-tbl .th { + border: 1px solid #b9c1ca; + padding: 10px 15px; +} + +.task-tbl .th { + color: #565968; +} + +.task-tbl .td { + color: #333; +} + +.task-tbl .thead { + background: #ccd6e0; +} + +.task-tbl > .tr:hover { + cursor: pointer; + background: #e9edf2; +} + +.task-tbl .tr.task-ontime > .td.task, +.task-tbl .tr.task-overdue > .td.task { + position: relative; + padding-left: 20px; +} + +.task-tbl .tr.task-ontime > .td.task::before, +.task-tbl .tr.task-overdue > .td.task::before { + content: ""; + position: absolute; + top: 12px; + left: 5px; + width: 10px; + height: 10px; + background-color: #a0c367; + border-radius: 10px; + z-index: 1; +} + +.task-tbl .tr.task-overdue > .td.task::before { + background-color: #ff0000; +} +/*----------------table-list end----------------*/ + +/*--------------ミ榧コミスミセ ムミセミセミアム禍オミスミクム ミセミア ミセム威クミアミコミオ--------------*/ +.webbpm #toast-container { + font-size: 12px; + bottom: auto; + overflow-y: auto; + overflow-x: hidden; + max-height: 95%; +} + +.webbpm #toast-container .toast:hover { + box-shadow: 0 0 12px #999999; +} + +.webbpm #toast-container .ngx-toastr { + min-width: 540px; + opacity: 0.9; +} + +.webbpm #toast-container .toast-error { + background-color: #d9534f; +} + +.webbpm #toast-container .toast-close-button { + text-shadow: none; +} + +.webbpm .toast-message > div { + display: none; +} + +.webbpm .toast-message > .active { + display: block; +} + +.webbpm .toast-message > .active::after { + display: block; + content: ""; + float: none; + clear: both; +} + +.webbpm .toast-message > .active a { + float: right; + margin: 5px 0; +} + +.webbpm .toast-message > .toast-msg-close.active ~ .toast-msg-text { + display: block; + font-size: 0.8em; +} + +.webbpm .toast-message a:not([href]):not([tabindex]) { + text-decoration: underline; +} +/*------------ミ榧コミスミセ ムミセミセミアム禍オミスミクム ミセミア ミセム威クミアミコミオ end------------*/ + +/*----------------- ミ樮威クミアミコミー 404 -------------------*/ +.webbpm .container .task-not-found-page { + position: relative; + display: table; + width: 100%; + height: 100%; +} + +.webbpm .container .task-not-found-container { + display: table-cell; + color: var(--black); + font-size: 1.8em; + background-color: #c9d4e0; + text-align: center; + vertical-align: middle; +} + +.webbpm .container .task-not-found-container > div { + display: inline-block; +} + +.webbpm .container .task-not-found-container > div:first-child { + color: var(--white); + font-size: 7.8em; + font-weight: bold; +} + +.webbpm .container .task-not-found-container > div:last-child { + text-align: left; + margin-left: 40px; +} + +.webbpm .container .task-not-found-container h2 { + font-size: 2em; + margin-bottom: 10px; +} + + +.webbpm .container .task-not-found-container a { + cursor: pointer; +} +/*--------------- end ミ樮威クミアミコミー 404 -----------------*/ + +/*-------------- MOBILE --------------*/ +.webbpm.mobile .task-list-tree-panel, +.webbpm.mobile footer { + display: none; +} + +.webbpm.mobile .task-list-workplace { + margin-left: 0; +} + +.webbpm.mobile .container { + bottom: 0; +} + +.webbpm.mobile form { + overflow: hidden; +} + +.webbpm.mobile .form-signin { + width: auto; + padding: 20px; + margin: 40px 20px; + border-radius: 4px; +} + +.webbpm.mobile .form-signin h1, +.webbpm.mobile .form-signin h2 { + margin-left: 0; +} + +.webbpm.mobile .form-signin label { + text-align: left; +} + +.webbpm.mobile .form-signin input[type="text"], +.webbpm.mobile .form-signin input[type="password"] { + width: 100%; +} + +.webbpm.mobile .form-signin .login-btn-box { + width: auto; + margin-right: 0; +} +/*-------------- end MOBILE --------------*/ + + +/*-------------- ミ斷榧漬ォミ ミ頒侑厘籍厰 --------------*/ +/*------------------ ミ、ミクミサム袴びム ------------------*/ +.webbpm .task-list { + height: auto; + min-height: auto; +} + +.webbpm .task-list > .task-list-tree-panel { + background: var(--white); + border-right: 0; +} + +.webbpm .task-list > .task-list-tree-panel, +.webbpm .task-list > .task-list-workplace { + font-size: var(--size-text-secondary); + float: none; + width: 100%; + height: auto; + min-height: auto; +} + +.webbpm .task-list-tree-panel .task-list-filter { + font-family: Corbel; + margin: 0; + box-shadow: 0px 4px 10px -5px rgba(40, 40, 40, 0.3); + + ul { + margin: 0; + } + + li { + display: inline-block; + padding: 12px 0px; + margin: 0; + + &:first-of-type { + font-size: 1.4em; + font-weight: bold; + width: 197px; + padding: 0 15px; + } + + &::before { + display: none; + } + + label { + font-size: 1.3em; + font-weight: normal; + } + + label div { + display: inline-block; + width: 10px; + height: 10px; + border-radius: 10px; + margin-right: 8px; + } + + &.ontime label div { + background-color: #2da6a1; + } + + &.overdue label div { + background-color: #9c5d7a; + } + + label input[type="radio"] { + float: none; + display: none; + } + + label span { + float: none; + color: var(--black); + font-weight: normal; + text-align: left; + min-width: auto; + padding: 5px 15px; + border-radius: 0; + background-color: transparent; + } + + label input[type="radio"].ng-valid-parse ~ span { + background-color: #eaedf2; + + } + } +} +/*-------------- end ミ斷榧漬ォミ ミ頒侑厘籍厰 --------------*/ + +.webbpm .dialog-stack-trace { + overflow-x: auto; + overflow-y: auto; + max-height: 300px; +} +.webbpm .dialog-show-button { + text-decoration: underline; + cursor: pointer; +} +.webbpm .dialog-error-number { + font-size: 1.25rem; +} +.webbpm .dialog-error-title { + font-size: 1rem; +} + +/*-- login --*/ +.webbpm :is(.form-signin, .form-signup, .confirm) { + color: #333; + width: 580px; + padding: 80px 100px; + margin: 20px auto; + border: 1px solid var(--bg-light); + background: var(--white); +} + +.webbpm .form-signin.esia { + width: 450px; + text-align: center; + padding: 45px 55px 35px 55px; +} + +.webbpm .form-signin h1, +.webbpm .form-signin h2, +.webbpm .form-signup h2, +.webbpm .confirm h2 { + text-align: center; + margin-bottom: 20px; +} + +.webbpm .form-signin.esia :is(h1, h2) { + margin-left: 0; +} + +.webbpm .form-signin label, +.webbpm .form-signup label { + margin-bottom: 0; +} + +.webbpm .form-signin input { + width: 240px; + font-size: var(--size-text-secondary); + display: inline-block; +} + +.webbpm .form-signin.esia input { + width: 160px; + margin-top: 40px; +} + +.webbpm :is(.form-signin, .form-signup) .row { + display: flex; + margin: 0 0 20px; +} + +.webbpm .registration-link, +.webbpm .login-link { + margin-right: 20px; + font-size: var(--size-text-secondary); +} + +.webbpm .form-signin .row.registration { + flex-direction: row; +} + +.webbpm .form-signin .login-btn-box { + display: flex; + flex-direction: row; + align-items: center; +} + +.webbpm .form-signin .row.registration > * + *, +.webbpm .form-signin .login-btn-box .password, +.webbpm .form-signin .login-btn-box .btn + .btn { + margin-left: 10px; +} + +.webbpm .input-group > .input-group-append > .input-group-text { + border-radius: 0; +} + +.webbpm .form-signin .register-btn-box, +.webbpm .form-signup .register-btn-box, +.webbpm .form-signup .reset-password-btn-box { + width: 220px; +} + +.webbpm .form-signup .row international-phone-number .flagInput .btn { + border-left: 1px solid #c6cdd3; +} +.webbpm .form-signup .row international-phone-number .flagInput ~ input { + border-left: none; +} + +.webbpm .form-signin .has-error .help-block { + padding-left: 125px; + font-size: var(--size-text-secondary); +} + +.webbpm .form-signup .has-account a { + margin-left: 10px; +} + +/*------------------ ミ、ミセムミシム ムミオミウミクムムびミームミクミク ミク ミソミセミエムひイミオムミカミエミオミスミクム ------------------*/ +.form-signup .has-account { + flex-direction: row; +} + +.form-signup .has-account a span, +.confirm a span { + margin-right: 4px; +} + +.form-signup .dropbtn.btn { + margin-bottom: 0; +} + +.form-signup .input-group-text { + border-left-width: 0; +} + +.form-signup input.ng-invalid.ng-touched, +.form-signup input.ng-invalid.ng-dirty { + border-color: red !important; +} + +.form-signup .msg-alert { + color: red; + font-size: 11px; + padding: 3px 0 0; +} + +.form-signup .consent { + color: #929292; + font-size: 13px; + margin-top: 20px; +} +/*------------------ End - ミ、ミセムミシム ムミオミウミクムムびミームミクミク ミク ミソミセミエムひイミオムミカミエミオミスミクム ------------------*/ + +/*------------------ ミ。ミセミセミアム禍オミスミクム ミセミア ミセム威クミアミコミオ ------------------*/ +.webbpm .error_message { + width: 650px; + margin: 0 auto; + margin-top: 10%; +} + +.webbpm .error_title { + position: relative; + color: #9c5d7a; + font-size: 5.5em; + font-weight: bold; + margin-left: 100px; + line-height: 1; +} +.webbpm .error_title::before { + position: absolute; + content: ""; + left: -100px; + width: 75px; + height: 75px; + border-radius: 40px; + background-color: #9c5d7a; + background-image: url("../img/access_denied.png"); + background-repeat: no-repeat; + background-position: 50% 50%; +} + +.webbpm .error_title_long { + margin-bottom: 20px; + font-size: 2.5em; +} + +.webbpm .error_body { + font-size: 2em; + line-height: 1.2; + margin: 5px 0 0 100px; +} +/*---------------- end ミ。ミセミセミアム禍オミスミクム ミセミア ミセム威クミアミコミオ ---------------*/ +/*-------------- ミ渙セミサミオ ムひオミサミオムミセミスミー ------------ */ +.flag { + background-image: url('./../img/country-flags.jpg') !important; +} +/*-------------- end ミ渙セミサミオ ムひオミサミオムミセミスミー ------------ */ + diff --git a/frontend/src/resources/css/style.css b/frontend/src/resources/css/style.css new file mode 100644 index 0000000..d7d29b3 --- /dev/null +++ b/frontend/src/resources/css/style.css @@ -0,0 +1,10 @@ +@import "../../../node_modules/angular-calendar/css/angular-calendar.css"; +@import "../../../node_modules/bootstrap/dist/css/bootstrap-grid.css"; +@import "../../../node_modules/bootstrap/dist/css/bootstrap-reboot.css"; +@import "../../../node_modules/bootstrap/dist/css/bootstrap.css"; +@import "../../../node_modules/bootstrap-icons/font/bootstrap-icons.css"; +@import "../../../node_modules/font-awesome/css/font-awesome.css"; +@import "../../../node_modules/@webbpm/base-package/css/style.css"; +@import "structure.css"; +@import "inbox-app.css"; +@import "components-app.css"; \ No newline at end of file diff --git a/frontend/src/resources/fonts/Segoe.ttf b/frontend/src/resources/fonts/Segoe.ttf new file mode 100644 index 0000000000000000000000000000000000000000..0f52cbd9c914110a410def0773988650986c428d GIT binary patch literal 955804 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ꞻtQ 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 z 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 {&<-Uy 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 Ux>n@HRU@$aH{^>A>6Uz}xH~ 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�)qaCAk({Oc#G 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 _g2- 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 z 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 `fBdr4ZeX!0*bd3Z5M(Q^Y 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

*qc_P2lt=(Qs!c` znvT(lH!#AFM+NHRknd$0=gPGETBhB4nMS$qH}^dUeylvd&BuIMjEqt^RKA4{@*4D! ze??pIJf_OtI9M#jzH$?Kil=a_QW&T{M4=psHq5ikH_V@&M-Ifp`eC%7>yY+*%Y9gi zdgjk)-avkbNvZ&+sshZiS7C&mf)Vy!%p#2zJZC&Vrm-Yj_EwDad=rOnBh9?eefRzB zhC$izVbtrJk@juidC0sLg*^9UF)s1pVq|>y6*A1X%yZe0=Oy#qHq`UHh{C#Td#0em z&yy*rP{*Q+=l9z%I}T%7#G(2)oa5$Dj3S3&^c04x>oABOMw;58Tt6N5hxWxk)Cf#V z{0;T`Y%HTOm_={6yJS8tRnzfTvlti3YmrB<;Y#@$W;4=jxKqA{)8hVTX%y3{84coi zOy`}#4X9_Cp*Nrf{S&1!?N-ZT_fMI|9^>U@z)LX2SfFGt}id7FD%kB6qW-E-!8_pGXQ zFPJOc>-rIQk9pLslw;gH-yYTpO#eGk5$ge_lRgYBV;w+!aUi!EPS8 z1qEgTE@YV_)9zjW%wd@4od;1T$KWQq4MnsN85-`sQ-8-meojv#?ca?>hPt>0dL9`X z;(k<1G0^k%i?~WXjUhhoIJeDo#Kq<>m@3D(xBN5a{o7E)&$#{ic~meD)3-?TSg{-l zk|+#HP;XkG!jJtu=%U|=h*<~YgeK^=!AOx8Y;}~sHYXEr*CjVP>p)pjE-L4Jd9eJij3L| z8M*~6Sq7MqFsdHav=SMQ%&X@hUvET)9*J}zhmjstbtq%r(yKAt>%bq8p@q2E{2dwd z4l?vP+L}CM=pba&att@ik)Z+D$IF{1P|kI;%hE6N-FunFO|lqQuua8wO)N`x9l9;MevWiZ!=DRxl0gy8e=dw=%T8ge zJ0iL4=fX;4VjD4Qs~wFBH5H|Hx%=EKhS7(jp8kxCpKAkt|VbmW-#`KVvpifg&^Dsrt!^!Fu%#HAR&m*Uyz~g+h@pu>Z zl6RqV-2QmHy{ub>%uZpXhrC_9%Ijse1$G;c%l+9Ttto~}$Te1F%!y9N3E{xyH zv|A&K-6JyXUXjJl%OO7>WBnC{kq)~m4Bhr9bWym9H>0bkCb2x7zDX)}6aSGuN##bKRSErF+?~bZhKN_k0vSYgf8wS>MVr zm?g)!)pCq`K#oDa9OJ$U@7;r{#;s8`ZY`bcR?=B+HC^eRrv+{eEpyLNy?btlbxxBt zkGaOJG1s^^?fdRI`@VbEzVDv5@4MArPqXgd4eAHon^wCwtah(k?Ve>_{*(Bqd(AxR z*4WMNS-aW2VmG>%>_)fRI`^z~?wNQTVw%Qul4H=t+Zu73qxQsg#rbv@>hbOyJ>G4L z#*xSGIWyh89*<*O&+bC=H@C+8&An;YyO->Gx7x0E&qm>Md>^-Cx8bAi)u`Xk+0Aa1 z-R#5FcC&lhZf@-NuG-JCFGTmC9uMPX;R>;dR)}R$*ppU>HoI*5I(Ij%^Y-K2=6d&> zmrpCi0klH&;5>4S`%I2;-^wv=ZiE}<827A9yYFQhq=vbFstNA-C{LBIr#UaYh^sut z&v`E1h@^hVEzl3Sd-NptGOfT{A&Mt=Nu$5I#pW8f+C1;>V%wH&QCcCM1tQ!#wT~cx?Cv za7P2~M!+4`hz(x@4KBjF0oM_5mq%%90QU&ca5d1d2xxdb!j(Y7OHo_501cxf{9BW@ zp9D0V7S_l4-QGaM^?>UDxW7i}6F|eBK*Q}}oefi?wsL(HVISQ=K*OC8)<7>zSYcX>$qE`Xu+D zulE)2a~h>i#}T~lkYBm;<$LH%bKP1Wo`Mdh5H%)_n9nqFUR^ZtABQT3PH4m1(zK7Q1)idg73_;S%|+TOI5A zxG!-?MyFFZU6|F!%S1;?i#_RYq6Pg;fR>2@ z+6#a1ytW<}u}!L;#BlWn(zG(d{y0Kw3{aF z+KwdMidl3kGK})KXf3DW&vG4x$fw-*s-@c~TO*?n^!~`pZEKGiy3x(08C z>w2V(L0S()T7HMzCYX`mAtN8fMeAnL#Yd0gSro;bR0@~+|`5beffpkF28V}s2(8oB#zUg@f+gx z-ajy$jz*g9Mn+!H@G13jKPp~Ju0&c{6e{b!v`dh-TaXS$BCUI&GaZJ`rUN>gr_h5w z$K~`TGL(<*l#kQdPpR7>MfV_~Uv>ZV;XtHKz59+H2lV|I>UHZPq}7v1QwP+mdoi2d z!hzHqopm4g8SUpz=DE%^)NRp&PQ{V>B!EtHALwEnrq-d49)wcriz0mt`up-8hgLVc zAGr>C0)OGPD)T$@je5>wjr|>dr5B?}AB?W_ILd7u>Uq7a&qGT(2!TBb^?ExprWmF4 z5(@2Cs5ciNLle+Z{S$kbQ*eyg2S;Uju_N+yArf(z(nu$6K()CMX*~kzL>bby9O<}T z_Kzu^t1YpY+6TkbNE{EiKQY=3sIb?e53N848ib0hy}TCnbR@1}UxRu8BWNRv=}468 zFHu47q11eidVM-F!4%Y+PmwV#kfz5`Ob=k6Q5?;4)%=K|#vyGkLWN#~GP)TR z>PwW_b5UXzp=GcK>dhzK7dVo}A+4`P1$~7wFFRtn!7^l-D3FWYxqxdM>GAu4hOJS& z9B>K1l>!a30e30j#sN<7bJ-hn7};i$&!C1;Omr`ZwHPPXqENhxmhya@q)tUEITb1I zt83ybmj)-v#rTR*e2A3z5So@?GA+R*T7uDxa{Ik@Eq0^jZ&5;{aBVX@ zj7IH@c}eyM^yPf-n<>VOSijr?CyC-8nq*; zd>`MT{C~3zyDPH;joJ}azK`#&ZG&jkj;Qi|{Fl;VcQme`Q9Gi__wn7e<5(KCBdUBK z-=Q7hcB>l!kK6wNxXJoZq~!&;M0fLR=FYUiy~ZdP{K zxJ53;<#I7DYectME_NTv#n=aMY|Gvl+UMTpJq2KFxGsFowrhx4S*wuL^FZci97%=P z*UQgKk)f-wubPaEnu=p&Yy43zMUmeZ=!>r2-^xDN6-cYMF@`?HxCr;RQ!$v%#7KGz zX-4&t*Xd>I6O?&>>>=&tTVH`<8ywjHjqe?gj28?^R%ZYx@=$C0BxLcn=Y9U4RB&2cE!uL@y$rw&Dcu>)(nKc(1_w>sPslSvSe$P`0(ZlWucM`I-FI zJuDw}OVsIZquk`St9xN+6|PmU;B?@LR^M%;%pRnob1l^@e?sZyoDO(3qR)1 zxR*VDY{WSEFZ5D}p|{wM0pbj|BH|C>`Q;0Wgd z4R859W9C=pP3E_$XvsWEbr?)DkfIqlnr2|AT#Nys-e%qH(W*~TCYR$t&a*3@NYiJL z596E25B9Mf<35d$eH));{SvW%qFE@%xTob9w?d9_Pw{>8_sRLV`1cm?cy=F#^G16ys$kdoIZe}j?SCh)xeoRE7-aO< zD5UR^Z$_csuZz~A-i$|v>M&kS$0T|Pf8{-N8i}-d2+LTO0&X4PD#Ng0sI0{6^e>zw zx47-}8rtglDANPbk}7b$=ig|*RyRavMYds2`7PSU>q3^ve&6bCjPd(U(LRJe9tCtt z6TfaPPT;w~dw9H$2A~gsVNp0Rx*rN)9Dv^gSZhwk-s)Z)=Ii(nZRI&Ap)S~imZB}M zeZB8@lUw8WHugY9U+DKlGr9;BRDe>t4tvpls8@ZF;XQNt9qv#=aEGeF9qMiTmY#_) zI#&^gaxozJXj9tn@$$KW?4c&n1`sO%Rf|KsUA+qF*r%-z!eZdZKZm+_*I=h$sGWif z&1PJyR^VE*8Jm6h91^v*u>|=e7ZX9<rSgH&AnJ&PREiX))r~k&J%TcN6<5;XkmeQ?PYj0iXpx|+@=U+Ket`>!zHqx+bH|Fm$Pl* z_B2IqM-%kzXj(q^w<)g1LT*o7Pt%ZT(G;03x)AMUKli-shkV)3eJ=Z9itLA*blHyd zVw%OsZO!74h<0(C`(a^>o|a6{ruYcTnqt$wHN9uLH%0Duj64omOoMn#{8&UhpoU`} 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≫`pCutNRfCnN2W9pm=IbnTw zukR+*&{Q$|wVMj6r}0x6?I#gzvvqMEMVg)Wg>h;<94QCbrBUtR8$H?dG-1E{`_HBo6g1C-S_Ar<1+yV-XC+|K(?-N?$vX&_G*g%Uxr30*n3gK zcT#Ct727m%DpsehZ7=!~e&iYv%r#yU3$u9!jMl_lBu_nlYg4O7FE*t@zdN+k&{4NN zUR|fq*q%pEJ$|clx9Zjo%mvWmzO$myajE8wZN0U;94^6SR$4R>dfcFg_lzln=LYyEQm>>z{t2FCX2W)|Shh2EqB6 z)o{Mo9D~D2dF!OLunXALwc8fkBHpc?ZfrHw!nRkcQH|QIF;N;`RMeFiU(U+*t#v0S zePiWmfAgf#mBT<{@37to;@D={0+=LAA~wj&2;XIG3hZ_;#{(hI_##TjnGmdeSak3_ z8v*hAeS+?DY~1~T6JF{WLw7Ecf;cxkZcIqFPltB>?^-9TUcya*MX92Vv#^XlHE2l5 zjBTxKIb$}LR(eYmfi>$8M=;h<;1iNiou)_ziMq)asmd}qlB}{+4Y^xcx(J6nt}IoH zOm7RVx8<%;&WOjj+n%2K(hH#(*F$z1Kx{I1F56m1GDf%)c2{JHGuFAxVFY)C2`Ra9 zPI11DL~J=y>BOsLmLV1SVz~$rERJL}TtI3|6C?s3Li-@&bdo|qA8J8n$;5UhCN{AW ze8=`HugHuNO`5KTXxICXJVh=u(D<3AebM-Jao!nbE4^vZ5|JgYDwN8j#(4rLOhm}* zAaS>4`WICuLbx z?a9T-NZ^W%e`GtPt|p<0qTWAcg?QwVNA_oY0`mUk#BMf^JYr0=m$+Vx03~11p&qnS zjx+0HqS(6d(km{U?v;?untAE=u3&?S5Z9=28?z zIhr30LlTrS+-Lr3x%${MCYcc?{uxxJAw2z`)n(m~;Czh!vf-ofp7W;VLKaS;< z7Z4aS*9PKY z8{emW`|V;9ABG2dF&Z#u_`6OU*J%3x4_Z%kGu6*jH`mvwrw1*l!)Za2TwYvUVvTwo z);nxq>-yfix2NON8ZB}6GS%L&|DL1M*=;F@1s1yxCfpBA-0!BwzGp4vJ^Oa)SO(km zmq1U^NLnhTwGvw>_$bSAXWLyAr6>0C^%nVzq)e#gpFGN0k6zv}vy2YmEWjl9gsmYr zO+Q&cQhIKtYE9VR23bTfCI+jtOU7<>AD${6agJ5gMRhg11#TB&j#c+1)Y*9P`L$iUO zwpCNPrtU=9uFH1aHqN$9QB_r0txZu@op)u`YioDbG&^r@Ilne;ZP(jVySAnFuGH?t z6qPad0yq>!rVE_D({@+cUEA)g-R{Qzx5Z1mD{#9G)_aw&)>Wz3Rb{Gr-PpQns&&;i zbx{?~x@fEU9H}3&tp$v!Z0T)sVy%UaICjdit+v+ftjl-KR#iwIfBf;sU*`*JU=cX5 z^Ee(o)DeenqzW-+@eNCOC8hUZdFA7e4@$lV5nRhOqj_Z-{^-`(^Ub!qwK?xf*}C&} zTde)I+*XgCKqh=**9GV2=OPF!gZIv(XE#q;*Er4AUbB;`vNt!jU`ti9(~FBJe{`ZN zCuXA+SIRh78eK@=`ntDGWq?XrEu7OrIafMwtQDg1r7yHLP204)UA4Pe^=sAiwe9M% zw6<9nuG0GCWV<=tmAlijY3j0cCoLMFsj9wiPGD5vJWxz1)JHdGD;1iSLx^qGzI2VV zQb6uDP6*GXQms8P*4Eh?I7efzMVp=kAMX#Z)B!;}SUetHovX;(r{kOubhvi3Qvpqb zQr{oWJKW{KzNXjD+5?7pB}|yZzUH7s9owI)vPr@uZ0x!+!btBJf2@COd$HM7yXv&^ zVw@y90$k&ydc_6IRZn)U8>BLgNv~6wBr7f`MC!CA7Zvf9Y)y_AMMP_#6E7Oxc`wFU z7m$$+Q(I|I<0p2zC$szLO`g4 zUiw~o16=-F=eEtd+w@M|>~Eb^2zXozqpWOtV)-)HLsZ^8&-o{PKB0>&=c&48n>yGy zz0!8O(^A-`m06{0s0SPGbmM!jiVTiXTc||r>FMdkg;A-JUR1I5+pX758wpR5EDDJm zC9x|?(;$XP!l$2aZpAUuA08-xI1x#SQ5fSN4gNqR~{Z`px3{C z8w4jOcMT8}=DoYJ=xd15dpCWVh< z6Q3bS02R5{J%UUoq-~ng^nE+N6UYT*@i)d;0(gDl+#$L0?CflliuSzUwr%SQS8f~= z{jLy6+SaaZtlc(EfAd0LavsMpaf)4*6$OoA{;I|_#$crFduSD6nrB&by`nDo(3~n_fbhd4Q()rF0#w>9fv$!-y#p7LZU)&YwdJyW-}}o99ADDQSu=->!FQQyAZ+Wqr|`zVp`k@}y6FDT)+gd{Ly<6j&>7`)%qA zzcp)B+Vt{~zVuyF6sj{9w(raKqU$?fI=?A5?d?a_yP|xwG=*c{p2(swt^?atLU+1^ zU1e|N&RVDv;_c2GU1)y!)DTG~w!-ygSEeM65wsT$VVF8+N}*0)tc-PZ_(c8m#T})b z3aY0or!v~3y4={lNLd_Pers2|(r$($^?+h_wl82?0-mH4kV!&}ZOk|hlxkf}Js*}awvJP zO+1YyO*2knM?21<0JojSt?hR7cbr5>#3;inGaet0P9xy@?CfkBy>>fXcX?TsaIa3& zqVRsZz55sM{*^ngzCF3K4MW&;E@-<&4>>#&(l!kbh0paG=k9N{+x5lO6#u^r6@$A& zS*kUj-&oyN=UG;o#9Z{gzuY!OVTH|epS!**oR?K4xpR!WM5^@Zmp^v8wlBNfH3t3e z&`uVe^?Zj{w=`(tO2$vW{IRxpblrO#Lx-6kH<;kWm`l_#9 z|B7w>vh$m50lX>*Zr?1dFA8gAX}j{YdF-?=O6B2EcaNNQwgt*z{g^mrq9iE@Sw>Nm@iYcCWbLFEPTiIYp-a?qldO0LJ3_FVn1CYLbi2Rp47Kb z94}hC>rl;ckr!=kEQ`CMq=3RyYl>QtRJP22XTm;3nxxMEj5aXzH3rjd)|UG=nA>d7acJj^g2 zM98(`VVvh&yqCCMjILQ#zz23B1Thz)sFK|9Od0;t|mDn_XkrS&Gv0qTEm^tRhbyOsbyJdB~@+K zl@(P|swz>Up1QS z*~Re%As1TX6U)>SLC{tJi+yUhdkV|zE-zn)WkP4bzOh_tec5Z>@3h__&=sy70$%ks zZh@Z}e`=s1Y$ut1?}2Ns?|b~(a}K|^Cu~m(Xun-eO32}XUW`UHD2E2@9-99DgVs~s zO!YI>&Gj|v=|KzXa9YqLk6&Isjy39aSYKcRTi5sAy*(YD)-M*}@~XNJ0rS2wF#B2$ zizY8tW7i4yLlf^VrpCT!t@Sy)?E^@KM+Gh3_xon4A@lf2xmT z5^J4tFMikPjrp?2?~u3RLpTdC$vt6<#BiINf;Mn|fIF_!#T8B0g6`@xsMY>pc~#eb zHrxT#d&4DKR;=kb=y|$rfuw|ZC$(Gbj7;u+D+Sc>$T1Bd9~G)l2q)J1PQL8C^tX5CCy(xKpESBJZlCn^raWuT+b2&U7rx^B zB)EP1wh96-I&a03w;nmeT+xY52@9vjKXU48u`-RgxV((n%O<)u2pVaPD+;(v>awra zyP|6y_g)uHm8DgtD4MczaO3Z)rmC!UUElTR7w!2Y?RI0k?b@HL>&6$|2F>Np&dyIS z&YO#irt8*CQ=avkw)I`xZrAHGtBfhCW)0}WAON9r&TH!m?*Zf#-APrKU0G;V6w1K9 zvXa`^jX#AfpKpM3bj4;8cQ9^EbaIY)Umwk_)Qh zzBp@NbLoq&J3U7~aKc+mdJBU|GOPkEvo>4P%a)dnMxauNA@QbUv{aouDN8lXx;&7P zQ(?}uzerwwaq)_?3s~4VRjx1kM`Bf+J-L3eEKk-iJ2zma_;;v@X-J-i%WVb8LBfG~=TaVz!${Vk{EiJ@~S(qDR79v08&6F<)lbLaYwd6p9 zmD6ke$;CyZeAjEzy0vee?W)psC3cO)C2o=2&Pkc*-S_>PcE zScvO-|C|$j>ZhIs!P(he1H>>woHzCM(YAh~u5Z`tZM{3c)ohz}-PKK3pOnp}uKh{f z)N5ht&1OG{Jro4N!vRKthlAO$K5|JA%$}MB!Ex|Z5C?zw;ctBS9S?u|!{71ncg=6k zKYRWK^FKNN_W7Tl|JeN3=f8Qw-FV^n9mhYu_@Tw$TD-7)+w#N9f4_R$>cgww2;UZd zIQ(ezw&=t0+mfe~&r5zW-DaPh{lo0XvY*OckiRT{O=I)W5ZV+vXi-?>O(yVS4t$g}iwA_q_1E+wc9~ z-t|}B_1E9^!e4&Nb2pxo&prO!E1rARbFX>slb-u~&%N-mH+}3kKmPQ`Kl1V4{P@S8 zZ=e6%=fCdxkG=5m7hZrc5LCfCAO7Zt|MW&fh)% z@QvU`ar~Lbe|PcD#SbsuvwZ9FgUgSs-n#nW>Nmo-h93++8of38VEoqP>Ett$cc)eM z>g=6E-Mw4>vV6bF^t;`k@qvH7gdzJI%Fo=_-4~SKQvPuHkIMI!|GfN2`5&vG>Z_CL zvU*wdit3Z9H&$=2zOMQ+)jRifC$8%5)9cTyzoP!;`p@j^jx@Z{O>wR6zOZ@oPG#y8{n!9Z#Cn$^>*SFK(d1dCr>{OrVK7C#pR;b#ZI@#8oC?kd0WDf9O%`TUJX zzq&|{zUJYNJ^Zb|{pk;V??bm{zaG5j`Okad_=Sgp;A7_>eZxna-};K*dN1zr>^DC9 z_0N9ovtRw}+n;^gvtRY>S3djY&wkmnU;6A9Kl|2a-~8;Gg5dq%inHGTCxYPp-!%PZ z5d7-t`(O6{vmp2vU;ZzC|NFo6Bk%ptcLl+3JP`yR`XAr-=RdT5-**JT``(4KKlJeX zzWRe7{WpLAeP0*^@4NlMSA5`)Vebdt@quspz&C#2?LqL%U-yAG{_-1x;F!R+xH&))dAL2%SOz3I0;>zX#tQ{CBfi@W+BbxA>nHe?Ium z;4cJ!D){@sKVSTX;C~JNa`2nMzYqRH@E3#sGx+h~$AZ5S{J!8#!JiG@9Q>2uEx|ty zej@mp;3tEh3Vu5H)!?nc&js%eem402;ERI~2meFx3&GC^?+Lyn`1Rml2j3QaS@5O7 zmj_=Nd`0k8!8?Pu1z#P!J@}g7YlE*3zApHN;2VQq3%)7%=HT}Se<1in!5<8MB>1l2 z9l;+Cz9sl0!M_UrP4J_$*Ux^(?BUtbY(BdYd@T6*?03%IF#F`$rv%RjFU*c-i`jA( z%szGYX|qqCea7r}%|3IsnuW7y7SH~x*?%4UR`8!@|IO^PX8-N%vuB?(``p>*&3^an z_sl+j_IqbK=4;*W@cw!GyB?^oB3HW zD`#If`}*LwgXe+|1kcW@Sv_lJ?d%(7-#GiG+3%ly^Xw1I{^0Bn&DOJS*3UMxKRkQK z>|17kWcEjAe=PVLvy<6&wws*>|1$XC?2jM)z|mhl`oW|B>*$A${@T$GAN}>CA36HJ zkAC#%Zyf#2qrY|Zw;%ecqrY?XcY}8w{k^0A=jiVr{ez=_c=V5se(dNUAN}~zPaOS| zqn|wbsfS+u&})u<`sinl-hK45M?ZJ;^GEMF`h}zS9{s;Z|Mch=kACT)*FN;RqhCJy zXGj11=zT~3;^_THzjE}<(Fcy6J^GhNA3XZd(XSr;+R?8c{i~yYee`dR{_W9+kN(}! zZybH(=-(gx=FxvR`j1Dyb@ZQ(K6>=qN6#I7?C9f1&mX-o59YJ^L-U8{NAvmo#{77` zm@nt6c{q>e@jRKQ^K4G$`JB$#oX^Ev&edGc&D_r2+|P@7Ij`pRyqUMNKQa5(*`J*K zsoA&9zJ0!)ck_O}nV-zJ^WFS(el|a!U(9dLZ_RJdFXxZUADuroe|-ML{K@&t=1{8jU(=dV6~)%-Q{*Un!z|D^fr=fC5jUwP=6`R|;+VgAYU zPnmz}{L|*2KL3pQ@0x$+@zckzK7P%O?>qjL<7bYaJ^q)+A3Xlh@vk2L+VQU+|EtB1 zFMeY2PZmG9_^HKDFMek6?#0h8es1yei}x&kVe#JiXU{)p{<-tdoB!_l@0ox8{P)h^ z_|Q+!zhM4_^DmnJzWJNxZ=Szp{?_>y&%b2;rSmVFfBF0?=3hDgs`=aIZ=Zkl{A=c4 zJO8@**Z+T%y$_sC)%XAZT?wNb;nYqpx3^Orf{L760nuaEgF(V-{Ce0uX4Gl>` zlB7xFPeVeIBuSDaU6O_*Nm9w%Tizu}(j*B<-rkb=6}(@-2ak)h5u#$O8+bVRsL7~tNpL}BmOo1wSk;KXLFo+pE=&V-<)7RU`{k2 zG$)x4nPuj~=4A5`v)r6wPBo{Q)6GZC3UdaZbI6>@7v^K;Ec0=5wmHX~Yd&GlGoLi) zn@^bw%%{zT?B`1k@HP85Xg*^uGM_aUo6ng`%;(Le<_qRB^F?#H`I5Q9eA!%Sz7og{ z) zlYNi)%6(IOQ+?BX(|wQnDtt41GkuTwX89iX&Gyal&GkLuo9BDdH{bV^Z-MV=-$LIr zzD2%geT#k1`Ih*e_bv6k;9KT<(YM_9l5d6YW#3BQE522M_JNxNeFL`y3Ij!feu4gh z0fFOz6M>U~p8}@>w+03VZu7nBTkU(z9BSTSmYT!N;pUy@2=gv;q#m6FcO@`|jISEaeE zme(XAYhAUotk z`A9yNo$`t7lE3NIvRnQxZKSR2k#_Q_?3I7WXY#r1lP_eyXZTN$7v45xk6aOy%-~7A%fA{b4 zf9l`s|A+rG|L6XF{x1T>fkD<5>s@PW;OD^Uz%PL_x<Q*z( z44XAf*YwPIv!+?gtZgRfd%8{E*X{a&?l9|^bzm1DirK(S zH5;0Zto7ELW@EF7RcUQ7o0?Zz8?Cpj{bn;W%}h6&n=Q z)|b`+>nrP^^|f`#>}B>g^UXeHfqApp*Sy6nG>goBW`A>ld8;|lyv_Q?I&6JwRe3(o z@0nh}i*D9cE2ef#LQEYm=-FP#bG%qD&ilK!$BSidX6T8J(;B0UA8-bUv&C*rJi);VuDZ#$cvO6M)-L+2ysV`r!H ziL=Xj(5Z61bB;LQJ3l&Gyc?YNoUKk_@ay2A;Nf6Z@JR4z@ObcK@O1D@@LceMjqS57 zJ7|aOSUYUT+X;4(ooqL>o7(B2m7SEq;5%Nb?2vfJ62c9xxO=h|KE8||CyKF&SP zXlJ%F*16Z2JnT$%o^qac7CO&3i=1bj#m;li z66bkmsq?zC-g(pcz%B`mcP7}k*hO}K`&N6PljPKM3hYvQggwe0Ymc`l+GTdRz06)= zud*ZdI=j-|Vjr*%+K24Jc9ng^K58GckK1SLv-UarynVsG7$T%0Unm@k4<&@!g)&3g zq1;emXh5hqR1zu;jR;K)m4(Vf(?c^uvqK9)%R}o!8$+8zTSMDJABA>>_JlqQ?GGIb zoeZ4{oe7$&N}b`(HYdT^ z<9zDub^hUe=6vq#bN=S+cD``-J6}2noFAO8oP*BS&LQU;=kLx@=dkmwbId*&GMyKk zWzLJva_1#yh4Zqr(s{*M6>1pD3Kcl-JKLR*J>8yZ&$j2;3+zSq5__Ay!#-u74q2h3 zP}fk8P_NLa(Adzt(Bjb2(BaUL&;MSQ*Z`tix}De(>BQ{8Xe!|u0kmHVB0#Qokq>i*y! zbANP?yC>X}?oaM1_hr{nb71{^sq9s~?vfmlD??E;X)UT%)+g zaZTcy#$6fLEG{iBJ+66Ni@26?t>Rk8wTWvR*Dmg=xQw`~<1*vg$90IiCN3-P+PIE! z*TrSWb&AW0>l~LGmlxM1?)tc{aW}+ui|Zb@JMQmsdjf+4w+BiBLjpqscLYiU!vezt zcLqiT?h1?y+#MJdxF;|=FeWfIaBpB-;J(24!2N*K;0}lo!1s)2N1s)De4m=Vl z4@?P64NMD64?G&E2+Rn~3_KQ?6?i-_J1{3OH}FJYUf{{V{J>Lz1%amn3j@yt76qOS zEDk&uSQ2c3^YhoxqmByMe8N_X67j?+3OAJ_zgxd>HsB@Nr;g;O~Kd1NvYk5|@Rnw|v)wU9> zI#yjP(MqzeuW4Xs92W2=eP)Vk7YW~Eu_R&%R`)zWHZwYJ(=ZLN0J zRaS;|wUueLw>ntYSXtJ!R!8ePE8FU13H3){RzA>n7_v z>xlKeb=3O7I%fT79k)*Cw_2s&=@I>2kLnM4On=nldO}a?PkKs!*3UFbtpJH%ud7SVoKyG;AYeI7X}yXM~L!hHH36yiwDrWz;qj zj5$GEPva(| zm(knEH~JU_#?3}w;})aPC^GsP{fz;}t;Rs(Hlx@WWDJ&>@|et$$7Qz6F>W_Xj3LHQ z;|`Zym_SXS= zs}9uLv{(n}V7*;SbchbsJG4}X>2SSMN9bKTQt#GLdXJ9QF*;W7)p2^Cj@SEjfq31- z7wNOQSfA4+`n)dH7j&7vsLS;wT_JPj34K{t>MOcRU)9yoy+5LRCwq0gy2ky+1mgi? zqVb?H$#}>pGafc38;=;}#uQ_!G0m86JZe-JGmM$WW5%qQ=woBS7&|5u9Ul|#G zD5ge?YrSV}v);G16An+aHnEo1^{Q~0T*Z3cWSh)m9dGcy^){2)%CwlIm@8uH#ng{U zj!B7W5aY33vgBH8vt)!P$&*&En0V`H>q%>&^^CR1de&NOJ!dVkp0}1-FIdauYU@R7 zx%HB@!g|?SX}w~tvR<`TTd!FWYmK$mdfn=6yT)DXzV5Db-(VppMOn@hF=@=U-ic``+0sdJVp_2w<|=DPOlJ6D z>k+Hmnqp10rdiXiN39BLhS$aV**b0gVx6)6X`QwHWu3Erwa#0=Sr@F|W3s$%UUx4s z=GvH!G1platxGY)h?nGD;nnl%d&ypk*T72+r-z$|TZCJNTZLPP+l1SO+l8+RXN0c~ zXNKE{JA|(ZXN9i~cMM+_&JK49=Y%_lbHjPzF5&CLUBfqoyM?=ldxUQc_YB_@?iKDG z&JXtq7ldyP_YL0?E({li`-S_52ZV184-DVtweVVct-RJ=8?UX`&bumH93B)N9KJnV z5*`vB8onc38XguN9=naS_A*!tQWqX~x9IvyN z>*d90j1l9D@yBGxbc)G|=^T?AW5xvBx^AMI5g#ka!0y%yQAED+|lkBcdUD_JI=k&9q-=nPH-P^ zC%O;1liY`5@?yHgTp!al<_5RSeb_tePIe!0%iSqn5AQ~=r+1Ur%j@msdwskD?`E&B zcZ)mKo#sw=A9X9-8SYH?F?W{xxI5b`^oqQG-oL#5-T?2M_p5i_`^~%H{qEiB&T;3u zPq_2kC*Aq(Q|B><#h;d$)Tf-Vkr7cZXN%4fBS3cX}hdyS$O!-QFng9&fZa z#vAM1>y7j7^TvDkdlS3|youg}-X!lKugrVco9sQ}m3vdXsopeiy7#D8;mz=7dXIS* zy-V@Li#N-AJXpaN-VM$O&WzW1Blf%4BeCDd9*zAW_E_wXvBzUi#GbTou?y`{_89vf zd$c{#e#m~%o@AHX)9fksRC|Pdw|$pA(k`*iXhi7l z&|RUCcEo<&USqGdSJ|)GuiC5aO8YH)gT2w-V!vmn--4 z3oQsO3M~vh<1}`fI1QafPE+Sfr=HWoY3Vd@Qk`Z_nv?Bxb~-sZb}zek-1)fQ;x5Gf z9(OVBQkbxWHEe`^VSm^R2f|i3CL9dgPKMLox!TEe9&x5P)12wfquvs4nfD?#A@3z` zg|o?f*?Y~4cx$}1-s|2v?+tIg_oi1_{mbQ>;Njr6!K&bQ!6U)%gGYlu27d@13my-i z2%Zf79Q-MGDtJ2hOYltaU%`I{&j!y0e+&K^JRiIeycGOBc+ti-Y_Zk$*#X;co3>@g zRB!bivYqI=5bdz-*)?p}j<;*uHSJn`&oG zAiJQXf4`!F{F{2-*rR*58@gWKrE^ZF?CUySn{`cx_L)~_T-B~^o7SybwrHN7*6hlr zO&T|9nA#vExqiJXk`n9INvK_`X1wRth(1~!vV$>J!1VhJ71AXklF+#@Z+N6m=i*2x zH8(Y!90~P2bz{p2ZemJmjpVj1i<`>tuD8h{7HR)R_W>$t7T$~mvNi7*P zpfF+#Dr%m-2BT44X+b2Zd#`?l5u;IF^e8S(j=DRy`V@6ua$ae2MQU!8S6Un~8l~n& zo&G=YlF}i?(J+zX)ZFIjk(kbf(^9r1M%>PY)AAxU(jrc3Zp4{Tm1tDtB@9cBk`)!x zk|Rrc7yc(VB`Q-?RFu#>J-H$;HLtWdw|RQr@SLc}TK?s>>S(;7q}n;zGX^C`$_5X= z9D9Ri{u%!%72!zeY)WEujY%}7qS^81AeR&mkD4-kP}I!4;mH*lTO{dK|Qiqt{L5u?%nZkv)4sgo9MSW%G|RdG;BPV@B3 zDo5(1RjX00e>5i&(CikqIT~+W z^1Da8-u5^PJ=<;N7U1~~ZVoHsoKV^FT-`IcTStQUoVpiu_MfiC0^hl_4VM=0h zm+16TdFfPUVkDdyP1EEEHy2ihxjkxNN%d(^gg%84O^jxWQPe1JSf4)zC^6;FfQim~ zz5hUqny06vM003HWj2GGr>8{9dKX@%lNp@2mh6^kMG-BIa<=@*sd;mhQ}!q4uja+6 zDb3Rpy7!4XH{$!h#&jt4-|<{gBh^iAADztqm~KlVTM7y*FP+PbSebvg+v{9tBx+Q| z>s+XbMzj`8OARMyMQW#2H;j%+q-k13I5l~9Y9yQ%@pmrVl9*ML9Ig?;mFDS@u4&P% z(MI9jsUJ#o?j$}Ok*tW+isET>G->3>qX7yLzN=YqmWm$W~-x=deRO<$fG3JN1#{}=m)KiNdIQF4tN zqJvs_X-j7H;QWR4DU4)ahPvk$KA1QmdOuNe)}+ex-fOaDdY^uU8^Vx0y`XTdigqr} zDO%G|ruQz~kPO+?s7BE!7!^s55_FgD`GsrMs+LdOkPT(kTwgU%P2XNARAZNgHe@5* zUa6O{aJAf;#?=?fM!CJxcbSv@XAeGZue2^>Wz|@9SwnQFvV;C?D?27T`bSOT8i_({ z{n^$=ff(WS=s*04Ys$29el=VvWou%x6E91Y5hK}`HJpC)zb}1rzrxo;IFeX>E-EUj zetM*NdZa9(oqI(j>XH7@Z&i`xx*sN1grl=`q$sUgmA`|CrsYA5ae zN3GgP4@|6;_`t+Ef8SH9cG9@}YSm7G7n{kPR7@2|HK?KZSEYi8b~}78*aaNfu=pRK+|4XEOVZ0 zSbxEjR@(e0&9uwb)TlqUQw_NZp+LG(BHb7(-7pv{0}<&e*W*!NWbK2Rwm~{d)@2j2 z*4A&>zEWDQebARyDJ|BP8&Tz6-`1c}`>0Vhwm44vPj(t<*&ik)wf|^GH8;D?Dcfm( zY?7w68XO9lonzL?n%6Y#wMkmt_EX1+wtfBWCQYmRNS;}*Ui(KYd}$Ts!L%9WM%u#< zN!o*xd})))jkFWxm+k8?IH6Aa!R3-RyF}?a1t`V746lt3l(dm^!LBuz`QYnbIo%{7Ktdu%Y_LRg8h!E*s zJms;Xw6rTCCDFTm*%d{RHqpxLD~jkIY12EBn40rnk6w+bM#hX8bGedMUHzlJrfK86 zNVB{_k@URc+-la?N-^_>RZ1{#*q}-Yrsh_Pb(t=%6e~3<6z!l=Iz-XTykW(ak{Ok% zrZcMPjB2qlWB#~wnv5BH?|-S4_9yqx5>=4@hX1qtVMHV$a$Wa6|7Gc#nCOW1%FpQ@ zvGTh|tX};ibyIV?M|R|Qk7V@f9|@)A;6F|+@Gm6c&$F*BF3(+FkLDwa!=BN7oZo6DAuKp8?E^><= zzRSR$E8*ravl@5^n8|WR|0)09MQY3c>%%nvSb&*CUJzWJAaVJw9_ zMmcu`hFxqeu^ixMF0hW}e89K7!E-#yNdC!>e8TH2WSs94YM4u+(e(QzPH~8NY~>JT zyv5&TjC5lu6a78^P&5br$FUqZ4H^Q&1fPPxBlt_fUkPRq%+(M`f z5Ufgw83n;s5R8DG1)(Gem4UMyVi!W332~(mw-(|qK)4IkhzGY9xW~a;0P)Qrel|q6 zIj%VpYBhvflcCm1sI5?YG}K-N2^}C|71U`1b(TZj;gHx6qHErhhC|XexFQLz*b4P> zq24;Ep9J;CLH)&0{~RQ@gXDpbJQGs7K*|AVFaR2ygwz$#upKl!4~+&xqutPW05skL zjZZ?8MbOj-O(#M0jptXcf@Wc8b`;V^LfU7L-VD-LL-WSaJOV8epv7m<;v%$M1+AJw zs{znz7PMLqt*W543$1gZ^>}E#99n+{ZG6zC9kdw?ZRSCnP0;2Tw5Mf8t655Z4_8Xx? z0(3Y49gf2_N8nl?T)PUcJpdgG;kvqT-C@Yy0i9+;PE*L43pp2{a~0%{hP-x=w+!-5 zLYGpwz8PG<5W4n&8|Ff{QP4g2k7F5hKLkB8p~o?}aToOL06iB%&vS6oVd&*TuN>$# z3VQc|{1K2pAM&?ApIXpo1oT-9eRe~^P$<{|1?S-AW^i*M^qmBK*FoRoa7z;0(iLv0 zg2H4d>;;8Op`Qu;GN9j3=r<4g?SOvgpnqfNUjY55LjU#9zX}GpFdzp8jDi7+VZbgJ zZ~<=3fLkl!)+!j74+H1HZMERG=w}raw}Il3Fvtgk%3;u27<3Q@hhT6f44w+NcYu;+ zP*MmbQ(;If3|R_8_QTLtFmw{!Q5Wtw3Z*WTc7)R5FwBBs88EB_hRuUvn_yTK40mC8 zHVhvL!xzDwqu|cy=PJ1K0E`I2hzuAp5Jt>`5gTE|M=;_v+*KFu>IQd>hr5=;U3+09 zFftuR7Qo0d7`Ylo9)P=paCau$Jsj>{1b6R*yU)X@W-zJ{MoooL>tNIYxW@cNOxX%kPQlcA zFtrCvod8o;z|_xR>S>sk1k<{~v~e(PIZWFN)7!xGZZLf?OrHzWx5A?X;L$3maG@d_ zDn>%ZBBTPiDZABjL$O@Z<`Z-v;Iv!~EGWe+$e%1y3czQ@!A+GI(ko zJhcs;+6zxr!Bb~ofe#kM!-9seU@R;shXwQC>00n~V|aQvJUs!PJ_1jlg@q<8tOW}< z!orVW;RSf66+AN#o|y^HY=mcy!lHVxs0yAP4~v7axE!8q3eSy(=gz>AQSiJ4&kum5 zxv;bVmL7x`M#2kcVA*zfaRe++hvmhvd@d~C0?SXrOG)rjFL>!9tVo9y2VuoYcsUtf zJ_0Mt;guwKr5n659$q;HubhWflVH^>ShW~l&4O2Zz-oond*QV%@Y+~-tsGuE50M~5 z>O!O$L^?pE8$|j+WH?05!kS&M<{+%?0&7>p>&fu?YFO6})@_A1TEQDtuzm%+*%#g% z3YE>Eau;j}!iJ@=VJ&Rz3vYFRw-&%#+u*Ieuqg{RMd0mP@OEQ(dpNv30p6~Fw-3SF zr(p9o*t{3s$%1#5!j^d0vJ~EJ2=A_jtqHJoE4)_*+tOj%0C+zg-tPz78^ZQ>uze_e zkOUuWgdL@@V?ONI3LmzE4=2HgJK)28@X-$Vcm#ZW40cY3ormC)WAMp&*wqwv^@YD> z!fs&qX83zw`1?`V(+~D6hCMrB&w2Q?AAGtI_I822Rq&62@Q;1)*?joCFMPfQ_7%gv z{qRKr?5_*^55t$^;mhUl<=*I5OE}O94h)6^^WeY^IB)^JY5`vr!&md*t8H*F77pga z!E!jb9u6LZuan^Gp73=Ue7zRFJ`9JN!J(0GXb~Lx2o9ZtZyLil1@O&e_+}k^a|908 zg~L7I@FX}Kfx}hsZ9IHC0KQ!U-|m8M&qGyXs49S}a;RDdRfplbFnpH--;IUuR={`r z;YbLMbc7?L;K))qatyw21K$sX?4POXBUbKvJ)aC!m!(gl9m4rhA7 znPNDzAO1NV&NhX!N8w+K;ao>JcNl){3cnV@d4==K;kN>~kOUVdz=hrLdkgq|GF)s7 z7q`Hrp$N4QE+TRe(T<2NMvS_MF%$8%LVUXr-&w?85ApXx{F4#?TEu@4F=G)k3o%C{ z=5oZWLIMqtKt2*ELjn;ba0sz#AyzlUnt)g<5NjV2V*+*OEs0P%u|*AekXBi<6k+l9n~#J54>OOg1+Nc?W3rXn@lAvH^p znhTJc+mV`Qky?$BT78jPQ;}Nhky=$q?G{Mwu}JNeNbQ42LI_FdfFuk@66PZbJCKC) zNS$<~&OoHjQlw55Qa2u{+ZCxh9;v$wsk;wJ3?Ydfki=3XaVe7c8IoioN$rrN5+rFJ zlC&L3I*VM<0=Z%+a>YF4imk{Mr;&OMkb1q4dXtcPtB`v8k@^-=KLe>>iqv0#)ZdQO zKZ7JUK$3eR$rF*}l}PeIB*jHix*#bNk(AX)$|0mdEYhGO(qIJAU?I|AC(_^|lG*}E zEk;u3BB|Su)YC}AWTasM(r`M`a1+w-6w;_6(x?z=RE{)?AdLNyIA+0izRwYQQxk#&RNUO6* z>&8gyzDVn-NbB`T>mx{;x=5RzNSnz>n+Ve85YjdtY1ygZhNc%2G`wFD}9;8EEq{CpO!wRIsN#vR=4NR*`GFAlJ@9uKf(@n1pm3jC5RqbUcMzmx)|ghFrG`$xcGDha=gQNGB8NRDg6^ zfOI;9s{pfY~=cK9-8&cM$2{5b2+R^zVxF?}zjsf%Kn*^xus1zlaP7BLf;B1ImyAbCChdkOAwF zTZ720bCFw@A-6{99muWwkz0==w_ZdBhLM2{kb&)xfyKzc(a69}$ZaNaTLN-hGvu~% zq&OKVZi5srMv5ay@m8dGFH(F28I*+#>WK_0Mh2}$1|2~L$0LIqBZIdhx6eaL@{y9Y zNXb!T$N*%>GGxecWN0OF$9$x;7E-zq8J39*+lLGvfZW*>x$`_SB8ZGwirkfq+_e=M zISUzi7P)&fGAakTryX+7K4f$SGI~EUrYkaLH!`*W8M_s^cRn&M2O0Mna$jHMzH`X< zjmZ6DkqLE?344(T#vv2?ArEFC4|YK&1(8Xsk%#Ib4^<*%Es(MU$iv0R!zYo+vyex+ zA>}@#d>t~S1eqE{rtU|kRU*?zAdiNTM|U6E zP-NzOWaf5c=4s@y2FPRi$YYa{$0EpM2a#DpWL73JYbY{n9x`hyGV46@cnjq566Em( z$m6?^*^12WfXp6+%!xItbE=TJ@yOg9B#(k$ow*7{wietKIADM@>Cn-sbb`*)5wB}$bwbKf&<9YVdUvt z3#XA~4UlC8$g*-|**aud74qUFCqk#&QSbr+F0CL!z7k@X9Z zH`^g^o<}N|A(f|)4TZ?Y5VCO-@>V?Z);?s@bmZ+UWOF>Sc^UFfE99NU$d&@+-B{$^ z-N@D@$ky}7dj-gQ`;l!~$hK|B`?ZkwOOW?3BHNcBAIwH}gpeKEkPq7-A0;6lEkZu7 zhkU#T**O&1c?9_+1NmexvMV3iwHf(a0kXRuvU@wSCmz`|5BW3!`E(JoHwoE$2>Hi! zmzY_U=KXNn{Ia&|-!G|1cg&f<5{5T#tUKcsO6*-ZOoLGsR z3?V0vAwQKPr%I8Z%aPNokzaC=U-lqp79(dt&K^eowHrBi9{F`Aa{dtV+i~Q=2;_H= z-_If!*C7|TAs6=|7psuyZ-7fxD9cdkg32jW=cC3b)K`G|<5B-^)I5X+PNOk((O?j@ z>!G1`sIvl%OF-k+qTvFxMqkwJin_Z|uMqWSqTUv?rlPen(Aw!}LI|xh6|H*|O$?%m z9ni#GXi`3U#RT+<&(L~p(0b$1dKGB$0yJd{+MpCo4WX$A(S{$PjmDyl6VN7^Xw!~p z(<=1J>1eYAwAmswEf!5HL(^NK>HExO9S#b}!Zw9P8CZ8qBWBeY!s zdQ~elqbZuv5zQz-GfL2mxoE}~^y*SHGZxKUfwpglwqK8S$U-}eKszi%JM2O`Ttu&l zMX#xcUego3W+Ix^6wS&+vqqpxQG(Ekdu`jbkhZfaCiy~;hLbTsrw0{q@{{XcA2(_<%lD#FI-*mSqf;)RQ^%rHFQC(Aqtniy(+kk)>(EErp^t7xD|(<6JJA^l=!|jb zjIHR*0(9m+^s$NPW9QIW`RJ^}=;K-F<2%sVUC`NE&^b-fIqT86E;@GvI`=gC#7Ojs zJ?Ok<=)6hjyyNJTJF6i<_=u4x~6_e4IXQC^U(3QK;S7OmudZMpP zM_<{BzOom6wm@H`q0XG=!RHy!(?=0KKj;RbW<~QQ#rcnAo_L> z^zCEl=E>;hx#;F&=sShzmKNxi&(JML&@E@tcTM!&W$4z?=zA{uUIX;K5$Jmp(f4Me z+nS==7NGApL*GA#ZjYcJOh!LAjqVtU?l_8mxDfp)9{ng6{b(`zG3du#(2sYaJG0Q8 zE74C{pt~$|*JSi>$>`t4p?}+l?#@U5-Wc5zME9&jKRt-ml^~XXtM` z(F;EGLJRal0eWE~dSL~6VHf)QN%Z0*^b+W$FnXyk22C*-fWb%%7Gg*PjOaQu8HXVs zVQ4ajcEiwd7`hb07sT*~G5lE={!$G8JPiLv4F3@fGlXI8#R%kJScMqY0t{;lhIJex zCIKU6Bt}dGBWPj-(=md*FoI(-g6lDY2Qh5Lup498-7xIY81{S&`!kGC0!FAGMrbNV zXeCBy7e?qbhEof}>44!3#Be5KIO{N+eHhLKjM$kNu@Q{8nHb@8jPNRq8Z$B62^d~3 zhPM?Xz86M(F-H7OjGFlvHJ4%33Srb*icz~5qxNcygnAeWB^Y&bFzTGgs5=)Uu^C3< z0*s_y7+18zs27V-Zz@LpT#Wi>F_M>Jr1&sWredV*!Dx_!(clN<>ugE1QUFd9{0 zG!A1l-iy&B3!}*_j3!GknykfWvJIojXBbV6VqDo6qghvsw6z%NQ!&!_Vl+>{Xx z5RoYwIWJYS{m}8D(W@P55F=l0s9-nor-|v~{ z_dIL;*ZQxsu6^%)_Br=`?d#?Hy{^61Ia{R%qtc5|=_^s`$59!{sEi6!#uik@RaBRJ zRF{RQE(cJV(WuPPsLb`K%yX!$Y*f}XRMu8h)+JPSHY$4-D!U%lH3ZeQ7}d2Fl@o%> zsX*n_qq@bTx=liLt4HO=p>hwS@+wf>2cT}PMD-{{_3VY}RedTe%tj3?Lk--98We{bG#fSO z5^C^zR8cajXaK5cH)=>SYRDYaknO1A0#xx;)UeB_;mc6N*P(`QM-4xSy1N*4w;wg) zG^%75YUC=^s0`GoCe-MCsL{t!qc5SxgrLT>Mvd8r8qnuF6rw6dqbkm#9+-i8;0kI&1!}@E)Wild}L! z8S_yyuAm<4hah!`nafd+r=cFNKs~-5_4pOktU;(*FQaB{Ma`;5JrRm}!iRdI z2=&Bt)Dvq^vkhvt4>fx%YW70ZZx*BG6rkqRqvjT(p2|VZUy53A5w)lWwRj)unNZZy zC8%c)qn_)7THc6SQH*-w0%~O=YL!E+PD52SpkBO+dMOw6`)Jg-V5G zq@rHki+XJts(L4CQyOY>De8>`RILxS zP#=y!?d^ryI|#M66t#B}YVT~+-leF$Yf*b^PXXZ;gR!WCnW%$BsDqWLgG*2ct5Kh}LmdKjXesKi4)xdNsJ~uC9o~ZatTpPh z0@P<4P)EX1M~YBK&Y}J`7IoC2jxIrcUVu90MIAec`g=0!?+a0XKY}`5iTXzf>K{{4 z|2Tm<@iOX*ji{5IQC~XLmn%`HhNHe3fck1C>Z^^Yua2S`9jdWAs&Oc)aRRDw6{>L$ zs__!)>lD=2#i+06puXOO`uZg5bSUa{FVyKu)af;-)B8~0fcho_^-U@2nQLWY zK%GfIof(8WGY)lT1?tRh)R`vKw+X0k2cf<#MSZ&z_3bXyw--=n4eD$*>TEgc>@w8Z zZK$)2sDDPI{<#(P&y%QgA*ge?sB?o*=VqbKtw5ctL!CQ~IvbqU2@6Mr`;!sT)sHV}Vrn#u5DpXS)s_7i+ zUo%ku+KBqsQPf3;y4W3cu@ZH09_r#&)Wt^B_mQaY`=Y*|iu(R#)b|Hb-}_OQ(omO1 zqAo2%U8+M}x`4XmNBt0r`k@&0!(P-6M^QhVLH%$U_2XgGkBz7wFQIUtXLdJlwTgo}u07UHQ!JVz0)5AhZu z-iwIxA}SJ5b%;8M$aF-HMf6d`7{tUPW-VfB5VH$02M}`tF&7ZyM{Fo!*C2KiVs|30 zBjVN~LBUASawNDj5_|}0HXI3wLz)ZHd^-~AkkA!KSTYiJ83{j*L^L2#Q;?`RNYpYU zsuqc=L!u5MQB6oRNOU+7-5H7Qg+vcRqAQW;SxEE}B)S@j-ho6nAkoK==(9-l6(lAe ziOEG`3Xqr)NX&F3W(5+n9*NnC#MC1(r;(T+k=R%yHU)|8gTxjiv15_gX-MpHB(@fb zJ&44fL}Hte77l5Vh_uK+TKJF_Bas$UkrqdgxE)CRXe9m+(kc^abpmO<1-YpLNk~8v z<{=4ZkT!#mL_rcWk;HN&aT$`h3rReJB!wVJ?U1A%NK!G9REZ?bLz1eHq`gSeNhIk< zB-tRz6OiP+Nb*S}`A4MfGNkQRr0p@J9Z0(rq+JoxZYI)h8PaY8(ry>h?ljUq6ltG> zv@b*2Z$;YgL)teY?XMy!(MU=flF|oB8I7dOM^b8$l)XsGNu)yv(jgb=P=s`tiF8(pjQiR-6f!uNu>AV!_yaDOF z3(07Qbje0CCm>l(NVY?=6Ors(B)bUddI0GrNNxqv9i)3lqkpMsA;r++K~`eh9h!3eqPT=`#T7GZpDmh4k5t z^f`yz5sTd6L++S>^j(Sc>wy%+A^j_m{#TI!rO1FY$ekOJ!ZpaismP!i$l%4u;FpoX z4ane&NKr6S)PM|ahuk#>Dc+6@n~MyefZRO=88HbNF&i1N6e(GclBBd;K%;*n9A$fyCxsHw=PDr9sYWb_7POeRulkkSOC zGzTdigp`g$N@pXbE0NL~q;wBbdIBl^5xFN6xhDm=r!R8P4CJ0_NF!C{orP zDI1EEO+d=#B4t%b*%qX%0V%tT+?#^j+Y7mOICAeKSOlpCZx z1t}kilrKffYmo9iNcjn*{72-zP~^VO$bDtVean&iwjlQ%LdJTLv6;x&p~%=-$k+|Y z*n`N}E6DxH$o&J5`==uJS0VTBM(#h0jEh9Zbw|dHMaC^f#%)K&okGTkBI8q#@x73W zb;tvC$OA`_2bz$H!;y(|k%=|P#A8UMK^`nX9xOv1oPkX8Ba>5*$-|M!^O4Cl$U|P_ zp?Kt>Ol0Z-Wa?$);bi3DLgeA;$g~~Ev_r_Wv&i(R$fJjmN6#TM1bJ)&@^~&X>oPL? z2r{P*nR6ETtrz)iJo4K<$lMjk+)c>bdSqTPGOrSuHxHS&2AQ`NnYRy_*N8kN$W!f* zr+Oey6(dhoB2Udjo?3%EwH0}4AM#Y-b61i1(a8KXWPTrH{#a!GJY;?iGXE$tzX@63 zkOdjYf)U7qDae9_$bxmqg6+tHgUEt2$U=iGY=}jV#GVmJ}mPrXfpKAWOC)OAaGT zE+NlEBhREE&-6i_8I3$M4S8k>^2~bVnVrZphmmK_Axi~W+8SA!jVvugmM%e-Zbz0j zBF{!6&-Ou{orXNS9(nd4^6XV)Sx019F|uq9vTPHw>?rb_AkTG1o*RKYHy3$s6Y|_q zWVs;AGmzy4$nvSk@-@ivJ;?GV(NMP59Kym%RTDHM4r0ePu2vUWJKb~dth1G4r2vi3*h_sPib z2O+%uHkPSu1h6-fE9Av{PWJ4{oVK1`bB(mW$ z@@hEpYDeT%AM)x5AvAsc5P8IP&^5syi64YW5*D zmytKlA+>_kwnp9@io7`id2JpH;9Hg!csauTH?L_J> zAnzIEy#!=;8uI>VUU*%OZJ>4EI2K=#Z)_AEp8Y((~KM?O4?e3XcMl#6^+fqb+I`KT88r~&!t6!Os( zq#+V%NJAR>APu9DhG|H{5~N`#(r^y>I2!pl4f(hf`FI)f@kZq1I^^R^$i9xqJ|D7g z1hQ`qvac4|w-?!W5!v4w+20r0KLy#p5ZS*S*?$H(5RM$^h#VM!99W1Ps6`GOM?Nvg zCmF~mBau%oBL|lw2dj~TyOD#(kb@VIPlJ(9laWtHBA>2A4pkt3orC;!BXYPB`K&ea z*>dEF7dbK&IZ}oEZ4&ag6Ug71kfU+P(Lu=3xya`}6motEa{erGp%A%Hi+nd1`EEJ#-OI>#TafQ|BTeg&f2~9=4n;1O zBNwM47w0117a-r)AeYV|KgJ?IB_Nk8kjn>k&^NV1-!uSy(@gYDd(a6T(FxV)Hl5LJs?dp< z=)@!Fq&euMYIJfmI(aENc^f+UB0BH`)^@GY?P}2Ncca^%L8pYGQ*zKL<>-{f=#(w! zlw;_Wi|7u)=nl!~j&bOld!TPFM&DeCzIh4y=1u6E>(MtKN8fxEo!T0m+5??B8l5@~ zow@{_x*nan6Pr%uS0j;i0)d4 z?s^p6wF#Z$&^d|doLqEH5jv*=oihiWvkIM4i|#fbotuEp-Gq&2cLKWi zUbHU(?OTDqEfIZN8Tz(`==^+i{#=z@#y}A=>AL40}9Xs4x{fJgf6T=7y8iy*P#bC zq6d|s2Zy5v`_O}Dp$FHY2OmTi%|sV%MHihw4~aw%>5d*!fgZ96J){XebOL&44SMJ$ z^j)*ickMtI*Pw@$p@)Z{htEgf9f!WV0Dbp9^oT-qNhrFc2fCyhJ#qwkltGVr89jO_ zdUPFnOd-0|i!NP(z9$=97KtuvK;JtKUEUpCz5#vTboAK1=&_~fv4Q=i=&^gy_a~$8 zpMk!=0X;4aJ#Hs@+&=WUaoLyzx)9zPR3emQ!4HF|sldi+^* zg%@2BkFLl>R}4T`l%p$VqAQl8D>kAlcA+bdpert*A28?#63`FipdT27eqbE>f!XK@ z1JDx-(G$m_C(c4oT!Egr2|ckMJ@Ght;w5xt2)eQzy0QU1=?Z#sBzkfxdU8H`@<{aL z3Fygl(UYstlWWnF51^;iqaPZ9o+{{v4f^2~=xHO+kEEa>S8&&AqE9fl;(SNE%zjX-x=kDmgB%*iBK)<~Y{mvBhuI1>uap?D!p?9A| z*Jq+XC_?Ws=ns?8d*`7)x{UsKI(mN&`anMVlbz^Kr=kBk9esEb`m+Y~->T4`&q5zN zgFZeM{f|@VFUrs-ub@xGp}(p@e_f9LW-0pH5cJvB=zqqe&*h`fuR(v8f^MooU(7^* z--Q050R7_$^yO*jpLe6LY(QW2qOYZ)ug9UU@5V3|s;ru7WWO&c%?k(h*HOu`aO!X-?bc9=xLBo<;4 zuVRu`Vv>t6$;U8lr(oK(!?c@?Y463PgkVyRVmcIJIxNI=EXLft5OecoOzK!nry@+J zLzuLSm|H3^x71)dx5K0hCcP4qk%q}QipdmA=0QwWE+(rMlRXrZU5Dv<0Fx7n$=QnO zHV>1VipiUb$!o%NFUNFm#N4_O(_<;7=V(l?Oib?)7+(tJwiTG$u3~P_#`Kwn>2m?o z*N5r57t{ABreAAJzX6zjvoZaaV*2gG^gD|wNWc^f#T3lP6zsqhT)^~C#`G`3^q+(2 zUyJE~3Ns)YGoUYKz;MifO3Z*+m;u$80lP5+E@JMC#oXB!bLVu-of|NB9>)|0V+y-t z3M(*$D=~%jn8J&gfr1&Bff+a&GjJhh;8x7QlbAsvm_a_wplO&v8!>~9V+My~2KT`X zo`D&>2{ZU4rYHncl#3}Eiy0D(8L|p9Pg~av^5&Wz3W#n1@DU9y*4ZdJ6M!BWBtv%p(IZ zkDS0vuf$B>hj}yu^JoKRMmc82Da>O-F^^rr%$$dLJQwr$8O*Fbm?x?+voB%h%F$)?o3w@Y{3o#2%V;0TFEbfR|d;s%w1!l=y%rh%7OM79K zp2R$R2(xS#=DBjra=|R0idlXV^ZXjjic-vqlb9FEF)y6PtQ?0~c>(jgnV40>F{?8% zs}EsboQ+vi_N&amyi|yJ=_qFH2F$t~%pdk({%{=ghjW-$wqgD_5A*6C%xh;cuV2P& zK7@H=3+Bz`m_O~nY+ZwSD;V?EY|L9{Fxy6Bw$)?)oQ(PNT+E-(Vzv*(Y(I(lOEKmz ze$0-Qn74~DI}oM%^IkmWy)BsC%P{W`!qi7&>gzBc zY{2YUjM;Mq^WiGY-VDs%M$AVmF%5!g*n#;t1M~4l%)UXGeY-LH2VnM}!yMRv`6LbV z$wth<`It|$F`ur*916x9nvMBuJm#<4Fo&mMK8wX1NyHpEg!$V#%-`xTN0Tu}7h^u} zgE^LpIkpb-_iW7ZXv{xCF#o8=oT$cpaRPI4IOgOb%$IX8r&2Iq8BC*K8s}ra&cu9O zjX9l$IlUh9O)}=2ZJ0A_G2d2U&hEzib2{c+DCXQT%=sG3g=EZyHJI;OW4=3zX*z`Y zR};F_(s8ewcyz;T-12ddyGtn9FsTpO0bwJrr{_8*{Ay<1fctpMtr58p~F! zXA0K44=Y}*UW~QDSQm#4+KCN*8QUxp+w5g*NOx@WU~Kd4*wAcj=qYU25^UIIZ1_TK z_*HB~B{pIQHnKZ5atAhQDK>gGHl{T;rVblhgKd$GZ7~+x;tVz}6B}2KjXR2MIRM*o z8a93qwpB-LtM%B{rP!O+ViP7{+l<5}Zoww4z$RB?+it|RtHHL~s*bCe7 zBKGDz*wii9PTR0))3LV{V{h4o?c5RD`8YOxIyS>$Gmc=ptjA_f!)7*Mv!-FQL$KNB zuw4b4lZ?$dgYA}v?Y0h^I~jrEOAGXICY|n+*UYXe5V0+KS_P&bs z&BXc|vA2!D=6kXERoL4{VEZIv`|QQuu@>9654P`iY`@{ye*3TmQ?UILu>H4T2du!} zITTwMhb^qf4y?uwT8bUy#|~bDEy~6goxu*N!VY!Vp}Vkm6 z#15~)-kpuTyB0fQDYm2+wqzrAWHffVej){$0lO$kHg--4LfcdcKlgvMLD+O1onX?*a?}~iILdKaBSsr z?1R0q4{pOw%EeBq#ZK;woxB@6r5gLt2JF-W*oWt0r?tjTJA-{>Cw6)Uc6v4T(NyfC zr?E3mVjuHkXI{iUUW=VI7W>3}>=Re8vkzf^a|k=<0QR?Muuqm@=jCIc8jhVm1-oE2 zcEKg=!rj5 z!v3xbyUJi!t;DVl#;%@;UEP4K8i1{8z`nQ^yJji&r8MkI2eE5+VSnET`}=9w-(SYA z%g3&pid}aG`-hR(Kg`3vT#9`q7yHUq?D{F#Kh|P5%)-7}iQQO_eQg7_dMEbv9oS8E z*v)ofzA4x@k7BpfWB;@lyLBPBe?f7jgB!7*uE8Fv#r}0F_V5hsXNlM&!Pp~5v41;+ zJ-QzIc`f!>CHC)e*uQVZ9v_4~ei8eRrPve2*e^n{UsPhh*oi%vhCR6$`(+vSR7dPr zt+8MEv5i-;UmwGso{RlvB=$@Q_RLA_w_C7h*J1xT2YaplBLXv=^7Q9(PM$ zT;~v6=iRvU8MurBT$eapW(qFzGA^qL*EJcJ11@I|uGHn_p-aYZ?} zqS3gbxwxVYxT1Zyq9)vsSlp1IxFJ=zA^UJcr{eA!j=O6X?yi?{cOAkNgDVcl6({0~ zr{IQ#mg7cl#Em?Q8`T3hYCdjs zGH!GcZuC;z7;s~z<4S{ZrOR>mMC0zM!<8lA%68$(F5vDRfV+1tuDlnnd@Zj09PYj} z+?l%Rv-!$Up2yRXd?zhWu zbGzf7OvXLA3pZ~L?kOK`egbYm0d8SFZc!|5aYx+ZS-7V=$=TGBSl;U3S;a)h3Tj|5C+==^L z2JUwUaI0qGRyE;P&%>==fm^)+w|YBnbpvkoaop+)xGHc}k+`aMxT+jnRROMQ1g>fV zu4)#pY6-4tEv~8-SG5~gbqrT^5%*#+?!`phi#fQL;&HFc#{IDdx2X=d=@4$yS=^?p zxXlA_n@8d{SK>C$!);!P+gyX&ybHJaFmCf{+-5(nCLCAO5mz$;SF;CKa~k)C!M%}! zd!sMzjS;vvrr_RKh>{19xf)?yExF zS7&jJUR+}`t}!3iSdMF)ifdeqYkV2kxCPhPfNMO3YrKg2x(Dv->A0`A<4#Y&oxY0u zW;X7dy|^>+xHFZwZw>C-Rk*YHxU+|G{~Uq)=NjDkv$*fp;J!PFYYN9T`EX4|xTZ2( zQ#G#XH11!ixPM*1U7UyeUU1(J$9-RmyA*=Ev=#TmNZgMhxF6TyeoDptG#&TTQru59 zxXbytpF85NINZP6;r?BZySfo~Z7a^d3U@sjcl``Oo?L>w!323P5v2AKBpV3Q^9eH5 z1le4I+zf((<`WcrfS_hG2nv}+Q1k8th4vvRESjLO3j~EvCn#bjL6PeTib^FYdOkrh zn+S?+AgIMAg5qWn)UuSI_@M-~iX*7i34&U$CFrJE1SJIjha4oR%~paE^9f2^M&P+n z$UHqAg(cqC%zBidvv8yx(^$stFDHqOIL;t?3Pzll-F$_czIKOzDnvdEO03 zV6J2ym*u*ORcjm?Tk3B*UY zu30g$En-qSM8w_*ln7&DqGO{Xa=K=F=RSVo>7JjCI`{P9R~|o9^x#{^UvBV!dgq9O zBh~KnPltcewZQYvgWG4n@OkXkT9bLC$oR9y)jjt79@WM3Y*=~U0j2)8{l97V%yiHc zUq5U5>o;gd3tG{EEXMe{wv1EB9fy{*P7WQ_y7SPI)=`FhB8Qe>Ovum@Bk^(ZaqU%` zcRF=>r+xdbD(IbxNZFv8cE&F$E z+VqLHWcH-W8Ba{Eobl+D(R%%rqW}8@iuM^j!KJbc&Y>^jmZa{8WB4Ca5z`N-Y0e|Zbp{i|iXK&Z+_9Q5Wy*plJ3a8oY+q%~eJKC72SyjC4%;{^v1ml;E&lTdGM1Fdq@?bhTDDC0br`+8 z@>-Y2Jk9gw-raRrk3{gWS$*Xhdjprk-l9Nx13`+KEv!-< zy0!17RhDY6GW{3omabUw?0f$6c^*&VwnUFd^3uO9_lW;$`Pb>|#(O&YkB$%M_)i{| z4U$eXdidIk3gB(%s9=v+E4xa(r@B zh9|%cNnMj7vLcdXga45~`XBK;{YTH!9{(>pOZ?LUt99^S^-SSA6fJ$hc)iLeYRf1^ z`VAu6?@8a^C8ND+8|9huV$G!Q{LMYz2fnq;bIiNN`xJ_3U$ED6SIJE2rs!C}2Yl?c}(&NtuqF5(;Bf`l_j0i_1MuaD2MudBB zKKXBt`N{LS|A){0|MqY-&NIm~(lg65|5}oNh5xrY;@W%HPJ7#WbMP<}yyNu_LP+sN z8qZ>%SD6rFSC<$QV!d(n?wxgm{qlZU@fYGY#&+$cx_QT+>HXZ8?v)Qr%+our^p&-@ z^p4vTm749lIbgMNP^a}4ZXws#nxsXcX^VWZo>)(4TI<$PRVA&hO7oECwGO$p6{Q2~2^<6TOlDcO1l5V|J*Bkh9W7Yr0pHLMOlcY{xot5GnUOui%=fa$X zw!MdEjo4P4HnMC&k9*fn>Dg)UlsmdVJUY+2U~->F9~g7@kefT)SyYmpH!Sa_p+mn& z>XHE7zyPuv>nU`KNY*;59(EIW0XVeM3g(OOSSuNvRENUJR)Vz66gyN<}K10jk zpx~gY5>H}8bZ}f)_}s$a;Kb-eRaKJMGCHiPB-;M!p+G3drFV+Vi@Z@c1THH*{(Jyd z)6>Jx*JpOg=+^ZYPDyIpH7l`ec2ctKdZXG3*D(PqmA1)`FR6X@b^p_oCwT7k`{LaWgT84zJE(tOJhpF;z1ogH0^!oGv+cqg} zlWkN|Op^Mg4yA4Ki_bi_e9K#}b$>I%!MJ|i+lX5 zbW~WIHaaXUwyGq|>a3~~ z{a@+zi}P;y?nd1I5{{neQ135P7?~5$r$tOkN`UojR^TwfYyX=C1LW7sD>wI>z4`vi zx1KDxXT!<4L!RoGHSNygrQ>h)n9eUvDE-~U?q_ehwWLRnQN7yS)MJb-N3~)66s@1VWmJtS)K(i+=-|6^OhWRcx0Gj|ukLwmI?MZb@B}L`JTgTNeL)T*-_V zim#QZT{`8D{&)O4{BLcp@??3kJUMIkpcr-iTWRsD4ew-_FD-Ymi-}yE@A6$f@ryg_ zc8h()=&YVSv#LsZ_H5HUVB0n=oA;|KY5qTw;Rd`140^3Tz^HkFO!y%De3y)<>|Wk( zfpYS{>I-8NRG`WTn7iAr=KKW&LcLM{<9Jk?UZuUqOuFsiHKWJ8^ssNzs9yK@68p}s zo$$aLzv*|XUH+K7ZliBc35+>oZcpiwnA1NswSTw7HaP=2-7=u-O`c`Frj-wh%YNm) z!Sltd)8Eg?*zXE%GpiSzM;feMd6EH!Ct_dm-QC-{qS26aBq5iLkYcb}Pzt6t;t~+~1 z$Motyxc#uF%ezYCt%YN{j(l#Cfd%sD{>lEL6+JNB=MDwqdiAO3*S>x4 z;ekHw1}{q3jhZ~s7ZDj!J1R2#SAJA6Z-fQ7{nr%#KY3F9KRC1J|Kv{9;(xQKmk$2R zp1Bf9Gr|JQXs8`!!b8J+;bB`wg$2E#LPFE`r=R~X;tvq>e^%*Hs%_Lyw+q*Z_AM;BC z`bIVeG>r@2^J}>gD0O7R)jQPN0r4LGjM>IrX*|E_mDZH=eTE`NI9@mbd|sQepQoE5<3h_L9e7fPaq zw03E=quNC!KBY3==-4r$<-FkFt`X^h_9)^;i*&<(;d^ehNPD_ucy1)A{E~_{`07SC zATiOgEmU%cl&;y`arT?)0UE1{?()oo2>uZNBtL&9Mc+}wR*kYmprH8suiLd&8KJ?|S{R9KvO%k8(sKJ`sm>d=`(2F|#D(4gY1PJQG2B^^?7 z^V)ap*gh{er9;5NFJ8~L&2$Z!^kk;*_U5Rdpsd1@ps+5{Do^DVmV~J=)xJ}w_`;G- zLUMSrx4BAAY@b+I(w^pF;gPyWkIp#-CfOvLjx7p0-&D{s{rrC;Qe<9wi>zP$6X=6~ zfvvb-?gHfH1zN=$Ko;l(Oxr*xM+V3sE2mqQHzqpJCWe!gNJKbEncZT{ue*svM0?vN z|3|+lkL!X%^Vfg5z3-%Or9w8Ok1w6&f7Aar|5yISo(fNwrq|!_U-2*V_wpR~O!bWN zeE8Fr)9WTJ7*#lFj^~-beN_FWCv{*>>$|Tt1@HMstw%il{Zsv)`9Jrs99lKNv)wb+ zGs$zxU+I7Qg8vh5)6qXvKJnGt^>~Q@eW$L%62@>}h6)R9E+G;e7nKF5+Xg}%S${esAb3#H{GP4h>1yxXgQno^O=E& zy%DtkM@@0VQ8(_5-MEWoe=V$3#EoYDzs96DJs%$Ye(}r|Z~9OCE!^LKx|@(Vl+zkWtm>n+5P|G!9k59p|>?GJdL za_{tVr%(E1k_ixSk_;gP&|G>|F@kWVV*x=#5XA;4!Gb6V8o+=cRekydB_bAz7=wZo z6+y9~?}0%H`fMmye=M2{ejg-C%IH&T|HIy6 z52I&M&qMPUZ#u=kM$RwxRd*YL9ziM^j-Km!`WklR&qns$SRRApZ^P5t$+J>TvNx+`Q|O`d zeIe+$R!l&+}X7c`B7}*HM zW|PN^7Hek02V=wXY?Ce$2|c*O&0PLa;aBpC-1~W*_17@pq#~ zQ6F?UdZEv6x3G_XI?GO!qoMB^>mn74JtVR`sCAr=3a9ChXlUiTxuCAmbZNp8R+0KsMev_W{V?ybBp4<=Ai zA%ZB8sFFY%e)~D0Bt`*KmHQLPMj_maszm* zlGtx05id_9;(T_77DBNC?!_dOM5i(oLG%pU%N!XpJ#&WI1Lzx+ncR;b&vzs*lWLNq z1L=5La&St@_DMA$LAvThl*=zBl4PQ@_4qZPfRNaP5+VDVPM*Q-rJD0`eWdcMB68hc z4F%GWWO2wI#p59qW~U*P>2^=t^`~p+m|KqWe%!^33!NquZW8MBBv2Uh_`Vc&VnT_br{Km66x< z(MZ#z8t_6})$jBmiCV10f?P0LQT#T^JlkRnrLjB#@z#rWVFl@a{hm&tzi@CpX}IAKe8`S;2c6Ir0YRCS*j6Hln!dh4oft$H_{&{E3Q_rwt*qr=BsyX@LhwOKJAo=UU`;+?2 zE9Ab?D-eW2=&WXX{8q4r7Hd`txqJvrp!(4?Kny5>a`s=s;CPWJmVhuPcX*x@}+H~sVS$Lj8!S-0Tw zeh<~ny6?UD{fzrVl4>9W3izEC%rcv^mS|?PHPe>4M6(fO4O;SMDJTOg6xwE4W?SQp zCGK~FCHz)_ctW2?D0S;bBIFVh6=8%_%-Ekrf=CgbOvhMMlGyhrvb$c|ufy0z^yv-% znBBL-)wlOA=+ZHfom^gDHmX-_?%n9V(t$;RcU6UD=4_Ub=-ROyK79oKy`;qG0fH(lMa&E-@34}9Q;uEVQ$-<)^TE#u37 z%PNX^t{;;acv*RN!QgRsSKd%PE}r;dxbKpFiK0GT%5n;>nKi^6N$iVo6TjKO;fgm(0<4r$x)PqqJNVhS(p6c4C;rv zox#15>v3-~rKyfxi?AA_-A9 zm1qdXenW1ji4tEk9~SvR9n`mHlUJ%af3iov#4wt6{;N&{N-8PeGX;QtBh`Q(@>LHX zB(>Ox#c#Fw0D?A4yk1Gf>y`5I)R-a{hSahg5k$XX|6<1+Zffzf57{^92ph~J$YCGJ z^dkqdvp(1vY9F{H`7{0yzt1v?iYoHa@nkt)Co2G5E_Sv^4N(h167e{QL@ZoZB*!fN zIzdV7g>d`$#l$t@{si9>o~2Fg3SG|Honf7j3#Cb6VhN!FsitXa@+_ugY4Rysznlb~ zU`T0|u+z%bED2GH7HiZ4W|P^(tu$gXAz8Q8C_j86D#}Ha$4vEaLKys!Qp7#us-`o< zeEtREPqv}CQpx#c?@yuEafv;|-oR7DX(&}AM#|GAWlM31C=^Spxcw=w(hw)h@TAL^ zb;iX5V@8h}Wtf9eC4r}~>(JAme#+jEkFPv898mKw&2Dmo5w!<=A!;v0QG(oXAUX1* zpX5gX0Z-H%YZ(D{;~acp1hTYBlL^9n1QG(CNBZv(lqQsDX#^c(*M0gadYZklQhIJB z-?L+Q65S@f0wz$lf<#OdB%V1)#Ot`@DgH~)ZM)ceGW&8ndVUI?ghwXVlYacOz>bp2 z<|}x{e=EYDX-Lm*7|{k&+4K^rWJhNLf|0ZqyQC%{{3+N)5J3>%KT2dyP!uJw>!0l0 z5n7A-@mp?Sa|3yvhQJ5eFib76`B!ORbK7txvDqXK@{6Y|r&ElqDuL^~@^D>Xb8%u;knX*)kF%}o) zN4c~piB5?UkKfJR`If|RG*?Ddw4s5{JhA)p-#>Zp=0&&M|HS;;?_KuflhWzr*bi9a zcdVK1!#(HRy7K+nWiN1}n%hg{b{Yadw;6=jD169j4F`n#Sgo1e05*4(6mQg>8NOKY zzj%(hP}&g^`fa3Vs>{fXd!G9@Yd{^E9-Tb-t|#7lxq8;rcwdzHuOvzoe>!;2n$_Dh z-CmW!Ck7g4@^no{4YVgAg0W4VOeo zFrg#}zuZ$fbK0eW-g;{Lzs`Sna5QZ=vGA6;)r;<$`Q%IW$lJ(J$wqwl`GyClEZ_a& z%2zk(BO>Q$2s{vmajFw!WaG{x4WngRcw6(QYE1FW9pnmUhp|G!VT;Q`mui-PE3i~^ zxlJah@_N(5sLE~_cih`(v9R%%Y&;m4>Fm+ZkI0yJJ=!sCy0;5yFGuVv0>Au!>g|;k>cq)7i?|XN(OA*xb{u2utr%H?Mg!sf_xaF zUIG&0UYH4+sx_QpjXI*$nj;W&`7^zl)tc8${ow$Cc@|3n&8c!5XEc~PqoLG(>%ynU zE8G#`x8*3t-n+%#m;Pn%yC&a%ull)VXbQdUyEjk#este>+Hi8wOcAESO!4zrPH8rzYqB>emiy1YR%=g0+&gz z-8|3IV#KFpQh2m(E`EmRm&j3Qe#5>SA3b%7&iE7!#YL!S^Zevz(&^-+-E0hCmHIfk+ z?^dng9^YIf!#t}sEi9f`Z#>f2gNk|{Md0zol=EEBY6xh~;dlG@?%t)YVLBg2m&(e* zCiY{_o(||*a-d~6sTJ-lod!F!R|6Jom5^WZTU|0(Z8ijUGo8m{1|@OBtrkH85#K|G zU(M~3&g>YQPEVbp=uQ-58amB<(&?rO^a=AA&p`J{9K94!t^CzueD5SGrX|o1B8G6^ zsZ-Kveb413Gz8f&SnYrV$WA4HAe}lwj%qD45KkV}cYq+!I(Bj%jiJNmAM20Hcd zq}7?zzeSb!k~NQSos&F*yQ8cZ=O>R)So_B9V-B-1hJ+RfZDmNP)s>P_K1<(45^5;T zzeuP)06#5g*f;5sQ>W-{pFO)7cSqT)?@Df?@Q>Y}?KkxFbQ-$gS66EgknPo)?6y>K zzq;zb{OVjNbwi?rM-p4boMU)YBRhc#&i#b!?CVnxuX^Ue`A<9%LfMT7qg;0K+;8kN zGIPhXYhK^_-1FP`y~*0rdugcU-b_#3o75#6H>ZAYdT{G|v(*I=689!QjAE+)FZbp< z$A15$?$*@3xh%OvI$HYyJM&#Lun(|$;oihBl(nT@j8Sz}b5J@lZZ4P0Vcc8}#Yrx{ zxq_+SYf4veJ4)fUM(XPNtNQBFKyNy;{lxjh2S(C{6N_%Szxwg%vz}ya@k8$+Z(}nm z-ncON(Y&cOZ*N}7Uj-^O7CuEi;D)wpz~nc(0IXB-9E`D31ghkDJTR&7$l(4_B_(kI zCrZgAUmu=4!Kd0?IpL9p2AccWu!;zYM&5Xa1t@%c^Icy4jA6|U7DzIQm>dXC?60MHlM;(vf2`B@H@0H;# zy{57wFTBw3+iyKC?^tTPT#?IHx2m~;`Y5FC9AcO3+#+(j%q|4; zTrRJbZ=tYZxs#;JdCCUTJz{R8DhcXqpf`NNsvAC;@Ib@bH&89UK3U67FTV#1&1(Um z79OnT*+!d*U_WtP)ml{^<=1 zF%ieXW7{m$gdJP?Gx63oCApoF{U{`}B4zE0@bP4Nv@}0~Pw2ib`H=#6A*w1wR=m{a zaM=JmY#9567tVJoH4+Ps7$b=w6yekKk{{U%=qmP0trDa(_8R*YjbvMq^JSlxoS=|A z$7FPAW(P}m_73_TTiKTU0`wFhkXaUWQUD*6sTtt1yWGgua;M5jwh_AzAmFg;5eM#Z zrY=))PjG(|>o!eES(!eTPGyKXS;^z9sef@IUL^07DTe@q&1KKF$L&O+Hv1~g zMj+%4<%EbrA+$<^9Bw3!89j<)KZO!7Ol9tm^F+;oWO=z#USCpNgz^-nV?k-BQpKI` zm;H**@(CikolKqNXD(%#%ROwh& z8Y|^fq>ADT;=U``s$u=#efJqOeg*o*TF*XXhiMHSISB>#wI}htDD6$Ug0e&Go4r;* zun%pZb@(j!cy!J}h_XW?Ce>luq4^xX?O@q%Rs8`gGqRfn(4{v|EUZ(IoJy zHsp|ENOjtg7zq@Laq!ILG*f#VgJRM8Q}iafNwm(CVkkSyXKCG9WEo5p$Dl-?DY^pP z1VPn7aEMP83L?aE(L6z*`M!Uc1UGCJ<`U@mO>;4O(f9-!L z>%-#~IK~lZ$OK=aS%wr;r3EA_Uwa`1Jic*GtRW9enP4F*FvgLt#BgOsn!WWJiq>Kc z_0~P%guaGpVhw+({U7a*!VaT%{sCXs-}TPdkoPXbqI-=wrtvkjw~gv!X<5Tj0JuPm z{fKD4@JF%xNK#^`lT0s?UjRT`#K`rwJ=gQSM^uTSZOsR2FK*qu9{~4h)%xh8ty;5M z^F@6(zXgDYigEM4O|Yo>DgYt7R1vb9to1td(X@=6d(H)7|F06C`4moyl|&h0L`}7s z-oKtGI$g}Q(%7fr#!7~j819=E($AA|T8B0_(CK3Qdh4FZrteco?9-RE|D*j;IA!$C zKR`16u6Mpqdhd(ipDAe!@ts2db-MNOaB0^+@hSXj^v_SKlzVai!om}C<&Xj{lbYTd zd6gI%>+_ge%cN*6=Bl^u37_aI=@Bcrv-W?qKMDtp-uVYm;O~0pbJcra1W)O6#k@I2 zQY2j;jlQ#hpga7EKNFdhgqp77>MJ#q$xO_o6|R2w1zddv53q}yoLiIJ4~v!xYZ-rb ze%-lq>&}x8lTrNT0(2SM4H%}9`|vZ;OTyFa{yKP?kE^j@dOv$kFufmmKGkGSDX@R4 z$&^@n_&>F{J|$`>Oe`0!v=og-!1!B5C0cu-=;7PfubpwnhV?VL4ZXTs*I`4+ee3U- z@ywdr?pTkWAJXm8VZ*y!dNt2THXkGhr3WDZnJ`Z67zhM?*jJ-T7!Amfhy`1u2#!vjUKvK3|VorU*`PH_x-gInOIab5c@2bEm=NkCuuI>;+a+ zr!q;WG?9bDZ+q;}@4p{Zn<>?dv5YwcOU9v-M%w`0tY`w1^Gwz;gU~!nvz%8 z2V9ODlnZ@%{$0d(#H^k zBABK2Y!B7~pA-hO+l(E=Y_>|)8cl)>cLsKmjEt;sR*e>J54dfC?~;IHHqO8q_>$TA z`6Zs5*#UFF+;+Byqd?3-8}pxbw36iU#+d{N_K<_zq*$v7Nh(RIddDFQ7?y9T^Wc z@T*oK_QcY|LgM>5S>-Q5KlJ>>rAsGHT(SgBS~79MGX5hV7y>|M2sB&1>M@%!1s9RA z2k@gre$;G>f7y6Ac>pRB75jO%A$2;HsG^^m2$^xu!;dbQR=s*Uc1fXg4g3$8^vvD& ztl*k}XEd&tG30Yhc6Pc2!0V_=PnWAA-g&Ao+hVm^mTFdOUI>vqQmy3$LhfoUgnWJ; zzZakbNGJl3lrr-h4G0|1ix z+n)v#2g~3F0E*f{vvktXKJB1{&&=|^zg=i=I4zvFH{L#LZ?-=i&(4mA{j{U&eNvFw zzI|3=}5qCG1xEqy(_*PV$ZzN3g*qDyB<0%wx zv>+z%3OeW2qn$Wu)V5XYUAx%vyyjq)+hSF4vy&sMu7m4PmIr&#>Ib3lR zSnU0B(sI&d0M9;6hCL%>`#w#kxg9$A+w9HEbot-6)Vtm%@y1_8PFE@Ctkyz3{UOk- zE%=7QQTmU?7o%}nA#=Pf2@-MiQc0%yte*8oZ=x=!9KFeUvpwt=HV@s49LRz0VGra? zTXB$mhq6!3n=pLI<8SVK;-Rsb=v4t!ew7Vm``A7jF8PdShZNZ z9=CIZXRufG`g{1jaU*ulslA*vRg#Ev1e{KK3B`k)3aOtx5+x!|=}mYOl73T0q#1MQ z+oQJ8d!E}(-(S=8W!>DJSRxc1WX1dsUdp2A%PGmDxa|~ z)v0(8c3_*?M2VeH)nhRBOg2?H<^1V# zAy=MYImFZU>-Q2z(6s#YWpPn!<}`|MqI7A*8!3%&lC(cUB6MT&`0_WGA4g>mv+mfx z{LSS*u$_;feW-wah6>gr%LY`)KH0#|@+_AOAb%qCs~2Xfs@)70#W@?PUP3+8BLm0E z1MyRd*zAinFGnV2$yhb zl&(pX1ZRDtGwjXlZNE?=s(Pb%bLCz#@^8( z&pMtJ-H6vD#{du*+WemMn)DHPAswP{y;|za%nc)Kvtv7!T(fd>^TV?wyUmP|NA;y= zWYX*a5UYcF%;o?G7<;l8YaZ`~L??X7(U^hn>f4#eLir%ZqO z@UM5heD$`sQ5!T2t)BJtRcm*%-2#*M!nN$fUv}M(*ERimJIZYS3J6>d^>R1zC3qnd z3g8Mg=7VUKRSIu+x!Ojzt5R0X2ljvm$8cLC&CHDi&I&a`H{}ZFp$qh| z9>vyK=?DuTey2oPo znwt1;j%&7QlZiNp$z^x#(Ci);$3Kk_WLK3+J)9Da?=R8gKjr0IDe=45z?|t*{VM^M z2zCg&eI1*D9$kkPpr$_L4ZNEFZ9Q7ZrZ;V0Z;WdLJp?AOL0k=D1O&MWAz-ywcW4$5 zF_|S~iPx3H>vR;1yS{`AIQI)uoECl*>BCKP$?W8GyfBkL=R8_>3#!}B>M1+H`m9f_ zzy|tZ>PaR58M%3u-gpuP@ub6b@wyTrm93tXVydK`B-kpm#gp)AHfkpdNvPX))~)H6 z^?;xZfc6&nu7^|$qCh<^uPeB%`M6qPvG=3M74&#q%QUlOb2@FyG>Tjvr^jjW0patt zn4BZ5_8xA#-RiaQJ@EGMdL?I&2;^e0JQ3%&A+P&TS6GPLp*pDGWgp4~LC4q%1rna} z@t@U|1QMmd$XsJlkG&^+0K8nSJ6QBD)O@R=e|o*s6BE*s!86l z=Cw8K6bi0+Z4G{ec{(TB^hXWcmSeZm0TdtvJ=9#68M!6mgZT&rAMrV@kEk|#z-2R2 zMOL2DJY!ugyH5XFD~NY+ekDflJW-jS+886BorSV@MBQw|H5P4NJGON zV#vH92If|0uX`0YFkP21Z|HX6wR2gdV(nI z57%gZw@X3}B1yzdYBaMeyGC>A8t8&0FBBI)U8@UNjB-g}QLLSA3DL=M6 zPwCZ_57#{8a+=2eecyd0_dfK+u?6hwceflxv2S1LTKvR<*T-Ew_f0YeZ6CC!g8jmd ze!-&6pT35y=s~t*2Rrq~}uN4LYgZLUNd?6;s(Hn>bh!gAHtpHAuf0 za>liMJ-5U;z$#LTP-(=^(-QQP^J8#TawQ$r^gC{oe3J}fg?E#_r0oOylF=mL&wH7* zlO7N#usqenA@UYFTa`>$zh2UzqOL+`JaC;Qj19p-kRCXbG@qe|Svz^vpW{up0)j0p zOx~6W_@PwIkia=Ydc>u=Y&~o)S1{nkHJTTh9W|Ocqeb0w`AwNP23|y1<^mZ|Dh&1@ zc{_gD#v`kSmc+Y0cX-us4jDOo?zft4zMW}@CCkcf95sD8ejV?THh~|qVZ7S4#MZ-B zX(Jrom183oY6}d}Y&K5@V`1*f{{{b>Z1xp|(v6VYi3h*wmUHnnh`*b(ZS#_)Sk~ev0i*H|5U#QyMojxM~S< zpd$*!>&4+n*69|WhnL|Hy!SixS&CCOA+byPnnAs9kal#8Dm zgMuQ_Si%)X3q~ua;IF{IlAsR7GeBFW(iWJYJUZE%tY7rPf`=Md<8AcOhG$+w_aO5A zE3208|EVvX{=C^12CrLn2dXu!EzKoP{Q>@()f*t+nEBKlaO1$ z%{HMggJn8yz%bW3m3E}-SKP$D{CW3%k6!oq1Qh$@^;yfw`PlW{2R8Y&TTC&8Z&wn;-w5YKa{f<1kjF`lHm-}Sb^6dit>yXCywH~EzY8T zL;4lvbn4e;^V~K6yn68zwd0i|uk7fxj41C=SXkJ#OS{6tLOdmWMM1amL$4S-ytG~S z_JMf~qYH=3zPkTyjyvpnnv^x^ymR)25(vmskO>fW;=EdKwfqTb`=eXE_{} zO~eVR&Lg%99tJmlQWH`){HxTevYk@#!S{km_(umDnt=Ytw zjXs>B$YS!dZVR@GLg3=-<0-vB#^##`?$;4`_W#x zMUUqXpZI{!SO3(2OX>R=OEw+^~n=Kzre1`Yt&HK4{CmpsY|R zwnGbLsJR(CG=Hw+;(RJNkdrvt`hD9WJBue)+ZA3&td^H^2MxG++d9AMK3w;|v#s90 zO~JlvTJgZmHDfP*K;9^=dhn(>bJZ?=@J7>$2c|qdy8C@nt6!2st2W)BKDYAa$|0i$ zv7xIs-&pb7irTA(jum%QdjP48;FdX{Q1v-vEJ-eGAwgy*Gi}HMpexHBArk`w-rvW^yY?V1tP2 zlC402{v=_uRsP9ljwh0J?!zU?I*8W`A0UcQ0uk|*nvbyeQP~l;`?kYu4=Vqdz4IO# zjE1x4*k=8^xNqS-YBBoHR-GmrrUZVX*dqUAHOK23OAgmHmO#8NC9)_%5bvH^*q)D3 zSN875ce3}6AeHSpg45Vbs1jYn{-J*d0uMExmYU!kc%cBgLQgf%wMkN=l5<43tVh|V z4jsBhH>u(9rQNc8C2c5J!OH9Mq%K$8tk(@s0}sgQRYLc)l(35YkH1TkvlB6YAl5M} ztF#~xC@4+7n$I-P#e(zy zfLXM}a0B_15NWHZhEb>n2$oGIdCLg?l7!k3SXO0PJ3@|&fCxvy=(55uIirjsA-C>Z zw|C0Hb<$SW6K&^zM4s|b;`sm5t7C1=)arFlO>5OF;$uZ?M6Z6;M(~yqL?0zLXgKGW zj|r`584DnoO8!JI{I5^E(DEE0@I6%0jr0nzf|Hl?QuF<;Bbwjtua%DF(SXbMrWin((14HiBEnd#0!c%@}JXBYADVJKI&MkyivXW7(6zv;@GTBzP6%D}qlL@>JA512&JNZ-c z$L3}op(k?PBX#`6H3ENuk)LO}NnX}p@E3x!Ch$z%bld|xg(h*-ivik!%wTIY6Cm~{ z0Er0Bmh)90JkiDpQv%u-MI_Qxy`9{oa|pT5KC!uhrb(|rKD?|>^!gw_lEtgkEz{ zIGmm411Jb*WJPG^BNn?%O*SXB#Dj^i>fDV%9%eXvgva58gRGYs;nW@-e#gH}o35Jy z1_{-O4RZ9P4sRvV(gZh~qos*XE$kmt#2=A^5r4!JDJi3AkE~=phu%Gb$~Vm^MQsm1 zK5goPJKxAhA2Pq$gif<|y^(#^!zBaI>2(=x+jUy=1G090|B6jdtQmg!I#xf7uhIZ` z4-Xf2yt36WAL5B*J;dud8;V;Dc$hE|K4H5J6X7qPGK_+FJ+}oo#7zhd9?tfBf-Yn4 z98O*R{3eV8(2+8M81!%E*o;B=9geoxf)PgB@SxgIi;(E}wITr8Q*SS1B)^sJuzS*)JAP~Vkcgg)8!l?TW!`J9An|3 z&fTJN;(ie(G-8F^Fw;{6!d%n8>X{^gu`qBJf?p`G794GH{yZ*Y+fmQ?$oCj3WA8u4 zIO|~o`UTA=1Z?1bO}Hd_eLLvs#q&ctU$dlR%#eJ%P}SH~%B%&Xk+4#d>-UU*Gg ze0KfvTb@kyCVDi%kmesORTtG}t$=}0rCuH)Xm?KwT>AVS8Gite^amZ zQc||PXaDyuy;Rg~-JPF*xv1O9V>cJ-w*DX0TSfU+cc@ONN5P(Il^1J`KjBqe|F3`h zKY#yU)mejw;Xy;2W9>gPN-!l2m*|*$0Gr6H|?UsYP{>gtg zYwD!CX5TX9jucX}m5q25wP|f5{!#0@*yhvmmlIm>mq%d}n#?h2c8O!sPSv_EMquhT zCC6*(HswMzSI28&MT+5qzgVDp?;LBYqdOPD9Dy~(ynBwP{G~SC{})V}{uyrN>YwQe zABY(kBid2>7fk4E0NhWEsJ)KU0=I!6m8BT!`WH;yF97&vF<-s)(dJjsWPuuDkiRSCFz#DICe*LfbJ01PX$D*TO z7oz>fO1h*N8tiuJ$XCO=&|7oK(OVxyR~swolwt@xf7hDts@}RM8m6xcZ@jH}du{99 zb%qSOk8)c)pjwFw{Qnmlj0&AiYw;UW6UY!yEdXZfl8{97l)3?#DKJI73H-)0Yo1gI(_+y?~M-Zj|z3zzaRpJZ~L<-%_Vqy$*-zbIs+*c3>}Ya9o9hs6_c(vyc=L zdw(JKQaHSdXI6}Oy#OL{CT5hU7&$7t6z`cZyx*uR3WwZwUWnk~$!~Brt(^}DGH5NnTY3-d&{fT~*8w<9 zb*gOV#gyWrh&LgYW7=kdTqI5~f%qsf#KXKmd8=Xa$VIFmAwc8!ZreZanY&JY*k03p zq*Z$F-sQ_?ExEEMAK7HO1&x!Q638ZtWtU1oetQJygX3YU)>qESlK%Y?iGKa)mY&5$ zJ-Qbc_2NF_WppL_Q|<&d2tb*dy$h^Lsh@x`K58bh>dtOeg=M`ht z%)hdi<1Y7*0e9aA2>Q}myh}RYa%u>t^&3DGMF7o6lq7;>c-QgQkFR)UjdY&9j{1J| z5nop?fT(@sfH7*O4HGLdOVmQGRy%-;m?isc6qWX*aEnCGqx7Ed(0jHiF_hoBE#OuR8)4@mpnFw`@G3FX)Fa1)Of-YD z5QUYer(Sg9HNmNxoPo1@H{MRh{Q+bmU~n0=<#_%5(P{~pkXtg(^1J-5u!AbIu?lX7 zUgtx+_`$=gdq|Rfu_h5vE{KJ&CyihTM|JQAA7~UHjyTVZ^5h_|hjF1W9ghYX#p%|r zZ7ENO5^TR-q7F~ok8eo!X0NcR^bosYKO2X94E?4@vc9K1WPmit=T-Aw;!cphus1wJ)B;xh27prwdM^t9Bv8anau%rRbE~}R#l*dH0dd?*MYbq zRKYV^B4=EfC@y-)yvw}HExw|%Sb<>h~xO>E$B@5@=^%$uqHP=0P$2~WV?J!`$w3%!_D?iKL zLFvE!h}zZeSik12x7VOi&CQ0#%;?hDHZd&QoD2UrSztjn~w&gAXoMb0vP%CAWm_M6x>eaPU zH8l7M>ndCB2wHvS%)#G~nSJ~7TQ$qpuw$qL`&g>^{N%?UvOn;_9&78&yX4tBN!7MkT|8IO`K8F9ZjK`dY273Fq z?|%8`r@L=nc+1=;9=YS5r4J_8nchiGemhmhqhiKw&wTJ|_4BWABpqUOBVGptGE_GY zo4GJ@5KJY+k#QF$E^h^85T`3_6o5S%?9faefLUkOYg-`)P zWe5ckeS8Lck^S>_G=#l)8ybp+PG|p2&ftH$9bJWn+|FJ^LuN9;L7spIpdY18;Dn%R zb$$TOHYOQ4^!KmuqJ2fhNO2NTz&)X$KAAl(?dWPZtg>ImRd@hi6K)?3N!6})@kF?3 z1t6G$`{9?QmmnKdH7`5xfyENZ`~W+hIP64D`^m!0u9*Wfi6s+UoVIil+CW8PNd?Eu zjA|?y#Y^Y9g%MR!RE$J5cY!2sT{+et!7n9umJhvdXnD`F+s6&BskotUtn8|>SCyeT zxZm(g#}4k>|Efeny>ZLsQFUaO-ZRDwEN|;H0fM#~++K$Yss8VvE(9?c>zw97LQ1k!*5O%WmsZkel%A=1I+0AY#^k>1}oa*J{9#M=fAJ6d_gu6g6ejC|nk z#~**GcG;tN;xqkwbiVh|+b8v0(dn*nPn6Pjt7a~3ZsurlnMs=<20t|d6u^Jz;N#d5~3c0ykrLx&A7hI0gO&PlsSyNL=Y(t9`t1B})o zgA>FVaOv%1?$#`y7kPzC!6?+dyU(G!?k(%yU30C;U|1P9{4J~xuQ%6X4}6KH8~nGt zE-71pvml4DKAfv>SOO;a5`Ht-PqFRrY8nV$lXW{^rzuf+WtMxSXI zL=r@V|0AVF@hoY^om?i3xE+?^9pHc0qbP}%D9SN3UdR#l3eUW`HgIv2M(1gADb+cq z$KW$VN~1~)w~JlO(^S|*Ub(rY_pixN08n1WcpI8un~~~Tocn=nBCpid((~8osE|C2 zceYRUYVdTWi9$LG#5p;RO7&O*5BqFuezDf;2HMJA<)@HWYKcK#-X5(aHS&0U3b%S*^2)(25umRz=b3Wu@cK|H8pX#nluhI{pbVy_3BE?ljj>n8 zQk+g>?Bs|TyB<;ERyog`3X1Wz=JU0#RIeA#%{d|4I=}Qd)EcYJ*{JT!RNs1Q9KTB zrwh>#Lx1>`80zQ0n0Ko4zPWDF`#z2yYt=Ud|E6!Te|q1?;k#CS+X5H&t!KSQwM5{) zLOao9oi!ciEb)F>1}~Ivp_r-8BmKFBNBR{Cr z=7sj<*xMVx6garq*|H@48RRqk_6myAb6XYtMb!uANi&n0^|BPb)^weOfNx zZyO`$UhP%IsoP9%oyYp{Dy2Ba5!`|we!Fqf+u6;=J8sXtQH=Vw59sgpI+E}itLnXz~~jNM7PRrL%KKB23tDj z8e5NcZfl8Oeu4gh=C-a3@H;O=B1Y08Cpv?e^W}Bc?iVO=5o?$DFJkSsJY{6dQ@%n^ zr{c{n9&aAuGoq>&KSRi({*14XCG`w1&zBAg8BF4qPw0_^+glW-LG z7YML@>=AS~>WkuNI(vv65ap>)pJ>ZpG8RIMP;X9&X;q{8vok-jFHzuJ5~U~S^LHH# zYyMF>B|Q&*$bteGt#-_@1)R>n5-poR5Q0lICpZB)DDtMy_Nd6?9Dz+e@@AV%ZEVh9 zHbt{BZrg@iOO3&D{xwzh%!qjD=2FUN;%{v<0uTvqEeY;ps>XFJiWH+>BU$ui;d!v__t=Zo2*M_*KgkVZZaEx z^Ukv`*K@0|vblktq#+1H3~qcKl;#Gt)avXfDZVsna(F#1M`pF=aO2=|4f{>eYRwez zDb_Rz(iBgQPqKQdyZ~)-s;naD!ksPgc0&HG<%KeQvmjKF;7lh`Q9qhXqF9)PAl}AN zmLQ_GBNFu-^)j7h^xr*8H(e?{#@_lC;V)*sQA7uw*`GV;(nyGn$$4PZor~_BIDB!D z*^A8V2bBH!In-_5o&RQd$9ya5z47HwRz9|4?bCdQS2ur0Z@#&LLslCDnGw%c9pj!n#5_D9Qxe?mlE!$KH=gb z#97>e-^|~#qDPQA860TB-?^fP%*k&X|1s>Qk&`y=ypDbG#|idL{r0cF*!9Bu?BLT? z53agTdi{rKU5eU{sJMRR+qa%#KO)=FWlh&SvG&2m$$<}?dw9)rkKXhmAQ;&E9T`Hy zkPp|Xoy}R{aMm(yYIsf9Na192GK_D1JZnmscyhYTgUMi+k=8r{l^qLU$XAu(ewS(GxzF;m$!eX$L#J`(iiFS?pO3NJdac2`-%K5!1Ue)xgcJC5p5YyLWnh!o8+_%j{pvp>&a zXTLtle#Cx!DeH0rd++f(XFNm(uYLDl>|2!mBerg4tCw$mz2+UR)pDEvL(YmiSQTov z%K=_ks(D>9wb1371;CG8E}Kur^K3T1k00V>J^w14ACWBKZ`^T*4s*OjL@|Q?yrP*1 zokYl4_RzG_(yNBEllR_t=QZ2#9&%Ok_#EH1Omqn@8S~CSQ6n!~;xz-)1w%X@h*oO> zx5MR?I7y$ERwEfXRbdr}og*Y`4~Ii?RavdE3@@H1Nd+;XSa@7ki0B2~qAL_$LXYDq z1zDZz6?a)e<}1Yuf|q#wKFHTaGn(rsH!I3Vc6TE?xr=?it||>xy!$&l!G6h{yWyT; z(?hHby^nH!M_u=P!j5cw1O0~PvLj6m?5o$`TDxlZbbi_($w+1Mc#&=CrMAPeN6wXr zgJhBpgjguSpJ^_F?1Y$9ll+;MZHk+)iSs(+CHy5x2D@3L_4KmON@>I|l}7wVA>oA7>o zaK^*c53~GPgyt*&H`@8hu-jxdUIj-qOLU23p%+w<#Zx;(y4QzbG4Sp z$W+sUIhmO`)mmmI@j?Nzk%G3p+E#150{KyIln1wMuvoL%2qxCW8X?%zse4snVc&wT zRYgU81NqsRX_0xMK%g&{XE~jHZ5Q5@z-5A$0z1OlD)C01(n)g8oREnS7h6GOG+q{E zoOoSeIEaY@N?H{e6z^Kd;em0YByyCF5hPxw#Do8-qJ4>yvLFw#8Py+BT0-{wghJ%y z2UazrN$6+x-MNvKD35(bpXfF9iK+z)zW)CE`@3GE-oN;X9zV>iTd`#L#CtCtaQm2f z{kN>#rN6*|^*O>Ae}MyXG@tJndE_bd_KW8_u|qGiduwx-9k^~{tn|jRsyR;;ZtvZx zU1__RI=TNtHC#qEH#bmTfhA_diaKCkkB4qX!cv{fvdEXx*ARn2LV_;Gy;@1ordoe2 zRhmlp9L-w*=ul}Z6u@iEJO&`cRhMv|o+FsL)jB9Pj9@NpkCGE;nRu72`!#~LjNmc3 z_sCN7&+Ge}x1KskV+n*1C8XuOfTt?H8ype-XP5dNY7BU`EGC+qpfiOu1%naWfC zcw5b&$EJ%8d!QYnQwk3@pO)K8FM$t2kO!B*b!w@fSWI@)NzI-I*n>}Mo`Rr1JO8AX z9S*lUsf9bV`5+_1@6Y|9Lx&<)FzB-Qe9{N5cq6ZPpU}BJCGisDl|%w_B&t)SgoxXH z`W=`kDKoXaZ7awDJmM{KI@=dtNFd|0{fFH0;POE?Rmdvk$$D%&QmFva@*Pj%jPR z-n*Kwq_epJKOlV!LCArDYJLboz$!sbFerJY%t}piJH5_I&FgiiSDMYa5JJ}X0zB2o zt57tixVHL12*uOF`*lO6xX4?UDyM<;0+qZDb!n-|%j<1$t>Ap+o~hT*WdF*@Dq4E$ zv^|6Wn36vzvn|?q8r6UM)I$^BVRx~y*S4L!cKCn38IKF!oK||rWm^HmVgTBMZ2o^} zdlT>|imh+Fs=B&+_UWE|vQH8wge`#~#0Zj>H6RFzC?nv0MRDH{7eGv000n~vFrc{L zdfmW?i1#WYAOdj(LEJYCV1kIELZ;?>PF2rj0=)PA-v9T1pXY)%S~<1!sj5?F`Th8L z+1tp&>cKd{@X-&(iAN%Xl!HV*C>a*3M2>^)>0R!P=n=0T(d(s^?PEqsVd<6jvC<{& zEm8<{uonM|oGHyi5(*hEiMS?81P`Jz!O4?(b}A&v>Jgos$$Crk03!jBjNegFxseOw zz{E8X#)bdGaLT$vA#`duwE(v;3RiNewNRaaFj|G?&?4yw^22C!*)>tOp+SKlF9hL% zO`sS`k#-KGK+;KzhTi)RL3AMRsRo=tlJKga(N?>t^E05yV{J_O-mJSFW1{2cu#-eMeQu1_T8 z3luMB;VXvRAK{1Ii5Hk}$bcNh4QYfw(Hi{Fw{mPO;Va(BG4H?+4H3i%X(YHz*?`(7 zWPd@*Gh{y+&hIpC?&IcfNFnmccQ2Xpcsm%$xigGDLbl1iN9OtsELTkz{rK{FNl#L`-a@2&R-NT>G`;Y?DQAq zvbEB(P7#^$Y!dLWrDWq}c(fP^&hnMunw*Sr1A+#Z{T+`(l%gAqfnB4~uoe#Z0o1;G zL9Irq7IeG2=65AlscY10q>%4ZSoob0@{dc)=C)f_Nc$SB$m))$W-JDH8k}YP{|XQv zdt=gn2E}K$KeP1m|A>q){R8)6pTJ1~{=wcn-rt?u8awfInOe`9G)Jc|!146e2T2qG zDUXVFVuBa*J>?-$90_mWt7+av zaZPgv0;E132q3##q8v>Hz!Xx~9+-haGu?yxD-s_Fk~Tp<2S#7aZw7LJ_eCymOH68g z;)zzWqV0(%+OH-nfRav1zOsM+{{64K^A6laxd_p|@-HY0#f?5r8w}*pxLeED$~4IP z(%eBm4bp~qP;(;-@_RfMh&JUoHLql;vs=qPFg+(c;A5CI{!&a!v$94$EYgzVk_ z;<8n9+?`vaN7!X}Bli%4Yz2KYro)Clhg}8?2}Ib?3i`%sM!Aw-H|1z16eaiGhLbJQ zXubn_3XMi)-YgFRt<#;E`k$P@^2u;G-4uxTDro2ZB5DdtyS#H-w31B%&Os7Iy+ATv zhTayqkGih}uSq`Ibd0ZlF`EQT3M7h72ibVp72>M}q4laJcg9FW7A&pe-iZ>!hltfi z71^)2Pt3X?_DLtog(~)WnsOnBosADMCq=9j?_?o37uY25sFEl|fe?(nmdD=)ut~tg zAYxST?~`R_Ty7HZ1g4@e=2`1+!ahFNeND&4c-SOhJs?pLhr!FxBC$4JKHHy~GNU{k z9pha2T8`o}(8vdr`h{^Hab#;2DO>dfJlWX}&rG*F*D7(|PEq+^6)V#=0B!~cWZ^GI zcnV~)BLX#{ZXUaRD)3wWfMWd#`^X{^qt>6;-IGU-u6~K;70&I^fLkxOG2;`y<<{)#>Il9-g~q&5k*y z)WP4UB7IPBqJsjRc4f8Wht~9e;iD;Y1oy~*1{7JBV7rK{%bf<7UB=I!qfP023&>~d z;L&q~|JH7i1zRm~D-PsF^>MePcogcIs9FbERRDifor9cCjZ@32CJPMrjsd-%#tZW@ z?vK>vfg_xJK$HVP_SXn@$#1{4{rcuh(npOF*ReLlS*?sKcMO>T(W0%~41ad|XfIG2(-hoc~$J7t1ZUvAR2Z%Vy7 zO@EzPLuNv;fs@npv?@iw;8PJ3z@e3#EWsZm&+a!y_3s622}_s$^Pkt<{Kp^r@uBA? zo?h^J1n2$o^vc!yNMSMiVD-v$Y%7?KZSBI7@LBwJgWMGy>Rc}%@N@yISH!h;q1~ok zm#s&!l+zg>mq+LLz7W*~pX0lPg(Ip9Sd;ri(qU%^>7S=Cy9N5L_XN`U{U)UE<~1+= zCaiP2KGBql%9$D_#tt`}kiHvI`1nlydK9BnM9yse7`qJE6w~YS4S@(A#5S|DQlp00 zW-Yr67$?$FzaiCTyB&F{@j^S!b;x(a$>OdfSD3pYM~-59L5@A+rWafgd^enH+IkDk zu>u6N^_bS8*0LjWbSFyXR+%*)nfIt!$q746WRC7c4H@fT31?=G3Qm-TkQ@$-5Qx}G zL)?yKKa%Sd#qHus%bkee98BRC0Us`>LRr}F4&9CDInU@{-q@{>T(RQefJ8;f72(! z8uQn(`lxsRo7O%T=ijM z3VD>ho_~k=(#0Z%?}rQlT+u*EvV|6WNTC2f7aH)c$2Uw1YY^!W7~_p0J#fdFU%+Jn|lFr0jp0W zozGkBh57hbQ(trSC_d$w)BTZ7|xMd9J^M)|G6(O1@uR=xWQ6q*)p=5VSF0YH|lFQy0M=s4p ztS*lc$#Z)g?i@GKC6Bu??)G4>1i9g10I!WYw3={sAiFUhpcYw?8{>)x<%bldi`$bI zp?EH}*foc}?5hphrat18wtai5T3Q4dIQVrcrUM~VxZ|L5i^m-}q$|h1_NQ^N;hIaw z5Ck@ML>k0?dYL@kKIy}?YuB#b`^N1TUwqBSIGg>1v+?hiFVA`7l~cd&vh3DJCcOQ7 z&-YJZ2TpzDR(KnaPku$G(;CiFINm4&&Jn_SR;U-f8+Uv2y~Hkgy_!u6yc^eS^xe2E ztfH4WH{r`pVM`_ejyF|eD{>A*)-2DD1qK=je?Uo>s2e~kz+tF5o!-6yPk$wOU(ID- zENEk2;nE*>;qu*gzWDMq;$ib|`J>yC8F=t-44=e){0Nucb{pFX*~Q5=)!8X$_%1jD zNPk+BcoW&1s6_hkL}0GbcP3lazMZm$;l%{4uSu*Gt%r29o||k_`^k@>D5r%2aTF*|lDeuY4QIwoqCRziPFUTgT*5#&bgt3!NB4d(sMQ%MJz_3b)TgsQp0NS!_ zvPo4cLv8YyXO><*jeUZ9A&k#r=aWUr`~R@R#L^$-Q+0jUGp zL?0xQ{5z76vk4;%RaB_DS;R?*^zS<^mVal<@r6iAeobE_ElLh>uA*$z(+Jq87SICk zOw=UoT&JqYyDl7tfK9BdRgaamqO#@( z4;@NQ99PWUV zf&9YcR)pw$c^N7}UC|o&5_ox1=IyaV!fO&&cNFIG_FE8=_wx4L)9q6_Uu<7-zDKS?Rz>7Q{Mh#gp`Z9{N?C*Q@%a<4D!8-bD;g3O?f#kamn)b z%aRAl(@GAB;`jN>{;{_Z%6VNP*riKQ>ilw3e%MS9FL*{F-cwr+%Z|6UE zN&U<-VHNQCn)z+D{J)=)`tNdY{&RQ!GmynT#eeRR`tRI3p@4S+VdOzb?#b~k!-ie9 zBD)0t%4vln*%XslnpL_8N93ODC~MFhvdzaHOcDi$>8P^d11pcdD)SiUN`#cxcz@-o z{TXr{Uj{CN8kUr{nM@On?FsxnB`SO zfmf}_B9r@Z1kM6OPXTYHpg3ibZ-c7)z>Q|Q93yhS1BnT3^e(#bXn(m;_*0?Ai6{v2 z`7o?C?ZQ{JuaQMnr89b{M>TOpQ>dW=d#Z!L8X&vU7@}R;Rs0bfCoM_5iLYf>l4quq ze~^>zYG&cYw9*_Vg9ecJtZ_SJ5DN_V-j{b@X!I1_tY*lsot--M$rB$znFUX{*GCgF7e z_?SdN%V7@5ZxJH5D1WB?pbL^W;Yk9~g;(9vaWzmq5yxz)?@Kw<5Xu6mRxr6sm-hE2?~o_K4XfsB`1pJHQfq>#wvK!(G zM)?s@(TH;#em@S^S*^UJF(20v)2Ag;d;r=9GE`#e9m!RqcRAF`f!PE#O)7|oybCYq zgn$^e&XdqIJgenU^M>ypzV)@Yk{>SQ@ZhwFjNq-L(pn>cDS7<{s(7WLDkq$J|;#`<|G`j*53ejia(auq$OcRg?$w*Ppx zbk7vqKBfQd<-^(fNzdcqJIOig*+uN~AF%Q8$<-AFce6wSN*mB{wpCgz|AK<(6eHiQ zVNLNWZoA9ADDFbY;jq|U0UW54q_Cc%#@?iD;M|@me(sn+z%1hICB?di0WaE*be{~X zD2+Heb=p1bJ`!V>kUJBfVf*I!Z0q( zEstLHJ)XcuN#EoAhi^)}Lssv*pytAN*mx5+jb1N9g{g*u$S{iR`l7hoj&;dySCHc5 zn&t;mT1%~6*Tb3z2x%elDVBoUP209SaSU-lTU|q55-B9A90_=0eLN)oJNp%fu!^EoutPsz(7m@K8<&x96DQr{H@)+xQ5W)| zlZ+f6(Ip8f4t+`7p|~mX`v^fU7c#k#%VJPc4}22U!kUAp2q5_K%JP`*<#3q(Xi-#E z>1k{~dwW_-%P)1aDyyP}#Up2(k3X8hUZjYXad*``q)ArCFnV?er424mn}6x~w=AW<9&91s^dpI`;&Ii~vI zLu^M9Z>j2g@yR2`oH^@}VUpZ_RQl`5d$K?F%v}$&XT#`A6ro(`Ter9=auVl~I0<7 zR`?VarPgkDNu&&JFnCYJsyQD$j$x0`agAKPn_YGUmwnsqKt4t7n{hYnSvYlU9Rr66 z8qPLL56i!xGBnvJcSQ5^qYd%={D2bjdjo!ckfQF2A32IVA%AwQ+ifih^}@aCB&m0) znLOGG-c~ak&QpcT;2UsN*Laegd4`&208e$T6n|IHqKb%Lf$UzM6B09XeZ|=@^61pl z=WP7!g-54c^UQp zXpu!;`Eu^VQ>)J@qS6NGzMJ0d8ks-+CSffBe>73RtB(j;$Zn$3X$ZMc7VwU!!G^f1 zxsk`|0b+P!tM&PE+=9^AJV#Pj1E7Avh2Vh{a*Y%fLY8%b3093~(w09D?8U*uU%hdC z;eDfUVA=HBW{+nD(gR0vi0%A=CD=E(yzgLq@sjob1P2!y!!}DxX&B|8zD723V}}H6 zSPgN97E=5OO9!%Dt~{T)*xO+vr?gx=lf~g0H9?WhHOwP29I&JQzGBKX8@J=C-|xBd zs@vzUEjsxW>~3P4N1uCYe=WSP2?z1mzS~c4d1>HzeY4LzbuFB+{1&DTl!JO1A+Osa zHN-9Muxm*?9PkF}bUjaY)a8iWN4R-XMr`kLFEAvDUFP?54q#1+1$5wOk5)Vtjb-Hx zI(6=q2d=vH?!TrV-TmEfP*_o9HK_XiKC9Jc30PbX-LWLDYe9EzHpyNRCpnhvuFa9T*|c?7-Q80KyWI-%ddNq3EYkbQa-zxC9> zA+c^Hw(IVY<&+o0L5iK=6ev)19r@q6e2Rn5&gp}ESpR8^=9 zwmR0*W-33^Aptq23j$_&Df@n3=;P2Y?8on(pY8kDcgG9gk{;}L_C6pL;(pkPx3iwF z?4zb%5 zgRJ&iMJYs{I!MeGgXIU2u&ud+ho=$1fhf>GVfzTeac_+97z~V?t4m)g=JA8NNHz5G z=8a#^`s2aNCvW^_!=$MX{yzKb&CSogjpaQFT*lu2d%+Ui9cQsUY{!xXf8$E_QTxxV z9W3mxk_X8&dA|8p1+K{JlZUvy>;OmPn&j(E+5TgynYhOD-{E#AT7c@4hlEuQ=}I`% zBWhZmDSxMkKmMMIKjP)MhiPF0TV&5;u&soAu*Zd6yBxd#JZh2$6@mG=Lb@3>;a`Ba z-XSb(ULy*5UqyNp7Z(>Qxf#~G$oqm9g~**+fac*zV!i^0EO`tL8ASe)zsi^LX!N;8 zISOD+_S)(pd(-aJ1)43EvZRIaEU(>zkUcmwz%;G7oa>-iby`^DgAsFx8sm zku=Rh>~^Qc34}o?gzZu&6d-~6IPvPb7ujrCnsxULa^avpw z9-Kozc)SsvA2xj>^hd1kYGr@^%zCgDHD{f@aLT!Z`V1H_^{T;=b6f5G>{scmPd98k zNShOXvvFH54tzL^N+sM1WDdcW~14Z&X3k#Yq_C}$ao=@EV=@)<~}@ydyZTU*JL*26y} z*r9#jG~anYJ4o(K%#<4wuagmpx3+Km@K^F6E1z-Ak0M$wFXzY*aiffASfehvKJIcM zyTt+AT6ReRXN!TcS5+LYi7sWPYC!DV>QOoWD9#FLt$j?koh%saaa$%*q-zndEyQk# z6zKBuR(AMk8wAVQB{+b;#M7}gF^lhynXI4bv1#LRAfBaz=HsW#IFLt<;;zT!=yXs1 zOxLLwkSIO^dr56ZSK%A@*%Fqc*p?G;X6~hxYzFw?kR1(v0})(qI8?g?yzURikq58A zJ({RtvC=iThha;WqnTE#(~|NuiTRp)s5({+4+5B(_!x3;RhMS5hB&ciG*AWRf|+yiOc5T`s?>tie52NnW)qwuA4y zg!l(+Kz?C{KtCW&L1-}FX|aeNQHUx(u%o@t_FL}xmxJux#740#uBR`BRb(^B=mdEZ zmme*s(zl7H-#16!;b%oSc>p2xdbtthqM=4nwib{aSn=c{#pP6UkeTM;b~^I{er2Yr z=I5CPh#o70J3XZFro$(-z=3TyiEk)Z3F?RY2IowcLUL)!tu}Ty#E>Y;!{f>c=Ya@ zRz3Ih=ez!5`yYCl?M^06`f+;g)xWNte${!`UAg_7jgPVYBdET1&c=N(BVPB z{>V?~-bR*()W!2_iV{m_&Nrht2yPAYt3m9&hQ2~x{kn(|x_TU323Vx0Ij7`ig;m=McMRq@LALaj@ zSJm@bR&t**KOf~r0Jm;zr=ZqbG^H3JSZrs(HMWiAelpEXg*}-@7f9QMVz0$$N1pheO zdE{B}IE_oT%dPUiJF25aRdjt^R7uyH)zK36WY6fRj-J7*qXPvLANc>VI$BCsM=$&# z=LlPi2mTfPA&=o|w)RMNaLMY`jei9ezw!FwmsYL9r~TG~PkHf0wz>5HTO~c42!8Ow zQ(F>2vbXt(7n{WyPru`9F8uf_+3oUSe#=z8feekHLco;msE<>M zteS*8M4Rb$d#p1BS2mENR)bB%pZq*rA`0__&rFZeEp6Yu^WNvJKR)qc8@c$#_g9l1 ziR3qzk?H2nR`d9L1{p=FWS3-QMOFX+w9Z5Zl+R#!5S@v!!!lEroeqA&!nR4rBlz(X zGLKhtVi7&2=KcL(8~&sff6|tk7u~{pWVfrZH{EF58wlfa!)=wFl3gV(;(|4F!x{#O zeWuH>xm*)fX^=8gk~COTGm$T&`}ErK5kU1>`qma^l=|bgzaKWou_<$rDJ(RBJtfzg zclJOdV&2)5;`%r>?`(cyBSQRg`qJjB(AoOr=35248af$n_$_uRne)dFjQz3ar{>x7 z*+Kfjw#3_?Zv5yVS;D%_y7p(-J#fCZ^Z1+#1z;SidtqEvH6lxxQf*N7{Z7%K-WZh6}vrJ1xM<%pUj2$M%NN1<4k= zoWFt2H~LxBh4E`Fvn%-B{K2MA_KyE?0Q(1fmc7NU;474DQU8`#ArHz!ryJco7R_e!*2isB!S!)PAym@B z^>NKhJkA+8IR$|kDnbPcN5~LPcJ8GU9#~kp6qE&=$zXWK^oR#VQiRSJXkNkJUZD~4 zDcjoGiu>o`3vo7%;tSXkwuODe9w!fO{AT;Q_jZ3mZcE%HHzr=fMR+*7fvslC+12=R z=>fLq&m{X9dyirn2M~cfg;vOo$cJ*#D5Jzd{C=`9?)Q6z$`FA^L7}2b5pO>eE}%FTNuSBIqOGxiJoY@>_i1>_ zkcXbao^SBFw)bwmd%-PaRJ^(3rZCNaZ~mHZ64&D9X;)q~GnMJbJ)%&bOVB0B z7CJ>vpfD;ygN>prHEN3jeR=^xcu5>#tpKnb5XyGe78RAM*?{379*$f|QVTBVFTpeA zS5y~K1w9>yZqWOB`t|G55Bu|^lszSV-!=Z_%hzi3`t8j}*#7;0u|F<)X*(vDCZ5Dy zM_zjB^oGT=o8-jCY-fJe8><@Gfp6Q`xA;ta@^5(T^G5eT`^$F>pEtGd>kA%!4R$@$ z_t?3I+>5f%SfhvPbGdwr;|^C2PtS5;gq@4x*p2*);>fT1^*Y&F7YgOL{B`E*fkPX1 zI*8!O50?#pMZi`BDmtY|5To<=WJTYi#dz;i>)t=GWf9xn{L+#i+E%?o(cL$0=$7}v ztQVz8$$O@=3)tQV?lH4L6BHpCWg9LTHN<5%@dMfmpmpjo4*g~-ZGo!+I+~%fe4eo7(ohq>tdqbS~-Bznpb+i(Dozv;%4~-^C(sflR z8k}$c&0_;z^|6RvL?n8}JBgCFC;manWsk7i-VHTDh?~tLQ9Kp@)V`7|XZNuk!n@A# z$`q)`Lzw4$o=Fk%qfthwOZOASrdaJhyXLkc>h~jRldV2Pf!xzN$ZoX;G&il2p<>um zb;5@RfSmBh27hXZhXy|yaRe)8vai{-^m~b2!@k9v*chCJXVdQ~o{h8E={Uh8_(Od7 z7nX;==YM<%qp`_-(uFjPBB;*j0_feus^#R@gaa0f?x+jo))}%~q@%FKiY%Ii=(1%^ z@>iovPJWHmvN%4=y1+`T)&d{GkYpnjNQ>eH0l?8*6!&T7yFvt`(&r@tV0E2yH>XfE zb>Oo@-6xwzX$6046r>SC3-pYL^VmCI`h$IQ(RmnOb>4ynFV^G5H%+~1{_mfCmh*Pa zLl3REzyGiyt50UX#P9IS*1MSB1T#Nu?z$nQW0Fm}t<1B$tUJH0Rz z6~k%SuM)>-)hE7EcE*o8?8W%Cz2rdG;fXsaN)%)nH)DIyAJH+q!+YYv*NejjgRAF+Ox0W8GC41SRy?gOnd+|DEP{gjr3y+Iv@ho%Rt19w; z8saMNpbn^bVQ+~GvQz$#kSskQjcH#=`4?rS^mcwHjN|VkUW3ek9>%{~9zxO?6!9wd zFhweYUWlIqD%44aBoC5h3uj6a{vWs%xSK0=pjAYqGuW4V*={KYhnh6}jTA2u=mzA= zz{`gf%C+)q=F4ZiQ7&FQ4RMzy-ars$cT${_UEA^Ssa4gk4ktW(Ag$wAK&Z4=g`eb* zDFH4Ekyk2AEChFy=^Tt^Jb2FjtZ*Ou1{ePt{w(+#E@t2D?c$xY;_-Xh{P(O_G1tTT z;%&HK?;kjdpJbESmw)bM-%2+o`v2?k=iW~ACmYv2yZkL!Ssfwi0H5PTzLJaCJi3AF zNF~_pz2Vj4=C2+&!c(uFI(YTKy&w*4(>ZkftA}n_-`)Tk@(3Kz6t%B}PYNgTT!g5L zBIJfwkCWJ`eF?mJEN(X-@YK0nx}{DP%5kDsPdZURk5O04%MY@re|UaoeG9(xd^{ch zgT49rY4}s2dy0k6M!b34{LRwRWWioM5&oB&l>{J=uzt$Z zd|v#`)0@9}+~Uo{FG2IoQ`hn4se?C9-T$XIkMi{TBd_vtOzOPEe3=Q#L5MzO+8zAO zvnVdh)J1VaoVt+Ij%Au!9FEH99sTn z^D_45wl%Ly!{1@wS-2TccL5Iigex@Nk5&|c^^czLUhIH}P zS;XHuZsg!5SFPLal^iK+>$ta0=PnnwVExIr-(JYR=Dl_538Qhz7U^0VLLn44di!b( zE6|%~xsWo+dL6TO_0%2BiO1k(NnO)147YPtSy>EN zD})a)^M%t#K-rJGw*IaaD*FdsW?ymdyi2cLoWO3jZ~uxOYsW5`{djG|$agE*4=izz zeFtljY*DVDAs*Y9Wb|>?hW)ij1x87fqmVj7g7=OV1OwaVZHU`61uu#(P?jr1Q6%b? z1d9XUI0?`eb{3Zu9{*CGYFMrN|Td$E*_ouBN- z5zcoER5ju? z6GX%l$M1_tFZ_J-*~4ySe?Kww!dqv5@dj@E`LTb!fg2i+;__)xZNZgu9%B`_Xu(4% zOO#il05*hz7R=%tdlJA}NW@)gVnc{XE})dLGwEpg7ZgF487J$mpwAb4l(T!5`6R34 z^LevFmTXHyJlpL>VC6N$3mksG10iQ_t)dj^zM$l&b2~FD>7i=ZG*&u7JgI5IdlcNt zo^&Q!QAH36|3y(fe5ay9e5kr|_ATH2V{Xfwxj*AktchOs5uW+;AN|=?8;WrlpN>CV zJ}vPHeYPGqy;{#6U7NUtO<=Q4n~Wr&(uY7=A)s15YsQ+P488a9(NgI;zJqQy@|;?( zMzl~)evQZDwIh_Jd20=scs*XCQ!j9ffbpw&7sr=tFKYzismP8U+z$+_0}xFGRJH$L z{0fcLVYhCsmO|A*L^N&a_1Y zEK()T-z+(3g3-%jlWmLQGI9kL#a%8(&_Nc(9c~1+ho7`M97y%lW@Y8Mf^`Vx@erT+ z8Wwg|=6jek|G*Ig9<5Bv^_bI+Br@$-tUbAI!$a(+t#7OqCaw08E?vOxcU@+Tm@zo)etxD;mKNU93 z@OAOnQ|Gv8=M$N6GcK;qyGt{!Yx25xapsL97Y9ftJsNm6wmX^*ialvBekJu<(_Sq&25=8 zr-kpN8$ZQy(hCP3nVHyWf>bPD%g#%`XZYUH&Ar3Sz2k9y-JJF|=rN8hOU7)aA0F*3 zH)4rfS_nyQSx!l6h%4Z*NJ}!k7Olrha-Tgk?N%yT=Xt$7-18)FM?qHZ%)E|J8Q*-c0d=?(c{ZfbZgC#NOfzbXOvp67FXll^jzt*39903TFx0Vc ze6ao9H{bj0)ybE=`&PowjwY7mIssw9Pwu3aJ<`L80`e`H^zFuvzS{NPd%uw9@41a( z!j2rFzF1zL$J?)#8;`zJzEryB=&ToEC0)sb^mhtuJfn@S2zEmN`J5;VHN>-0z?hmJ zaZJn{Zy=DZyXw3m(+(z<*tAKcIGEWsu@J!3oqyhBT$F*28PR=eQNIdZ0dH)C{{Hp( zMU^8)uwU7m#jT~cP9NJOeJ`D!*nh8oZ8naPZi#=bK5N|TWQcUuM$T(?5~(48?FUw5 zg^}gL&TV$;b_e}q6s%CJXb!iVIHII0FRCf?RK=S6;Ihf!DUQWj`vA#Fk-w-SQZZ1f zjDZ))C8^}|tDj@jdQY5iPOmLjv%T6$gNEiv>f3MMUUk##g=Z%Y;0p@QzvR4pgwbpg zBah0DpaRt2h|rKPM6|4J7E7V-+2+E?iJi7Re!olFliyX_VE{34{PrpD zJ(<&z3?v*uPW49o5fxI90YDaj&}LtIPDyo-(7$_}-J?HlV(SC0?#}A##`iw?yqgE! zNiKMFkU!ct|6YaS9SdK~2(>*DV@?xvdIH;wD{?3iK0#`#OCiX;8H2J$@x z-NRWu3p|7SRaQ%V^No}Hcp~wN*g4h3#m3pOe({JmcJjcy0p|}cDjIzL(CR^hs&ivq z0>0wD_~Kyq0kX*vYfi!nkXajq_Y$im z5F1uY0Kd4hq%sKg{gpxRCaXA2iPbksi?6@$vbs5!&AI-*nwtBrzyGQ`?zrOq>*tLe z$sWII(UL2sHZH@LOq(}+$i36?m)vg+e*rzb=`1@&={SE1{zRwweiXA~8cxU$w)r0S-*;=_5_T6`&$hDr@NIb5 zj_)=d{&n3)2U_G&w%Wn{`i;GM&N}urdz@XC;;sLfeSY8o`w|C^U<_dRd>(WgZRd!a zBaA4LW#4acSqnGBRoSL#wtN5sLBaKsq{&XTwy-doQ|tWi=K-ZLu=pHRS_1-UfhOJQ zTLd5Te{&c6=1?p95f}f}^Ngw~gW_!9J&!(i_nZeGr0tbsHkHo%>ksxh&Tqv87rJbt z`VC)ayIVdJY%abiiKv{%>XqeHJ*gQ5uEFKH7Q;+Nj?v6WTiC7^C(W9;R z`_W9hJ*+}7Qfy+gM7la=+K+(Vi{UxPOVZ#UkeI?hhAgAR`ovdlcsL%oYrt6V;~ut; zoSj%mCQ9eDzsRn`v!x4%_a1rjNn>|INC(v>_sJSQ3`(WG7JA8U_HfH*Q|dOJG|Kmg zr+xWr_*HUoqKW;o+v=vigZ+EM4ap0a=u(9OIAtNEry-A zzmF5crq#F!Cd6*BqOu*$8_u5$SxIGC&6~ayoSNQromNqWprm@Nq}O@3jOl;t4RK#D zrI3yre#%*DpPOq=wjzvnu@(5kCHdbiMSQG8Re5hRO{GL5Nz!uOI*sa9ABR2-!e} zje?A-vhE;g0|(^8l`&NXcG$`oIkV}DgJ(SQ=+Y%$HOc25KD=bXf+MiAhSK%YA06^l zN>dZakS};l)eQN~Rb|`6%)FJcU{Q&Rw?BIDi%Y+H?W-kAm&@lKX4fA%vS0xssD`eW z<|uD*&%r51p>w^gTkLj^5rD4=AJVXEHSjU5L6}4^AUfI6ysf)%h;OSZYu@xFI5v*^ zu3mF$lemeTc7mGUEh zDUCL|c^nRPcif>FlD0c8Sq-OFV+|YDOKZYjFACZ`8<2H_4cQPc83k%atySBkZ9rvT zb^omUrtWaCZ!NC!WjXnR7<&8_ed`;gIStjhJFY@CS5`>- za>I5&G{VB@&>)=D45+#>wX%Z=xALdgb|3uJ{>;rYm&u0Yzkac6 zwtI1-^$z;vjA>8F&maE&=9{mddmm^Y%=re@igc8VE;1@j?Fi)_@`MkC3{NOOFRdm{ zt%e}GW-kCfTf1SgTC+W&Y=8FdxL*{uZHI{3jx0c@1l{3l0vWerO}Gjje>BJ$i}ZC# z&kJup^Q2pEnBXhJ4H>JY%Aic+)ZWvE53uesm#vdN<)Mp=zMb{SW;pd4TV6QF2;}UJ z2l5Viy~vYwC>*wSXcot-5}L(LHvU(7c|YsE;lEX~jNu=vX`}5=Pn-3aJlnQxp`M{` zY_~aq%+t2F;p()|cJTGU*xswK{6j8!`+UANKP7Cbrv`-J!k^L*+|Z zme#sSYXxg0gP8h%YwsZ{j##zR-utTihV9M&%X<&oC@ceYcG`QLd;WjldsB_#|6=cf zj~Cv!)Fy#e>@osQt%h$uvH3h97+%N^Ur7{yhF}wR-yqzbm}AnU_8`zq|1a*r%Z(h^ zW}Xd*?=w@s3i8d32?~~#p>OujLJpR)>#Az14F*^T*zY~Gl|`->YBVwP-0 zCfgnviZ3^-oC3ZQ;_`+&Ap@MoR%G(+k)a5fBfN&4M1v(Huc*`{#uNDff+w&ph0sFA z;s(Jd4b)^LSMzt4ootbwQ=%yhZ!#o>YR9=Oje;&Gko{s>b`9>2Ckx&)AMlIKhQt6SwTnd%9(sLP! z9!|}r56tDBe&%YWe}m7(Ql0MO478SGOh}{%x&VCdEE7{b{X61|{Al)~kkba3ah4eL z(W9G*s-AAob&2zb7jqWYowx^{j6tW)MhJB^tWvJ81n}FXHOcnZvI=C>g{(=oH~Gwt zIig&5j!*}B#*x4vZ>PhVCe5k zF&A*z&f?<``sr%*pDEd-2JH|UKm=}0qt7Kqp4McjkbRb)bzNlgrz=m*n$5a%iHVoma{rkqIU zUU)^w>6WZ?FK45Tsp`r+D43mEXnup#xcE%s{5%yi8Hqkh&7=p+q`utz4(Z?EU)f@$ z`#1xQGi!45MNRIJrqtI+{|;nY9pUFG^rDc{#+W;X?|VJn!1jrwVHIM_VwkG*^lV<9GsqCONTz~m#3YnX5n!ai7m?H@B)3hX5!h`40 z;%*Mqh3I*vYIN)vz|w5yTFonT$ykI<%>(RIH??-sY6uMei)%GUNhd>o6>&2F1;Ay+LRqRwmrv>FcGK8Q0z9_oAQrsp9IWl*y$W|nvBJNiZvk- zIZ8@Gxt*maTj=$CO*rN>8G=WdJ3XRDN#60T<<)$r2-!9Gxs-jA1LyGz1zAFRT3bN= ze!fqH{2I?$C#F{BM9Z@!bemY$a$XUTRu5FCoP5 zuP(k4Kr$EiS7BGl+J$&?%#J&D(s;IlUe9+Upp?LF{8Q{k{=MKH>=G;ijB{yC@`z!| z(N7=;JpaIXLJatQG@k_VWMEe&B{IqB8ueRwAREyAxNdCYQSVblTb`lI+v=pWq>EGP z)K(b|^EBlS#+&hEz*Q`f$(rOVO(&2HvoR$P#&(3DbyVlAPbB-!lx#AV=y(#eE(h6v zH$}T2Kk8^oHW`9X7qZJh_U}zyx*b36{FH383qO$|`~9Z!<5vXkMswV|(4h?3yPC>6 zuL)ZLQI?c!G8DfcPKF-*Bw5u|T4oMBeeyswBPE>-<*VXvBHj5(@QDcJYV=*TlhQ>v4SDah{IXB)@9P%TWbz9oJhS8+1{~9*l1ivcn*I?1^M^ zT@Clpgs|)F#>&a$T9;l;6c1x@d1>D=1(xMgfx%>~n5yq0&X7$)Cqj1z+gPBx??MlmtH^N+lTG;<**$<=$|hxSeJgm` zjXdsb;cNa&lkFI8ZZ?U$nr8e~@G^7U{$L5NPE&J>^%n1ic*>GQgVFnVGOV{?^?I`d zm{zpsR%FVW!_Z!!h;ve}HOcKwIi1&qSD}M^Q4@{^<9mgCA4e&F@i^WSUhx6?0u>)1 zA6UcuP1wa(22i^@RecRTVudb#}F*N5JIb zsdJ%@9{n*tuT`pu=@IF4R(tsH-mP1CDOVG_94~IduK^kZTdG2>Yy{nCcmm;k)ut&f zk5o_}&kcGc0FijrD!B;cvKK~-+`PPqr9dK#VRWlulPwO-8&qsA3<+@#ze{&Z zp+#|L7d2qtxjRRn5wVsL2T?9V!#VWT|OG zK4vUdZDwM?yiZU`hGWXqHFrWS8D-a=sFrNNQ*1pRc;b>WwixthC0i;3F0c;`YtnSx z;)97~c_l&u9=m0xVf8pv$)edM;;oMp3w&Z!T_%R-307gq=!OK@SPUHdpt~L4D21wl zV=~z`gK2)9wzW~U0Dq1P63uw+8vYSxXBQ_7xiK-x*@yfiaYh2rYast{1VuG$aFfLjl^ z6`5cQRxH?U359F{r-W^O;*n((2nI1iSr(@|L~S$eWvxLzxGKPQD~mPv=@=h)?6rI7 zx^?R^{vQ&|(!7LFFVah*73SFcamE)M!L*HSVGo>D9+6vHWrx4~EIbhxB=+Do_9wpK z)G{eiAvY$@31kh#6Mw}YCC)G_u7*;CeCT2$=BAiZVsX3ey36Tt$^9Fpn zkNFknu{a*N3-=tuS3PF#sLsXg+|m;6_8=KyKW_$Rorx6M$x|%1lGG$@OuY zO>tNy$yFbhl+K!2RmRgSc#d5RLLou}I*QbEKwkJJF}Y1(FU-KTz*Z+WCY~ne3jBps z#giM25&d@|#8n6V+mt%!zaj3n<=coZ@nN_nSA!Tv?~V;p#q;RREOLNWJ>f{`hV>iR z;C=h>zeTZ5N7-EaO1Q7NHNbD70sNLxSShcOasWG*l#S`2IL1zg;&wpN=0ruN@*vrQ z>nL?Od5{*6A#e=-z^US?ngQvhuqi;daKsCsA71KWH@2`VG2WLeTm6S9YL{3Pe<>YJ z48E~s3;{O_vLXcb6!M`-MlaooRf_4txD8{)=adv(QzS|DAsHxFEsE2jI0iYeJkzcy z0Y5+YT04&V)RC`OaSTp472)#JJsg!pTz`>@NJR%I$r4ry8PTom-}qEki8UNl@+4~( zE|eSFXT8my#^=6Gq*;mATxUlIkkOETXs(k7O)z@UY$99a#c_wjqS@RY3qnNGiSC-H zs$l?Pd!4iBlb$gv$ua{@8Of!m6+_y zCAQ#i``L|8u@7*crzlFCdSi49d8-{(Q)jbeo#UWQ5I7hGiXN044x8U4Num0)UT(U$}K@3$oAHcla|l78fP5eKa?K-Ppl~;lZ!4S$H-<;aR#w`l&!8y& zG*Ojk=i{G8{S={~7=LdVzaPf$b-77kQJlc|{nY98xtuIUW-zf(KPq=~V)4PhhX8dXcVht~(zu*6at>i0`*OIDPWh?QJ`PlczPb zk&DLq*?YK$`=c!+Kk?gkd?s7t9ZjZZR6qt$+~^_eil+JOJ}8R~+3O6O$L*&?_4!1vrYW-`0-`==d~&mP}`XZQ8Izd8rc#M9VQ?_!O$`A)*yVGW-`i0s3NP6PoDjOB^@kN7w6%S^e&ZJeeS3Lgj@+17 zcGKoHX1#V7`4^%9`za!T6E6c+BGh$_GP+?;eH>@3-oA%co}f)TyGk-M3ny)k_uT2 zbQoDnpIq?VefR$G6PDS}AMMyf*0LzM{_>0Gk?Q$NFMe|ZYi<9XeTucV({8_SA!Kob zFY|SI6|(aTvtdTmVV&XiW_x@y49Nq4jGlZC@kkyIQWST6T%jmfA4lF!^`DS7k*ew| zgF0|Ig;)YW;efHC08%*Qsgfky!tTSj;$gT9-@xvgp?&}6>VsZsN_(Sc|EhI+Lbx6e z!sp^g*wyS!_9UAs4gK`zgYR$N{L7E#Xu+S2>_|sJG}Xv+>-jp-0Rh3Gd#$w|PuN>) zNXV;si7tBq`XDbSzee{ij`Nm&N!O90xEkV$h5}HKecVJi+yS2rY!*+Iz&Vi3axbX2 z_LB633drO(wg(sg^&57xZ(_xN-Q4ISrzYOAK6(eXhHzmk#<+mB{Pic>Nv_AP`)5CP z?=sNgDkYChPs0T$u#uA+R=b}p65};~)WdbEBVhrE#jlL1!HkleNXGximo$BG@TIcBrBw)C@pKH#{edNw0G@!WN zc#8@S7{voIf}*H+aEiyOE2yxdt}Bq~=lxapGn1J~)ZO=czdu4WzpCo$eyXags;j$3 zB$ExJ+xkbxj8=F2`s*vh>+6TN_V3@S_Y=QSqR)}nN)h#PlgANyMT*J)owq+{?eyMQ zQ?BWaH3~~qhty*6fCND}MQ@TjgA{@ggs`(S&ty{4-Ttvs(CxNw=P%aMkmS~_d1Kw0 zuKBmeH77(x5!^<6Lxfi*aq%Twv7%A8D8EFZ=vfd)j!5kI7a3=kqFydaQMJNff2}xs zMrEJzpI26%gj~uiq!#rB&gGeUIEzacDJ4-N*(6bST!x=q|DU)m_^b|VGym`TRbJ2H zSAu)^s>)cq4YhE--l}>X-q$ArINT2EkQ}vr`jl>uyZV&&p&_XcE@q!Xy|89`yf9*2 zBe~WD^l-Tps2dXQtgY=A=`81)nt9s}Qzg0UjTgil&3saZlx9k7FKbVq@2|J^?>|Ck zNA?>zqF;UMaPoO}O|aHHv|qm=L+kntP5o}=)xrF;;5_+vdD5KcG`+=~r$hgLJ;Q?c z{{NVtvNJWW)bGssQShiGbgFhS*ujOpprtidYo6`^6+dMjmKWwZ%+hmS=+7fQU&aRr zHOI7T>qm}=_8&R2Ph!VD^?_mi`wbn^udekvUPJGZ*V3t~|Nj|%Wpp~|> z{t&%fFzyCwmjGPIzbj8#W7Qol>zcX-hr{o}Ey%po$xHT8p|dY0Mzo6RSg4sC-LG|c z|9*!YLL56+etOsaOSJHiy1p%gYioy^_4WDkS~^di!^dvW3&q&~)u8|7h|0@ZBTCR$ zEulAR&v9uigv0c{rZl=7rH-gWa!QVTJ-^@|@%)sI<#Qbi7w30R8?{T+HvbnY6={ml z;{L6z{rZn+Wk)r%qB0F9kMeE$t0DdS4H;I8no~Cvf4})x)R_CGGn!5GUe6f3-wus!lU~hJFOIWmam!r|`r63k611s9K`VRIO$j zgTH~yyHHi~y#Eez3O^^1%J`A?(}{|{;NS;&;v8bJu}i+1_gQZ<;jx|)&y-6%G!Utl z1Ta6xTh5m9&Tv(NHf+Ypcs}+ z>adN}9XJ7sbeja_?s8hr$Jm*Ol%@FRU2qq3tn?VLjf_2T0_3BwR^~3_rCnNSi8+h9 zN&NikL^ejg8_zoN9YCmtTM5G&0N6AVc{4u+ftSJIEk@s)(Pb!}uf-G0RZXUr0HdpZam?w2e&VUx=3h_ePy9&7@A- z;Clg&AE?9lPdEAWH_D_B+sIV$jVO5CUh3uN==UZ(?$jLkHyUqvGDm@Jr0Bq;>~BIHZ zJnroJIB_1R&P-ML(GTJ4R3!^9kyA>|BiKw$mo{gN@)0BjhFOM3-QGVLzjF!c@QXVKmY@9h7a zpP2H~*kro$E=_%Y7WJ+0{{GK7^@30}ElSnhrKyjRHfvaiE~@Uf!w+OK>NvOIrMiQ- zlqwo6&c`*vG8AuS#T{CIZq<2(s;IZyj@7rE0@fH6>0Vmwsgg$5Rb#E4r7W}7&aCl# zf$Mo+Q*RF!=e0I|UfY#$`m*XT8UW~a4u6<{H+~iH0g7FdPwGB`H`m(OrMOi*->>EH z+sFrG68|yAHL>K82lk5VFPWPVNLQU~Pyw-j}_jWnCJsb-fImMF}v!{_{S9Kru>@NZG2M~RnKQ8F%K z&LFLO_p&h=b5LRDxn`{dJ0syvb(G~&bUhoB!M_SSk555M_le zg{3f|UuEs|H05(zg=hT)q3;pU)E%m(w7{KN5ovq`KyT7ErD)Sn47__HdO`9_97GGH zDs}k+;%trO0Q4O7a#|%`{h^x;)G~o(!O}fKdSY?!X0LVztxEUMc$`e+^S~Y&bvZpW z@VgG?`}{aQk6VdL$Z;Omse=iZGpkYs{TqBq-=t34$e}{kLfj&~lkgX0=`70TU@rHZ zetP#LK3QGtm}^nt1I)H!$P){%;$5#NBdOT_L5n@8>%KW zr+$~y=C&uw{ikiP-K=QFexxh?#Pvc}m0YsKD1?5LeKb84mreaHsUBQi$VVk{8; z0iKAKbEz9zCUw|GHl^e;=nkSkPAq|RBM%XmEH<>v5nvlBOW_3E0g7d3R=+Pb34ybm z4a^#63whY|(C}7)E1VvJ?=g$nz^oCr!1pFJZl~5znmC6RHQ%0eW&9QrN%^Gw#*$K1 zlwDWOqm@h57t(d*Tc?Y<@=CPm9Y!+I8-}vVBB#gL#>XhsU9v=5lqy-G%8&+gl=SXl zj`L)Cob6Wtl;~E(@gNQkm4hbgrBKq`OZ5*?4gCB zYMdbLF!rttm!M0~Vf;Jo9CTAzZm5~Fg>B@d1IM9PL7~=NOKbU@-%JmW8ycQ48(PMk zao?PivNd>+h#rhR(-Fali1)wa-woTeU@qcJbDtWdR1t4WtFK>%%<*>~`Byv9{Azd) z6YI~To+@H#91JxX&=<0$8Sh7-zw);D#>2QZ{wk46oh{9LL5jA`5VV`nj^)xecFBr% zF|87O(;cK$=p-d0@tW80meGQ9ZeVbxoOjhvs|4@#Q+O?fF%;jVY-&72aG%ByW1!E> z*M{zdgDH$rIEJTfWUph)F~?BpXBVQaq-2=re%X~6J~Vd>T%*+bL$z3czE*q04KO;^ zUya{_YHdg0Xz5SVEiHWAQeOpWU^O<%{5AXz866R-#_vPj!$;%j_S8~#Q{bJLI2X;P z6dWx)3XADc*gaWZb)B)BKChlbtKcM44$goNAb&XttS0@z2E_O@5iT){k=<+{u74l4 zG^0)%rQr)94S8G|l0C*?OEW9AXP4e^8#5wc>Y-Q$66S$3d4^Sx69h89I?WcZ!HFi)vkSGqN zJE%@-LcO2ER%PBff!pBb0}_|JaERmlmWULJ_#-Xb53t2qqirQe?%#u+lK2|?65%{C zin+pb*y5})w!*gkdqk9m(L|9q72lY1Y09F$g&eW}TBI)Gq5TPOF7>7?>RVu=fEV`K zNCb1}DF`k4o(Sfmc&vP%v~RT zFXuU0WsdMUxg5AZB2mJxT@$?4nEn)eUHP}*H*`)g$I<8){DxeKj(Gfv9LGz4jx=5# zfD+KkXce?@joQk0f3&Q4H(3cfy8Eme2CrPS@;ef70S)b@9S(S^2v&S$?zMSrsS@CO zC#Ox@$RR@WFgb(Ma0Rm9t!$}m<@ZK7b=n3PF9Z@i4S^Dv10Mv?mU8PcL|6mKZtfu% zkoZe0?U~&80hHgkwVEKHd4?WmT7-8;a-f53skW5!&S}#&y3m{{MkAISXg^!3{Kh%w zv}qf`w@#5ZUa5f`Xb*t=CFgsn;DkJ4@*TvzFTXV9mUEfrJp?%46HVwkleXVeMLeP6 ztXT@$n6nbJZ-XtV{8JDmG*D?$Piv&0e-EwV^i{a+I8#FXD52I0lYSbW*U@tB#jTnh zxw#vR++l;DZ%^YA>Bz)St!X%NpxB&#LXP6qwixlcy z*lFy-FM_Xl(7|QdFUQmZ(1j>=`@aKt|m`z+N>>YaQb`D*`p&v@rRrdmIP17D^6_F`_5~Rb}l&Bdf;L~#z z+;n4%`bl8ah*uDvW@BA3&X`JP6g$hqzHD zK0R^T{tO3>Fus*e;F^KCDpjt2Uf97ZPZc?|x-rY&&V`+Noq(bO&8)S`0iEB7y2y>Qk7WQ8v6Lk1{SwSq#)tBK7SJ9@Ih)X0Sc54ruQS1Q|$HQ?xOt^Az-tB>t zlGxNZ8+(ki1wdJ6^7bR2`)KxT);M3}jsuslBjp+{N$Z6q)e7mroqa^me1pZbu(_~P zKjofXkY`#CZD^aQ*h)H#eTiUs&gpV4#;8t#5kyhyz_9SoFq*4O z>EQd-A%8l;Xr~F!hp7A=`e-f190vc}gvZA{h&|OSAZ=a647%alz7jL&BW7?Qk&D4) zV>kb1b%2i!YuWPJ^=!f!HdQnwuQ~8p^4hh$`@E6Ee*mDB3HoVyy(>#zixN)rIk*gY z&B4i)*FFhX4$iwh#>th}vj1Y7l!c|HUNrR>X9FJxEo^E&DGN(UKt}x=m`ELsrsmTV zCuL!O7Y80R_R-N?FWwekg<-}A?{9NyU!HJ=v;5fWa^R=3`vg2bj?-b>o^U%d;f*aE z9<@WzAH?qGSzd|*ptLVYIPoKXzVGf=0T0_U=XD+dSM#y&bdW1MD&nG?h@ z$Jx|#oS%$+^t=q5(QHHZI4}1Yhx0a$OTL)TVD_Mi6BfKJOnA)|NNJ0)+So^r&cJD7 z51BZH0_TpNI9mbev&zFz4gK(C6;ogSitj2oCDOsF5;n7xM#%pT0Q!vb5Qn#N_^HYN z7}p@Y9pP&e7V`nDw0)Oe74S5l!=rt_8^S9o@uRIyzMQb7j<35t66rk?hgWxSk0cXk zMMBHLc^5$Xr-{Q~Z{hlqiLQNkX*AXu);j4H2Z6bNlmngpye@lmU82?D*SN3{>(v2}{wZO<1 zp8Cs)!au`k4s$zi4if&;5%4^LpXu-+NG^S2tFcQRuB?D+XoMTmQp>&Qh(yt6NH3AF z@;%^FR-Tq3{KoD@;_&YnyR_Q{eX`w@+B>+FmuLii;;wMUG6}EbiykYz74Ru5Wzz4)81oe^p3xK!?SuA|5Vhg z#Tl}c3q6&;eHciP3cibflc*~11s-KXP#*;Em^)axkdEDnim1Rye+@B4H_j;DQweuu zd>fKr?xFI}aGFV3D$e2q9rCB6jE1fh1|O#2cg8>|5px*~Tg?40BxR$^B%`RTPS!F;|%RF4$kKh6XyqxgC4I-%!f;T zNuu0bfz*87#;iKml>5o|9H)&v$MX=B{0@%DZz(^gb4lZ$SbLZsnUdCIo#jKu{xusq`8up&Ym|1!7! z7{21GNuge1(hTS+V+3UkVJGFl)}gn}VTDIKo}HN)0i2x3%kt<&#E=0$h5ect0qn|! z=Y9>sn|{ss^?be2Vd^m6N)(t+3}$*k8PHSui}gmQsecYE-w`<{Vt*KaGhY+jJUfgv ziPBzn#0=;uZm}k~fsV?7<+h8%3L7yV%qRzqX@~K0qE9dOF#~=IsWfx&Xi!JyKp)5I zyYszJC07SAw^ef#e-%|47OLin)4n~%k-R{RNiOx>M6Tf`8NVa)c9QO>;GZDlLuRa7Z`1^D!dv`3 zYUlUH8(hNbyYr)HlltNps4?)?RcV6f89R(|x}$F&OlIn-jA=Tfo{e8EFine8u@ax` zCbYx&d1Vz(ZFU&r5(Va#Ro4XgW2AUMdxS4>cheZO9iaLJiK6kvQ23{n6;b3On+hlM zhjd1*6LgRnr1ROz%Ks}m&DChBT`7i!|KD*l+GSD^>{S0Zyr3P)UK`BRa$f5Br0g}l ztZ(kh^rX`EwOE+}=E@vg`G<5+XO&%MHunYot@!B!N(^}d0Q%@I8u3@-Nx>OqJR<7o zdM=&etwZ+>J0%#~S$$@fmutimTq8sz*5?IUCSeH%?dV#rJBoQScACe$62gU#+qL&u zz1Co6e+?l!bRVZ9&e{6vHi?#VN|+?D>y85Mik;C-Dnqlj^g>OXGl&y7POT(O&8Itx zIJFGMGN^6nh1zb;TQgf?+?C5)UW&I#|08cA+mORspFig99nKqO&FXU2O=Qo+y2ZifB6)JD_4z|;a2~7gj%c}L@Y^PGHLozlTM}4LS%a@lHw?wt z^So-)DeLxdevgKTcdK+OZ7^wc7~klQ7>`GPmyQ|Ba$fMZh-SvYwYptOF@ttxx9(^d zh8&&W%@GQO@RkHmnY6^bM10I?nM@(AO}e9z)5_rLk7xN9Ye)%I> z#>cE)JwwEnfNx*p&bx|#!Rq9X-1DK05>`vmj;{N3M{N^^&8J7qXtUeSps$ikXC`?3A>GlRhtj9@q=R~Qvl;7tWZEm<2Sgsk?ht;3WO9UhSD-s;2j#GoVPQV( zL2VRUVk|~$OvTM4j}*ho$cQAJ*4RG}D)Ia%Bhu#vSy<%WIQ!JJR;K@y$yp@DS;izY zI73T%lR3{1&3OuHXsx*aB++`lVmQxc-O=w4=J^(jYB!tFe)p;op6h?sa0~m=DC2iT zYE8N$%0EEHhs@yZZC0<{Xj0ph^$kQ0f!n@rYJ*eM&glM}-PFvi!dqrm0q-SZ<|>fD zH~(pe@qW5OC9{f08JB{Wr(s4B;YA+eokUGe9s*-V9${w2YM8soj`wEhjzK&c$%xdr z=}EZGUH20j1}sR3e#g@O_Q=LJyxxl zU4Jv`Pu1&Wjb=h)B+5ra9Gu+{bF>cQtyHYl%ZQ?5Qe~=s2ey-Gq8^W5-yo@S6mvul zt*%Z%%hTwy^LXb!z}IlBPT$}*Yb4wwORpr5Ylau1l9vYa(tvl z_q1T^^_J*>22wqUx6?M;ky20pbKDJw=mQ2HF;kvCHg+l3-;?sC|uOD$ESs-%LpR>jV~(Mdb;@j#+hlvg!1#RC3VW3v<!dB;4kgU?dcou(VH{QDco<$&}QGP&bSC)Yts`LPK5v5C4te4f`-aszSun zM==^&fb7{J4vtoX0VJfNl3wO!Bmm@Fm3yEXYRn3g@yUO2y(4*8;e?6I%!(*H{mq7- z!c+n8K=_Mt;1dAKcbtA5_TD3C1v2P&J(0*uT~+5X$vZvZv*>rN$%cpJtUmJ|yj+v& z)5S~B(;hds1C$JwZ<20Tt>6GRROoI=vgU!ydcf(j6Ui>@fqU~tXzl!Xoi}9_OqmS$ zl?o|F&gg$?xS@4;?0OQPvHBDFro+oewM6?3o%{G<_>2BwwB`EmI%ndU*0GXV~f;>k4)dq8B`~@x|xQp3ROM?Hw?2(xFZF;H~|=#y)x^-`z1s zuEO>Yd8XOLv%ycLt2fNu;#Zzg$Gu%-)Tfa`ks%i~HBTg*Ss8U>iLsA9rWU5*k7uud zX5NQz;#ofFFrG=2rb=FL7+xWoi+4f>Ufv(zeP!&UW4Nvf{%YBB!5=e7Hl_miVm7YQ>qB0$}vm}AOp~Gd`ITc z@-)&{?8rn>s=BYhn`^uhfIg=Do!7fiQyYIYp1{*GP1L)nsmtbE8{Y+>9VWbw!%tzF zfR_=zArn4FzaqNJZddY%OF7_lf!*?v6iv3Q%hE2b$`mTKB8b{W2i1S@x7hIE4PnwT z{pHQ_Cx;*NJ<#(N(_oM z=Bn3M+9_oljv6{OrC!?xct_XV({$*hiMY3klN|J(@gzrs?SRojAi*!+cNlvTsk3`i zRs=k17>AdqVLcMUi?g5oiIQH+1 zT(`Wv;4Ea9%QN^X{0E|*BcJ>9SmxDX{FW%HmiVJs<}7ldr+&tv@zz3z@k*k!Fbi7D z8FxrAhuSrK#+W_qFn;cJg}BZN=(?4un^}EL%djhrlGa$W3k~|v;=aswqMCPFJgBj$ zq63qEal7WV6tp~z9!oCaH3xXR23)D)37*|GmI5fN`2IPJl$aX(x!7;rc)tB{!kt3k z8oR0o{FLOr?)|*$pE>X!04S9_2N=V9(nOP|CVvpMM+NA2TN0tvzp<}?6w7?yG1I}Ln`gYd z`M`kDqX!H)bWHNO0b|AtXdE*}euP}amJA=zpz96wBlM{FjV}TI0T&YWt;wgz361XT zg$vwbf6vXVT7BhYQl86(>POqq3nPTQDc>nc%FiHyGeIb!5Zwr^{FPuSCP{yNb%%T> zIn^+;a;cNfj7->gz`D-JN}eY|@zosza&tSWJU`EX;f*EpbhQSvL|kraLe<^LAXCaX zwDL=CPKn%4tNCq1pBS>O*Wr+3tc>A$BhGSb`RiX;8H1`rQnemgqoJ0iGFT!zC$LIV zqY;s~%1FxLGb#Pn2X;iEQdoRWgM+j7Jf^2;o;}!^0`8UU`vsoxGoO zU&DL9@j4=ZHJO&mec)>4NDY+;s*8{sslq2oum1IPVch|Q(0@#Hktm@AqC8;4a2cP# zu1v0?hszH=ja1^wW#lR42hd16i*vd!$q5ox-U1D_W3{tk80W~(!>P*MpurBtILu=C zdD5WV0~*}M`f-@P^55ZWbr5LqDf^zoTqGw*jq(#{@EJRV|K&9~K?W-aL4z;Y4371R zya-0A0GfI;dy4-hEH8rZRDf#rW`n=Rq2A2YRMf^2iS&y-O#qZVDksRP%1`_~@JiiF zA#Wm8Re7YWYO+fr5ZDO`GrY${`R7rAj7eV5K#7^ z{5+{w&jCAxp`RY&ueUn90asvq+~w#BTfJRA>l!J#=QCj=F~0w}5s7A+$L8+N^Mjh@ zy5Ym?`VAk>>`%?S?h$#O;~xDKtMc%W+Pdb!wS9+H&RlZWtc6F9G7R>b{3Iz?UI0z5 zP2R%q%g>dE!F9?maN^gb+QB$=9snwTWHSW_$5pjp0NJPR7!ihluOw6de&b>m&ophnN9ByXZZlW|2Isic!DT?&<>I~(^v zbkfGUI^?>d2^*ipUZ2Gd5@i-U`kHI5$)Z%N7Z92^Q6bMlQZg16gvvm7@I&-7qewu z|KNWa2WyNEK~wKy%eubee;E&Jj1NFl?`F%ozB3H=voVHvjrT!Qm#{aJrvhOHn@I?a z1RDf&n`FT@DlproMmO(4=XF3sC4X?dDHv*|g1xb_8-FC!XTB#P*B#lV67YP9+ zx~HWRO%$$e-GBxuBWl%4j#bY+Yfu|IR1dVAd`esFLBlW(V`KQ+FdFPMg4}9MU}t0R zI?&*A!@>XZDl3E0#*N&vJiY%$AnXoyJh{MF2pWHx85Clb6jfKHWV~BciQJ_`_uz+~ z#2-Y)C(>Kv=t{08W5$eU<4Y`V=g(&lzWH+G5#r@Nn>Hv6n#7dY{1IoIl#Kh`MzAtzrn zal*i+i4!mQ%ZXDaPaS{Z)Y+p)Uw!)JmtTIlVX!yYNo1IDAGfSm?|(S`m;3pCaUK85 zCUy>q8nd`vU%7v!VX*hv8q#QNW1iSk_IDZv`^6|FKI3uFU>jR~ z;5@@%C$lZ&Nn;#nFp`~&Yt2qhGV-Kx8fc`+{L9_sMsf&!nA5qU>kHhQ$a+#q{{j+t zR`IPVPJs8Y%G#93`loSEf)4T&X%KtT!O=k2nJ}IFU0RE8Nw1P90SQP40o_I=Kb0^d z#;rISeSMx%=Z4qkDYLkClL|uqo;>Dy`i!);Yo&zGKC+7qFIlK80SW3dDcMt$B(baa zMrvX5m`mw1%98yv)Elxie6G-NE@2m;glWeyJa?l;G|6C-@c`eSVtR>2I^!;l*d>kX zRPBsMX)8UNN>u7p)J_`RvolNZc;gmNL~5!CY+{qiLv#L~WaJ_C<=_7fgx$mLCubOU zKoCwyfYa&a@>XeejMdzJ$>w(3-i(8rSS2?xKvyAeqQh|NPHm(UE$F&z>B9%ld7B^9 zzZSF09riW}R18cfc|(|BCTCpc9$PC)j5^}< zY17Uy45LEc4xg)wsivI_pneL(XqOE*PpbqE#PkBI)aeFCr>=q3_Ga8=C79L*@@5=F zYmH8`>&nLkd)zzsbPi~cn$X%}&LL19@P~o{|9KZSHGOz)Q2tU@{{B^)0?^py(!~1 z`9-)y=>j{{=Gw58aSgJJm&o<^X1mTEI9h&D54N0q%9zFn4TGI0KSE}xe$eC-lDBe8 z)ynGOG2;f%g6Mevw?D><10{>VYgvr2=%@sMbF+QSys#zDacSk@_SV`P_Jt z%bqd@!BwfuDD^NvrW^`&@RyT-?FJtQ5X8<_k}3|9rwdvHkN! z{yf_gGYn%WYlF9N=hBX5%MLh!uodz$GETi7^5ICmQt4E^ow_g2Zgq!=6m)_kUv>D@ zV9>oi9+Y%`{NTg=3%j7a%Xb3zI`=wHON+-Vez3_Co_F}PAh(HXMR~PW-CR{s9;m<+ zOsM(k35A8nTyf@vVQrHpoLp3J++}A?8a8s0ddwp0X=lzU{d?0w`)L=>D!UIrVk_jQ z$T)2h*r62a-~_$DRqDH@q9Rz@=?HY{LE-u3=lizD^YKt5-=({Xx5r($o4dPV@=-nD^FcX&KPq$p}_6`%oaOID^bHlR90m?bkY-l%F}F?UW;Gk@Jx! z9M&{$YrobJwf%+Erkppsf6ZyE|Ipgn!PtBNzw&bV5puNpFnFO7 zj??>A`n;V`RBY|kZQyWd+v5(mF1feIt&*>_v|xL@v_cP7Y>yWQv)26M&7#SM_yD-# zEiE7O*^r)HOng26M2u_slCR`|-MeTL>h zq$#8|MebX_o(x;Ro^`Sb9WTwC`BDe^bceFz;YDLNs1VexAX7)!{G%v09VpEQ5~^ws^4m#1xy=XoXX_PAsZYzNzRdvs5f zJ6+sy5uPDI_rJ0aH=cMVr^vC!K~3~0y6XCc>@)V+?I&L{ohEK*Cl#dp=94bf;QAF4 zC!BZ84bM%Sc>Xa!y8fxGl?pT+tPs}i7HNCj0xAJTjmDyl5bZ=8Ln>&bOseok%A|sa zUScEIsFxo4k=D{$Wi6qMk=Xzw`6!z}CmZjA3RSvaR&=5y<0Q3`M3EpG#U`DTHVPxc zEdefH@=)5~k>lcDv0#r>v}6vf1*fbFQu_5-AQ9x5q=l zyb4c6d)#T0HBDX|*EEaAZ2>6&t*xRz8upRHb}ivn{Fj8I>tfhjwK0l)-0%QnKtp8( z_ULVjHN|+h-q@g6qc`BD73EUEk3F`Ua63}Tb@I2j-16|+3e&mV!?t6l*c#ZwIn;C2)9X0!sd*6EQ?q{9_$#?}oX;hX#AyhyeoT4{a zEa3F_DK74_FkV~?PN-ZM2X7H^l7(@nf6^dD-!7s%4}P4rsib~K$k_$)sevtlf2<}O zKl<&anRl*WyFdByzAJD1_tWprUC6e|JEk5xe8}LD_igI9bH;O(vgd_`t9Qve*x8qz z`%>}=HstE_Kf}&j_@3i+$`WvZ9|r3sigRIHQ3yaDPKwA2;zXj>Szd2Y$>THewnUSi zSxv&~1~kNYV`k28n$gH|X>{^Q65ReXJNRXC%bZ);_sWuY*_9u>_U;e#MmF&3i@wD1 z%^nlrg;MPHWC4%e6Kaopf>OX<+#a{PWvx9fgOWF=pdjKWmbnskw9VuK!mVO0TTD^F z?vsBY1k%aL+vF?0dgHU-w!VJREf@WD(T&ruyzBbwl^>pDf!EpI-3G9C=pi#MzW42C z7cGAtdBhyLOT0aP!X6%yjPEr5{=|x2HOAF$DpUY0{lHHnT zT@cTcJ+o9bWQQpB`ZdF7Y{SIepLGKonlb8xrh$;zY_R;a#V`DW6tMqn-E`MOKaplK zgH2*DZ7SP)BB}k)zexV%&yQi#+3V~vb`lW0Kck$h&V~r;CwPcm^0@piWCS7$<3LO4 z!gy&xQGsSHur7!f$oXmrie%O6t#Hf=@s?4WH*Z|$@uG4<7(EDgC;tyzK>i=R(;z{= z!5`A9D$23(od|eEZ@=K!cq$xoQq$VA&NMjauzR!S#rr*;I(gEh z0hu#Xxz*&MJbsjzIWu`^P33f}<%Yl9{Oq!Y*IqjF$#2;Aq~?baEp+}_(PlY6aL>3p zmNz0>!d4vcuM5Lz9zg=?=BwStOig^l_lVVLKvc#pgo1af;f2n z#7P#!osu%!2JTt;`NaWLDO4!;$0#`FKEUl}4{KTGaYF>HBs95G)-m+e%j6-cf=y-* ztbg?&2_}D&KbSmjSo83)cW+3xu>`w7{@~z#;%DUF*hv#WF6Xw;hqlm?w;*n@H~^f; zo5PCD>S4CU=?vIBv*hTWPTu=8*A_{?2Q&AT1N91y5`{ysj_08Vo6H?pW zkJ%pLcyH}nd&#_w2P5SDJ*emWyAM&)mN1VhcBQyIt^^@q51}RWy4vGjfVn=Jmlr9R zYaue6@C$@yUi$=a7}kGvqK7Koy*z*MqZAQiEW1 zTd7U5+EsgdTrCPl+T%fYA@p(1ktCnR;>({?Qc}}rj!%3?PfHYy0Jf1ty-Mqr=;&UF zTOGRSXc3wQR#ju38?ddXTNz~T;{ktADmwqjZ(r!R`|f97KJkr>&ye~(-;zl3KM!Ad z|KH|5cuYqn5@Svg#`tL3*rTNv|xc1?UX~Rh|tJ_IQ4ma zc|Nq27NxMT#0^lX1ZUYxX7Rid`VPoI+B~I~jdOzfFrcAQttjh*3EieXO#}PH8bbjd zi~EDISOA4E7;9{n^B&v8_One7-EIJ>`F_=%iYJKOebs-1!qvx$@nw&c5OVjB6LMYo%4n67axiy^<;m;x76*rFQHy@3uQF&INIc zn=FXCCCTIQQFXT6g&Pqv&ObCyd!vC(^+}8HZQ30%zqKbKtxE19|6(3?-4U&^)+Z!I z{(v3xcJecJWN35oH_9~A%CAsoLnU0Uj|g}d!~-R+zyeD{(Blfb7R19opk-P~1zi}g zD8XzYwMm+_#JV6}A{VQLP$sKEpU)AT?eSDQW)%v7^tMFZA7|PAQzuVycM9jsy^hQIP!GKlpFo1ae1r+U)+Qcl)^y0G#qw%$5Nly zM_saytbka^xKg|7EhOXF^tQG!%94X6&I2>1FMVL<$iF`Bk^k8>_1GhiIzn1{ z;JkVIq)9qT_+n$1`lj*&l);gDolLZl1O0ju@VK<%_PFMzV4It-gDZcowZS{by~0(j~^<^Jf;~V*X-IQpZO6v=F^L> zzwzH!v!AxG(G$))ZMO15@`~l`^at68Puxnv#KwMQd%t13$=3OI%(>@k*-UlDt`w+b_xsYDCiB3#%%Y`2MUS$P@V4z-T3n`L?XkLrt^}Db=u^dvp zkZ)CIYtcQ8?oZZr+l*H1gpO8=R8?2-R?{)UeHJtn8j<(1x0tI)Rrc&r$iVrxPZ)kk zWAmYBvv2AAKF;JAWl3@>d1&>7g3Tp2vxWS-V+R$LLI9feVj_70vR?`KU5-3!UVGe1 z0~D|)7BE+SE?@b%|NY9>wC`TDXm>kZ zoou74pP)A+XW(cAKz1v;Aqdy$hX%c%DpU(-J}>qXw)ibUpBKDVRiTP%vHAi*Rr9+w zO;M;FlV=@0l{g6lnsn)71@$)rdo;B1Q(q#9)e_@{-ByV~4k0AEODI@j6PrUTz zp`W$xmej5T($D>``s-h>E_}~_#x>_(a|sYwX6#Z|D@&jRj?wF>7ATP&`HIzJ_1qD+ z`oQauNXhJCJy4uC(GeKwobAwpvjci*S)f~tqkHOvK*um>=Z3R|pGcT4NOekscr5OT zdAK@zV(RK2ULV@TAgzo*68Lv?mZq1 z_01rtwH1>XT<6^w_j@WlZaf{t=qwnJtH0ZL?z~<8?>+RwFCSgb#z{Yr(kHG-zEAHZ z_Y^X^{$>aLzm%13Yddhhx-)_?bv@N2axJU%Rg zWA%PPt<+k&fD0E@Lz0~DlNZE&u7JyxkLF989Sk}!8C701%aP)gFBm%iVq*@q@Q@#3 zF}_Wp!|0LIaTq!}#3Mp9Z>&+9viIVv2Ohz?er9Xg9BijPW8=G*?cUJ!(vwHO$CAnS z=gH4`tp{JalH5i{lOxGfeJT$-7?ZxrXIp>V$99^Yx$+DD#@#b$k6VKfNX?+#oI!is z<<{l~gASNWNO{p5a|UMI`^Pg-D^l@RdIrK*SAO~Cn8OZjdu9DT_5~U6%PEgOdde#= zCjC>3qYuA`xdXhDfe}p*iea=~VYRww z7#7CEVHfp=B$u=>?vi}73JXiARh#Vyli3uLRY~rsr2{T(beoE~2yRcAIjS-_;0H`f zm3an6=!ts^;#2*bG3;7GY@`qSYTv6%NDJFeEy>^H%~OvRq1Ubt-($bh_maO5r-3;j z)>pn-rH~I*FjlW}k+4@P441UW!$EH!)FhijbF{}bVxxgMkw{Hp9!;l#_PB+EiLRQ6 zCt5N0kEx)Xt>t&pf^+0uue8U9;!bnvH=UpD-@5kvTQ9usjvKGI@~-QX53A=r`W9|E z>@7?UG0c6mUUun&ZzmQ%wH&i&#(4R0Gm<@2ukt8?fU+KlyR?{qx7(GHuVE zFTdzwuT48P`TnYz3l2U-?tP1mQI}6W5Obel&*rodV zezaeEoCYE64wr=`hZGJ63xnpMAzV906QR6mmr+SENDYq*) zFa8wGe0=q-g=Ovfidd#BB$3#Y+K4QT5*2=e*USBr2>gX$u z9X_G0xxiD>r@o?~U#Vy8+jTYLE<0lA$zz%eJtb9*eXg8h7+B{mS7Po2UuXbo%w;8# zMU@}`WpJwA;><73@1HNxQg3N_spOHVuRTtSf=YWlSgMt_$2F%jzdi0G0XZla&9!;v z%6g<+PJ2Qh@A1S^3Y3}fGLu4l=Qe`}ltm9tku(kD79bdFlq{n!U^_;QoAF3u-a{Sp z2iLRO>HUU|hz({VD##dlR>=cb&3tO(^9Sv#N|lG4j}EJ=!$<6)mR(C%D2-48hwD|U zMY6QVrII3hQG47T3$Vfpp3bK2z4iD>zD>a|S4$v&aIiuCVB)yJu_2@HUXN?SJE2IzP8S!_LKIt< z$Kh#@J4nc{SS(6=+~O*B1^t%LTvdr~Ot!S_>_p>-wmG#LA~TQ*Tkue%+q>qcBVsY0 zAAJ$q{Pfe0-+uB@EyJ!Ai=h^i5wvX8nmeB@T^;FIxQbc$Nu!%dQeNi1-r;)Rkaa;k~;1QyFvbF{rd0O!#fVJPsz#OuV4QayM}FM50eQb zO0GqTe%9EfEKycK5E}JDzswWQ>GZeVPCT)V8~qsN?h+D8Z3`RtwKXUdYUm)U9LTw*0JmA+rh9%G-e`+KzKp=o zQ{f>*CY50uEnC%g@1-L~)ek;p4BNh!^;MQ6?{26#fy}%0ocxcAu1`LZ?4nj_0j`L` zBJvVB3`HAQTvLP4HI~y*tdfXoQ+sBFta- zf}z-;W*_F-PS4uH z+wPMNBtwPKf*7S;0U)9?1=sJ(^)nrF4;S!H5#I&BN$PPfImz~5lC zC>CWw+~S2iw>uB>TxuSGPjOkJ>rmukJj;%WX`zql{T%&$9>IA?EF8r!&O>5Yy+mSx z2#EwDO;{#|f+^2oOZT$5Y^!8B_!K$sT{4-3lhtyC(#Y&@v+-|VK()8Y9jF_;PlgQO z`9t0pbKVz61n=!}OMvs<9(TL`zw$1{0ud<^h%_Vb&6wxD>BmRdm#@+4t~&`)ZzHzn z8IcA{_p?_XVQgibOnzi9J|zHQRwA!emOvQB>;3IEkH@w!?#T;z7FrvK6p|LiLq%>! zp0F(*yIlo`+doTH3!K0cpvlfgRO*;%^voR~z19O7d}#kM{~4)h;>u2B2)H3q9^U=! zW@2Ys*ntV;A4#V?jCqKa9Kt5E^*^!Oe!gStvKQW&MJH{TnY=T^-usd5$HHO)*c;j4 z{2s6O%X3*Qu7z=njan938^S>vTo9*4R;SJ8ToAWOmb^TlBOESpT78(d?L;3B4+DRn zTf#Gk1EG?jB_e@}ayj6aF;8pkWCz)Lb_p3xDD%j}k{{4N&!qHn#O*lG_ywy6%eyeNyl~O9Mot$fCGZ6!7?bo<(t= zE9eQh-F7tq`E%{|KHkzfs_@y8o!r!m;{;Rv(0HUpg6EkOUY6Q4uu_~Mq(p-sHfSo( zgwmDsUwVE$X}j~%g>#Q5lr_^|*gx-jeA&A<9QX8NJJ#v*uiSKg{V7KtK7J}GSaB)) z#B=YgYo2SX8&-b`5I6%s`c7E^g)m1SRX}K%+BDUvYEG3DXf~U+ByO`&ci5=}RI1Rs z<4V};4!D=Z1DeI+)d~p0J5`XwH#(igUaCf8_$9>LQk6_;>xd4jS>2RM8>UPQS{K~p z(q_dxGZERLfM1JA-?6vZT6$U6)#Qksuby`8 zm2)>*x6-n*!qM$F& zop*QKt$On3t7>VU&o4P$5M9?9N*~vwZ!L^GW~X_`12Ip`JOUO6Jepd8rQU&v#9dB5 zRFp4WbkB{CJ@@dyqfgh4yH6U-nqr64{^M8n&tKoE*gk2|RWs+S7Fxe<9lJ~U=Izbw zAP^XC?2R+y&c*#{4gdT0WfIh-*FCHAc=dG__eb)cRsQ966;~ixF%9S6< zOBdYJ2?WZFU6NmkK^aWcqeV)o%UsM-sXbmA^tkkZ*Wq$G+T$*l-ybNNqbTKGS75G# z5T^rgTDkYMv|!9)x?1Q27KGg!)9Wk3V1Br69;G#*KgfOJfIk>A&)UwLdC#+r7cZE2 z-F3Tu{WW%Y`-~m0JXrSelq>s=9z5o@GbXP}4q_Wu9XaH%sxb?v&Rb?i>qp9AaEKFs zTBv{qd3VJ@a%p}{_}k`qJfS>=%*A8^etYwL(##^X4rov?{TwjAFYyclp3=vJ{v)gJ z{eaD3&wWDj&OUM805(C{a_!w)9@xyTrI#kZI-aO^o^&Y?c!iaaYt$0Fm$phe07bBY z;3(*MS9oINnzd_Li3Q^&grq-mNDc3hQlctF>H*k5h*jRell@mm!-&e01{}M>6Qe)A z@dmq1Q27l#DLGiFVxe?Sx~W3!tQob zhrE4daRJDcv_oE*@Vi0A=a0MJnnNlBl!Iw1laxnID)@3zc|t1kAdw|$A{S&4!Mj_S zpR}}c8rUzr8Yap7O-A@aX%sYSIgJZf*40?B8LF%&%1bQ#$zNoI(^zioQmR-&A*e4d6qO2Sug0?$)INe6W%>_y^zgC-E~;4Nk)((B3( zP{n(jYj70Ber6^-X-`-Svf-B-yDaB$Uika9&|mp7#fw~)$WOIYPVu7M$$1g5M=99% z)1)n(mdLLajo~tQQIFv8qDS>n@``SF`c5L;Hyd8O<}x|;Dhhl-`jXS}eH;((m1`t? zsV7&&+kw18m-3%fhc5U6<{MpjZ;fIL6K_SCSa$(!>;<4_aq8k``WMDyXhst-Jh4WWXe)U)aElvOLwGO8rY^Kk&FtYX06Sq zNJ|;^xU=i%oSte#(){{rYq*}e3S4W^OqhKH|Fm@)lVt&hf7b|ub4s# z^k_-YKQS&~1#WP?l*4n-Kyw^qpsi7cP{;GmxXe3rOkCCp#yV)Tc{zI>P(nxhQ;-^> zQ>NVC1OsLZXQu*g7z2hOHf-2|V_Q9_-Ry>ko?g1>_zB3NlOKI{g4&I;sp+?lT})Lk zdvxr}L(%DrzoCzzaJFad;uUz6l@pA26yY^u`-A?ZCE zK|e!w)HV3Daid=#JBp#HOj6_A9Br?hW#s1V?R`DTM$YM5LR!D^z$45+-DrFc8Z+<8t^4O9ZttL5~)27`!tDm zwSZCjM&d@Y*HYPFz4AO|26}wQVD>DUswlT8p2*`o7b0p;tj$)i{K|uj=kg6IMjEJoW5FEx6Z?gIM0B9J6m38vRf{zTTHMK~9IOcHa&u@MrcrNgt5pjm?XkU;_V7D!d*mHB!K(0pXnhCq`{4OtzE$UMvoaqZGJmf(`P{&cl}}Zh_#TDnb$E5yMn#)&T*AyH9>U}C z<&{qlMM0_tKg~U-JiX`=FztA${n?-kzE_=Ebz)s%mZk=rHD= z=+96CMzEXG&rZJLS*+noM1#DRymth%J^gH#v@)x%T?^i$GpKBJk1nIGffI;Mh4<(W zzJJ-HoSw>7_vkV>P2qqbdvsxLn>`93)=V`A30ADTlxxz~%O-=~RIe+hZS^v3(_5Xq zV4%$=olvXM=$*9=hg(;x1o=pOnw;_|MsSdGU7{rKWS5oUP)5`eR)8B8OH^~P<=bPw zCht9ShMIr&r=Na?2Y*0+e77aJf?b{5NDaSKjLt%ysst2x7v-^I*cVflA`3K>7noPd zfTlI}m9mD>FH|f=5_Z1KQUoN7o3<3g7y=5QB~!H&cbz@^CDgtR0kWVTunf*$HtYR- zG*C13wZrJlL3ALQpvPVM`fk{8V*W<;{IXLuxX!$yiFbqba1!28cC!DPn;a>{U6D)p z{N|8K#EK@~4Sb3<@g|}c?rhoIB-*a5>CE=j^h?QBW-^rnM-tg8D6(}yn^K=@y-W$q zaQ4@fHqK0jt4X~S8rRFk^7x6S>?`G~BEz%O?c{^*a4wdwn2>R2%f)mnt@4$A1~YXi zdIFQbLt#zC6?sFcx2w<227o?H#*mBmF*6w+B4ePS5wktwx^-5S94;;I2e%~XzsVSC z)X(fw$KX-M@K{sGb46vx7f3sJ3`#rsEr-Y$a5JP9WU3XlUrHNz47d%B!FiQp6K;Uo z+46h({mRoV;{c%iWE2WR)@1OSItoS^#UpLXl_@LHf@`iRqrkR{hM5c=RV&vpO68gr z|NKl60BUqAZx@q~-i33?Nye3}xyyOGT8;rgbtPj^TF6Jwt86ZeB^$DrKTY(UW-fQKR0D%sL z7><1rWCB?#@*8yqqoH0lIwQt<>V~(w>qu$vXk+93}kgUwp7%G*hLkYM8U&8=MY2CD-IHY(G8t>4t9U{iIH<}gAcv5`h`s! z4?+%Rqr|4yQ3={O8BChKy~KZkxt_u;VwP>5d0 z;GDuyQip(1C;5UkctCO4=*l$4@qjYvxSZ(|Z7y3}b_oG59*_|8hU+*k2a5kU11d<5 zNcBgTRb1&tCmDGloDt|VZvUlK_Y56*WBkd*cRljZ(w$#kIv!hx?n9qWL&dM!w=AA? zUuc)$jSU?-uHS*KZ?4%lLF3=I=xg*%N+y*M9kBrKc5oa{QuS36VFpVPWwuJBEb=ra zBxs{i+DN_h51Pbup?I?HFQ7bjIQt^7fj*o@+A+q`Bq7A?TQy3JGyaXxU54(R83}4SyeRHrH!NcWkQx3oWg4e zhaGBvD*utY?s+Uf(e9Ib8_+g{&;|4=)vJErfu$?=AEaw19J_78sPU5?d~njZF_XrB zFt6;(2fsrnq2W82ZCtfeUNVBCAgm7}_D`0W{A`yZG+ z`##^%@Y|3^2TqWks*goxSk(nfE>U)V(urUoh+3{JYQ>$I*At z@jc8Bys)yq>7^CRF)=&HLPr^lwXlHBQV`Kp!FT>`qcZX}>|{MACi(j#T3I+ctmn|F(I$>FwMV$w#R&M9~$=FJLvS zL>GE>n=^#^t$B3Pfqor~Pokn#X;WGiI0D~+cM!=&c&=?~d1Lh?Dqd8~bB%p3_~|I1 z$kSM>3P$qUdQnwbzFo1vAolR=f;V8F979t+;^EO3q$-dSaiG|EEeU2C@$V2x%Z;|C z{5wA4-(mm#Gi1>a|Ee``D^hjGxN(~EO6}4xRvNf}d!B73 zGo{$6N2s7WQ&?pH-ta$byONnwJhw;S0zhHiO{r_v()7>g*=EhY^aut31aDUQ@53L7K#Pbu7uUqTJ>PZ2ST-H4a-F#-++7&Gxt4JT{; zCD@A@lt`@~^1P!>O*ufrZ02=(5jRTZOO%=*^_`6CtVv#-u?9LMMlU!BeIm{#u$lI1 zY?p{x1h6BP$)^LU*R>?h3&g^ zVh=xn##Xg&S9MiE!PQr_Q@#TVdYRYhDsDLGS^L(0S#ZDf5~JTYjDaR#+Ka)E!hV&- zJKc%49Ex-mZW#U2PLkRcR#&s1Jb-Sws$D@O$kK2s{3!30W}a?M%MmM8798CZ0D*YQU; ztj}yGbt){Z?u>f2?}Fz*(wNasSo6sz$)?tcD7Xqw2<{(XUZ>Y7`b)+I>>voHOBPDBiuZ^sL`KH|!RD%AaCb^{#u|p9On?XCS{VQV zP!<{hAEl+@veseXc^?MIGuAq{J1iPO%y306zk;12pj$G@7VKp#P*SfI@Su`QqJ)kG zHY=r?aUzu8ezmdc@F+C%_=H2NHlr8O2VagJKfKSx#qf?Jv);-ohX<)XkG}Ne1L#=M zWWTA$jok(`PDy3mGAi3Zgg(M!`9dZ#Y5W3Mc3lX}Aey()arkEuXzJoJssM z2e&Ty`9dWFcN^9}?r%vj6V=`hmVC4bMP9^V42@Uk#eoclH{!k;>s&iqPD>*0qbtZ! zR{TqAjHZlSZyNWLcv}k26r_8r^jT$4h>{!>tL2{z0n?d8f*H5(>%V?@^P9O1(-$mj zyldLxb?X>V_bB?P1td^{nz-J*v-l>vg7M`@Y^vWW>8BV|^U z-5TOq;M3Dtjz&2vumxmJvJ zC*UH1*mWuv;qty>JzIqsk;Gz6q`X2#);PH4T9RBeS}C6WQ>c-U>Gk`=Js#ih4T zTKLee_H{2VSo`i%Gj!bs_Z%`|zODD*r8AfQl!Vce&-xtLFr#O@ZtNW^KFx2ReJ#nc zK|!{HJxy{zdPrGrC*{OwH7lp%b(uKXh7aJo!w%eH%wy%a+_0Kl6OAShC`pu;BcW3j zIV?&VJlQBXtx|=sr;?*f%h`&7gH~-~CVv0=NyvV_cQ}(+Q5i*nWm97-md~Ekh^j-| zH^Thg(3yY$mOMsHx$tH;GrQ9&R<4eio2%CyVoqAav)XUi9o z-xsWLxoCrh#?&mz#b~axahwOb@QxzL!7E~>7~-WE2Fl(iJEbB_2nm#p52;87r+I{l zZ(X{YPIf#0+2@c&|2we{9?JN1!fdMS%`t11$fuwK9Y^QUchmx?T{aKzm98xbwp=|6 z_e;H4mJ0;3gG|urbePS&$z}3;z0_LS8(@Qsi!r%^j9%1d;058WL2Hqf*3lS%7nemL zV9s)~R-mcN%F49{@v`@EPp`(e<;o#fHyn4g7x#Ms3z1;$CoV$JPbpR48BtRm9v!oo2$4$AdZpy;A zJq@zkM7bMEi}{RTMo|XM(-|QugtG|*qKNYL8o_F^#$}VBVLcwd06-=y*6IBi1*-UZ zF5?;?w=S83bi9xF32;6PHdf0ND&o}5(3Wn14$N79=%?c^|G0a}9g}N^PNuU}`bbNO{T;IHGjh*bd(lYk}}pb9kq zuaTv0>2Rb>pRZ>*L(Uy6X&7dhW45kJ1}SZ{3Sb&>^gekv*q@^mAyMH+g5XR zZON-SkKVbi8&k4>DUl$(S`y4q#s%7e$D}BeO|{FW#rH!tF{YeqrQs+qyJ8|j>YiqXUR^Sys$c)1NB;h7`OIk#-mw7vHnjJo``?^1 zea`(*>b^Lb-7CL6wZ?zzfd08mbpO&V1^c?nRm-+rUxnxA;K~uxeB|bDNif5SP7?vW zr2=TNS}hH-)yP>JDvG&4T;?1`7v?#Fw8awkiZPz93x~73bvi|or3S2cv09x(CB+br zgGr@TIz&5LMrcJ+=}XvIL9aN7{{9-FFX7cKZ~T^Q>3nq7s8uh$xN`EHXDA<2^!kz} z=sR~2=B~fM?ZvK4*v>&-wv0e846l}$fGbQ1S59=eal{{*udB5Q#lx3 z-s-Zp!xU1kZ0sh*{77**h{aQem*Lx$7|AmI8=WxUy$M6{!#o_pYX2RZ~U@S0CLtEyKiV7IjQ7UBzQ;2TPx&6`k^H$%HjV2_a z7Y5Ps&Ye3m;L^cs_fMR*YSpxnpIl3qB_E}3zT~OxD$7-bkuO32%D4!NT~{f~$(VhN zPSk}+9Gc%kOWLcHGoOFhnaCkr20Hk-=*PmtFf7a`_V*XWiE0>hArXf2rxYzSkhr$dM!I()RJAFUPk(zwGT}@pf-yy!KiK z>htj8B}?wbD|rvfW6Wf>+DlI0wNR{-`N>!5^H2*pVu`HUjYi_Wp&;p7Cb&_urI0+q46B%7ipv>-n@Dt{rN-@bc;m7I zy4^v*aTXBM>$8KFm{oP~TPq1&Vq0lYZLL(!b&5HfWKRB{I{wDC8#+~1KlScEx}SCU zgnM83FKYI`kAeaY0I1>YF;c;5xK!>i2{xP1AlvM`twC4Ji+~#|13Rx9Lrc7w9@A26 zHkya=maZ0u%^c$;mzz&tn3a_W3RJoYP>t_OJP6ezQ&Qa4O=ZI=)asQ9J5>!DRMn|p zzwfprwrxvnVLtC!)v;&Kjum|_T|mX~qo?5_Tv`Bv2U<>1qZt4Uz%Q9GGYr<7Sl+;UeT%aO2wFh$ch&D6uq&B=*4n+8{q zdXGH~oM61v(I$vy4MXWDF)mXEgRx#V=$xQlcACxDMzwI}xV@MYvB%qBwXiWxa=E#- zvzrn`ByDrQvb70ODT%u%IR!*butYG&f^zCDQ48iQpx(P~WOlnm)HAqWpOK;LL`lw| z-qc&&^~o93d!|9Jbk|aolLJhH0M+t605r#*1{UB3qoj^O5%OYCq%5@P!Y(bV!62@c z4OS}y1pzk7f|(ZL+G1KX17H%YG!>(1uT#AOl1^M1qs=~0St2U21u|8+6D&%xgJ>!4 zYLp;2MSGOyzDsnuZ^f(|2UH}!L*=y8uJbHvadH;5c+P|y=9a^g$*$$sU)7zQ!vKZj zK1Pr$iAFu8$F?a4jM^A0napfz0^4p8r53{=jL5_yxB|M z8)gISY2X9nq;i8^6!nd=X!VMXIF{+9cYK+TPUH~GFXF@Y?w7cp!E?_ms zc;$$znQ<19Zl+v_*i~{_E>uY|#D|>tA8-zog6k1U9ux>?z=<2TK5^*FxBJ1V$@dZo zdK9|%)05~Kba5A&`tgLv@4oNhA@Jy>X7)6)k3~Mu|6V$TaQSesyd}ZmY{VcKAhoBo zCJ$@X>#f)Y0Rj#aAB+Vg7;ps4!%U8@=9o$Aj5(xG*bysE@gQLW84HYhTmlY=MT^w? zT)j()N|F7aBr;1*F_S)?xIQrD76Yq?icWOiPWceUmOU+AeUs1PdCUs5n zY4q2+JE^X?zbH@b??9>W^8R}NpE{fpK&cE8>~Q!$cKD9N6V~{reUG-bb{OSRbGA>C z4-()TFtsd|56eWxf|T^%j30B0&MtE3oMEQ)gk)6uB3G>Sja;lylQ zX^oV9cKE~_?>zPP$oYu`Gx4KIj|ZlI5Bn)n0(}Af)L=aI$ycc%P`mEVit_6!`B-ISCo~lOfb`rz#FJ8FtB!R@`kM+iLZHf zGm|&%K{qProXsW-hm}&ml#o1D3|pV&I6&z`>d0GAHQjj8?1LVk3TAoc5Y>2Ptj?;tm>7Qq1BwHlcL1 z0~_)G5cGVA8g?3;fRR6cfo62P$djDY$W!IXcXW@`Le2%lXCZ_kl=$mU^f@&JY96S4 z^6nMH^LC1z#5jQs1aMXsFT`cu0Qh)mG39T-ydSo>3`B!5E*p5Qvq9DhW^2rDXN>{? zA&;v26LQBhIGn8#$dK=(+gSYK9upeWu&Dl%g(aWL%`+)^0$n(Teub{n?H{DNp$FkG z^dwxITrud{y7iCT*UJe*|2q$hoXuyNf7Mel|66O<>`|>=b{pdY7Lb9tG$C!ZdL29+ zqC;_+b|}t#SIj8cjOJlht}C#`tWqS?8q*dBVqB5RnOB)sg-Dl)h{gzYjN`~6*HD?l zZh#L(HXX%Gdg|%MKT$|C@|!33!3D4jEQXW6cx_7E!{2P!_4DVS{I%_w7Z0933>|PN z+KGPs{?Fm?qk-rcbi8x?#6FaOVaz;*@|bf(hPyxzjF8GGuMN;{+KmTbHF|V94~|Ia zfuoL>0B;_~(Oq>$o0|bKS_*|R9h)EL@haqD&epM{_4!u49w!WD<7KG8s)kjx1KL7R zInaXhcOA6t=rM$#=BuN}5xVr%yjTo9Gk4J<7wQ7{SYY_rNf>s*PfNJDe7Keb2LwQA*V0D-CHEYbaVkS*D;0l$iHubO#^kD1LDEg^_eIL;LJUy9#M z5vrCbH9Elze7P#ve$cr45_>?Ytm3MLYzVH}v?~|CN0B;q7>sNlb%uSvi3c0Q5kv;pY+rkWZ z1rKTL{RwBA=}7p6RhJ6c&kufWCN>%hkQUr{ zoOX{>uQh4ovdL%Rv1@&m>=g6>cx_xvP+C%MWx}taj#hD1a0-Quk`GSgLu=D3s!Fkv zmS7_Fa#fJ@Ai1*Hw>`Z5NoLW(TW6R71os0#y+Cqb!;-*>fYMV$(E(-_pUPHq5Zj`J z(NLu~q+Y1*x%THKNvv zDP(9t;5i6@G3Ic1Y|7$bnOa(;unwvM4a-?_0P!7|qcBnthIft1M}?hd@1d5PtEO~H z!1=r0|KF%CsC52IPhMDr?qtBaC0`UXnfFrd(f2EswCR}@ctDMm%h*gNTLXcpH)xCX z_PDGU0dL?1il$6fz{Q+SpUEE6r=)BtuIZs1zO=!I0RkysC5ER*OUo-NFjE!=AkyzG zsJiL~4fop9f^gUZJ|b=TqDSF@2v!}Y=XdtveDxnU>E5|R|rm!gnsEve4szUOso-rSwY*bvfLBQ(S7%w@Tt)};WY#J(Ck$g?< z@HPq;=_|D{+WGNAj}I-5c6#E_hM^^Fk@wAuhG*Zl?{UA$oZtMG4ZxNcP=MM)*p5a^ z9ki_7>9jYS8u25VWPtE$j^t_Fv}PP`Z}h zBI>ah6&|QGvo!GwD4pF?Qu)lbZ67^8q_o4;Pi)ze>TvS6r;~f1JAnI4MW3eJ&%A>R zBDcKMlA!M4XkZ8JB!}HfS+RdWr!i_UOOsvD2{ESV46&gvn<#}uw)O0i>y^6ann~!( zWgSZf^=sU?xMQI%3_H_Pn!MYCFRr_^W@`wueX%G=o#1HVwVN+pE3z7!Pp=JVHLGN; zHej*^8fD%Vv=!Nw+t%5(+Bh9;Gi5Z&CLf^OR9tpLpQvXA4PZktfsKh$W|o+qyid;v zhq3OAk5#(2I95kaeafk#TKwcLb2!E998#!IVUbx{8MHiJ;Am;Iw5TYm9%&1vrA!|Q;(bi>EVQND+P3ZFAAfY|RaJz#X2P!Y zPtAXqp+n7=I*;lf0u;zjR`crUkVgs6uq{Fww;2WsZx*hO^{O#CBhW|Sp4xo$6uKmW|F*hEs=W zpBb}-h5}E)xJ>a@v&9}W8ZpHH`7jXPdgb7AO?9ShGML#LqSDDg(rwj`JV zj0-q16PL)uWzhk6qn_7e^nlR_t#ulW8^->diA!~mD4s2>X+}bp+LPz%mJR7sRd&q{ zPrr&z|BlKSkUWTv?R|Fr^PZg^^wX&p^a1UaF*@(b-{6u<)b?RLdiGEDU`R~E4gmWXnd7Ua5MXph zhljITL@V$0Fgi>*Y;-V2+5!Ra3l^mb%rFs+D*v|HhNh}0isT1^md+CZ*aitc{{BG4qYq37ZHKg(J0mc!(pW_FamMB2+KH)hB2U)3#^u5 z3@G_O`1$?k2VT{s!~a4}f%b>CuKFA@PjFJb^NfkMd*AfsbgT4Z@0 z1PlvfjAZ81Ooz$$h4*m^gJLN|NJlK`37{9D7wH7r+R~WGGot?y1|)AqtKfL*5%k=U z!XDLd5Wy&)V{#Y(9H2&WIqVXp)ACxrLDq_9z0s&|kd3^9#VUZ#sy7RQ%fRatsPutS zwFE~iIhd zmKn?>1^_1rfLo<3i+`7IVpj5A;ScN8$pd74uMKY*SR%Q!hMpLK)MA03Shn9AFXU_ci zrpDC|Ju>3H-qn3OjiD0FHzkerkKa9Z`u&^xUWX+s$@nCeOo|z-kuZZbD$HQ<6f+oR z>`5_$)&2iq2BR-?eU`PlJ^h=SHh%oYJJ{>_5q%@N_wWhq^W1}Ge>&~)yYGz;fk&IM zyYr_e?CzvmPM|RTJ_A4qm!XauZJO8uV-vlx7*q%^X{O#$W7~Lw}Wvv>WXu7@$+=9Etj&;Om2hB_*`~}!ycC% zyxV3oYwWJD(VQKiG$CJ|*<2uIW2*`yHIfI^1^XvC8W!eQ0;GhxMa5Q8#_Xgxu`l}c`rbD1FRqA~Ze37BIh6BO$>&I{X2f}(3EidhP)LR!bc z28Gv&iDWQ~ADOnOY}o96iK+n$`k@PlAI<+{z%Bi*8aaIC;}5_;P-Ix$;F)VjJarUH zEg6OBS&R$VFtfVNLRqjMK>;_aA#;PxCi1GoETu4}!HtR&0bt%ra*u~Fp=AXL+W?TB??3k2HmARpJU%J z9|wH<#A09}PDW!~=3sEITjK5Rz2k~?b#{A%$IeE)GKvpLv0PK0yS9AhFoVKfvRZ_; zAwp^sI)OfeWzY-VFdw~-e%jmwM{aIH8#-KjZHMUf*Sp{nI14U-YtU?TAF4yQus5N1 z(Xr(7umjAX1|~~tIz($~qNUek4=T33UnSDW4!k%Pq7`{wY?O_>kEbj&kJSL|FBPFV zE<;|c=dE?DzRvCT^A4z8nX8_-YaRLl*D% zd4{vuEJn@|vsm(sbxP%zBtd)#ig3m;Wb9=5?}9Iic1my`ZJ63sLx`EyK4-d%du(~* z%PIz>dGGJ&E7<8$O;@&VoYax&@42tnY_8i|>j)ks`PU85^~=w&%8@}2UPx+)U~j*V z=#6EPUrWbjEyrr(;bH^eSdrs(T3j*(nn*PbyyJ<0#y279JMj&r6ZIM2N!0VyDY*S4 z+=}`$0Nn=h=0s;ukeWl{@P3d5>ZINQvoYj#`5i|8D%ogs2#!#r%sYaPBFA#aI>%NA zr=uN0W`ivFNQmA|Li8>#4$&LEW^YE!7VySgQg)6jZB<5bEmPtB)PYQg=u;x-3cIpR zxl>zP0YpbFip0TA5qMqIfB{uk4H$6#&QU|q!G%xkdU)`)bmFGrNFE|Bo3O4moPXiL zsg*z9KVe#hFb^(e639>QMtLwnxsVC|hIc2PWCsHP3%rsU zGT3~jcmOmEE_OrUMcCL0V_#L6b|mjU1sfP}3H$8^qr5bNxQCR*dRsBX|AHXaXmZ2< zfgo0FVa&0YazCo@=l>%jE5VFEzW+=TmjZk9VT>SNF)_BXe%icM7>adaH8pDow4Q|k z7C#2FH*dFJ{PFHP9^3!?+HKF{QQH8Zy&MICV3<@)15T&o8f2Z5)ir2~J-m|@ae6UE zKU0*4(P->Cz{FVA?y2MXusto-2$x}73|4Au6XU+57-A-G0_ga6sSjU&C={;^ZIwA#O-K39KC%;eC(L5NYbweMS-D4(zE$0BB{vbUc zA(fg97Q5ZjAlv-{W{DI;9zYWfC_fdK{m^C;JVqn18-y6ovjBwII*)n}V$1t-fQ>2_ zTVW|`xCm1&whp6>!th7^+DUh}8#lH8wrzyLC%BX*iQ+0#G-86XRcmC7xw)~pTTOq(nQGB7SPB8b@Sk+^K<%^sYg zUynP`t-y3@3bH4UPoMJG zo6oIkZieTR-N~5Y4i9fxrO8l$DI zpde^;)@5ZCQbEAs!X=fJ?_*sL8*hpnCmT%R7;B|*B?$*5#Wuy682(2XfC-1P%P>ON z5e=nkC4RPf^GUey`k{3xV=U`$v~vo!DZ}n->k6-?Hy< zzdkjC6g4>01HHfgiM_VJ4^a=`x(4d1a(Xrj3P1<2OzM?k%d~-fS2VLhjuz$@Hpux7 zVg@<%2FYwl)n5Q!Xr#S3=3*RiqNI=s{Z=(Ob_wck+)vR&>4bI@s>g(g~9m z)bGrAbK!!=-g|ma(e-1lmv0$7Xd)a&X~>K;Bje7p*=tiNStEPQi;bC5|3g)A3d?*wfqstLP95OmVqD$hJE@9%o$k@Zm@x5|;yzK;zzufvGuT@Jq@(LfGg@6((+%Y(dcmef(1H2(`rGFY z4ArtUZ5n=H)Aqp{ilI!S_T8XiSaYAv|MsULTAG2TKJ4n`9C&-EW26Imm|BGHj+BNf z;6ik7sG}&s+Dm7WbK&j5jv4r`_oKTrqU5jl1j`-Ouoh5YIso)qb~Vrd9(0j1%!b!w zv({t|Iuro zMLAE?1eyQR)$ zciH_+T}DQhABW3TnNoyL+hu+P<$57WF-lfUb{UD^VXqlmhQTzE42y!A7pUL1yo`Q3 z_QUVzK78%_73i5M%U=EHuUU7~rL6Dc4F`Tno~9-*z#*fnb2G4_YcmBVxPk7Yr4){W*6t)y0%I83;JYl z9Ig^?7=$Jpcj4-^IuDN;(6q1i^q)V!Vzju!`Pkg5*|V;{<1QG1MlCcPSh+vhXo^(A zoddhg+kknP0APM#UjPm;SjxAW>@-VhS(8bx0hFDpm+g$6)&MJ@X&0;4>6~U0TdUQ& zoMgDfzQDjoOEg*pitwpbM;#@G{O!iD*vef$0+(TOvt3<^->LbS{A zOrQFDin5va#OIP9CNEJ8-H?2NAJL->j(A|I2wGZNwgbRX>vE)w9P=^kh zDyIgQj-AdUuk`K>JKb2) zA1(fK`dvJrF!LgN8~Y+K0}tpSWz)DqJWcB;9gpi7QO1QX3A)U~tW;O)LhK>0r6`}5 zoEN9`(2F!wE&=Iuy)o;Fe`PFZZ z!kf@KILZn0kNpNE^xkhr(fjnIH`lE>@aEbzZ{hn6@8oHWi}bUrl%?ab;!k;Lu|Wp3 z!&v8%0PZH;6~t)TXRYJ7f9Ym5PB$a&Ap&)zQW#mPZ6B%66MK%p%nRor|26t}(c1O* zFIu_Mj4I$eF6j7NMaUjO-_reGed_VuJD+`;usaP#&oIw&qd^FCcnM}$d>GR!3XU2d zXA9Osn%3HC1+zKBvoMuWrGj^(1x3Psd_3^<KY+Tt{3N)%WkNqSryen%|1 z0eT^T+9CQ+tPdR8@qR5_^YhE-nH&3;cX5xQCO`*VSX0%Zoj(xmICgqz-jpA=qU-vV zJXm)N@#>HW-GAOLzuJ}=JirFa%P1Y^j;t&%OG!D!UQ%x0T^CoF9CxLhGdEhir( zOC3!iSoT*(M~xhT`)sB}J1KCXN%x)v1F9u=FL)nZ9P3h65)PI|AHWQ&0MMTjo-9eSLC(b0%O;af zt25TiI$8^bov@vxr)jOhU^8iIwTeq0Z^i?y+c0J95T-1w(}u;cB^(m%^tRpFJAOG! zN0RSC9dy7%Aa`hT9=rM=n)@3j1q5{{kDkGpfEmZy8BJVf7!z-TIFVcDWmy0OhS3nj z96kgXouX=YBu_IEvS9c!j#PnYl%DYeIs%WQPy#Z)UZjVjuevo~`h`CJJLCZbRRAy> ziS|=2`7}(utYIlleL*oxQ#7D7976$)0YJy#!Qmp-STtEH@gT7yT_MB?!zj&cL_b~l z>e9QAzwilNeQ6&xnQoVSl2iZ;Fb0kS5im)*Dq@Yx5x*f4FDUl7{4VTn({ct5=K)xN zS*rzf%q#)3d6>r|TCJh35o;(WiU4F;GldTyWe^`^r&TdHHUdS|H> zfov6F+vPVKtzitK7j`Ny$}GDk_SEb^@*4bqg;^cC-MeXafSQE1m@wGfP8hW*MR12#p5wd^2Ta+A+hKiOhS<*9>PiY8VE3 zc>yY8V$6_?inqmR+9C49k9)@Itc+Hs#}%!1R*o1^g#WcTqa#M(ucR&-DOr?bwRFf~ zbF#AW7b>fQ0TzKee&!DfRds`>1J%fW4Seeox~Vh#oEn5O+rvt@!c+LdGka&x+V}KJ zut(=3HzX_3Rp@S9(Hc2PMe8E)kTgJJte1gC(1bL!j@HnUPG2w60zR)klM9*{m)#S{ z&+ufdlpP*hVRnF~1%a~ZT{+o$y}zioP_h-~6q<(xvb*NgW@ncKYE_29bjFf}zz-EU zinEs#9RvUWsF5RF)zJcC3A~5HA0@>Qmmhv@6WQW2E5>Ek)KzAEo^Yg7G@GwzA88+# z0}+SWoZUIrN%C~+(8)Y3C)zdKAr_5FIk9ZT=BR8tBWX75F!Wcqa zEtVr{d4P)IBC!#IEKE;@@>?9!7Vw{O!SE%0HYT^`j=Hgz^XhTg!)9Chjv5`A@Yrn? zEYo4rty5QKkd!K0QSZv4epTVbJ4Jn~LZ@K&!|20(H?kb7H|%n-99wqB=9xDRzjc(7 z9`^0PxqY+S_ZeTMq=@DByiKCI;@h^E)c?e1xJJsN7>C2o*z0A6al%yb04EJiCWi&o zIw15|Y876cC?T!9Oh?Dp4^h#>5ga+B2muN~J1OWuOO%=Y^J@n_YdQFA&+DtNdVJ+w zn_l>t8Z{l7zBvq8*J~bhdeMdn)NI_V9w?9gj&T7O&Xc|=DWxxqsh@*8hM@d>;y-e}-vX=7sgD#gN z=%|;2LAQ@~Q#`NBsI}QL{jOS%u1FD+X9y6rNGUe0ST|Q3o-E8VaM{_hC^{+0VOhee|{&&(I{ z4RTQ-lNFZ%BQTVXE@TQBt(co9<~7I;w}%#mu$Fj`{EmP%*Jx;GGJAcD$Le(D6fx~Q zJ7M8VZnvQwR_zT|D-6U8h7zF03W;VzjCouyN~sxzZxuzzRy&C)gMZ;FQevwh^&3(R zZZ9bYhY4z!y;}S;{#H^PjgW)~#bubI;Lor_s=Ok~;dFj%24zPw)PPmAblcnFifK1b z8PjpZw7m5@>t5XR=+>1k%UikKXQG$xx?@mA7kFmaj2`{xFI=^CNbg;-(fyV$n>u^L z*ut_|x31cA2pt|?LoFHHvAvATQ-!VcKy!`G+W8~Q%Hd*jD&bdN>V zXx0-?t$gK-5q_0Ge_YxahovLT9LFZrWIitV%ma2y*E`IL?Ji^MB z1bvWkfgCVfGE+LMj?ys(U1l&q=U{+XSZAuq$#G}eB%QHF8841g(U~}5$`>=*EIVQ0 zc4fr)r<|O;FwQC=yMWZ;F2xzLtr05h)4@p^gsVtl$>SI$)43eGJqR#6HE>3>b4+U3 z^g%sJe!b^ZuSF*xefatt{jW#jcRvRMkD+HqP962YMg|VpyywNmgBJ9NW^^kb*EOdo zS~+6=$MeQcAKbNLm;SNY*zWNIz_w>!1U?W1FK-XHbfy{}+ZLmArka2^=;kTGXZ8hx zZic1=KkMgdN}vK>PtYCYeMZ*ZRc09v?G5-fL8nfnHAYRnY&9}Iih@BHte2tSb_au$ zXl7Zz-=`CGqK@+U!W34S$aGk&mH5(7zp1>8mMFeAa7L@usgzbzvOO;-nOuTr%8siEkgQTan79j= zTfUGgbjBL9!A<*II-$l#`?YolO>|z1LGVx%^h1AKhHl#9w^Lq^)~>Z{DUT<3+2F~* zEB`s}%E|&u)LNMyS}J9zb!2#8G|l8(JOk^)9XjUa7gPRlx?TdvDbjvNmkMiT*rYZtH#XCgevOQil$S2x!{7j4w}bnSGs zj^7mwA8CU*xBCwBIcOSTDOZ^|BjumEF*mRWI9YUKX-YFJK;M zea0?W1RSbhuvAtSsTSU4nuK!f$v1N7am{jw^?H1RaT=UdMu14TxHHD3IijU)jcMl7 z;j>F`yY0HCpSS5&p1lN1(KF~gI)e7Y64<-z?GrlOflAiDz4yr{_V49P2ZMV3?juj4 zcYpl@y$WxHJ>VDcalJnI(3=gL-g{^5y0=L#D(39ffdFU+?w0!A9+)4Xlo?s7V|273 zXbR?=^0B$*r{h;lM_ic-4NlpxW#VwQm({aj2pvLQPEKLCO~4wvnAIGuwt5u_TdRu3 zzsv*yvZoMwcqY`FfLszB1FMI+ukKW`YMYapclgUBI&%ImbROoy+>Gn43k^ulqaR(e zsA2WeA&+vpW(ULkcw#L|{PhPq3~z*8;U2h$VJ^K|9ewTOj!jKlFrzaI0IBn91Dz$W zj)4r%)XP?$rv;j}!djkTi~xu_%`R97jA=VLdZtv-02DtRrdU%8sVn!l5RR5b#W3?a zsyg${c& zz4z3~q!2yXrOAsy#3D}d+UD14x@nER6hn)^7udJ-p*?o|Nv5sb#KFOYC%lce8 zb?!v@SrfSDb--XcJYK{mj^5|Hx?cExd^o+J$FJX>#n8hVG=;VAI(TO+q}LEyxd z_k{Z)Y2(u^eSF4XmDOax`F~^5>oG#WEAA&9Fo?Ui!wa#npqZKf>O64usBw;P~Uy?F+-VoCV%B^;catq5h%a zR8U?p2-0lGhbf(ZLJIpw2V?9rD2km4=il}G##TfI$J!%{Il|OntgG2InWe)W(&vIq zM)EqFSkGshv{8_Sw{-+6Lg)gK5ErRZBUW3BW;GCN%XvixBW7L_SF=Ve2CKn}DY72> za*-eI`eB9}IWFSvc)m=IIu-LqGL^75>6ikr5zM2%(p83i_*Avecro-5MuLzJZA<6`)l@ycM zrXq(o=Q)UyY~q9HR?wqMgndpURjZiFu}lQeG@w^1BNu|2se` zkJ%(8lAD`H;g?ZY)DG;O=la!=-6K{#Hnz{3l@_${ck0+!Y;1L`N5uK7E3fy!+ABu= zIP$Vy&#(UV)Av6AZOyWeUwY>0Ewco9X!Cu~%uKwSwdLt&Ui#?THNSoS-lxB=zU9az z%#RuzX4~AuG2PBmbF5UbdkoYn*zJPFO+^9Rl4x;Th{0jEdkh{zd`1J$MnfHh|4Jm@ zkf=X~%PtmMA#wW#L@132LSD@0a=UZ!kKZlb!=60w$fJ8V%nyC(A9YD z5U;Nqc1arp!ca+KzJ^wcXX~&Lr zK!A0CzhRTOYW=ot>*If{Z&|kyK4-7pzcx`d%Pwss8DyT?FC_cTW_gWf zHW|!o%8OhskKNOx*+mm28DORv8EHaVlP0(g!Jyw2s<*f#$>1U+Y}T#4c!F@{lc*GjiyhIF6#D~5*oW*EJKNjY2^HyZJ!E}!$9=E8 zeB38Yh(B&Wy8GjG<)fh%BJozKHNFOVz|@M4iHF|a^XB&)JFKfiY7!BfVVOF_Zw|?3 zxrKAqQeI@T6PLp!SSe=_Q{zYmSab&Q6f*c-q2-drB?Vjo7m*|bGASeA5(WyMq=4hf zJ%v$z*W59l2*gE*bcxhT%*2D1WUECm zaXY5lr5MZxm)RgtS+O|W9)n~yQ3(ttv)$p5LFMaA}W5dVsSZ5O`6kgaW)kc zx!nGMXr~|CB!O zs}rwI9yNDj;ki$Yo^tlFcN*VX{O<3+vQ38%!yN}9Bwk^+$VT5~O((`sSQ5WMYK=c4 zXz{r)v1jdwD)zS*aV*yoBK^wodQ!<#>R9C7Wc+8T=;Dx5Q!RF;cn(>A3A7!=^Hph&_ZxDaaQeA2Ro>pI_xwQl-+VD z=$6qH=ka-|$7+*pR!5B%u=@QrS*A6bEZdB3j}13p8448CHirGE(v*dfVpbR)mGbD$p;&!)T8a*N4rvbaq? z>ZNXv?4h#7ZE4bcscxsu-BeKI2{mb6kCTFAqPC#dOK8aB`PUP{W-{5*QgI@LUABe< zG~U0T4gOeF3>`GM)8nk*4k^cq?j>^SxaTBxjO6J1V`b&a`@a^j#}9AW8u)z-Y*;T?Dk5jsj^$217^u(ZqZy0tE;7;$Q^9fJZ^^_BqOy3JRU-W zZudV;2x}@%h^?}m;j|)D0FU-ReOBm7ELU9(ZAz^cJ)8%&$YRFSY*(8@AO{}Sf1 zBPJIj3+1vIBFMYQAhJ!(R0jgBCe@@`8j#+Qru0r5&^s-y_W)}4H01WFmx^#J7-S~) z>Wu1WH8s*|RWeh|XelXvTeg3VmYtfG;>us6 zxm>nhYc!iHaqsLdHo^5a-LZ%0TFF!Y%&D{(>{vlaJi*8$QfGdl6f=`nuM~uV1|Jv1{(#dFOri%e&Z@{{A!X zV?PWNozJdpJ18p)O9zIt{!}Ab5WDeiS*f4%Z%JxuNndJmn^zEE?HhsJ}8{^k{>cyK0-t*9Xc zq8wCKpOFRlM;H6axyEkvCCCc8)qJrMe`4w>ya0s2*c z?^aeWzcx~|=f#>n%dY8_^`ZaZ)30;{pb2VV3f#@+vgg=?Yz`gw<|lu?Ij~QkD+l)} zAN=B%hmyFB7=30YSQqnB^-QNf#ow%jQ|u`jDT0+|r`T$3?i!0b!`-X}t1?Ds2=x>0R)^$-cLbv4F7A^GlglL z>}$yW^JlQL&&$$T*H!m9t}W^@tuB;))n(BhQ)xgM`NZLr;q(V&rs=8>C<`Rw6qA0S(VsJ=U-qM?}%yc4hSTGvHivj|*VjRL- z7}SQlEAX=%&v7V=Wy+ypsJoeS5M$yV#23Uj-E^ zds@eQ%_!7f9nTa=y!Yt7{RY4fU_=|GjSxAcOcipa!x()l&J`xZ93Fk^(W7sNYz}$! znuNT-AU4+cwI^&&U+aN7w2+3>xDXGozp3oR>pb|Q{o6`}<55PNPj)n64CNu|28$IJgf zX_nyixMJQCSE)lt40*)ejr-z?Wl~^ou$6EfltX{Gkga6z?EUk{U2h%!QptGRG_Y?k zcKNTX*cHb=PgNv2_4=`20t}uAYhWOZgNMekMQjUufXx!S#CIZ9BgdW}=^4(-%I=w&nUliBn3|fCon0LC5}QI4BAS;6gT=0d zQTe|WV*#m;Cgg|zpbT}qQ!h9A(o#J})>~3m>X7tRbE*i1x}VuMkn_tQU}K+uebard z*Wa{GcI`9tA5_h5{&h9G^4K>4S(M!M)4v5$-XF3K{|Wj1Ih5;udij9uk3ZBl;Mqr^ zPM!MvvDctpOp8~I?AxOn{sx2bt}vl%y*yO<3sG>%9JL}d-50Q!1X1+_Oo1lNW)ic~ z#q=hPh;CR@*mD`D6fbj7<|=j2zsDv|>dii8&%&9|tN5JhMUV;AYzKS4 zc=VX!?fYKcSUi40@wPp#p+i!j9?D=a+>|kTR0>Hx6ZIG1O0V^ag0CK`F45)$^+D#4xMSIgBBM~o>264 zCwx$>O)i3$fBCHEsIfhN`@V4O*uoCS@S#C)eh%N1jT~9R&iH~Iq(dtE<+FD7Q9=I! zJs=9%iBrq)n&C`ROsdEv(x?t8sW@wQ^~j2m6(cibORgnX?pdGVu2)~n2xfiBHv)o|MuUfifZeiezH2XE_eYMIy3l}Y^ zDj)UQt1t>i?0cv1;E>za{ML2T%~Pk|bQ6$Y*W5njVBx-fYzy1?+UxQ=t@(po#kF;e!XBMAXEQL&&rc5bk zdC0L`m4;V+qS=RM437?{Mml_WW##Bkw4Ob!vDlfFm4-Bq3X^4U_`QkJD*q?Rw>x%s za>*wlmXkP_y3}>=G>;KP2UO&LmN;!{e*6$S0@edp*G<0U+S}K+wk%oF(z^b(WplN< z`meyuemwMe;D3^IL0;QkjTP1^b318tS0>-w<@1GE;3kGm&`-)G1*KhGx|d11O~{o#(Z2x;yS8IhS)UWD${yaF={-?H z7*S8yEb$I$Bk^J`8X;hz1aUf>G`DC$B-|#=>NYi45pCBm)jRkxikd6GPC51@yuqly z=~=cY%vedeGveesT)4z9-mz{Q7Q8n8Jv(-o{mNd4^)Tq2mEuhk+28*>%)XW4kHHN- zxCVNH29IH#t_f@wdPa#C5qUW|n9#+^Y0<1cQ)7ah<&K1p^PkAkY0={lkd|CQhuNl! zv3lTBYqEMB-1aHt|JgK`x<>A~|GqX;dXxaXxD z4$)~KU^kg1Rg`RY$u1dOPO2E3=ut2kOtxAVsUa?xm*YXd#iL#mhG_H_;D!=&#zKzv z5=VOp`Vr7-qMKb$yoOj5Zx0YlR*>rsO42_lE&?ToN=gomxO2)S{u870dzF3P1nz2f z_}(XWuwSde)WrU*2IbDjw$RINyMjG+#qCSj&9HG%%VIct;o8M;3B!1FGEUqjd?6hm zPLiqG%m$Sh4roL$+K5exwzoUlNwl4-0BaAJea(U;qI!P25F8(i@0vy@lEiXw-YS5fUYR$q;fjnNEIFS6ZDxnwFy4Q^F}PYu<3!Skb?F7#%r6tr{_Q z#LL>5W5-t1P0%K(b(3D!it22&6;cf~zN}Fdq+S)VikG##Say$6TGY?7yT7&Cx!a}I zxO%v3wMBuNp@H4Qf+N#*k4jIM%d&Up5k`ySQ|B zSrTh0)>-m?Nq5Z#z1CUxXNjsA{2OSvd$R=fm_RfZdJB~~t}5%PqCcK-$>WZ zQ0k_dXDai~o^Z)gHbXgQ3O+M-!X?tx|Lz%K@kvdKYc9B8%0(BkCoa5DyZE9h{CE6i z{4=Na!V9NdG$+1m_Uy?QU!?Kh>{0yeB4QvFY?gvPL`oE5CU#zTIfZ19W_9Ff?{u%= z^#@b@DgF$X*{CXG6hV=Ul2Nh<>Cp_xuu#F}uvt7lgGm-cf%H@&_)I>NQwWFwF;z$v zEDonLY_(XznRuT;+=q6)N#I72&_B4!ssAR?_WhskZ+Gmk!<-saPTK2udQC+%+U{t_ z{hLPIpwMzj%FBVAQc21wm6Goz8gYxWr`~rhyK2GRlO!M8vj8R>%V+n(4Cy`m&Aynl zZNc$R*y9tRQV3sj)l{h!(Q#Pj0+=xI-E9l*iKj2Ss_u=tdzZzpnh2E(Zo6mlwzu&c zsFOwr5f}fP$b&V>$b&UWfByd|@&F4RVTc!ki_NZT_mIb(cQT2~Yh6?s)9x>hc+@FX+QQ78X7-V@G=YPpS3bd*8w5@n0>s&b)KL z+%Dv3Ez1?J=JmmI$dzhUfcU}hr9Qz&iR1`)v(t>JAV@yHKP_9z#zX~Mnj;O-6fAZD zz-{#Vd|~(UP$(~KG4dofZhJeyRw9BT$sBTp5cQ|CmBZP}(nAfB6`>`aF^73)^b%^P|D^bNjy;`d1(KlTzk@(tV5|G~OD zr#*T5hD|qIy6A3<8DZy$H*t&YIJJ-l(D31aOrS;)s9EJ+Zl~33bu?*KYPQ=gUd&H* znj4_T68%;;Dq?ioiILJbYCT8Dod6dS^uh6loiW|0k+t#ZhhAv!cwIeAE%5^*AqE$- zr`em^*nIWTh0E?eqs0F$$vYWMG;jxNXDwYXrTFYN}DyE(q_$S zH`{C$jy35tH-ZHZ8Pp;FXF?OD0T7LYXVpfsZohf`osaE)BCSJMfhk)el(UcGFS5s8 z8TWAWLocu)BH8{P`}FAF**Cg&`?v_wMp8`HsuQs8#sN(#A-3F}1%Z^50D5V1iPPcC zbW$UAx^3$}^4?Xw{=DI_zu)o*Teteo)%T!hX8lJW{)wKPFC3GrM^E!#8S2-6 z)R?cAET5Zn#7uf6>92X>0Lo`Pdz{V^1EdgdYYF*8i7h+-j0F5jwk_0LP=ums)@;6H ziP)q>dOGt1xs9pe)IcCLOr1R&z1|`{?eO191VeWmCjhVhqcC#y!hu{C2t%X?n`b%^ zrV_;_xci(lW_17Z(yGF@FKl?6vCn2s1Gsqlt*f4Dg0-Jtx_YyH;viiP14fIzUOa2< z?GN8lIrPk}6|8e-3HnejzaORGCqz8Vea2_2Jq%8pvqdx8Y*x1z2*^Gw1=->7IemUV zR<;NQjW%b1$_-{E8te3zAXe&$I6W+S72{Y6_^EEc4~MaIl8!HzIDgP890u_)+smw} zvUs?)_3&G7iB>Os2AT18;no~$Totc*$o6UwM&0$6%I-Mv$k76{sU1qsKQ9N$GT=;g}Ek+V8L8}phZNzwq!i4m~rQw9! zq~q*0W)GOe!|Z%vrD*Xb#g^%ctKwU4#;116ER7JcLnOq8^q2*kO*9(iX3b)>gJ`i@ zQ9=$$QS3G&;s!eG{}nwvvl^*E(R8p6+2!JQ>^;FJ!j+K8#=v3bqC>W`Jot!t^vrJg z4XKq_NnbT=l5W#XM%i?mvB&~Vn#D+|Oo&}*FjHzb$(ZTKM@iosG2=6tU5rlfgd^M; zmfv8rj>PK@9~K@IR*G*OD-q_#*GR4L^#ZRnMu;??qs8(bTX>HMzzUpoy~jr0qr~gy z;Jo-BdX&bq_r7B_-+c$q3qCsJ_;z@ayVd8y8vWEV_&H+FShdh?!ki1I#c6BOoRo%| zG!ZFA=E{5c>B@TS% z!JTh^|EhX8KDAR^IueTELiPmvpp8BBW!G}L?=y^Vn6E=O{)1`zJ>Twwp1+{Dq9Bv-dF^}pdU zetLb!YC7nuGXbE4eS*i=YvUf^#}^%Se4|L%BKFB2AF!|V%n#{PX(Jg(CXnfB?@F3W z3skkVVc6J)f?>Xb0^cw?DZO5`7M<0k4Js;%xLiSWSs5a?X$Cjxf15_oaESsvA=C=p zQkmSN9i1h5cAJ!yn`fhutXwpgxG#+&CDm=Mfi{ELUz76cpJP!U>=ca@X z^(Yu|Q3#Em-7xIjd*}A;H}Br_M%14-B1lD#?;joy^m6wZF}?D#>v9K9 zEi0dPRwZhZW4exrcZ(sSl5u37s%FzZG=IQ=*mZ+PU6()DouBU>Ovk4-s^-FBYqjby zDRdNGQ@FZNG}6LCN7&(S(Hssrj8(%)-xiIaVe(YT@?-u#NLNoz)xquPY{6;duh(y8nt`zy6~|SONXe@>p>=VUV1LJH!O`IJZF}XXReM%YQ&~Wm{9i zggA)6jih0rSqnStCa_SG$&g}b)>3@ll;AF_-EK-Z6KQ#Rv@>yW`foT(0=dRY%DtyE zdAj*>*}|!p_nwX%mQ@wL@dxxgcFV;HL*}^Gimel?Mo&ZLsz%!&us>iqORunxX^aku&xwBom(d{{6DgZ5RjAZT>_k&dMiKEwEDD7-C{o=v6GgxV zD%omHh8hD#K_keDRS;|qX0y}OK&jKgxyK#<6bW$db>9}+xSV0+AF)=@TC30xj;&_1 z#B6q+@ZjM+Y$+@g_wC(#oZvykrE!zAP$Wpxb^=hWrW!?AY}PEY9Z72b*CaI}Nsa#l zNnD9bWZ<7dleBQx@!Q$Qv~8bqhlXKpa@3tS8(qbGZy=F2k>bfIuWg4|@4Vw8-u zdjDr%zVzxxonJrjwk{aq+(r9#2pRF8-@QOs!liQ~yGeYKM>-G28Y@=Wx(+FEnC#F7 z#apPWS)=X*CC*0CZugq7V!D1H{|8F2RueCcg@lMt?%Ms#ZEXElk2f@R+`}W3uAL6E z;WGB{%Ol{u;~Vg-$nWZqU*I{&5i(N^yCW6|L?Y0nMN*8Brh=lB%qA^G#G-mln$hj{ zB2g}fMV2k3J}oWB5~+duK#e8(P5c`^i!d$b(?nu9LY1D#VF++6q_9tnWtMy8a3;Ys zxU_e93`=6fTqK+cdfbov!m$_ZU}^{Xg;&{^>`m6_h}`~Q-o~6}PdY4tG~xO#qP(?f z`wt#r*6WAv{d^@%g{-@7o;k95#C4Dh=ftmk6N}Ec$zdTp$!@tt*N~7^ zWIF-hbIQKXgPqVKq0iR@_xjGqb2(1p9<>mcm*-H+iUje&;sdK6xn<>-pRi-bv}@Mo zwxqB0q=9YQ`v<>-g%_TClO0~XwRPrmlm7hT=0y`nr~|KjwUhn)(}=5YUUOMj7s+Q= zG5bmju2`gF`X{5Aoy zk)0zx!L2?c)O_#;+yPXfy+J?4%yrS^F=d;m$>I$XBG%jODG=~9n7p|7xFMwk~Z$)w!5Bw==ryQcuhTY2!6m^pG@}DG4=<0 zV$hd$A3pmW2=SFtYy4h;pNh?FmS_+O32{0-K@1UgyFDSl9m~{p)9DEjA}+VvQ~ls+ z{IBTLbBL34>bi5x83WP4W^a9$eRTZAr8hj*`pB-w(mFaQoG%hKB%S^C=6memz}Lpz zyXM|Drip}&giR>T4eT7Lh~MW2tGT9zfD&*9oPm%mG^j}{kAcc?nTYXm- zaS|epP$EJuS}$;2!!)QR-pztr$`#tWj&1fiq?1?nh^`L$7_MwGNdG?Bp|5NK{mj)Z6clpwoM}Gtq-gR?Q^DuUe^)>CB}< zMl}Dlh&$YCKHxi56VDtT(bXYO*G9iob(8j0vzy7!&Z*W|sv{ z<`6TJ|Kc1DO?>~y1czzPT)~|gvUGo&2xMGWhjg2?kvK^JYrcT1Ndu!DnhJ{S-A4wZ zD%yQbn%#{@Mm@M(A$PrACr>v#B(A5)NE#jL%^l9oPT2f7&O#>1;VFG(^?hI!Q4ayrB9Eb{A+Vg#_5=+ zT^%CuUU;M?Sw$vsP6Wu-BQ?L?9P33gPT^!s*Y|V=?*|JZ%Vd?4@Yv2Qy_X+17Z;GU z6HgEzBfB~%W?lKnNc9Y(eT`-`TD%r>lV+hny>yM{b(`!qqfrK%*=7a=&kQ8XOX*HY zo*blW11H&d5~Zdb;Rx`uU>F`ChOY)uoaioZt}vYTJ{kbS|9#ru4{r0G&H z3F&(;V9t*>?~8YJC2PD1va~ii=cNVmqe3q5C{*$hw8KUG{Pjq=AbLF~&fl&sj&WTf z^%runrV8M>Dp|!$=!3ls|#0@w17)nZ+#V9m>g3c7;BHDoi;v*qFupd zt@p5s>?C~N2-t@JmNdWKL-#De{Qs@k2T9J&QF;KhcLsLsG6tNq*#C^l=IHAzhj1<7vGQkp`T(A{GCs zk8`>@#Cx$1K}`uUv7%@j}V1?|Ijg*+zXoNHv%w~@r zqrUmY@B|nELNXzGS2iZEP-i3)eYT>N#lC010DS$^;lr=6?`~W1{oXe}5~`1#0s9Zm zUz%81mC_+WCPNTWnvCu0ke6|NJ&O!cb5M0jS)&E)_Dm=BW*Rb^G-`0mt_FK3WX3$3 z?DTqFanb3i=nf7>^0>1D(`!(F>IP0jTLQ<3cE*6y87?W4mwoukC7XI(`PWBBe|ZO7 zhcB42RYEtIZ95mMirmrZgi%km_o~g!ThY{-N5hBSU2G(Y(RL& z(`nDd8jlGCLJV6&;!8_ok`4pJedA^FE&Fz`u5nA*p^p!Been8JvE!Ut-OjCDy$^|I{FZiqy3-8^(rH{hQNW3R)&=;6GW zt=l~uI!4J!(W2ZDE4mTA+ZmHBU%c_k50ZgxeE9m-$5$-g@c8X2rO0g^?gtHoJaG!!(NOvYx- zWb&rFbbN9LO-Bs3kkQ|0HCm0X)J92iWi1bfvroX0^Q+29p!^AL_{6Hf+_uCB(cD~& zjXT|!ijm09(wH>+lU?lL{`Id3`;%sS(4)X&19J2!UX$iU!{RoxEM9Wl|h>rRkc z_^7a@;<+5@VutDs1r>uq!K;LaCIM=>$<0C2n=~3y{Ph;aqEKfB-Yx_oy@ArO?l#t~ zY>A=am^FHa9`c}b!|iPm=fCxjdt>6c`#)okK74)aW7jX&G_%{=Aj=_RgNrnTTp?GwO@{^QbnvCnt&N>< z5G7}SsWa?EWK1+4IGtgANjqbT@a5h;-?J*VtROo*YcpLryY9Ke@Zj5r{@6iF;%CR- zvb}7Fd+CVd%AD&C!xIFEtE)pUN1zxoQH|(S^2%Wjv!huvo6{)9k5HetQI=h)%TtV) zQS3@_rF7GZn2fk?kysb0xSHS7yEVxFM6a_nCYOKw^79ASX7*IiG*4s=HOv@~6Z++E zK5v74>})p1_%{39qOya=d7n%fg1m0@8Ni0n|al5y7<(>ntzxuuI%{`)v@}2Mh*zsP{ zqkCML(+F<34($hB9r9JYlJN-j48Pw>t%ha|32R2e?9_u&G&&nOVaqvTJm9I@XNiG9 z1oMsYhNVmL-%(at8k4X3WY^BGbg%Dsy3k(v>a*?DNzX3|tOILxPeeQzX(I`dQEEXj z(4+-}MvvW+VG&H!f-tgp0o277umliw)9+7pCQ&yLh3_Olt^nEw@mxXYuLJS)yNkb~ zi^ml!DMR!qsfj(z-ex=5?eGkYh(EdYug}@noo{d6FS41!TH!wS8oLHo!Vnk*PmcR( zF?;8yKiI*4Z0747Z%Zj0HF1pED;Q|*rZ>tfY$btjb$JFYL5nlA94TI&fXw_)6eG|n z!fPdgX!Mg0DHc=y{Pc5n7z&R5?TTw3T($LqYcE_Ru;+y=_~an_71F*v4#oZ6uHF04 zeJ@|X;Gx86C#7;5%|JEV?KV0ricvv?X~dbPZmZdbxD3_?SvHUcm&?Zk$N56x)~w_) z&G*mlaZWfZ63T^?dSLIKAJA*V&bwghjwA5kTb&&n>8QPXj~`mpoS1j%T^-^wj$L&U z9nG52P8~Sol5{j89n1d@bd;9H#AP4vdf@>2aM(X)j^B6)R=o7t=WX!X_U%mNvy4Kn zxQpH(PbZYvNeUUDhCw)>floF09KM%oMF(KTNb8G=`^BJ|mZ}5`Ds{+q4gnU$c$Z|T zGR~}UX_%f=B9s@EO$4UX+3_!hjL`)H)Ph1)Wn&5lRTcKC?l0|M$ASC#&g&d2vCuEE?hY-L3k86mXT#EH%ISYHAWCuP1tyh)WtFWq?RTfsMg$1fA zJqv^5yZRL%c|H5$-^!l7Dv1Co;x1Y#PvumWs~LR!O{!>msTPYD)Phn2puA{Roet}Z z1x5Pkmn7YmnB18d_>&2ul{nb!$DXR%v#_d4dT%A0)wgFsWhIx408a67x<$T+$8Mjc zp5gcTeI~No?G74ut0u4SfaX=*R;%)fW<~5>D^;oU6O9^4bWbw(5hLD0ZzaM4c-&(} zG`So(W-NBHFc0Sv~+9{5-7dA=(eI>^DbW%>$$M@8UkGn zl0f0g2>A5@z8LRyp}#)49c)!03;lCr(?h2FEyn)vA2bEl6Obm=Se zE~@M?a=;+5Jz{PSwOKa zNEE1%N)k{%v_b#Pn%`#dw?Y3+1w}SbwTZK0g9>6Gl)pAW-%XNacD6ykjV?bRN9Jf} z$)`F)eCO>xWci6!TvX={C!Ji$>=GP)S^17VBsNbNGH~I-#+xs=aPfTM;^M&u>GI~1 z=><17T(R!@E3zAh_CqA`?P3cVtX$8t35IMCNgGtDR!zi-ClVfsumk!KBUBPI^xJGw z1=)o36%+|=Fkpjhb-dqQ&b$iCnP5^blWp$ZLs{^x5Drwn3lG zcEKW9Uf?|@CKYi)zm4E9Cg#)oCA>-=!tDgAV!Xa3mOx1OBoKlAn?*uw&ela2$7&Xd zYsb`m0wwIDl_Lf~9wNJDi7UxQ`2pf3<(n`GPM_dzsMv&=aQZtd^xa5I5_af_cJ40e z)}A>;hMUKMa|o716%fqu-B>nYXx*ftYNa}U!A&joLrdlKyqROi)b%(oYt@2=JA*i~ zMsX$iOSy?SNGchzo!FsliG7GHD6NGOZ{(Z6Ekw$W3j zpmfs27V?#H6LFHt?Zgaao2>@BU92{8lI&1HfEb{X5F8P+0ckQuJ4@(pv_H5ld1lV%11(wPWkTjxg6}>@f z@mt!U|3)pv|14AxH}u(PAdYACUR5)w2C&sSj5R?+8}!?3G^V>9NC#r@BHUxLXcw=g z!Gk6IdZcx*wC0y|8rAxrOSb=NI;0v`8qQvoN!A!J}denwveszeZ)>;TTP0U2v*?*P>DvYxN|@sqCn+FVw908CCbBsx^K9} ziP__gB>Ug$D~Q!BS|ntjo8pr59aBayft){2A<$JP-b@};iin#G-D)zZHpw7yxtI-Y z&}Wm|DLD1nDnQ>YZmUf;+uESt1_MR`m$WZ^yO`^CGR_kpAKvdA5^$0s`obb;6cL~bEwGDx*4s?9l6L7a9)FpJMZA0j}d z>M|3B*lI;el^RMwprR6t`cXMZfFU9b62gh&v5abs4twSXvZsDW{Q`?9NS4dw7DfcZ z*5?%T$Obf~b{WMM@`v0)JjDGRu|XeVg31koIl7xv;S^Kckp$>q1d(=p{#beWA5T2C zVv0=`WZTs1o_ctNX0QmJI=O{0c5lF9_20`tc-We92G$R{f&K(f@|-Q}W`R;7MB7Of zo|%{(_2hkxfphyF8CWO zq=Bv*1X(4n@twcF75;?(TE+4n2);|z-=*X2Mb?L z$vd#V!|Am)x@WBuaml^H+$SgXDu3!JpUs|BeC{fn91a6%>2y$1YE+A*LGlu#OUM54IwPQ7C{p#&b9&wIj;Gi@1 zxASM6XZxlwFC%mGlagiXz{f`$eWeo7IPf;#D(mOFEijxMOY2> z;`78t`lv>OfY}%0G-(HzaUu{a7&a-21%YnDJ_jb{gXnE zIeuq)-W5*@t+N*x?sVJ}N9zmR2EU2V6CW9|+2`{Jo;I+m7ELgiC9J$WPBT0UX5s+D z7GfeMy9@gi#YBO~SgZu)$?b5lK=g!A5wgO`&(~!CJiZEk%Np>C(Br}YC!;zo1s-;R zWyS&{5)Vq^YyGKPhtXtY6QF8 z<=91t+y<5{UT;vexRMJZ5&wdzH&`R7+oza_fKd>n%j=2o;V3CDr(Ry#TUanUz29|5 z{(LHJEg^CGfx()N|y#^|IqFVvVtY8d{)&6@@Y5*3VNHVvVoD9HWAo$*hh7-|Cf ztX+t(Cmg*qa$!7s!c>uw4HK|$Gc*g+#GS-L3O37F&#?`x+cc-g3?j9(aXNe!osQjD zjv`@Y;*c6>uq!X`-cN;TpN!fNEzQn5E7SSu&KYKfnoZNio$;qWaIExd5)XLv);qT9xsgU_3?5kfa63H;JMoF1#a+-QR}(Yoq56nyd|joo^oAy@M(a?S5O_l) z+!*ZGQ^2n?@%ED9B6n#?Y41oWPbB|&+O&!D=Zm}MjU7Gzl5yka{+l+H6K$GLZ?hBI zOk4}SSzb>J+9uAQH)+~5ao5~&W9QBvJ(iD&&SZZaEf#uxa$X#<6?S;E&U zUI{Fl6vc1u_BJGz4_<~#d-L)s$+{U{tQreBPv#97b?x}^6J|HATQXQ^{b1C^!v+>> zCAajrY}!Q^sAI9}fzS${C3;5PRPWgh3NeF;7{RjDVnK`s5f{eEFb#a+CUzxWx6m6Y z?VYFVU%+!X8v&x@5ulAm6&(S1n$%LML2F@Du%g^KLYPGs0JqVBs$bNBzVa z3=i&Mud~-tp0mjZ;+cuIeWFA&1)xv^1Y}An5dltaTvr^r+Xg7b|HMJZBf`&d8~sdJ z!s_-wA1L3$rV=2N$v5J7@g*XYh-w!kpt2e zuueuxi*pkQK(<2(0kmwRj)8Zub=O}nw!j=*i*vA$mCYO)~1S^1-o=ykjX&Q zBEZGcVO`fsLWy?^GM7rRH33`G{c?%+SUOyU@~-G2!est^pK21|fF_8PO1$z5={AlC zlhNMLMOGpOQ`um_-gT>>V2?-FAWdw%(5LGzK|z|1t|0<>wCfLO5({~jdxq+u!nqoi z>n#rI@cx^wfh?xDL zqh*|=l0(EBDNSUp^Cpq3@0TvEUy45ILO3Xl6y_5}UfuPZfV$lRVV+P)_Yn)}qgpH$ zBY@ecV#ID6*i@5d1l&wzYSwk|XfVp106I8T307+;E^?Q1SR!8PMp^J>M&4Ox6!t5* zvfnfs+FG|TwJB}UaO9_wt`!zb?+`N?uKEawl*&fTBcO`GEPXBgDhX0s*B7d{XVFlJ z7)=yJS)mjJDw!n%cJJi>k!V3(@->ceo|1=&;^lrtSUh9Lj+r}m%-FGG#twRP=8hdR zpVQwEfk<$puwL9noFqspR3BI!F41XM^cN;45$!gUxC45V05L&t;)!;C*6G+&;@DGy z*z3{u-6dGd3#ebuz2%lA8gsiTwrMfJ?yIy#fxh+~T& zf+Rw;JxZcnVi;}`7KXCWG`NAzKaN3!-QQP8P&H8zw-2K%&}chaQ}8)7Vkg|0!cewk z+BCQURdu zO_fQb$z-$Qcz1TEnpG7SEEimFAKngPjtiL1>g{bWgmZg4bkDdRUVo3laTr5vD%f@$}OjPs7Ws zKfJsJZeU9iV@h9=o+U=oN6nzJC@4m=*jpK-j8_&ZjmqtctO%lP5Ckv)iK1rdc)#6M zQ3p}SXP@qN@e(%?Cpxvj8KW=Vg_YyreCTl(-48?WV*8=TslAk`smWfbY*?+_rwEM- z%vV4;sSB*7>v+HY|B?13@KIFB|F7PA-90@snIn^#+~?%r9?0Y%Akcs&K}2qF#DK^R z>T<~`a)tXo0vMv4DyIqo45)~TxE{!^>w?F+ySlFE?xOCl>)(Uv{6F=&XEFhFb$|HL zF!M28_3G8Ds&7^GtLtfanrQ6$qK>Yk>*{cLk8wuKbrfl-O%&8!`0xeFdW9hY)m%gH zXFVS(*rmE~DSa*G`4-YnOQI43*Qg+I)L59il0-4G{1m}TkI7i_$XI#ptyLu}- zfs*M-48ASoR;?A2xq^V4Kf_@k2QFDQ$*@$0nKA~ZaE?MHy@OIJwjzj@)ezO$!m27X z!?8O8r2yuJj2#FSP+2Eg^*3S32>necilwZQR$9C%F^O}@g6AQ!+2>tn3$J-{Hk3lP zu@AL+wee_n5g*(Dl`$()NDnQaN{Y(a35JI6*Ai@!V7dfjBq*1LNVHS}jA>DBs93n` zxbbHTBa0C>5lRis3TF(Y>u}HC91&her^HZFNe|5*UBL+k+Zj9|!w?ymOiu_oDwJ9X z2?WXlL43ZutPDwAvoe%fbfd-&gxdeqK?PlhOM6InvT3nWvydKIo~Z|%ouIHqf^pJJ zi4K;4N+4FOte3^&f>nVZqj@dKCqFV}IWat(N6WhgLoa4zZ~PzCp_ zNdrfSU27&!GNK9%LyQ^@7$?+_pAEl3KdA`6L5pL!P)WI#*R+QmW{Z8>jkGt*RK_5W zvZ!KWQ+Lp9uD2Q82+@e87%&b-Lc2P4Q9p@PcY+34&FKEm+TVcBo(J)$lb=+Cr_goH zo?E4r?va7k(gT#vrK>0%Phl8^TPZ}Bxj}{{GRzQq$|Xywu!0diMUfhM8mp#6oRO$( z6JwUS_1iiWF!G{($HaT6kv*14k(LfzwlGSWw2ANGlrG>fjl*aTLpZ|eKp{SP1gfe@ z4^Ln8@L9*vb#>CTiXVpY$M75kqI%g)%U#a4F={AhzBuaZrJWL;DlL-esO!&ovja|q zmf#UbCG9^BDot_zp0-9hc`;fVT+a7#Dl^ka&f?oR<&uI@UN6H!p{8gj=Tb;r>?AO849skw%i zYU#TrsF7fi1T!Vr&%n@i#xb=MvAs=F>|m0@eQc)L#tL6!rTF}msAl)q+E>W1ogd_M z1&28tTpW!oi)uQTsL*l@GuF#YWzmx_730yUc(-P+7-aKYS&v zZui4i+!aG#B_p(s<{4Tf!vPL#Hb?Dd2^@s=%Ar7GHdYmpl+bL058=F0JWK8s{H$f1@4qa5hm=31>#N-UFQ7=)*c z2$|fNnW_;cD^bZrRIkenm;i0+=(_L}K1?a65cLMa_D7!lp{cwhP*PFly=gl1 z!)O2S2cAm+ldvMzR!FYql$k^ol}i%mW>|n1LI#ChGx_wpv!MX8@vNWJkN1a%C`cK4 z!z7rEl8!u0C4IHFn-r)}hAQ-N34^#53}!JnLC*;Z2xuZP*`grqjE1PevxV2{Ui6H+ z0SX{0^QU{mb|VNX(%+l}vm=pk69>Ju7SAegD0GGb;}kHM!2B(Oq6lTmX_UAbhTM?8 zu;NkbkLhPB1$DZPPSih~1hd00(r(SyU!mn)P~cfXc)y5ZZ$#U$sXw3cTK#=v-B7`5 z^zSFZ?5n?HZDT20u)Fe#3?ImFL59aU9Hy|HBET0Y2hAy#(oK^pBIxFB%hYg?qRU;V zUp9#Hx4xYOvw!%Mr{jR)R(Hltx!oa^B+T?Z9)`Xzy5wwUKh zC7rd5Jqj#RHY#+Q5;eL}GSRJfT|)-#Eb7~JNE7i(ovyI%DE$Z>3khl|du7-p0+a^yHi^{ME*FBzHtP6J(-XwB{&|i0`#*n>2h6)KR60G3+Io(cSj@ap_QwCOpOP zRT0V-(no7E$dI&!!+r|2Xgx%ZgbP~L3`$rzIx-ryBV~a=RaFdKBWy6JHiN}udc!jx zi8YVbZ`TKN@dgtX0x=(}kltF`%@RCdMiKo#^C`W&8u zq^HnzUo@lLS8HQfk80T<|G3l)Zy@4{k{9azljMceF;5UVPXnr860{RY1L>DTcRDUs z{wfJ*-p7B*NoszM8j!*=h)0ijYv*vHfjF9WcZycNQ&`98GK>+>W0wT$C0HU3Rfz;2 zaCnWw7XCP=GdXOgu>2Z*zedk*EcTc`*PxLBRj>=eJgew>_0w;!K_lI?oZS*^kYIrX zZ*X{m!)9&*lAm>~V|BcL6$}t`dW2^h`K=}?bl3a>#?FwJ%4oh7(~g}7Q>?Zr!*X_cYT8_i_uNeSlDbrdNYb{bU*LocE>#o9mW zFd~$r8a)wi78-rEmE_93+KIi1h$FIAl?>F{?=lFlm)RhBv`inRPg1&$!n~-nmwp)w zQ68dNJrVANLIY{I+Fnhjli<7NTHRY~xl!IN(`p$WkfD|z;B@8xNFU)D*kRzKV$Fh?XOB$HN}*T5HyQh5&t zx`408y~8Zih$_s&Mx9Lz%;-N6ZmE-81y}w2Zj?;^{{?3poe0Be7bzn=r60wSB+;h{ zy!)C0n@y;3j=?hw4l!88wlg}9L5NLY)POZc)Q>xlx)*^QKNWi${wo%DT-0kOLIYG_ zV%HyjxDWjxf;%GXQ^_!`WV*6hp<@-eMTGy$Bp55w9Xr@ljILrZkHNJpMfv#&2o#A{ zqJepXUOy3@F|usM;Wzrx4@4rinS3T_+T#kWR{$$O^j-yqD$rVi&B)VIi4KzBFoU@$ ztqJUZgec}8p`}sYcI&Shyg>yU8vd@5ejw6sF}ztwh1TLV8P>~C%{OzpgFZ#+DvF5m zm!p*?!dvv;8(YK|>dCjz56lcneiTEOX<5toR!$F5pzG)kO7EldDE+U9MMTZ+2x2)p z5gO|Fsqm%S=?BfC)i#CG{@R_e zMn6gC;@&lJGf)e>sQ`UWfoEmdA|t%NgNnXuwDK~;?jUZWs-FxU%-m8`gC5i0 zG`K+AgIqisu4Bt$xv-G_THx<8{7HuMGVGRNw2TD?mMOz#X|IG8Z3FaT;EK|)L^6p+ z#o_ws2`zn$F0Io)9t3sbxFZ8^UtPi{8d5Oh)qKq*tZbCRje~GJ8U7r$o zD^RL{s$giVMo|-&48RmsQUP7AK}xuQCfpl=*I0+C!vb;4DiHT(J}$EA4WuR+&_pKYQODL;!v=@;3_7&;cxR`ZFNW}qCwCy03?TYL@X#eKaF@d`N2m&fR} zh4j)|7-*nehKyU0_M}AzDB3|3f+m0Co=`gj9Prv#*sGF?6&F~%Zrt>sZ z3+|LLV!BzLE?3J;(4HactEEyb8o;BC3*|ot4KzhAM)VW~+gN`z2A(Fky_{7 zB3@o*94A^XW5m2sf)c4*8Y|6^_%rkp=J2BUM2cYU7!~>@hMc#4Shn~-g(ma#;FN`^*q8{5YuqwMfsqkPn& zNZn!dAgC1l56~MJUbYmCI?xifGm`8JG4?g=-!ciJ8UxaOGqugep;SVE5k^u47-!XvWDft$3FVSX`mgWf&ac z;zq(?{)RB0tv)MPB|F+@8oQ%C^naK7|o`$ zY9`Kzzy~o$1YJlZ{}clZDkmd&yT5OED1V#)PHnnj{ec*+^ak|@zgd6yQonl|oWkC` zt1T;e>zHS$XvNkmFj#>S1@;Q-HC?Kf=sJcWIGe|yHyg$#F%}J&n5;&SL5xXp-?$oJ zYC>L9tn#J42zkNgy1!gq+npEce*<4Lj{0kX>B?S(-l7av#wbk0Cjt+wXa)v;0T;r* zM5CoQ^v4Yj5NKaL(V2G)e@+uo7a|f?$rSCD^$JW?7Adr?0v-jJtiThZ8oE?eLk}?! zGNSjfc?=6xMzLfVA_Fy|sn^Qqni9NWKFlA@d2G;68azS;ldk^Il@~`aL4-%lKDMov zVI$woX*Gu#JbG@cFiMX`bX2l%#-h&t$M&gNH20+b@-%oBD(ZM?*wvL6o5;W)MFz!M z+8#lWMPsliEHFyL!DhyPgjgl6(X3-MOoL~IhwsQc$K)g|WTe(4yTPG(9<_741}D1L92>qkxFe9%lO)T`86rJ#Yp> z!JH=LKO?OfvAt1!e_P*Suz|&w@RaT>S>I>$Ff{SfTWeK~XKsc9O&Ou6R{t`1a-Aj{ z)DfG6rxdbr;VL#SR>l^j{y4U=RLgXev`3`8_l9{;RfpgP z51K~Lpu8j8C?u#QpA_-(5bWB+mHyY@$~?Qmn}(B$4NK(zuxFn@(9_?ZIDiv#mND(ZD7MKG|@h#V{RhEY(XH?Wsu zWrtR`wSjt;$S_nGsOi{}xEGVr|3?hHLw~zBY=R20{>iW>T*uEE`(|ouXD#b<37(bS zkmyPNIj6HR|MN2y)v�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

DnD*sXKU<$Qm`v5d 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�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%0Ag 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

WYc;@Gp5U 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®#N#@M$8`{o>mVN2 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

kK8Wiu-i3Y7IUCzayqF)Cs#M3L^ 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Ɍ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 literal 0 HcmV?d00001 diff --git a/frontend/src/resources/fonts/SegoeSL.ttf b/frontend/src/resources/fonts/SegoeSL.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a276476a75cf4d1613e7251fce840b61ec676acc GIT binary patch literal 854140 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 P7XJ;if;b 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 kiqXlZ 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≠as@lx04Zygp$s)RX<0 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 z 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%0DHZ3Qt|1n)x4@4wBenqa8K}wjKz4evc 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

K_=ub*G#Ta@@! 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%0DGkkFShR#xUnRdgjGu6r1 z%6&I}_KQyN#E+x9QAw0QeIgQsCh_MuPLcArCrLxb7)?k$ud@*>Ct~O{TZeUgRZp;G@2aEAd^;WQ8 zrXpX*GBr*YfQPXRewD}C;1z|f$<9UE{<|wbfDT;weyiW|F&+oY2C>#>@Yf^X$jqh2A%aD zOMU&lT>vBj5iFJd?|YF7#~$?`k4Ul@8UM?U@E5*q!<-~47^~MI!Q+!)5kL*NYh}mU zSrV2FD$B6XW-ziMlH>kI$3&9Wi<=7kn=ZEGPW4u@HW01BT3!BFl}1}R?$cBUt;Aal z1#zjr?b{3Z;Pk~NaHv9WgVm$*8(5~sP5y%EMiWbyuK>JMzVt`z&#?WF1x3?cmQjhI zBn~7DQJ)}2b&HvhEfC_@25e!QuF{3h+R&Cc1^F|N^tJA4v2s&0gzk>Ltuv3UH^IBH z^0JNP2hK-6_s^VIJ3$V!2P1ZstJP)TOUl&Em!^Zps=<*#MPzvONxtP>AXgg8)yNXiV~GpAqQDmiW>KS#<-OPuq4=`zKcMcdb6S)L z4FSXMgsuvWrqU(ii|BH8cJA2yOgw{%yD0D2_wYhzog>t4qvhn4miIkJF70B%Cn(jT#JVh3XrQjmBrWP&l`CS5|t z#X|Om6*gdk)vRlKA+c|!dWO%hZ{6GB7G|XKoE-VeS#C45=YH`H6MSCmbL8CH`vTT~@im%D@_ zXNgi<$~Xi9M@Eg`9|!{tML)-WjC={PKz(Ig zn=Ic593?g*3|ysn3oiC!$N0k|?R(oD{IpE5r(;)B!|raMoUl8EnG@*FKXAW1JRGc_ z4)fs``yZbxP>0)lyOo$OMQ>kMu~w2--#co{P}i3i7}&49vGjh|zB-w;_h>WV=AF@7 z*w>LSp%e%rNsI&u4G|HLo$xQRVTUlHAw+(N(0=jlBl~;bMQZng&+maC?5oI^pc{}x zFjDSj8$o!JA_9lB+{}}SNuuo8<=GqTK09P9+;BML>I%vh0m!;4>?IV z9sE?DQs5Xo-Bx*YVUu0k)YznZ<30D-P@mD%H@wkTFkGt4U@N)rK`_AJ#ok8Vfv6B< zgpG;OBZ&f`By0uz<*|1-W*V5+w2S8(2p1H6jl8q84@m+egCk1#a=~niRk);rV2BjG zg|j2?fV~^x_}*a>M))x75JWWDkudVkx33)NeHVA@whnM>arA3!6n!=j1V)M|QAvfe zrjcM=x=5YwOMG_WSxGi{s<)Id`+0 zCoA7nS+}(s#XkIZ2*Pee-hq+;iUsI?f(8GMS&UfW&z3g8FGrNfJKtWIK-wS-G#I^w z{VnplI0k>hH39B33RQ;Q;MMvK%`{l7_b9V&iwmeyU?RCpRmBYgSC!FF?GpH>E;Iwx zD{xgCjnyteO$jUUIbccw6^!iBER+^Z*6MUMlm3dW>PGkVLC0Wwm4IKSBey|G~vx|h$fzePTY?L`t3hj%4<42SWq zqp`d-d=e>c&Y>K58O;w(wqm2LG4Z5~P1E_&{GQ|)LTgYF$|Xdcg{ zVcr^e`SN0`!O*gJ`Q^a};LJD1OszXFf4^_fXIGlru6??5|L-q1HeUWc1jAX;uW*-< zr_nn6zn?iv)JMlG9VtMPip_zF8HX`yS}<3Y8X{js=jjC50&k16YN|xy9KSNq|Kyxs zTsVC6`Qc2lOqPvL!Ry+UEyqSn^;CWHwzAUEkcgb)H*l4h|H%MwJOVO9Ze*#ea;2_; zLsbn|HWybu5?Okx?~Nyq4LD&e79;VB(~`~2bBFIQJ^#tUTu0|Z$k-ZGWkDEdB>ELn zfG>gup;^?1U6#wh_D5}<#0`vta#B|Ce5_J_IaZkv8Gy6Un+*Qz>X{TL-G$OLJW0$| zmsWM=>l$k+q!bP*C6g(kaU5oKc7{mnmZ=>T>l{>$xiCi^GO>AWp2jO=?Glk)A{rv*B+Ebb4|IlblYInK}5Pbe*?Qa(g>dC#EpDOeU8} z;!23v_qA?OCQoakP)r(LTl-CZxU^KL^c&a=U4at*bKOi>n5)l}i5QyFe&-#82f~y* zCX>fx7>iA~E~Pt%n|kL}o`i%?Ci7`bol2YmVW8URS4azrzE~8aVZwz(S{92}0_S850^cG?z&?rKBN#NtGcq1r84xncO7Ra?RC z>pt49AxW%au~kCSv>)xh{SHp&>+y?r@4EeSoNm`{k-x`xXaDM*z|dFGuW)bRWoTU> zuxwXU(Pv`g!Rh$Pf+<*ulobw5048L_8c6~^kA0phHE~lL!kUntq3r+8UMzygV?}Pa zN2qG=>QI-B6$({tr$Jyi7eCr-Sl?!E8Oq!PACHc z#=)}TFB0Mb-WJ-BpNagVO{1D~1qGMGHz)-`?rC+J2~ZP|6@#;@C{k9oQ>C(FKH`YU zNy=bb|A?t-Ls&_{rO8SQj^4#zjCT$NiHvQ&AL z%(P5XL0NT;bPr0Zv^1=sY2Ao9G+C`)K`LhK3>2;aTiLgMKq+-g(nxXozb3D#sVpgA zE8C2UQjbLJDpTr%u+-wFZx#o=h71UX{uccT_X6GtRV5}zEvp(cNYVpQ5*u-ZD&0g- ze))ziyI+Z_1q_naiRrnArB>Z{39)5v@oN#r)E z2vnop&8Mk^WTw)>NfTyD#YC=x&eia;S=L%-(Le#8?`?Lg{ZPgX?bQ}${+55+ z$PNVkX8t1bmbbImp_XKmrKZrpiFJ{8v~E#`*kq&79R>j@In)6^}`Emw$2^K*tDdA4eEO%B)Fp0CMQk@3lE=phTQ4_5DLGkP{$ z>CKz!tK+i*#igS1Ep-|TkhJ$hVJtuerhz${@vi4YXaQ$kW8q=2RE8m>v(^{rd07IB zU+ih~t66Egh{}SlowdHMkd~cRICr(Ve5zE6Jyd&kD(D+NbpQSNlaGzril)z8IIXRJ z>G>=3h5EV;yN(t<3UhCc*Pi?-ItS=$>>~0sItc}|Yb?h3I4L8-}V4l#C=Il`l-s;B!ch?!{wgg5I_~K3{7l|AEa-W@_nFZH|&i#AXRO zM2wK#QdrqaBBvqvY#J>oiI|DWUH_0z>y>1C#~ys?{fYc8F^QL!#-L`IYe(#Rq8~lK zJtPfuI2~JO2BnceGCoD&tI5epPRjt2rVgIReu6v=%`f{2-~x$+V8^5twY7IoIx)&K z9*tjlyzzkE-L!lXHr7yUjl~JDAJL?Gvzf}4a_AXM65hTrrn`ctMc>$N(w$D9YK%aQYmC>rIk&T*d$87MZqPfBM3pj#wSxaT;yp*sC{&k z(|GXG<5!N4drIz&royrta zS~81C0_(m2H)2m9PeY}#i41oS8XYbaX%rgNVZ?VX;^Wo1K(I$jZc}(kL7aJC&TBnn~wor_mYo zbX+a9peV>V`RaI1?U{Gx38YkPGQ~e>pBn=KoYM6zZFxyF20bN}fKAFs#bc5QS<=y( ziH`@RWdVD33Lzs&6>2j>FtjoH8uk_BX|#eNCadBuWqeLZqPhgY2b)0;Pi)FgY_8g} z6@^+ND2OItZYmbR5+%ZpbE6(b#Z1NA7GHoVV`ai{29boPh?5a~3PB}hDeyQXDHUOv z3HC;hz%zKLy!Yx>~T5Yv#%v8O)YvG~cAmRH}|xgayyvI(RVn84&0 zNu?!Hd%syEB6I0lI?F31D3jCDHPut0v+wP2_Iwvkxjg&Jr}wv`w&7Ux8|>?`Ni=Z0 zBN3=Lz+AE51s5Dt{D^SqCSxW-!V`&o@~)r*qMS-4VqfPK42HXVl2eljyd1W|D#%Qt ztHeo68c&!;Rmp{n%p<$)Ek1E_N^%;7PZjF88P=}7)ocfcsi$GHveI%2n{^vsTnu6! zz7hHMTIqAon7X<;4Z%(~OWl01-7q?{JwKh9nZo5#EX}ifkNN-S8-2rkiMhXjoxXCN zo!oTx-A&v6^xXQa)Z~nGhJ=wyC8p238~Hto5);H;K%NF!;FzqAGi}VLM&~Uo_Y~rj zVx<+vY zU&A3-3|U~x7i7z1qKv{;3pptROpUl1eGNN+JbiZ-dTfe25V;nR=8qp^V^663?Jvj{_D$|Vz zwO3xD7w>&#sgbVllaDMhj2TQQucMPBF?mRPOfA8kaUqLW@I(iGY8OMacIE5JM zc8qfI7Unq1C&A}NPmEvRlW~);=Rmz&QnlE+e**hKZt>n%r?$VjzmUP) z!V%_8oNH}3x!w~5(KW}?dfbONCZvva4ac)v38!WGDX1$F6Q^sNnK08rSEaW8aIdxe z*w44Pdg{yN<=+{vKRcO^OUX>bNL*zqZKX>%vo;lhb%V@>y8rQQO9vkK>cO&P0*kaq zt8;FCZ8yfuFD?mj)TMU5&{3{ko2!H2rls|`7jaC0IwDyGbCG0TK_sD6Dnso!icdyx=JtMUKH0hx2dZR^f}z^lQ!Al#Hebt{^WE6^Nf7-#7i4# zd8M_gu4|j}i*~=bVeAI>{W&6soGPncY;Bt>yh&~COUr`ogI7EwM3oKm3>B(<$|rd5v+vwYO-K&ZblHhj;i33 z({$}Mc@=sZek-13t@oAGsna;dP>z4P(Uii{m5rA<+KcUEs=K(!yzxLGRp6<&=XegtMxRJtU7%8QoZoop zxqi9t(C^NN4*Bud3Oiqn{O5Nfw=VwmY7N)umx>$)C7EUkG`Y9#BNHYFbeh7-7g%*F z3f&%Tu;otF8v5UW`8VLgS77y9gA6cc0h|y%f@7k7$g*|=D~xHq|NVr(zR_VEM*M#v zDYE=}y`|nG_!rNJ%vVr#b_CfRxt69^8%xbBzOOfc-SMxT(l)J2oawMrWxyJPDG-EU zaS%j{Sz{uLg-Em-sYD``CemPK*c4j0rO$M_Y{&X4&OvU~&|>LHb6-m_9qaD>@K-;r znTW#4aPsEOk-tX%7Tr+u(_ekq3%<2tX+7?B91}&|i#uV!8byO_CQEEUa*WAi6vR=$ zmTez00r^cHRj`4&hj(6xlt@JT@}1d!t^&vto%8i34!c~jL`UC0#XFj5$- z{po}>ywFjm*?xp;}#N;{5Dp z#aNJc^hD%+R{liY?c)s>_KudRdLH|a&Gi@dj+Udp6>J@EE09(l__vZyt z%f6Dpn9|y!SUTZW(`2AFLq?;@*o38b32b?yN`p$3vkCA{p|f10u5gP)t_lqZ$Mz%PmFUDeGP+-;C!>$+BzR_4b|sn-PuT0^2v6iPOng7lGSbkJN7lPuSFk(el3A5 z$Gi+sZ9o)ASLG6kJe9z@c>q-N;y;BvXtgRCF9HzM@sJd5CCW?;@i`Xw2Fz{b1GkWR z50V|?dG5yK;upRa7n`H^J3UF_L!(zStUh3U)5SuVR{)E@PT; zy^;P_xa!Vhur~5GxY^j~m$+Y{_Xh(1dqwp?4Eqj^xFm@PMy#nd@>I+1!n)=OUg?lzMFxp7LrXkzTfGjZAY@S(5dDs)0YcZFf`R$?7Gv^;}9&Ubd{V=~M9Apo- zU4P_iHCN5evb4+v@1Zv6f&LtM6uonP&?}PA!7-+>qVr#49z(oH8~EWs@~pj4xcfcb zL7Ay(HW=94ZW9LjLt>vVUt*mv5B4an&B|Qcwqoa&vfw&p^^6f_3Y_IyO@&J&a#yG| z%A1?F3==H~gJW3a(T#BSlr>1k#wxG2?jm({A*HZ^@as;%^(wP^Y( zw@~D+f^cwl^cL<-{8oqu86p2&Undq!i%Ux|@&YjbTH2HTvFO0PS+wnm?(QeI6-`fl zmbwRLYX(J*%{F9r(ic`^T#MD(vU#a~U|8fT zSLc+w!~>WQ?%`n=dOCUwR-tpTAR56)czT+S{N!5;6pcbqgo7QAeitLnqCyZP%VJ|( z5CkP*X8loe~rHW zZxDn#i~Im1%~Hf($DEG-pJ)_vNB@A}(9e70um2SSI%0kFbNHvo(@+M)g4%N(1Z+_* zJvEiXB4^;ql;Q>`qqrf93`39(YKIO(*P$OkzlD<0uw;k~W#Thg#SNJ_d{S`(o&eXE2Lxtvhho9pH~?%#OB>1q@hsBm4kdiM)lbJD4jbU<1qR#wUdu z@DP*{YJkXON~nRHnaK(@Wa7{jX1}h2mj7A1JYcrpUEZp{8v70(S?3CeU5TIA1DGQ{ zJ;w$yrEYgA2J`sJzrZ{X%;WG!C|wn~WGE>q3tN<%nuITINXp27iW@SPR|C_v%s&wA z1fyPu7AsL{6f|69gg+WOeq!MA#~)utY?w3ahfiasKfZMNV+e*yv5&*8=-w0G9RS}Q zLccq7?{{n0ezz5FEof{k7=Q5W2BaI)5)8Ir2Jhdv;eHJ8V_t|f;@&~dKolrHS47M# z%0iH|ED}_dn??l8K!nq8;eaYZop;{A@6J879oWnr{Lg+%Ti_qP4|92`139xak6D0V=t`s! z`#$m&#DiS9JO(8|#p5%mP#`yhL1nWEp$2v~4Wd%8si6ieJH~$A7z3g-UA=^OpasAs z0gVm{IgA7&8eYY|f90Yu#1RGfJ?(P~^UrVHire(t#~*=z`F1v8JB@ns45s0+ORqk> z^eXbzQrG|G>^s1ts?vtfxn=J3nR};~BvUdo>62tK34uT^Z89W76@d#xk&bi(q!UUg ziUI}@LQ{|?AOaR-0l|%60Z~`M?urEqh@!i$By;jV=iZqlpnl(e|MRSCn#tSy`<~a| zdlNuVh}`rzx*mAIIKG|BTB-1uZ6>qXWFz&CQ~-=*6|YZoI2|#;1b{Incq}eUOaLz6 zvN=f`C)30PSrTNfv@{sZW|Le+2|ql>12f0XIs*J z=}{50r~rT~GsCBIIiiBgEYn0=@WL|DfQ2H7RsydiPHafuz=rhk1}vOr%JiqG;RH~u z`LL`v9AfdyJjAD0AcHRcYvTUOUI!oCstaMBOTF&K2w^L55m2*11F~Lc3s+hpFHFZ{u4_6uzO^K+;rNLlGR5+909}wHX ztvPFYxG23O48yR{ELJpV(xK~QNqzs*51t?L(vZQ&?)?pY0WG&s7r1Bf?t%SJ4@5V} z;@Ol8?%c9!TR8M^ZpJ6CHhf4>Fh3oJeAz3Cv(90@xlk(k6r~2~U<4mZw?muFDxng= zr~s>#jtW{1ipW@<&NqWsK6xzvBh+=oTZfIN-^KCflOkB^+mK&{|#cqhq^LL z%3D8NIWpv>A@>}<_a^!T+HRssSXZ~NU;mQ>&~^CG97+ZcZ(I9JR{nx4_mwx_{EVPs zu@|<>$e3T8br}$#qWLO0g5Cr;-~?THH^XS1daK0%D|s#Jbn0V*oWht;97(BS0+rwk zR~qC>Tfnzp4~0TOEQba8kj2KR#S(LX$WqSbRP)e_0Jd zQF5aSg?s<~ZH;lB!?1iypW)>8rt!phZx0I_VB&IpWJN|AOA+!pBC9qc=4TnVIpIWd9O1LK={m_Eb6r z6WHCy7Xm86@)i^8@hVv_L3mjumF{*KoCcH52wVnNR8SebUM8I<4JJk#6_|wZhwSG? zxxqr8U`$~!B${6dH@oD`{uH$~Y!Y$vT)p~N%p#{fHfr3234hJAe~6eta2NpMS1JS) zpoq5qV|+fdPCDP-nR; zDs`6IouyV;Tr!%YO{9yA30W?` uFGM9_i%SZ#HIZz%7iNOdq0xX_@PZ+X<=fMt@ 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 literal 0 HcmV?d00001 diff --git a/frontend/src/resources/img/admin.png b/frontend/src/resources/img/admin.png new file mode 100644 index 0000000000000000000000000000000000000000..875b0957dc3845fa9a995b45084500ab80907604 GIT binary patch literal 811 zcmV+`1JwM9P)9D_JApHRcFg&TuL7}4}Qhv$!*XLev7dypvvYzSDd_@ zk~Y;C7y&O*$;mjl=Zb-4;C=!-{{Y%md%7%`0N)bWJ*8=09gH+5VF!3@Oq+Rm23~<# z&_$TV8HbX?m8Z24s6k^YXw7&wO>HSmIYbPS(7{m^@g*f#ASyQovH&BUIJHVUs|N2Zdd{*fvROq7F7TuI1STyDZwTYPn)&NuzQ>}cz_!Td z9lH6UXBr)1)`PR$fM71sm4vkhJx9{7yB$w9Ia;4nq`(5BeqsD>#A-Y1p4Hs#~ pszVfoejOJ%z$%qsEnEHyFaSi1)ojjfx*Y%j002ovPDHLkV1kh_ZzBKz literal 0 HcmV?d00001 diff --git a/frontend/src/resources/img/country-flags.jpg b/frontend/src/resources/img/country-flags.jpg new file mode 100644 index 0000000000000000000000000000000000000000..84041f1c772bc12a851003fe97b756db204cd3bb GIT binary patch literal 31142 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
K!f*aLxmjSD34xU{j4te1 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 literal 0 HcmV?d00001 diff --git a/frontend/src/resources/img/create.png b/frontend/src/resources/img/create.png new file mode 100644 index 0000000000000000000000000000000000000000..6acd9d0948a44b841504b245481aed3cc936e020 GIT binary patch literal 673 zcmV;S0$%-zP)j>aPeA0rk-&cDb`E&Jxb|0{ zpwEdMkp1GY!GUfkHYYrif%;Tj65WDce3l#5zrZ8#gLKdVQg!wRFa}OQA=e3Sgy#={ zEm00EYwoF0<_KOD_Y|^w4P6&Gp#HZ5q5pIs7Ch^!+8T)C5}f3~^Y3IFpeRg&E^yE5 z)MOSwj*ZRV!MS0Lu5=AIveoc4%mb=P8~(C!1>Zrw?s-0NqO(s>skgeLDd5^>9asm= zJUgsKu-9451Js6(LAHxIIAm1^(hTL-4W*C+$tK1&3!764&{2U9>pIS5ReAsHP?Iph0FJ zv6}a&UT>J#MkJ#kY{#d9@SEvb!hv%c2j(p7J`0AFkLqDjgIdw`iV)jhzz*mKhcb8dTYv!o&s(shu$euH00000NkvXX Hu0mjf{K6@> literal 0 HcmV?d00001 diff --git a/frontend/src/resources/img/icons/dots-six-vertical.svg b/frontend/src/resources/img/icons/dots-six-vertical.svg new file mode 100644 index 0000000..988e44a --- /dev/null +++ b/frontend/src/resources/img/icons/dots-six-vertical.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/frontend/src/resources/img/icons/settings-sm.svg b/frontend/src/resources/img/icons/settings-sm.svg new file mode 100644 index 0000000..ea2cc07 --- /dev/null +++ b/frontend/src/resources/img/icons/settings-sm.svg @@ -0,0 +1,3 @@ + + + diff --git a/frontend/src/resources/img/logo-full.png b/frontend/src/resources/img/logo-full.png new file mode 100644 index 0000000000000000000000000000000000000000..18e0bca732c52607698ba2be3deb924799469f86 GIT binary patch literal 5801 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 literal 0 HcmV?d00001 diff --git a/frontend/src/resources/img/logo.png b/frontend/src/resources/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..d6435c4fb208d53101c550da515ff45ac8cb2ad0 GIT binary patch literal 4924 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 literal 0 HcmV?d00001 diff --git a/frontend/src/resources/template/app/component/ConfigExecuteBtn.html b/frontend/src/resources/template/app/component/ConfigExecuteBtn.html new file mode 100644 index 0000000..22b3e99 --- /dev/null +++ b/frontend/src/resources/template/app/component/ConfigExecuteBtn.html @@ -0,0 +1,9 @@ +

+ +
diff --git a/frontend/src/resources/template/app/component/access_denied.html b/frontend/src/resources/template/app/component/access_denied.html new file mode 100644 index 0000000..c7db7c2 --- /dev/null +++ b/frontend/src/resources/template/app/component/access_denied.html @@ -0,0 +1,4 @@ +
+
403
+
ミ頒セムムびσソ ミキミーミソムミオム禍オミス
+
\ No newline at end of file diff --git a/frontend/src/resources/template/app/component/admin_menu.html b/frontend/src/resources/template/app/component/admin_menu.html new file mode 100644 index 0000000..21be41a --- /dev/null +++ b/frontend/src/resources/template/app/component/admin_menu.html @@ -0,0 +1,29 @@ + diff --git a/frontend/src/resources/template/app/component/app_footer.html b/frontend/src/resources/template/app/component/app_footer.html new file mode 100644 index 0000000..041c050 --- /dev/null +++ b/frontend/src/resources/template/app/component/app_footer.html @@ -0,0 +1,10 @@ +
diff --git a/frontend/src/resources/template/app/component/app_header.html b/frontend/src/resources/template/app/component/app_header.html new file mode 100644 index 0000000..62feaf5 --- /dev/null +++ b/frontend/src/resources/template/app/component/app_header.html @@ -0,0 +1,9 @@ + diff --git a/frontend/src/resources/template/app/component/application_version.html b/frontend/src/resources/template/app/component/application_version.html new file mode 100644 index 0000000..61be19b --- /dev/null +++ b/frontend/src/resources/template/app/component/application_version.html @@ -0,0 +1 @@ +ミ漬オムムミクム: {{applicationVersion}} \ No newline at end of file diff --git a/frontend/src/resources/template/app/component/confirm-user-email.html b/frontend/src/resources/template/app/component/confirm-user-email.html new file mode 100644 index 0000000..65a5d1d --- /dev/null +++ b/frontend/src/resources/template/app/component/confirm-user-email.html @@ -0,0 +1,27 @@ +
+ +
+
+

ミ渙セミエムひイミオムミカミエミオミスミクミオ ミソミセムムび

+ +
+ ミ渙セミエムひイミオムミカミエミオミスミクミオ... +
+
+
+ ミ籍エムミオム ム災サミオミコムびミセミスミスミセミケ ミソミセムムび ムτミソミオム威スミセ ミソミセミエムひイミオムミカミエミオミス +
+
+
+
{{ errorMessage }}
+
+ + +
+
+
diff --git a/frontend/src/resources/template/app/component/log_out.html b/frontend/src/resources/template/app/component/log_out.html new file mode 100644 index 0000000..9fc2683 --- /dev/null +++ b/frontend/src/resources/template/app/component/log_out.html @@ -0,0 +1,9 @@ + +
+ + +
\ No newline at end of file diff --git a/frontend/src/resources/template/app/component/login.html b/frontend/src/resources/template/app/component/login.html new file mode 100644 index 0000000..109c8b9 --- /dev/null +++ b/frontend/src/resources/template/app/component/login.html @@ -0,0 +1,51 @@ + diff --git a/frontend/src/resources/template/app/component/new_password.html b/frontend/src/resources/template/app/component/new_password.html new file mode 100644 index 0000000..4b31576 --- /dev/null +++ b/frontend/src/resources/template/app/component/new_password.html @@ -0,0 +1,103 @@ + diff --git a/frontend/src/resources/template/app/component/progress-indication.html b/frontend/src/resources/template/app/component/progress-indication.html new file mode 100644 index 0000000..95a901e --- /dev/null +++ b/frontend/src/resources/template/app/component/progress-indication.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/frontend/src/resources/template/app/component/register.html b/frontend/src/resources/template/app/component/register.html new file mode 100644 index 0000000..42cae8c --- /dev/null +++ b/frontend/src/resources/template/app/component/register.html @@ -0,0 +1,121 @@ + diff --git a/frontend/src/resources/template/app/component/reset_password.html b/frontend/src/resources/template/app/component/reset_password.html new file mode 100644 index 0000000..b2bb752 --- /dev/null +++ b/frontend/src/resources/template/app/component/reset_password.html @@ -0,0 +1,45 @@ + diff --git a/frontend/src/resources/template/preview/preview.html b/frontend/src/resources/template/preview/preview.html new file mode 100644 index 0000000..dd079b2 --- /dev/null +++ b/frontend/src/resources/template/preview/preview.html @@ -0,0 +1,3 @@ +
+ +
\ No newline at end of file diff --git a/frontend/src/resources/template/preview/preview_container.html b/frontend/src/resources/template/preview/preview_container.html new file mode 100644 index 0000000..90c6b64 --- /dev/null +++ b/frontend/src/resources/template/preview/preview_container.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/src/resources/template/webbpm/home.html b/frontend/src/resources/template/webbpm/home.html new file mode 100644 index 0000000..50fb0d6 --- /dev/null +++ b/frontend/src/resources/template/webbpm/home.html @@ -0,0 +1,6 @@ +
+
+
+
+
+
\ No newline at end of file diff --git a/frontend/src/resources/template/webbpm/page.html b/frontend/src/resources/template/webbpm/page.html new file mode 100644 index 0000000..5d28658 --- /dev/null +++ b/frontend/src/resources/template/webbpm/page.html @@ -0,0 +1 @@ +
\ No newline at end of file diff --git a/frontend/src/resources/template/webbpm/webbpm.html b/frontend/src/resources/template/webbpm/webbpm.html new file mode 100644 index 0000000..720b940 --- /dev/null +++ b/frontend/src/resources/template/webbpm/webbpm.html @@ -0,0 +1,12 @@ +
+ + + +
+
+ +
+
+ + +
diff --git a/frontend/src/ts/ervu/ConfigExecuteBtn.ts b/frontend/src/ts/ervu/ConfigExecuteBtn.ts new file mode 100644 index 0000000..c547602 --- /dev/null +++ b/frontend/src/ts/ervu/ConfigExecuteBtn.ts @@ -0,0 +1,47 @@ +import {ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef} from "@angular/core"; +import {AbstractButton, NotNull, ObjectRef, TextArea} from "@webbpm/base-package"; +import {ConfigExecutorRpcService} from "../generated/rpc/ConfigExecutorRpcService"; + +/** + * @author: a.petrov + */ +@Component({ + moduleId: module.id, + selector: 'config-execute-button-component', + templateUrl: './../../../src/resources/template/app/component/ConfigExecuteBtn.html', + changeDetection: ChangeDetectionStrategy.OnPush +}) +export class ConfigExecuteBtn extends AbstractButton { + + @ObjectRef() + @NotNull() + public ervuIdField: TextArea; + @NotNull() + public methodPath: string; + private script: ConfigExecutorRpcService; + + constructor(el: ElementRef, cd: ChangeDetectorRef) { + super(el, cd); + } + + initialize() { + super.initialize(); + this.script = this.getScript(ConfigExecutorRpcService) + } + + doClickActions(): Promise { + const value = this.ervuIdField.getValue(); + if (value && this.methodPath.trim().length !== 0) { + const ids = value.replace(/[{}]/g, '') + .split(',') + .map(id => id.trim().replace(/"/g, '')); + + return this.script.callConfigExecutor(this.methodPath, ids, true) + .catch(error => Promise.reject(error)); + } + } + + getFocusElement(): HTMLInputElement { + return this.el.nativeElement.querySelector('button'); + } +} diff --git a/frontend/src/ts/ervu/ExportDataBtn.ts b/frontend/src/ts/ervu/ExportDataBtn.ts new file mode 100644 index 0000000..93235e0 --- /dev/null +++ b/frontend/src/ts/ervu/ExportDataBtn.ts @@ -0,0 +1,69 @@ +import {ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef} from "@angular/core"; +import { + AbstractButton, + ComboBox, + FileModel, + FileUtils, + MessagesService, + NotNull, + ObjectRef, + TextArea +} from "@webbpm/base-package"; +import {ExportDataRpcService} from "../generated/rpc/ExportDataRpcService"; +import {ExportDataRequest} from "../generated/dto/ExportDataRequest"; + +/** + * @author: kochetkov + */ +@Component({ + moduleId: module.id, + selector: 'export-data-button-component', + templateUrl: './../../../src/resources/template/app/component/ConfigExecuteBtn.html', + changeDetection: ChangeDetectionStrategy.OnPush + }) +export class ExportDataBtn extends AbstractButton { + + @ObjectRef() + @NotNull() + public dataTypeField: ComboBox; + + @ObjectRef() + @NotNull() + public ervuIdsField: TextArea; + + private rpc: ExportDataRpcService; + private messagesService: MessagesService; + + constructor(el: ElementRef, cd: ChangeDetectorRef) { + super(el, cd); + } + + initialize() { + super.initialize(); + this.rpc = this.getScript(ExportDataRpcService); + this.messagesService = this.getScript(MessagesService); + } + + doClickActions(): Promise { + const type = this.dataTypeField.getValue(); + const value = this.ervuIdsField.getValue(); + + const ids = value == null ? value : value.replace(/[{}]/g, '') + .split(',') + .map(id => id.trim().replace(/"/g, '')); + + let exportDataRequest = new ExportDataRequest(); + exportDataRequest.ids = ids; + exportDataRequest.type = type; + return this.rpc.exportData(exportDataRequest) + .then((data: FileModel) => { + FileUtils.downloadFile(data.fileName, data.fileContent); + }).catch(reason => { + return this.messagesService.error(reason); + }); + } + + getFocusElement(): HTMLInputElement { + return this.el.nativeElement.querySelector('button'); + } +} diff --git a/frontend/src/ts/main.aot.ts b/frontend/src/ts/main.aot.ts new file mode 100644 index 0000000..ddd43fd --- /dev/null +++ b/frontend/src/ts/main.aot.ts @@ -0,0 +1,8 @@ +import "../../src/resources/css/style.css"; +import {platformBrowser} from '@angular/platform-browser'; +import {enableProdMode} from "@angular/core"; +import {WebbpmModuleNgFactory} from "./modules/webbpm/webbpm.module.ngfactory"; + +window['dev_mode'] = false; +enableProdMode(); +platformBrowser().bootstrapModuleFactory(WebbpmModuleNgFactory); \ No newline at end of file diff --git a/frontend/src/ts/main.ts b/frontend/src/ts/main.ts new file mode 100644 index 0000000..d53c69a --- /dev/null +++ b/frontend/src/ts/main.ts @@ -0,0 +1,7 @@ +import {platformBrowserDynamic} from "@angular/platform-browser-dynamic"; +import {enableProdMode} from "@angular/core"; +import {WebbpmModule} from "./modules/webbpm/webbpm.module"; + +window['dev_mode'] = true; +enableProdMode(); +platformBrowserDynamic().bootstrapModule(WebbpmModule); diff --git a/frontend/src/ts/modules/app/app-routing.module.ts b/frontend/src/ts/modules/app/app-routing.module.ts new file mode 100644 index 0000000..ec9eda8 --- /dev/null +++ b/frontend/src/ts/modules/app/app-routing.module.ts @@ -0,0 +1,47 @@ +import {NgModule} from "@angular/core"; +import {RouterModule, Routes} from "@angular/router"; +import {AccessDeniedComponent} from "./component/access-denied.component"; +import {LoginComponent} from "./component/login.component"; +import {AuthenticationGuard, ConfirmExitGuard, SignedInGuard} from "@webbpm/base-package"; +import {RegisterComponent} from "./component/register.component"; +import {ConfirmUserEmailComponent} from "./component/confirm-user-email.component"; +import {ResetPasswordComponent} from "./component/reset-password.component"; +import {NewPasswordComponent} from "./component/new-password.component"; + +const appRoutes: Routes = [ + { + path: 'login', + component: LoginComponent, + canActivate: [SignedInGuard] + }, + { + path: 'access-denied', + component: AccessDeniedComponent, + canActivate: [AuthenticationGuard, ConfirmExitGuard] + }, + { + path: 'registration', + component: RegisterComponent, + canActivate: [SignedInGuard] + }, + { + path: 'confirm', + component: ConfirmUserEmailComponent + }, + { + path: 'reset-password', + component: ResetPasswordComponent + }, + { + path: 'new-password', + component: NewPasswordComponent + }, +]; + +@NgModule({ + imports: [RouterModule.forChild(appRoutes)], + exports: [RouterModule] +}) +export class AppRoutingModule { + +} diff --git a/frontend/src/ts/modules/app/app.module.ts b/frontend/src/ts/modules/app/app.module.ts new file mode 100644 index 0000000..dff16f0 --- /dev/null +++ b/frontend/src/ts/modules/app/app.module.ts @@ -0,0 +1,76 @@ +import {forwardRef, NgModule} from "@angular/core"; +import {NgbModule} from "@ng-bootstrap/ng-bootstrap"; +import {CommonModule, registerLocaleData} from "@angular/common"; +import localeRu from '@angular/common/locales/ru'; +import {FormsModule} from "@angular/forms"; +import {AgGridModule} from "ag-grid-angular"; +import { + BpmnModule, + ComponentsModule, + CoreModule, + ProgressIndicationService, + SecurityModule +} from "@webbpm/base-package"; +import {AdminMenuComponent} from "./component/admin-menu.component"; +import {AppHeaderComponent} from "./component/app-header.component"; +import {AppFooterComponent} from "./component/app-footer.component"; +import {LogOutComponent} from "./component/logout.component"; +import {LoginComponent} from "./component/login.component"; +import {AccessDeniedComponent} from "./component/access-denied.component"; +import {ApplicationVersionComponent} from "./component/application-version.component"; +import {RouterModule} from "@angular/router"; +import {RegisterComponent} from "./component/register.component"; +import {ConfirmUserEmailComponent} from "./component/confirm-user-email.component"; +import {InternationalPhoneNumberModule} from "ngx-international-phone-number"; +import {ResetPasswordComponent} from "./component/reset-password.component"; +import {NewPasswordComponent} from "./component/new-password.component"; +import {AppProgressIndicationComponent} from "./component/app-progress-indication.component"; +import {AppProgressIndicationService} from "./service/app-progress-indication.service"; +import {ConfigExecuteBtn} from "../../ervu/ConfigExecuteBtn"; +import {ExportDataBtn} from "../../ervu/ExportDataBtn"; + +registerLocaleData(localeRu); +export const DIRECTIVES = [ + forwardRef(() => AppHeaderComponent), + forwardRef(() => AppFooterComponent), + forwardRef(() => AdminMenuComponent), + forwardRef(() => ApplicationVersionComponent), + forwardRef(() => LogOutComponent), + forwardRef(() => LoginComponent), + forwardRef(() => AccessDeniedComponent), + forwardRef(() => RegisterComponent), + forwardRef(() => ConfirmUserEmailComponent), + forwardRef(() => ResetPasswordComponent), + forwardRef(() => NewPasswordComponent), + forwardRef(() => AppProgressIndicationComponent), + forwardRef(() => ConfigExecuteBtn), + forwardRef(() => ExportDataBtn) +]; + +@NgModule({ + imports: [ + CommonModule, + FormsModule, + CoreModule, + NgbModule, + BpmnModule, + SecurityModule, + ComponentsModule, + AgGridModule, + RouterModule, + InternationalPhoneNumberModule + ], + declarations: [ + DIRECTIVES + ], + exports: [ + DIRECTIVES + ], + providers: [ + { provide: ProgressIndicationService, useClass: AppProgressIndicationService } + ], + bootstrap: [], + entryComponents: [AppProgressIndicationComponent] + }) +export class AppModule { +} diff --git a/frontend/src/ts/modules/app/component/access-denied.component.ts b/frontend/src/ts/modules/app/component/access-denied.component.ts new file mode 100644 index 0000000..269011b --- /dev/null +++ b/frontend/src/ts/modules/app/component/access-denied.component.ts @@ -0,0 +1,11 @@ +import {ChangeDetectionStrategy, Component} from "@angular/core"; + +@Component({ + moduleId: module.id, + selector: "access-denied", + templateUrl: "../../../../../src/resources/template/app/component/access_denied.html", + changeDetection: ChangeDetectionStrategy.OnPush +}) +export class AccessDeniedComponent { + +} \ No newline at end of file diff --git a/frontend/src/ts/modules/app/component/admin-menu.component.ts b/frontend/src/ts/modules/app/component/admin-menu.component.ts new file mode 100644 index 0000000..8113091 --- /dev/null +++ b/frontend/src/ts/modules/app/component/admin-menu.component.ts @@ -0,0 +1,23 @@ +import {ChangeDetectionStrategy, Component, Input} from "@angular/core"; +import {UserService, Session} from "@webbpm/base-package"; +import {NgbDropdownConfig, Placement} from "@ng-bootstrap/ng-bootstrap"; +import {Observable} from "rxjs"; + +@Component({ + moduleId: module.id, + selector: 'admin-menu', + templateUrl: '../../../../../src/resources/template/app/component/admin_menu.html', + providers: [NgbDropdownConfig], + changeDetection: ChangeDetectionStrategy.OnPush +}) +export class AdminMenuComponent { + + @Input() + public placement: Placement = 'bottom'; + public currentSession: Observable; + + constructor(protected userService: UserService, public config: NgbDropdownConfig) { + this.config.placement = this.placement; + this.currentSession = this.userService.getCurrentSession(); + } +} diff --git a/frontend/src/ts/modules/app/component/app-footer.component.ts b/frontend/src/ts/modules/app/component/app-footer.component.ts new file mode 100644 index 0000000..6378798 --- /dev/null +++ b/frontend/src/ts/modules/app/component/app-footer.component.ts @@ -0,0 +1,9 @@ +import {Component} from "@angular/core"; + +@Component({ + moduleId: module.id, + selector: "app-footer", + templateUrl: "../../../../../src/resources/template/app/component/app_footer.html" +}) +export class AppFooterComponent { +} diff --git a/frontend/src/ts/modules/app/component/app-header.component.ts b/frontend/src/ts/modules/app/component/app-header.component.ts new file mode 100644 index 0000000..75c4f24 --- /dev/null +++ b/frontend/src/ts/modules/app/component/app-header.component.ts @@ -0,0 +1,20 @@ +import {ChangeDetectionStrategy, Component} from "@angular/core"; +import {Router} from "@angular/router"; +import {UserService, Session} from "@webbpm/base-package"; +import {Observable} from "rxjs"; + +@Component({ + moduleId: module.id, + selector: "app-header", + templateUrl: "../../../../../src/resources/template/app/component/app_header.html", + changeDetection: ChangeDetectionStrategy.OnPush +}) +export class AppHeaderComponent { + + public currentSession: Observable; + + constructor(protected userService: UserService, + protected router: Router) { + this.currentSession = this.userService.getCurrentSession(); + } +} diff --git a/frontend/src/ts/modules/app/component/app-progress-indication.component.ts b/frontend/src/ts/modules/app/component/app-progress-indication.component.ts new file mode 100644 index 0000000..006fdb7 --- /dev/null +++ b/frontend/src/ts/modules/app/component/app-progress-indication.component.ts @@ -0,0 +1,11 @@ +import {ChangeDetectionStrategy, Component} from "@angular/core"; + +@Component({ + moduleId: module.id, + changeDetection: ChangeDetectionStrategy.OnPush, + selector: 'progress-indication-dialog-content', + templateUrl: '../../../../../src/resources/template/app/component/progress-indication.html' +}) +export class AppProgressIndicationComponent { + +} \ No newline at end of file diff --git a/frontend/src/ts/modules/app/component/application-version.component.ts b/frontend/src/ts/modules/app/component/application-version.component.ts new file mode 100644 index 0000000..a10da22 --- /dev/null +++ b/frontend/src/ts/modules/app/component/application-version.component.ts @@ -0,0 +1,24 @@ +import {ChangeDetectionStrategy, ChangeDetectorRef, Component, Input} from "@angular/core"; +import {HttpClient} from "@angular/common/http"; + +@Component({ + moduleId: module.id, + selector: "application-version", + templateUrl: "../../../../../src/resources/template/app/component/application_version.html", + changeDetection: ChangeDetectionStrategy.OnPush +}) +export class ApplicationVersionComponent { + @Input() + public applicationVersion: string; + + constructor(private httpClient: HttpClient, private cd: ChangeDetectorRef) { + this.loadAppVersion(); //TODO: check version url + } + + private loadAppVersion() { + this.httpClient.get("version").toPromise().then((version: any) => { + this.applicationVersion = version.number; + this.cd.markForCheck(); + }) + } +} diff --git a/frontend/src/ts/modules/app/component/confirm-user-email.component.ts b/frontend/src/ts/modules/app/component/confirm-user-email.component.ts new file mode 100644 index 0000000..92c34b1 --- /dev/null +++ b/frontend/src/ts/modules/app/component/confirm-user-email.component.ts @@ -0,0 +1,51 @@ +import {ActivatedRoute, Router} from "@angular/router"; +import {ChangeDetectionStrategy, ChangeDetectorRef, Component, Input} from "@angular/core"; +import {Session, UserService} from "@webbpm/base-package"; +import {Observable} from "rxjs"; + +enum VerificationStatus { + VERIFYING = "VERIFYING", + VERIFIED = "VERIFIED", + FAILED = "FAILED" +} + +@Component({ + moduleId: module.id, + selector: "confirm", + changeDetection: ChangeDetectionStrategy.OnPush, + templateUrl: "../../../../../src/resources/template/app/component/confirm-user-email.html" +}) +export class ConfirmUserEmailComponent { + public verificationStatus = VerificationStatus.VERIFYING; + public currentSession: Observable; + + @Input() + public errorMessage: string; + + constructor(private router: Router, private userService: UserService, + private route: ActivatedRoute, private cd: ChangeDetectorRef) { + this.currentSession = this.userService.getCurrentSession(); + } + + ngOnInit() { + const link: string = this.route.snapshot.queryParamMap.get("link"); + // remove link from url to prevent http referer leakage + this.router.navigate([], { relativeTo: this.route, replaceUrl: true }); + this.userService.confirm( + link, + (reason) => { + this.verificationStatus = VerificationStatus.FAILED; + if (reason.status === 404) { + this.errorMessage = 'ミ。ムム巾サミコミー ミスミオミエミオミケムムひイミクムひオミサム糊スミー. ミ「ムミオミアムσオムびム ミソミセミイムひセムミスミーム ムミオミウミクムムびミームミクム.'; + } + else { + this.errorMessage = 'ミ湲ミセミクミキミセム威サミー ミセム威クミアミコミー, ミセミアムミームひクムひオムム ミイ ムミサムσカミアム ムひオムミスミクムミオムミコミセミケ ミソミセミエミエミオムミカミコミク!'; + } + this.cd.markForCheck(); + }) + .then(() => { + this.verificationStatus = VerificationStatus.VERIFIED; + this.cd.markForCheck(); + }); + } +} diff --git a/frontend/src/ts/modules/app/component/login.component.ts b/frontend/src/ts/modules/app/component/login.component.ts new file mode 100644 index 0000000..6e790b2 --- /dev/null +++ b/frontend/src/ts/modules/app/component/login.component.ts @@ -0,0 +1,68 @@ +import {Component, Input} from "@angular/core"; +import {ActivatedRoute, Router} from "@angular/router"; +import {UserService, Credentials} from "@webbpm/base-package"; + +@Component({ + moduleId: module.id, + selector: "login", + templateUrl: "../../../../../src/resources/template/app/component/login.html" +}) +export class LoginComponent { + + @Input() + public username: string; + + @Input() + public password: string; + public passwordType: boolean; + + @Input() + public errorMessage: string; + + @Input() + public confirmationSent: boolean; + + constructor(private router: Router, private userService: UserService, + private route: ActivatedRoute) { + } + + ngOnInit() { + this.confirmationSent = this.route.snapshot.queryParamMap.get('confirmationSent') === 'true'; + this.router.navigate([], { relativeTo: this.route, replaceUrl: true }); + } + + public login(): void { + let credentials: Credentials = new Credentials(); + credentials.username = this.username; + credentials.password = this.password; + + this.userService.login(credentials, "Password") + .then(() => this.router.navigateByUrl("/"), + (reason: any) => { + switch (reason.status) { + case 401: { + this.errorMessage = "ミ斷オミソムミーミイミクミサム糊スム巾ケ ミサミセミウミクミス ミクミサミク ミソミームミセミサム"; + break; + } + case 404: { + this.errorMessage = "ミ湲ミクミサミセミカミオミスミクミオ ムムひームムびσオム. ミ渙セミカミーミサムσケムムひー, ミソミセミエミセミカミエミクムひオ..."; + break; + } + default: { + this.errorMessage = + "ミ湲ミセミクミキミセム威サミー ミスミオミクミキミイミオムムひスミーム ミセム威クミアミコミー, ミセミアムミームひクムひオムム ミイ ムミサムσカミアム ムひオムミスミクムミオムミコミセミケ ミソミセミエミエミオムミカミコミク!"; + break; + } + } + } + ); + } + + public goToRegister(): void { + this.router.navigateByUrl("/register"); + } + + togglePasswordType(): void { + this.passwordType = !this.passwordType; + } +} diff --git a/frontend/src/ts/modules/app/component/logout.component.ts b/frontend/src/ts/modules/app/component/logout.component.ts new file mode 100644 index 0000000..9cc3081 --- /dev/null +++ b/frontend/src/ts/modules/app/component/logout.component.ts @@ -0,0 +1,37 @@ +import {Component} from "@angular/core"; +import {UserService, Session, AuthenticationMethodService} from "@webbpm/base-package"; +import {Observable} from "rxjs"; + +@Component({ + moduleId: module.id, + selector: "[log-out]", + templateUrl: "../../../../../src/resources/template/app/component/log_out.html" +}) +export class LogOutComponent { + + public currentSession: Observable; + + constructor(private userService: UserService, private authenticationMethodService: AuthenticationMethodService) { + this.currentSession = userService.getCurrentSession(); + } + + public logout(): void { + this.userService.logout(); + } + + public getCurrentUserName(): string { + return this.userService.getCurrentUserName(); + } + + public getFullUserName(): string { + return this.userService.getFullUserName(); + } + + public isLogoutButtonVisible(): boolean { + return this.authenticationMethodService.isFormAuth(); + } + + public getOrgUnitName(): string { + return this.userService.getOrgUnitName(); + } +} \ No newline at end of file diff --git a/frontend/src/ts/modules/app/component/new-password.component.ts b/frontend/src/ts/modules/app/component/new-password.component.ts new file mode 100644 index 0000000..ac7c434 --- /dev/null +++ b/frontend/src/ts/modules/app/component/new-password.component.ts @@ -0,0 +1,79 @@ +import {ActivatedRoute, Router} from "@angular/router"; +import {Component, Input} from "@angular/core"; +import {Session, UserPasswordResetRequestDto, UserService} from "@webbpm/base-package"; +import {Observable} from "rxjs"; + +@Component({ + moduleId: module.id, + selector: "newPassword", + templateUrl: "../../../../../src/resources/template/app/component/new_password.html" + }) +export class NewPasswordComponent { + public currentSession: Observable; + + private token: string; + + @Input() + public password: string; + public passwordType: boolean; + + @Input() + public confirmPassword: string; + public confirmPasswordType: boolean; + + @Input() + public errorMessage: string; + + constructor(private router: Router, private userService: UserService, + private route: ActivatedRoute) { + this.currentSession = this.userService.getCurrentSession(); + } + + ngOnInit() { + this.token = this.route.snapshot.queryParamMap.get("token"); + + this.router.navigate([], {relativeTo: this.route, replaceUrl: true}); + + if (this.token == undefined || this.token === '') { + this.errorMessage = 'ミ。ムム巾サミコミー ミスミオミエミオミケムムひイミクムひオミサム糊スミー. ミ「ムミオミアムσオムびム ミソミセミイムひセムミクムび ミイミセムムムひーミスミセミイミサミオミスミクミオ ミソミームミセミサム.'; + return; + } + } + + public changePassword(): void { + let dto: UserPasswordResetRequestDto = new UserPasswordResetRequestDto(); + dto.password = this.password; + dto.passwordConfirm = this.confirmPassword; + this.userService.changePassword(dto, this.token) + .then(() => this.router.navigateByUrl("/"), + () => { + this.errorMessage = + 'ミ湲ミセミクミキミセム威サミー ミスミオミクミキミイミオムムひスミーム ミセム威クミアミコミー, ミセミアムミームひクムひオムム ミイ ムミサムσカミアム ムひオムミスミクムミオムミコミセミケ ミソミセミエミエミオムミカミコミク!'; + }); + } + + togglePasswordType(): void { + this.passwordType = !this.passwordType; + } + + toggleConfirmPasswordType(): void { + this.confirmPasswordType = !this.confirmPasswordType; + } + + validPasswords(): boolean { + if (this.password === undefined || this.confirmPassword === undefined) { + return false; + } + + let eq = this.password === this.confirmPassword; + if (!eq) { + this.errorMessage = 'ミ漬イミオミエミオミスミスム巾オ ミソミームミセミサミク ミスミオ ムミセミイミソミーミエミーム紗. ミ」ミアミオミエミクムひオムム, ムムひセ ミエミーミスミスム巾オ, ' + + 'ミイミイミオミエミオミスミスム巾オ ミイ ミソミセミサミオ "ミ渙セミエムひイミオムミカミエミオミスミクミオ ミソミームミセミサム", ムミセミイミソミーミエミーム紗 ム ムひオミシミク, ' + + 'ミコミセムひセムム巾オ ムσコミーミキミーミスム ミイ ミソミセミサミオ "ミ渙ームミセミサム".'; + } + else { + this.errorMessage = ''; + } + return eq; + } +} diff --git a/frontend/src/ts/modules/app/component/register.component.ts b/frontend/src/ts/modules/app/component/register.component.ts new file mode 100644 index 0000000..2501c03 --- /dev/null +++ b/frontend/src/ts/modules/app/component/register.component.ts @@ -0,0 +1,71 @@ +import {Component, Input, ViewChild} from "@angular/core"; +import {AppConfigService, UserDto, UserService} from "@webbpm/base-package"; +import {Router} from "@angular/router"; +import {PhoneNumberComponent} from "ngx-international-phone-number"; + +@Component({ + moduleId: module.id, + selector: "register", + templateUrl: "../../../../../src/resources/template/app/component/register.html" +}) +export class RegisterComponent { + + public passwordPattern: string; + public passwordPatternErrorMessage: string; + public errorMessage: string; + + @Input() + public username: string; + + @Input() + public email: string; + @ViewChild(PhoneNumberComponent) + public phone: PhoneNumberComponent; + public phoneNumber: string; + + public phoneIsTouched: boolean = false; + @Input() + public password: string; + + public fieldType: boolean; + + @Input() + public consent: string; + + constructor(private router: Router, private userService: UserService,private appConfigService: AppConfigService) { + this.passwordPattern = appConfigService.getParamValue("password_pattern"); + this.passwordPatternErrorMessage = appConfigService.getParamValue("password_pattern_error"); + } + + public register(): void { + let user: UserDto = new UserDto(); + user.username = this.username; + user.email = this.email; + user.name = this.username; + user.phone = this.phone.value; + user.password = this.password; + + this.userService.register(user) + .then(() => this.router.navigateByUrl("/login?confirmationSent=true"), + (reason: any) => { + if (reason.status === 409) { + this.errorMessage = 'ミ渙セミサム糊キミセミイミームひオミサム ム ミエミーミスミスム巾シ ミソミセムムひセミイム巾シ ミーミエムミオムミセミシ ムσカミオ ムムτ禍オムムひイムσオム'; + } + else { + this.errorMessage = 'ミ湲ミセミクミキミセム威サミー ミスミオミクミキミイミオムムひスミーム ミセム威クミアミコミー, ミセミアムミームひクムひオムム ミイ ムミサムσカミアム ムひオムミスミクムミオムミコミセミケ ミソミセミエミエミオムミカミコミク!'; + } + }); + } + + toggleFieldType(): void { + this.fieldType = !this.fieldType; + } + + phoneHasOnlyDialCode(): boolean { + return this.phone.phoneNumber.trim() === this.phone.getSelectedCountryDialCode().trim() + } + + phoneInputFocusOut(): void { + this.phoneIsTouched = true; + } +} diff --git a/frontend/src/ts/modules/app/component/reset-password.component.ts b/frontend/src/ts/modules/app/component/reset-password.component.ts new file mode 100644 index 0000000..e9b9ee2 --- /dev/null +++ b/frontend/src/ts/modules/app/component/reset-password.component.ts @@ -0,0 +1,30 @@ +import {Component, Input} from "@angular/core"; +import {UserService} from "@webbpm/base-package"; +import {Router} from "@angular/router"; + +@Component({ + moduleId: module.id, + selector: "resetPassword", + templateUrl: "../../../../../src/resources/template/app/component/reset_password.html" + }) +export class ResetPasswordComponent { + + @Input() + public email: string; + + @Input() + public errorMessage: string; + + constructor(private router: Router, private userService: UserService) { + } + + resetPassword(): void { + + this.userService.resetPassword(this.email) + .then(() => this.router.navigateByUrl("/"), + (reason: any) => { + this.errorMessage = + 'ミ湲ミセミクミキミセム威サミー ミスミオミクミキミイミオムムひスミーム ミセム威クミアミコミー, ミセミアムミームひクムひオムム ミイ ムミサムσカミアム ムひオムミスミクムミオムミコミセミケ ミソミセミエミエミオムミカミコミク!'; + }); + } +} diff --git a/frontend/src/ts/modules/app/service/app-progress-indication.service.ts b/frontend/src/ts/modules/app/service/app-progress-indication.service.ts new file mode 100644 index 0000000..48100d5 --- /dev/null +++ b/frontend/src/ts/modules/app/service/app-progress-indication.service.ts @@ -0,0 +1,95 @@ +import {Injectable} from "@angular/core"; +import {AppProgressIndicationComponent} from "../component/app-progress-indication.component"; +import {NgbModal, NgbModalOptions, NgbModalRef} from "@ng-bootstrap/ng-bootstrap"; + +@Injectable() +export class AppProgressIndicationService { + + private static readonly EVENT_INTERCEPTOR = (event) => { + event.preventDefault(); + event.stopPropagation(); + }; + + private counter: number = 0; + private focused: any; + private ngbModalRef: NgbModalRef; + private options: NgbModalOptions = { + backdrop: 'static', + keyboard: false, + windowClass: 'modal-center loader' + }; + + constructor(private ngbModal: NgbModal) { + } + + public showProgressBar(): boolean { + if (this.counter == 0) { + this.disableEvents(); + this.saveFocus(); + this.showProgressIndicator(); + } + ++this.counter; + return this.counter == 1; + } + + public hideProgressBar(): boolean { + if (this.counter == 0) { + return false; + } + if (this.counter == 1) { + this.hideProgressIndicator(); + this.restoreFocus(); + this.enableEvents(); + } + --this.counter; + return this.counter == 0; + } + + public unconditionallyHideProgressBar(): void { + this.enableEvents(); + this.hideProgressIndicator(); + } + + public restoreProgressBar(): void { + + if (this.counter > 0 && this.ngbModalRef == null) { + this.disableEvents(); + this.showProgressIndicator(); + } + } + + private showProgressIndicator() { + this.ngbModalRef = this.ngbModal.open(AppProgressIndicationComponent, this.options); + } + + private hideProgressIndicator() { + this.ngbModalRef.dismiss('cancel'); + this.ngbModalRef = null; + } + + private saveFocus() { + this.focused = $(':focus'); + } + + private restoreFocus() { + if (this.focused) { + this.focused.focus(); + this.focused = null; + } + } + + private disableEvents() { + let body = $('body'); + body.keydown(AppProgressIndicationService.EVENT_INTERCEPTOR); + body.keyup(AppProgressIndicationService.EVENT_INTERCEPTOR); + body.contextmenu(AppProgressIndicationService.EVENT_INTERCEPTOR) + } + + private enableEvents() { + let body = $('body'); + body.off('keydown', AppProgressIndicationService.EVENT_INTERCEPTOR); + body.off('keyup', AppProgressIndicationService.EVENT_INTERCEPTOR); + body.off('contextmenu', AppProgressIndicationService.EVENT_INTERCEPTOR); + } + +} diff --git a/frontend/src/ts/modules/preview/component/preview-container.component.ts b/frontend/src/ts/modules/preview/component/preview-container.component.ts new file mode 100644 index 0000000..f8cdd27 --- /dev/null +++ b/frontend/src/ts/modules/preview/component/preview-container.component.ts @@ -0,0 +1,9 @@ +import {Component} from "@angular/core"; + +@Component({ + moduleId: module.id, + selector: "[preview-container]", + templateUrl: "../../../../../src/resources/template/preview/preview_container.html" +}) +export class PreviewContainerComponent { +} diff --git a/frontend/src/ts/modules/preview/component/preview.component.ts b/frontend/src/ts/modules/preview/component/preview.component.ts new file mode 100644 index 0000000..b1ecab6 --- /dev/null +++ b/frontend/src/ts/modules/preview/component/preview.component.ts @@ -0,0 +1,9 @@ +import {Component} from "@angular/core"; + +@Component({ + moduleId: module.id, + selector: "[preview]", + templateUrl: "../../../../../src/resources/template/preview/preview.html" +}) +export class PreviewComponent { +} diff --git a/frontend/src/ts/modules/preview/preview-routing.module.ts b/frontend/src/ts/modules/preview/preview-routing.module.ts new file mode 100644 index 0000000..0a5c665 --- /dev/null +++ b/frontend/src/ts/modules/preview/preview-routing.module.ts @@ -0,0 +1,20 @@ +import {NgModule} from "@angular/core"; +import {RouterModule, Routes} from "@angular/router"; +import {PreviewComponent} from "./component/preview.component"; +import {DYNAMIC_ROUTING} from "../../page.routing"; + +const previewRoutes: Routes = [ + { + path: 'preview', + component: PreviewComponent, + children: DYNAMIC_ROUTING, + } +]; + +@NgModule({ + imports: [RouterModule.forRoot(previewRoutes, {useHash: true})], + exports: [RouterModule] +}) +export class PreviewRoutingModule { + +} \ No newline at end of file diff --git a/frontend/src/ts/modules/preview/preview.main.ts b/frontend/src/ts/modules/preview/preview.main.ts new file mode 100644 index 0000000..2a5de47 --- /dev/null +++ b/frontend/src/ts/modules/preview/preview.main.ts @@ -0,0 +1,7 @@ +import {platformBrowserDynamic} from "@angular/platform-browser-dynamic"; +import {enableProdMode} from "@angular/core"; +import {PreviewModule} from "./preview.module"; + +window['dev_mode'] = true; +enableProdMode(); +platformBrowserDynamic().bootstrapModule(PreviewModule); diff --git a/frontend/src/ts/modules/preview/preview.module.ts b/frontend/src/ts/modules/preview/preview.module.ts new file mode 100644 index 0000000..47a0066 --- /dev/null +++ b/frontend/src/ts/modules/preview/preview.module.ts @@ -0,0 +1,51 @@ +import {NgModule, NgZone} from "@angular/core"; +import {FormsModule} from "@angular/forms"; +import {BrowserModule} from "@angular/platform-browser"; +import {AgGridModule} from "ag-grid-angular"; +import {PreviewComponent} from "./component/preview.component"; +import {PreviewRoutingModule} from "./preview-routing.module"; +import {PreviewContainerComponent} from "./component/preview-container.component"; +import {NgbModule} from "@ng-bootstrap/ng-bootstrap"; +import {ToastNoAnimationModule} from "ngx-toastr"; +import {AppModule} from "../app/app.module"; +import {ComponentsModule, CoreModule, SecurityModule} from "@webbpm/base-package"; +import {HTTP_INTERCEPTORS} from "@angular/common/http"; +import {HttpPreviewInterceptor} from "./service/http-preview-interceptor.service"; + +export const HTTP_INTERCEPTOR_PROVIDERS = [ + { provide: HTTP_INTERCEPTORS, useClass: HttpPreviewInterceptor, multi: true } +]; + +let IMPORTS = [ + BrowserModule, + FormsModule, + NgbModule, + ToastNoAnimationModule.forRoot(), + AgGridModule, + CoreModule, + ComponentsModule, + AppModule, + SecurityModule, + PreviewRoutingModule +]; + +@NgModule({ + imports: IMPORTS, + declarations: [ + PreviewContainerComponent, + PreviewComponent + ], + exports: [], + providers: [ + HTTP_INTERCEPTOR_PROVIDERS + ], + bootstrap: [ + PreviewContainerComponent + ] +}) +export class PreviewModule { + + constructor(zone: NgZone) { + window['zoneImpl'] = zone; + } +} diff --git a/frontend/src/ts/modules/preview/service/http-preview-interceptor.service.ts b/frontend/src/ts/modules/preview/service/http-preview-interceptor.service.ts new file mode 100644 index 0000000..ca7d7b5 --- /dev/null +++ b/frontend/src/ts/modules/preview/service/http-preview-interceptor.service.ts @@ -0,0 +1,16 @@ +import {Injectable} from "@angular/core"; +import {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from "@angular/common/http"; +import {EMPTY, Observable} from "rxjs"; +import {catchError} from "rxjs/operators"; + +@Injectable() +export class HttpPreviewInterceptor implements HttpInterceptor { + + intercept(req: HttpRequest, next: HttpHandler): Observable> { + + return next.handle(req).pipe(catchError(() => { + return EMPTY; + } + )); + } +} \ No newline at end of file diff --git a/frontend/src/ts/modules/webbpm/component/home.component.ts b/frontend/src/ts/modules/webbpm/component/home.component.ts new file mode 100644 index 0000000..7361c8a --- /dev/null +++ b/frontend/src/ts/modules/webbpm/component/home.component.ts @@ -0,0 +1,9 @@ +import {Component} from "@angular/core"; + +@Component({ + moduleId: module.id, + selector: "home", + templateUrl: './../../../../../src/resources/template/webbpm/home.html' +}) +export class HomeComponent { +} diff --git a/frontend/src/ts/modules/webbpm/component/webbpm.component.ts b/frontend/src/ts/modules/webbpm/component/webbpm.component.ts new file mode 100644 index 0000000..df6a67a --- /dev/null +++ b/frontend/src/ts/modules/webbpm/component/webbpm.component.ts @@ -0,0 +1,34 @@ +import {Component} from "@angular/core"; +import { + Event, + NavigationCancel, + NavigationEnd, + NavigationError, + NavigationStart, + Router +} from "@angular/router"; +import {ProgressIndicationService} from "@webbpm/base-package"; + +@Component({ + moduleId: module.id, + selector: '[webbpm]', + templateUrl: './../../../../../src/resources/template/webbpm/webbpm.html' +}) +export class WebbpmComponent { + public headerVisible: boolean = true; + public footerVisible: boolean = true; + + constructor(private router: Router, + private progressIndicationService: ProgressIndicationService) { + router.events.subscribe((event: Event) => { + if (event instanceof NavigationStart) { + progressIndicationService.showProgressBar(); + } + else if (event instanceof NavigationEnd + || event instanceof NavigationError + || event instanceof NavigationCancel) { + progressIndicationService.hideProgressBar(); + } + }) + } +} diff --git a/frontend/src/ts/modules/webbpm/handler/global-error.handler.prod.ts b/frontend/src/ts/modules/webbpm/handler/global-error.handler.prod.ts new file mode 100644 index 0000000..5665de7 --- /dev/null +++ b/frontend/src/ts/modules/webbpm/handler/global-error.handler.prod.ts @@ -0,0 +1,10 @@ +import {ErrorHandler, Injectable, Injector} from '@angular/core'; +import {BaseErrorHandler} from "@webbpm/base-package"; + +@Injectable({providedIn: 'root'}) +export class GlobalErrorHandler extends BaseErrorHandler implements ErrorHandler { + + constructor(injector: Injector) { + super(injector); + } +} diff --git a/frontend/src/ts/modules/webbpm/handler/global-error.handler.ts b/frontend/src/ts/modules/webbpm/handler/global-error.handler.ts new file mode 100644 index 0000000..4350c08 --- /dev/null +++ b/frontend/src/ts/modules/webbpm/handler/global-error.handler.ts @@ -0,0 +1,35 @@ +import {ErrorHandler, Injectable, Injector} from '@angular/core'; +import {BaseErrorHandler} from "@webbpm/base-package"; + +//todo: will be used after angular update in dev mode +@Injectable({providedIn: 'root'}) +export class GlobalErrorHandler extends BaseErrorHandler implements ErrorHandler { + + constructor(injector: Injector) { + super(injector); + } + + handleError(error) { + const chunkFailedMessage = /Loading chunk [\d]+ failed/; + + if (chunkFailedMessage.test(error.message)) { + window.location.reload(); + } + else if (!this.isPreviewPage()) { + super.handleError(error); + } + } + + internalHandleError(error) { + if (this.isPreviewPage()) { + return; + } + else { + super.internalHandleError(error); + } + } + + private isPreviewPage() { + return window.location.hash.includes("webbpm-preview"); + } +} diff --git a/frontend/src/ts/modules/webbpm/interceptor/default-interceptors.prod.ts b/frontend/src/ts/modules/webbpm/interceptor/default-interceptors.prod.ts new file mode 100644 index 0000000..07735d5 --- /dev/null +++ b/frontend/src/ts/modules/webbpm/interceptor/default-interceptors.prod.ts @@ -0,0 +1,12 @@ +import {HTTP_INTERCEPTORS} from "@angular/common/http"; +import { + FormDirtyInterceptor, + HttpSecurityErrorInterceptor, + HttpSecurityInterceptor +} from "@webbpm/base-package"; + +export const DEFAULT_HTTP_INTERCEPTOR_PROVIDERS = [ + {provide: HTTP_INTERCEPTORS, useClass: HttpSecurityInterceptor, multi: true}, + {provide: HTTP_INTERCEPTORS, useClass: HttpSecurityErrorInterceptor, multi: true}, + {provide: HTTP_INTERCEPTORS, useClass: FormDirtyInterceptor, multi: true} +]; diff --git a/frontend/src/ts/modules/webbpm/interceptor/default-interceptors.ts b/frontend/src/ts/modules/webbpm/interceptor/default-interceptors.ts new file mode 100644 index 0000000..ee46e0c --- /dev/null +++ b/frontend/src/ts/modules/webbpm/interceptor/default-interceptors.ts @@ -0,0 +1,9 @@ +import {HTTP_INTERCEPTORS} from "@angular/common/http"; +import {FormDirtyInterceptor, HttpSecurityInterceptor} from "@webbpm/base-package"; +import {DevHttpSecurityErrorInterceptor} from "./http-security-error-interceptor.dev"; + +export const DEFAULT_HTTP_INTERCEPTOR_PROVIDERS = [ + {provide: HTTP_INTERCEPTORS, useClass: HttpSecurityInterceptor, multi: true}, + {provide: HTTP_INTERCEPTORS, useClass: DevHttpSecurityErrorInterceptor, multi: true}, + {provide: HTTP_INTERCEPTORS, useClass: FormDirtyInterceptor, multi: true} +]; diff --git a/frontend/src/ts/modules/webbpm/interceptor/http-security-error-interceptor.dev.ts b/frontend/src/ts/modules/webbpm/interceptor/http-security-error-interceptor.dev.ts new file mode 100644 index 0000000..11a0c2b --- /dev/null +++ b/frontend/src/ts/modules/webbpm/interceptor/http-security-error-interceptor.dev.ts @@ -0,0 +1,31 @@ +import {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from "@angular/common/http"; +import {HttpSecurityErrorInterceptor, MessagesService, UserService} from "@webbpm/base-package"; +import {Injectable} from "@angular/core"; +import {Router} from "@angular/router"; +import {EMPTY, Observable} from "rxjs"; +import {catchError} from "rxjs/operators"; + +@Injectable() +export class DevHttpSecurityErrorInterceptor extends HttpSecurityErrorInterceptor + implements HttpInterceptor { + private router: Router; + + + constructor(router: Router, messagesService: MessagesService, userService: UserService) { + super(router, messagesService, userService); + this.router = router; + } + + intercept(req: HttpRequest, next: HttpHandler): Observable> { + + if (window.location.hash.includes("webbpm-preview")) { + return next.handle(req).pipe(catchError(() => { + return EMPTY; + } + )); + } + else { + return super.intercept(req, next); + } + } +} diff --git a/frontend/src/ts/modules/webbpm/user-management-routing.module.ts b/frontend/src/ts/modules/webbpm/user-management-routing.module.ts new file mode 100644 index 0000000..140ba29 --- /dev/null +++ b/frontend/src/ts/modules/webbpm/user-management-routing.module.ts @@ -0,0 +1,88 @@ +import {RouterModule, Routes} from "@angular/router"; +import {NgModule} from "@angular/core"; +import { + AuthenticationGuard, + ConfirmExitGuard +} from "@webbpm/base-package"; + +const routes: Routes = [ + { + path: 'user-management', + canActivate: [AuthenticationGuard], + children: [ + { + path: 'users', + loadChildren: 'generated-sources/page-user-management-users.module#PageusermanagementusersModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'users/new', + loadChildren: 'generated-sources/page-user-management-user-create.module#PageusermanagementusercreateModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'users/:id', + loadChildren: 'generated-sources/page-user-management-user-edit.module#PageusermanagementusereditModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'org-units', + loadChildren: 'generated-sources/page-user-management-org-units.module#PageusermanagementorgunitsModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'org-units/new', + loadChildren: 'generated-sources/page-user-management-org-unit.module#PageusermanagementorgunitModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'org-units/:id', + loadChildren: 'generated-sources/page-user-management-org-unit.module#PageusermanagementorgunitModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'roles', + loadChildren: 'generated-sources/page-user-management-roles.module#PageusermanagementrolesModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'roles/new', + loadChildren: 'generated-sources/page-user-management-role.module#PageusermanagementroleModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'roles/:id', + loadChildren: 'generated-sources/page-user-management-role.module#PageusermanagementroleModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'groups', + loadChildren: 'generated-sources/page-user-management-groups.module#PageusermanagementgroupsModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'groups/new', + loadChildren: 'generated-sources/page-user-management-group-create.module#PageusermanagementgroupcreateModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'groups/:id', + loadChildren: 'generated-sources/page-user-management-group-edit.module#PageusermanagementgroupeditModule', + canActivate: [ConfirmExitGuard] + }, + { + path: 'authorities', + loadChildren: 'generated-sources/page-user-management-authorities.module#PageusermanagementauthoritiesModule', + canActivate: [ConfirmExitGuard] + } + ] + } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class UserManagementRoutingModule { + +} diff --git a/frontend/src/ts/modules/webbpm/webbpm-routing.module.ts b/frontend/src/ts/modules/webbpm/webbpm-routing.module.ts new file mode 100644 index 0000000..3fae21a --- /dev/null +++ b/frontend/src/ts/modules/webbpm/webbpm-routing.module.ts @@ -0,0 +1,27 @@ +import {NgModule} from "@angular/core"; +import {RouterModule, Routes} from "@angular/router"; +import {AuthenticationGuard, ConfirmExitGuard} from "@webbpm/base-package"; + +const webbpmRoutes: Routes = [ + { + path: '', + loadChildren: 'generated-sources/page-main.module#PagemainModule', + canActivate: [AuthenticationGuard, ConfirmExitGuard], + pathMatch: 'full', + }, + { + path: '**', + redirectTo: '', + } +]; + +@NgModule({ + imports: [RouterModule.forRoot(webbpmRoutes, { + useHash: true, + onSameUrlNavigation: "reload" + })], + exports: [RouterModule] + }) +export class WebbpmRoutingModule { + +} diff --git a/frontend/src/ts/modules/webbpm/webbpm.module.ts b/frontend/src/ts/modules/webbpm/webbpm.module.ts new file mode 100644 index 0000000..76038b5 --- /dev/null +++ b/frontend/src/ts/modules/webbpm/webbpm.module.ts @@ -0,0 +1,56 @@ +import {ErrorHandler, NgModule} from "@angular/core"; +import {BrowserModule} from "@angular/platform-browser"; +import {BrowserAnimationsModule} from "@angular/platform-browser/animations"; +import {FormsModule} from "@angular/forms"; +import {AgGridModule} from "ag-grid-angular"; +import {WebbpmComponent} from "./component/webbpm.component"; +import {WebbpmRoutingModule} from "./webbpm-routing.module"; +import {NgbModule} from "@ng-bootstrap/ng-bootstrap"; +import {ToastNoAnimationModule} from "ngx-toastr"; +import {AppModule} from "../app/app.module"; +import {HomeComponent} from "./component/home.component"; +import { + BpmnModule, + ComponentsModule, + CoreModule, + SecurityModule, +} from "@webbpm/base-package"; +import {AppRoutingModule} from "../app/app-routing.module"; +import {UserManagementRoutingModule} from "./user-management-routing.module"; +import {GlobalErrorHandler} from "./handler/global-error.handler.prod"; +import {DEFAULT_HTTP_INTERCEPTOR_PROVIDERS} from "./interceptor/default-interceptors.prod"; + +let IMPORTS = [ + BrowserAnimationsModule, + BrowserModule, + FormsModule, + NgbModule, + ToastNoAnimationModule.forRoot(), + AgGridModule, + AppRoutingModule, + UserManagementRoutingModule, + BpmnModule, + CoreModule, + ComponentsModule, + SecurityModule, + AppModule, + WebbpmRoutingModule +]; + +@NgModule({ + imports: IMPORTS, + declarations: [ + WebbpmComponent, + HomeComponent + ], + exports: [], + providers: [ + {provide: ErrorHandler, useClass: GlobalErrorHandler}, + DEFAULT_HTTP_INTERCEPTOR_PROVIDERS + ], + bootstrap: [ + WebbpmComponent + ] + }) +export class WebbpmModule { +} diff --git a/frontend/src/ts/page.routing.d.ts b/frontend/src/ts/page.routing.d.ts new file mode 100644 index 0000000..ff077ee --- /dev/null +++ b/frontend/src/ts/page.routing.d.ts @@ -0,0 +1,3 @@ +import {Routes} from "@angular/router"; + +declare const DYNAMIC_ROUTING: Routes; \ No newline at end of file diff --git a/frontend/src/ts/polyfills.ts b/frontend/src/ts/polyfills.ts new file mode 100644 index 0000000..4eb6fea --- /dev/null +++ b/frontend/src/ts/polyfills.ts @@ -0,0 +1,59 @@ +/** IE9, IE10 and IE11 requires all of the following polyfills. **/ +import 'core-js/es6/symbol'; +import 'core-js/es6/object'; +import 'core-js/es6/function'; +import 'core-js/es6/parse-int'; +import 'core-js/es6/parse-float'; +import 'core-js/es6/number'; +import 'core-js/es6/math'; +import 'core-js/es6/string'; +import 'core-js/es6/date'; +import 'core-js/es6/array'; +import 'core-js/es6/regexp'; +import 'core-js/es6/map'; +import 'core-js/es6/weak-map'; +import 'core-js/es6/set'; +import 'core-js/es6/promise'; +import 'core-js/es7'; +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. + +/** IE10 and IE11 requires the following for the Reflect API. */ +// import 'core-js/es6/reflect'; + +窶 +/** Evergreen browsers require these. **/ +// Used for reflect-metadata in JIT. If you use AOT (and only Angular decorators), you can remove. + + + +/** + * Required to support Web Animations `@angular/platform-browser/animations`. + * Needed for: All but Chrome, Firefox and Opera. http://caniuse.com/#feat=web-animation + **/ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + */ + + // (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + // (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + // (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + + /* + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + */ +// (window as any).__Zone_enable_cross_context_check = true; +窶 +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js/dist/zone';// Included with Angular CLI.窶 + +窶 +/*************************************************************************************************** + * APPLICATION IMPORTS + */ diff --git a/frontend/src/ts/vendor.ts b/frontend/src/ts/vendor.ts new file mode 100644 index 0000000..797b170 --- /dev/null +++ b/frontend/src/ts/vendor.ts @@ -0,0 +1,38 @@ +// Angular +import '@angular/core'; +import '@angular/common'; +import '@angular/common/http'; +import '@angular/forms'; +import '@angular/platform-browser'; +import '@angular/router'; +import '@angular/animations'; +import '@webbpm/base-package'; +// RxJS +import 'rxjs'; +import 'rxjs-compat'; +import 'rxjs/operators'; +import 'rxjs/internal-compatibility'; +import 'rxjs/ajax'; +import 'rxjs/testing'; +import 'rxjs/webSocket'; +//jquery +import 'jquery'; +//popper +import 'popper.js'; +//bootstrap +import '@ng-bootstrap/ng-bootstrap'; +import 'bootstrap'; +//mask +import 'inputmask'; +//grid +import 'ag-grid-community'; +import 'ag-grid-angular'; +//selectize +import 'selectize'; +//datepicker +import 'eonasdan-bootstrap-datetimepicker'; +import 'moment-timezone'; +//ngx-toastr +import 'ngx-toastr'; +//ngx-cookie +import 'ngx-cookie'; diff --git a/frontend/systemjs.config.js b/frontend/systemjs.config.js new file mode 100644 index 0000000..5b9937f --- /dev/null +++ b/frontend/systemjs.config.js @@ -0,0 +1,93 @@ +(function(global) { + System.config({ + transpiler: 'plugin-babel', + paths: { + 'npm:': 'node_modules/', + 'generated-sources': 'build_dev/js/generated-sources' + }, + map: { + 'webbpm': 'build_dev/js', + '@angular/core': 'npm:@angular/core/bundles/core.umd.js', + '@angular/common': 'npm:@angular/common/bundles/common.umd.js', + '@angular/common/http': 'npm:@angular/common/bundles/common-http.umd.js', + '@angular/common/locales': 'npm:@angular/common/locales', + '@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js', + '@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js', + '@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js', + '@angular/router': 'npm:@angular/router/bundles/router.umd.js', + '@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js', + '@angular/animations': 'npm:@angular/animations/bundles/animations.umd.js', + '@angular/animations/browser': 'npm:@angular/animations/bundles/animations-browser.umd.js', + '@angular/platform-browser/animations':'npm:@angular/platform-browser/bundles/platform-browser-animations.umd.js', + '@ng-bootstrap/ng-bootstrap': 'npm:@ng-bootstrap/ng-bootstrap/bundles/ng-bootstrap.umd.js', + 'bootstrap': 'npm:bootstrap', + '@webbpm/base-package': 'npm:@webbpm/base-package/bundles/webbpm-base-package.umd.js', + 'angular-calendar': 'npm:angular-calendar/bundles/angular-calendar.umd.js', + 'angular-calendar/date-adapters/date-fns': 'npm:angular-calendar/date-adapters/date-fns/index.js', + 'angular-draggable-droppable': 'npm:angular-draggable-droppable/bundles/angular-draggable-droppable.umd.js', + 'angular-resizable-element': 'npm:angular-resizable-element/bundles/angular-resizable-element.umd.js', + 'calendar-utils': 'npm:calendar-utils/bundles/calendar-utils.umd.js', + 'calendar-utils/date-adapters/date-fns': 'npm:calendar-utils/date-adapters/date-fns/index.js', + 'date-fns': 'npm:date-fns', + 'ngx-cookie': 'npm:ngx-cookie/bundles/ngx-cookie.umd.js', + 'moment': 'npm:moment', + 'moment-timezone': 'npm:moment-timezone', + 'positioning': 'npm:positioning/dist/positioning.js', + 'rxjs': 'npm:rxjs', + 'rxjs-compat': 'npm:rxjs-compat', + 'rxjs/operators': 'npm:rxjs/operators', + 'rxjs/internal-compatibility': 'npm:rxjs/internal-compatibility', + 'rxjs/ajax': 'npm:rxjs/ajax', + 'rxjs/testing': 'npm:rxjs/testing', + 'rxjs/webSocket': 'npm:rxjs/webSocket', + 'jquery': 'npm:jquery/dist/jquery.js', + 'popper.js': 'npm:popper.js/dist/umd/popper.js', + 'sifter': 'npm:sifter/sifter.min.js', + 'microplugin': 'npm:microplugin/src/microplugin.js', + 'selectize': 'npm:selectize/dist/js/selectize.min.js', + 'ngx-toastr': 'npm:ngx-toastr/bundles/ngx-toastr.umd.min.js', + 'eonasdan-bootstrap-datetimepicker': 'npm:eonasdan-bootstrap-datetimepicker/src/js/bootstrap-datetimepicker.js', + 'autonumeric': 'npm:autonumeric', + 'jsgantt-improved': 'npm:jsgantt-improved/dist/jsgantt.js', + 'js-year-calendar': 'npm:js-year-calendar/dist/js-year-calendar.js', + 'ag-grid-angular': 'npm:ag-grid-angular/bundles/ag-grid-angular.umd.js', + 'ag-grid-community': 'npm:ag-grid-community/dist/ag-grid-community.cjs.js', + 'inputmask': 'npm:inputmask', + 'downloadjs': 'npm:downloadjs/download.js', + 'esmarttokenjs': 'npm:esmarttokenjs/esmarttoken.js', + 'cadesplugin_api': 'npm:cadesplugin_api/index.js', + 'plugin-babel': 'npm:systemjs-plugin-babel/plugin-babel.js', + 'systemjs-babel-build': 'npm:systemjs-plugin-babel/systemjs-babel-browser.js', + 'chart.js': 'npm:chart.js/dist', + 'chartjs-adapter-moment': 'npm:chartjs-adapter-moment/dist/chartjs-adapter-moment.js', + 'tslib': 'npm:tslib/tslib.js', + 'ngx-international-phone-number': 'npm:ngx-international-phone-number/ngx-international-phone-number.umd.js', + 'google-libphonenumber': 'npm:google-libphonenumber/dist/libphonenumber.js' + }, + packages: { + 'webbpm': { main: 'main', defaultExtension: 'js'}, + '@angular/common/locales': { defaultExtension: 'js'}, + 'date-fns': { main: 'index.js', defaultExtension: 'js'}, + 'rxjs': { main: 'index.js', defaultExtension: 'js' }, + 'rxjs-compat': { main: "index.js", defaultExtension: 'js'}, + 'rxjs/operators': { main: "index.js", defaultExtension: 'js'}, + 'rxjs/internal-compatibility':{ main: "index.js", defaultExtension: 'js'}, + 'rxjs/ajax': { main: "index.js", defaultExtension: 'js'}, + 'rxjs/testing': { main: "index.js", defaultExtension: 'js'}, + 'rxjs/webSocket': { main: "index.js", defaultExtension: 'js'}, + 'moment': { main: 'min/locales.min', defaultExtension: 'js' }, + 'moment-es6': { main: 'index.js', defaultExtension: 'js' }, + 'moment-timezone': { main: 'builds/moment-timezone-with-data.min', defaultExtension: 'js' }, + 'bootstrap': { main: 'dist/js/bootstrap', defaultExtension: 'js'}, + 'lib': { format: 'register', defaultExtension: 'js' }, + 'autonumeric': { + main: 'dist/autoNumeric.js' + }, + 'chart.js': { main: 'chart.js', defaultExtension: 'js' }, + 'inputmask': { + main: 'dist/inputmask.js', + defaultExtension: 'js' + } + } + }); +})(this); diff --git a/frontend/systemjs.preview.config.js b/frontend/systemjs.preview.config.js new file mode 100644 index 0000000..d2c4487 --- /dev/null +++ b/frontend/systemjs.preview.config.js @@ -0,0 +1,92 @@ +(function(global) { + System.config({ + transpiler: 'plugin-babel', + paths: { + 'npm:': 'node_modules/', + 'generated-sources': 'build_dev/js/generated-sources' + }, + map: { + 'preview': 'build_dev/js', + '@angular/core': 'npm:@angular/core/bundles/core.umd.js', + '@angular/common': 'npm:@angular/common/bundles/common.umd.js', + '@angular/common/http': 'npm:@angular/common/bundles/common-http.umd.js', + '@angular/common/locales': 'npm:@angular/common/locales', + '@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js', + '@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js', + '@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js', + '@angular/router': 'npm:@angular/router/bundles/router.umd.js', + '@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js', + '@angular/animations': 'npm:@angular/animations/bundles/animations.umd.js', + '@angular/animations/browser': 'npm:@angular/animations/bundles/animations-browser.umd.js', + '@angular/platform-browser/animations':'npm:@angular/platform-browser/bundles/platform-browser-animations.umd.js', + '@ng-bootstrap/ng-bootstrap': 'npm:@ng-bootstrap/ng-bootstrap/bundles/ng-bootstrap.umd.js', + 'bootstrap': 'npm:bootstrap', + '@webbpm/base-package': 'npm:@webbpm/base-package/bundles/webbpm-base-package.umd.js', + 'angular-calendar': 'npm:angular-calendar/bundles/angular-calendar.umd.js', + 'angular-calendar/date-adapters/date-fns': 'npm:angular-calendar/date-adapters/date-fns/index.js', + 'angular-draggable-droppable': 'npm:angular-draggable-droppable/bundles/angular-draggable-droppable.umd.js', + 'angular-resizable-element': 'npm:angular-resizable-element/bundles/angular-resizable-element.umd.js', + 'calendar-utils': 'npm:calendar-utils/bundles/calendar-utils.umd.js', + 'calendar-utils/date-adapters/date-fns': 'npm:calendar-utils/date-adapters/date-fns/index.js', + 'date-fns': 'npm:date-fns', + 'ngx-cookie': 'npm:ngx-cookie/bundles/ngx-cookie.umd.js', + 'moment': 'npm:moment', + 'moment-timezone': 'npm:moment-timezone', + 'positioning': 'npm:positioning/dist/positioning.js', + 'rxjs': 'npm:rxjs', + 'rxjs-compat': 'npm:rxjs-compat', + 'rxjs/operators': 'npm:rxjs/operators', + 'rxjs/internal-compatibility': 'npm:rxjs/internal-compatibility', + 'rxjs/ajax': 'npm:rxjs/ajax', + 'rxjs/testing': 'npm:rxjs/testing', + 'rxjs/webSocket': 'npm:rxjs/webSocket', + 'jquery': 'npm:jquery/dist/jquery.js', + 'popper.js': 'npm:popper.js/dist/umd/popper.js', + 'sifter': 'npm:sifter/sifter.min.js', + 'microplugin': 'npm:microplugin/src/microplugin.js', + 'selectize': 'npm:selectize/dist/js/selectize.min.js', + 'ngx-toastr': 'npm:ngx-toastr/bundles/ngx-toastr.umd.min.js', + 'eonasdan-bootstrap-datetimepicker': 'npm:eonasdan-bootstrap-datetimepicker/src/js/bootstrap-datetimepicker.js', + 'autonumeric': 'npm:autonumeric', + 'jsgantt-improved': 'npm:jsgantt-improved/dist/jsgantt.js', + 'js-year-calendar': 'npm:js-year-calendar/dist/js-year-calendar.js', + 'ag-grid-angular': 'npm:ag-grid-angular/bundles/ag-grid-angular.umd.js', + 'ag-grid-community': 'npm:ag-grid-community/dist/ag-grid-community.cjs.js', + 'inputmask': 'npm:inputmask', + 'downloadjs': 'npm:downloadjs/download.js', + 'esmarttokenjs': 'npm:esmarttokenjs/esmarttoken.js', + 'cadesplugin_api': 'npm:cadesplugin_api/index.js', + 'plugin-babel': 'npm:systemjs-plugin-babel/plugin-babel.js', + 'systemjs-babel-build': 'npm:systemjs-plugin-babel/systemjs-babel-browser.js', + 'chart.js': 'npm:chart.js/dist', + 'chartjs-adapter-moment': 'npm:chartjs-adapter-moment/dist/chartjs-adapter-moment.js', + 'tslib': 'npm:tslib/tslib.js', + 'ngx-international-phone-number': 'npm:ngx-international-phone-number/ngx-international-phone-number.umd.js', + 'google-libphonenumber': 'npm:google-libphonenumber/dist/libphonenumber.js' + }, + packages: { + 'preview': { main: './modules/preview/preview.main', defaultExtension: 'js'}, + '@angular/common/locales': { defaultExtension: 'js'}, + 'date-fns': { main: 'index.js', defaultExtension: 'js'}, + 'rxjs': { main: 'index.js', defaultExtension: 'js' }, + 'rxjs-compat': { main: "index.js", defaultExtension: 'js'}, + 'rxjs/operators': { main: "index.js", defaultExtension: 'js'}, + 'rxjs/internal-compatibility':{ main: "index.js", defaultExtension: 'js'}, + 'rxjs/ajax': { main: "index.js", defaultExtension: 'js'}, + 'rxjs/testing': { main: "index.js", defaultExtension: 'js'}, + 'rxjs/webSocket': { main: "index.js", defaultExtension: 'js'}, + 'moment': { main: 'min/locales.min', defaultExtension: 'js' }, + 'moment-timezone': { main: 'builds/moment-timezone-with-data.min', defaultExtension: 'js' }, + 'bootstrap': { main: 'dist/js/bootstrap', defaultExtension: 'js'}, + 'lib': { format: 'register', defaultExtension: 'js' }, + 'autonumeric': { + main: 'dist/autoNumeric.js' + }, + 'chart.js': { main: 'chart.js', defaultExtension: 'js' }, + 'inputmask': { + main: 'dist/inputmask.js', + defaultExtension: 'js' + } + } + }); +})(this); diff --git a/frontend/tsconfig.aot.json b/frontend/tsconfig.aot.json new file mode 100644 index 0000000..8e2aad3 --- /dev/null +++ b/frontend/tsconfig.aot.json @@ -0,0 +1,42 @@ +{ + "compilerOptions": { + "target": "es5", + "module": "commonjs", + "moduleResolution": "node", + "declaration": false, + "sourceMap": false, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "removeComments": false, + "skipLibCheck": true, + "noImplicitAny": false, + "typeRoots": [ + "node_modules/@types" + ], + "lib": [ + "es2016", + "dom", + "es2017.object", + "es2018.promise" + ] + }, + "compileOnSave": false, + "buildOnSave": false, + "include": [ + "src/ts/**/*" + ], + "exclude": [ + "node_modules", + "./node_modules/@types", + "src/ts/main.ts", + "**/*.spec.ts", + "src/test.ts" + ], + "angularCompilerOptions": { + "skipMetadataEmit": true, + "alwaysCompileGeneratedCode":true, + "preserveWhitespaces": false, + "annotationsAs": "decorators", + "mainPath": "./src/ts" + } +} \ No newline at end of file diff --git a/frontend/tsconfig.json b/frontend/tsconfig.json new file mode 100644 index 0000000..d977dd5 --- /dev/null +++ b/frontend/tsconfig.json @@ -0,0 +1,40 @@ +{ + "compilerOptions": { + "baseUrl": "./", + "target": "es5", + "module": "commonjs", + "moduleResolution": "node", + "declaration": false, + "inlineSourceMap": true, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "removeComments": false, + "skipLibCheck": true, + "noImplicitAny": false, + "outDir": "build_dev/js", + "typeRoots": [ + "node_modules/@types" + ], + "lib": [ + "es2016", + "dom", + "es2017.object", + "es2018.promise" + ] + }, + "compileOnSave": false, + "buildOnSave": false, + "include": [ + "src/ts/**/*" + ], + "exclude": [ + "node_modules", + "./node_modules/@types", + "**/*.ngfactory.ts", + "**/*.shim.ts", + "src/ts/main.aot.ts", + "src/ts/generated-sources/**/*", + "src/ts/page.routing.ts", + "src/ts/aot" + ] +} diff --git a/frontend/webpack.aot.config.js b/frontend/webpack.aot.config.js new file mode 100644 index 0000000..8b62816 --- /dev/null +++ b/frontend/webpack.aot.config.js @@ -0,0 +1,142 @@ +'use strict'; +const path = require('path'); +const webpack = require('webpack'); +const CopyWebpackPlugin = require('copy-webpack-plugin'); +const HtmlWebpackPlugin = require('html-webpack-plugin'); +const MiniCssExtractPlugin = require("mini-css-extract-plugin"); +const TerserPlugin = require('terser-webpack-plugin'); + +function _path(p) { + return path.join(__dirname, p); +} + +module.exports = { + mode: 'production', + entry: { + polyfills: './build/scripts/polyfills.js', + vendor: './build/scripts/vendor.js', + main: './build/scripts/main.aot.js', + }, + + context: process.cwd(), + + output: { + path: path.join(process.cwd(), './dist'), + filename: '[name].[chunkhash].bundle.js', + chunkFilename: '[id].[chunkhash].chunk.js', + assetModuleFilename: 'src/resources/[base]', + publicPath: 'auto' + }, + + module: { + rules: [ + { + test: /\.js$/, + use: { + loader: 'babel-loader', + options: { + presets: ['@babel/preset-env'] + } + } + }, + { + test: /\.js$/, + use: { + loader: 'angular-router-loader?aot=true' + } + }, + { + test: /\.html$/, + use: { + loader: 'raw-loader' + } + }, + { + test: /\.css$/, + use: [ + { + loader: MiniCssExtractPlugin.loader, + options: { + // you can specify a publicPath here + // by default it use publicPath in webpackOptions.output + // publicPath: '../' + } + }, + { + loader: 'css-loader' + } + ] + }, + { + test: /\.(png|jpe?g|gif|svg|woff|woff2|ttf|eot|ico|otf)$/, + type: 'asset/resource' + } + ] + }, + + optimization: { + minimizer: [ + new TerserPlugin({ + parallel: true, + terserOptions: { + // https://github.com/webpack-contrib/terser-webpack-plugin#terseroptions + } + }) + ], + splitChunks: { + // include all types of chunks + chunks: 'all' + } + }, + + plugins: [ + new HtmlWebpackPlugin({ + template: 'index.webpack.html', + filename: 'index.html', + chunksSortMode : 'none' + }), + new CopyWebpackPlugin([ + {from: 'index.webpack.html', to: 'index.html'}, + {from: 'src/resources/img/progress.gif', to: 'src/resources/img/progress.gif'}, + {from: 'src/resources/img/logo.png', to: 'src/resources/img/logo.png'}, + {from: 'src/resources/app-config.json', to: 'src/resources/app-config.json'}, + {from: 'src/resources/app.version', to: 'src/resources/app.version'} + ]), + new MiniCssExtractPlugin({ + filename: '[name].[fullhash].css', + chunkFilename: '[id].[fullhash].css' + }), + new webpack.ProvidePlugin({ + $: "jquery", + jQuery: "jquery", + "window.jQuery": "jquery", + Popper: ['popper.js', 'default'] + }) + ], + + resolve: { + alias: { + 'jquery': _path('node_modules/jquery/dist/jquery.min'), + 'inputmask': _path('node_modules/inputmask/dist/inputmask'), + 'downloadjs': _path('node_modules/downloadjs/download.min.js'), + 'esmarttokenjs': _path('node_modules/esmarttokenjs/esmarttoken.js'), + 'cadesplugin_api': _path('node_modules/cadesplugin_api/index.js'), + 'eonasdan-bootstrap-datetimepicker': _path('node_modules/eonasdan-bootstrap-datetimepicker/src/js/bootstrap-datetimepicker'), + 'autonumeric': _path('node_modules/autonumeric/dist/autoNumeric.js'), + 'jsgantt-improved': _path('node_modules/jsgantt-improved/dist/jsgantt.js'), + 'js-year-calendar': _path('node_modules/js-year-calendar/dist/js-year-calendar.js'), + 'chart.js': _path('node_modules/chart.js/dist/chart.js') + }, + modules: [ + 'node_modules', + path.resolve(process.cwd(), './build'), + path.resolve(process.cwd(), './build/scripts'), + ], + extensions: ['.js'] + }, + + stats: { + children: false + }, + devtool: false +}; diff --git a/packages/.gitkeep b/packages/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/packages/ru.cg.webbpm.packages.base.resources/.flattened-pom.xml b/packages/ru.cg.webbpm.packages.base.resources/.flattened-pom.xml new file mode 100644 index 0000000..bba5ff2 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/.flattened-pom.xml @@ -0,0 +1,78 @@ + + + 4.0.0 + ru.cg.webbpm.packages.base + resources + 3.185.0 + + Micord + + + scm:git:git://gitserver/webbpm/webbpm-components.git/resources + + + + micord + Micord Release repository + https://repo.micord.ru/repository/packages-releases-local/ + + + snapshots + Micord Snapshots repository + https://repo.micord.ru/repository/packages-snapshots-local/ + + + + ${project.parent.basedir}/frontend/target + 3.19.3 + 5.10.2 + true + 3.185.0 + 1.4.200 + 1107112530 + UTF-8 + 1.10.0 + true + 3.185.0 + typescript.metadata.json + https://repo.micord.ru + MMddHHmmss + UTF-8 + ${project.parent.basedir}/backend/target + https://repo.micord.ru + java.metadata + + + + ru.cg.webbpm.packages.base + converters + 3.185.0 + compile + + + ru.cg.webbpm.packages.base + backend + 3.185.0 + compile + + + ru.cg.webbpm.packages.base + frontend + 3.185.0 + compile + + + + + micord-public + micord-public + https://repo.micord.ru/repository/maven-public + + + micord + micord + https://repo.micord.ru/repository/maven-micord + + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/MANIFEST.MF b/packages/ru.cg.webbpm.packages.base.resources/META-INF/MANIFEST.MF new file mode 100644 index 0000000..3121d98 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/MANIFEST.MF @@ -0,0 +1,4 @@ +Manifest-Version: 1.0 +Created-By: Maven Jar Plugin 3.2.0 +Build-Jdk-Spec: 17 + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components-package.xml b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components-package.xml new file mode 100644 index 0000000..65311b2 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components-package.xml @@ -0,0 +1,30 @@ + + + + + containers + 11000 + + + grids + 10000 + + + editable-grids + 9000 + + + buttons + 8000 + + + fields + 6000 + + + filters + 5000 + + + META-INF/components/localization/default-components + \ No newline at end of file diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/BpmnStartProcessVariable.ts.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/BpmnStartProcessVariable.ts.html new file mode 100644 index 0000000..5534c8c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/BpmnStartProcessVariable.ts.html @@ -0,0 +1,71 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
+
+ + + +
+
+

Описание: скрипт предназначен для записи значения объекта в переменную и передачи заполненной переменной в другой процесс во время его запуска.
+Скрипт накидывается на объект, значение которого мы хотим сохранить в переменную.

+ + + + + + + + + + + + + + + +
Наименование Назначение
Variable Name Строкой указываем имя переменной, в которую будет сохранено значение объекта. Переменная с таким именем (наименование должно быть идентичным) должна существовать в процессе, который будет запущен после текущего процесса.
Type Указывается тип переменной.
+

Механизм работы:

+

- в текущем процессе Test накинули скрипт BpmnStartProcessVariable на TextField, указали переменную var1. Переменная была создана в процессе Test2.
+- запускаем процесс Test2, в это время происходит поиск всех скриптов BpmnStartProcessVariable, записываются значения объектов в указанные переменные. Запускается процесс Test2, переменная var1 заполнена значением с TextField

+

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/index.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/index.html new file mode 100644 index 0000000..8a129bf --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/index.html @@ -0,0 +1,70 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミク + + + + + + + +
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..3dac324 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,86 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミソミオムミームひク ミクミキ ミウムミームミー ムムτ禍スミセムムひク ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку печати из графа сущности на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка печати из графа сущности, при нажатии на которую будет сформирован отчет в формате XLSX. Кнопка печати отчета из формы будет иметь следующие настройки:

+
    + +
  • надпись поля -Печать
  • +
  • граф сущности - monthly_data
  • +
  • список передаваемых параметров с формы в шаблон*-2*
  • +
  • в параметр шаблона отчета первого элемента - Year
  • +
  • из поля таблицы первого элемента - year
  • +
  • в параметр шаблона отчета второго элемента - Month
  • +
  • из поля таблицы второгоэлемента -month**
  • +
  • шаблон файла отчета -приложение.jrxml
  • +
  • формат выходного файла -XLSX
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница уже создана бизнес-аналитиком, где имеется основная компонента Форма и шаблон файла отчета приложение.jrxml, в котором имеются входные параметры Year и Month. Для добавления на страницу и настройки кнопки печати из графа сущности необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка печати из графа сущности (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки печати из графа сущности на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム祇ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム祇ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..2aef9d5 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム祇ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,87 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミソミオムミームひク ミセムびミオムひー ミクミキ ムミセムミシム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку печати отчета из формы на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка печати отчета из формы, при нажатии на которую будет сформирован отчет в формате XLSX. Кнопка печати отчета из формы будет иметь следующие настройки:

+
    + +
  • надпись поля -Печать
  • +
  • компонент “Форма” - Форма
  • +
  • список передаваемых параметров с формы в шаблон - 2
  • +
  • в параметр шаблона отчета первого элемента - Date_Begin
  • +
  • из поля формыпервого элемента - DateTimePicker_date_form
  • +
  • в параметр шаблона отчета второго элемента - Date_End
  • +
  • из поля формывторогоэлемента -DateTimePicker_to_date**
  • +
  • шаблон файла отчета - приложение.jrxml
  • +
  • формат выходного файла -XLSX
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница уже создана бизнес-аналитиком, где имеется основная компонента Форма и шаблон файла отчета приложение.jrxml, в котором имеются входные параметры Date_Begin и Date_End. Для добавления на страницу и настройки кнопки печати отчета из формы необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка печати отчета из формы (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки печати отчета из формы на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟スミセミソミコミー_ミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟スミセミソミコミー_ミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク.html new file mode 100644 index 0000000..6ba81b0 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟スミセミソミコミー_ミソミオムミームひク_ミクミキ_ミウムミームミー_ムムτ禍スミセムムひク.html @@ -0,0 +1,118 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミソミオムミームひク ミクミキ ミウムミームミー ムムτ禍スミセムムひク + + + + + + +
+
+ + + +
+
+

Кнопка печати из графа сущности

+

Назначение

+

Кнопка печати из графа сущности - это компонента, которая используется для печати данных, источником который служат значения из графа сущности. В результате нажатия на кнопку формируется документ в одном из заданных форматов: ODT, PDF, DOCX, XLSX.

+

Компонента Кнопка печати из графа сущности находится в разделе Компоненты - Кнопки - Кнопка печати из графа сущности

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Печать
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите напечатать отчет?
Основные параметры (Формировать отчет по собственному графу) Позволяет задать настройки формирования отчета. Сохранить используя - позволяет задать объект,в котором будет происходить сохранение сформированного документа в базу. Скачать сразу после формирования - позволяет задать автоматическое скачивание сформированного отчета
Файл шаблона и передача параметров (Формировать отчет по собственному графу) Позволяет задать файл шаблона отчета и формат выходного файла Список передаваемых параметров с формы в шаблон - позволяет добавить элементы, которые будут печататься. Граф сущностей - выбор графа сущностей, откуда будут печататься данные. Шаблон файла отчета - позволяет задать jasper шаблон, на основе которого будет формироваться документ. Формат выходного файла - позволяет задать расширение формируемого документа (ODT, PDF, DOCX, XLSX, XLS, CSV)
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки .

+

Вследствие технических особенностей реализации скриптов (

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка печати из графа сущности от компоненты Кнопка печати отчета из формы Компонента Кнопка печати отчета из формы предназначена для формирования отчета, в который подставляются значения с формы, Кнопка печати из графа сущности предназначена для формирования отчета, в который подставляются значения из графа сущностей.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
Как в Jaspersoft Studio связать локальные параметры датасета c глобальными параметрами отчета Table -> Properties -> вкладка Dataset -> Parameters. Тут добавляйте параметр датасета и в Expression вставляйте необходимый глобальный параметр отчета (Подробнее тут)
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟スミセミソミコミー_ミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟スミセミソミコミー_ミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム.html new file mode 100644 index 0000000..5cb023b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/reporting/ミ墟スミセミソミコミー_ミソミオムミームひク_ミセムびミオムひー_ミクミキ_ムミセムミシム.html @@ -0,0 +1,117 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミソミオムミームひク ミセムびミオムひー ミクミキ ムミセムミシム + + + + + + +
+
+ + + +
+
+

Кнопка печати отчета из формы

+

Назначение

+

Кнопка печати отчета из формы - это компонента, которая используется для печати данных, источником который служат значения из формы страницы. В результате нажатия на кнопку формируется документ в одном из заданных форматов: ODT, PDF, DOCX, XLSX.

+

Компонента Кнопка печати отчета из формы находится в разделе Компоненты - Кнопки - Кнопка печати отчета из формы

+

Свойства

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Печать
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите напечатать отчет?
Основные параметры (Формировать отчет из значений полей компонента “Форма”) позволяет задать настройки формирования отчета Сохранить используя - позволяет задать объект,в которомбудет происходить сохранение сформированного документа в базу. Скачать сразу после формирования - позволяет задать автоматическое скачивание сформированного отчета. Компонент Форма - позволяет задать объект типа Форма, поля которого печатаются по нажатию на кнопку
Файл шаблона и передача параметров (Формировать отчет из значений полей компонента “Форма”) позволяет задать файл шаблона отчета и формат выходного файла Список передаваемых параметров с формы в шаблон - позволяет добавить элементы, которые будут печататься. Шаблон файла отчета - позволяет задать jasper шаблон, на основе которого будет формироваться документ. Формат выходного файла - позволяет задать расширение формируемого документа (ODT, PDF, DOCX, XLSX, XLS, CSV).
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки .

+

Вследствие технических особенностей реализации скриптов (

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка печати отчета из формы от компоненты Кнопка печати из графа сущности Компонента Кнопка печати отчета из формы предназначена для формирования отчета, в который подставляются значения с формы, Кнопка печати из графа сущности предназначена для формирования отчета,в который подставляются значения из графа сущностей.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи. При использовании подотчетов (subreports) при разработке основного отчета в Jaspersoft Studio следует указывать полный путь до подотчетаотносительно папки resourcesстудии (в файловой системе resources/src/main/resources)
Как в Jaspersoft Studio связать локальные параметры датасета c глобальными параметрами отчета Table -> Properties -> вкладка Dataset -> Parameters. Тут добавляйте параметр датасета и в Expression вставляйте необходимый глобальный параметр отчета (Подробнее тут)
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾アミセムミー_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾アミセムミー_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..780706a --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾アミセムミー_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,90 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミイム巾アミセムミー ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку выбора на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка выбора, при нажатии на которую открывается страница с информацией по выбранной записи из таблицы реестра Рабочий журнал ЛВИ. Кнопка выбора будет иметь следующие настройки:

+
    + +
  • надпись поля -Открыть
  • +
  • возможность выбора более 1 записи - Не отмечено
  • +
  • компонент для выбора записей -Таблица
  • +
  • значение переменной навигации - open
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница уже создана бизнес-аналитиком, где имеется ***основные компоненты Форма и Таблица***. Для добавления на страницу и настройки кнопки выбора необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка выбора (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки выбора на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи, кнопка выбора не активна

+

рис.3. Визуальное отображение выполнения условий задачи, кнопка выбора активна

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾キミセミイミー_ミセム威クミアミコミク_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾キミセミイミー_ミセム威クミアミコミク_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..9901cd6 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾キミセミイミー_ミセム威クミアミコミク_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,80 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミイム巾キミセミイミー ミセム威クミアミコミク ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку вызова ошибки на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка вызова ошибки, при нажатии на которую будет появляться сообщение об ошибки. Кнопка загрузки будет иметь следующие настройки:

+
    + +
  • надпись поля -Ошибка
  • +
  • задается наименование ошибки -Отсутствует соединение**
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***. Для добавления на страницу и настройки кнопки вызова ошибки необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка вызова ошибки (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки вызова ошибки на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾ソミセミサミスミオミスミクム柔SQL_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾ソミセミサミスミオミスミクム柔SQL_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..4f90de1 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミイム巾ソミセミサミスミオミスミクム柔SQL_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,103 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミイム巾ソミセミサミスミオミスミクム SQL ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку выполнения SQL на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка выполнения SQL, при нажатии на которую будет выполняться SQL-скрипт. Кнопка выполнения SQL будет иметь следующие настройки:

+
    + +
  • + +

    надпись поля -В архив

    +
  • +
  • + +

    текст подтверждения при нажатии -Вы действительно хотите переместить выбранные задачи в архив?

    +
  • +
  • + +

    текст SQL запроса -

    +

    update tasks
    +set status_id =
    +(
    +select task_statuses_id
    +from task_statuses
    +where status_code =‘ARCHIVED’
    +)

    +

    where task_id=ANY(?)

    +
  • +
  • + +

    параметры запроса, элемент - Таблица “Задачи”, Таблица.Get Select Values

    +
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страницауже создана бизнес-аналитиком, где имеется ***основная компонента Таблица “Задачи”***. Для добавления на страницу и настройки кнопки выполнения SQL необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка выполнения SQL (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки выполнения SQL на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2 Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミエミサム柔ムミクミサム袴びミームミクミク_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミエミサム柔ムミクミサム袴びミームミクミク_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..b88285c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミエミサム柔ムミクミサム袴びミームミクミク_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,81 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミエミサム ムミクミサム袴びミームミクミク ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку для фильтрации на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка для фильтрации, при нажатии на которую будет отфильтрован список организаций. Кнопка для фильтрации будет иметь следующие настройки:

+
    + +
  • надпись поля -Применить
  • +
  • компонет “Набор фильтров” - набор фильтров
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страницауже создана бизнес-аналитиком, где имеется ***основные компоненты Форма и Набор фильтров***. Для добавления на страницу и настройки кнопки для фильтрации необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка для фильтрации (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки для фильтрации на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミキミーミウムムσキミコミク_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミキミーミウムムσキミコミク_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..10124e2 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミキミーミウムムσキミコミク_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,82 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミキミーミウムムσキミコミク ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку загрузки на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка загрузки, при нажатии на которую будет скачиваться файл из базы данных. Кнопка загрузки будет иметь следующие настройки:

+
    + +
  • поле должно иметь всплывающую подсказку -Для загрузки файла нажмите на кнопку
  • +
  • надпись поля - Скачать
  • +
  • текст подтверждения при нажатии -Вы действительно хотите скачать файл?
  • +
  • компонет для выбора записи - Таблица
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страницауже создана бизнес-аналитиком, где имеется ***основные компоненты Форма и Таблица***. Для добавления на страницу и настройки кнопки загрузки необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка загрузки (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки загрузки на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..98ce06f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,86 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка, которая будет иметь следующие настройки:

+
    + +
  • надпись поля -Перейти к заполнению реквизитов
  • +
  • скрипт -Вкладки. Управление “Вкладкой”. Переход из текущей на последующую
  • +
  • компонента “Вкладки” - Контейнер вкладок
  • +
  • шаг перехода к следующей вкладке (число) - 1
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница и бизнес процесс уже созданы бизнес-аналитиком. Настранице имеется основная компонента Форма, а в ней Контейнер вкладок и ***Вкладка***. Для добавления на страницу и настройки кнопки необходимо сделать следующее:

+
    + +
  • добавить внутрь Вкладки компоненту Кнопка (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки навигации на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+

При нажатии на кнопку происходит переход на вкладку “Реквизиты” (рис.3)

+

+

рис.3. Вкладка “Реквизиты”

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミーミイミクミウミームミクミク_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミーミイミクミウミームミクミク_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..5c6a22b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミスミーミイミクミウミームミクミク_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,84 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミスミーミイミクミウミームミクミク ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку навигации на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка навигации, которая будет иметь следующие настройки:

+
    + +
  • надпись поля - Открыть
  • +
  • поле должно иметь всплывающую подсказку -Для редактирования нажмите на кнопку
  • +
  • значение переменной навигации -open
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница и бизнес процесс уже созданы бизнес-аналитиком. В процессе создана переменная open, а на странице имеется ***основная компонента Форма***. Для добавления на страницу и настройки кнопки навигации необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка навигации (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки навигации на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミセムひシミオミスム祇ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミセムひシミオミスム祇ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..c4d568c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミセムひシミオミスム祇ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,82 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミセムひシミオミスム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку отмены на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка отмены, которая будет иметь следующие настройки:

+
    + +
  • надпись поля -Отменить
  • +
  • поле должно иметь всплывающую подсказку -Для отмены нажмите на кнопку
  • +
  • поле должно иметь текст подтверждения при нажатии -Вы действительно хотите отменить изменения?
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страницауже создана бизнес-аналитиком, где имеется ***основная компонента Форма***. Для добавления на страницу и настройки кнопки отмены необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка отмены (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки отмены на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミセムミクムムひコミク_ムミクミサム袴びミー_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミセムミクムムひコミク_ムミクミサム袴びミー_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..a27125a --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダミセムミクムムひコミク_ムミクミサム袴びミー_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,83 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ミセムミクムムひコミク ムミクミサム袴びミー ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку очистки фильтра на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка очистки фильтра, которая будет иметь следующие настройки:

+
    + +
  • надпись поля -Сбросить
  • +
  • компонет “Набор фильтров” -набор фильтров
  • +
  • сбросить значения фильтров на значения по умолчанию - отмечено
  • +
  • применить фильтры после сброса - отмечено
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страницауже создана бизнес-аналитиком, где имеется ***основные компоненты Форма и Набор фильтров***. Для добавления на страницу и настройки кнопки для фильтрации необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка для фильтрации (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки очистки фильтра на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムミセムムミーミスミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムミセムムミーミスミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..8288286 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムミセムムミーミスミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,86 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ムミセムムミーミスミオミスミクム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку сохранения на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка сохранения, которая будет иметь следующие настройки:

+
    + +
  • надпись поля -Сохранить
  • +
  • поле должно иметь всплывающую подсказку -Для сохранения нажмите на кнопку
  • +
  • поле должно иметь текст подтверждения при нажатии -Вы действительно хотите сохранить изменения?
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страницауже создана бизнес-аналитиком, где имеется ***основная компонента Форма***. Для добавления на страницу и настройки кнопки сохранения необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка сохранения (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки сохранения на страницу

+

Для заполнения параметра Компонент “Форма” необходимо перетащить с помощью мыши объект “Основная форма страницы” из дерева структуры страницы в окно настройки параметров Кнопки сохранения.

+

Также существует удобная функциональность обратного быстрого перехода по дереву структуры страницы к задействованной компоненте посредством клика на параметре Компонент “Форма” Кнопки сохранения, когда есть необходимость уточнить, на какую именно компоненту в дереве ссылается интересующий параметр.

+

рис.2. Заполнение параметра Компонент “Форма”

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.3)

+

+

рис.3. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムσエミーミサミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムσエミーミサミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..e18c330 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミスミセミソミコムダムσエミーミサミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,84 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミスミセミソミコム ムσエミーミサミオミスミクム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить кнопку удаления на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Кнопка удаления, которая будет иметь следующие настройки:

+
    + +
  • надпись поля -Удалить
  • +
  • поле должно иметь всплывающую подсказку -Для удаления нажмите на кнопку
  • +
  • поле должно иметь текст подтверждения при нажатии -Вы действительно хотите удалить запись?
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страницауже создана бизнес-аналитиком, где имеется ***основная компонента Форма***. Для добавления на страницу и настройки кнопки сохранения необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Кнопка удаления (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление кнопки удаления на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー.html new file mode 100644 index 0000000..23e8347 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー.html @@ -0,0 +1,105 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー + + + + + + +
+
+ + + +
+
+

Кнопка

+

Кнопка - это компонента, которая не выполняет никаких действий, но на нее могут быть добавлены скрипты,которые позволят выполнять действий с формой (активация компонент, изменение свойств, т.д.), действий с переменными и действий над данными.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Перейти в реестр услуг
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите перейти в реестр услуг?
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки

+

Вследствие технических особенностей реализации скриптов (

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка от компоненты Кнопка навигации Компонента Кнопка не выполняет никаких действий, но на нее могут быть добавлены скрипты, кнопка навигации используется для перехода по задачам процесса посредством заданной переменной.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾アミセムミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾アミセムミー.html new file mode 100644 index 0000000..7e8c43f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾アミセムミー.html @@ -0,0 +1,117 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミイム巾アミセムミー + + + + + + +
+
+ + + +
+
+

Кнопка выбора

+

Назначение

+

Кнопка выбора - этокомпонента, которая используется для выбора одного или нескольких значений в компоненте Таблица. Кнопка выбора становится активной после выбора хотя бы одной записи.

+

Компонента Кнопка выбора находится в разделе Компоненты - Кнопки - Кнопка выбора

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Сохранить
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите сохранить изменения?
Возможность выбора более одной записи позволяет задать возможность выбора нескольких элементов в таблице активно - более 1, не активно - только 1
Компонент для выбора записи позволяет задать компоненту Таблица в которой будут выбраны элементы
Получить идентификатор выбранной записи позволяет записать идентификатор выбранной записи в переменную процесса
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка выбора от компоненты Кнопка Компонента Кнопка не выполняет никаких действий, но на нее могут быть добавлены дополнительные функции, кнопка выборка используется для выбора данных на текущей форме.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾キミセミイミー_ミセム威クミアミコミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾キミセミイミー_ミセム威クミアミコミク.html new file mode 100644 index 0000000..601b852 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾キミセミイミー_ミセム威クミアミコミク.html @@ -0,0 +1,172 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミイム巾キミセミイミー ミセム威クミアミコミク + + + + + + +
+
+ + + +
+
+

Кнопка вызова ошибки

+

Назначение

+

Кнопка вызова ошибки - это компонента, которая используется для вызова события ошибки. При этом текущая страница будет закрыта и осуществлен переход по bpmn процессу.

+

Компонента Кнопка вызова ошибки находится в разделе Компоненты - Кнопки - Кнопка вызова ошибки

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Выполнить запрос
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите выполнить действие?
Наименование ошибки позволяет задать наименование ошибки пример возможного значения: Отсутсвует соединение
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Пример настройки

+

Настройка производится в дизайнере процессов и студии.

+

Настройка в дизайнере процессов

+

Промежуточное событие ошибки отражает факт возникновения и/или обработки ошибки в процессе.

+

На Task устанавливается Catching Intermediate Events → Error:

+

+

Таких событий на таск может быть установлено множество. Для того, чтобы осуществлять переход на нужное событие, мы должны прописать уникальную ссылку ErrorRef:

+

+

Это значит, что если по _ErrorButton придет значение “error-connect-client”, то будет выбрано наше событие ошибки.

+

Настройка в студии

+

Кидаем на страницу компонент ErrorButton.

+

Настраиваем его.

+

В свойство “Error Name” прописываем тот же ErrorRef (см. Настройка в дизайнере процессов), для того чтобы перейти на нужное событие ошибки.

+

+
    + +
  1. Добавляем ErrorButton на страницу
  2. +
  3. В поле errorName задаем имя ошибки.
  4. +
+


+

Обработка события в BPMN процессе

+

Обработать событие ошибки можно двумя способами:

+
    + +
  1. Повесить граничный слушатель события (boundary event) на текущий элемент (можно повесить на задачу, вызов подпросцесса, ad-hoc подпроцесс, embedded подпроцесс). В данном случае будет отлавливаться только событие произошедшее в рамках данного элемента.
  2. +
  3. Создать event подпроцесс, в котором стартовое событие будет типа Ошибка. Данный процесс будет обрабатывать событие произошедшее в любом месте диаграммы, в которой он находится.
  4. +
+

При этом в свойствах bpmn элемента события нужно поставить свойство _CancelActivity _в_true _и в _ErrorRef прописать имя ошибки (должно совпадать с указанным в кнопке).

+

+

Примеры:

+ + + + + + + + + + + + + + + + + + + + + +
Тип обработки Процесс
Прокидывание ошибки на уровень выше. Имя ошибки у начального и конечного события должно быть разным, иначе jbpm зациклится.
Обработка ошибки event подпроцессом
Граничный обработчик (boundary event)
Граничный обработчик на встроенном подпроцессе
+

вопрос: почему error event не прерывает остальные задачи?

+

По концепции bpmn события не должны сами по себе вызывать никаких действий в процессе. Если нужно прекратить исходную задачу, то нужно использовать прерывающий boundary event или event subprocess. В случае ошибки event subprocess обязан быть прерывающим.

+

В случае jbpm, у него есть особенность, что event subprocess прерывает действие родительского процесса не при старте, а при финише, соответственно получается что и задачи открыто две.

+

Частный случай предыдущего: в Embedded-подпроцессе error event и переход в подпроцесс:

+


+В этом случае процесс переходит в список задач с ошибкой. Нужно обходить указанную ситуацию с помощью первого примера типа обработки.

+

Доп. информация

+
    + +
  1. Описание BPMN событий от Camunda
  2. +
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
В каких случаях целесообразно использование кнопки вызова ошибки? Компонента Кнопка вызова ошибки предназначена для вызова события ошибки, она используется когда в bpmn процессе пользователю позволяется вызвать ошибку с последующим переходом на новую задачу.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔SQL.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔SQL.html new file mode 100644 index 0000000..aa5d763 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔SQL.html @@ -0,0 +1,117 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミイム巾ソミセミサミスミオミスミクム SQL + + + + + + +
+
+ + + +
+
+

Кнопка выполнения SQL

+

Назначение

+

Кнопка выполнения SQL - это компонента, которая используется для асинхронного выполнения SQL-запроса без покидания/перезагрузки страницы.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Выполнить запрос
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите выполнить SQL запрос?
Набор параметров для выполнения запроса настройка связи источника значений для подстановки в переменные (параметры) запроса, указывается последовательный номер параметра в запросе (начиная с 1) и объект-источник значения
Тело SQL запроса к базе данных ввод текста SQL
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки .

+

Вследствие технических особенностей реализации скриптов(

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка выполнения SQL от компоненты Кнопка Компонента Кнопкане выполняет никаких действий, но на нее могут быть добавлены скрипты, кнопка выполнения SQLиспользуется для асинхронного выполнения SQL-запроса.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
Как получить для использования на странице результат выполнения запроса после того, как кнопка была нажата Следует воспользоваться методом компоненты getResult в компоненте Обработка событий. Однако, этот метод возвращает значение только строкового типа (String), поэтому полученное в результате значение может быть передано только в компонент, оперирующий текстовыми значениями.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔ミアミクミキミスミオム-ミソムミセムミオムムミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔ミアミクミキミスミオム-ミソムミセムミオムムミー.html new file mode 100644 index 0000000..174e9a7 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミイム巾ソミセミサミスミオミスミクム柔ミアミクミキミスミオム-ミソムミセムミオムムミー.html @@ -0,0 +1,86 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミイム巾ソミセミサミスミオミスミクム ミアミクミキミスミオム-ミソムミセムミオムムミー + + + + + + +
+
+ + + +
+
+

Кнопка выполнения бизнес-процесса

+

ExecProcessButton - компонента для запуска определённого бизнес-процесса с возможностью первоначальной установки значений переменных процесса. При нажатии на кнопку выполняется процесс, указанный в параметре BusinessProcessToStart (Запускаемый процесс). Имеет событие завершения выполнения процесса и метод для получения переменных.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки строка
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку. Если не задать, то диалоговое окно не отобразиться строка
Бизнес-процесс для запуска (Модель процесса с переменными) наименование бизнес-процесса, который будет запущен при нажатии на кнопку относительный путь до файла, *.bpmn2, содержащий описание бизнес-процесса
Переменные (Модель процесса с переменными) наименование переменной bpmn-процесса, значение которой необходимо задать значение, соответствующее типу выбранной переменной процесса
Событие завершения бизнес-процесса (processCompleted) событие, которое можно использовать в AC, чтобы узнать, когда бизнес-процесс завершил свою работу
Метод получения результирующих переменных (getResult) метод, который можно использовать в AC, для получения результирующих переменных имя переменной
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミエミサム柔ムミクミサム袴びミームミクミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミエミサム柔ムミクミサム袴びミームミクミク.html new file mode 100644 index 0000000..84cf308 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミエミサム柔ムミクミサム袴びミームミクミク.html @@ -0,0 +1,110 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミエミサム ムミクミサム袴びミームミクミク + + + + + + +
+
+ + + +
+
+

Кнопка для фильтрации

+

Назначение

+

Кнопка для фильтрации - это компонента, которая используется для срабатывания фильтра.

+

Компонента Кнопка для фильтрации находится в разделе Компоненты - Кнопки - Кнопка для фильтрации

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Применить
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите применить фильтрацию?
Набор фильтров позволяет задать компоненту Набор фильтров
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки

+

Вследствие технических особенностей реализации скриптов (

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка для фильтрации от компоненты Кнопка Компонента Кнопка не выполняет никаких действий, но на нее могут быть добавлены скрипты, кнопка для фильтрации используется для срабатывания фильтра.
Все ли свойства компоненты обязательны для заполнения? Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミキミーミウムムσキミコミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミキミーミウムムσキミコミク.html new file mode 100644 index 0000000..f2030f4 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミキミーミウムムσキミコミク.html @@ -0,0 +1,115 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミキミーミウムムσキミコミク + + + + + + +
+
+ + + +
+
+

Кнопка загрузки

+

Назначение

+

Кнопка загрузки - это компонента, которая используется для скачивания файла.

+

Компонента Кнопка загрузки находится в разделе Компоненты - Кнопки - Кнопка загрузки

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Скачать
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите скачать файл?
Компонент для выбора записи позволяет задать компоненту Таблица из которой будет скачен файл
Скачать файл из базы данных позволяет задать таблицу базы данных из которой будет скачан файл
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки .

+

Вследствие технических особенностей реализации скриптов(

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка загрузки от компоненты Кнопка Компонента Кнопка не выполняет никаких действий, но на нее могут быть добавлены скрипты, кнопка навигациииспользуется для перехода по задачам процесса посредством заданной переменной.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミキミーミソムτミコミー_ミアミクミキミスミオム-ミソムミセムミオムムミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミキミーミソムτミコミー_ミアミクミキミスミオム-ミソムミセムミオムムミー.html new file mode 100644 index 0000000..c5f327d --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミキミーミソムτミコミー_ミアミクミキミスミオム-ミソムミセムミオムムミー.html @@ -0,0 +1,81 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミキミーミソムτミコミー ミアミクミキミスミオム-ミソムミセムミオムムミー + + + + + + +
+
+ + + +
+
+

Кнопка запуска бизнес-процесса

+

Кнопка запуска BPMN-процесса - компонента для запуска определённого бизнес-процесса с возможностью первоначальной установки значений переменных процесса. При нажатии на кнопку запускается процесс, указанный в параметре BusinessProcessToStart (Запускаемый процесс) и происходит переход на первую страницу процесса. Текущие процесс и задача, при этом, не завершаются. Таким, образом, кнопка может бить использована на статических страницах, которые не привязаны к задачам бизнес-процессов.

+

Компонента Кнопка запуска BPMN-процесса находится в разделе Компоненты - Кнопки - Кнопка запуска BPMN-процесса.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Открыть карточку
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите открыть карточку услуги?
Бизнес процесс для запуска (Модель процесса с переменными) Наименование бизнес-процесса, который будет запущен при нажатии на кнопк Относительный путь до файла, *.bpmn2, содержащий описание бизнес-процесса
Переменные (Модель процесса с переменными) Наименование переменной bpmn-процесса, значение которой необходимо задать Значение, соответствующее типу выбранной переменной процесса
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミスミーミイミクミウミームミクミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミスミーミイミクミウミームミクミク.html new file mode 100644 index 0000000..1f9ca2f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミスミーミイミクミウミームミクミク.html @@ -0,0 +1,107 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミスミーミイミクミウミームミクミク + + + + + + +
+
+ + + +
+
+

Кнопка навигации

+

Кнопка навигации - это компонента, которая используется для навигации по задачам процесса. При нажатии на кнопку текущая задача закрывается. Компонента Кнопка навигации находится в разделе Компоненты - Кнопки - Кнопка навигации

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Открыть карточку
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите открыть карточку услуги?
Значение переменной навигации позволяет задать значение, которое принимает переменная процесса. пример возможного значения: open
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка навигации от компоненты Кнопка Компонента Кнопка не выполняет никаких действий, но на нее могут быть добавлены скрипты, кнопка навигации используется для перехода по задачам процесса посредством заданной переменной.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミセムひシミオミスム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミセムひシミオミスム.html new file mode 100644 index 0000000..02659fe --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミセムひシミオミスム.html @@ -0,0 +1,107 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミセムひシミオミスム + + + + + + +
+
+ + + +
+
+

Кнопка отмены

+

Назначение

+

Кнопка отмены - это компонента, которая используется для завершения таска без сохранения внесенных изменений на форме страницы.

+

Компонента Кнопка отмены находится в разделе Компоненты - Кнопки - Кнопка отмены

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Отмена
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите отменить изменения?
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки

+

Вследствие технических особенностей реализации скриптов(

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка отмены от компоненты Кнопка? Компонента Кнопкане выполняет никаких действий, но на нее могут быть добавлены скрипты, кнопка отмены используется для сброса внесенных изменений на текущей форме.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミセムミクムムひコミク_ムミクミサム袴びミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミセムミクムムひコミク_ムミクミサム袴びミー.html new file mode 100644 index 0000000..919445d --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミセムミクムムひコミク_ムミクミサム袴びミー.html @@ -0,0 +1,118 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ミセムミクムムひコミク ムミクミサム袴びミー + + + + + + +
+
+ + + +
+
+

Кнопка очистки фильтра

+

Назначение

+

Кнопка очистки фильтра - это компонента, которая используется для очищения полей фильтра.

+

Компонента Кнопка очистки фильтра находится в разделе Компоненты - Кнопки - Кнопка очистки фильтра

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Сбросить
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите сбросить фильтрацию?
Набор фильтров позволяет задать компоненту Набор фильтров
Сбросить значение фильтров на значение по умолчанию при нажатии на кнопку возвращает значения заданных фильтров к значениям по умолчанию не сбрасывать - значение по умолчанию
Применить фильтры после сброса позволяет задать возможность возврата фильтруемой Таблицы в первоначальное состояние при нажатии на кнопку не применять значения фильтров - значение по умолчанию
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки

+

Вследствие технических особенностей реализации скриптов (

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка очистки фильтра от компоненты Кнопка? Компонента Кнопка не выполняет никаких действий, но на нее могут быть добавлены скрипты, кнопка очистки фильтра используется для очищения полей фильтра.
Все ли свойства компоненты обязательны для заполнения? Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミソミセミエミソミクムミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミソミセミエミソミクムミク.html new file mode 100644 index 0000000..34b30fd --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミソミセミエミソミクムミク.html @@ -0,0 +1,152 @@ + + + + + + + + Web-BPM Docs – ミ斷ーミキミスミームミオミスミクミオ ミコミセミシミソミセミスミオミスムひー + + + + + + +
+
+ + + +
+
+

Назначение компонента

+

Составной компонент SignButton служит для создания электронной подписи и отображения подписываемых данных

+

Настройка компонента

+

Настройка скрипта SignButton: в HBox → SignButton

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию Параметр обязателен
Sign Type Выбор типа электронной подписи. Возможные варианты: CMS, CADES_BES, CADES_T, CADES_X_LONG_TYPE_1 - да
Selectable Component Объект для выбора подписываемого документа из списка. Необходим для получения id подписываемого документа, если не указана переменная процесса documentId в SignButtonRpcService. В случае, если указан и Document Id, и Selectable Component, то по приоритету будет взят id, выбранный пользователем из Selectable Component. - Обязательно заполнение либо Document Id, либо Selectable Component
Complete Task After Signing В случае значения true, после подписания текущий таск будет завершен - да
Navigate To Параметр для перенаправления пользователя после завершения текущего таска. Параметр не используется, если completeTaskAfterSigning = false - нет
Реализация провайдера электронной подписи Для использования конкретной реализации электронной подписи. Необходимо добавить соответствующий ts-файл в объект SignButton. На данный момент есть две реализации: EsmartPlugin.ts и CadesPluginApi.ts. При использовании EsmartPlugin.ts и типа подписи CADES_T необходимо указать системную переменную webbpm_components.electronic_sign.esmart_extension_url со ссылкой для расширения подписи “_dsig/ibs_dSig.asmxhttp://dsig.ibsdemo.ru/ibs - да
Other Остальные параметры настраивать только в случае, если не устраивает стандартное устройство компонента
+

Настройка скрипта SignButtonRpcService: HBox → SignButton

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию Параметр обязателен
Document Id Параметр необходим для получения Id подписываемого документа, если не указан параметр Selectable Component со списком записей. В случае, если указан и Document Id, и Selectable Component, то по приоритету будет взят id, выбранный пользователем из Selectable Component. - Обязательно заполнение либо Document Id, либо Selectable Component
Document Provider Провайдер подписываемых данных. Реализация класса ru.cg.webbpm.electronic_sign.DocumentProvider. - да
Document Dao Класс для сохранения и получения подписанных данных. Реализация класса ru.cg.webbpm.electronic_sign.DocumentDao - да
+

Сценарий использования кнопки подписи:

+
    + +
  1. + +

    Пользователь в процессе работы над документом или после его выбора в списке уже созданных нажимает на кнопку “Подписать”

    +
  2. +
  3. + +

    Если подходящий сертификат для подписания единственен, то окно выбора отображено не будет; в противном случае пользователь должен выбрать подходящий сертификат в окне “Выбор сертификата”.

    +
  4. +
  5. + +

    Пользователю выводится окно ввода пароля с возможностью отмены операции

    +
  6. +
  7. + +

    Происходит подписание документа, сохранение подписи в байтах в базе данных

    +
  8. +
+

КриптоПро

+

Для работы компоненты требуется установить КриптоПро CSP и КриптоПро ЭЦП Browser plug-in. Тестовый сертификат можно получить тут, при этом нужно установаить сертификат тестового центра как довереный корневой сертификат. Страница проверки работы плагина.

+

Esmart

+

Для работы компоненты требуется установить:

+
    + +
  • 32-битную firefox версии 38 - 52 (рекомендуется 52.5.2esr).
  • +
  • PKI Client и ESMART Token Web Плагин последних версий с официального сайта ESMART - demo.esmart.ru.
  • +
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミソムミセミイミオムミコミク_ミソミセミエミソミクムミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミソムミセミイミオムミコミク_ミソミセミエミソミクムミク.html new file mode 100644 index 0000000..ba21c46 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ミソムミセミイミオムミコミク_ミソミセミエミソミクムミク.html @@ -0,0 +1,100 @@ + + + + + + + + Web-BPM Docs – ミ斷ーミキミスミームミオミスミクミオ ミコミセミシミソミセミスミオミスムひー + + + + + + +
+
+ + + +
+
+

Назначение компонента

+

Составной компонент SignVerification служит для проверки электронной подписи и отображения подписанных данных.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию Параметр обязателен
Sign Type Выбор типа электронной подписи. Возможные варианты: CMS, CADES_BES, CADES_T, CADES_X_LONG_TYPE_1 - да
Use Verify Chain Значение true указывает, что необходимо проверить цепочку сертификатов, false - не проверять цепочку, в этом случае проверяется только подпись. - по умолчанию, цепочка сертификатов не используется нет
Реализация провайдера электронной подписи Для использования конкретной реализации электронной подписи. Необходимо добавить соответствующий ts-файл в объект SignVerificationButton. На данный момент есть две реализации: EsmartPlugin.ts и CadesPluginApi.ts. При использовании EsmartPlugin.ts и типа подписи CADES_T необходимо указать системную переменную webbpm_components.electronic_sign.esmart_extension_url со ссылкой для расширения подписи “_dsig/ibs_dSig.asmxhttp://dsig.ibsdemo.ru/ibs - да
Document Id Параметр необходим для получения Id подписываемого документа. - да
Document Provider Провайдер подписываемых данных. Реализация класса ru.cg.webbpm.electronic_sign.DocumentProvider. - да
Document Dao Класс для сохранения и получения подписанных данных. Реализация класса ru.cg.webbpm.electronic_sign.DocumentDao - да
+

Компонента проверки отображает корректность электронной подписи с помощью иконки:

+
    + +
  • Красного цвета в том случае, если электронная подпись не валидна
  • +
  • Зеленого цвета в том случае, если электронная подпись валидна
  • +
  • Серого цвета в том случае, если актовая запись не подписана
  • +
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ムミセムムミーミスミオミスミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ムミセムムミーミスミオミスミクム.html new file mode 100644 index 0000000..1813cc1 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ムミセムムミーミスミオミスミクム.html @@ -0,0 +1,112 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ムミセムムミーミスミオミスミクム + + + + + + +
+
+ + + +
+
+

Кнопка сохранения

+

Назначение

+

Кнопка сохранения - это компонента, которая используется для завершения задачи с сохранением данных на форме страницы. Компонента Кнопка сохранения находится в разделе Компоненты - Кнопки - Кнопка сохранения

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Сохранить
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите сохранить изменения?
Компонент “Форма” позволяет задать основную компоненту Форма поля которой сохранятся при нажатии на кнопку
Complete Task позволяет задать будет ли завершена текущая задача
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка сохранения от компоненты Кнопка? Компонента Кнопка не выполняет никаких действий, но на нее могут быть добавлены дополнительные функции, кнопка сохранения используется для сохранения данных на текущей форме.
Все ли свойства компоненты обязательны для заполнения Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ムσエミーミサミオミスミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ムσエミーミサミオミスミクム.html new file mode 100644 index 0000000..1e5158e --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミー_ムσエミーミサミオミスミクム.html @@ -0,0 +1,110 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミー ムσエミーミサミオミスミクム + + + + + + +
+
+ + + +
+
+

Кнопка удаления

+

Назначение

+

Кнопка удаления - это компонента, которая используется для удаления элементов из Таблица.

+

Компонента Кнопка удаления находится в разделе Компоненты - Кнопки - Кнопка удаления

+

Свойства

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Удалить
Текст подтверждения при нажатии позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку пример возможного значения: Вы действительно хотите удалить запись?
Удалить из таблицы позволяет задать основную компоненту Таблица из которой будет удалена запись
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки

+

Вследствие технических особенностей реализации скриптов(

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Кнопка удаления от компоненты Кнопка? Компонента Кнопка не выполняет никаких действий, но на нее могут быть добавлены скрипты, кнопка удаления используется для удаления записи из таблицы.
Все ли свойства компоненты обязательны для заполнения? Нет.Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミク.html new file mode 100644 index 0000000..e4d7a8b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/buttons/ミ墟スミセミソミコミク.html @@ -0,0 +1,69 @@ + + + + + + + + Web-BPM Docs – ミ墟スミセミソミコミク + + + + + + + +
+
+
+
+

© 2022 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ContainerValueByEventLoader_ミク_ContainerValueByEventLoaderRpcService.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ContainerValueByEventLoader_ミク_ContainerValueByEventLoaderRpcService.html new file mode 100644 index 0000000..1ea9472 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ContainerValueByEventLoader_ミク_ContainerValueByEventLoaderRpcService.html @@ -0,0 +1,53 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
+
+ + + +
+
+

Описание: Скрипты предназначены для подгрузки значений в контейнеры по массиву параметров, которая происходит после заданных событий.

+

Использование:

+

Настройка внутри контейнера - На контейнере в скрипте ContainerValueByEventLoader.ts в массив “Params” добавить объекты и выбрать их параметры, по которым будет происходить подгрузка. В массив “Events Refs” добавить объекты и выбрать события, после которых будет отрабатывать подгрузка. - В скрипте ContainerValueByEventLoaderRpcService.java, в комбобоксе “Script” выбрать необходимую реализацию сервиса(к примеру ContainerByPkValueLoaderServiceImpl). Настроить Load Dao выбрав необходимую реализацию скрипта и настроить граф сущностей.

+

Настройка внутри объекта - На объектах в которые будет происходить подгрузка (к примеру в TextField это TextFieldValueByEvent) задать параметр, аналогично DefaultValue.

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/index.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/index.html new file mode 100644 index 0000000..49882b8 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/index.html @@ -0,0 +1,130 @@ + + + + + + + + Web-BPM Docs – ミ墟セミスムひオミケミスミオムム + + + + + + +
+
+ + + +
+
+

Контейнеры

+
+

Правила наследования значений свойств Подлежит сохранению, Обязательность дочерними компонентами, входящими в состав родительской компоненты контейнера

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
значение свойства у компоненты-контейнера значение свойства дочерней компоненты итоговое значение свойства
True True True
True False False
False True False
False False False
Undefined True True
Undefined False False
+

Правила наследования значений свойства Видимость дочерними компонентами, входящими в состав родительской компоненты контейнера

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
значение свойства у компоненты-контейнера значение свойства дочерней компоненты итоговое значение свойства
True True True
True False False
False True False
False False False
+

Скрипты - Дополнительная подгрузка

+

Функции - Стили контейнеров

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html new file mode 100644 index 0000000..8c1ab99 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html @@ -0,0 +1,162 @@ + + + + + + + + Web-BPM Docs – ミ漬オムムひクミコミーミサム糊スム巾ケ ミコミセミスムひオミケミスミオム + + + + + + +
+
+ + + +
+
+

Вертикальный контейнер

+

Назначение

+

Вертикальный контейнер - это невидимая компонента-контейнер, которая позволяет расположить внутри себя набор видимых компонент в вертикальной последовательности, когда каждая следующая видимая компонента находится на новой строке под предыдущей.

+

Используется для оптимизации расположения компонентов в интерфейсе системы, обеспечивая возможность группировки и логического объединения компонентов в определенных секторах web-страницы и общее эстетическое и интуитивное восприятие экранного интерфейса пользователем системы.

+

Как правило, в состав Вертикального контейнера включаются визуальные компоненты, но также Вертикальные контейнеры могут быть размещены обособлено в дереве редактора интерфейса для облегчения чтения аналитиком структуры страницы ивключать в себя невизуальные компоненты для служебного использования (предзагрузка значений переменных процесса в компоненты, компоненты с подгруженными значениями по умолчанию, компоненты Обработка событий и т.п.)

+

Компонента Вертикальный контейнер находится в разделе Компоненты - Контейнеры - Вертикальный контейнер

+

Свойства

+

Компонента имеет набор общих свойств и подгрузка данных по умолчанию

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации функций (

+

- функции, которые выполняются удаленно на сервере приложений,

+

- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO: описать

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
В чем заключаются лучшие практики использования контейнеров? Чаще всего контейнерами зонируют экранный интерфейс, чтобы добиться эргономичного расположения компонентов на web-странице. Например, в горизонтальный контейнер вкладывают несколько вертикальных, добиваясь, колончатой структуры страницы. Пример такой реализации можно посмотреть в методических рекомендациях по применению.
Что происходит в горизонтальном контейнере, если ширины экрана не хватает для размещения в горизонтальном направлении всех компонент? После заполнения всей доступной ширины web-страницы, система автоматически начинает переносить оставшиеся компоненты на строчку ниже и продолжать заполнять ими ширину экрана, располагая оставшиеся компоненты друг за другом в горизонтальной последовательности.
Насколько глубокую иерархию вложенности можно создать, комбинируя контейнеры между собой? Теоретически, глубина вложенности контейнеров разного типа друг в друга не ограничена. Но на практике комбинирование вложенностью контейнеров применяется для решения конкретной проблемы эргономичного расположения визуальных компонентов на странице.
Чем отличается функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера от функциональности одноименных свойств обычной компоненты? Функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера отличается от функциональности одноименных свойств у обычной компоненты тем, что значение указанных свойств наследуется с компоненты-контейнерана все компоненты, входящие в состав такой компоненты-контейнера. Правила наследования таковы, что если увложенного объекта соответствующее свойство выставлено в значение Истина, то оно следует судьбе этого же свойства у компоненты-контейнера, если же значение соответствующего свойства у вложенной компоненты Ложь, то наследования значения этого свойства от компоненты-контейнера не происходит, компонента функционирует в соответствии с собственными настройками.
+

Правила наследования значений свойств Подлежит сохранению, Обязательность дочерними компонентами, входящими в состав родительской компоненты контейнера

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
значение свойства у компоненты-контейнера значение свойства дочерней компоненты итоговое значение свойства
True True True
True False False
False True False
False False False
Undefined True True
Undefined False False
+

Правила наследования значений свойства Видимость дочерними компонентами, входящими в состав родительской компоненты контейнера

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
значение свойства у компоненты-контейнера значение свойства дочерней компоненты итоговое значение свойства
True True True
True False False
False True False
False False False
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミー.html new file mode 100644 index 0000000..a7036c8 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミー.html @@ -0,0 +1,92 @@ + + + + + + + + Web-BPM Docs – ミ漬コミサミーミエミコミー + + + + + + +
+
+ + + +
+
+

Вкладка

+

Назначение

+

Вкладка - невидимая компонента, используемая только совместно и внутри компоненты Контейнер вкладок, в свою очередь, сама является вышестоящим контейнером для дочерних визуальных компонент, которые аналитик планирует разместить в ограниченном пространстве экранного интерфейса. В запущенном приложении выбранная пользователем вкладка отображается поверх других вкладок, не занимая дополнительного места на web странице и закрывая своим содержимым содержимое других вкладок.

+

Используется для оптимизации расположения визуальных компонент в интерфейсе системы, обеспечивая возможность группировки и логического объединения компонент в определенных зонах web-страницы и общее эстетическое и интуитивное восприятие экранного интерфейса пользователем системы.

+

Компонента Вкладка схожа с компонентой Вертикальный контейнер и без дополнительных манипуляций располагает включенные в нее визуальные компоненты в вертикальной последовательности.

+

Компонента Вкладка находится в разделе Компоненты - Контейнеры - Вкладка

+

Свойства

+

Компонента имеет набор общих свойств и подгрузка данных по умолчанию.

+

Дополнительные функции

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO: описать

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Можно ли в компоненту Вкладка вложить другие контейнеры (Вертикальный, Горизонтальный)? Не только можно, но и должны быть вложены для горизонтального и вертикального выравнивания пользовательского интерфейса
Можно ли расположить визуальные компоненты сразу в Контейнер вкладок, а не в компоненте Вкладка ? Можно, но тогда Контейнер вкладок ничем не будет отличаться от Вертикальный контейнер
Чем отличается функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера от функциональности одноименных свойств обычной компоненты? Функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера отличается от функциональности одноименных свойств у обычной компоненты тем, что значение указанных свойств наследуется с компоненты-контейнера на все компоненты, входящие в состав такой компоненты-контейнера. Правила наследования таковы, что если у вложенного объекта соответствующее свойство выставлено в значение Истина, то оно следует судьбе этого же свойства у компоненты-контейнера, если же значение соответствующего свойства у вложенной компоненты Ложь, то наследования значения этого свойства от компоненты-контейнера не происходит, компонента функционирует в соответствии с собственными настройками.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソミセムミサミオミエムτ紗禾τ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソミセムミサミオミエムτ紗禾τ.html new file mode 100644 index 0000000..a4804fa --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソミセムミサミオミエムτ紗禾τ.html @@ -0,0 +1,82 @@ + + + + + + + + Web-BPM Docs – ミ漬コミサミーミエミコミク. ミ」ミソムミーミイミサミオミスミクミオ ミ漬コミサミーミエミコミセミケ. ミ渙オムミオムミセミエ ミクミキ ムひオミコムτ禍オミケ ミスミー ミソミセムミサミオミエムτ紗禾τ + + + + + + +
+
+ + + +
+
+

Вкладки. Управление “Вкладкой”. Переход из текущей на последующую

+

Функция, которая используется при работе с компонентой Контейнер вкладок со вложенными компонентами Вкладка и позволяет перейти из текущей вкладки на последующую в пользовательском приложении. Может быть активирована только на компоненте Кнопка.

+

Особенности функции:

+
    + +
  • в запущенном приложении исполняется явно (не требует использования компоненты “Обработка событий” и формирования алгоритма работы с задействованием вновь предоставляемых методов)
  • +
  • имеет параметры для настройки аналитиком
  • +
+

+

Рис. 1 Внешний вид активированной функции

+

Параметры функции

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Пример заполнения
Компонента Вкладки позволяет указать компоненту Контейнер вкладок, на котором размещены вкладки
Шаг перехода к следующей вкладке позволяет указать количество шагов, на которые нужно перейти пример возможного значения: 1
+

Пример настройки и применения

+

+

Рис.1 Активация функции на компоненте Кнопки

+
+
+
+
+
+
+

© 2022 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソムミオミエム巾エムτ禾τ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソムミオミエム巾エムτ禾τ.html new file mode 100644 index 0000000..4999b57 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミクミキ_ムひオミコムτ禍オミケ_ミスミー_ミソムミオミエム巾エムτ禾τ.html @@ -0,0 +1,82 @@ + + + + + + + + Web-BPM Docs – ミ漬コミサミーミエミコミク. ミ」ミソムミーミイミサミオミスミクミオ ミ漬コミサミーミエミコミセミケ. ミ渙オムミオムミセミエ ミクミキ ムひオミコムτ禍オミケ ミスミー ミソムミオミエム巾エムτ禾τ + + + + + + +
+
+ + + +
+
+

Вкладки. Управление “Вкладкой”. Переход из текущей на предыдущую

+

Функция, которая используется при работе с компонентой Контейнер вкладок со вложенными компонентами Вкладка и позволяет перейти из текущей вкладки на предыдущую в пользовательском приложении. Может быть активирована только на компоненте Кнопка.

+

Особенности функции:

+
    + +
  • в запущенном приложении исполняется явно (не требует использования компоненты “Обработка событий” и формирования алгоритма работы с задействованием вновь предоставляемых методов)
  • +
  • имеет параметры для настройки аналитиком
  • +
+

+

Рис. 1 Внешний вид активированной функции

+

Параметры функции

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Пример заполнения
Компонента Вкладки позволяет указать компоненту Контейнер вкладок, на котором размещены вкладки
Шаг перехода к следующей вкладке позволяет указать количество шагов, на которые нужно перейти пример возможного значения: 1
+

Пример настройки и применения

+

+

Рис.1 Активация функции на компоненте Кнопки

+
+
+
+
+
+
+

© 2022 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミスミー_ミイミコミサミーミエミコムダミソミセ_ミスミセミシミオムム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミスミー_ミイミコミサミーミエミコムダミソミセ_ミスミセミシミオムム.html new file mode 100644 index 0000000..5c41c06 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ漬コミサミーミエミコミク_ミ」ミソムミーミイミサミオミスミクミオ_ミ漬コミサミーミエミコミセミケ_ミ渙オムミオムミセミエ_ミスミー_ミイミコミサミーミエミコムダミソミセ_ミスミセミシミオムム.html @@ -0,0 +1,82 @@ + + + + + + + + Web-BPM Docs – ミ漬コミサミーミエミコミク. ミ」ミソムミーミイミサミオミスミクミオ ミ漬コミサミーミエミコミセミケ. ミ渙オムミオムミセミエ ミスミー ミイミコミサミーミエミコム ミソミセ ミスミセミシミオムム + + + + + + +
+
+ + + +
+
+

Вкладки. Управление “Вкладкой”. Переход на вкладку по номеру

+

Функция, которая используется при работе с компонентой Контейнер вкладок со вложенными компонентами Вкладка и позволяет перейти из текущей вкладки на указанную в функции вкладку в пользовательском приложении. Может быть активирована только на компоненте Кнопка.

+

Особенности функции:

+
    + +
  • в запущенном приложении исполняется явно (не требует использования компоненты “Обработка событий” и формирования алгоритма работы с задействованием вновь предоставляемых методов)
  • +
  • имеет параметры для настройки аналитиком
  • +
+

+

Рис. 1 Внешний вид активированной функции

+

Параметры функции

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Пример заполнения
Компонента Вкладки позволяет указать компоненту Контейнер вкладок, на котором размещены вкладки
Шаг перехода к следующей вкладке позволяет указать номер вкладки (начиная с 0), на которую нужно перейти пример возможного значения: 1
+

Пример настройки и применения

+

+

Рис.1 Активация функции на компоненте Кнопки

+
+
+
+
+
+
+

© 2022 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html new file mode 100644 index 0000000..024dbcd --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム.html @@ -0,0 +1,98 @@ + + + + + + + + Web-BPM Docs – ミ寅セムミクミキミセミスムひーミサム糊スム巾ケ ミコミセミスムひオミケミスミオム + + + + + + +
+
+ + + +
+
+

Горизонтальный контейнер

+

Назначение

+

Горизонтальный контейнер - это невидимая компонента-контейнер, которая позволяет расположить внутри себя набор видимых компонент в горизонтальной последовательности, когда каждая последующая видимая компонента находится справа от предыдущей.

+

Используется для оптимизации расположения компонентов в интерфейсе системы, обеспечивая возможность группировки и логического объединения компонентов в определенных секторах web-страницы и общее эстетическое и интуитивное восприятие экранного интерфейса пользователем системы.

+

Как правило, в состав Горизонтального контейнера включаются визуальные компоненты, но также Горизонтальные контейнеры могут быть размещены обособлено в дереве редактора интерфейса для облегчения чтения аналитиком структуры страницы и включать в себя невизуальные компоненты для служебного использования (предзагрузка значений переменных процесса в компоненты, компоненты с подгруженными значениями по умолчанию, компоненты Обработка событий и т.п.)

+

Компонента Горизонтальный контейнер находится в разделе Компоненты - Контейнеры - Горизонтальный контейнер

+

Свойства

+

Компонента имеет набор общих свойств и подгрузка данных по умолчанию

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации функций (

+

- функции, которые выполняются удаленно на сервере приложений,

+

- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO: описать

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
В чем заключаются лучшие практики использования контейнеров? Чаще всего контейнерами зонируют экранный интерфейс, чтобы добиться эргономичного расположения компонентов на web-странице. Например, в горизонтальный контейнер вкладывают несколько вертикальных, добиваясь, колончатой структуры страницы. Пример такой реализации можно посмотреть в методических рекомендациях по применению.
Что происходит в горизонтальном контейнере, если ширины экрана не хватает для размещения в горизонтальном направлении всех компонент? После заполнения всей доступной ширины web-страницы, система автоматически начинает переносить оставшиеся компоненты на строчку ниже и продолжать заполнять ими ширину экрана, располагая оставшиеся компоненты друг за другом в горизонтальной последовательности.
Насколько глубокую иерархию вложенности можно создать, комбинируя контейнеры между собой? Теоретически, глубина вложенности контейнеров разного типа друг в друга не ограничена. Но на практике комбинирование вложенностью контейнеров применяется для решения конкретной проблемы эргономичного расположения визуальных компонентов на странице
Чем отличается функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера от функциональности одноименных свойствобычной компоненты? Функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера отличается от функциональности одноименных свойств у обычной компоненты тем, что значение указанных свойств наследуется с компоненты-контейнера на все компоненты, входящие в состав такой компоненты-контейнера. Правила наследования таковы, что если у вложенного объекта соответствующее свойство выставлено в значение Истина, то оно следует судьбе этого же свойства у компоненты-контейнера, если же значение соответствующего свойства у вложенной компоненты Ложь, то наследования значения этого свойства от компоненты-контейнера не происходит, компонента функционирует в соответствии с собственными настройками.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ酉ムσソミソミー_ミソミセミサミオミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ酉ムσソミソミー_ミソミセミサミオミケ.html new file mode 100644 index 0000000..196e3a9 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ酉ムσソミソミー_ミソミセミサミオミケ.html @@ -0,0 +1,123 @@ + + + + + + + + Web-BPM Docs – ミ酉ムσソミソミー ミソミセミサミオミケ + + + + + + +
+
+ + + +
+
+

Группа полей

+

Назначение

+

Группа полей - это визуальная компонента-контейнер, которая позволяет расположить внутри себя набор других видимых компонент в вертикальной последовательности, когда каждая следующая видимая компонента находится на новой строке под предыдущей. По функциональности компонента Группа полей очень близка к компоненте Вертикальный контейнер и отличается от него только визуальным обозначением границ контейнера и возможностью дать заголовок.

+

Используется для оптимизации расположения компонентов в интерфейсе системы, обеспечивая возможность группировки и логического объединения компонентов в определенных секторах web-страницы и общее эстетическое и интуитивное восприятие экранного интерфейса пользователем системы.

+

Компонента Группа полей находится в разделе Компоненты - Контейнеры - Группа полей

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Заголовок позволяет указать тест заголовка для контейнера Группа полей пример возможного значения: Общие сведения
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки .

+

Вследствие технических особенностей реализации функций(

+

- функции, которые выполняются удаленно на сервере приложений,

+

- функции, которые выполняются в браузере пользователя),

+

они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO: описать

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + +
Вопрос Ответ
В чем заключаются лучшие практики использования контейнеров? Чаще всего контейнерами зонируют экранный интерфейс, чтобы добиться эргономичного расположения компонентов на web-странице. Контейнер Группа полей используется для объединения логически родственных полей ввода и отображения информации в видимую область на экране и явного наименования этой области объединяющим заголовком. По функциональности компонента Группа полей очень близка к компоненте Вертикальный контейнер и отличается от него только визуальным обозначением границ контейнера и возможностью дать заголовок. Все возможности взаимного комбинирования разных видов компонент - контейнеров внутри компоненты-контейнера Группа полей остаются такими же, как и у других компонент-контейнеров.
Насколько глубокую иерархию вложенности можно создать, комбинируя контейнеры между собой Теоретически, глубина вложенности контейнеров разного типа друг в друга не ограничена. Но на практике комбинирование вложенностью контейнеров применяется для решения конкретной проблемы эргономичного расположения визуальных компонентов на странице.
Чем отличается функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера от функциональности одноименных свойств обычной компоненты Функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера отличается от функциональности одноименных свойств у обычной компоненты тем, что значение указанных свойств наследуется с компоненты-контейнера на все компоненты, входящие в состав такой компоненты-контейнера. Правила наследования таковы, что если у вложенного объекта соответствующее свойство выставлено в значение Истина, то оно следует судьбе этого же свойства у компоненты-контейнера, если же значение соответствующего свойства у вложенной компоненты Ложь, то наследования значения этого свойства от компоненты-контейнера не происходит, компонента функционирует в соответствии с собственными настройками.
+

Пример настройки

+

Задача: сгруппировать поля в панель с рамочкой “Паспортные данные”:

+

+

1.Добавить компонент FieldSet на страницу:

+

+
    + +
  1. Добавить компоненты, которые хотите сгруппировать на панели с рамочкой:
  2. +
+

+

. Настройте свойство Label для добавленных компонентов.

+

. Задайте текст заголовка панели в свойстве heading компонента FieldSet:

+

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ.html new file mode 100644 index 0000000..a019508 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ.html @@ -0,0 +1,118 @@ + + + + + + + + Web-BPM Docs – ミ頒クミーミサミセミウ + + + + + + +
+
+ + + +
+
+

Диалог

+

Назначение

+

Диалог - это компонента, которая используется для отображения всплывающего диалогового окна на форме страницы. В зависимости от решаемой задачи, по усмотрению бизнес-аналитика, элемент может включать в себя другие компоненты из библиотеки.

+

Свойства

+

Каждая компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Заголовок позволяет задать заголовок диалога на странице
TODO: переименовать Допускается скрытие через системную позволяет задать возможность закрытия диалога по нажатию на системный - возможно закрыть диалог через . Значение по умолчанию - невозможно закрыть диалог (системный скрыт)
TODO: адаптироватьresetValidationStatus позволяет сбросить значения и валидацию полей диалога после его скрытия true - сбрасывать валидацию, false - нет
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки .

+

Вследствие технических особенностей реализации функций (

+

- функции, которые выполняются удаленно на сервере приложений,

+

- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO: описать

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
В каких случаях чаще всего используется элемент Диалог? В большинстве случаев, Диалог используется для вывода уведомлений, предупреждений и дополнительной информации пользователю.
Как управлять видимостью компоненты Диалог? Регулировать видимость Диалога можно с помощью Обработчика событий, где для Диалога необходимо задействовать методы “Показать”, “Скрыть”, но не метод “Задать видимость”
Как задать возможность закрытия всплывающего Диалога на странице по нажатию на Кнопку? Для того, чтобы реализовать возможность закрытия Диалога по нажатию на конкретную Кнопку, необходимо добавить на страницу Обработчик событий с соответствующим условием: Если произошло нажатие на Кнопку, тогда скрывать Диалог.
Может ли Диалог выступать в качестве самостоятельного элемента на странице приложения? Нет, Диалог всегда должен содержать в себе вложенные элементы (статичный Текст или Кнопки), иначе его применение не целесообразно.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ_ミ柘巾キミイミームび.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ_ミ柘巾キミイミームび.html new file mode 100644 index 0000000..4daacc7 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ_ミ柘巾キミイミームび.html @@ -0,0 +1,78 @@ + + + + + + + + Web-BPM Docs – ミ頒クミーミサミセミウ. ミ柘巾キミイミームび + + + + + + +
+
+ + + +
+
+

Диалог. Вызвать

+

Функция, которая в режиме исполнения приложения (runtime mode) позволяет вызвать заданное в настройках функции модальное диалоговое окно поверх основной web-страницы экранного интерфейса.

+

Без взаимодействия с этим модальным диалоговым окном, которое впоследствии должно завершиться его закрытием в соответствии с каким-либо алгоритмом, пользователь не сможет продолжить работу с основной web-страницы экранного интерфейса.

+

Функция может быть активирована на любом из видов компоненты Кнопка, но обычной практикой является использование функции Диалог. Вызватьс компонентой Кнопка.

+

+

Рис. 1 Внешний вид активированной функции

+

Параметры функции (табл.1)

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Вызвать диалог Ссылка на компоненту Диалог, обязательный. позволяет указать компоненту Диалог для вызова модального окна поверх основной web-страницы экранного интерфейса
+

Пример настройки и применения

+

+

Рис.2 Активация функции на компоненте Кнопка

+

+

Рис. 3 Компонента Диалог, которая будет вызываться функцией

+

+

Рис. 4 Внешний вид вызванного функцией модального окна диалога

+
+
+
+
+
+
+

© 2022 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ_ミ。ミコムム錦び.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ_ミ。ミコムム錦び.html new file mode 100644 index 0000000..1be9086 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ頒クミーミサミセミウ_ミ。ミコムム錦び.html @@ -0,0 +1,79 @@ + + + + + + + + Web-BPM Docs – ミ頒クミーミサミセミウ. ミ。ミコムム錦び + + + + + + +
+
+ + + +
+
+

Диалог. Скрыть

+

Функция, которая в режиме исполнения приложения (runtime mode) позволяет скрыть заданное в настройках функции модальное диалоговое окно и продолжить работу с основной web-страницы экранного интерфейса.

+

Функция может быть активирована на любом из видов компоненты Кнопка, но обычной практикой является использование функции Диалог. Скрыть с компонентой Кнопка.

+

+

Рис. 1 Внешний вид активированной функции

+

Параметры функции (табл.1)

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Скрыть диалог Ссылка на компоненту Диалог, обязательный. позволяет указать компоненту Диалог для сокрытия модального окна поверх основной web-страницы экранного интерфейса
+

Пример настройки и применения

+

+

Рис.2 Активация функции на компоненте Кнопка

+

+

Рис. 3 Компонента Диалог, которая будет скрываться функцией

+

+

Рис. 4 Внешний вид модального окна диалога, который будет скрыт

+

+

Рис. 5 Внешний вид web-страницы, когда модальное окно Диалога скрыто функцией

+
+
+
+
+
+
+

© 2022 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..1079a23 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ漬オムムひクミコミーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,166 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ漬オムムひクミコミーミサム糊スム巾ケ ミコミセミスムひオミケミスミオム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту “Вертикальный контейнер” на страницу?

+

Постановка задачи: необходимо расположить на пользовательской странице Карточка задачи набор параметров задачи таким образом, чтобы визуально страница воспринималась, как состоящая из двух одинаковых по ширине колонок, параметры задачи в каждой из которых идут друг под другом.

+

Решение задачи:

+

Предполагается, что страница Карточка задачи уже создана бизнес-аналитиком и визуальные компоненты и источник данных компоненты Форма настроен.

+

Для оптимизации расположения параметров в соответствии с условиями задачи необходимо сделать следующее:

+
    + +
  • внутрь компоненты Форма добавить компоненту Горизонтальный контейнер (рис.1)
  • +
+

+

Рис.1 Добавление компоненты Горизонтальный контейнер

+
    + +
  • внутрь компоненты Горизонтальный контейнер добавить две компоненты Вертикальный контейнер (рис. 2)
  • +
+

+

Рис.2 Добавление двух компонент Вертикальный контейнер

+
    + +
  • в настройках компоненты Вертикальный контейнер перейти в Расширенные настройки и задать ширину каждой из компонент Вертикальный контейнер в размере 50% (рис. 3)
  • +
+ +
+ +

+
+ +

+

Рис.3 Выставление параметра Ширина в 50% у компонент Вертикальный контейнер

+
    + +
  • внутрь каждой из компонент Вертикальный контейнер расположить визуальные компоненты (рис.4)
  • +
+

+

Рис.4 Добавление визуальных компонентов в скомбинированные Горизонтальный и вертикальные контейнеры

+

На этом настройка предложенного порядка расположения визуальных компонентов на странице, предусмотренная заданием, завершена.

+

При проверке результата в работающем приложении визуальные компоненты должны выглядеть так:

+ +
+ + + + + + + + + + + + + + +
+
+ +

+
+

Рис. 5 Представление визуальных компонентов после использования Горизонтального и Вертикального контейнеров.

+ +

Страница воспринимается как состоящая из 2 столбцов одинаковой ширины, в которых визуальные компоненты расположены в вертикальном направлении друг за другом

+
+ +

Тот же самый набор визуальных компонентов, расположенный в составе компоненты Форма, без использования контейнеров выглядел бы так:

+ +
+ + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+

Рис. 6 Все визуальные компоненты расположены внутри компоненты Форма.

+ +

Компонента Форма сама по себе является Вертикальным контейнером !

+

Рис. 7 Расположение визуальных компонентов в запущенное приложении без использования комбинации Горизонтальных и Вертикальных контейнеров.

+ +

Поскольку Компонента Форма сама по себе является Вертикальным контейнером, то все визуальные компоненты расположены в один столбик в вертикальной последовательности

+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ漬コミサミーミエミコミー_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ漬コミサミーミエミコミー_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..328dabb --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ漬コミサミーミエミコミー_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,115 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ漬コミサミーミエミコミー ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту “Вкладка” на страницу?

+

Постановка задачи: необходимо расположить на пользовательской странице Карточка задачи набор параметров задачи таким образом, чтобы визуально страница воспринималась, как состоящая из двух вкладок, каждая со своим набором параметров задачи (вкладка “общие параметры” и вкладка “сотрудники”).

+

Решение задачи:

+

Предполагается, что страницаКарточка задачиуже создана бизнес-аналитиком и визуальные компоненты и источник данных компоненты Форма настроен.

+

Для оптимизации расположения параметров в соответствии с условиями задачи необходимо сделать следующее:

+
    + +
  • внутрь компоненты Форма добавить компоненту Контейнер вкладок (рис.1)
  • +
+

+

Рис.1 Добавление компоненты Контейнер вкладок

+
    + +
  • внутрь компоненты Контейнер вкладок добавить две компоненты Вкладка (рис. 2)
  • +
+

+

Рис.2 Добавление двух компонент Вкладка

+
    + +
  • + +

    оставляем значения параметров компоненты “Контейнер вкладок” в состоянии ‘по умолчанию’

    +
  • +
  • + +

    внутрь каждой из компонент Вкладка располагаем визуальные компоненты (рис.4)

    +
  • +
+

+

Рис.4 Добавление визуальных компонентов в скомбинированные компоненты-контейнеры “Контейнер вкладок” и “Вкладка”

+

На этом настройка предложенного порядка расположения визуальных компонентов на странице, предусмотренная заданием, завершена.

+

При проверке результата в работающем приложении визуальные компоненты должны выглядеть так:

+ +
+ +

+
+ +

+

Рис. 5 Представление визуальных компонентов после использования компоненты-контейнеры “Контейнер вкладок” и “Вкладка”

+

Страница воспринимается как состоящая из 2 вкладок, в которых визуальные компоненты расположены в вертикальном направлении друг за другом

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..4189554 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ寅セムミクミキミセミスムひーミサム糊スム巾ケ_ミコミセミスムひオミケミスミオム_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,173 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ寅セムミクミキミセミスムひーミサム糊スム巾ケ ミコミセミスムひオミケミスミオム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту “Горизонтальный контейнер” на страницу?

+

Постановка задачи: необходимо расположить на пользовательской странице Карточка задачи набор параметров задачи таким образом, чтобы визуально страница воспринималась, как состоящая из двух одинаковых по ширине колонок, параметры задачи в каждой из которых идут друг под другом.

+

Решение задачи:

+

Предполагается, что страница Карточка задачи уже создана бизнес-аналитиком и визуальные компоненты и источник данных компоненты Форма настроен.

+

Для оптимизации расположения параметров в соответствии с условиями задачи необходимо сделать следующее:

+
    + +
  • внутрь компоненты Форма добавить компоненту Горизонтальный контейнер (рис.1)
  • +
+

+

Рис.1 Добавление компоненты Горизонтальный контейнер

+
    + +
  • внутрь компоненты Горизонтальный контейнер добавить две компоненты Вертикальный контейнер (рис. 2)
  • +
+

+

Рис.2 Добавление двух компонент Вертикальный контейнер

+
    + +
  • в настройках компоненты Вертикальный контейнер перейти в Расширенные настройки и задать ширину каждой из компонент Вертикальный контейнер в размере 50% (рис. 3)
  • +
+ +
+ +

+
+ +

+

Рис.3 Выставление параметра Ширина в 50% у компонент Вертикальный контейнер

+
    + +
  • внутрь каждой из компонент Вертикальный контейнер расположить визуальные компоненты (рис.4)
  • +
+

+

Рис.4 Добавление визуальных компонентов в скомбинированные Горизонтальный и вертикальные контейнеры

+

На этом настройка предложенного порядка расположения визуальных компонентов на странице, предусмотренная заданием, завершена.

+

При проверке результата в работающем приложении визуальные компоненты должны выглядеть так:

+ +
+ + + + + + + + + + + + + + +
+
+ +

+
+

Рис. 5 Представление визуальных компонентов после использования Горизонтального и Вертикального контейнеров.

+ +

Страница воспринимается как состоящая из 2 столбцов одинаковой ширины, в которых визуальные компоненты расположены в вертикальном направлении друг за другом

+
+ +

Тот же самый набор визуальных компонентов, расположенный в составе компоненты Форма, без использования контейнеров выглядел бы так:

+ +
+ + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+

Рис. 6 Все визуальные компоненты расположены внутри компоненты Форма.

+ +

Компонента Форма сама по себе является Вертикальным контейнером !

+

Рис. 7 Расположение визуальных компонентов в запущенное приложении без использования комбинации Горизонтальных и Вертикальных контейнеров.

+ +

Поскольку Компонента Форма сама по себе является Вертикальным контейнером, то все визуальные компоненты расположены в один столбик в вертикальной последовательности

+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ酉ムσソミソミー_ミソミセミサミオミケ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ酉ムσソミソミー_ミソミセミサミオミケ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..848ae61 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ酉ムσソミソミー_ミソミセミサミオミケ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,157 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ酉ムσソミソミー ミソミセミサミオミケ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту “Группа полей” на страницу?

+

Постановка задачи: необходимо на пользовательской странице Карточка задачи сгруппировать и расположить набор параметров задачи по подразделам “Общие сведения”, “Сроки”, “Действующие лица”.

+

Решение задачи:

+

Предполагается, что страница Карточка задачи уже создана бизнес-аналитиком, визуальные компоненты и источник данных компоненты Форма настроен.

+

Для расположения параметров в соответствии с условиями задачи необходимо сделать следующее:

+
    + +
  • внутрь компоненты Форма добавить несколько компонент Группа полей (рис.1)
  • +
+

+

Рис.1 Добавление компоненты Группа полей

+
    + +
  • переименовать компоненты Группа полей и дать им одноименные заголовки (рис. 2)
  • +
+

+

Рис.2 Переименование и озаглавливание компонент Группа полей

+
    + +
  • внутри каждой из компонент Группа полей расположить визуальные компоненты для ввода и отображения информации (рис. 3)
  • +
+ +
+ + + + + + + + + + + + + + +
+
+ +

+
Рис.3 Распределение полей ввода и отображения информации по компонентам Группа полей
+
+ +

На этом настройка предложенного порядка расположения визуальных компонентов на странице, предусмотренная заданием, завершена.

+

При проверке результата в работающем приложении визуальные компоненты должны выглядеть так:

+

Рис. 4 Представление визуальных компонентов после использования компонент - контейнеров Группа полей Страница воспринимается как совокупность 3 логических блоков, следующих в вертикальном направлении друг за другом

+

Тот же самый набор визуальных компонентов, расположенный в составе компоненты Форма, без использования контейнеров выглядел бы так:

+ +
+ + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+

Рис. 5 Все визуальные компоненты расположены внутри компоненты Форма.

+ +

Компонента Форма сама по себе является Вертикальным контейнером !

+

Рис. 6 Расположение визуальных компонентов в запущенном приложении без использования компонент- контейнеров Группа полей.

+ +

Поскольку Компонента Форма сама по себе является Вертикальным контейнером, то все визуальные компоненты расположены в один столбик в вертикальной последовательности

+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..c780f69 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,90 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ墟セミスムひオミケミスミオム ミイミコミサミーミエミセミコ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту “Контейнер вкладок” на страницу?

+

Постановка задачи: необходимо расположить на пользовательской странице Карточка задачи набор параметров задачи таким образом, чтобы визуально страница воспринималась, как состоящая из двух вкладок, каждая со своим набором параметров задачи (вкладка “общие параметры” и вкладка “сотрудники”).

+

Решение задачи:

+

Предполагается, что страница Карточка задачи уже создана бизнес-аналитиком и визуальные компоненты и источник данных компоненты Форма настроен.

+

Для оптимизации расположения параметров в соответствии с условиями задачи необходимо сделать следующее:

+
    + +
  • внутрь компоненты Форма добавить компоненту Контейнер вкладок (рис.1)
  • +
+

+

Рис.1 Добавление компоненты Контейнер вкладок

+
    + +
  • внутрь компоненты Контейнер вкладок добавить две компоненты Вкладка (рис. 2)
  • +
+

+

Рис.2 Добавление двух компонент Вкладка

+
    + +
  • + +

    оставляем значения параметров компоненты “Контейнер вкладок” в состоянии ‘по умолчанию’

    +
  • +
  • + +

    внутрь каждой из компонент Вкладка располагаем визуальные компоненты (рис.4)

    +
  • +
+

+

Рис.4 Добавление визуальных компонентов в скомбинированные компоненты-контейнеры “Контейнер вкладок” и “Вкладка”

+

На этом настройка предложенного порядка расположения визуальных компонентов на странице, предусмотренная заданием, завершена.

+

При проверке результата в работающем приложении визуальные компоненты должны выглядеть так:

+ +
+ +

+
+ +

+

Рис. 5 Представление визуальных компонентов после использования компоненты-контейнеры “Контейнер вкладок” и “Вкладка”

+

Страница воспринимается как состоящая из 2 вкладок, в которых визуальные компоненты расположены в вертикальном направлении друг за другом

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミコミスミセミソミセミコ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミコミスミセミソミセミコ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..ecc033a --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ墟セミスムひオミケミスミオム_ミコミスミセミソミセミコ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,191 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ墟セミスムひオミケミスミオム ミコミスミセミソミセミコ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту “Контейнер кнопок” на страницу?

+

Постановка задачи: на пользовательской странице Карточка задачи требуется эргономично реализовать кнопки печати карточки задачи, карточки проекта, списка всех изменений по задаче. списка всех задействованных по задаче специалистов.

+

Решение задачи:

+

Предполагается, что страница Карточка задачи уже создана бизнес-аналитиком, визуальные компоненты с основными параметрами задачи и источник данных компоненты Форма настроен.

+

Для выполнения поставленных в задаче требований:

+
    + +
  • в состав page добавить Горизонтальный контейнер и назвать его Кнопки (рис.1)
  • +
+

+

Рис.1 Добавление Горизонтального контейнера

+
    + +
  • внутри горизонтального контейнера расположить компоненту “Контейнер с кнопками”, а также несколько простых компонент “Кнопка” (рис. 2)
  • +
+

+

Рис.2 Добавление компоненты Контейнер с кнопками и несколькообычных кнопок

+
    + +
  • внутри компоненты “Контейнер с кнопками” расположить визуальные компоненты “Кнопка печати” для печати форм отчетов, определенных условиями задачи (рис. 3)
  • +
+ +
+ + + + + + + + + + + + + + +
+
+ +

+
Рис.3 Наполнение компоненты "Контейнер с кнопками" простыми визуальными компонентами "Кнопка печати"
+
+ +

На этом настройка предложенного порядка расположения визуальных компонентов на странице, предусмотренная заданием, завершена.

+

При проверке результата в работающем приложении визуальные компоненты должны выглядеть так:

+ +
+ + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+

Рис. 4 Представление визуальных компонентов после использования компоненты "Контейнер с кнопками".

+ +

Все возможности печати скрыты за объединяющей кнопкой.

+

Рис. 5 Представление визуальных компонентов после использования компоненты "Контейнер с кнопками" с раскрытыми кнопками, предоставляющими заданные возможности распечатки отчетов.

+ +


+

+
+ +

Тот же самый набор возможностей печати без использования компоненты “Контейнер с кнопками” выглядел бы так:

+ +
+ + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+

Рис. 6 Все компоненты "Кнопка" последовательно расположены внутри "Горизонтального контейнера".

+ +


+

+

Рис. 7 Расположение визуальных компонентов в приложении без использования компоненты "Контейнер с кнопками".

+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ斷ーミアミセム_ムミクミサム袴びミセミイ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ斷ーミアミセム_ムミクミサム袴びミセミイ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..10f28b3 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ斷ーミアミセム_ムミクミサム袴びミセミイ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,135 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ斷ーミアミセム ムミクミサム袴びミセミイ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту “Набор фильтров” на страницу?

+

Постановка задачи:

+

На пользовательской странице необходимо расположить “Набор фильтров” который будет включать в себя текстовый фильтр.

+

Элементы на странице должны иметь следующие настройки:

+
    + +
  • Блок фильтрации на странице должен иметь подзаголовок-Фильтр по сотрудникам, реализованный с помощью компоненты Текст
  • +
  • Набор фильтров должен содержать внутри себя Текстовое поле (фильтр) и ссылаться на Таблицу поиска. Поиск по таблице должен осуществляться после ввода данных в поле фильтрации.
  • +
+

Решение задачи:

+

Предполагается, что страница, где необходимо разместить Таблицу и Набор фильтров, уже создана бизнес-аналитиком и включена в логику бизнес-процесса. Для добавления на страницу и настройки компонент по условиям задачинеобходимо сделать следующее:

+

1. Добавление элементов:

+ +

+

рис.1 Добавление элемента Набор фильтров

+
    + +
  • Добавить компоненту Текст внутрь Набора фильтров, которая будет являться заголовком блока фильтрации (рис.2)
  • +
+

+

рис.2 Добавление элемента Текст

+
    + +
  • Добавить внутрь контейнера Набор фильтров компоненту Фильтр по текстовому полю (рис.3)
  • +
+

+

рис.3 Добавление компонент Фильтр по текстовому полю

+
    + +
  • Добавить на страницу Таблицу,в которой будет отображаться информация о сотрудниках и по значениям которой будет осуществляться поиск записей с помощью фильтров (рис.4)
  • +
+

+

рис.4 Добавление элемента Таблица

+

2. Настройка элементов:

+
    + +
  • Настройка Набора фильтров: переносим объект Таблица, удерживая левую кнопку мыши, в свойство “Применить к…” Набор фильтров как показано на рисунке (рис.5) и настроить остальные свойства (рис.6)
  • +
+

+

рис.5 Настройка Набор фильтров

+

+

рис.6 Настройка Набор фильтров

+
    + +
  • Заполняем свойство Надпись у компоненты Текст значением Фильтр по сотрудникам (рис.7)
  • +
+

+

рис.7 Настройка элемента Текст

+
    + +
  • Заполняем у элемента Таблица следующие свойства: Таблица. Подгрузка данных - Источник данных - Граф сущностей (как описано в разделе Настройка Графа сущностей) и настраиваем колонки Таблицы (как описано в разделе Настройка колонок Таблицы) в блоке Таблица. Настроить колонки таблицы согласно условиям задачи (рис.8)
  • +
+

+

рис.8 Настройка элемента Таблица

+
    + +
  • Заполняем свойства компонент фильтрации по текстовому полю согласно условиям задачи (рис.9)
  • +
+

+

рис.9 Настройка Фильтра по текстовому полю

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и на странице отображается блок фильтрации, включающий в себя фильтры по тестовому полю (рис.10).

+

+

рис.10 Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム契ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム契ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..eefbb4f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム契ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,161 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ。ミイミセムミームミクミイミーミオミシミーム ミソミーミスミオミサム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту “Сворачиваемая панель” на страницу?

+

Постановка задачи:

+

На пользовательской странице необходимо расположить “Сворачиваемую панель” которая будет включать в себя Поле многострочного ввода, поле Дата и денежное поле.

+

Элементы на странице должны иметь следующие настройки:

+
    + +
  • Сворачиваемая панель: +
      + +
    • заголовок: Дополнительная информация об услуге
    • +
    +
  • +
  • Дата: +
      + +
    • Надпись: Дата предоставления услуги
    • +
    • Формат: Дата со временем
    • +
    +
  • +
  • Поле многострочного ввода: +
      + +
    • Надпись: Описание проведенных работ
    • +
    +
  • +
  • Денежное поле: +
      + +
    • Надпись: Стоимость услуг
    • +
    • Количество знаков после запятой
    • +
    +
  • +
+

Решение задачи:

+

Предполагается, что страница, где необходимо разместить Таблицуи Набор фильтров, уже создана бизнес-аналитиком и включена в логику бизнес-процесса. Для добавления на страницу и настройки компонент по условиям задачинеобходимо сделать следующее:

+

1. Добавление элементов:

+
    + +
  • Добавить на страницу контейнер Сворачиваемая панель (рис.1)
  • +
+

+

рис.1 Добавление элемента Сворачиваемая панель

+
    + +
  • Добавить компоненту Дата внутрь Сворачиваемой панели (рис.2)
  • +
+

+

рис.2 Добавление элемента Дата.

+ +

+

рис.2 Добавление элемента Поле многострочного ввода.

+
    + +
  • Добавить внутрь Сворачиваемой панели компоненту Денежное поле (рис.3)
  • +
+

+

рис.3 Добавление элемента Денежное поле.

+

2. Настройка элементов:

+
    + +
  • НастройкаСворачиваемой панели, заполняем Заголовок. Как показано на рисунке (рис.4).
  • +
+

+

рис.4 НастройкаСворачиваемая панель

+
    + +
  • Настройка поля Дата, заполняем Надпись. Как показано на рисунке (рис.5).
  • +
+

+

рис.5 Настройка Дата

+
    + +
  • Настройка Поле многострочного ввода, заполняем Надпись. Как показано на рисунке (рис.6).
  • +
+

+

рис.6 НастройкаПоле многострочного ввода.

+
    + +
  • Настройка Денежное поле, заполняем Надпись. Указываем количество знаков после запятой. Как показано на рисунке (рис.7).
  • +
+

+

рис.7 Настройка Денежного поля.

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и на странице отображается Сворачиваемая панель, включающий в себя необходимые поля. Сворачиваемая панель в свернутом состоянии рис.8. Сворачиваемая панель в развернутом виде рис. 9.**
+**

+

+

рис.8 Визуальное отображение выполнения условий задачи

+

+

рис.9 Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ、ミセムミシミー_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ、ミセムミシミー_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..6a9b870 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ、ミセムミシミー_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,184 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ、ミセムミシミー ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту “Форма” на страницу?

+

Постановка задачи: необходимо расположить на пользовательской странице Карточка задачи набор параметров задачи, представленных визуальными компонентами, с возможностью подгрузить информацию из таблиц базы данных в режиме редактирования карточки, либо сохранить введенные значения (в режиме добавления новой записи или обновления ранее созданной записи).

+

Карточка задачидолжна иметь следующие настройки:

+
    + +
  • в Граф сущностей в качестве Главной сущности должна быть определена таблица задач(tasks), которая может быть связана с другими таблицами базы данных, где содержитсядополнительная информация для вывода на страницу - наименование и описание задачи, дата постановки задачи
  • +
  • при настройке функции Подгрузка данных основная компонентыФормав параметре Переменная процесса с идентификатором следует выбрать из списка наименование переменной процесса task_id, содержащей идентификатор задачи. Эта переменная может быть заполнена каким-либо значением или быть пустым. Как правило, если при открытии страницы с карточкой задачи эта переменная уже заполнена некоторым числом, то карточка задачи открывается на редактирование (выполняется SQL запрос SELECT при открытии и UPDATE при попытке сохранения), поскольку этот идентификатор задачи был указан пользователем на одном из предыдущих этапов. Если при открытии страницы с карточкой задачи эта переменная пуста, то функция Подгрузка данных основная автоматически определяет, что данные для подгрузки на страницу отсутствуют, а при попытке сохранения карточки следует выполнить SQL запрос INSERT.
  • +
  • внутри компоненты-контейнера Форма следует расположить 3 компоненты: Текстовое поле для параметра Наименование задачи, Текстовое поле для параметра Описание задачи и Дата для параметра Дата постановки задачи.
  • +
+

Решение задачи:

+

Предполагается, что страница Карточка задачи уже создана бизнес-аналитиком и в логике бизнес-процесса определена необходимая переменная процесса task_id, значение которой заполняется перед открытием страницы пользователем. Для добавления на страницу и настройки компоненты Форма необходимо сделать следующее:

+
    + +
  • добавить внутрь страницы компоненту Форма (рис.1)
  • +
  • в настройках добавленной Формы перейти к разделу Подгрузка данных основная - Источник данных - Граф сущностей и настроить его в соответствии с условием задачи (рис.2).
  • +
+

+ +
+
     рис.1 Добавление компоненты Форма на страницу    
+                 рис.2 Настройка Графа
+
+ +

сущностей компоненты Форма

+ +

+ +
+
        рис.3 Настройка переменной процесса
+
+ +
    + +
  • расположить компоненты для отображения параметров Наименование задачи, Описание задачи, Дата постановки задачи и настроить их на отображение информации из источника данных (рис.4, рис.5, рис.6)
  • +
+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+
+ +

+
рис.4 Добавление элемента Наименованиерис.5 Добавление элемента Описаниерис.6 Добавление элемента Дата постановки задачи
+
+ +

На этом настройка компоненты Форма для отображения информации из базы данных завершена. В указанной конфигурации при попытке открыть веб-страницу поля будет заполнены имеющимися в базе данных значениями.

+

Для возможности создания новой записи (INSERT) или изменения имеющихся значений (UPDATE), необходимо добавить на страницу компоненту Кнопка сохранения и указать этой кнопке на Форму, согласно Графу сущностей которой следуют провести операцию добавления новой записи или обновления существующей информации после нажатия на кнопку (рис.7)

+ +
+ + + + + + + + + + + + + + +
+
+ +


+

+
+

рис.7 Настройка элемента Кнопка сохранения

+ +

Заполнение параметра Компонент "Форма" Кнопки сохранения происходит путем перетаскивания манипулятором мышь объекта "Основная Форма страницы " из дерева структуры страницы в окно параметра Компонент "Форма" Кнопки сохранения (как показано стрелкой на скриншоте).

+ +

Также существует удобная функциональность обратного быстрого перехода по дереву структуры страницы к задействованной компоненте посредством клика на параметре Компонент "Форма" Кнопки сохранения, когда есть необходимость уточнить, на какую именно компоненту в дереве ссылается интересующий параметр.

+
+ +

Кнопку сохранения необязательно располагать внутри компоненты Форма, что является обычной практикой при разработке приложений, поскольку кнопки располагаютcя в определенных областях экрана с использованием компонент Горизонтальный или Вертикальный контейнер. Кроме того, компонента Кнопка сохранения не имеет своего источника данных, как те компоненты, которые отображают информацию из базы данных, и которые по этой причине должны быть расположены внутри компоненты Форма.

+

После применения изменений и настройки всех необходимых элементов, веб-страница может не только заполнять поля значениями из базы данных при открытии, но и сохранять измененные значения или добавлять новую запись, в зависимости от состояния значения переменной task_id. Если она пуста, то данные после нажатия Кнопки сохранения добавятся в таблицу, а если не пуста - то обновятся, и система перейдет к следующей задаче согласно логике бизнес-процесса.

+ +
+
+

Attachments:

+
+ +
+ +

image2019-3-7_15-26-43.png (image/png)
+ Screenshot_9.png (image/png)
+ Screenshot_6.png (image/png)
+ Screenshot_7.png (image/png)
+ Screenshot_8.png (image/png)
+ Screenshot_3.png (image/png)
+ Screenshot_4.png (image/png)
+ image2019-3-7_17-38-11.png (image/png)
+ image2019-3-7_17-39-51.png (image/png)
+ image2019-3-7_18-12-24.png (image/png)
+ image2019-3-7_18-15-45.png (image/png)
+ image2019-3-11_10-15-47.png (image/png)
+ image2019-3-11_10-16-20.png (image/png)
+ image2019-3-11_10-34-55.png (image/png)
+ image2019-3-11_18-6-34.png (image/png)
+ image2019-3-11_18-8-46.png (image/png)

+
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧コミスミセ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧コミスミセ_.html new file mode 100644 index 0000000..89512bd --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧コミスミセ_.html @@ -0,0 +1,137 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ榧コミスミセ? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту “Окно”?

+

Постановка задачи: на одном из этапов прохождения бизнес - процесса следует проинформировать пользователя о готовности Системы отправить сообщение электронной почтой на основе тех данных, что пользователь последовательно на нескольких формах и в несколько этапов вводил в Систему до этого момента. Предоставить пользователю возможность 1) обойти отправку и пойти дальше по процессу, 2) вернуться на первый этап и повторить (откорректировать ввод данных), 3) отправить e-mail на основе всех введенных им данных.

+

Решение задачи:

+
    + +
  1. В редакторе бизнес-процессов предусмотреть отдельную пользовательскую задачу (UserTaks).
  2. +
+

+
    + +
  1. Создать новую экранную форму (page) и соотнести ее с этой пользовательской задачей в редакторе бизнес- процессов.
  2. +
+

+
    + +
  1. Открыть экранную форму в редакторе экранных форм и перенести из библиотеки компонентов компоненту Окно в дерево страницы page.
  2. +
+

+
    + +
  1. Настроить каждую входящую состав компоненты “Окно” простую визуальную компоненту следующим образом:
  2. +
+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+
+ +

+
Дать заголовок компоненте Окно, задействовав компоненту ТекстСформулировать тело сообщения пользователю, которое будет отображаться Системой и заполнить предназначенный для этого параметр компоненты TextAreaНастроить параметры компонент Кнопка, с помощью которых пользователь будет принимать решение о дальнейшем движении маркера процесса
+
+ +

На этом выполнение поставленной задачи можно считать завершенным.

+

При проверке результата в работающем приложении компонента выглядит так:

+

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ミ頒クミーミサミセミウ_ミエミサム柔ミイム巾イミセミエミー_ミソムミオミエムσソムミオミカミエミオミスミクム柔ミソミセミサム糊キミセミイミームひオミサム酸ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ミ頒クミーミサミセミウ_ミエミサム柔ミイム巾イミセミエミー_ミソムミオミエムσソムミオミカミエミオミスミクム柔ミソミセミサム糊キミセミイミームひオミサム酸ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..8dd4b39 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ミ頒クミーミサミセミウ_ミエミサム柔ミイム巾イミセミエミー_ミソムミオミエムσソムミオミカミエミオミスミクム柔ミソミセミサム糊キミセミイミームひオミサム酸ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,146 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミクムミソミセミサム糊キミセミイミームび ミ頒クミーミサミセミウ ミエミサム ミイム巾イミセミエミー ミソムミオミエムσソムミオミカミエミオミスミクム ミソミセミサム糊キミセミイミームひオミサム ミスミー ムムびミーミスミクムミオ? + + + + + + +
+
+ + + +
+
+

Как использовать Диалог для вывода предупреждения пользователю на странице?

+

Постановка задачи: необходимо реализовать на пользовательской странице Карточки проверки всплывающее Диалоговое окно с предупреждением о некорректном заполнении пользователем Дат проведения проверки (дата начала проверки и дата окончания проверки). Вывод Диалога предупреждения и проверка корректности введенных пользователем значений в поле дат должны осуществляться согласно условию, что Дата окончания проверки не должна быть раньше Даты начала проверки, и Дата начала проверки не должна быть позднее Даты окончания проверки, соответственно. В случае некорректного заполнения одной из Дат, помимо вывода всплывающего Диалогового окна, введенная пользователем Дата должна очищаться.

+

Элементы на странице должны иметь следующие настройки:

+
    + +
  • Дата (с возможностью сохранения) №1:
    +надпись -Дата начала проверки
    +формат - Дата
    +введенноепользователем значение должно сохраняться в базу данных
  • +
  • Дата (с возможностью сохранения) №2:
    +надпись -Дата окончания проверки
    +формат-Датавведенноепользователем значение должно сохраняться в базу данных
  • +
  • Диалог вывода предупреждения №1:
    +элемент Текст -Дата начала проверки не должна быть позднее Даты окончания проверки
    +кнопка закрытия Диалога - Ок
    +диалог должен быть скрыт по умолчанию, его видимость будет регулироваться с помощью Обработчика событий
  • +
  • Диалог вывода предупреждения №2:
    +элемент Текст-Дата окончания проверки не должна быть раньше Даты начала проверкикнопка закрытия Диалога- Окдиалог должен быть скрыт по умолчанию, его видимость будет регулироваться с помощью Обработчика событий
  • +
+

**Решение задачи:**предполагается, чтостраница Карточка проверки уже создана бизнес-аналитиком, где имеется основная компонента Форма, в структуру сущностей которой включена необходимая таблица, куда будут сохраняться введенные пользователем значения. Для добавления на страницу полей с Датами и Диалоговых окон необходимосделать следующее:

+ +

рис.1 Добавление Дат на Форму

+

рис.2 Настройка элемента Дата начала проверки

+

рис.3 Настройка элемента Дата окончания проверки

+
    + +
  • добавить внутрь Формы первое Диалоговое окно со вложенными элементами Текст и Кнопка, которое будет отображаться при условии: Дата окончания проверки не должна быть раньше Даты начала проверки (рис.4, рис.5, рис.6)
    +
    +рис.4 Диалог с проверкой корректности Даты окончания проверки
    +рис.5 Текст с предупреждением для пользователя
    +рис.6 Кнопка закрытия Диалога
  • +
  • добавить Обработчик событий, где регулируется видимость Диалога, всплывающего в случае, еслиДата окончания проверкираньшеДаты начала проверки и очищается значение поля Дата окончания проверки при выполнении этого условия(рис.7)
  • +
  • добавить Обработчик событий, с помощью которого выполняется закрытие Диалога с проверкой Даты окончания при нажатии на Кнопку внутри Диалога (рис.8)
  • +
+

рис.7 Настройка Обработчика событий для отображения Диалога
+рис.8 Настройка Обработчика событий для закрытия Диалога

+
    + +
  • добавить внутрь Формы второе Диалоговое окно со вложенными элементами Текст и Кнопка, которое будет отображаться при условии: Дата начала проверкине должна быть позднее Даты окончания проверки (рис.9, рис.10, рис.11)
    +
    +рис.9 Диалог с проверкой корректности Даты начала проверки
    +рис.10 Текст с предупреждением для пользователя
    +рис.11 Кнопка закрытия Диалога
  • +
  • добавить О бработчик событий, где регулируется видимость Диалога, всплывающего в случае, если Дата начала проверки позднее Даты окончания проверкии очищается значение поля Дата начала проверки при выполнении этого условия (рис.12)
  • +
  • добавить Обработчик событий, с помощью которого выполняется закрытие Диалога с проверкой Даты начала при нажатии на Кнопку внутри Диалога (рис.13) +


    +рис.12 Настройка Обработчика событий для отображения Диалога
    +рис.13 Настройка Обработчика событий для закрытия Диалога

  • +
+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи выполнены: на странице отображается два элемента Дата начала проверки и Дата окончания проверки (рис.14). В случае некорректного заполнения пользователем одного из этих полей (в любом порядке), автоматически срабатывает проверка по условиям, заданным в Обработчиках событий, и всплывает Диалоговое окно с предупреждением о допущенной ошибке (рис.15, рис.16).

+

+

+

рис.15 Вывод Диалогового окна при некорректном заполнении Даты начала проверки

+

+

рис.14.Визуальное отображение элементов с Датами на странице
+рис.16 Вывод Диалогового окнапри некорректном заполнении Даты окончания проверки

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ.html new file mode 100644 index 0000000..6f424f5 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオム_ミイミコミサミーミエミセミコ.html @@ -0,0 +1,121 @@ + + + + + + + + Web-BPM Docs – ミ墟セミスムひオミケミスミオム ミイミコミサミーミエミセミコ + + + + + + +
+
+ + + +
+
+

Контейнер вкладок

+

Назначение

+

Контейнер вкладок - невидимая компонента-контейнер позволяет экономно и эффективно организовать отображение на одном и том же месте экранного интерфейса разного набора визуальных компонентов, используя режим переключения вкладок, при котором выбранная пользователем вкладка отображается поверх других вкладок, не занимая дополнительного места на web странице и закрывая своим содержимым содержимое других вкладок.

+

Используется для оптимизации расположения визуальных компонент в интерфейсе системы, обеспечивая возможность группировки и логического объединения компонент в определенных зонах web-страницы и общее эстетическое и интуитивное восприятие экранного интерфейса пользователем системы.

+

Компонента Контейнер вкладок обязательно должна содержать в своем составе несколько компонент Вкладка, на которых располагаются прочие визуальные компоненты, позволяющие пользователю взаимодействовать с системой.

+

Компонента Контейнер вкладок находится в разделе Компоненты - Контейнеры - Контейнер вкладок

+

Свойства

+

Компонента имеет набор общих свойств и подгрузка данных по умолчанию. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Цикличность вкладок (isLoopTabs) Значения True или False
+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Можно ли вложить Контейнер вкладок в другие контейнеры? Да, может быть вложен в Вертикальный или Горизонтальный контейнеры
Как сделать Контейнер вкладок из горизонтального вертикальным? Для этого необходимо задать css класс “tab-menu” для TabContainer
Как выбрать вкладку в Контейнере вкладок по названию/номеру? Нужно использовать методы Контейнера вкладок “Сделать вкладку активной по заголовку”, “Сделать вкладку активной по индексу” в компоненте Обработка событий. Для выбора вкладки по индексу следует учитывать, что индекс вкладок начинается с 0 (первая по счету вкладка имеет индекс 0)
Можно ли расположить визуальные компоненты сразу в Контейнере вкладок, а не в компоненте Вкладка? Можно, но тогда Контейнер вкладок ничем не будет отличаться от Вертикального контейнера
Чем отличается функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера от функциональности одноименных свойств обычной компоненты? Функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера отличается от функциональности одноименных свойств у обычной компоненты тем, что значение указанных свойств наследуется с компоненты-контейнера на все компоненты, входящие в состав такой компоненты-контейнера. Правила наследования таковы, что если у вложенного объекта соответствующее свойство выставлено в значение Истина, то оно следует судьбе этого же свойства у компоненты-контейнера, если же значение соответствующего свойства у вложенной компоненты Ложь, то наследования значения этого свойства от компоненты-контейнера не происходит, компонента функционирует в соответствии с собственными настройками.
+

CSS классы

+ + + + + + + + + + + + + + + +
Название класса css Описание
tab-menu класс присваивается компоненте TabContainer, делает его вертикальным
menu-header класс присваивается компоненте TabItem (подзаголовок меню) при необходимости визуально выделить элемент меню
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオム_ム\ミコミスミセミソミコミーミシミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオム_ム\ミコミスミセミソミコミーミシミク.html new file mode 100644 index 0000000..ec738ad --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオム_ム\ミコミスミセミソミコミーミシミク.html @@ -0,0 +1,98 @@ + + + + + + + + Web-BPM Docs – ミ墟セミスムひオミケミスミオム ム ミコミスミセミソミコミーミシミク + + + + + + +
+
+ + + +
+
+

Контейнер с кнопками

+

Назначение

+

Контейнер с кнопками - это визуальная компонента-контейнер, которая позволяет скрыть несколько визуальных компонентов Кнопка под единственной видимой кнопкой, при нажатии на которую все скрытые ранее кнопки выпадают списком, предоставляя возможность пользователю нажать нужную. Используется для группировки схожих по функциональности кнопок и оптимизации расположения компонентов в интерфейсе системы, обеспечивая общее эстетическое и интуитивное восприятие.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать наименование кнопки пример возможного значения: Печать
Текст подтверждения при печати позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопку
+

Функции

+

Дополнительных функций у этой компоненты нет.

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем предпочтительнее использование контейнера кнопок вместо совокупности самостоятельных кнопок? Допустим, на web-странице требуется реализовать кнопки печати заявления, распорядительного акта на основе заявления, журнала распорядительных актов. расписку о получении распорядительного акта. Если расположить эти кнопки друг за другом, то такая web-страница будет смотреться перегруженной. Для облегчения восприятия страницы можно разместить только одну кнопку “Печать”, а при нажатии на нее уже будет раскрываться список вариантов (в виде самостоятельных кнопок) тех документов, которые можно распечатать. Подробнее этот пример будет рассмотрен в разделе методических рекомендаций.
Сколько вложенных компонентов Кнопка может быть у компоненты Контейнер кнопок? Теоретически, количество вложенных Кнопок не ограничено и определяется целесообразностью использования в каждом конкретном случае.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオムム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオムム.html new file mode 100644 index 0000000..27a2528 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ墟セミスムひオミケミスミオムム.html @@ -0,0 +1,53 @@ + + + + + + + + Web-BPM Docs – ミ墟セミスムひオミケミスミオムム + + + + + + + +
+
+
+
+

© 2022 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ斷ーミアミセム_ムミクミサム袴びミセミイ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ斷ーミアミセム_ムミクミサム袴びミセミイ.html new file mode 100644 index 0000000..206ca58 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ斷ーミアミセム_ムミクミサム袴びミセミイ.html @@ -0,0 +1,181 @@ + + + + + + + + Web-BPM Docs – ミ斷ーミアミセム ムミクミサム袴びミセミイ + + + + + + +
+
+ + + +
+
+

Набор фильтров

+

Назначение

+

Набор фильтров - это невидимая компонента-контейнер, которая позволяет расположить внутри себя поля (Фильтры), с помощью которых будет происходить фильтрация и указать таблицу по которой будет происходить поиск.

+

Компонента Набор фильтров находится в разделе **Компоненты - Контейнеры -Набор фильтров

+

Свойства

+

Компонента имеет набор общих свойств и подгрузка данных по умолчанию. Ниже отображены свойства, специфичные только для данной компоненты.

+

Общие

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Фильтровать сразу позволяет установить условие по которому будет происходить применение фильтрации. Иными словами, можно задать условие по которому применение фильтра будет происходить после нажатия на кнопку фильтрации, либо динамически, после ввода данных в поле фильтрации. +
    +
  • Null - значение не определено
  • +
  • False - фильтр будет срабатывать только после нажатия на Кнопку для фильтрации - значение по умолчанию
  • +
  • True - фильтр будет срабатывать сразу после внесения изменения в поля фильтра.
Запоминать значения фильтра позволяет восстанавливать значения фильтров при возврате на страницу, т.е.запоминать значения фильтров (сохранять в кэше). При этом значение фильтра, заданное пользователем имеет приоритет над значением фильтра по умолчанию +
    +
  • значение не определено - по умолчанию
  • +
  • true - запоминать значения фильтров
  • +
  • false - не запоминать значения фильтров
Пропустить подгрузку данных (Skip initial loading) позволяет исключать подгрузку данных в таблицу без указания значений фильтров (пустыми фильтрами) +
    +
  • значение не определено - по умолчанию
  • +
  • true - исключает возможность подгрузки данных в таблицу без указания значений фильтров, т.е. при пустых значениях фильтров при первоначальном открытии страницы или по кнопке “Найти” запрос в базу данных (по Графу сущностей таблицы) выполняться не будет
  • +
  • false - позволяет подгружать данные в таблицу без указания значений фильтров, т.е. при первоначальном открытии страницы или по кнопке “Найти” будет осуществляться запрос в базу данных по пустым значениям фильтров
Шаблон текста при валидации позволяет задать шаблон вывода сообщения (текст сообщения), отображаемого в окне ошибки при валидации значений фильтров По умолчанию шаблон сообщения выставлен как:“#{label}: #{message}”, где параметры интерпретируются следующим образом: #{label} - наименование компоненты, в которой произошла ошибка #{message} -текст сообщения об ошибке Примеры возможной настройки: При пустом значений в поле* Message Validation Template* текст в окне об ошибке, отображаемом, например, при не заполнении значения в обязательном поле, будет отображаться по шаблону "#{label}: #{message}", где #{label} - наименование компоненты, в которой произошла ошибка (например, поле ФИО) #{message} - текст сообщения об ошибке (значение по умолчанию Поле обязательно).
+

Сохранение и загрузка значений в локальном хранилище

+

Система позволяет с помощью свойства filterValuesSaveStrategy сохранять значения полей фильтрации в локальном хранилище браузера. А с помощью свойства filterValuesLoadStrategy подставлять значения из локального хранилища браузера в поля фильтрации.

+

Время жизни определяется параметром filter_cleanup_interval_hours.

+

Если страница в контексте BPMN процесса, то сохранение/восстановление работает в рамках одного экземпляра процесса.

+

Сценарий 1. Необходимо подставлять предыдущее значение полей фильтрации при возврате на страницу.

+

Вариант решения: на странице в наборе фильтров (FilterGroup) задать filterValuesSaveStrategy = BY_PAGE_OBJECT_ID, filterValuesLoadStrategy = BY_PAGE_OBJECT_ID.

+

Сценарий 2. Необходимо подставить значений полей фильтрации из страницы 1 на страницу 2, при условии, что имена полей фильтрации и имя набора фильтров (FilterGroup) совпадают.

+

Вариант решения:

+
    + +
  1. + +

    На странице 1

    +
  2. +
  3. + +

    Значения полей фильтрации сохраняем в хранилище по имени объекта. Для этого задаём filterValuesSaveStrategy = BY_OBJECT_NAME.

    +
  4. +
  5. + +

    На странице 2

    +
  6. +
  7. + +

    Значения полей фильтрации берём из хранилища по имени объекта. Для этого задаём filterValuesLoadStrategy = BY_OBJECT_NAME.

    +
  8. +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
filterValuesLoadStrategy Стратегия загрузки значений вложенных компонент-фильтров - BY_PAGE_OBJECT_ID - Подгрузка значений фильтров по ключу = идентификатор страницы + идентификатор объекта + id процесса если это bpmn процесс
- BY_OBJECT_NAME - Подгрузка значений фильтров по ключу = имя объекта + id процесса если это bpmn процесс
- BY_CUSTOM_NAME - Подгрузка значений фильтров по ключу = ключ указанный в поле filterValuesLoadStorageName + id процесса если это bpmn процесс
filterValuesLoadStorageName ключ по которому необходимо загружать значения фильтров из локального хранилища
filterValuesSaveStrategy Стратегия сохранения значений вложенных компонент-фильтров - BY_PAGE_OBJECT_ID - сохранение значений фильтров по ключу = идентификатор страницы + идентификатор объекта + id процесса если это bpmn процесс
- BY_OBJECT_NAME - сохранение значений фильтров по ключу = имя объекта + id процесса если это bpmn процесс
- BY_CUSTOM_NAME - сохранение значений фильтров по ключу = ключ указанный в поле filterValuesSaveStorageName + id процесса если это bpmn процесс
filterValuesSaveStorageName ключ по которому необходимо сохранять значения фильтров в локальное хранилище
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен**перечень функций, расширяющих её базовую функциональность,**которые можно добавить нажатием кнопки.

+

Вследствие технических особенностей реализации функций (-функции, которые выполняются удаленно на сервере приложений,- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO: описать

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
В чем заключаться главная необходимость использования Набора фильтров? Главная необходимость заключается в задании таблицы к которой будет применяться фильтр. Таким образом мы можем наложить несколько фильтров на необходимую нам таблицу и выводить записи которые ищет пользователь.
Можно ли задавать несколько наборов фильтров на странице? Да, при условии что они будут обращаться к разным таблицам.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ榧コミスミセ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ榧コミスミセ.html new file mode 100644 index 0000000..0f13608 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ榧コミスミセ.html @@ -0,0 +1,179 @@ + + + + + + + + Web-BPM Docs – ミ榧コミスミセ + + + + + + +
+
+ + + +
+
+

Окно

+

Назначение

+

Окно - это составная компонента, которая используется для вывода на экран сообщений (уведомлений, предупреждений, дополнительной информации) Системы, стилизованных под окно системных сообщений операционной системы Windows, в ответ на какую-то активность пользователя, с опциональным выбором одного из возможных последующих действий. Представляет из себя родительский Вертикальный контейнер с вложенными в него дочерними визуальными компонентами, заранее взаимо-увязанными и назначенными стилями.

+

Несмотря на то, что основным предназначением является вывод статической информации для пользователя, компонента может быть модифицирована добавлением источника данных Форма и, вследствие этого, отображать уже динамически получаемую запросом к базе данных информацию, либо сохранять информацию в базу данных при выборе пользователем того или иного варианта действий из заложенных аналитиком при настройке компоненты.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Заголовок позволяет указать текст заголовка для контейнера Окно пример возможного значения: Общие сведения
Тело сообщения позволяет указать текст сообщения в теле контейнера Окно пример возможного значения: Общие данные
Кнопки позволяет указать Кнопки навигации
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки .

+

Вследствие технических особенностей реализации функций (

+

- функции, которые выполняются удаленно на сервере приложений,

+

- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO - описать возможности

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + +
Вопрос Ответ
В каких случаях чаще всего используется элемент Окно Для информирования пользователя о последствиях его возможных действий или событиях, происходящих в Системе (вывод уведомлений, предупреждений и дополнительной информации). С точки зрения реализации бизнес-процесса, для использования компоненты Окно необходимо выделение отдельной Пользовательской задачи (UserTask), эту компоненту нецелесообразно интегрировать в обычную страницу (для такой взаимной интеграции служит компонента Диалог), компоненту Окно целесообразнее использовать когда нужно уведомить пользователя о событиях или вариантах действий в ходе исполнения бизнес - процесса.
Можно ли как-то дополнительно модифицировать компоненту Окно для расширения функциональности? Да Поскольку компонента Окно является составной компонентой, родительской компонентой которой является Вертикальный контейнер, то допустимы совмещение любых известных аналитику приемов и компонент, используемых при проектировании обычной страницы. При большом объеме внесенных модификаций, оригинальными от компоненты останутся только предустановленные стилистические настройки.
Чем отличается функциональностьнабора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера от функциональности одноименных свойств обычной компоненты? Функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнер аотличается от функциональности одноименных свойств у обычной компоненты тем, что значение указанных свойств наследуется с компоненты-контейнерана все компоненты, входящие в состав такой компоненты-контейнера. Правила наследования таковы, что если у вложенного объекта соответствующее свойство выставлено в значение Истина, то оно следует судьбе этого же свойства у компоненты-контейнера, если же значениесоответствующего свойства у вложенной компоненты Ложь, то наследования значения этого свойства от компоненты-контейнера не происходит, компонента функционирует в соответствии с собственными настройками.
+

Правила наследования значений свойств Подлежит сохранению, Обязательность дочерними компонентами, входящими в состав родительской компоненты контейнера

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
значение свойства у компоненты-контейнера значение свойства дочерней компоненты итоговое значение свойства
True True True
True False False
False True False
False False False
Undefined True True
Undefined False False
+

Правила наследования значений свойства Видимость дочерними компонентами, входящими в состав родительской компоненты контейнера

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
значение свойства у компоненты-контейнера значение свойства дочерней компоненты итоговое значение свойства
True True True
True False False
False True False
False False False
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム.html new file mode 100644 index 0000000..ab3ec68 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ。ミイミセムミームミクミイミーミオミシミーム柔ミソミーミスミオミサム.html @@ -0,0 +1,107 @@ + + + + + + + + Web-BPM Docs – ミ。ミイミセムミームミクミイミーミオミシミーム ミソミーミスミオミサム + + + + + + +
+
+ + + +
+
+

Сворачиваемая панель

+

Назначение

+

Сворачиваемая панель - это видимая компонента, которая используется для хранения содержимого в небольшом пространстве. Пользователь скрывает или открывает содержимое в сворачиваемой панели, щелкая вкладку графического элемента.

+

Как правило используется для группировки полей объеденных единым смыслом (например, относящихся к организации, либо разделу сотрудников).

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Заголовок позволяет задать заголовок сворачиваемой панели на странице пример возможного значения: Выбор
Открывать развернутым Задает условие по которому “Сворачиваемая панель” может быть по умолчанию развернута, либо свернута. +
    +
  • свернута- значение по умолчанию
  • +
  • развернута
+

Функции

+

Подгрузка данных по умолчанию

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO - описать возможности

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
В чем заключаться главная полезность использования Сворачиваемой панели? Главная полезность заключается в возможности пользователю самому определять, хочет ли он чтобы данные внутри сворачиваемой панели отображались на странице или нет.
Какое отображение принимает Сворачиваемая панель на странице пользователя? Настроить отображение по умолчанию можно с помощью свойства компоненты. Таким образом,при переходе на страницу,существует выбор отображать свернутую или раскрытую панель.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ。ムひクミサミク-ミコミセミスムひオミケミスミオムミセミイ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ。ムひクミサミク-ミコミセミスムひオミケミスミオムミセミイ.html new file mode 100644 index 0000000..1672e3c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ。ムひクミサミク-ミコミセミスムひオミケミスミオムミセミイ.html @@ -0,0 +1,129 @@ + + + + + + + + Web-BPM Docs – ミ岱サミセミコ ム ムミクミコムミクムミセミイミーミスミスム巾シミク ミコミスミセミソミコミーミシミク + + + + + + +
+
+ + + +
+
+

Блок с фиксированными кнопками

+ + + + + + + + + + + + + + + + + + +
Название класса css Описание
block-fixed класс для контейнера - оболочки
block-fixed-content класс для контейнера с содержимым
block-fixed-buttons класс для контейнера с прижатыми к низу кнопками
+

Если вам необходимо отобразить фиксированную (не перекрывается другими и не может быть скролом смещена со своей позиции) область с кнопками внизу страницы, то необходимо сделать:

+
    + +
  1. Добавить block-fixed на корневой контейнер (VBox) страницы. В него добавить два других контейнера: +
      + +
    1. для отображения основной области страницы (VBox). На него необходимо добавить класс block-fixed-content
    2. +
    3. для отображения кнопок (VBox). На него необходимо добавить класс block-fixed-buttons
    4. +
    +
  2. +
+

Внимание! Для корректной работы скрипта, объектов с классом «block-content» или «block-menu» должно быть не более одного.

+

Блок для работы со многими столбцами

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Название класса css Описание
block-border рамка для контейнера
block-border-top-line отчертить контейнер линией сверху
block-space-empty класс убирает внутренние отступы до вложенных элементов для контейнеров типа tab или block-content
block-horiz-cols класс выстраивает внутренние контейнеры в виде равновысотных столбцов
block-independent класс для создания автономного скроллируемого блока.
block-top класс для шапки. Цветовой блок, чаще всего используемый для размещения нередактируемых базовых элементов. Все поля формы внутри блока отображаются как подчеркнутый текст
+

При этом, если контейнеры не растянуты по высоте экрана, то автономный блок примет высоту, равною большему из имеющихся блоков.
+Либо будет равен высоте, заданной вручную через соответствующий параметр в студии.

+
    + +
  • HBox - block-horiz-cols +
      + +
    • VBox +
        + +
      • block-independent (Внутри VBox!)
      • +
      • +
      +
    • +
    • VBox
    • +
    +
  • +
+

Внимание! Для корректной работы скрипта, объектов с классом «block-horiz-col» должно быть не более одного.

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー.html new file mode 100644 index 0000000..7d7d591 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー.html @@ -0,0 +1,162 @@ + + + + + + + + Web-BPM Docs – ミ、ミセムミシミー + + + + + + +
+
+ + + +
+
+

Форма

+

Назначение

+

Форма - это невидимая компонента-контейнер, которая является источником подгрузки данных на странице пользовательского интерфейса. С помощью элемента Форма осуществляется запрос информации из базы данных во вложенные в Форму дочерние компоненты и сохранение введенной пользователем информации из дочерних компонент в базу данных по единственному идентификатору основной единицы создаваемого интерфейса (например, одной задаче в проекте, одному артикулу товара, одному сотруднику в коллективе и прочее).

+

Все другие визуальные компоненты, которые будут отображать или сохранять информацию в/из базы данных на странице приложения, должны обязательно находится внутри компоненты-контейнераФорма, поскольку именно из неё, как из источника данных, они берут ссылки на таблицы и колонки базы данных, с которыми будут оперировать.

+

Форма может работать в двух режимах:

+
    + +
  • После события сохранения (обновления) данных в визуальных компонентах, входящих в компоненту Форма, веб-страница запущенного приложения завершает текущую задачу (BPMNUSER TASK) и переходит к следующей задаче по бизнес-процессу;
  • +
  • После события сохранения (обновления) данных в визуальных компонентах, входящих в компоненту Форма, веб-страница запущенного приложения не завершает текущую задачу (BPMNUSER TASK), не переходит к следующей задаче по бизнес-процессу, а остается в том же экранном интерфейсе. Для принудительного завершения текущей задачи (BPMNUSER TASK) и перехода к следующей задаче по бизнес-процессу, необходимо воспользоваться компонентой Кнопка навигации.
  • +
+

Компонента Форма находится в разделе Компоненты - Контейнеры - Форма

+

Свойства

+

Компонента имеет набор общих свойств, подгрузка данных, подгрузка данных по умолчанию.

+

Подгрузка данных основная

+

+

описывает запрос к базе данных, результаты которого позволяют наполнить вложенные видимые компоненты значениями из базы данных при открытии веб-страницы приложения. Является обязательным к заполнению и настройке.

+
    + +
  • с помощью визуального конструктора запросов позволяет задать Граф сущностей, т.е. указать объекты базы данных, условия и взаимосвязи между ними для получения и отображения информации на веб-странице и/или ее сохранения.
  • +
  • с помощью параметра Переменная процесса с идентификатором позволяет ограничить результаты полученного запроса единственным идентификатором смысловой единицы создаваемого интерфейса. - Datasource Jndi Name - позволяет задать иной источник (базу данных) для выполнения запроса, заданного с помощью элементов базы данных в редакторе Графа сущностей элемента.
  • +
+

Значение данного свойства может быть задано следующим образом: java:/webbpm/AppRepDS, а сам адрес базы данных, логин и пароль для подключения должен быть указан в файле standalone.xml (аналогично тому, как указывается, например, подключение к базе данных безопасности) (рис.1)

+

+

рис.1 Настройка файла standalone.xml

+

В случае, если данное свойство не заполнено, запрос выполняется в базе данных, указанной в конфигурации проекта (во вкладке База данных).

+

Подгрузка данных по умолчанию

+

+

описывает запрос к базе данных, результаты которого позволяют наполнить вложенные видимые компоненты значениями по умолчанию из базы данных при открытии веб-страницы приложения, для тех случаев, когда результат запроса из основной подгрузки данных пуст. Не является обязательным к заполнению и настройке.

+
    + +
  • с помощью визуального конструктора запросов позволяет задать Граф сущностей, т.е. указать объекты базы данных и взаимосвязи между ними для получения и отображения на веб-странице информации по умолчанию, но не ее сохранения
  • +
  • с помощью параметра Переменная процесса с идентификатором позволяет ограничить результаты полученного запроса единственным идентификатором смысловой единицы создаваемого интерфейса.
  • +
+

Datasource Jndi Name - позволяет задать иной источник (базу данных) для выполнения запроса, заданного с помощью элементов базы данных в редакторе Графа сущностей элемента.

+

Значение данного свойства может быть задано следующим образом:java:/webbpm/AppRepDS, а сам адрес базы данных, логин и пароль для подключения должен быть указан в файлеstandalone.xml(аналогично тому, как указывается, например, подключение к базе данных безопасности) (рис.1)

+

+

рис.1 Настройка файла standalone.xml

+

В случае, если данное свойство не заполнено, запрос выполняется в базе данных, указанной в конфигурации проекта (во вкладке База данных).

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Шаблон сообщения валидации (Message validation template) позволяет задать шаблон вывода сообщения (текст сообщения), отображаемого в окне ошибки при валидации значений фильтров. По умолчанию шаблон сообщения выставлен как: "\#{label}: \#{message}", где параметры интерпретируются следующим образом: \#{label} - наименование компоненты, в которой произошла ошибка \#{message} - текст сообщения об ошибке Примеры возможной настройки: При пустом значений в поле* Message Validation Template* текст в окне об ошибке, отображаемом, например, при не заполнении значения в обязательном поле, будет отображаться по шаблону "\#{label}: \#{message}", где \#{label} - наименование компоненты, в которой произошла ошибка (например, поле ФИО) \#{message} - текст сообщения об ошибке (значение по умолчанию Поле обязательно).
+

Базовые функции

+

Функция основных свойств компоненты “Форма в режиме перехода”

+

По умолчанию компонента Форма работает в режиме перехода к следующей задаче послесохранения (обновления) данных.

+

Указанную функциональность обеспечивает функция “Форма с переходом.Основные параметры”, и она автоматически назначается на компоненту Форма при переносе ее из библиотеки компонентов в структуру страницы в конструкторе экранного интерфейса.

+

Является альтернативой функции Форма_без_перехода_Основные_параметры. Для компоненты “Форма” может быть назначена только одна из этих функций, иначе система будет генерировать ошибку при сборке приложения.

+

Описание параметров функции находится в таблице Свойства → Основные параметры.

+

+

+

Дополнительные функции

+

После настройки базовых свойств и функций компоненты может возникнуть необходимость в расширении базовой функциональности компоненты для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Для удаления из компоненты ошибочно добавленной функции или функции в которой нет необходимости используется элемент Ключ с шестеренкой, расположенный справа от наименования функции. По нажатию на элемент есть возможность Удалить функцию.

+

Вследствие технических особенностей реализации функций (

+

- функции, которые выполняются удаленно на сервере приложений,

+

- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Функция основных свойств компоненты “Форма без перехода”

+

По умолчанию компонента Форма работает в режиме перехода к следующей задаче послесохранения (обновления) данных.

+

Для перевода компоненты Форма в режим “без перехода” следует удалить скрипт Форма с переходом. Основные параметрыиз компоненты (рис.1) и назначить функцию Форма без перехода. Основные параметры (рис. 2).

+

Является альтернативой функции Форма с переходом. Основные параметры. Для компоненты “Форма” может быть назначена только одна из этих функций, иначе система будет генерировать ошибку при сборке приложения.

+

Описание параметров функции находится в таблице Свойства → Основные параметры.

+

+

Рис.1

+

+

Рис.2

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Если компонента Форма является источником данных для входящих в нее элементов, обязательно ли ее присутствие на любой создаваемой странице ? Нет, не обязательно.Использование компоненты Форма чаще всего обуславливается необходимостью отображения так называемой “карточки сущности”, когда на одной странице нужно вывести в отдельных полях разных типов несколько характеристик одной единицы учета. Но для страниц, содержащих, например, табличное представление данных, так называемый “реестр единиц учета”, компонента Форма не нужна (поскольку компонент Таблица имеет собственный настраиваемый источник данных).
Что такое имплементация и функций и для чего они нужны? Имплементация - это один из вариантов реализации. Функция выполняет некоторое полезное с точки зрения аналитика действие, задуманное им для реализации поставленной задачи. Но внутри функции это полезное действие может быть исполнено разными способами, предложенными разработчиками платформы. Ярким примером служит функция подгрузки данных. Она выполняет полезное действие - подгружает данные, но может подгружать их способом формирования и исполнения SQL запроса, а может подгружать способом считывания из переменной. В данном случае функция одна, а вариантов реализации полезного действия - два. Значит, существует две имплементации одной функции.
Можно ли сохранить/подгрузить данные в визуальные компоненты не только в/из базы данных, но и в/из переменной процесса? Да, можно. Для подгрузки значения в визуальную компоненту из переменной процесса следует воспользоваться функцией Заполнить значением из переменной процесса, а для сохранения значения из визуального компонента в переменную процесса - функцией Сохранить значение в переменную процесса.
Можно ли заполнить визуальный компонент внутри компоненты Форма значением по умолчанию, когда страница с “карточкой сущности” открывается пустой для создания новой записи? Да, можно. Поскольку источником данных для визуального компонента является компонента Форма, то следует воспользоваться функцией Подгрузка данных по умолчанию и настроить подгрузку данных по умолчанию. В самой визуальной компоненте указать таблицу и колонку из ‘графа сущностей для получения значений по умолчанию’. Тогда при открытии веб-страницы приложения компонент Форма сформирует 2 запроса - по основному графу сущности данных не будет (поскольку это веб-страница создания карточки), а по ‘графу сущностей данных по умолчанию’ (с иной логикой формирования запроса, чем в основной ) будут выбраны и смогут быть предустановлены в визуальные компоненты в качестве предлагаемых по умолчанию
Чем отличается функциональность набора свойств (Видимость, Обязательность, Недоступно для управления, Подлежит сохранению) у компоненты-контейнера от функциональности одноименных свойств обычной компоненты? Функциональность набора свойств (Подлежит сохранению,Обязательность, Видимость,Недоступно для управления) у компоненты-контейнера отличается от функциональности одноименных свойств у обычной компоненты тем, что значение указанных свойств наследуется с компоненты-контейнера на все компоненты, входящие в состав такой компоненты-контейнера. Правила наследования таковы, что если у вложенного объекта соответствующее свойство выставлено в значение Истина, то оно следует судьбе этого же свойства у компоненты-контейнера, если же значение соответствующего свойства у вложенной компоненты отличается от значения Истина, то наследования значения этого свойства от компоненты-контейнера не происходит, компонента функционирует в соответствии с собственными настройками.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー_ミアミオミキ_ミソミオムミオムミセミエミー_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー_ミアミオミキ_ミソミオムミオムミセミエミー_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html new file mode 100644 index 0000000..2e8d513 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー_ミアミオミキ_ミソミオムミオムミセミエミー_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html @@ -0,0 +1,56 @@ + + + + + + + + Web-BPM Docs – ミ、ミセムミシミー ミアミオミキ ミソミオムミオムミセミエミー. ミ樮ミスミセミイミスム巾オ ミソミームミーミシミオムびム + + + + + + +
+
+ + + +
+
+

Форма без перехода. Основные параметры

+

По умолчанию компонента Форма работает в режиме перехода к следующей задаче после сохранения (обновления) данных.

+

Для перевода компоненты Форма в режим “без перехода” следует удалить () скрипт Форма с переходом. Основные параметры из компоненты (рис.1) и назначить функцию Форма без перехода. Основные параметры (рис. 2).

+

Является альтернативой функции Форма с переходом. Основные параметры. Для компоненты “Форма” может быть назначена только одна из этих функций, иначе система будет генерировать ошибку при сборке приложения.

+

Описание параметров функции находится в таблице Свойства → Основные параметры.

+

+

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー_ム\ミソミオムミオムミセミエミセミシ_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー_ム\ミソミオムミオムミセミエミセミシ_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html new file mode 100644 index 0000000..7df4cad --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/containers/ミ、ミセムミシミー_ム\ミソミオムミオムミセミエミセミシ_ミ樮ミスミセミイミスム巾オ_ミソミームミーミシミオムびム.html @@ -0,0 +1,56 @@ + + + + + + + + Web-BPM Docs – ミ、ミセムミシミー ム ミソミオムミオムミセミエミセミシ. ミ樮ミスミセミイミスム巾オ ミソミームミーミシミオムびム + + + + + + +
+
+ + + +
+
+

Форма с переходом. Основные параметры

+

По умолчанию компонента Форма работает в режиме перехода к следующей задаче послесохранения (обновления) данных.

+

Указанную функциональность обеспечивает функция “Форма с переходом.Основные параметры”, и она автоматически назначается на компоненту Форма при переносе ее из библиотеки компонентов в структуру страницы в конструкторе экранного интерфейса.

+

Является альтернативой функции Форма_без_перехода_Основные_параметры. Для компоненты Форма может быть назначена только одна из этих функций, иначе система будет генерировать ошибку при сборке приложения.

+

Описание параметров функции находится в таблице Свойства → Основные параметры.

+

+

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/control-properties.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/control-properties.html new file mode 100644 index 0000000..f1898a9 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/control-properties.html @@ -0,0 +1,140 @@ + + + + + + + + Web-BPM Docs – ミ樮ミスミセミイミスム巾オ ムミイミセミケムムひイ ミコミセミシミソミセミスミオミスム + + + + + + +
+
+ + + +
+
+

Основные свойств компонент

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Всплывающая подсказка позволяет указать текст всплывающей подсказки, которая появляется при наведении курсора на элемент пример возможного значения: Здесь отображается информация о сотрудниках
Видимость позволяет регулировать видимость элемента на странице - видимый. Значение по умолчанию
- невидимый
Недоступно для управления позволяет регулировать возможность редактирования (управления) элементом на странице - невозможно регулировать
- возможно регулировать. Значение по умолчанию
Подлежит сохранению позволяет указать будет ли значение компоненты передаваться на сервер; если значение установлено в , то
- при сохранении, значение данного поля не будет сохранено
- при использовании в фильтре, значение данного поля не будет участвовать в фильтрации
- значение не определено. Значение по умолчанию
- подлежит сохранению
- не подлежит сохранению
Обязательность позволяет задать обязательность заполнения поля на странице; обязательные поля проверяются на заполненность перед сохранением - значение не определено - значение по умолчанию
- обязательно для заполнения
- необязательно для заполнения
+

Расширенные настройки

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Inherit Parent
Стили +
    +
  • внутренний отступ - (необходимо указывать единицы измерения)
  • +
  • внешний отступ - (необходимо указывать единицы измерения)
  • +
  • граница - (необходимо указывать единицы измерения)
  • +
  • высота - позволяет указать высоту элемента (необходимо указывать единицы измерения, например, 20px)
  • +
  • ширина - позволяет указать ширину элемента(необходимо указывать единицы измерения, например, 40px)
  • +
  • минимальная высота - позволяет указать минимальную высоту
  • +
  • элемента (необходимо указывать единицы измерения, например, 20px)
  • +
  • минимальная ширина - позволяет указать минимальную ширину
  • +
  • элемента (необходимо указывать единицы измерения,
  • +
  • например, 40px)
  • +
  • максимальная высота - позволяет указать максимальную высоту
  • +
  • элемента (необходимо указывать единицы измерения,
  • +
  • например, 20px)
  • +
  • максимальная ширина - позволяет указать максимальную ширину
  • +
  • элемента (необходимо указывать единицы измерения,
  • +
  • например, 40px)
CSS классы позволяет указать список CSS-классов, которые необходимо применить к элементу
+

Свойства полей для ввода

+ + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
requiredErrorMsg позволяет задать пользовательское сообщение об ошибке обязательности поля текст
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/editable-grids/EditableGrid.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/editable-grids/EditableGrid.html new file mode 100644 index 0000000..ff42906 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/editable-grids/EditableGrid.html @@ -0,0 +1,244 @@ + + + + + + + + Web-BPM Docs – EditableGrid + + + + + + +
+
+ + + +
+
+

EditableGrid

+

Назначение компонента

+

Редактируемая таблица - это компонента, которая используется для отображения информации из базы данных в табличном виде с возможностью изменения значений.

+

Свойства

+

Компонента имеет набор общих свойств.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
    +
  • возможность выбора сразу нескольких или одной строки
  • +
  • возможность выбора одной строки - значение по умолчанию
Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой Таблица +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать колонку флагов +
  • Не активно - не отображать колонку флагов
Ref To Main Table PK указывает колонку, в которой записан Main Table PK Column
Main Table PK Column указывает id строки на основе, которой будет производиться выборка в таблицу
Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
    +
  • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
  • +
  • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
  • +
  • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
Row edition type позволяет указать тип открытия редакторов ячеек +
    +
  • DOUBLE_CLICK–дефолтное поведение для открытия редакторов ячеек. При двойном клике открывается редактор ячейки.
  • +
  • SINGLE_CLICK– при одинарном клике открывается редактор ячейки. Эта настройка позволяет редактировать значения в ячейках по аналогии с Excel-ем.
  • +
  • NO_CLICK– ни одинарный, ни двойной клик не открывает редактор ячейки. Эта настройка полезна, если вы хотите редактировать значения в ячейках по другому, например при нажатии на кнопку в ячейке.
Row Height позволяет задать высоту строки в таблице в пикселях (px) пример возможного значения: 20
Auto Stretch Columns позволяет задать возможность автоматического выравнивания ширины столбцов по ширине +
    +
  • выравнивать ширину столбцов- значение по умолчанию
  • +
  • не выравнивать ширину столбцов
Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого
+

Для добавления колонки в таблицу необходимо добавить один из компонент:

+
    + +
  • AutoCompleteGridColumn
  • +
  • CheckBoxGridColumn
  • +
  • ComboboxGridColumn
  • +
  • DateTimePickerGridColumn
  • +
  • NumberFieldGridColumn
  • +
  • OneToManyGridColumn
  • +
  • TextAreaGridColumn
  • +
  • TextFieldGridColumn
  • +
  • TimePickerGridColumn
  • +
+

Настройка колонок компоненты

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение
Pinned Указывает с какой стороны закрепить колонку
Hidden Указывает видимость колонки
Editable Задает возможность изменять значения в колонке
Header Type Задает тип заголовка колонки(статичный или из переменной процесса)
Sortable Задает возможно сортировать таблицу по значениям колонки
Id Column Задает колонку из базы, откуда будут заполнятся значения в таблице
+

Скрипты

+
    + +
  • MaxAggregationRowValidator -
  • +
  • MinAggregationRowValidator -
  • +
  • RequiredAggregationRowValidator -
  • +
  • EditableGridColumnAggregator - скрипт для подсчёта данных с помощью математических функций или функций агрегации +
      + +
    • aggregationType - тип функции +
        + +
      • BY_COLUMNS - функция агрегации
      • +
      • MATH_EXPRESSION - математическое выражение
      • +
      +
    • +
    • aggregationFunction - Задает дополнительную ячейку со значением, полученным в результате выполнения выбранной функции агрегации. Одно из списка: MAX, MIN, AVG, COUNT, SUM, MULTIPLY. Если задан aggregationType==BY_COLUMNS
    • +
    • columns - колонки для агрегации. Если задан aggregationType==BY_COLUMNS
    • +
    • mathExpression - Математическое выражение. Например ${a_column_id}*${b_column_id}. Можно задать если MATH_EXPRESSION=MATH_EXPRESSION. Допустимые операции: сложение +, вычитание -, умножение *, деление /, остаток от деления %, возведение в степень **. См. https://developer.mozilla.org/en-US/docs/Learn/JavaScript/First_steps/Math#arithmetic_operators. Если задан aggregationType==MATH_EXPRESSION
    • +
    +
  • +
+

Форматеры

+ + + + + + + + + + + + + + + + + + +
Наименование форматера Назначение форматера Настраиваемые значения
NumberAggregationFormatter Форматирует агрегированное значение в ‘итого’. Script, Decimal Delimiter, Decimal Length, Sections Delimiter, Sections Length.
RoundingAggregationFormatter Округляет агрегированное числовое значение в ‘итого’. Decimals.
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Какие таблицы БД необходимо включать в Граф сущностей редактируемого грида? Только те, в которые необходимо сохранять данные при сохранении или включать и те таблицы, которые используются и для отображения данных в элементах, входящих в таблицу (комбобокс например)? Включать необходимо все таблицы отображаемые в гриде.
При редактировании записей и последующем сохранении в БД производился INSERT новой записи, а не UPDATE уже существующей.? Неправильная настройка компоненты.
Каким образом настраивать свойство “Подлежит сохранению” у самого грида и элементов внутри него? В той ячейке, где мне не нужно сохранять данные в БД ставит значение FALSE ? Свойство"Подлежит сохранению"необходимо указывать только у EditableGrid.
Как будет работать компонента ОТМ внутри грида. При быстром просмотре и добавлении увидели, что нет возможности вызвать диалоговое окно для выбора записи Будет исправлено в последующих версиях
При использовании комбинации ctrl A, ctrl C и ctrl V в строке данные вставляются, но при переключении на другую строку сбрасываются. При копировании значения из одного эдитора в другой, значение вставляется, в случае вставки значения в Combobox необходимо дополнительно выбрать значение из списка.
Каким образом будет настроено удаление записи в гриде? Выделение строк и нажатие кнопки удаления.
Как подвести итоги по колонке, а не по строчке Чтобы подвести итог по колонке, необходимо в нужной колонке указать свойства Aggregation Function
Как обратиться к ячейке, чтобы задать значение с помощью ActionController, например, при нажатии на кнопку на форме Если нажата кнопка “Отклонить” на форме, то для всех ранее отмеченных строк (с помощью флага) в EG выставить значение ячеек статус (ComboBox) в этих строках в значение “Отклонить”. С помощью ActionController нельзя обратиться к ячейке.
Как реализовать проверку заполненности ячейки EG в зависимости от значения другой ячейки с выдачей диалога и последующим возвращением фокуса в ячейку, которая не должна остаться пустой. Как это сделать в рамках одной строчки, а также в рамках разных строчек, а также всего EG (например, в зависимости от каких то агрегатов - итогов по строчкам или колонкам). Если пользователь выбирает в ячейке EG статус “Отклонено” (ComboBox) , то соседняя ячейка в строке “Причина отклонения” не должна остаться пустой - выдать диалог и вернуться в пустую ячейку, не давая из нее выйти без заполнения .• Если за день списано больше 24 часов - то вызвать диалог “Много работаете”• Если в понедельник по первой задаче списано 8 часов, то в среду по связанной задаче не может быть меньше 4 часов.• Перед самым моментом сохранения формы, проверить ВСЕ ячейки EG в колонке “комментарий пользователя” на их заполненность , если в соседних ячейках “Статус” найдены значения “Отклонить”. С помощью ActionController нельзя обратиться к ячейке.
Как задать фиксированную ширину колонки EG в пикселях? Можно задать Width в ячейке. Чтобы зафиксировать ширину нужно задать Width Fixed, временно эта функция не работает, исправляем.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/EditableOneToMany.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/EditableOneToMany.html new file mode 100644 index 0000000..d5af35b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/EditableOneToMany.html @@ -0,0 +1,118 @@ + + + + + + + + Web-BPM Docs – EditableOneToMany + + + + + + +
+
+ + + +
+
+

EditableOneToMany

+

Назначение компонента

+

Составной компонент EditableOneToMany служит для создания и редактирование записей. Работает по аналогии с EditableGrid, но работа происходит в отдельном окне.

+

+

При нажатии на кнопку “Создать”:

+

+

Настройка компонента

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
visible задаёт видимость компоненты true
disabled задаёт редактируемость компоненты false
tooltip задаёт текст всплывающей подсказки, которая появляется при наведении курсора на элемент
cssClasses список CSS классов (см. раздел Дизайн)
style список основных свойств: +
    +
  • padding (необходимо указывать единицы измерения)
  • +
  • margin (необходимо указывать единицы измерения). См. http://htmlbook.ru/css/margin. Например для задания отступа справа на 50px необходимо задать значение 0px 50px 0px 0px
  • +
  • border - задает размер, цвет и стиль рамки. Например “20px solid red”. Подробнее http://htmlbook.ru/css/border
  • +
  • height - задает высоту компонента
  • +
  • width - задает ширину компонента
  • +
  • minHeight - задает минимальную высоту компонента
  • +
  • minWidth - задает минимальную ширину компонента
  • +
  • maxHeight - задает максимальную высоту компонента
  • +
  • maxWidth - задает максимальную ширину компонента.
+
    + +
  1. + +

    Настройка кнопок
    +Buttons содержит в себе кнопки: создать, редактировать, удалить. Описание настройки кнопок можно посмотреть в разделе Компоненты > Кнопки.

    +
  2. +
  3. + +

    Настройка EditableGrid
    +Настроить EditableGrid

    +
  4. +
  5. Настройка диалогового окна: +
      + +
    1. Настроить Form
    2. +
    3. Настроить Buttons
      +Buttons содержит в себе кнопки диалогового окна. Описание настройки кнопок можно посмотреть в разделе Компоненты > Кнопки.
    4. +
    +
  6. +
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ManyToMany.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ManyToMany.html new file mode 100644 index 0000000..8d015dc --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ManyToMany.html @@ -0,0 +1,464 @@ + + + + + + + + Web-BPM Docs – ManyToMany + + + + + + +
+
+ + + +
+
+

ManyToMany

+

Назначение компонента

+

Компонент ManyToMany предназначен для выбора одного или нескольких значений. Выбранные значения будут отображены в поле таблицы.

+

Общий вид типового справочника для множественного выбора представлен на рисунке:

+

+

Логика работы

+

Для осуществления выбора требуемых значений из справочника нужно последовательно выполнить следующие операции:

+

+

Пошаговая работа пользователя с ManyToMany …

+

Поиск значений

+

Пустой добавленный компонент ManyToMany выглядит следующим образом:

+

ムミクム. 1

+

По кнопке «Изменить» (текст кнопки может быть изменен), открывается диалоговое окно заполнения компонента:

+

+

Поиск требуемых значений в справочнике может осуществляться вручную (визуально).

+

Указание требуемых значений

+

После нахождения требуемого значения в справочнике нужно указать на него при помощи мыши. Поле указанного значения окрасится в серый цвет. Общий вид указанного требуемого значения приведен на рисунке:

+

ミ柘巾アミクムミーミオミシ ミキミスミームミオミスミクム ミクミキ ムミソムミーミイミセムミスミクミコミー

+

Формирование списка требуемых значений

+

После указания требуемого значения в справочнике нужно переместить их в область выбранных значений в правой части диалогового окна при помощи кнопок:

+

ミ墟スミセミソミコミク ミイム巾アミセムミー

+

Добавим значения в список требуемых значений:

+

ミ頒セミアミーミイミサム紹オミシ ミキミスミームミオミスミクム, ムひオミシ ムミーミシム巾シ ムミセムミシミクムムτ ムミソミクムミセミコ ミキミスミームミオミスミクミケ

+

Сохранение требуемых значений

+

После формирования списка требуемые значения нужно сохранить. Для этого нужно нажать на кнопку «Ок». После выполнения указанного действия диалоговое окно будет закрыто, а выбранное значение отобразится в поле формы, из которой было вызвано диалоговое окно.

+

ミ墟セミシミソミセミスミオミスム ミキミーミソミセミサミスミオミス ミイム巾アムミーミスミスム巾シミク ミキミスミームミオミスミクム紹シミク

+

Настройка компонента

+
    + +
  1. Необходимо добавить компонент ManyToMany на страницу. +

    Для того чтобы данные, отобранные с помощью этого компонента, сохранялись в базу данных, его необходимо вложить в компонент Form.

  2. +
+

+

ManyToMany – это составной компонент, состоящий из след. элементов:

+

+

Здесь:

+

+

Настроим каждый элемент отдельно.

+

шаг 0. Продумать состав данных…

+

Для этого определимся какие таблицы будем использовать:

+

+
    + +
  • Таблица А — таблица, к которой привязывается справочник (таблица B)
  • +
  • Таблица А_В — линковая (Link) таблица, она будет заполняться из А и В
  • +
  • Таблица В — таблица-справочник, из которой будут браться значения
  • +
+

шаг 1. Настройка Form…

+

Если компонент ManyToMany вложен в компонент Form, то предварительно необходимо настроить компонент Form.

+

Для этого в структуру сущностей Form добавьте таблицу А (см. шаг 0).

+

шаг 2. Настройка основной области — LinkField

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
visible задаёт видимость компоненты true
disabled задаёт редактируемость компоненты false
tooltip задаёт текст всплывающей подсказки, которая появляется при наведении курсора на элемент
cssClasses список CSS классов (см. раздел Дизайн)
style список основных свойств: +
    +
  • padding (необходимо указывать единицы измерения)
  • +
  • margin (необходимо указывать единицы измерения). См. http://htmlbook.ru/css/margin. Например для задания отступа справа на 50px необходимо задать значение 0px 50px 0px 0px
  • +
  • border - задает размер, цвет и стиль рамки. Например “20px solid red”. Подробнее http://htmlbook.ru/css/border
  • +
  • height - задает высоту компонента
  • +
  • width - задает ширину компонента
  • +
  • minHeight - задает минимальную высоту компонента
  • +
  • minWidth - задает минимальную ширину компонента
  • +
  • maxHeight - задает максимальную высоту компонента
  • +
  • maxWidth - задает максимальную ширину компонента.
rowsAddedEvent событие, которое триггерится при добавлении строк
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
LinkFieldRpcService → LinkFieldService linkFieldDao graph Выбор графа сущностей для подгрузки и сохранения данных. Главной сущностью должна быть таблица – справочник (таблица B), который линкуется (refToSecondTablePK)
LinkFieldRpcService LinkFieldService linkFieldDao distinct Исключить дублирующиеся записи
GridColumns Добавление колонок. С помощью кнопки « + » добавляем элементы. Каждый элемент является колонкой(столбцом). Имеет следующие свойства: +
    +
  • field – задает пару таблица:колонка в БД
  • +
  • displayName – отображаемое наименование колонки
  • +
  • sortOrder (ASC | DESC) – указывает порядок сортировки значений в указанном столбце — по возрастанию или по убыванию
  • +
  • width – задает ширину
  • +
  • formatter – задает скрипт для манипуляции с отображением данных при загрузке
LinkFieldSelectionScript multiselectable – возможность выбирать сразу несколько элементов
LinkFieldCustomSaveLoadScript Задание связи между таблицами: +
    +
  • refToSecondTablePKFromLinkTable – ссылка на справочник (таблица В) из линковой таблицы А_В
  • +
  • refToMainTablePKFromLinkTable – ссылка на таблицу А из линковой таблицы А_В
  • +
  • mainTablePKColumn – первичный ключ таблицы-сущности из структуры сущ. Form к которой привязывается справочник (не обязательно главная!)
+

шаг 3. Настройка ChangeButton…

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
visible задаёт видимость компоненты true
disabled задаёт редактируемость компоненты false
tooltip задаёт текст всплывающей подсказки, которая появляется при наведении курсора на элемент
cssClasses список CSS классов (см. раздел Дизайн)
style список основных свойств: +
    +
  • padding (необходимо указывать единицы измерения)
  • +
  • margin (необходимо указывать единицы измерения). См. http://htmlbook.ru/css/margin. Например для задания отступа справа на 50px необходимо задать значение 0px 50px 0px 0px
  • +
  • border - задает размер, цвет и стиль рамки. Например “20px solid red”. Подробнее http://htmlbook.ru/css/border
  • +
  • height - задает высоту компонента
  • +
  • width - задает ширину компонента
  • +
  • minHeight - задает минимальную высоту компонента
  • +
  • minWidth - задает минимальную ширину компонента
  • +
  • maxHeight - задает максимальную высоту компонента
  • +
  • maxWidth - задает максимальную ширину компонента.
+ + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
caption наименование кнопки, видимое пользователю Изменить
confirmation text если задать здесь текст, то пользователю будет отображёно диалоговое окно с этим текстом и кнопками Да/Нет. Используется для подтверждения действия
+

шаг 4. Настройка диалогового окна выбора значений SelectDialog…

+

Диалог выбора (SelectDialog) состоит из двух частей:

+

+
    + +
  • GridsPanel который включается в себя:
    +
  • +
  • ButtonsContainer который содержит в себе кнопки диалогового окна
  • +
+

Настроим каждый блок по отдельности:

+

Настройка GridsPanel


+
    + +
  1. +

    Настройка таблицы списка значений AvailableRecordsGrid

  2. +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
visible задаёт видимость компоненты true
disabled задаёт редактируемость компоненты false
tooltip задаёт текст всплывающей подсказки, которая появляется при наведении курсора на элемент
cssClasses список CSS классов (см. раздел Дизайн)
style список основных свойств: +
    +
  • padding (необходимо указывать единицы измерения)
  • +
  • margin (необходимо указывать единицы измерения). См. http://htmlbook.ru/css/margin. Например для задания отступа справа на 50px необходимо задать значение 0px 50px 0px 0px
  • +
  • border - задает размер, цвет и стиль рамки. Например “20px solid red”. Подробнее http://htmlbook.ru/css/border
  • +
  • height - задает высоту компонента
  • +
  • width - задает ширину компонента
  • +
  • minHeight - задает минимальную высоту компонента
  • +
  • minWidth - задает минимальную ширину компонента
  • +
  • maxHeight - задает максимальную высоту компонента
  • +
  • maxWidth - задает максимальную ширину компонента.
+ + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
GridRpcService → gridService → LoadDao → graph Выбор графа сущностей для подгрузки и сохранения данных. Главной сущностью должна быть та же таблица, что и в графе LinkField. Этот граф может быть чуть более расширенный – например для сортировки.
GridColumns Добавление колонок. С помощью кнопки « + » добавляем элементы. Каждый элемент является колонкой(столбцом). Имеет следующие свойства: +
    +
  • field – задает пару таблица:колонка в БД
  • +
  • displayName – отображаемое наименование колонки
  • +
  • sortOrder (ASC | DESC) – указывает порядок сортировки значений в указанном столбце — по возрастанию или по убыванию
  • +
  • width – задает ширину
  • +
  • formatter – задает скрипт для манипуляции с отображением данных при загрузке
+

2. Настройка кнопок действий Buttons

+

В этом контейнере находятся кнопки управления перемещением в/из таблицы списка значений. Они настраиваются аналогично любым другим кнопкам.

+

3. Настройка таблицы выбранных значений LinkFieldDialog

+

Настраивать необязательно. Настраивается для более детального вывода.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
visible задаёт видимость компоненты true
disabled задаёт редактируемость компоненты false
tooltip задаёт текст всплывающей подсказки, которая появляется при наведении курсора на элемент
cssClasses список CSS классов (см. раздел Дизайн)
style список основных свойств: +
    +
  • padding (необходимо указывать единицы измерения)
  • +
  • margin (необходимо указывать единицы измерения). См. http://htmlbook.ru/css/margin. Например для задания отступа справа на 50px необходимо задать значение 0px 50px 0px 0px
  • +
  • border - задает размер, цвет и стиль рамки. Например “20px solid red”. Подробнее http://htmlbook.ru/css/border
  • +
  • height - задает высоту компонента
  • +
  • width - задает ширину компонента
  • +
  • minHeight - задает минимальную высоту компонента
  • +
  • minWidth - задает минимальную ширину компонента
  • +
  • maxHeight - задает максимальную высоту компонента
  • +
  • maxWidth - задает максимальную ширину компонента.
+ + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
GridColumns Добавление колонок. С помощью кнопки « + » добавляем элементы. Каждый элемент является колонкой(столбцом). Имеет следующие свойства: +
    +
  • field – задает пару таблица:колонка в БД
  • +
  • displayName – отображаемое наименование колонки
  • +
  • sortOrder (ASC | DESC) – указывает порядок сортировки значений в указанном столбце — по возрастанию или по убыванию
  • +
  • width – задает ширину
  • +
  • formatter – задает скрипт для манипуляции с отображением данных при загрузке
LinkFieldSelectionScript multiselectable – возможность выбирать сразу несколько элементов
+

Настройка ButtonsContainer

+

В этом контейнере находятся кнопки управления перемещением в/из таблицы списка значений. Они настраиваются аналогично любым другим кнопкам.

+

Пример минимальной настройки компонента ManyToMany…

+

Задача: Необходимо организовать заполнение поля таблицы «Тема услуги, предоставленной гражданину» (Таблица А_В) путем выбора из справочника «Услуги» (Таблица В).

+

+

Дано:

+
    + +
  • Таблица А - таблица «Тема услуги, предоставленной гражданину»
  • +
  • Таблица А_В - линковая (Link) таблица
  • +
  • Таблица В - таблица-справочник «Услуги»
  • +
+
    + +
  1. В структуру сущностей Form добавляем таблицу А.
  2. +
  3. В Form добавляем компонент ManyToMany.
  4. +
  5. Настраиваем основную область LinkField в ManyToMany: +
      + +
    1. LinkFieldRpcService → LinkFieldService linkFieldDao__→ graph:
      +Главной сущностью является справочник (Таблица В). Добавьте линковую таблицу А_В и установите связь с главной сущностью (стрелка от справочника к линковой таблице).
      +Добавьте все остальные таблицы и связи, если хотите отобразить дополнительную информацию в основной области LinkField и настройте в GridColumns.
    2. +
    3. Зададим связи между таблицами в LinkFieldCustomSaveLoadScript:
    4. +
    +
      + +
    • refToSecondTablePKFromLinkTable – ссылка на справочник (Таблица В) из линковой таблицы А_В.
    • +
    • refToMainTablePKFromLinkTable – ссылка на таблицу А из линковой таблицы А_В.
    • +
    • mainTablePKColumn – выбираем первичный ключ таблицы, добавленной в структуру сущностей Form в п. 1.
    • +
    +
  6. +
  7. Настройка таблицы списка значений AvailableRecordsGrid в SelectDialog: +

    GridRpcService → gridService → LoadDao → graph:

    +

    Главной сущностью является та же таблица, что и в графе LinkField (см. п. 3а). Добавьте все остальные таблицы и связи, если хотите отобразить дополнительную информацию в таблице списка значений и настройте в GridColumns.

    +

    Не добавляйте линковую таблицу в структуру сущностей AvailableRecordsGrid! Это замножит записи.

  8. +
+

Формирование склейки на основе колонки из LinkField

+

SpliceColumnValues - скрипт для формирования склейки на основе колонки из LinkField

+ + + + + + + + + + + + + + + + + + + + + + + + +
Параметр Назначение
prefix префиксный символ склейки
glue разделитель элементов склейки
postfix постфиксный символ склейки
lineBreak флаг для использования переноса строк (если true, то используется перенос строк)
columnOrderNum номер колонки, по которому формируется склейка
+

Пример:

+

При параметрах prefix = ‘[’, glue = ’; ’, postfix = ’]’ и элементах el1, el2, el3, склейка будет выглядеть так: [el1; el2; el3]

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ManyToManyField.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ManyToManyField.html new file mode 100644 index 0000000..c375387 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ManyToManyField.html @@ -0,0 +1,115 @@ + + + + + + + + Web-BPM Docs – ManyToManyField + + + + + + +
+
+ + + +
+
+

ManyToManyField

+

Назначение компонента

+

Поле, для выбора нескольких значений из справочника.

+

Заполняется по аналогии с ManyToMany. Вместо LinkField заполняется MultiValueField.

+

Настройка компонента

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
visible задаёт видимость компоненты true
disabled задаёт редактируемость компоненты false
tooltip задаёт текст всплывающей подсказки, которая появляется при наведении курсора на элемент
cssClasses список CSS классов (см. раздел Дизайн)
style список основных свойств: +
    +
  • padding (необходимо указывать единицы измерения)
  • +
  • margin (необходимо указывать единицы измерения). См. http://htmlbook.ru/css/margin. Например для задания отступа справа на 50px необходимо задать значение 0px 50px 0px 0px
  • +
  • border - задает размер, цвет и стиль рамки. Например “20px solid red”. Подробнее http://htmlbook.ru/css/border
  • +
  • height - задает высоту компонента
  • +
  • width - задает ширину компонента
  • +
  • minHeight - задает минимальную высоту компонента
  • +
  • minWidth - задает минимальную ширину компонента
  • +
  • maxHeight - задает максимальную высоту компонента
  • +
  • maxWidth - задает максимальную ширину компонента.
+

MultiValueField:

+ + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
graph Граф, по которому будет загружено отображаемое значение. Нет. Обязательно для заполнения.
displayColumn Колонка для отображения. Нет. Обязательно для заполнения.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/OneToMany.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/OneToMany.html new file mode 100644 index 0000000..d126653 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/OneToMany.html @@ -0,0 +1,170 @@ + + + + + + + + Web-BPM Docs – OneToMany + + + + + + +
+
+ + + +
+
+

OneToMany

+

Назначение

+

Компонент OneToMany предназначен для выбора значений из справочника.

+

Незаполненный компонент выглядит следующим образом:

+

+

При нажатии на кнопку “…” открывается диалоговое окно:

+

+

Пример заполнения данными компонента:

+

+

Свойства

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
visible задаёт видимость компоненты true
disabled задаёт редактируемость компоненты false
tooltip задаёт текст всплывающей подсказки, которая появляется при наведении курсора на элемент
cssClasses список CSS классов (см. раздел Дизайн)
style список основных свойств: +
    +
  • padding (необходимо указывать единицы измерения)
  • +
  • margin (необходимо указывать единицы измерения). См. http://htmlbook.ru/css/margin. Например для задания отступа справа на 50px необходимо задать значение 0px 50px 0px 0px
  • +
  • border - задает размер, цвет и стиль рамки. Например “20px solid red”. Подробнее http://htmlbook.ru/css/border
  • +
  • height - задает высоту компонента
  • +
  • width - задает ширину компонента
  • +
  • minHeight - задает минимальную высоту компонента
  • +
  • minWidth - задает минимальную ширину компонента
  • +
  • maxHeight - задает максимальную высоту компонента
  • +
  • maxWidth - задает максимальную ширину компонента.
+

Пример заполнения:

+

Необходимо добавить компонент OneToMany на страницу.

+

Для того чтобы данные, отобранные с помощью этого компонента, сохранялись в базу данных, его необходимо вложить в компонент Form.

+

+

OneToMany – это составной компонент, состоящий из след. элементов:

+

+

Здесь:

+

+

Настроим каждый элемент отдельно.

+

1. Настройка OneToManyField:

+

Настроить аналогично Autocomplete.

+

2. Настройка кнопки диалогового окна “…”:

+

Настроить SelectButton.

+

3. Настройка диалогового окна:

+

3.1 Настроить Grid.

+

3.2 Настройка FilterPanel:

+

Заполнить FilterFieldSet:

+

В FilterFieldSet вкладываются компоненты из раздела Компоненты > Фильтры, в зависимости от того по полям какого типа собираетесь фильтровать: по дате - FilterDateTimePicker, по тексту - FilterTextField, по списку значений - FilterComboBox, и т. д.

+

Заполнить ButtonsContainer:

+

Контейнер ButtonsContainer содержит в себе кнопки диалогового окна. Описание настройки кнопок можно посмотреть в разделе Компоненты > Кнопки.

+

3.3 Заполнить ButtonsContainer:

+

Контейнер ButtonsContainer содержит в себе кнопки диалогового окна. Описание настройки кнопок можно посмотреть в разделе Компоненты > Кнопки.

+

Пример минимальной настройки компонента OneToMany…

+

Задача: Необходимо организовать выбор организации из списка организаций.

+

Добавляем OneToMany (если предполагается сохранение в БД – то в компонент Form)

+

1. Настройка OneToManyField:

+ + + + + + + + + + + + + + + +
Наименование Действие
graph задайте граф сущностей: в примере используются 2 таблицы: organization – организация и organization_version – версия организации (хранит нужную нам информацию по организации)
Column For Save колонка в БД для загрузки и сохранения значения (в списке – таблицы из структуры сущностей Form, в который вложен настраиваемый компонент) – здесь задаем таблицу:колонку куда будем класть выбранную организацию.
+

2. Настройка диалогового окна:

+

Настраиваем Grid:

+ + + + + + + + + + + + + + + + + + +
Наименование Назначение Результат
graph Граф сущностей аналогичен графу OneToManyField (см. п.1.):
columns[size] Отображаемые колонки в Grid. Для примера настроены две колонки: В результате настроенная таблица в диалоге выбора SelectDialog:
+

Настройка FilterPanel:

+

Необходимо настроить фильтрацию в настроенном Grid. Для примера настроим фильтрацию по колонке Full name.

+

В Full name хранится текст, следовательно необходимо в FilterFieldSet добавить фильтр FilterTextField.

+

FilterTextField настраивается аналогично TextField (имеет те же общие свойства), а также свойство, характерное свойство для фильтров – FilterControl:

+

+

Здесь мы выбрали операцию фильтрации CONTAINS – будут отобраны значения содержание введенные пользователем символы и Column For Filter – таблица:колонка, по которой происходит сортировка – в нашей задаче это поле full_name таблицы organization_version.

+

Скрипты

+

component/grid/renderers/Base64ImageCellRenderer.ts - скрипт для отображения изображения. Необходимо выбрать его в свойстве renderer необходимой колонки.

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/TreeField.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/TreeField.html new file mode 100644 index 0000000..18a8969 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/TreeField.html @@ -0,0 +1,146 @@ + + + + + + + + Web-BPM Docs – TreeField ミク TreeMultiField + + + + + + +
+
+ + + +
+
+

TreeField и TreeMultiField

+

Назначение компонента

+

Сложные компоненты для выбора из древовидной структуры одной (TreeField) или нескольких записей (TreeMultiField).

+

TreeField:

+

+

+

TreeMultiField выглядит аналогично.

+

Настройка компонента

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
visible задаёт видимость компоненты true
disabled задаёт редактируемость компоненты false
tooltip задаёт текст всплывающей подсказки, которая появляется при наведении курсора на элемент
cssClasses список CSS классов (см. раздел Дизайн)
style список основных свойств: +
    +
  • padding (необходимо указывать единицы измерения)
  • +
  • margin (необходимо указывать единицы измерения). См. http://htmlbook.ru/css/margin. Например для задания отступа справа на 50px необходимо задать значение 0px 50px 0px 0px
  • +
  • border - задает размер, цвет и стиль рамки. Например “20px solid red”. Подробнее http://htmlbook.ru/css/border
  • +
  • height - задает высоту компонента
  • +
  • width - задает ширину компонента
  • +
  • minHeight - задает минимальную высоту компонента
  • +
  • minWidth - задает минимальную ширину компонента
  • +
  • maxHeight - задает максимальную высоту компонента
  • +
  • maxWidth - задает максимальную ширину компонента.
+
    + +
  1. +

    Необходимо настроить TreeGrid:

  2. +
+

Настройка происходит согласно инструкции к TreeGrid.

+

2. Необходимо настроить TreeList:

+ + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
graph Граф, по которому будет загружено отображаемое значение. Нет. Обязательно для заполнения.
displayColumn Колонка для отображения. Нет. Обязательно для заполнения.
+

3. Необходимо настроить:

+

у TreeField необходимо заполнить Autocomplete.
TreeMultiField необходимо заполнить MultiValueField:

+ + + + + + + + + + + + + + + + + + +
Наименование Назначение Значение по умолчанию
graph Граф, по которому будет загружено отображаемое значение. Нет. Обязательно для заполнения.
displayColumn Колонка для отображения. Нет. Обязательно для заполнения.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/index.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/index.html new file mode 100644 index 0000000..97da65f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/index.html @@ -0,0 +1,63 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴びム + + + + + + +
+
+ + + +
+
+

Фильтры

+ +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..aabb755 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,193 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミ、ミクミサム袴び ミソミセ ムミクムミサミセミイミセミシム ミソミセミサム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить Фильтр по числовому полю на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице Реестра сотрудников элемент Таблица, где будет содержаться информация о сотрудниках отдела, и два фильтра: Фильтр по числовому полю и Фильтр по текстовому полю, с помощью которых будет осуществляться поиск записей в Таблице по фамилии сотрудника и по стажу работы сотрудника. Элементы на странице должны иметь следующие настройки:

+
    + +
  • Блок фильтрации на странице должен иметь подзаголовок-Фильтр по сотрудникам, реализованный с помощью компоненты Текст
  • +
  • Фильтр по числовому полю (по стажу работы сотрудника):
    +надпись поля -Стаж работы
    +фильтровать по… -таблице Список сотрудников иколонке Стаж
    +операция фильтрации -Равно
    +максимально возможное значение для ввода - 10
  • +
  • Фильтр по текстовому полю (по фамилии сотрудника):
    +надпись поля -Фамилия
    +фильтровать по… -таблице Список сотрудников иколонке Фамилия(name_last)
    +операция фильтрации -Содержит всю подстроку
  • +
  • Таблица с информацией о сотрудниках:
    Граф сущностей в качестве Главной сущности должна быть определена таблица Список сотрудников, где есть вся необходимая информация для вывода на страницу
    +в структуру Таблицы должны быть включены две колонки: Фамилия сотрудникаи Стаж работы сотрудника
  • +
+

Решение задачи:

+

Предполагается, что страница Реестр сотрудников, где необходимо разместить Таблицу и Фильтры,уже создана бизнес-аналитиком и включена в логику бизнес-процесса. Для добавления на страницу и настройки компонент по условиям задачинеобходимо сделать следующее:

+

1. Добавление элементов:

+ +

+

рис.1 Добавление элементаНабор фильтров

+

+

рис.2Добавление элементаТекст

+
    + +
  • Добавить внутрь контейнера Набор фильтров компоненту Текстовое поле (фильтр) (рис.3)
  • +
  • Добавить внутрь контейнера Набор фильтров компоненту Фильтр по числовому полю (рис.4)
  • +
  • Добавить Таблицу,в которой будет отображаться информация о сотрудниках и по значениям которой будет осуществляться поиск записей с помощью фильтров (рис.5)
  • +
+

+

рис.3 Добавление компоненты Фильтр по текстовому полю

+

+

рис.4 ДобавлениекомпонентыФильтр по числовому полю


+

рис.5 Добавление элементаТаблица

+
    + +
  • Для того чтобы условия фильтрации применялись к таблице, необходимо добавить кнопки:Кнопка для фильтрации,Кнопка очистки фильтра. Для этого необходимо добавить Горизонтальный контейнер, который будет содержать данные кнопки. (рис.6 и рис.7)
  • +
+

+

рис.6 Добавление элемента Горизонтальный контейнер

+

+

рис.7 Добавление кнопок: Для фильтрации и Очистки фильтрации

+

2. Настройка элементов:

+
    + +
  • Настройка Набора фильтров: переносим объект Таблица, удерживая левую кнопку мыши, в свойство “Применить к…” Набора фильтров как показано на рисунке(рис.8)
  • +
  • Заполняем свойство Надпись у компоненты Текст значением Фильтр по сотрудникам (рис.9)
  • +
+

+

рис.8 Настройка Набор фильтров

+

+

рис.9 Настройка элемента Текст

+
    + +
  • Заполняем у элемента Таблица следующие свойства: Таблица. Подгрузка данных - Источник данных - Граф сущностей (как описано в разделе - Настройка Графа сущностей) и настраиваем колонки Таблицы (как описано в разделе -Настройка колонок Таблицы) в блоке Таблица. Настроить колонки таблицы согласно условиям задачи(рис.10)
  • +
  • Заполняем свойства компоненты Фильтр по текстовому полю согласно условиям задачи (рис.11)
  • +
  • Заполняем свойства компоненты Фильтр по числовому полю согласно условиям задачи (рис.12)
  • +
+

+

рис.10 Настройка элементаТаблица

+

+

рис.11 Настройка компонентыФильтр по текстовому полю

+

+

рис.12 Настройка компоненты Фильтр по числовому полю

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и на странице отображается блок фильтрации, включающий в себя фильтры по имени и фамилии сотрудника (рис.13 и рис.14)

+

+

рис.13 Визуальное отображение выполнения условий задачи

+

+

рис.14 Пример выполнения поиска с примененным условием фильтрации

+

рис.13 Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ +
+ +

image2019-2-27_10-12-42.png (image/png)
+ image2019-2-27_10-31-44.png (image/png)
+ image2019-2-27_11-14-10.png (image/png)
+ image2019-2-27_11-19-57.png (image/png)
+ image2019-2-27_11-22-12.png (image/png)
+ image2019-2-27_11-27-36.png (image/png)
+ image2019-2-28_10-20-51.png (image/png)
+ image2019-2-28_10-25-32.png (image/png)
+ image2019-2-28_10-25-46.png (image/png)
+ image2019-2-28_10-37-29.png (image/png)
+ image2019-2-28_17-8-54.png (image/png)
+ image2019-2-28_17-9-29.png (image/png)
+ image2019-2-28_17-9-59.png (image/png)
+ image2019-3-1_10-28-32.png (image/png)
+ image2019-3-1_10-30-56.png (image/png)
+ image2019-3-1_10-31-39.png (image/png)
+ image2019-3-1_10-32-15.png (image/png)
+ image2019-3-1_10-32-46.png (image/png)
+ image2019-3-1_17-6-26.png (image/png)
+ image2019-3-1_17-7-18.png (image/png)
+ image2019-3-1_17-8-8.png (image/png)
+ image2019-3-1_17-41-39.png (image/png)
+ image2019-3-1_17-42-35.png (image/png)
+ image2019-3-1_17-44-14.png (image/png)
+ image2019-3-11_14-19-40.png (image/png)
+ image2019-3-11_14-20-16.png (image/png)
+ image2019-3-11_16-10-7.png (image/png)
+ image2019-3-11_16-15-42.png (image/png)
+ image2019-3-11_16-16-12.png (image/png)
+ image2019-3-11_16-17-9.png (image/png)
+ image2019-3-11_16-17-41.png (image/png)
+ image2019-3-11_16-19-47.png (image/png)
+ image2019-3-11_16-20-24.png (image/png)
+ image2019-3-11_16-21-11.png (image/png)
+ image2019-3-11_16-21-23.png (image/png)
+ image2019-3-11_16-25-22.png (image/png)
+ image2019-3-15_16-54-5.png (image/png)
+ image2019-3-15_16-59-41.png (image/png)
+ image2019-3-22_10-36-15.png (image/png)
+ image2019-3-22_10-37-45.png (image/png)
+ image2019-3-22_10-41-8.png (image/png)
+ image2019-3-22_10-42-11.png (image/png)
+ image2019-3-22_10-48-28.png (image/png)
+ image2019-3-22_10-49-25.png (image/png)
+ image2019-3-22_10-49-53.png (image/png)
+ image2019-3-22_10-51-12.png (image/png)
+ image2019-3-22_10-53-4.png (image/png)
+ image2019-3-22_10-54-15.png (image/png)
+ image2019-3-22_10-55-26.png (image/png)
+ image2019-3-22_10-56-6.png (image/png)
+ image2019-3-22_10-58-0.png (image/png)
+ image2019-3-22_10-58-26.png (image/png)
+ image2019-3-22_11-1-15.png (image/png)
+ image2019-3-22_11-2-36.png (image/png)
+ image2019-3-22_11-3-1.png (image/png)
+ image2019-3-22_11-15-36.png (image/png)
+ image2019-3-22_11-17-41.png (image/png)

+
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..15e3a3d --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,159 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ム災サミオミシミオミスム ミ、ミクミサム袴び ミソミセ ミイム巾ソミーミエミーム紗禍オミシム ムミソミクムミコム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить элемент Фильтр по выпадающему списку на страницу?

+

Постановказадачи: необходимо реализовать на пользовательской странице Реестра сотрудников компонент Таблица, где будет содержаться информация о сотрудниках отдела. Поиск по Таблице должен осуществляться по фамилии сотрудника в виде фильтра по текстовому полю и организации к которой относится сотрудник, в виде фильтра по выпадающему списку. Элементы на странице должны иметь следующие настройки:

+
    + +
  • Блок фильтрации на странице должен иметь подзаголовок -Фильтр по сотрудникам, реализованный с помощью компоненты Текст
  • +
  • Фильтр по текстовому полю (по фамилии сотрудника): +

    надпись поля -Фамилия
    +фильтровать по… -таблице Список сотрудников иколонке(name_last)
    +операция фильтрации -Содержит всю подстроку

  • +
  • + +

    Фильтр по статичному выпадающему списку:
    +надпись поля -Организация: фильтровать по… -таблице Организация иколонке Наименование (name)
    +операцию фильтрации -Содержится всю подстроку сортировать по - таблице Организация иколонке Наименование (name)
    +Показывать пользователю -таблица Организация иколонке Наименование (name) Граф сущностей - в качестве Главной сущности должна быть определена таблица Организаций (legal_entities)

    +
  • +
  • Таблица с информацией о сотрудниках:
    Граф сущностей в качестве Главной сущности должна быть определена таблица Список сотрудников, где есть вся необходимая информация для вывода на страницу.
  • +
+

Решение задачи:

+

Предполагается, что страницаРеестр сотрудников,где необходимо разместить Таблицу и Фильтры по текстовому полю,уже создана бизнес-аналитиком и включена в логику бизнес-процесса. Для добавления на страницу и настройки компонент по условиям задачинеобходимо сделать следующее:

+

1. Добавление элементов:

+ +

рис.1 Добавление элементаНабор фильтров

+

рис.2 Добавление элементаТекст

+
    + +
  • Добавить внутрь контейнера Набор фильтров компоненту Фильтр по текстовому полю (рис.3)
  • +
  • Добавить внутрь контейнера Набор фильтров компоненту Фильтр по выпадающему списку (рис.4)
  • +
  • Добавить Таблицу, в которой будет отображаться информация о сотрудниках и по значениям которой будет осуществляться поиск записей с помощью фильтров (рис.5)
  • +
+

+

рис.3 Добавление компонентФильтр по текстовому полю

+

+

рис.4 Добавление компонентФильтр по выпадающему списку

+

+

рис.5 Добавление элемента Таблица

+
    + +
  • Для того чтобы условия фильтрации применялись к таблице, необходимо добавить кнопки:Кнопка для фильтрации,Кнопка очистки фильтра. Для этого необходимо добавить Горизонтальный контейнер, который будет содержать данные кнопки. (рис.6 и рис.7)
  • +
+

+

рис.6 Добавление элементаГоризонтальный контейнер

+

+

рис.7 Добавление кнопок: Для фильтрации и Очистки фильтрации

+

2. Настройка элементов:

+
    + +
  • Настройка Набора фильтров: переносим объект Таблица, удерживая левую кнопку мыши, в свойство “Применить к…” Набора фильтров как показано на рисунке (рис.8)
  • +
  • Заполняем свойство Надпись у компоненты Текст значением Фильтр по сотрудникам (рис.9)
  • +
+

+

рис.8 Настройка Набор фильтров

+

+

рис.9 Настройка элементаТекст

+
    + +
  • Заполняем у элемента Таблица следующие свойства: Таблица. Подгрузка данных - Источник данных - Граф сущностей (как описано в разделе -Настройка Графа сущностей) и настраиваем колонки Таблицы (как описано в разделе -Настройка колонок Таблицы) в блоке Таблица. Настроить колонки таблицы согласно условиям задачи (рис.10)
  • +
+

**
+**

+

+

рис.10 Настройка элемента Таблица

+

+

рис.11Настройка Фильтра по фамилии сотрудника

+
    + +
  • Заполняем свойства компонент Фильтрация по статичному выпадающему списку согласно условиям задачи (рис.12)
  • +
+

+

рис.12 Настройка Фильтра по организации сотрудника

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и на странице отображается блок фильтрации, включающий в себя фильтры по фамилии сотрудника и организации (рис.13, рис.14 и рис.15)

+


+

+

рис.13 Визуальное отображение выполнения условий задачи

+

рис. 14 Визуальное отображение выбора значения фильтра из выпадающего списка

+

+

рис.15 Пример выполнения поиска с примененным условием фильтрации

+

**
+**

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミエミームひオ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミエミームひオ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..b997c83 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミエミームひオ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,136 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ム災サミオミシミオミスム ミ、ミクミサム袴び ミソミセ ミエミームひオ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить элемент Фильтр по дате на страницу?

+

Постановка задачи: необходимо добавить на пользовательскую страницу Реестр сотрудников элемент Фильтр по дате, с помощью которого будет осуществляться фильтрация (поиск) записей в Таблице сотрудников по Дате рождения сотрудника. Пользовательская страница с Фильтром по дате должна иметь следующие условия:

+
    + +
  • Блок фильтрации на странице должен иметь подзаголовок:“Фильтр по сотрудникам”.
  • +
  • Фильтр по дате должен иметь надпись: “Дата рождения”.
  • +
  • Минимальное возможное значение должно быть - 01.01.1900.
  • +
  • Формат поля должен быть в виде даты, не должно отображаться время
  • +
  • Операция фильтрации -Содержит всю подстроку
  • +
+

Решение задачи:

+

Предполагается, что страница Реестр сотрудниковуже создана бизнес-аналитиком и включаетв себя необходимую Таблицу с информацией о сотрудниках, по записям которой будет осуществляться дальнейший поиск с помощью фильтра по Дате рождения сотрудника. Для добавления на страницу и настройки компонент по условиям задачинеобходимо сделать следующее:

+

1. Добавление элементов:
+
+

+
    + +
  • Добавить элемент Текст в Набор фильтров и заполнить в его свойствах “надпись”, которая будет являться заголовком к нашему фильтру. (рис.1)
  • +
  • Добавить внутрь контейнера Набор фильтров компоненту Фильтр по дате. (рис.2)
  • +
+

+

Рис.1 Добавление элементаТекст

+

Рис.2 ДобавлениекомпонентыФильтр по дате.

+
    + +
  1. Настройка элементов:
  2. +
+
    + +
  • Заполняем свойства компоненты текст как показано на рис.3
  • +
+

+

Рис. 3 Настройка компоненты Текст.

+
    + +
  • Заполняем свойства компоненты фильтр по дате как показано на рис.4
  • +
+

+

Рис. 4 Настройка компоненты Фильтр по дате.

+
    + +
  • Результат выполнения задачи:
  • +
+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.5).

+

+

рис.5 Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..53563e1 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,172 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ム災サミオミシミオミスム ミ、ミクミサム袴び ミソミセ ミソミセミサム ミシミスミセミウミセムムびミセムミスミセミウミセ ミイミイミセミエミー ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить элемент Фильтр по полю многострочного ввода на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице Карточка реестра сотрудников элементТаблица, где будет содержаться информация о сотрудниках отдела. На странице должны присутствовать фильтр по текстовому полю и фильтр по полю многострочного ввода, с помощью которых будет осуществляться поиск записей в Таблице. Элементы на странице должны иметь следующие настройки:

+
    + +
  • Блок фильтрации на странице должен иметь подзаголовок -Фильтр по сотрудникам, реализованный с помощью компоненты Текст
  • +
  • Фильтр по текстовому полю (по фамилии сотрудника): +

    надпись поля -Фамилия:
    +фильтровать по… -таблице Список сотрудников иколонке Фамилия (name_last)
    +операция фильтрации -Содержит всю подстроку

  • +
  • + +

    Фильтр по полю многострочного ввода:

    +

    надпись поля -Электронный адрес:
    +фильтровать по… -таблице Список сотрудников иколонке Электронный адрес (user_email)
    +операция фильтрации -Содержит всю подстроку

    +
  • +
  • + +

    Таблица с информацией о сотрудниках: в Граф сущностей в качестве Главной сущности должна быть определена таблица Список сотрудников, где есть вся необходимая информация для вывода на страницу в структуру Таблицы должны быть включены две колонки:Фамилия сотрудникаиЭлектронный адрессотрудника

    +
  • +
+

Решение задачи:

+

Предполагается, что страница Карточки реестра сотрудников уже создана бизнес-аналитиком. Для добавления на страницу и настройки компонентов по условиям задачинеобходимо сделать следующее:

+

1. Добавление элементов:

+ +

+

Рис.1 Добавление элемента Набор фильтров

+

+

Рис.2 Добавление элемента Текст

+

+

Рис.3 Добавление компонентФильтр по текстовому полю

+

+

Рис.4 Добавление элемента Таблица

+

+

Рис.5 Добавление элемента Фильтр по полю многострочного ввода

+
    + +
  • Для того чтобы условия фильтрации применялись к таблице, необходимо добавить кнопки:Кнопка для фильтрации,Кнопка очистки фильтра. Для этого необходимо добавить Горизонтальный контейнер, который будет содержать данные кнопки. (рис.6 и рис.7)
  • +
+

рис.6 Добавление элемента Горизонтальный контейнер****

+

рис.7 Добавление кнопок: Для фильтрации и Очистки фильтрации

+

2. Настройка элементов:

+ +

Переносим объект Таблица в свойства “Применить к…” Набора фильтров как показано на рисунке (рис.8)

+

+

Рис.8 Настройка Набор фильтров

+
    + +
  • Заполняем свойство “Надпись” у компоненты Текст (рис.9)
  • +
+

+

Рис.9 Настройка элементаТекст

+
    + +
  • Заполняем у элемента Таблица следующие свойства: Таблица. Подгрузка данных - Источник данных - Граф сущностей (как описано в разделе -Настройка Графа сущностей) и настраиваем колонки Таблицы (как описано в разделе -Настройка колонок Таблицы) в блоке Таблица. Настроить колонки таблицы согласно условиям задачи (рис.10)
  • +
+

+

Рис.10 Настройка элемента Таблица

+
    + +
  • Заполняем свойства компоненты фильтрации по текстовому полю как показано на рис.11
  • +
+

+

Рис.11 Настройка элемента Фильтрация по текстовому полю

+
    + +
  • Заполняем свойства компоненты Фильтрации по полю многострочного ввода как показано на рис.12
  • +
+

+

Рис.12 Настройка элементаФильтрация по полю многострочного ввода

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и на странице отображается блок фильтрации, включающий в себя фильтры по имени и фамилии сотрудника (рис.13 и рис.14)

+

+

рис.13 Визуальное отображение выполнения условий задачи

+

рис.14 Пример выполнения поиска с примененным условием фильтрации

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..c95f8be --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコムダミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,140 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ム災サミオミシミオミスム ミ、ミクミサム袴び ミソミセ ムムひームひクムミスミセミシム ミイム巾ソミーミエミーム紗禍オミシム ムミソミクムミコム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить элемент Фильтр по статичному выпадающему списку на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице Реестра сотрудников компонент Таблица, где будет содержаться информация о сотрудниках отдела. Поиск по Таблице должен осуществляться по фамилии сотрудника в виде фильтра по текстовому полю и организации к которой относится сотрудник, в виде фильтра по статичному выпадающему списку. Элементы на странице должны иметь следующие настройки:

+
    + +
  • Блок фильтрации на странице должен иметь +
      + +
    • подзаголовок -Фильтр по сотрудникам, реализованный с помощью компоненты Текст
    • +
    +
  • +
  • Фильтр по текстовому полю (по фамилии сотрудника): +
      + +
    • надпись поля -Фамилия
    • +
    • фильтровать по… -таблице Список сотрудников и колонке (name_last)
    • +
    • операция фильтрации -Содержит всю подстроку
    • +
    +
  • +
  • + +

    Фильтр по статичному выпадающему списку:

    +
      + +
    • надпись поля - Организация:
    • +
    • фильтровать по… -таблице Организация иколонке Наименование (name)
    • +
    • операцию фильтрации -Содержится в “Список значений” - Три элемента. 1) Элемент: Надпись -УФНС РФ Значение - УФНС РФ 2) Элемент: Надпись -ООО Березка Значение -ООО Березка 3) Элемент: Надпись -ИП Чемоданова Значение -ИП Чемоданова
    • +
    +
  • +
  • Таблица с информацией о сотрудниках: в Граф сущностей в качестве Главной сущности должна быть определена таблица Список сотрудников, где есть вся необходимая информация для вывода на страницу.
  • +
+

Решение задачи:

+

Предполагается, что страница Реестр сотрудников, где необходимо разместить Таблицу и Фильтры по текстовому полю, уже создана бизнес-аналитиком и включена в логику бизнес-процесса. Для добавления на страницу и настройки компонент по условиям задачинеобходимо сделать следующее:

+

1. Добавление элементов:

+ +

+

рис.1 Добавление элемента Набор фильтров

+
    + +
  • Добавить внутрь контейнера Набор фильтров компоненту Фильтр по текстовому полю (рис.3)
  • +
  • Добавить внутрь контейнера Набор фильтров компоненту Фильтр по статичному выпадающему списку (рис.4)
  • +
  • Добавить Таблицу, в которой будет отображаться информация о сотрудниках и по значениям которой будет осуществляться поиск записей с помощью фильтров (рис.5)
  • +
+

+

рис.3 Добавление компонент Фильтр по текстовому полю

+

+

рис.5 Добавление элемента Таблица

+
    + +
  • Для того чтобы условия фильтрации применялись к таблице, необходимо добавить кнопки: Кнопка для фильтрации, Кнопка очистки фильтра. Для этого необходимо добавить Горизонтальный контейнер, который будет содержать данные кнопки. (рис.6 и рис.7)
  • +
+

+

рис.6 Добавление элемента Горизонтальный контейнер

+

+

рис.7 Добавление кнопок: Для фильтрации и Очистки фильтрации

+

2. Настройка элементов:

+
    + +
  • Настройка Набора фильтров: переносим объект Таблица, удерживая левую кнопку мыши, в свойство “Применить к…” Набора фильтров как показано на рисунке (рис.8)
  • +
  • Заполняем свойство Надпись у компоненты Текст значением Фильтр по сотрудникам (рис.9)
  • +
+

+

рис.8 Настройка Набор фильтров

+

+

рис.9 Настройка элемента Текст

+
    + +
  • Заполняем у элемента Таблица следующие свойства: Таблица. Подгрузка данных - Источник данных - Граф сущностей (как описано в разделе -Настройка Графа сущностей) и настраиваем колонки Таблицы (как описано в разделе -Настройка колонок Таблицы) в блоке Таблица. Настроить колонки таблицы согласно условиям задачи (рис.10)
  • +
+

+

рис.10 Настройка элементаТаблица

+
    + +
  • Заполняем свойства компонент фильтрации по текстовому полю согласно условиям задачи (рис.11)
  • +
+

+

рис.11 Настройка Фильтра по фамилии сотрудника

+
    + +
  • Заполняем свойства компонент Фильтрация по статичному выпадающему списку согласно условиям задачи (рис.12)
  • +
+

+

рис.12 Настройка Фильтра по организации сотрудника

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и на странице отображается блок фильтрации, включающий в себя фильтры по фамилии сотрудника и организации (рис.13 и рис.14)

+

+

рис.13 Визуальное отображение выполнения условий задачи

+

рис.14 Пример выполнения поиска с примененным условием фильтрации

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..e7de967 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム酸ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,178 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ム災サミオミシミオミスム ミ、ミクミサム袴び ミソミセ ムひオミコムムひセミイミセミシム ミソミセミサム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить элемент Фильтр по текстовому полю на страницу?

+

**Постановка задачи: **необходимо реализовать на пользовательской странице Реестра сотрудников компонент Таблица, где будет содержаться информация о сотрудниках отдела, и два Фильтра по текстовому полю, с помощью которых будет осуществляться поиск записей в Таблицепо фамилии сотрудника и по имени сотрудника. Элементы на странице должны иметь следующие настройки:

+
    + +
  • Блок фильтрации на странице должен иметь +
      + +
    • подзаголовок - Фильтр по сотрудникам, реализованный с помощью компоненты Текст
    • +
    +
  • +
  • Фильтр по текстовому полю (по фамилии сотрудника): +
      + +
    • надпись поля -Фамилия
    • +
    • фильтровать по… -таблице Список сотрудников иколонке Фамилия(name_last)
    • +
    • операция фильтрации -Содержит всю подстроку
    • +
    +
  • +
  • Фильтр по текстовому полю (по имени сотрудника): +
      + +
    • надпись поля -Имя
    • +
    • фильтровать по… -таблице Список сотрудников иколонке Имя (name_first)
    • +
    • операция фильтрации -Содержит всю подстроку
    • +
    +
  • +
  • Таблица с информацией о сотрудниках:
    Граф сущностей в качестве Главной сущности должна быть определена таблица Список сотрудников, где есть вся необходимая информация для вывода на страницу
    +в структуру компоненты Таблица должны быть включены две колонки: Фамилия сотрудника и Имя сотрудника
  • +
+

Решение задачи:

+

Предполагается, что страница Реестр сотрудников, где необходимо разместить Таблицу и Фильтры по текстовому полю, уже создана бизнес-аналитиком и включена в логику бизнес-процесса. Для добавления на страницу и настройки компонент по условиям задачинеобходимо сделать следующее:

+

1. Добавление элементов:
+

+ +

+

рис.1 Добавление элемента Набор фильтров

+

+

рис.2Добавление элемента Текст

+
    + +
  • Добавить внутрь контейнера Набор фильтров две компоненты Фильтр по текстовому полю (рис.3)
  • +
  • Добавить Таблицу, в которой будет отображаться информация о сотрудниках и по значениям которой будет осуществляться поиск записей с помощью фильтров (рис.4)
  • +
+

+

рис.3 Добавление компонентФильтр по текстовому полю

+

+

рис.4 Добавление элемента Таблица

+
    + +
  • Для того чтобы условия фильтрации применялись к таблице, необходимо добавить кнопки: Кнопка для фильтрации, Кнопка очистки фильтра. Для этого необходимо добавить Горизонтальный контейнер, который будет содержать данные кнопки. (рис.5 и рис.6)
  • +
+

+

рис.5 Добавление элемента Горизонтальный контейнер

+

рис.6 Добавление кнопок: Для фильтрации и Очистки фильтрации

+

2. Настройка элементов:

+
    + +
  • Настройка Набора фильтров: переносим объект Таблица, удерживая левую кнопку мыши, в свойство “Применить к…” Набора фильтров как показано на рисунке (рис.6)
  • +
  • Заполняем свойство Надпись у компоненты Текст значением Фильтр по сотрудникам (рис.7)
  • +
+

+

рис.6 Настройка Набор фильтров

+

+

рис.7 Настройка элементаТекст

+
    + +
  • Заполняем у элемента Таблица следующие свойства: Таблица. Подгрузка данных - Источник данных - Граф сущностей (как описано в разделе -Настройка Графа сущностей) и настраиваем колонки Таблицы (как описано в разделе -Настройка колонок Таблицы) в блоке Таблица. Настроить колонки таблицы согласно условиям задачи (рис.8)
  • +
  • Заполняем свойства компонент фильтрации по текстовому полю согласно условиям задачи (рис.9, рис.10)
  • +
+

+

рис.8 Настройка элемента Таблица

+

+

рис.9 Настройка Фильтра по фамилии сотрудника

+

+

рис.10 Настройка Фильтра по имени сотрудника

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и на странице отображается блок фильтрации, включающий в себя фильтры по имени и фамилии сотрудника (рис.11 и рис.12)

+

+

рис.11 Визуальное отображение выполнения условий задачи

+

+

рис.12 Пример выполнения поиска с примененным условием фильтрации

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミ、ミサミーミウムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミ、ミサミーミウムダ.html new file mode 100644 index 0000000..0ba3adb --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミ、ミサミーミウムダ.html @@ -0,0 +1,181 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ、ミクミサム袴び ミソミセ ミ、ミサミーミウム? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту Фильтр по Флагу?

+

Постановказадачи: на пользовательской странице Реестр задач необходимо обеспечить возможность поиска задач в компоненте Таблица, которые удовлетворяют условию, что их готовность подтверждена руководителем. Это условие задается пользователем с использованием компоненты Флаг, проставлением или снятием отметки в поле компоненты.

+

Страница “Реестр задач” должна иметь следующие настройки:

+
    + +
  • на web-странице должна быть размещена компонента Таблица, в графе сущности которой основной таблицей должна быть назначена “Список задач” (tasks). В нейимеется колонка, в которой хранится отметка о факте подтверждения руководителем готовности той или иной задачи.
  • +
  • на web-странице должна быть размещена компонента Набор фильтров, и настроена на компоненту Таблица
  • +
  • внутри компоненты Набор фильтров следует расположить компоненту Фильтр по Флагу для поиска по параметру “Готовность задачи подтверждена руководителем”
  • +
  • колонка базы данных для поиска по значениям из компоненты Фильтр по флагу -tasks.approved_chief_temp
  • +
+

Решение задачи:

+

Предполагается, что страница Реестр задач уже создана аналитиком и включена в логику бизнес-процесса. Для задействования компоненты Фильтр по флагу необходимо сделать следующее:

+
    + +
  • Добавить на страницу компоненту Таблица, настроить ее граф сущностей и колонки (рис.1)
  • +
+

+

рис.1 Расположение компоненты Таблица и настройка ее основных параметров

+
    + +
  • На одном уровне с компонентом Таблица добавить в состав страницы компоненту Набор фильтров. Связать Компоненту Набор фильтров с компонентой Таблица для указания источника данных фильтрации (рис.2)
  • +
+

+

рис.2 Расположение компоненты Набор фильтров и взаимосвязь с компонентой Таблица

+
    + +
  • Добавить компоненты “Кнопка для фильтрации” и “Кнопка очистки фильтра” внутрь компоненты “Набор фильтров” для возможности запуска процесса фильтрации по значению из компоненты “Постановщик задачи” (кнопки нужны потому, что в свойстве компоненты “Набор фильтров” отключен режим “Фильтровать сразу”)
  • +
+

+

рис.3 Настройка кнопок фильтрации

+
    + +
  • Внутри компоненты Набор фильтров расположить компоненту Фильтр по Флагу (рис.4)
  • +
+

+

рис.4 Настройка основных параметров компоненты Фильтр по Флагу

+
    + +
  • Настроить операцию фильтрации (рис.5)
  • +
+

+

рис.5 Настройка операции фильтрации

+
    + +
  • Настроить колонку фильтрации (рис.6)
  • +
+

+

рис. 6 Настройка колонки фильтрации

+

Значение параметра “Правило обработки MultiValue значений” для данной компоненты не принципиально (“И”/“ИЛИ”), поскольку компонента не предоставляет возможность выбирать несколько значений. В параметре “Конвертер” соответствующий модуль подбирается и выставляется системой автоматически, без участия пользователя

+

На этом настройка страницы закончена, можно собрать приложение и проверить работу компоненты.

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что на странице отображаются таблица и блок фильтрации с компонентой “Фильтр по Флагу” (рис.7 - рис.9)

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+
+ +

+
+

рис.7 Открытие страницы.

+ +

В таблице указаны все задачи .

+ +


+

+

рис. 8 Активизация компоненты - проставляем отметку в поле компоненты.

+ +

Пока ничего не меняется, поскольку фильтрация произойдет после нажатия на кнопку (так настроена компонента Набор фильтров).

+ +

В случае настройки компоненты Набор фильтров на режим "Фильтровать сразу", выборка строк произошла бы в тот же момент, как была поставлена отметка в компоненте Флаг.

рис.9 Нажимаем кнопку "Применить", чтобы система отфильтровала список задач и показала только те, в которых есть отметка руководителя о готовности задачи.
+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。_ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。_ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..8b65f8d --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。_ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,144 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ、ミクミサム袴び ミソミセ ミソミセミサム ミーミエムミオムミー ミ、ミ侑籍。 ミスミー ムムびミーミスミクムミオ? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту “Фильтр по полю адреса ФИАС” на странице?

+

Постановказадачи: на пользовательской странице Реестр задач необходимо обеспечить возможность поиска задач в компоненте Таблица по указанному в поле Адрес исполнения задачи с использованием компоненты “Фильтр по полю адреса ФИАС”. Источником данных для компоненты “Фильтр по полю адреса ФИАС” должна служить федеральная информационная адресная система, а выбор адреса из справочника будет осуществляться путем постепенного набора первых букв строки адреса с последующим подбором и отображением сужающегося списка адресов, в которых содержится вводимый пользователем набор букв.

+

Страница “Реестр задач” должна иметь следующие настройки:

+
    + +
  • на web-странице должна быть размещена компонента Таблица, в графе сущности которой основной таблицей должна быть назначена “Список задач” (tasks). В ней имеется колонка с идентификатором адреса GUID, (fiasid).
  • +
  • на web-странице должна быть размещена компонента Набор фильтров, и настроена на компоненту Таблица
  • +
  • внутри компоненты Набор фильтров следует расположить компоненту Фильтр по полю адреса ФИАС для поиска по параметруАдрес
  • +
  • колонка базы данных для поиска по значениям из компоненты Фильтр по полю адреса ФИАС - tasks.fiasid
  • +
+

Решение задачи:

+

Предполагается, что страница Реестр задач уже создана аналитиком и включена в логику бизнес-процесса. Для задействования компоненты Фильтр по полю ввода с подбором значениянеобходимо сделать следующее:

+
    + +
  • Добавить на страницу компоненту Таблица, настроить ее граф сущностей и колонки (рис.1)
  • +
+

+

рис.1 Расположение компоненты Таблица и настройка ее основных параметров

+
    + +
  • На одном уровне с компонентом Таблица добавить в состав страницы компоненту Набор фильтров. Связать Компоненту Набор фильтров с компонентой Таблица для указания источника данных фильтрации (рис.2)
  • +
+

+

рис.2 Расположение компоненты Набор фильтров и взаимосвязь с компонентой Таблица

+
    + +
  • Добавить компоненты “Кнопка для фильтрации” и “Кнопка очистки фильтра” внутрь компоненты “Набор фильтров” для возможности запуска процесса фильтрации по значению из компоненты “Постановщик задачи” (кнопки нужны потому,что в свойстве компоненты “Набор фильтров” отключен режим “Фильтровать сразу”)
    +
  • +
+

рис.3 Настройка кнопок фильтрации

+
    + +
  • Внутри компоненты Набор фильтров расположить компоненту Фильтр по полю адреса ФИАС (рис.4)
  • +
+

+

рис.4 Настройка графа сущности и основных параметров компоненты Фильтр по полю адреса ФИАС

+

“Настроить колонки фильтрации” означает, что после выбора пользователем значения в компоненте “Фильтр по полю адреса ФИАС” система должна найти это значениесреди строк в таблице tasks.fiasid (параметр “Фильтровать по …”)

+

На этом настройка страницы закончена, можно собрать приложение и проверить работу компоненты.

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что на странице отображаются таблица и блок фильтрации с компонентой “Фильтр по полю ввода с подбором значения” (рис.5)

+ +
+ +

+
+ +

+

+

Форма открывается с пустыми полями

+

При вводе первых двух букв система не реагирует, ждет третью

+

После появления очередной буквы, позволяющей индивидуализировать подбираемое значение, показывается список адресов, удовлетворяющих заданному в настройках фильтру (Ленина) и набранной пользователем подстроке (Казань).

+

Из всего списка остались доступными 2 варианта адресов.

+

+

+

Нажимаем кнопку применить и список отфильтровывается только по тем задачам, которые назначены на выбранную улицу.

+

Пример работы компоненты для случая, когда в настройках компоненты “фильтр по умолчанию” не заполнен.

+

рис.5 Работа компоненты в запущенном приложении

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..5dfe43c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,240 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ、ミクミサム袴び ミソミセ ミソミセミサム ミイミイミセミエミー ム ミソミセミエミアミセムミセミシ ミキミスミームミオミスミクム ミスミー ムムびミーミスミクムミオ? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту “Фильтр по полю ввода с подбором значения” на странице?

+

Постановказадачи: на пользовательской странице Реестр задач необходимо обеспечить возможность поиска задач в компоненте Таблица по указанным в поле Постановщик задачи несколькимзначениям c использованием компоненты “Фильтр по полю ввода с подбором значения”. Источником данных для компоненты “Фильтр по полю ввода с подбором значения” должен служить справочник сотрудников, а выбор сотрудников (одного или нескольких) из справочника будет осуществляться путем постепенного набора первых букв фамилии с последующим подбором и отображением сужающегося списка сотрудников, в чьих фамилиях содержится вводимый пользователем набор букв.

+

Страница “Реестр задач” должна иметь следующие настройки:

+
    + +
  • на web-странице должна быть размещенакомпонента Таблица, в графе сущности которой основной таблицейдолжна быть назначена “Список задач”(tasks).В нейимеется колонка с идентификатором сотрудника, являющегося постановщиком задачи (reporter_employee_id).
  • +
  • на web-странице должна быть размещенакомпонента Набор фильтров, и настроена на компоненту Таблица
  • +
  • внутри компонентыНабор фильтровследует расположить компоненту Фильтр по полю ввода с подбором значения для поиска по параметруПостановщик задачи
  • +
  • колонка базы данных для поиска по значениям из компоненты* Фильтр по полю ввода с подбором значения- tasks.reporter_employee_id*
  • +
+

Решение задачи:

+

Предполагается, что страница Реестр задач уже создана аналитиком и включена в логику бизнес-процесса. Для задействования компоненты Фильтр по полю ввода с подбором значения необходимо сделать следующее:

+
    + +
  • Добавить на страницу компоненту Таблица, настроить ее граф сущностей и колонки (рис.1)
  • +
+

+

рис.1 Расположение компоненты Таблица и настройка ее основных параметров

+
    + +
  • На одном уровне с компонентом Таблица добавить в состав страницы компоненту Набор фильтров. Связать Компоненту Набор фильтров с компонентой Таблица для указания источника данных фильтрации (рис.2)
  • +
+

+

рис.2 Расположение компоненты Набор фильтров и взаимосвязь с компонентой Таблица

+
    + +
  • Добавить компоненты “Кнопка для фильтрации” и “Кнопка очистки фильтра” внутрь компоненты “Набор фильтров” для возможности запуска процесса фильтрации по значению из компоненты “Постановщик задачи” (кнопки нужны потому,что в свойстве компоненты “Набор фильтров” отключен режим “Фильтровать сразу”)
    +
  • +
+

рис.3 Настройка кнопок фильтрации

+
    + +
  • Внутри компоненты Набор фильтров расположитькомпонентуФильтр по полю ввода с подбором значения (рис.4)
  • +
+

+

рис.4 Настройка графа сущности и основных параметров компонентыФильтр по полю ввода с подбором значения

+
    + +
  • Настроить колонки компоненты Фильтр по полю ввода с подбором значения (рис.5)
  • +
+

рис.5 Настройка колонок компоненты Фильтр по полю ввода с подбором значения

+
    + +
  • Настроить операцию фильтрации (рис.6)
  • +
+

+

рис.6 Настройка операции фильтрации

+
    + +
  • Настроить колонку фильтрации (рис.7)
  • +
+

+

рис.7 Настройка колонки фильтрации

+

Данная настройка означает, что после выбора пользователем одного или несколькихзначений в компоненте “Фильтр по полю ввода с подбором значения” система должна найти хотя бы одно (параметр "Правило обработки MultiValue значений выставлен в значение ‘ИЛИ’) из этих значений по идентификатору employee.employee_id среди строк в таблице tasks.reporter_employee_id (параметр “Фильтровать по …”)

+

На этом настройка страницы закончена, можно собрать приложение и проверить работу компоненты.

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что на странице отображаются таблица и блок фильтрации с компонентой “Фильтр по полю ввода с подбором значения” (рис.8 - рис.13)

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+
+ +

+
+

рис.8 Открытие страницы.

+ +

В таблице указаны все задачи всех постановщиков.

+ +

После ввода первой буквы будущей строки с фамилией пока ничего не происходит.

+

рис. 9 Активизация компоненты после ввода второй буквы будущей строки с фамилией.

+ +

Компонента согласно своим настройкам начинает предлагать варианты, в которых содержится сочетание букв "ро" (как в начале, так и любом месте строки).

рис.10 После ввода дополнительных букв будущей строки фамилии компонента сужает список предлагаемых вариантов.
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
+
+ +

+
+

рис.11 Выбор одного из вариантов и поиск следующего.

+ +

Клавишей ввод на клавиатуре подтверждаем первую фамилию из списка, предложенного компонентой.

+ +

Продолжаем набирать буквы для поиска фамилии следующего постановщика задачи.

+

рис.12 Выбор одновременно двух сотрудников осуществлен.

+ +

Нажимаем кнопку "Применить", чтобы система отфильтровала список задач, в которых постановщиками являются эти сотрудники

рис.13 Система отфильтровала список задач только по тем сотрудникам, которые были указаны в компоненте как постановщики задач
+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html new file mode 100644 index 0000000..6ee6027 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html @@ -0,0 +1,116 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴び ミソミセ ミイム巾ソミーミエミーム紗禍オミシム ムミソミクムミコム + + + + + + +
+
+ + + +
+
+

Фильтр по выпадающему списку

+

Назначение

+

Фильтр по выпадающему списку - это видоизмененная компонента выпадающий список, дополненная функцией поиска в связанной с ней компоненте Таблица по введенному пользователем значению. Иерархически обязательно должна быть расположена внутри компоненты Набор фильтров, в качестве параметра содержит указание на колонку таблицы, по которой осуществляется поиск. В зависимости от настроек родительской компоненты Набор фильтров в запущенном приложении выполняет поиск либо только после нажатия соответствующей кнопки (компонента Кнопка для фильтрации), либо по мере ввода пользователем искомого значения (так называемый, “живой поиск”).

+

Компонента Фильтр по выпадающему списку находится в разделе Фильтры - Фильтр по выпадающему списку.

+

Свойства

+

Компонента имеет набор общих свойств, заполнить значением по умолчанию. Выпадающий список, Подгрузка данных, Фильтр по дате, Заполнить значением из переменной процесса. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите год
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения:Отчетный год
Зависит от позволяет указать объект (родителя), напримерВыпадающий список, по идентификатору которого будут отображаться сведения в текущем зависимом элементе
Initial value позволяет задать значение поля по умолчанию, которое будет отображаться на странице пример возможного значения: 2019
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Cохранить значение в переменную процесса любого типа

+

сохранить значение в переменную процесса любого типа

+

Заполнить значением из переменной любого типа

+

Заполнить значением из переменной любого типа

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Можно ли в Фильтре по выпадающему списку ввести значение в ручную? Нет.Фильтр по выпадающему списку не подразумевает под собой ввод значений вручную.
Все ли свойства компоненты обязательны для заполнения? Нет.Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミエミームひオ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミエミームひオ.html new file mode 100644 index 0000000..b30df8e --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミエミームひオ.html @@ -0,0 +1,140 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴び ミソミセ ミエミームひオ + + + + + + +
+
+ + + +
+
+

Фильтр по дате

+

Назначение

+

Фильтр по дате - это видоизмененная компонента Дата, дополненная функцией поиска в связанной с ней компоненте Таблица по введенному пользователем значению. Иерархически обязательно должна быть расположена внутри компоненты Набор фильтров, в качестве параметра содержит указание на колонку таблицы, по которой осуществляется поиск. В зависимости от настроек родительской компоненты Набор фильтровв запущенном приложении выполняет поиск либо только после нажатия соответствующей кнопки (компонента Кнопка для фильтрации), либо по мере ввода пользователем искомого значения (так называемый, “живой поиск”).

+

Компонента Фильтр по дате находится в разделе Фильтры - Фильтр по дате.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения:Введите год
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Год
Initial value позволяет задать значение поля по умолчанию, которое будет отображаться на странице пример возможного значения: 01.01.2017
Минимальная дата позволяет задать минимально возможное значение числа, меньше которого пользователь ввести не сможет пример возможного значения:01.01.2017
Максимальная дата позволяет задать максимально возможное значение числа, больше которого пользователь ввести не сможет пример возможного значения: 31.12.2017
формат позволяет задать формат для вывода даты со временем или только дату
В виде календаря позволяет задать возможность отображения в виде развернутого календаря
+

Свойство Фильтра по дате: Задать операцию фильтрации

+

Операция - позволяет задать условие, по которому будет осуществляться фильтрация данных по введенному пользователем значению

+

пример возможного значения: Равно

+

+

Свойство Фильтра по дате: Настроить колонки фильтрации

+

+

Фильтровать по - позволяет указать таблицу и колонку базы данных, к которой будет применяться фильтрация.

+

Выбор таблицы и колонки базы данных в данном свойстве будет доступен только после заполнения свойства “Применить к…” у Набора фильтрации

+

пример возможного значения:

+

Свойство Фильтра по дате: Заполнить значением из переменной

+

позволяет указать переменную процесса, значение которой будет передаваться в поле и отображаться по умолчанию

+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации функции (функции выполняются удаленно на сервере приложений, функции выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Cохранить значение в переменную процесса

+

сохранить значение в переменную процесса любого типа

+

Заполнить значением из переменной

+

Заполнить значением из переменной любого типа

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Можно ли вносить данные в поле вручную? Да, можно. При условии, что введенные значения соответствуют маске ввода.
Что будет если ввести буквенные значения в фильтр по дате? В поле Фильтр по дате можно ввести буквенные значения, но при переходе в другое поле, введенный текст очистится.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミコミセミシミソミセミスミオミスムひオ_ミ、ミサミーミウ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミコミセミシミソミセミスミオミスムひオ_ミ、ミサミーミウ.html new file mode 100644 index 0000000..26b5678 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミコミセミシミソミセミスミオミスムひオ_ミ、ミサミーミウ.html @@ -0,0 +1,115 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴び ミソミセ ミコミセミシミソミセミスミオミスムひオ ミ、ミサミーミウ + + + + + + +
+
+ + + +
+
+

Фильтр по компоненте Флаг

+

Назначение

+

Фильтр по компоненте Флаг - это видоизмененная компонента Флаг, дополненная функцией поиска в связанной с ней компоненте Таблица по введенному пользователем значению. Иерархически обязательно должна быть расположена внутри компоненты Набор фильтров, в качестве параметра содержит указание на колонку таблицы, по которой осуществляется поиск. В зависимости от настроек родительской компоненты Набор фильтров в запущенном приложении выполняет поиск либо только после нажатия соответствующей кнопки (компонента Кнопка для фильтрации), либо по мере ввода пользователем искомого значения (так называемый, “живой поиск”).

+

Компонента Фильтр по компоненте Флаг находится в разделе Фильтры - Фильтр по компоненте Флаг

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения:Введите год
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Год
Initial value позволяет задать значение, которое примет компонента при открытии web-страницы, значение типа Boolean (TRUE, FALSE, UNDEFINED) TRUE, FALSE, UNDEFINED(по умолчанию)
+

Свойство Фильтра: Задать операцию фильтрации

+

позволяет задать условие, по которому будет осуществляться фильтрация данных по введенному пользователем значению

+

Свойство Фильтра: Настроить колонки фильтрации

+

позволяет указать таблицу и колонку базы данных, к которой будет применяться фильтрация

+

Выбор таблицы и колонки базы данных в данном свойстве будет доступен только после заполнения свойства “Применить к…” у Набора фильтрации

+

позволяет указать правило работы фильтрации в режиме MultiValue, когда пользователем выбраны несколько значений в компоненту.

+

Данная настройка определяет оператор соединения для выбранных пользователем значений

+

Свойство компоненты: Поле ввода с подбором значения.

+

Заполнить значением из переменной любого типа

+

позволяет указать переменную процесса, значение которой будет передаваться в поле и отображаться по умолчанию

+

Свойство компоненты: Поле ввода с подбором значения. Заполнить значением по умолчанию

+

сохранить значение в переменную процесса любого типа

+

заполнить значением из переменной любого типа

+

склеить несколько значений

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
C какими типами данных применяется компонента Фильтр по комопненте Флаг? Поскольку возможными значениями компоненты Фильтр по компоненте Флаг (как и самой компоненты Флаг) являются логические значения, то обе компоненты работают с типом данных Boolean.
Все ли свойства компоненты обязательны для заполнения? Нет.Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。.html new file mode 100644 index 0000000..69e2c47 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミーミエムミオムミー_ミ、ミ侑籍。.html @@ -0,0 +1,173 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴び ミソミセ ミソミセミサム ミーミエムミオムミー ミ、ミ侑籍。 + + + + + + +
+
+ + + +
+
+

Фильтр по полю адреса ФИАС

+

Назначение

+

Фильтр по полю адреса ФИАС - это видоизмененная компонента поле адреса ФИАС, дополненная функцией поиска в связанной с ней компоненте Таблица по введенному пользователем значению. Иерархически обязательно должна быть расположена внутри компоненты Набор фильтров, в качестве параметра содержит указание на колонку таблицы, по которой осуществляется поиск. В зависимости от настроек родительской компоненты Набор фильтров в запущенном приложении выполняет поиск либо только после нажатия соответствующей кнопки (компонента Кнопка для фильтрации), либо по мере ввода пользователем искомого значения (так называемый, “живой поиск”).

+

Компонента Фильтр по полю адреса ФИАС находится в разделе Фильтры - Фильтр по полю адреса ФИАС.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Выберите район
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Район
Минимальное количество символов позволяет задать количество символов, после ввода которых пользователем, компонента начинает подбор и вывод вариантов, соответствующих уже введенной пользователем подстроке
Исторический адрес Если отметка поставлена, то компоненте предписывается осуществлять поиск не только по актуальным вариантам адресов, но и по историческим версиям этих адресов. Если отметка снята, то компоненте предписывается осуществлять поиск только по актуальным вариантам адресов, игнорируя исторические версии этих адресов. Информация о том, какой версией является то или иное наименование адреса (актуальной или исторической) компонента берет из федеральной информационной адресной системы в режиме чтения как исходное данное, и не осуществляет присвоение или снятие этого признака своей активностью. +
    +
  • подбор только среди актуальных версий адресов - значение по умолчанию
  • +
  • подбор среди актуальных и исторических версий адресов
Фильтр по умолчанию Предписывает компоненте при отображении вариантов отфильтровать адреса по указанной в этом параметре подстроке. Используется как дополнительный предустановленный фильтр к подстроке, вводимой пользователем.
Количество строк Указывает компоненте максимально допустимое количество вариантов для отображения в выпадающем списке при подборе пользователем интересующего значения.
Минимальный уровень адреса Ограничивает область поиска адреса по вводимой пользователем подстроке “сверху” - то есть указанным элементом адреса и его нижележащими в иерархии дочерними элементами. При указании “Минимального уровня поиска адреса” в значение “Субъект РФ” поиск по введенной пользователем в компоненту подстроке будет осуществляться по всем Субъектам РФ и по всем Районам субъекта, и по всем Городам, и по всем Районам города, и по всем Населенным пунктам, и по всем Улицам. Данную настройку могут ограничивать параметры: +
    +
  • “Фильтр по умолчанию” - тогда поиск уже не по всем регионам (и прочим элементам), а только по тем, которые содержат подстроку из фильтра
  • +
  • “Максимальный уровень адреса” - тогда поиск будет опускаться по иерархии только до того уровня детализации, который указан в параметре “Максимальный уровень адреса”
Максимального уровня поиска адреса Ограничивает область поиска адреса по вводимой пользователем подстроке “снизу” - то есть указанным элементом адреса и его вышележащими в иерархии родительскими элементами. При указании “Максимального уровня поиска адреса” в значение “Улица” поиск по введенной пользователем в компоненту подстроке будет осуществляться по всем Улицам во всех Населенных пунктах, всех Районов города, всехГородов, всех Районов субъекта и всех Субъектов РФ. Данную настройку могут ограничивать параметры: +
    +
  • “Фильтр по умолчанию”* - тогда поиск уже не по всем улицам (и прочим родительским элементам), а только по тем, которые содержат подстроку из фильтра
  • +
  • “Минимальный уровень адреса” - тогда поиск будет подниматься по иерархии только до того уровня детализации, который указан в параметре*“Минимальный уровень адреса”
Показывать краткий вид типа указывает компоненте на стиль отображения строки адреса - наименование адресных элементов (таких как город, улица, район и т.п.) отображать в принятых сокращениях (г., ул.,р-н) или полностью. +
    +
  • отображать полные наименования адресных элементов - значение по умолчанию
  • +
  • отображать сокращения адресных элементов
Операция позволяет задать условие, по которому будет осуществляться фильтрация данных по введенному пользователем значению
Фильтровать по … позволяет указать таблицу и колонку базы данных, к которой будет применяться фильтрация Выбор таблицы и колонки базы данных в данном свойстве будет доступен только после заполнения свойства “Применить к…” у Набора фильтров
Правило обработки MultiValue позволяет указать правило работы фильтрации в режиме MultiValue, когда пользователем выбраны несколько значений в компоненту. Данная настройка определяет оператор соединения для выбранных пользователем значений Значение по умолчанию - “или”. Данная настройка имеет значение только для компонентов, поддерживающих множественный ввод (возможность указания нескольких значений в строке поиска). Компонента Фильтр по полю адреса не поддерживает множественный ввод, поэтому выбор текущего параметра не повлияет на результаты.
+

Свойство компоненты: Поле адреса ФИАС. Настройка

+

Подгрузка данных

+

Источник подгрузки значений адресов конфигурируется в файле standalone.xml проекта в секции datasource jndi-name=“java:jboss/datasources/fias-ds” pool-name=“FIASDS” enabled=“true” use-java-context=“true”.

+

Настройка секции на источник данных происходит при инициации проекта техническим специалистом и используется аналитиком “как есть”. В составе компоненты настройка параметров подключения и подгрузки данных не осуществляется.

+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений,- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Сохранить значение в переменную процесса любого типа

+

сохранить значение в переменную процесса любого типа

+

Заполнить значением из переменной любого типа

+

заполнить значением из переменной любого типа

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Сконвертировать значение в целочисленный тип

+

Сконвертировать значение в целочисленный тип

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + +
Вопрос Ответ
Значение какого типа возвращает компонента? В общем случае компонента возвращает значение тестового типа в виде длинного идентификатора (для поиска записи в базе данных). Для использования значения выбранного адреса на экранной форме посредством компоненты Обработка событий, аналитику доступны несколько методов, которые возвращают разные значения.
+

В условиях сравнения компоненты Обработка событий могут использоваться методы:

+

Метод “Получить значение” возвращает идентификатор (так называемый GUID) выбранного адреса в строковом виде, например: {“version”:“1.0”,“aoid”:“b026a0f9-9478-4c61-a55f-95b38cb099c1”,“aoid_p1”:“c6d874d0-a7e8-46a1-b345-e2e1e9758c59”,“aoid_p2”:“625866a1-1278-4883-8dc5-ba34e0c463c4”,“aoid_p3”:“fc50add0-c3c7-4f07-99cd-8831166e6619”,“aoid_p4”:null,“aoid_p5”:null,“guid”:“b026a0f9-9478-4c61-a55f-95b38cb099c1”}

+

Метод “Получить значение как текст” возвращает строку адреса в человекочитаемом виде в строковом виде, например “Респ Дагестан, р-н Буйнакский, с Верхнее Казанище, ул Ленина”

+

В секции Тогдакомпоненты Обработка событий могут использоваться методы:

+

Метод"ФИАС.Задать значение" выставляет в компоненте адрес по идентификатору GUID ({“version”:“1.0”,“aoid”:“b026a0f9-9478-4c61-a55f-95b38cb099c1”,“aoid_p1”:“c6d874d0-a7e8-46a1-b345-e2e1e9758c59”,“aoid_p2”:“625866a1-1278-4883-8dc5-ba34e0c463c4”,“aoid_p3”:“fc50add0-c3c7-4f07-99cd-8831166e6619”,“aoid_p4”:null,“aoid_p5”:null,“guid”:“b026a0f9-9478-4c61-a55f-95b38cb099c1”}). Используется для полей - приемника информации об адресе (как показано на скриншоте).

+

Метод “ФИАС.Получить значение” возвращает значение - идентификатор GUID, как из источника данных об адресе для последующей вставки в другое поле ФИАС.

+

Метод "ФИАС.Получить значение"возвращает строку адреса в человекочитаемом виде в строковом виде,как из источника данных об адресе для последующей вставки в другое читаемое тестовое поле (например, Компонент Текстовое поле).

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html new file mode 100644 index 0000000..0f76d07 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html @@ -0,0 +1,241 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴び ミソミセ ミソミセミサム ミイミイミセミエミー ム ミソミセミエミアミセムミセミシ ミキミスミームミオミスミクム + + + + + + +
+
+ + + +
+
+

Фильтр по полю ввода с подбором значения

+

Назначение

+

Фильтр по полю ввода с подбором значения - это видоизмененная компонента Поле ввода с подбором значения, дополненная функцией поиска в связанной с ней компоненте Таблица по введенному пользователем значению. Иерархически обязательно должна быть расположена внутри компоненты Набор фильтров, в качестве параметра содержит указание на колонку таблицы, по которой осуществляется поиск. В зависимости от настроек родительской компоненты Набор фильтров в запущенном приложении выполняет поиск либо только после нажатия соответствующей кнопки (компонента Кнопка для фильтрации), либо по мере ввода пользователем искомого значения (так называемый, “живой поиск”).

+

Компонента Фильтр по полю ввода с подбором значения находится в разделе Фильтры - Фильтр по полю ввода с подбором значения.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Выберите район
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Район
Зависит от позволяет указать объект (родителя), например Выпадающий список, по идентификатору которого будут отображаться сведения в текущем зависимом элементе
Начать подбор вариантов позволяет задать количество символов, после ввода которых пользователем, компонента начинает подбор и вывод вариантов, соответствующих уже введенной пользователем подстроке пример возможного значения: 3
Допустимое количество для MultiValue позволяет указать количество значений, которое может выбрать пользователь при работе с компонентой (включение режима MultiValue) пример возможного значения: 4
+

Свойство компоненты: Поле ввода с подбором значения. Подгрузка данных

+

Подгрузка данных - позволяет задать источник подгрузки/сохранения данных в компоненту из/в объекта базы данных (таблицы или представления) с указанием следующих дополнительных настроек:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Возвращать значение доп.колонки по умолчанию компонента возвращает идентификатор записи выбранной из справочника значений (primary_key) Настройка данного параметра позволяет указать компоненте, значение из какой дополнительной колонки необходимо дополнительно считать и вернуть при использовании метода “Получить значение BusinessId”
Связаны по… позволяет указать колонку текущей компоненты, по которой осуществляется связь с компонентой, указанной в свойстве “Зависит от”, обеспечивающую связь между родительской и текущей компонентами
Тип поиска позволяет задать один из вариантов поиска по вводимой пользователем подстроке С начала строки (значение отображается в списке, если с введенной пользователем подстроки начинается значение колонки из базы данных). Во всей строке (значение отображается в списке, если введенная пользователем подстрока содержится в значении колонки из базы данных с любого места вхождения)
Сортировать по позволяет задать элемент базы данных, по значению которого будет производиться сортировка
Тип колонки позволяет указать , каким образом будет отображаться выбранное пользователем значение в компоненте +
    +
  • Из одной колонки
  • +
  • Из нескольких колонок
  • +
  • Колонка с оформлением
Показывать пользователю позволяет задать колонку базы данных, значение которой будет отображено пользователю в режиме ""
Активировать фильтрацию по колонке позволяет указать колонку текущей компоненты, по которой можно с использованием метода “Задать фильтр” компоненты “Обработка события” дополнительно ограничить список доступных для выбора пользователем значений Выставленное в методе значение фильтра будет применено к указанной колонке
Граф сущностей Настройка Графа сущностей Является обязательным к заполнению и настройке
Показывать варианты по позволяет ограничить список отображаемых вариантов в процессе подбора по подстроке
+

Тип колонки - позволяет указать , каким образом будет отображаться выбранное пользователем значение в компоненте

+
    + +
  • Из одной колонки
  • +
  • Из нескольких колонок
  • +
  • Колонка с оформлением
  • +
+

Из нескольких колонок - позволяет указать, что видимое пользователю значение должно быть сформировано путем объединения значений из нескольких колонок источника данных компоненты. Для тонкой настройки параметров объединения значений разных колонок, аналитик может задать свойства:

+
    + +
  • префикс - символ или текст, который будет отображаться перед подгружаемым значением из колонки базы данных,например символ открывающейся скобки (;
  • +
  • постфикс- символ или текст, который будет отображаться после подгружаемого значения из колонки базы данных,например символ закрывающейся скобки );
  • +
  • разделитель- символ или пробел, который будет разделять между собой значения из разных колонок таблиц (ы), объединяемых в одно значение
  • +
+

Тип колонки - позволяет указать , каким образом будет отображаться выбранное пользователем значение в компоненте

+
    + +
  • Из одной колонки
  • +
  • Из нескольких колонок
  • +
  • Колонка с оформлением
  • +
+

Колонка с оформлением - позволяет задать шаблон отображения одной или нескольких колонок в html формате. Колонки в шаблоне задаются в виде @{сущность из графа.колонка} или @{сущность из графа.колонка | форматер}. Форматер принимает одно из двух значений “date” и “datetime”.

+

Свойство Фильтра : Задать операцию фильтрации

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Операция позволяет задать условие, по которому будет осуществляться фильтрация данных по введенному пользователем значению
+

Свойство Фильтра: Настроить колонки фильтрации

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Фильтровать по позволяет указать таблицу и колонку базы данных, к которой будет применяться фильтрация Выбор таблицы и колонки базы данных в данном свойстве будет доступен только после заполнения свойства “Применить к…” у Набора фильтрации
Правило обработки MultiValue значений позволяет указать правило работы фильтрации в режиме MultiValue, когда пользователем выбраны несколько значений в компоненту. Данная настройка определяет оператор соединения для выбранных пользователем значений
+

Свойство компоненты: Поле ввода с подбором значения.

+

Заполнить значением из переменной любого типа

+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений. Функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Сохранить значение в переменную процесса

+

Сохранить значение в переменную процесса

+

Заполнить значением из переменной

+

Заполнить значением из переменной

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Сконвертировать значение в целочисленный тип

+

Сконвертировать значение в целочисленный тип

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Фильтр по полю ввода с подбором значения от компоненты Фильтр по выпадающему списку? Фильтр по полю ввода с подбором значения отличается от компоненты Фильтр по выпадающему списку тем, что не показывает и не подгружает сразу все строки из справочника, но по мере ввода пользователем подстроки предлагает всё более усеченный список вариантов, выводя только релевантные уже введенной подстроке значения.
Значение какого типа возвращает компонента? В общем случае может быть любым (чаще всего целочисленным или строковым).Тип возвращаемого компонентойзначения определяется выбором аналитиком метода, который возвращает значение, а также типом колонки в базе данных.
+

Метод “Получить значение” возвращает первичный ключ и тип такого значения зависит от типа колонки первичного ключа в базе данных (обычно целочисленный bigint).

+

Метод “Получить значение по BussinessId” возвращает значение колонки, заданной в параметре компоненты "Дополнительно возвращать значение из " и определяется типом этой колонки в базе данных.

+

Дополнительная функция “Сконвертировать значение в целочисленный тип” как раз используется для явной конвертации возвращаемого компонентой неопределенного типа (ANY) в явно желаемый Integer (например, при присвоении идентификатора строки выбранного в компоненте значения какой-либо переменной целого типа на странице) .

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー.html new file mode 100644 index 0000000..a01c310 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ミソミセミサム酸ミシミスミセミウミセムムびミセムミスミセミウミセ_ミイミイミセミエミー.html @@ -0,0 +1,193 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴び ミソミセ ミソミセミサム ミシミスミセミウミセムムびミセムミスミセミウミセ ミイミイミセミエミー + + + + + + +
+
+ + + +
+
+

Фильтр по полю многострочного ввода

+

Назначение

+

Фильтр по полю многострочного ввода - это видоизмененная компонента Многострочное поле, дополненная функцией поиска в связанной с ней компоненте Таблица по введенному пользователем значению. Иерархически обязательно должна быть расположена внутри компоненты Набор фильтров, в качестве параметра содержит указание на колонку таблицы, по которой осуществляется поиск. В зависимости от настроек родительской компоненты Набор фильтров в запущенном приложении выполняет поиск либо только после нажатия соответствующей кнопки (компонента Кнопка для фильтрации), либо по мере ввода пользователем искомого значения (так называемый, “живой поиск”).

+

Компонента Фильтр по полю многострочного ввода находится в разделе Фильтры - Фильтр по полю многострочного ввода.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите название организации
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Наименование организации
Значение позволяет задать значение поля по умолчанию пример возможного значения: ООО “Форт”
Максимальная длина задаёт максимальное количество вводимых символов в поле пример возможного значения: 10
Маска ограничивающая ввод позволяет задать маску, в соответствии с которой пользователь будет осуществлять ввод текста выставление маски не может обеспечить выполнение требования обязательности ввода, маска только внешне отфильтровывает и форматирует последовательность вводимых пользователем символов заранее заданным образом (например, ввод тел. номера “+ 7 (917) - 101 - 02 - 03” вместо “8917010203” или не допустит такого ввода “89170102АЯ”). См. ниже
Оперировать немаскированными данными указывает системе порядок обработки символов маски при сохранении значения поля в базу данных +
    +
  • значение не определено - по умолчанию
  • +
  • сохранять без форматирования маской
  • +
  • сохранять с форматированием маской
Значение, отформатированное маской в поле ввода как “+7~(917)-922-33-44”, может быть сохранено в поле таблицы базы данных как “+7~(917)-922-33-44” (если флажок снят) или как “9179223344” (если флажок выставлен)
Регистр позволяет задать вид регистра вводимого текста +
    +
  • в верхнем регистре - заглавные (прописные) буквы
  • +
  • в нижнем регистре - строчные (маленькие) буквы
  • +
  • первая буква - заглавная
Тип позволяет задать тип вводимого текста +
    +
  • обычный текст
  • +
  • пароль (заполнитель - звездочки)
  • +
  • электронная почта
регулярное выражение позволяет задать проверку вводимого текста с помощью регулярных выражений См. ниже
Операция позволяет задать условие, по которому будет осуществляться фильтрация данных по введенному пользователем значению
Фильтровать по … В данном свойстве выбирается таблица и колонка к которой будет применяться фильтрация. Выбор таблице в данном свойстве будет доступен после заполнения свойства “Применить к…” у Набор фильтрации
+

Примеры масок:

+
    + +
  • A (буква, латинская, регистр не имеет значения) в маске - позволит ввести в поле одну любую букву любого алфавита
  • +
  • Б (буква, русская, в верхнем регистре) в маске - позволит ввести в поле одну любую букву русского алфавита
  • +
  • 9 (цифра) в маске - позволит ввести в поле одну любую цифру
  • +
  • * (символ) в маске - позволит ввести в поле одну любую цифру или букву
  • +
  • R (буква, латинская, в верхнем регистре) в маске - позволит ввести в поле одну римскую цифру
  • +
  • ? (символ) в маске - позволит ввести или опустить при вводе в поле один необязательный символ (букву, цифру) ,например 999?9; под эту маску подходит как 123, так и 1234
  • +
+

Например, необходимо задать форматирование ввода маской для значения Й456QЬ. В данном случае маска будет выглядеть следующим образом: А999АА, где А - латинская буква.

+

Некоторые типовые регулярные выражения:

+
    + +
  • \d [0-9]- одна цифра от 0 до 9
  • +
  • \D [^0-9]- любой символ кроме цифры
  • +
  • \s- пробел
  • +
  • [A-Z]- только заглавная латинская буква
  • +
  • [A-Za-z]- только латинская буква в любом регистре
  • +
  • [А-Яа-яЁё]- только русская буква в любом регистре
  • +
  • [A-Za-zА-Яа-яЁё]- любая буква русского и латинского алфавита
  • +
  • [0-9]{3}- три цифры
  • +
  • [A-Za-z]{6,}- не менее шести латинских букв
  • +
  • [0-9]{,3}- не более трёх цифр
  • +
  • [0-9]{5,10}- от пяти до десяти цифр
  • +
  • ^[a-zA-Z]+$- любое слово на латинице
  • +
  • ^[А-Яа-яЁё\s]+$- любое слово на русском включая пробелы
  • +
  • ^[ 0-9]+$- любое число
  • +
+

Например, чтобы ограничить возможность ввода и сохранения текста латиницей, можно использовать регулярное выражение^[А-Яа-яЁё\s]+$

+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Сохранить значение в переменную процесса

+

Сохранить значение в переменную процесса

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Склеить несколько значений

+

Склеить несколько значений

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Можно ли ввести число в Фильтр по полю многострочного ввода Да, можно.
Как можно ограничить количество ввода символов в поле? Для этого необходимо заполнить свойство "Максимальная длина
Как можно расширить поиск вфильтрациипо полю многострочного ввода из приложения Поиск можно расширить с помощью проставлениязнака "%"рядом с вводимым значением в поле фильтрации. Пример приведен в статье по фильтрации по текстовому полю
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html new file mode 100644 index 0000000..2167911 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムムひームひクムミスミセミシムダミイム巾ソミーミエミーム紗禍オミシムダムミソミクムミコム.html @@ -0,0 +1,118 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴び ミソミセ ムムひームひクムミスミセミシム ミイム巾ソミーミエミーム紗禍オミシム ムミソミクムミコム + + + + + + +
+
+ + + +
+
+

Фильтр по статичному выпадающему списку

+

Назначение

+

Фильтр по статичному выпадающему списку - это видоизмененная компонента Статичный выпадающий список, дополненная функцией поиска в связанной с ней компоненте Таблица по введенному пользователем значению. Иерархически обязательно должна быть расположена внутри компоненты Набор фильтров, в качестве параметра содержит указание на колонку таблицы, по которой осуществляется поиск. В зависимости от настроек родительской компоненты Набор фильтров в запущенном приложении выполняет поиск либо только после нажатия соответствующей кнопки (компонента Кнопка для фильтрации), либо по мере ввода пользователем искомого значения (так называемый, “живой поиск”).

+

Компонента Фильтр по статичному выпадающему списку находится в разделе Фильтры - Фильтр по статичному выпадающему списку.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите год
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Отчетный год
Значение по умолчанию (initial value) позволяет задать значение поля по умолчанию, которое будет отображаться на странице пример возможного значения: 2019
Список значений позволяет задать список значений, которые будут отображаться в выпадающем списке +
    +
  • надпись - позволяет задать наименование элемента в списке значений
  • +
  • значение - позволяет задать значение элемента, которое можно записать в базу данных
  • +
  • скрыть - позволяет регулировать видимость элемента в списке значений
надпись - “Отчетный год” значение-“2018”
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Склеить несколько значений

+

Склеить несколько значений

+

Сохранить значение в переменную процесса

+

Сохранить значение в переменную процесса

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной

+

Методические рекомендации по применению

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Можно ли в Фильтре по статичному выпадающему списку ввести значение в ручную? Нет. Фильтр по статичному выпадающему списку не подразумевает под собой ввод значений вручную.
Сколько значений для Фильтра по статичному выпадающему списку является оптимальным? К заданию значений в фильтре по статичному выпадающему списку, необходимо подходить внимательно, так как задание 2 вариантов, так и 20 вариантов для выбора будет не совсем корректным. Если значений менее 5, то советую использовать Фильтр по флагу, если же необходимо выбрать более 15 значений, то предлагаюлибо сократить их количество, либо предоставить пользователю текстовое поле для ввода своих данных.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム.html new file mode 100644 index 0000000..9fd9d9a --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムひオミコムムひセミイミセミシムダミソミセミサム.html @@ -0,0 +1,181 @@ + + + + + + + + Web-BPM Docs – ミ「ミオミコムムひセミイミセミオ ミソミセミサミオ (ムミクミサム袴び) + + + + + + +
+
+ + + +
+
+

Текстовое поле (фильтр)

+

Назначение

+

Текстовое поле (фильтр) - это видоизмененная компонента Текст, дополненная функцией поиска в связанной с ней компоненте Таблица по введенному пользователем значению. Иерархически обязательно должна быть расположена внутри компоненты Набор фильтров, в качестве параметра содержит указание на колонку таблицы, по которой осуществляется поиск. В зависимости от настроек родительской компонентыНабор фильтровв запущенном приложении выполняет поиск либо только после нажатия соответствующей кнопки (компонентаКнопка для фильтрации), либо по мере ввода пользователем искомого значения (так называемый, “живой поиск”).

+

Компонента Текстовое поле (фильтр) находится в разделе Фильтры - Текстовое поле (фильтр).

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите название организации
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Наименование организации
Значение позволяет задать значение поля по умолчанию пример возможного значения: ООО “Форт”
Максимальная длина задаёт максимальное количество вводимых символов в поле пример возможного значения: 10
Оперировать немаскированными указывает системе порядок обработки символов маски при сохранении значения поля в базу данных +
    +
  • значение не определено- по умолчанию
  • +
  • сохранять без форматирования маской
  • +
  • сохранять с форматированием маской
Значение, отформатированное маской в поле ввода как “+7~(917)-922-33-44”, может быть сохранено в поле таблицы базы данных как “+7~(917)-922-33-44” (если флажок снят) или как “9179223344” (если флажок выставлен)
Маска, ограничивающая ввод позволяет задать маску, в соответствии с которой пользователь будет осуществлять ввод текста выставление маски не может обеспечить выполнение требования обязательности ввода, маска только внешне отфильтровывает и форматирует последовательность вводимых пользователем символов заранее заданным образом (например, ввод тел. номера “+ 7 (917) - 101 - 02 - 03” вместо “8917010203” или не допустит такого ввода “89170102АЯ”). Примеры масок: +
    +
  • A (буква, латинская, регистр не имеет значения) в маске - позволит ввести в поле одну любую букву любого алфавита
  • +
  • Б (буква, русская, в верхнем регистре) в маске - позволит ввести в поле одну любую букву русского алфавита
  • +
  • 9 (цифра) в маске - позволит ввести в поле одну любую цифру
  • +
  • * (символ) в маске - позволит ввести в поле одну любую цифру или букву
  • +
  • R (буква, латинская, в верхнем регистре) в маске - позволит ввести в поле одну римскую цифру
  • +
  • [ ] (внутри квадратных скобок) в маске - позволит ввести или опустить при вводе в поле один или несколько необязательных символов (букву, цифру), например 999[9]; под эту маску подходит как 123, так и 1234 Например, необходимо задать форматирование ввода маской для значения Й456QЬ. В данном случае маска может выглядеть следующим образом: Б999АА, где А - латинская буква.
Регистр позволяет задать вид регистра вводимого текста: В верхнем регистре - заглавные (прописные) буквы. В нижнем регистре - строчные (маленькие) буквы. Первая буква - заглавная
тип позволяет задать тип вводимого текста обычный текст. Пароль (заполнитель - звездочки). Электронная почта
Регулярное выражение или Pattern позволяет задать проверку вводимого текста с помощью регулярных выражений поля, для которых не выполняются условия заданных регулярных выражений, при сохранении записи подсвечиваются красным оттенком и операция отменяется. Некоторые типовые регулярные выражения: +
    +
  • \d [0-9] - одна цифра от 0 до 9
  • +
  • \D [^0-9] - любой символ кроме цифры
  • +
  • \s - пробел
  • +
  • [A-Z] - только заглавная латинская буква
  • +
  • [A-Za-z] - только латинская буква в любом регистре
  • +
  • [А-Яа-яЁё] - только русская буква в любом регистре
  • +
  • [A-Za-zА-Яа-яЁё] - любая буква русского и латинского алфавита
  • +
  • [0-9]{3} - три цифры
+
    +
  • [A-Za-z]{6,}- не менее шести латинских букв
  • +
  • [0-9]{,3} - не более трёх цифр
  • +
  • [0-9]{5,10} - от пяти до десяти цифр
  • +
  • ^[a-zA-Z]+$ - любое слово на латинице
  • +
  • ^[А-Яа-яЁё\s]+$ - любое слово на русском включая пробелы
  • +
  • ^[ 0-9]+$ - любое число
чтобы ограничить возможность ввода и сохранения текста латиницей, можно использовать регулярное выражение ^[А-Яа-яЁё\s]+$
Операция позволяет задать условие, по которому будет осуществляться фильтрация данных по введенному пользователем значению
Фильтровать по… позволяет указать таблицу и колонку базы данных, к которой будет применяться фильтрация выбор таблицы и колонки базы данных в данном свойстве будет доступен только после заполнения свойства “Применить к…” у Набора фильтрации
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Cохранить значение в переменную процесса

+

сохранить значение в переменную процесса

+

Добавить строку к значению в текущем поле

+

Добавить строку к значению в текущем поле

+

Заполнить значением из переменной любого типа

+

Заполнить значением из переменной любого типа

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Склеить несколько значений

+

Склеить несколько значений

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+
+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
В каких случаях необходимо использовать Фильтр по текстовому полю, а в каких случаях Фильтр по числовому полю? В зависимости от типа значений, по которым происходит фильтрация определяется соответствующий тип Фильтра: если значения в колонке таблицы имеют строковый тип данных, то используется Фильтр по текстовому полю, если числовой - Фильтр по числовому полю.
Можно ли ввести число в Текстовое поле (фильтр)? Да, можно.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム.html new file mode 100644 index 0000000..a39ed67 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴び_ミソミセ_ムミクムミサミセミイミセミシムダミソミセミサム.html @@ -0,0 +1,132 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴び ミソミセ ムミクムミサミセミイミセミシム ミソミセミサム + + + + + + +
+
+ + + +
+
+

Фильтр по числовому полю

+

Назначение

+

Фильтр по числовому полю - это видоизмененная компонента Числовое поле, дополненная функцией поиска в связанной с ней компоненте Таблица по введенному пользователем значению. Иерархически обязательно должна быть расположена внутри компоненты Набор фильтров,в качестве параметра содержит указание на колонку таблицы, по которой осуществляется поиск. В зависимости от настроек родительской компоненты Набор фильтров в запущенном приложении выполняет поиск либо только после нажатия соответствующей кнопки (компонента Кнопка для фильтрации), либо по мере ввода пользователем искомого значения (так называемый, “живой поиск”).

+

Компонента Фильтр по числовому полю находится в разделе Фильтры - Фильтр по числовому полю.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите год
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Год
Значение по умолчанию позволяет задать значение поля по умолчанию, которое будет отображаться на странице пример возможного значения: 100
Минимальное возможное значение позволяет задать минимально возможное значение числа, меньше которого пользователь ввести не сможет пример возможного значения: 0
Максимальное возможное значение позволяет задать максимально возможное значение числа, больше которого пользователь ввести не сможет пример возможного значения: 2999
Шаг увеличения значения позволяет задать шаг увеличения значения числа пример возможного значения: 1
Задать операцию фильтрации позволяет задать условие, по которому будет осуществляться фильтрация данных по введенному пользователем значению
Настроить колонки фильтрации позволяет указать таблицу и колонку базы данных, к которой будет применяться фильтрация Выбор таблицы и колонки базы данных в данном свойстве будет доступен только после заполнения свойства “Применить к…” у Набора фильтрации
+

Сохранить значение в переменную процесса

+

Сохранить значение в переменную процесса

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Включить вычисление математических операций

+

Включить вычисление математических операций

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Можно ли ввести текст в поле “Фильтр по числовому полю” Нет, нельзя.
В каких случаях необходимо использовать “Фильтр по числовому полю”? Фильтр по числовому полю используется в тех случаях, когда фильтруемые данные имеют числовой тип. При использовании данного фильтра у пользователя появится удобный ввод значения в поле Фильтр по числовому полю с помощью кнопок ,а не клавиатуры.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴びム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴びム.html new file mode 100644 index 0000000..8c57944 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/filters/ミ、ミクミサム袴びム.html @@ -0,0 +1,63 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴びム + + + + + + +
+
+ + + +
+
+

Фильтры

+ +
+
+
+
+
+
+

© 2022 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/index.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/index.html new file mode 100644 index 0000000..7e177a5 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/index.html @@ -0,0 +1,79 @@ + + + + + + + + Web-BPM Docs – ミ渙セミサム ミイミイミセミエミー/ミイム巾イミセミエミー + + + + + + + +
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ籍エムミオム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ籍エムミオム.html new file mode 100644 index 0000000..8473db3 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ籍エムミオム.html @@ -0,0 +1,290 @@ + + + + + + + + Web-BPM Docs – ミ籍エムミオム + + + + + + +
+
+ + + +
+
+

Адрес

+

Назначение

+

Адрес - это компонента, которая визуально выглядит как Поле ввода с подбором значения (Поиск), но по мере набора пользователем символов с клавиатуры подбирает, отображая возможные варианты значений адресов из федеральной адресной информационной системы, при этом функционируя уже как компонента Выпадающий список.

+

Варианты адресов и выбранный адрес отображаются как строка переменной длины, включающаяв себя наименование адресного параметра и его значение. Подбор вариантов адресов осуществляется по принципу вхождения набранного пользователем значения в результирующую строку полного адреса. Удобнее всего осуществлять подбор наименования с самого детального из доступных элементов адреса - улицы. Широта охвата компонентой адресных параметров представлена набором элементов, начиная от адресного элемента Субъект Российской Федерации и заканчивая адресным элементом Улица(для ФИАС)/Квартира(для ГАР). Для ФИАС адресные элементы, детализирующие местоположение точнее улицы (например, дом, корпус, помещение и т.п.) должны вводиться отдельными компонентами (например, Текстовое поле) со ссылками на предназначенные только для них колонки пользовательской базы данных.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Адрес может использоваться для:

+
    + +
  1. Для отображения/сохранения выбранного в компоненте значения из/в базу данных(в данном случае, функция компоненты Адрес. Сохранение значения должна быть включена)
  2. +
  3. Для использования без функциональности отображения/сохранения выбранного в компоненте значения из/в базу данных(в данном случае, функция компоненты Выпадающий список. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке)
  4. +
+

Компонента Адрес находится в разделе Компоненты - Поля - Адрес.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Вводите адрес в следующем порядке: населенный пункт -> город
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Адрес
Минимальное кол-во символов позволяет задать количество символов, после ввода которых пользователем, компонента начинает подбор и вывод вариантов, соответствующих уже введенной пользователем подстроке пример возможного значения: 3
Если отметка поставлена, то компоненте предписывается осуществлять поиск не только по актуальным вариантам адресов, но и по историческим версиям этих адресов. Если отметка снята, то компоненте предписывается осуществлять поиск только по актуальным вариантам адресов, игнорируя исторические версии этих адресов. Информация о том, какой версией является то или иное наименование адреса (актуальной или исторической) компонента берет из федеральной информационной адресной системы в режиме чтения как исходное данное, и не осуществляет присвоение или снятие этого признака своей активностью. +
    +
  • НЕ активно - подбор только среди актуальных версий адресов- значение по умолчанию
  • +
  • подбор среди актуальных и исторических версий адресов
Текст сообщения для строки результата поиска позволяет задать текст для сообщения (предупреждения), которое будет отображаться в случае, если по результатам поиска было найдено число совпадений, превышающее значение лимита по количеству возвращаемых строк в компоненте (настраивается в функции “ФИАС. Настройка - Количество строк”) пример возможного значения:Найдено более {limit} значений, уточните поиск - значение по умолчанию, где {limit} это указание значения параметра “Количество строк”
Прикрепить значение (Scroll Gravity) позволяет задать расположение уже выбранного значения при отображении в выпадающем списке доступных значений +
    +
  • По умолчанию (DEFAULT) - выбранное значение отображается в порядке своего следования в списке доступных значений для выбора
  • +
  • По центру (CENTER) - выбранное значение отображается по центру в выпадающем списке доступных значений для выбора
  • +
  • В верхней части (TOP)- выбранное значение отображается в верхней части выпадающего списка доступных значений для выбора
  • +
  • В нижней части (BOTTOM) - выбранное значение отображается в нижней части выпадающего списка доступных значений для выбора
Не действительно при не активном адресе (Invalid if address is not active) позволяет визуально помечать поле как невалидное на странице, в случае если в него было подгружено неактуальное значение адреса
Css class if not satisfy данное свойство доступно для управления при активном значении свойства Invalid If Address Is Not Actual и позволяет задать CSS-класс, который будет применяться к полю ФИАС, в случае если в него было подгружено неактуальное значение адреса
Тип иерархии адреса (Hierarchy Type) позволяет задавать иерархию адреса. Для данного свойства есть два метода getHierarchyType возвращает текущую иерархию и метод setHierarchyType позволяет менять текущую иерархию. ADMINISTRATIVE - административная, MUNICIPAL - муниципальная
+

Свойство ФИАС. Настройка

+

Подгрузка данных

+

Источник подгрузки значений адресов конфигурируется в файле standalone.xml проекта в секции datasource jndi-name=“java:jboss/datasources/fias-ds” pool-name=“FIASDS” enabled=“true” use-java-context=“true”.

+

Настройка секции на источник данных происходит при инициации проекта техническим специалистом и используется аналитиком “как есть”. В составе компоненты настройка параметров подключения и подгрузки данных не осуществляется.

+

+

+

Предписывает компоненте при отображении вариантов отфильтровать адреса по указанной в этом параметре подстроке.

+

Используется как дополнительный предустановленный фильтр к подстроке, вводимой пользователем.

+

Пример возможной настройки:

+

В свойстве “Фильтр по умолчанию” зададим значение, например, Ленина (рис.1)

+

+

рис.1 Настройка свойства Фильтр по умолчанию

+

При отображении результатов поиска по значению, например, Казань, среди вариантов удовлетворяющих этому значению, для выбора будут доступны только те значения, которые содержат в себе слово “Ленина” (рис.2)

+

+

рис.2 Результаты поиска с установленным фильтром

+

Без установленного фильтра результаты аналогичного поиска выглядели бы следующим образом (рис.3):

+

+

рис.3 Результаты поиска без установленного фильтра

+

+

позволяет указать компоненте максимально допустимое количество вариантов для отображения в выпадающем списке при подборе пользователем интересующего значения

+

В случае, если по результатам поиска было найдено число совпадений, превышающее значение данного ограничения, пользователю будет отображаться сообщение (предупреждение) заданной в свойствеMessage Text For Result Set

+

+

+

позволяет задать минимальный уровень адреса, который ограничит область поиска адреса по вводимой пользователем подстроке “сверху” - то есть указанным элементом адреса и его нижележащими в иерархии дочерними элементами.

+

Доступные следующие варианты уровней:

+
    + +
  • Субъект РФ
  • +
  • Район субъекта
  • +
  • Город
  • +
  • Район
  • +
  • Населенный пункт
  • +
  • Улица
  • +
  • Дом
  • +
+

При указании “Минимального уровня поиска адреса” в значение “Субъект РФ” поиск по введенной пользователем в компоненту подстроке будет осуществляться по всем Субъектам РФ и по всем Районам субъекта, и по всем Городам, и по всем Районам города, и по всем Населенным пунктам, и по всем Улицам.

+

Данную настройку могут ограничивать параметры:

+

“Фильтр по умолчанию” - тогда поиск уже не по всем регионам (и прочим элементам), а только по тем, которые содержат подстроку из фильтра

+

“Максимальный уровень адреса” - тогда поиск будет опускаться по иерархии только до того уровня детализации, который указан в параметре*“Максимальный уровень адреса”

+

+

+

позволяет задать максимальный уровень адреса, который ограничивает область поиска адреса по вводимой пользователем подстроке “снизу” - то есть указанным элементом адреса и его вышележащими в иерархии родительскими элементами.

+

Максимальный уровень должен быть больше минимального.

+

Доступные следующие варианты уровней:

+
    + +
  • Субъект РФ
  • +
  • Район субъекта
  • +
  • Город
  • +
  • Район
  • +
  • Населенный пункт
  • +
  • Улица
  • +
  • Дом - в данном случае значения результата поиска будут отображаться с домами
  • +
+

При указании “Максимального уровня поиска адреса” в значение “Улица” поиск по введенной пользователем в компоненту подстроке будет осуществляться по всем Улицам во всех Населенных пунктах, всех Районов города, всехГородов, всех Районов субъекта и всех Субъектов РФ.

+

Данную настройку могут ограничивать параметры:

+

“Фильтр по умолчанию” - тогда поиск уже не по всем улицам (и прочим родительским элементам), а только по тем, которые содержат подстроку из фильтра

+

“Минимальный уровень адреса” - тогда поиск будет подниматься по иерархии только до того уровня детализации, который указан в параметре*“Минимальный уровень адреса”

+

+

+

указывает компоненте на стиль отображения строки адреса - наименование адресных элементов (таких как город, улица, район и т.п.) отображать в принятых сокращениях (г., ул.,р-н) или полностью.

+
    + +
  • + +

    отображать полные наименования адресных элементов (рис.2)- значение по умолчанию

    +
  • +
  • + +

    отображать сокращения адресных элементов (рис.1)

    +
  • +
+

+

рис.1 Отображение с сокращениями адресных элементов

+

+

рис.2 Отображение без сокращения адресных элементов

+

Свойство ФИАС. Сохранение значения

+

+

В случае, если значение в поле ФИАС необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Для выбора доступны только колонки имеющий строковый тип в базе данных. В случае, если значение поля ФИАС не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется дляотображения значения, которое является константой, определённой в логике приложения.

+

+

Свойство ГАР. Настройка

+

Параметры: * gar.enable - параметр отвечающий за необходимость подключения gar-client. По дефолту true, для отключения задать false. * gar.elastic.url.host - хост на котором развернут elasticsearch. * gar.elastic.password - пароль для аутентификации elasticsearch.

+

Дополнительные парметры: * gar.elastic.url.port - порт на котором развернут elasticsearch. По дефолту 9200 * gar.elastic.username - логин для аутентификации elasticsearch. По дефолту elastic

+

позволяет указать компоненте максимально допустимое количество вариантов для отображения в выпадающем списке при подборе пользователем интересующего значения

+

В случае, если по результатам поиска было найдено число совпадений, превышающее значение данного ограничения, пользователю будет отображаться сообщение (предупреждение) заданной в свойствеMessage Text For Result Set img.png

+

img.png

+

позволяет задать минимальный уровень адреса, который ограничит область поиска адреса по вводимой пользователем подстроке “сверху” - то есть указанным элементом адреса и его нижележащими в иерархии дочерними элементами.

+

Доступные следующие варианты уровней:

+
    + +
  • REGION(Субъект РФ)
  • +
  • DISTRICT(Административный/Муниципальный Район)
  • +
  • SETTLEMENT(Сельское/городское поселение)
  • +
  • CITY(Город)
  • +
  • TOWN(Населенный пункт)
  • +
  • PLANNING_STRUCTURE(Элемент планировочной структуры)
  • +
  • STREET(Элемент улично-дорожной сети)
  • +
  • HOUSE(Дом)
  • +
  • APARTMENT(Квартира)
  • +
+

При указании “Минимального уровня поиска адреса” в значение “Субъект РФ” поиск по введенной пользователем в компоненту подстроке будет осуществляться по всем Субъектам РФ и по всем Районам субъекта, и по всем Городам, и по всем Районам города, и по всем Населенным пунктам, и по всем Улицам.

+

Данную настройку могут ограничивать параметры:

+

“Фильтр по умолчанию” - тогда поиск уже не по всем регионам (и прочим элементам), а только по тем, которые содержат подстроку из фильтра

+

“Максимальный уровень адреса” - тогда поиск будет опускаться по иерархии только до того уровня детализации, который указан в параметре*“Максимальный уровень адреса”

+

img_1.png

+

позволяет задать максимальный уровень адреса, который ограничивает область поиска адреса по вводимой пользователем подстроке “снизу” - то есть указанным элементом адреса и его вышележащими в иерархии родительскими элементами.

+

Максимальный уровень должен быть больше минимального.

+

Доступные следующие варианты уровней: - REGION(Субъект РФ) - DISTRICT(Административный/Муниципальный Район) - SETTLEMENT(Сельское/городское поселение) - CITY(Город) - TOWN(Населенный пункт) - PLANNING_STRUCTURE(Элемент планировочной структуры) - STREET(Элемент улично-дорожной сети) - HOUSE(Дом) - APARTMENT(Квартира)

+

При указании “Максимального уровня поиска адреса” в значение “STREET” поиск по введенной пользователем в компоненту подстроке будет осуществляться по всем Улицам во всех Населенных пунктах, всех Районов города, всехГородов, всех Районов субъекта и всех Субъектов РФ. При указании “Максимального уровня поиска адреса” в значение “HOUSE” поиск по введенной пользователем в компоненту подстроке будет осуществляться по всем Домам и Улицам во всех Населенных пунктах, всех Районов города, всехГородов, всех Районов субъекта и всех Субъектов РФ. При указании “Максимального уровня поиска адреса” в значение “APARTMENT” поиск по введенной пользователем в компоненту подстроке будет осуществляться по всем Квартирам, Домам и Улицам во всех Населенных пунктах, всех Районов города, всехГородов, всех Районов субъекта и всех Субъектов РФ.

+

Данную настройку могут ограничивать параметры:

+

“Фильтр по умолчанию” - тогда поиск уже не по всем улицам (и прочим родительским элементам), а только по тем, которые содержат подстроку из фильтра

+

“Минимальный уровень адреса” - тогда поиск будет подниматься по иерархии только до того уровня детализации, который указан в параметре*“Минимальный уровень адреса”

+

img_2.png

+

указывает компоненте на стиль отображения строки адреса - наименование адресных элементов (таких как город, улица, район и т.п.) отображать в принятых сокращениях (г., ул.,р-н) или полностью.

+
    + +
  • + +

    false -> отображать полные наименования адресных элементов - значение по умолчанию

    +
  • +
  • + +

    true -> отображать сокращения адресных элементов

    +
  • +
+

Свойство ГАР. Сохранение значения

+

+

В случае, если значение в поле ГАР необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Для выбора доступны только колонки имеющий строковый тип в базе данных. В случае, если значение поля ФИАС не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется дляотображения значения, которое является константой, определённой в логике приложения.

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

заполнить значением из переменной любого типа

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Сохранить значение в переменную процесса любого типа

+

сохранить значение в переменную процесса любого типа

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Значение какого типа возвращает компонента? Для ФИАС: В общем случае компонента возвращает значение тестового типа в виде длинного идентификатора (для записи в базу данных). Для использования значения выбранного адреса на экранной форме посредством компоненты Обработка событий, аналитику доступны несколько методов, которые возвращают разные значения. В условиях сравнения компоненты Обработка событий могут использоваться методы: Метод “Получить значение” возвращает идентификатор (так называемый GUID) выбранного адреса в строковом виде, например: {“version”:“1.0”,“aoid”:“b026a0f9-9478-4c61-a55f-95b38cb099c1”,“aoid_p1”:“c6d874d0-a7e8-46a1-b345-e2e1e9758c59”,“aoid_p2”:“625866a1-1278-4883-8dc5-ba34e0c463c4”,“aoid_p3”:“fc50add0-c3c7-4f07-99cd-8831166e6619”,“aoid_p4”:null,“aoid_p5”:null,“guid”:“b026a0f9-9478-4c61-a55f-95b38cb099c1”} Метод “Получить значение как текст” возвращает строку адреса в человекочитаемом виде в строковом виде, например “Респ Дагестан, р-н Буйнакский, с Верхнее Казанище, ул Ленина”. В секции Тогда компоненты Обработка событий могут использоваться методы: Метод"ФИАС.Задать значение" выставляет в компоненте адрес по идентификатору GUID ({“version”:“1.0”,“aoid”:“b026a0f9-9478-4c61-a55f-95b38cb099c1”,“aoid_p1”:“c6d874d0-a7e8-46a1-b345-e2e1e9758c59”,“aoid_p2”:“625866a1-1278-4883-8dc5-ba34e0c463c4”,“aoid_p3”:“fc50add0-c3c7-4f07-99cd-8831166e6619”,“aoid_p4”:null,“aoid_p5”:null,“guid”:“b026a0f9-9478-4c61-a55f-95b38cb099c1”}). Используется для полей - приемника информации об адресе (как показано на скриншоте). Метод “ФИАС. Получить значение” возвращает значение - идентификатор GUID, как из источника данных об адресе для последующей вставки в другое поле ФИАС. Метод “ФИАС. Получить значение"возвращает строку адреса в человекочитаемом виде в строковом виде,как из источника данных об адресе для последующей вставки в другое читаемое тестовое поле (например, Компонент Текстовое поле). Для ГАР: {“hierarchyId”:”{"indexId":"1415865","hierarchy":"MUNICIPAL","indexStructureType":"ADDRESS_OBJECT","withHouse":false}",“address”:“Автодорога Ад Москва-Уфа-Челябинск 1016 км 435 м”,“level”:6,“date”:“20000808”,“actual”:false,“okato”:“36228824000”,“oktmo”:“36628424”,“aoGUID=‘97e5e5dc-f63a-4c5f-bdbf-61d608e27895’”,“addressLevels”:{“regionName”:null,“regionCode”:null,“areaName”:null,“areaCode”:null,“cityName”:null,“cityCode”:null,“placeName”:“Ад Москва-Уфа-Челябинск 1016 км 435 м”,“placeCode”:null,“planName”:null,“planCode”:null,“streetName”:null,“streetCode”:null,“houseNumber”:null,“apartmentNumber”:null}}
Все ли свойства компоненты обязательны для заполнения? Нет.Свойства компоненты определяются в зависимости от решаемой задачи.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство ФИАС. Сохранение значения? Да. В случае, если функция “ФИАС. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ柘ミオミシム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ柘ミオミシム.html new file mode 100644 index 0000000..10dfdb5 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ柘ミオミシム.html @@ -0,0 +1,142 @@ + + + + + + + + Web-BPM Docs – ミ柘ミオミシム + + + + + + +
+
+ + + +
+
+

Время

+

Назначение

+

Время - это компонента, которая используется для ввода или отображения времени.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Время может использоваться для:

+
    + +
  1. Для сохранения введенной информации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Дата. Сохранение значения должна быть включена)
  2. +
  3. Для отображения значения, которое было введен пользователем приложения или является константой, определённой в логике приложения (в данном случае, функция компоненты Дата. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке)
  4. +
+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Ввести значение
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Время
Значение позволяет задать значение поля по умолчанию пример возможного значения: 22:00:00
Минимальное время позволяет задать минимально возможное значение времени (часы, минуты и секунды), меньше которого пользователь ввести не сможет пример возможного значения: 08:00:01
Максимальное время позволяет задать максимально возможное значение времени(часы, минуты и секунды), больше которого пользователь ввести не сможет 18:00:01
+

Свойство Время. Сохранение значения

+

+

В случае, если значение в поле Время необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Для выбора доступны только колонки имеющий тип в базе данных - Даты и времени (DATETIME, DATE и TIMESTAMP). В случае, если значение поля Время не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется дляотображения значения, которое было введено пользователем приложения или является константой, определённой в логике приложения.

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Сохранить значение в переменную процесса любого типа

+

Сохранить значение в переменную процесса любого типа

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Можно ли вносить данные в поле Время вручную? Да, ввод значения предусмотрен как с клавиатуры, так и выбор значения по значку в виде времени.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство Время. Сохранение значения? Да. В случае, если функция “Время. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
Обязательно при ручном вводе значения в поле Время указывать значение с разделителем в виде двоеточия, т.е. 11:11:11? Нет, необязательно указывать разделитель между числами. Введя значение 111111 и убрав фокус с поля оно автоматически отформатируется к виду 11:11:11.
Обязательно при ручном вводе значения в поле Время указывать полное значение времени, т.е. часы, минуты и секунды? Нет, необязательно. Но в таком случае те части значения, которые не были указаны, будут автоматически проставлены как 00, т.е. если ввести только 11, то убрав фокус с поля значение преобразуется в 11:00:00.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html new file mode 100644 index 0000000..6900046 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html @@ -0,0 +1,223 @@ + + + + + + + + Web-BPM Docs – ミ柘巾ソミーミエミーム紗禍クミケ ムミソミクムミセミコ + + + + + + +
+
+ + + +
+
+

Выпадающий список

+

Назначение

+

Выпадающий список - это компонента, которая используется для выбора пользователем одного значения из выпадающего списка значений, источником подгрузки данных для которого служит таблица (или представление) базы данных.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Выпадающий список может использоваться для:

+
    + +
  1. Для сохранения выбранного значения из списка доступных в базу данных и отображения значения из базы данных(в данном случае, функция компоненты Выпадающий список. Сохранение значения должна быть включена)
  2. +
  3. Для отображения значения из базы данных являющегося константой, определённой в логике приложения без сохранения выбранного значения пользователем (в данном случае, функция компоненты Выпадающий список. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке).
  4. +
+

Компонента Выпадающий список находится в разделе Компоненты - Поля - Выпадающий список.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента. пример возможного значения: Выберите район
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Район
Зависит от (parentControl) позволяет указать объект (родителя), например Выпадающий список, по идентификатору которого будут отображаться сведения в текущем зависимом элементе
Значение позволяет задать значение поля по умолчанию. При указании значения, компонентом будет осуществляться поиск соответствия между этим значением и содержимым колонки, указанной в параметре “Возвращать дополнительно из”. После успешного сопоставления пользователю будет отображаться значение из колонки, указанной в параметре “Показывать пользователю”. пример возможного значения: В свойстве компоненты “Возвращать дополнительно из” функции “Подгрузка данных” указана колонка базы данных, содержащее в себе значение кода записи. При открытии страницы с Выпадающим списком по умолчанию, при отсутствии иного значения подгруженного из базы данных (через функцию Выпадающийсписок. Сохранение значения), в него автоматически будет выставлено значение из таблицы базы данных с кодом НУ и отображаться значение из колонки “Показывать пользователю”, в данном случае это Наименование статуса (name)
Прикрепить значение (Scroll Gravity) позволяет задать расположение уже выбранного значения при отображении в выпадающем списке доступных значений позволяет задать расположение уже выбранного значения при отображении в выпадающем списке доступных значений +
    +
  • По умолчанию (DEFAULT) - выбранное значение отображается в порядке своего следования в списке доступных значений для выбора
  • +
  • По центру (CENTER) - выбранное значение отображается по центру в выпадающем списке доступных значений для выбора
  • +
  • В верхней части (TOP)- выбранное значение отображается в верхней части выпадающего списка доступных значений для выбора
  • +
  • В нижней части (BOTTOM) - выбранное значение отображается в нижней части выпадающего списка доступных значений для выбора
Исключить условия графа данное свойство позволяет подгружать для отображения значения в поле минуя условия (ограничения), заданные в Графе сущностей компоненты +
    +
  • Не активно - в данном состоянии, при подгрузке значений отсекаются значения не соответствующие условиям, заданным в Графе сущностей компоненты
  • +
  • Активно - в данном состоянии, при подгрузке значений допускается отображение значений, не соответствующих условиям, заданным в Графе сущностей компоненты, но без возможности их повторного выбора в выпадающем списке
Помечать невалидным (Mark invalid if not Satisfy) данное свойство доступно для управления при активации значении свойства Exclude Graph Conditions и позволяет визуально помечать поле как невалидное на странице, в случае если в него было подгружено значение, не соответствующие условиям Графа сущностей элемента +
    +
  • Не активно - в данном значении, поле не помечается на странице как невалидное и отображается стандартным образом
  • +
  • Активно - в данном значении, убрав фокус с поля, оно помечается на странице как невалидное
Css class if not Satisfy данное свойство доступно для управления при активном значении свойства Exclude Graph Conditions и позволяет задать CSS-класс, который будет применяться, в случае если в поле было подгружено значение, не соответствующие условиям Графа сущностей элемента
Tooltip if not Satisfy позволяет отображать всплывающую подсказку,в случае если в поле было подгружено значение, не соответствующие условиям Графа сущностей элемента. Данное свойство доступно для управления при: активном значении свойства Exclude Graph Conditions и заданному значению в поле Css Class If Not Satisfy пример возможного значения: not_valid
+

Свойство компоненты: Выпадающий список. Подгрузка данных

+

+

позволяет задать источник подгрузки/сохранения данных в компоненту из/в объекта базы данных (таблицы или представления) с указанием следующих дополнительных настроек:

+
    + +
  • Граф сущностей элемента настраивается в соответствии с п. Настройка Графа сущностей. Является обязательным к заполнению и настройке.
  • +
  • Возвращать значение дополнительно из - по умолчанию компонента возвращает идентификатор записи выбранной из справочника значений. Настройка данного параметра позволяет указать компоненте, какое значение необходимо дополнительно считать и вернуть, кроме значения идентификатора выбранной пользователем записи.
  • +
  • Тип отображения (Display Type) - это свойство,позволяющее выбрать тип для отображения значения в поле: +
      + +
    • Из одной колонки - значение по умолчанию
    • +
    • Из нескольких колонок - позволяет указать перечень колонок, значения которых будут склеиваться в одну строку при отображении на странице с определяемым разделителем значений (точка, запятая, пробел и другие)
    • +
    +
  • +
  • + +

    Разделитель - символ или пробел, который будет разделять между собой значения из разных колонок таблиц(ы) приводимых в одну строку (доступно для настройки при Тип колонки - Из нескольких колонок)

    +
  • +
  • Порядок сортировки (Sort Order) - позволяет задать порядок сортировки отображаемых значений в списке для выбора, принимает значения: +
      + +
    • + +

      по возрастанию - значения будут сортироваться от меньшего к большему

      +
    • +
    • + +

      по убыванию - значения будут сортироваться от большего к меньшему

      +
    • +
    +
  • +
  • + +

    Показывать пользователю - позволяет задать элемент базы данных, значение которого будет отображено пользователю в Выпадающем списке(доступно для настройки при Тип колонки - Из одной колонки)

    +
  • +
  • + +

    Связаны по - позволяет указать колонку компоненты указанной в свойстве “Зависит от”, обеспечивающую связь между родительской и текущей компонентами

    +
  • +
  • + +

    Активировать фильтрацию по - позволяет задать колонку, по которой можно будет динамически активировать фильтр при использовании метода “Задать фильтр” (Set_Filter) в компоненте Обработка Событий в отношении настраиваемой компоненты

    +
  • +
  • + +

    Datasource Jndi Name - позволяет задать иной источник (базу данных) для выполнения запроса, заданного с помощью элементов базы данных в редакторе Графа сущностей элемента. Значение данного свойства может быть задано следующим образом:java:/webbpm/AppRepDS, а сам адрес базы данных, логин и пароль для подключения должен быть указан в файлеstandalone.xml(аналогично тому, как указывается, например, подключение к базе данных безопасности) (рис.1)

    +
  • +
+

+

рис.1 Настройка файла standalone.xml

+

В случае, если данное свойство не заполнено, запрос выполняется в базе данных, указанной в конфигурации проекта (во вкладке База данных). - Сортировать по - позволяет задать элемент базы данных, по значению которого будет производиться сортировка

+

Пример возможной настройки:

+

+

Свойство Выпадающий список. Сохранение значения

+

+

В случае, если значение в поле Выпадающий список необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение.В случае, если значение поля Выпадающий список не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется дляотображения значения, которое является константой, определённой в логике приложения.

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Сохранить значение в переменную процесса любого типа

+

Сохранить значение в переменную процесса любого типа

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Статичный выпадающий список от компоненты Выпадающий список? Компонента Статичный выпадающий списокиспользуются для выбора значений, которые указываются аналитиком вручную при настройке компоненты,Выпадающий списокиспользуется для выбора значений,которые подгружаются из таблицы базы данных.
Все ли свойства компоненты обязательны для заполнения? Нет.Свойства компоненты определяются в зависимости от решаемой задачи.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство Выпадающий список. Сохранение значения? Да. В случае, если функция “Выпадающий список. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
В выпадающем списке есть возможность ручного ввода символов для поиска значения? Да, при вводе символов в поле, компонента фильтрует содержимое в соответствии с введенным пользователем значением.
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ頒ームひー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ頒ームひー.html new file mode 100644 index 0000000..f264258 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ頒ームひー.html @@ -0,0 +1,191 @@ + + + + + + + + Web-BPM Docs – ミ頒ームひー + + + + + + +
+
+ + + +
+
+

Дата

+

Назначение

+

Дата - это компонента, которая используетсядля ввода или отображения даты или даты-времени.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Дата может использоваться для:

+
    + +
  1. Для сохранения информации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Дата. Сохранение значения должна быть включена)
  2. +
  3. Для отображения значения, которое был введено пользователем приложения или является константой, определённой в логике приложения (в данном случае, функция компоненты Дата. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке).
  4. +
+

Компонента Дата находится в разделе Компоненты - Поля - Дата.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Формат позволяет задать формат для вывода +
    +
  • Только дата (в данном случае, значение в поле будет отображаться без времени)
  • +
  • Дата со временем
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите год
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Год
Значение позволяет задать статичное значение поля по умолчанию для отображения на странице, состоящее из двух частей: значения даты и значения времени (часы, минуты и секунды) (значение времени будет отображаться на пользовательской странице при условии, что в свойстве элемента Формат указано Дата со временем) пример возможного значения: 23.03.2021 11:11:11
Тип минимальной даты позволяет выбрать тип настройки для указания минимально допустимого значения даты в поле +
    +
  • Статичное (STATIC) - при выборе данного типа отображается свойство для заполненияМинимальная дата
  • +
  • Текущая (CURRENT) - при выборе данного типа в качестве минимально допустимого значения для ввода будет текущая дата хоста, на котором работает браузер пользователя
  • +
  • Другой объект (OTHER_OBJECT) - при выборе данного типа отображается свойство Объект для минимальной даты (Min Date Object)
Тип максимальной даты позволяет выбрать тип настройки для указания максимально допустимого значения даты в поле +
    +
  • Статичное (STATIC) - при выборе данного типа отображается свойство для заполненияМаксимальная дата
  • +
  • Текущая (CURRENT) - при выборе данного типа в качестве минимально допустимого значения для ввода будеттекущая дата хоста, на котором работает браузер пользователя
  • +
  • Другой объект (OTHER_OBJECT) - при выборе данного типа отображается свойство Объект для максимальной даты (Max Date Object)
Минимальная дата позволяет задать статичное минимально возможное значение даты, меньше которого пользователь ввести не сможет. Указание данного значения доступно, если в свойстве Тип для минимального значения (Min Date Type) выбрано - Статичное (STATIC). Минимальное значение состоит из двух частей: значения даты и значения времени (часы, минуты и секунды)(значение времени будет учитываться при условии, в свойстве элементаФормат указано Дата со временем) пример возможного значения: 23.03.2021 11:11:11
Обьект минимальной даты позволяет указать объект (компоненту) с типом Дата на настраиваемой странице, значение которой будет выступать в качестве минимально допустимого значения даты для ввода пользователем. Указание данного значения доступно, если в свойстве Тип для минимального значения (Min Date Type) выбрано -Другой объект (OTHER_OBJECT)
Максимальная дата позволяет задать статичное максимально возможное значение даты, больше которого пользователь ввести не сможет. Указание данного значения доступно, если в свойстве Тип для максимального значения (Max Date Type) выбрано - Статичное (STATIC). Максимальное значение состоит из двух частей: значения даты и значения времени (часы, минуты и секунды)(значение времени будет учитываться при условии, в свойстве элементаФормат указано Дата со временем) пример возможного значения: 31.12.2017 11:11:11
Обьект максимальной даты позволяет указать объект (компоненту) с типом Дата на настраиваемой странице, значение которой будет выступать в качестве максимально допустимого значения даты для ввода пользователем. Указание данного значения доступно, если в свойстве Тип для максимального значения (Max Date Type)выбрано -Другой объект (OTHER_OBJECT)
В виде календаря позволяет задать возможность отображения элемента на странице в виде развернутого календаря Принимает два значения: +
    +
  • Активно - элемент на странице будет отображаться в виде календаря с возможностью выбора даты
  • +
  • Не активно - элемент на странице будет отображаться в виде поля для ручного ввода значения или выбора значения из календаря
+

Свойство Дата. Сохранение значения

+

+

В случае, если значение в поле Дата необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Для выбора доступны только колонки имеющие тип в базе данных - Даты и времени (DATETIME, DATE и TIMESTAMP).В случае, если значение поля Дата не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется дляотображения значения, которое было введено пользователем приложения или является константой, определённой в логике приложения.

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить_роли_текущего_пользователя

+

Сохранить значение в переменную процесса любого типа

+

Сохранить значение в переменную процесса любого типа

+

Сместить дату из поля на период вперед или назад

+

Определить текущую дату и сместить её вперед или назад на заданный период

+

Она относится к той группе функций, чья функциональность применяется и может быть полезной не сразу после добавления в исходную компоненту, а только при последующем использовании в компоненте “Обработка событий”, когда у исходной компоненты появляется несколько новых доступных методов при конструировании алгоритма обработки событий на web-странице. Например, для такого паттерна обработки: ‘ЕСЛИ в исходном компоненте Дата выбрано(изменилось) значение, ТО в другую компоненту Дата вывести значение из исходного, но на заранее заданный период (или годы, или месяцы, или дни) в будущее или прошлое’. Функция имеет параметры, позволяющие аналитику задать направление и величину сдвига во времени.

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Можно ли проставлять текущую серверную дату при открытии страницы с данным полем? Да, можно. Для этого необходимо добавить соответствующую функцию (Определить текущую дату и сместить её вперед или назад на заданный период) в функции поля. Необходимо отметить, что для проставления текущей даты не нужно заполнять свойства скрипта.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство Дата. Сохранение значения? Да. В случае, если функция “Дата. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
Можно ли вносить данные в поле Дата вручную? Да,ввод значения предусмотрен как с клавиатуры, так и выбор значения по значку в виде календаря.
Обязательно при ручном вводе значения в поле Дата указывать значение с разделителем в виде точки, т.е. 01.01.2021? Нет, необязательно указывать разделитель между числами. Введя значение 01012021 и убрав фокус с поля оно автоматически отформатируется к виду 01.01.2021.
Можно ли проставлять дату со смещением при открытии страницы с данным полем? Да,можно. Для этого необходимо добавить соответствующий скрипт (Определить текущую дату и сместить её вперед или назад на заданный период) в функции поля. В данном случае, необходимо заполнить свойства функции и указать необходимый диапазон смещения от текущей даты.
Какое значение будет проставлено в поле Дата если ввести толькоодну часть значения, например, день? Если ввести только значение дня в поле Дата, то убрав фокус с поля оставшаяся часть месяц и год будут проставлены в соответствии с текущим месяцем и годом на сервере приложения.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ頒オミスミオミカミスミセミオ_ミソミセミサミオ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ頒オミスミオミカミスミセミオ_ミソミセミサミオ.html new file mode 100644 index 0000000..65accef --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ頒オミスミオミカミスミセミオ_ミソミセミサミオ.html @@ -0,0 +1,174 @@ + + + + + + + + Web-BPM Docs – ミ頒オミスミオミカミスミセミオ ミソミセミサミオ + + + + + + +
+
+ + + +
+
+

Денежное поле

+

Назначение

+

Денежное поле - это компонента, которая используется для ввода и отображения денежного значенияна форме страницы.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Денежное поле может использоваться для:

+
    + +
  1. Для сохранения введеннойинформации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Денежное поле. Сохранение значения должна быть включена) (рис.2)
  2. +
  3. Для отображения числа, которые было введено пользователем приложения или является константой, определённой в логике приложения(в данном случае, функция компоненты Денежное поле. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке) (рис.3)
  4. +
+

Компонента Денежное поле находится в разделе Компоненты - Поля - Денежное поле.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите сумму
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Введите сумму
Значение по умолчанию позволяет задать значение поля по умолчанию, которое будет отображаться на странице пример возможного значения: 100
Минимальное возможное значение позволяет задать минимально возможное значение числа, меньше которого пользователь ввести не сможет пример возможного значения: 0
Максимальное возможное значение позволяет задать максимально возможное значение числа, больше которого пользователь ввести не сможет пример возможного значения: 999999
Шаг увеличения позволяет задать шаг увеличения значения числа пример возможного значения: 1
Количество знаков после запятой позволяет задать количество знаков после запятой пример возможного значения: 2
Префикс позволяет задать префикс, который будет отображаться перед суммой пример возможного значения: руб
Разделитель позволяет задать разделитель целой и дробной части суммы пример возможного значения:,
Разделитель тысяч позволяет задать разделитель тысяч пример возможного значения: .
+

Свойство Текстового поля (с возможностью сохранения): Сохранение значения

+

Указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Подгрузка данных по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации скриптов (

+

- скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Включить вычисление математических операций

+

Включить вычисление математических операций

+

Включить конвертирование значений

+

TODO desribe function

+

Функция, которая не имеет настраиваемых аналитиком параметров, но будучи задействованной, позволяет осуществить преобразование значения в исходном компоненте из текущего типа (чаще всего, в компоненте Поле ввода с подбором значенияиз типа данных ANY) в целочисленный тип данных.

+

Она относится к той группе функций, чья функциональность применяетсяи может быть полезной не сразу после добавленияв исходную компоненту, а только при последующем использовании в компоненте “Обработка событий”, когда у исходной компоненты появляется нескольконовых доступных методов при конструировании алгоритма обработки событий на web-странице. Например, для такого паттерна обработки: ‘ЕСЛИ в компоненте Поле ввода с подбором значения выбрано (изменилось) значение, ТО в компоненту числовое поле вывести идентификатор(первичный ключ) этого значения’

+

+

Рис.1 Активация функции на компоненте Поле ввода с подбором значения

+

+

Рис.2 Числовое поле, в которое будем записывать идентификатор значения из компонента Поле ввода с подбором значения

+

+

Рис. 3 Пример алгоритма заполнения числового поля идентификатором значения, выбранного в поле с Постановщиком задачи, при условии расширения функциональности исходной компоненты Поле ввода с подбором значения функцией Сконвертировать значение в целочисленный тип; (появился новый метод Сконвертировать в число; у исходной компоненты)

+

+

Рис.4 Пример невозможности построения алгоритма из-за отсутствия необходимого метода Сконвертировать в число, вследствие удаления функции Сконвертировать значение в целочисленный тип из исходной компоненты Поле ввода с подбором значения Постановщик задачи (пропал метод Сконвертировать в число у исходной компоненты)

+

После запуска web-приложения (in runtime mode) выбираем в компоненте Список с поиском одно из значений (например, постановщика задачи с фамилией Дякин), после этого значение идентификатора (первичный ключ сотрудника по фамилии Дякин в справочнике) переносится в поле"Идентификатор постановщика", а в консоли браузера можно наблюдать сообщение о срабатывании компоненты Обработка событий, которое показывает выполненное функцией действие.

+

+

Рис 5.Выбираем Постановщика задачи

+

+

Рис.6 Функция заполняет числовое поле идентификатором

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Денежное поле от компоненты Числовое поле? Компонента Денежное полеиспользуются для отображения денежных значений на странице, числовое полеиспользуется для отображения и ввода чисел.
Все ли свойства компоненты обязательны для заполнения? Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..4d37f63 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,88 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミ慴スミセミウミセムムびミセムミスミセミオ ミソミセミサミオ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить “Многострочное поле” на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице добавления департамента поле *Многострочного ввода (с возможностью сохранения)*с наименованием “Описание записи справочника” и следующими свойствами:

+
    + +
  • имя поля - Описание записи справочника
  • +
  • к полю должен быть применен CSS-класc: font-mini
  • +
  • поле должно иметь подсказку - Описание записи справочника
  • +
  • поле должно иметь надпись - Марка и номер авто принадлежащая организации
  • +
  • поле должно иметь ограничение в 20 символов
  • +
  • поле должно иметь маску ввода: A999AA AAAAAAAAAAAA
  • +
  • сохранение введенного значения должно осуществляться в базу данныхв таблицу org_charts в колонку avto_number
  • +
+

Решение задачи:

+

Предполагается, что страница с добавлением нового департамента уже создана бизнес-аналитиком. Для добавления на страницу и настройки компоненты Поле многострочного ввода (с возможностью сохранения) необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Многострочное поле из блока Компоненты - Поля - Многострочное поле (рис.1)
  • +
  • произвести настройки свойств согласно условиям задачи (рис.2). В этом случае стоит обратить внимание особенное внимание на свойство “Маска ограничивающая ввод”.
  • +
+

+ +
+
рис.1. Добавление компоненты Поле многострочного ввода на страницу   
+
+ +

+ +
+
рис.1. Добавление компоненты Поле многострочного вводана страницу             
+рис.2. Настройка компоненты Поле многострочного вводапо условию задачи
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.3).

+

+ +
+
 рис. 3. Визуальное отображение выполнения условий задачи
+
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ渙オムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ渙オムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..7e5f967 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ渙オムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,88 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミ渙オムミオミコミサム紗ミームひオミサム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить Переключатель на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице переключатель и будет иметь следующие настройки:

+
    + +
  • надпись поля - Должность
  • +
  • список значений из таблицы - employees
  • +
  • колонка сортировки - колонка position в таблице employees
  • +
  • колонка наименования - колонка position в таблице employees
  • +
  • колонка с кодом - колонка position в таблице employees
  • +
  • порядок сортировки - по возрастанию
  • +
+

Решение задачи:

+

Предполагается, что страница уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***, в структуру сущностей которой включена необходимаятаблица ***employees***. Для добавления на страницу и настройки текстового поля необходимо сделать следующее:

+
    + +
  • добавить внутрь **Формы**компоненту переключатель с возможностью сохранения (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление переключателя на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..30c2e97 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,109 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミ「ミオミコムムひセミイミセミオ ミソミセミサミオ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить Текстовое поле на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице добавления нового департамента текстовое поле, значение которого будет сохраняться в базу данных и будет иметь следующие настройки:

+
    + +
  • надпись поля - Название департамента
  • +
  • обязательно для заполнения пользователем приложения
  • +
  • ввод текста в поле должен осуществляться с использованием типа регистра -Первая буква-заглавная, то есть каждое новое слово в поле будет начинаться с заглавной буквы
  • +
  • поле должно иметь подсказку -Введите название департамента
  • +
  • к полю должны быть применены CSS-классы: фиксированный заголовок (fixed-label), размерность поля на странице должна быть максимальная (width-full)
  • +
  • сохранение введенного значения должно осуществляться в базу данных в таблицу org_unit колонку Департамент (name)
  • +
+

Решение задачи:

+

Предполагается, что страница с добавлением нового департамента уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***, в структуру сущностей которой включена необходимая, в данном случае, таблица org_unit, в которую будет сохраняться введенное значение (наименование департамента). Для добавления на страницу и настройки текстового поля необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Текстовое поле (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.2)
  • +
+

+ +
+
рис.1. Добавление текстового поля на страницу            
+рис.2. Настройка текстового поля по условию задачи
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены, как, например, текстовое поле обязательно для заполнения (рис.3) и каждое новое слово вводимого значения в поле автоматически** начинается с Заглавной буквы** (рис.4).

+


+

+ +
+
рис.3. Визуальное отображение условия обязательности поля       
+рис.4. Визуальное отображение выполнения условия: тип регистра Первая буква - заглавная  
+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミエミオミスミオミカミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミエミオミスミオミカミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..89282a6 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミエミオミスミオミカミスミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,89 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミエミオミスミオミカミスミセミオ ミソミセミサミオ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить денежное поле на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Денежное поле (с возможностью сохранения) - стоимость услуги, значение которого будет сохраняться в базу данных и будет иметь следующие настройки:

+
    + +
  • надпись поля - Стоимость услуги
  • +
  • поле должно иметь всплывающую подсказку - Введите стоимость услуги в рублях
  • +
  • минимальное возможное значение должно быть равно 0
  • +
  • максимальное возможное значение должно быть равно 999999
  • +
  • шаг увеличения значения должен быть равно 10
  • +
  • количество знаков после запятой должно быть равно2
  • +
  • префикс значение должно быть - руб
  • +
  • сохранение введенного значения должно осуществляться в базу данныхв таблицу Список услуг (service) колонку Стоимость (price)
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница Карточка услуги уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***, в структуру сущностей которой включена необходимая, в данном случае, ***таблица Список услуг (service)***, в которую будет сохраняться введенное значение (стоимость услуги). Для добавления на страницу и настройки денежного поля необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Денежное поле с возможностью сохранения (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление денежного поля на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ「ミオミコムム_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ「ミオミコムム_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..7085e40 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミコミセミシミソミセミスミオミスムびダミ「ミオミコムム_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,99 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミコミセミシミソミセミスミオミスムび ミ「ミオミコムム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить компоненту Текст на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице добавления нового департамента элемент Текст, который будет иметь следующие настройки:

+
    + +
  • надпись поля - Создание департамента
  • +
  • поле должно иметь подсказку - Новая карточка департамента
  • +
  • к полю должны быть применены CSS-классы: заголовок (title)
  • +
+

Решение задачи:

+

Предполагается, что страница с добавлением нового департамента уже создана бизнес-аналитиком. Для добавления на страницу и настройки компоненты Текст необходимо сделать следующее:

+
    + +
  • добавить внутрь Вертикального контейнера компоненту Текст( рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.2)
  • +
+

+ +
+
рис.1. Добавление компоненты Текст на страницу                     
+рис.2. Настройка компоненты Текст по условию задачи
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены, как, например, текст виден пользователю и имеет всплывающую подсказку (рис.3).

+

+ +
+
  рис.3. Визуальное отображение выполнения условий задачи
+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミスミオムミコミセミサム糊コミセ_ミソミセミサミオミケ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダム\ミーミイムひセミシミームひクムミオムミコミクミシ_ミキミーミソミセミサミスミオミスミクミオミシ_ミソミセムミサミオミエミスミオミウミセ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミスミオムミコミセミサム糊コミセ_ミソミセミサミオミケ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダム\ミーミイムひセミシミームひクムミオムミコミクミシ_ミキミーミソミセミサミスミオミスミクミオミシ_ミソミセムミサミオミエミスミオミウミセ_.html new file mode 100644 index 0000000..69b1bc5 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミスミオムミコミセミサム糊コミセ_ミソミセミサミオミケ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダム\ミーミイムひセミシミームひクムミオムミコミクミシ_ミキミーミソミセミサミスミオミスミクミオミシ_ミソミセムミサミオミエミスミオミウミセ_.html @@ -0,0 +1,116 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミスミオムミコミセミサム糊コミセ ミソミセミサミオミケ ミ頒ームひー ミスミー ムムびミーミスミクムム ム ミーミイムひセミシミームひクムミオムミコミクミシ ミキミーミソミセミサミスミオミスミクミオミシ ミソミセムミサミオミエミスミオミウミセ? + + + + + + +
+
+ + + +
+
+

Как добавить несколько полей Дата на страницу с автоматическим заполнением последнего?

+

Постановка задачи: необходимо реализовать на пользовательской странице два элемента Дата (с возможность сохранения), значение которых будут сохраняться в базу данных и будут иметь следующие настройки:

+

Поле Дата №1 (задаем условия так, чтобы определялась текущая дата):

+
    + +
  • надпись - “С”
  • +
  • минимальная дата - 01.11.2017
  • +
  • в свойства поля необходимо добавить функцию “Определить текущую дату и сместить её вперед или назад на заданный период”, которая имеет условия: +
      + +
    • чекбокс “В будущее”
    • +
    +
  • +
+

Поле Дата №2 (задаем условия таким образом, чтобы дата смещалась на 2 года от текущей):

+
    + +
  • надпись - “По”
  • +
  • в свойства поля необходимо добавить функцию “Определить текущую дату и сместить её вперед или назад на заданный период”, которая имеет условия: +
      + +
    • чекбокс “В будущее” (истина)
    • +
    • количество лет - 2
    • +
    +
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница Карточка задачи уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***, в структуру сущностей которой включена необходимая таблица, в которую будет сохраняться введенноезначение. Для добавления на страницу и настройки полей Дата (с возможностью сохранения) необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы две компоненты* Дата,* расположенного в блоке Компоненты - Поля - Дата (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.2, рис.3)
  • +
+

+ +
+
  рис.1. Добавление компоненты Дата на страницу                            
+  рис. 2 и рис.3 Настройка компоненты
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.4)
+

+

+ +
+
 рис.4. Визуальное отображение выполнения условий задачи
+
+ +


+

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ柘ミオミシム柔ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ柘ミオミシム柔ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..09cb576 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ柘ミオミシム柔ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,95 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミソミセミサミオ ミ柘ミオミシム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить поле Время на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Время (с возможность сохранения), значение которого будет сохраняться в базу данных и будет иметь следующие настройки:

+
    + +
  • всплывающая подсказка - Пожалуйста введите время
  • +
  • подсказка - Время
  • +
  • минимальное время - 08:00
  • +
  • максимальное время - 22:00
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница Карточка задачи уже создана бизнес-аналитиком, где имеется*основная компонента Форма, в структуру сущностей которой включена необходимая таблица, куда будет сохраняться введенноезначение. Для добавления на страницу и настройки поля Время необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Время с возможностью сохранения (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.2)
  • +
+

+ +
+
   рис.1. Добавление компоненты Время на страницу     
+   рис.2. Настройка компоненты Время
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.3)
+

+

+ +
+
   рис.3. Визуальное отображение выполнения условий задачи 
+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..8f9402c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミソミセミサミオ_ミ頒ームひー_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,93 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミソミセミサミオ ミ頒ームひー ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить поле Дата на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Дата (с возможность сохранения), значение которого будет сохраняться в базу данных и будет иметь следующие настройки:

+
    + +
  • надпись - Дата создания департамента
  • +
  • всплывающая подсказка - Заполняется датой перехода в систему
  • +
  • минимальная дата - 01.11.2017
  • +
  • формат - Только дата
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница Карточка задачи уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***, в структуру сущностей которой включена необходимая таблица, в которую будет сохраняться введенноезначение. Для добавления на страницу и настройки поля Дата необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Дата с возможностью сохранения (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.2)
  • +
+

+ +
+
рис.1. Добавление компоненты Дата на страницу            
+рис.2. Настройка компоненты Дата
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.3)

+

рис.3. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミソミクムミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミソミクムミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..f540ec8 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミソミクムミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,239 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ムミソミクムミセミコ ム ミソミセミクムミコミセミシ ミエミサム ミイム巾アミセムミー ミセミエミスミセミウミセ ミキミスミームミオミスミクム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить список с поиском для выбора одного значения на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице Создания проекта элемент Администратор проекта (Список с поиском для выбора одного значения), выбранное значение которого будет сохраняться в базу данных и вложенные компоненты которого будут иметь следующие настройки:

+

Список с поиском (с возможностью сохранения):

+
    + +
  • надпись поля - Администратор
  • +
  • недоступно для управления пользователем
  • +
  • обязательно для заполнения пользователем приложения
  • +
  • должно иметь подсказку - Выберите сотрудника
  • +
  • подлежит сохранению в базу данных
  • +
  • значение поля должно сохраняться в таблицу Проекты (projects) в колонку Администратор проекта (admin_employee_id)
  • +
  • в Граф сущностей должна быть добавлена таблица Список сотрудников(employees)
  • +
  • колонка должна быть составной и включать в себя поля Фамилия, Имя, Отчество, электронный адрес из таблицы Список сотрудников (employees). Разделителем должен быть пробел. Например, Петров Иван Алексеевич (petrov@cg.ru)
  • +
+

Кнопка выбора (вызова диалога):

+
    + +
  • надпись на кнопке - +
  • +
+

Группа фильтров должна включать в себя фильтры, расположенные в двух вертикальных контейнерах параллельных друг другу:

+
    + +
  • Фильтр по текстовому полю (по фамилии сотрудника) +
      + +
    • надпись поля - Фамилия
    • +
    • подсказка - Укажите фамилию
    • +
    • фильтровать по… - таблице Список сотрудников и колонке Фамилия (name_last)
    • +
    • операция фильтрации - Содержит всю подстроку
    • +
    +
  • +
  • Фильтр по текстовому полю (по имени сотрудника) +
      + +
    • надпись поля - Имя
    • +
    • подсказка - Укажите имя
    • +
    • фильтровать по… - таблице Список сотрудников иколонке Имя(name_first)
    • +
    • операция фильтрации - Содержит всю подстроку
    • +
    +
  • +
  • Фильтр по текстовому полю (по отчеству сотрудника) +
      + +
    • надпись поля -Отчество
    • +
    • подсказка - Укажите отчество
    • +
    • фильтровать по… - таблице Список сотрудников иколонке Отчество (name_middle)
    • +
    • операция фильтрации - Содержит всю подстроку
    • +
    +
  • +
  • Фильтр по текстовому полю (по e-mail сотрудника) +
      + +
    • надпись поля - E-mail
    • +
    • подсказка -Укажите весь email или его часть
    • +
    • фильтровать по… -таблице Список сотрудников и колонке Электронный адрес(user_mail)
    • +
    • операция фильтрации - Содержит всю подстроку
    • +
    +
  • +
  • Фильтр по выпадающему списку (по организации) +
      + +
    • надпись поля -Организация
    • +
    • подсказка -Выберите значение из списка в настройках фильтрации: правило обработки -ИЛИ
    • +
    • фильтровать по… -таблице Список сотрудников иколонке Организация(legal_entity_id)
    • +
    • подгрузка данных:
    • +
    • источником данных служит - таблица Организация (legal_entities), заданная в Графе сущностей сортировка производится по полю - Наименование (name) таблицы Организация (legal_entities) на странице пользователю отображается значение поля -Наименование (name) таблицы Организация (legal_entities) дополнительно возвращаться значение - Идентификатор(legal_entity_id) таблицы Организация (legal_entities) значение фильтра, которое будет передаваться другому элементу - Идентификатор (legal_entity_id) таблицы Организация (legal_entities)
    • +
    • операция фильтрации: Равно
    • +
    +
  • +
+

Таблица:

+
    + +
  • в Граф сущностей должны быть включены таблицы -Список сотрудников (главная сущность) и Организация, связанные по ключу legal_entity_id
  • +
  • должны отображаться три колонки: +
      + +
    1. Составная колонка ФИО из полей Фамилия, Имя, Отчество таблицы Список сотрудников(employees)
    2. +
    3. E-mail из поля Электронный адрес (user_mail) таблицы Список сотрудников(employees)
    4. +
    5. Организация из поля Наименование (name) таблицы Организация (legal_entities)
    6. +
    +
  • +
  • сортировка должна осуществляться по возрастанию по колонке Фамилия (name_last) таблицыСписок сотрудников(employees)
  • +
+

Решение задачи:

+

Предполагается, что страница с Созданием проекта уже реализована бизнес-аналитиком, где имеется основная компонента Форма, в структуру сущностей которой включена необходимая, в данном случае, ***таблица Проекты (projects)***, в которую будет сохраняться выбранное значение (Администратор проекта). Для добавления на страницу и настройки Списка с поиском для выбора одного значениянеобходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Список с поиском для выбора одного значения и для удобства переименовать ее, например как, Администратор
  • +
  • произвести настройку всех вложенных компонент согласно условию задачи
  • +
+

Настройка вложенных компонент:

+

Список с поиском с возможностью сохранения (рис.1,рис.1.1, рис.1.2)

+ +
+
рис.1 Настройка основных параметров Списка с поиском      
+рис.1.1 Настройка Графа сущностей Списка с поиском     
+рис.1.2 Настройка подгрузки данных Списка с поиском с возможностью сохранения         
+
+ +

Кнопка выбора (рис.2)

+

Фильтр по Фамилии сотрудника (рис.3)

+

Фильтр по Имени сотрудника (рис.4)

+


+

+ +
+
рис.2 Настройка Кнопки выбора  
+рис.3 Настройка Фильтра по фамилии сотрудника           
+рис.4 Настройка Фильтра по имени сотрудника  
+
+ +

Фильтр по Отчеству сотрудника (рис.5)

+

Фильтр по E-mail сотрудника (рис.6)

+

Фильтр по Организации (рис.7)

+


+
+

+ +
+
  рис.5 Настройка Фильтра по отчеству сотрудника   
+  рис.6 Настройка Фильтра по E-mail сотрудника       
+  рис.7 Настройка Фильтра по организации  
+
+ +

Таблица (рис.8, рис.9, рис.10)

+ +
+
   рис.8 Настройка Графа сущностей Таблицы        
+   рис.9 Настройка колонок Таблицы      
+   рис.10 Настройка колонок Таблицы
+
+
+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и элемент корректно отображается на странице (рис.11, рис.12, рис.13)

+


+
+

+ +
+
рис.11 Визуальное отображение поля без выбранного значения 
+рис.12 Визуальное отображение окна Диалога с Таблицей    
+рис.13 Визуальное отображение поля с выбранным значением
+
+ +
+
+

Attachments:

+
+ +
+ +

image2019-2-6_17-6-45.png (image/png)
+ image2019-2-15_13-42-3.png (image/png)
+ image2019-2-15_13-42-12.png (image/png)
+ image2019-2-15_13-42-16.png (image/png)
+ image2019-2-15_15-46-41.png (image/png)
+ image2019-2-15_15-47-42.png (image/png)
+ image2019-2-15_15-51-8.png (image/png)
+ image2019-2-15_15-52-35.png (image/png)
+ image2019-2-15_15-52-56.png (image/png)
+ image2019-2-15_15-57-18.png (image/png)
+ image2019-2-15_15-59-34.png (image/png)
+ image2019-2-15_16-1-57.png (image/png)
+ image2019-2-15_16-2-22.png (image/png)
+ image2019-2-15_16-6-5.png (image/png)
+ image2019-2-18_15-31-45.png (image/png)
+ image2019-2-18_15-32-27.png (image/png)
+ image2019-2-18_15-32-59.png (image/png)
+ image2019-2-18_15-34-10.png (image/png)
+ image2019-2-18_15-34-40.png (image/png)
+ image2019-2-18_15-35-7.png (image/png)
+ image2019-2-18_15-38-23.png (image/png)
+ image2019-2-18_15-39-4.png (image/png)
+ image2019-2-18_15-54-23.png (image/png)
+ image2019-2-18_15-54-57.png (image/png)
+ image2019-2-18_15-56-22.png (image/png)
+ image2019-2-18_16-5-34.png (image/png)
+ image2019-2-18_16-7-57.png (image/png)
+ image2019-2-18_16-8-44.png (image/png)
+ image2019-2-18_16-9-24.png (image/png)
+ image2019-2-18_16-24-23.png (image/png)
+ image2019-2-18_16-24-52.png (image/png)
+ image2019-2-18_16-27-49.png (image/png)
+ image2019-2-18_16-28-40.png (image/png)
+ image2019-2-18_16-31-32.png (image/png)
+ image2019-2-18_16-32-22.png (image/png)
+ image2019-2-18_16-32-46.png (image/png)
+ image2019-2-19_10-6-59.png (image/png)

+
+ + +
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..3fc6f89 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,85 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ムムひームひクムミスム巾ケ ミイム巾ソミーミエミーム紗禍クミケ ムミソミクムミセミコ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить статичный выпадающий список на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице Статичный выпадающий список с возможностью сохранения, выбранное значение из которого будет сохраняться в базу данных и будет иметь следующие настройки:

+
    + +
  • надпись поля - Выберите год
  • +
  • поле должно иметь всплывающую подсказку - Выберите значение из списка
  • +
  • список значений должен содержать элементы - Текущий год и Отчетный год
  • +
  • сохранение выбранного значения должно осуществляться в базу данныхв таблицу service колонку Год (year), если выбран Текущий год в базу данных записывается 2019, при выборе Отчетный год в базу данных записывается 2018
  • +
+

Решение задачи:

+

Предполагается, что страница уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***, в структуру сущностей которой включена необходимая, в данном случае, таблица service, в которую будет сохраняться выбранное значение (год). Для добавления на страницу и настройки Статичного выпадающего списка необходимо сделать следующее:

+
    + +
  • добавить внутр ь**Формы** компоненту Статичный выпадающий список с возможностью сохранения (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление статичного выпадающего списка на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミクムミサミセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミクムミサミセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..f588df9 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミクムミサミセミイミセミオ_ミソミセミサミオ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,91 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ムミクムミサミセミイミセミオ ミソミセミサミオ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить числовое поле на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице элемент Числовое поле (с возможность сохранения) - оценку результата, значение которого будет сохраняться в базу данных и будет иметь следующие настройки:

+
    + +
  • надпись поля - Оценка
  • +
  • поле должно иметь всплывающую подсказку -Введите оценку результата по задаче
  • +
  • к полю должны быть применены CSS-классы: фиксированный заголовок (fixed-label-small) и размерность поля минимальная (mini)
  • +
  • минимальное возможное значение должно быть равно 0
  • +
  • максимальное возможное значение должно быть равно 5
  • +
  • шаг увеличения значения должен быть равен 1
  • +
  • сохранение введенного значения должно осуществляться в базу данныхв таблицу Список задач (tasks) колонку Оценка результата (result_score)
  • +
+

Решение задачи:

+

Предполагается, что пользовательская страница Карточка задачи уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***, в структуру сущностей которой включена необходимая, в данном случае, ***таблица Список задач (tasks)***, в которую будет сохраняться введенное значение (оценка результата по задаче). Для добавления на страницу и настройки числового поля необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Числовое поле с возможностью сохранения (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

рис.1. Добавление числового поля на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..e7a8f86 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ柘巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ_ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,82 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ム災サミオミシミオミスム ミ柘巾ソミーミエミーム紗禍クミケ ムミソミクムミセミコ ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить элемент Выпадающий список на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице Карточки сотрудника Выпадающий список с возможностью сохранения, в котором будет отображаться перечень районов проживания доступных для выбора пользователем, и который будет иметь следующие настройки:

+
    + +
  • надпись поля - Выберите район проживания
  • +
  • вГраф сущностейв качестве Главной сущности должна быть определена таблица районов (district)
  • +
  • показывать пользователю колонку - Наименование района (колонка name в таблице district)
  • +
  • колонка БД для сохранения - колонка district_id в таблице price_monitor_report
  • +
+

Решение задачи:

+

Предполагается, что страница Карточка сотрудника уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***, в структуру сущностей которой включена необходимая таблица price_monitor_report для сохранения выбранного значения пользователем в элементе Выпадающий список с возможностью сохранения. Для добавления на страницу и настройки Выпадающего списка необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Выпадающий список с возможностью сохранения (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1 Добавление Выпадающего списка на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..c3f123f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミエミセミアミーミイミクムび契ム災サミオミシミオミスム_ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム契ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,82 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ム災サミオミシミオミスム ミ。ムひームひクムミスム巾ケ ミソミオムミオミコミサム紗ミームひオミサム ミスミー ムムびミーミスミクムム? + + + + + + +
+
+ + + +
+
+

Как добавить элемент Статичный переключатель на страницу?

+

Постановка задачи: необходимо реализовать на пользовательской странице Карточка сотрудника элементСтатичный переключатель с возможностью сохранения, выбранное значение из которого будет сохраняться в базу данных и будет иметь следующие настройки:

+
    + +
  • надпись поля - Выберите период
  • +
  • список значений должен содержать элементы - Месяц и Год
  • +
  • значение по умолчанию - Год
  • +
  • сохранение выбранного значения должно осуществляться в базу данныхв таблицу service колонку Период (period), если выбран Месяцв базу данных записывается month,при выборе Год в базу данных записывается year
  • +
+

Решение задачи:

+

Предполагается, что страница уже создана бизнес-аналитиком, где имеется ***основная компонентаФорма***, в структуру сущностей которой включена необходимая, в данном случае, таблица service, в которую будет сохраняться выбранное пользователем значение (период). Для добавления на страницу и настройки Статичного переключателя необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Статичный переключатель с возможностью сохранения (рис.1)
  • +
  • произвести настройки согласно условию задачи (рис.1)
  • +
+

+

рис.1. Добавление Статичного переключателя на страницу

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.2)

+

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ厘ーミウムムσキミコミー_ムミーミケミサミー_ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ厘ーミウムムσキミコミー_ムミーミケミサミー_ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..17596b9 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ厘ーミウムムσキミコミー_ムミーミケミサミー_ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,300 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ厘ーミウムムσキミコミー ムミーミケミサミー ミスミー ムムびミーミスミクムミオ? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту “Загрузка файла” на странице?

+

Постановка задачи: необходимо реализовать на пользовательской странице “Карточка Проекта” загрузку файлов, являющихся сканированными приложениями к проекту (расширения png, jpeg, jpg).

+

Для настройки компоненты Загрузка файла потребуются следующие данные:

+
    + +
  • + +

    надпись поля - Файлы-вложения

    +
  • +
  • + +

    максимальный размер каждого файла - 10 Мб

    +
  • +
  • + +

    допустимо удаление файла - удаление разрешено

    +
  • +
  • + +

    список допустимых типов файлов -png, jpeg, jpg

    +
  • +
  • + +

    допустимое максимальное количество файлов в компоненте - 10 и отдельным случаем рассмотреть - единственный 1 файл

    +
  • +
  • + +

    главная сущность графа основной формы-таблица projects.project_id

    +
  • +
  • + +

    главная сущность графа компоненты - таблица project_attachments

    +
  • +
  • + +

    колонка-внешний ключ из таблицы вложений в таблицу проектов -project_attachments.project_id

    +
  • +
  • + +

    колонка с именем файла вглавной сущности графа компоненты-project_attachments.attachment_file_path

    +
  • +
  • + +

    колонка с содержимым файлав главной сущности графа компоненты -project_attachments.file

    +
  • +
  • + +

    для случая с единственным файлом: колонка с именем файла в главной сущности графа основной формы-projects.attachment_file_path

    +
  • +
  • + +

    для случая с единственным файлом: колонка с содержимым файлав главной сущности основной формы -projects.file

    +
  • +
+

Страница “Карточка Проекта” должна иметь следующие настройки:

+
    + +
  • в качествеглавной сущности компонентыФормадолжна быть назначена таблица “Проекты”(projects).
  • +
  • внутри родительской компоненты-контейнераФормавсей страницы следует расположить компоненту “Загрузка файла”.
  • +
  • внутри родительской компоненты-контейнераФормавсей страницы следует расположить другие компоненты, например, Текстовое поле для сохранения иных параметров сущности “проект” (не входит в текущее задание).
  • +
  • для случая, когда к одному проекту следует сохранить несколько вложений: вГраф сущностей компоненты Загрузка файлав качестве Главной сущности должна быть определена таблица вложений (project_attachments) .
  • +
  • для случая, когда к одному проекту следует сохранить единственное вложение: вГраф сущностей компоненты Загрузка файлав качестве Главной сущности должна быть определена таблица Проектов (projects).
  • +
  • установить должным образом связи между таблицами в параметрах компоненты.
  • +
+

Решение задачи:

+
    + +
  • Добавляем ***основную компонентуФорма***, в структуру сущностей которой включаем таблицу projects. (рис.1)
  • +
+

+

рис.1. Добавление компоненты Форма на страницу

+
    + +
  • Добавляем внутрь компоненты Формы компоненту Загрузка файла (рис.2)
  • +
+

+

рис.2. Добавление компоненты Загрузка файла на страницу

+
    + +
  • Настраиваем основные параметры компоненты Загрузка файла (рис. 3)
  • +
+

+

рис.3. Настройка основных параметров компоненты Загрузка файла

+
    + +
  • Настраиваем граф сущностей компоненты Загрузка файла (рис. 4)
  • +
+

+

рис.4. Настройка графа сущностей компоненты Загрузка файла.

+

Обращаем внимание, что при изменении настройки “Допустимое максимальное количество файлов”, появляется дополнительный параметр для указания внешнего ключа,

+

по которому связаны главная сущность компоненты Форма и главная сущность компоненты Загрузка файла

+
    + +
  • Настраиваем взаимосвязи главной сущности графа компоненты Форма и главной сущности компоненты Загрузка файла (рис.5)
  • +
+

+

рис.4. Настройкавзаимосвязи главной сущности графа компоненты Форма и главной сущности компоненты Загрузка файла

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.5,6)

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+
+ +

+

+
+
+ +

+
+

рис. 5 Открываем карточку проекта.

+ +

Переходим к компоненте Загрузка файла и указываем список файлов для прикрепления.

+ +

Сохраняем карточку проекта.


+
+

рис. 6 Открываем ту же карточку проекта на изменение. Прикрепленные на предыдущем шаге файлы отображаются в зоне предпросмотра.

+ +

Крестик в верхнем углу файла позволяет удалить файл из списка прикрепленных.

+ +

Нажатие мышкой по наименованию файла (представленного гиперссылкой) приводит к выкачивания файла браузером.

+
+ +

Дополнительно отдельно рассмотрим случай сохранения единственного файла вложений в ту же таблицу, что и другие параметры сущности “проект” (а не в зависимую таблицу).

+

Возвращаемся к настройке графа сущностикомпоненты Загрузка файла (рис. 4а) и вместо зависимой таблицы project_attachments в качестве главной сущности компоненты Загрузка файла выбираем такую же таблицу, как у главной сущности компоненты Форма - projects.

+
    + +
  • Изменяем параметр “Допустимое максимальное количество файлов” в значение “1” и настраиваем граф сущностей компоненты Загрузка файла (рис. 4а)
  • +
+

рис.4а Настройка графа сущностей компоненты Загрузка файла.

+

Обращаем внимание, что при изменении настройки “Допустимое максимальное количество файлов”, исчезает ранее настроенный дополнительный параметр для указания внешнего ключа,

+

по которому связаны главная сущность компоненты Форма и главная сущность компоненты Загрузка файла.

+
    + +
  • Настраиваем взаимосвязи главной сущности графа компоненты Форма и главной сущности компоненты Загрузка файла (рис.5)
  • +
+

рис.4. Настройкавзаимосвязи главной сущности графа компоненты Форма и главной сущности компоненты Загрузка файла

+

Результат выполнения задачи для варианта с единственным прикрепляемым файлом:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис.5а,6а)

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+
+ +

+

+
+
+ +

+
+

рис. 5а Открываем карточку проекта.

+ +

Переходим к компоненте Загрузка файла и указываем список файлов для прикрепления.

+ +


+


+
+

рис. 5б Компонента не позволяет прикрепить список файл и оставляет только один из выбранных.

+ +

Сохраняем карточку с единственным прикрепленным файлом.

+ +


+

+
+ +

+

Рис. 6а Открываем ту же карточку проекта на изменение. Прикрепленный на предыдущем шаге единственный файл отображаются в зоне предпросмотра.

+

Крестик в верхнем углу файла позволяет удалить файл из прикрепленных.

+

Нажатие мышкой по наименованию файла (представленного гиперссылкой) приводит к выкачивания файла браузером.

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..d64d18d --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,187 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ渙セミサミオ ミイミイミセミエミー ム ミソミセミエミアミセムミセミシ ミキミスミームミオミスミクム ミスミー ムムびミーミスミクムミオ? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту “Поле ввода с подбором значения” на странице?

+

Постановка задачи: на пользовательской странице Карточка задачи необходимо обеспечить возможность ввода Постановщика задачис использованием компоненты “Поле ввода с подбором значения”, источником данных для которой будет справочник сотрудников, а выбор одного сотрудника из справочника будет осуществляться путем постепенного набора первых букв фамилии с последующим подбором и отображением сужающегося списка сотрудников, в чьих фамилиях содержится вводимый пользователем набор букв.

+

При открытии карточки задачи на редактирование, в компоненте должен отобразиться ранее сохраненный в качестве Постановщика задачи пользователь.

+

Страница “Карточка задачи” должна иметь следующие настройки:

+
    + +
  • в качествеглавной сущности компонентыФормадолжна быть назначена таблица “Список задач”(tasks),в которойимеется колонка с идентификатором сотрудника, являющегося постановщиком задачи (reporter_employee_id).
  • +
  • внутри родительской компоненты-контейнераФормавсей страницы следует расположить 3 простых компоненты:Текстовое поледля параметраНаименование задачи,Текстовое поледля параметраОписание задачи, Поле с подбором значения для параметра Постановщик задачи
  • +
  • в Граф сущностей компоненты Поле с подбором значения в качестве Главной сущности должна быть определена таблица сотрудников (employee)
  • +
  • показываемая пользователю колонка - составная, получаемая из соединения колонок Фамилия (last_name), Имя(first_name), Отчество(middle_name)
  • +
  • колонка базы данных для сохранения значения из компоненты Поле с подбором значения - tasks.reporter_employee_id
  • +
+

Решение задачи:

+

Предполагается, что страница Карточка задачи уже создана бизнес-аналитиком и в логике бизнес-процесса определена необходимая переменная процесса task_id, значение которой заполняется перед открытием страницы пользователем. Для решения поставленной задачи необходимо произвести следующие действия:

+
    + +
  • добавить внутрь страницы компоненту Форма (рис.1)
  • +
  • в настройках добавленной Формы перейти к разделу Подгрузка данных основная - Источник данных - Граф сущностей и настроить его в соответствии с условием задачи (рис.2).
  • +
+

+ +
+
рис.1 Добавление компоненты Форма на страницу  
+рис.2 Настройка Графа сущностей компоненты Форма
+
+ +
    + +
  • + +

    в параметре “Переменная процесса с идентификатором” ( Подгрузка данных основная- Переменная процесса с идентификатором ) следует указать переменную процесса task_id (рис.3)

    +

    +

    рис.3 Настройка переменной процесса

    +
  • +
  • + +

    расположить компоненты для отображения параметров Наименование задачи, Описание задачии настроить их на отображение информации из источника данных (рис.4, рис.5)

    + +
    + + + + + + + + + + + + + + + + + + +
    +
    + +

    +
    +
    + +

    +
    рис.4 Добавление элемента Наименованиерис.5 Добавление элемента Описание
    +
    +
  • +
  • + +

    расположить компоненту Поле с подбором значения внутри компоненты Форма и настроить колонку для сохранения информации в базу данных (чтения информации из базы данных) рис. 6:

    +
  • +
+

+

рис.6 Назначение колонки сохранения информации

+
    + +
  • настроитькомпоненту Поле с подбором значения на свой источник данных для отображения содержимого справочника сотрудников по мере набора букв фамилии сотрудника (рис. 7)
  • +
+

+

рис.7 Конфигурация основных параметров компоненты

+

Зеленой цветом (стрелкой) показан процесс конфигурации графа сущности компоненты.

+

Коричневыми рамками отмечены параметры “Начать подбор вариантов после ввода”, “Показывать варианты по” , отвечающие за а) назначение количества символов, после ввода которых начнется подбор и предложение подходящих по подстроке вариантов из справочника и б) указание максимального количества вариантов, выводимых в выпадающем списке в процессе подбора.

+

Розовой рамкой отмечен параметр “Тип поиска”, указывающий системе каким образом обрабатывать вхождение вводимой пользователем подстроки - вхождение с любого места или только с начала строки.

+

Синими рамками помечены взаимосвязанные параметры “Зависит от”, “Связаны по” для случая, когда текущая компонента является зависимой от родительской и предлагаемые текущей компонентой значения должны удовлетворять значению, ранее выбранному в родительской компоненте (отобрать только такие записи, в которых значенияв указанной колонке текущей компоненты соответствуютзначению идентификатора главной сущности родительской компоненты).

+

Светло-синей рамкойпомечен параметр с колонкой, значение которой будет дополнительно возвращать компонента при использовании метода “Получить значение по BusinessId” (дополнительно к обычно возвращаемому идентификатору главной сущности графа компоненты).

+

Желтой рамкойпомечен параметр “Активировать фильтрацию по колонке”, указывающий на колонку, по которой будет работать метод “Задать фильтр”.

+
    + +
  • настроить компоненту Поле с подбором значения для формирования составного значения из колонок с фамилией, именем и отчеством сотрудника (рис.8)
  • +
+

+

рис.8 Конфигурация составной колонки, в качестве разделителя указан “пробел”

+

На этом настройка компоненты закончена, запускаем приложение.

+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис. 9)

+ +
+ +

+
+ +

+

+

При вводе первых двух букв система не реагирует, ждет третью

+

После появления третьей буквы начинает предлагать имеющиеся варианты, подходящие по условиям вхождения уже введенной подстроки

+

После появления очередной буквы, позволяющей индивидуализировать подбираемое значение, остается единственный вариант, который можно добрать вручную, выбрать манипулятором мышь или нажать кнопку “Ввод” на клавиатуре

+

рис. 9 Работа компоненты в запущенном приложении

+

рис.2. Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html new file mode 100644 index 0000000..2e437a1 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html @@ -0,0 +1,290 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ渙セミソミセミサミスム紹オミシム巾ケ ムミソミクムミセミコ ミキミーミイミクムミクミシム錦 ミキミーミソミクムミオミケ? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту “Пополняемый список зависимых записей”?

+

Постановка задачи: на пользовательской странице Карточка задачи, кроме набора параметров непосредственно самой задачи, необходимо обеспечить возможность прикрепления информации о нескольких приложенных документах (с атрибутами “имя документа”, “описание документа”) для последующего добавления в базу данных одной строки с информацией о задаче и одновременногодобавления нескольких строк в зависимую таблицу с сохранением взаимосвязи между вставленными в обе таблицы записями.

+

При открытии такой карточки на редактирование, согласно сохраненным ссылкам между записями, интерфейс системы должен отобразить и параметры самой задачи, и список сопоставленных с ней документов.

+

Страница “Карточка задачи” должна иметь следующие настройки:

+
    + +
  • в качестве главной сущности компоненты Формадолжна быть назначена таблица “Список задачи”(tasks), в которойимеются колонки с информацией о наименовании и описании задачи и колонка с первичным ключом (task_id).
  • +
  • внутри родительской компоненты-контейнераФормавсей страницы следует расположить 3 простых компоненты:Текстовое поледля параметраНаименование задачи,Текстовое поледля параметраОписание задачи.
  • +
  • в граф сущности элемента “Редактируемая Таблица” компоненты Пополняемый список зависимых записей включитьтаблицу “Вложенные документы задачи” (task_attachments), в которойимеются колонки с информацией “имя документа”, “описание документа” для хранения атрибутов файла и колонка для указания идентификатора задачи (task_id), с которым конкретный документ соотнесен.
  • +
  • внутри элемента Формакомпоненты Пополняемый список зависимых записей расположить2 простых компоненты:Текстовое поледля параметраИмя документа,Текстовое поледля параметраОписание документа
  • +
+

Решение задачи:

+

Предполагается, что страница Карточка задачи уже создана бизнес-аналитиком и в логике бизнес-процесса определена необходимая переменная процесса task_id, значение которой заполняется перед открытием страницы пользователем. Для добавления на страницу и настройки компоненты Форма необходимо сделать следующее:

+
    + +
  • добавить внутрь страницы компоненту Форма (рис.1)
  • +
  • в настройках добавленной Формы перейти к разделу Подгрузка данных основная - Источник данных - Граф сущностейи настроить его в соответствии с условием задачи (рис.2).
  • +
+

+ +
+
рис.1 Добавление компоненты Форма на страницу    
+рис.2 Настройка Графа сущностей компоненты Форма
+
+ + +

+ +
+
рис.3 Настройка переменной процесса
+
+ +
    + +
  • расположить компоненты для отображения параметровНаименование задачи, Описание задачии настроить их на отображение информации из источника данных (рис.4, рис.5)
  • +
+ +
+ + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+
рис.4 Добавление элемента Наименованиерис.5 Добавление элемента Описание
+
+ +

На этом настройка компоненты Форма для работы с базой данных завершена.

+
    + +
  • добавить внутрь только что сконфигурированной компоненты Форма (рис.1) сложный компонент “Пополняемый список зависимых записей” (рис. 6):
  • +
+


+рис.6 Добавление компоненты Пополняемый список зависимых записей

+
    + +
  • перейти к элементу Редактируемая таблица и настроить все реквизиты параметра “Пополняемый список зависимых записей”. Подгрузка данных (рис.7, рис.8, рис.9)
  • +
+

рис.7 Настройка параметра “Пополняемый список зависимых записей”. Подгрузка данных

+

**
+**

+ +
+ + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+ +

+ +

Таблицы Список задач и Вложенные документы связаны по колонке task_id, при этом для таблицы "Список задач" (главная сущность компоненты Форма всей страницы) колонка task_id является первичным ключом, а для таблицы "Вложенные документы" (основная сущность элемента Редактируемая таблица сложной компоненты) колонка task_id является ссылочной колонкой на таблицу Список задач (внешним ключом).

+
рис. 8 Формирование Графа сущности элемента Редактируемая таблица +

рис. 9 Настройка взаимосвязей таблиц

+
+ +
    + +
  • оставаясь в элементе Редактируемая таблица так же настроить параметрТаблица. Настроить колонки таблицы (рис. 10)
  • +
+

рис.10 Настройка параметраТаблица. Настроить колонки таблицы

+
    + +
  • перейти к элементу Форма в сложном компоненте и, ничего не меняя в настройках, разместить внутри этого элементакомпоненты для работы с полямиНаименование документа, Описание документа (рис. 11)****
  • +
+

+

рис. 11 Размещение компонент в элементе Форма

+
    + +
  • + +

    настроить только что добавленные текстовые компоненты Наименование документа, Описание документана работу с источником данных, указанным в графе сущности элемента Редактируемая таблица (рис. 12, рис. 13)

    + +
    + + + + + + + + + + + + + + + + + + +
    +
    + +

    +
    +
    + +

    +
    рис.12 Настройка компоненты Наименование документарис.13 Настройка компоненты Описание документа
    +
    +
  • +
  • + +

    Для создания новой записи (INSERT) или изменения имеющихся значений (UPDATE), необходимо добавить на страницу компоненту Кнопка сохранения и указать этой кнопке наФорму, согласно Графу сущностей которой следуют провести операцию добавления новой записи или обновления существующей информации после нажатия на кнопку (рис.14)

    +
  • +
+ +
+ + + + + + + + + + + + + + +
+
+ +


+

+
+

рис.14 Настройка элемента Кнопка сохранения

+ +

Заполнение параметра Компонент "Форма" Кнопки сохранения происходит путем перетаскивания манипулятором мышь объекта "Основная Форма страницы " из дерева структуры страницы в окно параметра Компонент "Форма" Кнопки сохранения (как показано стрелкой на скриншоте).

+ +

Также существует удобная функциональность обратного быстрого перехода по дереву структуры страницы к задействованной компоненте посредством клика на параметре Компонент "Форма" Кнопки сохранения, когда есть необходимость уточнить, на какую именно компоненту в дереве ссылается интересующий параметр.

+
+ +

В результате выполнения указанной последовательности действий и запуска приложения, интерфейс экранной формы примет следующий вид :

+

+ +
+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html new file mode 100644 index 0000000..37806aa --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_.html @@ -0,0 +1,165 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ。ミソミクムミセミコ ミキミーミイミクムミクミシム錦 ミキミーミソミクムミオミケ? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту Список зависимых записей?

+

Постановка задачи: на пользовательской странице Направление на испытание АП (алкогольной продукции), где уже располагаются все необходимые атрибуты (дата направления, инспектор, количество образцов на испытание и другие поля) необходимо реализовать возможность добавления пользователем дополнительных видов испытаний (одного или нескольких) продукции из заранее сформированного перечня, предлагаемого в виде списка из которого можно включать или исключать необходимую запись(и). Данная возможность должна быть реализована с помощью элемента Список зависимых записей, иерархически вложенного и зависящего от основной компоненты Форма на текущей странице.

+

При открытии страницы Направление на испытание АПна редактирование, согласно сохраненным ссылкам между записями, интерфейс системы должен отобразить не только параметры самого направления (дату направления, лабораторию, количество образцов на испытание и др.), но и список связанных с ним дополнительных испытаний на проверку АП, ранее выбранных и сохранённых пользователем при формировании данного направления в системе.

+

Список зависимых записей(список дополнительных испытаний АП) должен иметь следующие настройки:

+
    + +
  • элемент Список зависимых записей должен располагаться внутриосновной компоненты Форма на текущей странице, для того чтобы данные отобранные с помощью этой компоненты,сохранялись считывались из/в базу данных;
  • +
  • в Граф сущностейв качестве Главной сущности основной результирующейТаблицы зависимых записей на странице должна быть определена таблица базы данных (справочник испытаний АП) -dic_test, на которую ссылается по ключу таблица связи product_review_request_referral_dic_test (данная таблица необходима, так как является таблицей связи между справочником испытаний dic_test и таблицей базы данных, где хранятся направления на испытания АП -product_review_request_referral, определенной в качестве Главной сущности компонентыФормана странице);
  • +
  • в основной результирующейТаблице зависимых записей на странице должно отображаться наименование выбранного(ых) пользователем дополнительного(ых) испытания(й) АП, то есть должна быть включена колонка Наименование (name) таблицы базы данных Справочник испытаний (dic_test)с отображаемым на странице заголовком Дополнительные испытания;
  • +
  • вГраф сущностейв качестве Главной сущности Таблицы доступных строк для выбора пользователем должна быть определенатаблица базы данных (справочник испытаний АП)-dic_test и в настройках колонок Таблицы должна быть включена колонкаНаименование (name) с отображаемым на странице заголовком Вид испытания;
  • +
  • Связанную таблицу уже выбранных пользователем строк настраивать нет необходимости, поскольку по умолчанию (с помощью уже включенной в базовую конфигурацию функции - Продублировать конфигурацию текущей таблицы (с доступными строками) в таблицу уже выбранных строк) дублирует конфигурацию Таблицы доступных строк для выбора.
  • +
+

Решение задачи:

+

Предполагается, что страница Направление на испытание АП уже реализована бизнес-аналитиком, где имеется основная компонента Форма, в структуру сущностей которой в качестве Главной сущности включена таблица базы данных, где хранятся направления на испытания АП-product_review_request_referral (рис.1), на которую будет ссылаться основная Таблица компоненты Список зависимых записей, что позволит сохранять/подгружать значения из/в базы данных, отобранные с помощью этой компоненты.

+

Для добавления на страницу и настройки Списка зависимых записей необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Список зависимых записей и для удобства переименовать ее, например как, Дополнительные испытания (рис.2);
  • +
+


+

+ +
+
рис.1 Редактор структуры сущностей основной компоненты Форма           
+рис.2 Добавление компоненты Список зависимых записей внутрь Формы  
+
+ +
    + +
  • настроить в соответствии с условиемзадачи основную Связанную таблицу зависимых записей (в списке компонент, входящих в структуру Списка зависимых записей, находится первой по очередности над Кнопкой “Изменить”). +
      + +
    • в Граф сущностей настраиваемого элемента необходимо включить две таблицы базы данных: Справочник испытаний АП -dic_test (главная сущность) и таблица связи между справочником испытаний и направлением на испытаниеАП -product_review_request_referral_dic_test (рис.3).
    • +
    • в свойстве компоненты Таблица. Настроить колонки таблицы необходимо указать колонку Наименование (name) таблицы базы данных dic_test (рис.4)
    • +
    • в свойстве компонентыСписок зависимых записей. Взаимосвязи таблиц производим следующие настройки (рис.4):
      +> Колонка, ссылающаяся на таблицу “доступных”-указывается колонка dic_test_id таблицы базы данныхproduct_review_request_referral_dic_test, включенной в Граф сущностей текущей настраиваемой Связанной таблицы, что обеспечит связь с главной сущностью dic_testТаблицы доступных строк для выбора;
      +>Колонка, ссылающаяся на “основную” таблицу -указывается колонкаproduct_review_request_referral_idтаблицы базы данныхproduct_review_request_referral_dic_test, включенной в Граф сущностей текущей настраиваемой Связанной таблицы, что обеспечит связь с главной таблицей product_review_request_referralв Графе сущностей основной компоненты Форма на странице;
      +>Колонка “основной” таблицы - указывается колонка (первичный ключ) product_review_request_referral_id таблицы базы данныхproduct_review_request_referral, которая определена в качестве главной таблицы в Графе сущностейосновной компонентыФормана странице, на которую ссылается текущаянастраиваемаяСвязанная таблица;
    • +
    +
  • +
+


+*

+ +
+
рис.3 Редактор структуры сущностей Связанной таблицы                 
+рис.4 Настройка колонок таблицы и Взаимосвязи таблиц
+
+ +

настроить в соответствии с условиями задачи Таблицу доступных строк для выбора пользователем(в списке компонент, входящих в структуру Списка зависимых записей, находится первой по очередности внутри элемента Диалог).

+
    + +
  • в Граф сущностейнастраиваемого элемента необходимо включить в качестве Главной сущности таблицу базы данныхСправочник испытаний АП-dic_test(рис.5)
  • +
  • в свойстве компоненты Таблица. Настроить колонки таблицы необходимо указать колонкуНаименование (name)таблицы базы данныхdic_test(рис.6)
  • +
+


+

+ +
+
рис.5 Редактор структуры сущностей Таблицы доступных строк                     
+рис.6 Настройка колонок Таблицы доступных строк  
+
+ +
    + +
  • Связанную таблицууже выбранных пользователем строк (в списке компонент, входящих в структуру Списка зависимых записей, находится после Вертикального контейнера с кнопками действий “Добавить”, “Добавить все”, “Удалить”, “Удалить все” - рис.7) настраивать нет необходимости, поскольку по умолчанию дублирует конфигурацию (настройки) Таблицы доступных строк. Для этого используется функцияПродублировать конфигурацию текущей таблицы (с доступными строками) в таблицу уже выбранных строк,включенная в свойства Таблицы доступных строк (рис.8) +

    рис.7 Связанная таблица уже выбранных пользователем строк рис.8 Настройка функции Продублировать конфигурацию текущей таблицы в таблицу выбранных строк

  • +
+ +
    + +
  • настройки Кнопок действий"Добавить", “Добавить все”, “Удалить”, “Удалить все”, используемые для добавления исключения записей в/из Таблицы доступных строк и Связанной таблицы уже выбранных пользователем строк, находящихсявнутрикомпоненты Диалог - оставить неизменными, т.е. по умолчанию заданными.
  • +
  • настройки Кнопок подтверждения и отмены действия “Ок”/“Отмена”, находящихся внутри компоненты Диалог,остаются по умолчанию заданными.
  • +
+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что на странице отображается основная Таблицазависимых записей - “Дополнительные испытания” с кнопкой “Изменить”(рис.9). По нажатию на кнопку “Изменить” происходит открытие диалогового окна на странице со списком доступных записей для выбора пользователем. В левой части окна отображается список видов дополнительных испытаний АП, в правой части - список выбранных пользователем записей из предложенного справочника (рис.10). Выбор (исключение) записей осуществляется с помощью кнопок"Добавить", “Добавить все”, “Удалить”, “Удалить все”, расположенных в контейнере между Таблицей доступных строк для выбора и Таблицей уже выбранных строк (рис.11). После того, как список необходимых видов испытаний был сформирован пользователем, по нажатию на кнопку подтверждения действий “Выбрать” происходит перенос записей из Таблицы выбранных строк в основную Таблицу зависимых записей на странице (рис.12). Сохранение значений, отобранных с помощью компоненты Список зависимых записей, в таблицу базы данных будет произведено вместе с сохранением основнойФормы на странице по нажатию на кнопку “Сохранить”.

+ +
+
рис.9 Основная таблица зависимых записей на странице                  
+рис.10 Диалоговое окно со списком видов испытаний для выбора
+
+ +


+

+ +
+
рис.11 Добавление (исключение) записей из Таблицы доступных в Таблицу выбранных строк          
+рис.12 Основная таблица зависимых записей с выбранными значениями
+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html new file mode 100644 index 0000000..43c97db --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html @@ -0,0 +1,133 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ。ミソミクムミセミコ ミキミーミイミクムミクミシム錦 ミキミーミソミクムミオミケ (ミソミセミサミオ)? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту Список зависимых записей (поле)?

+

Постановка задачи: на пользовательской страницеформирования отчетных форм Отчётность, в окне ввода параметров для одного из доступных отчетов (Отчет о состоянии утверждения), необходимо реализовать возможность выбора нескольких Утверждающих, идентификаторы которых будут передаваться в виде массива на вход отчетной формы. Параметр Утверждающие должен позволять выбрать нескольких сотрудников из актуального Справочника сотрудников.

+

Список зависимых записей (поле)(Утверждающие) должен иметь следующие настройки:

+
    + +
  • элемент*Список зависимых записей (поле)*должен располагаться внутри окна Параметры отчета (Диалог);
  • +
  • элемент*Список зависимых записей (поле)*должен иметь заголовок Утверждающие и внутри поля должна отображаться подсказка “Выбрать сотрудников”
  • +
  • выбранные значения в Поле с множественным выбором должны отображаться через точку запятой
  • +
  • в диалоговом окне Параметров отчета Поле с множественным выбором не должно быть доступно для управления, выбор сотрудников должен осуществляться только в зависимом диалоговом окне выбора “Выбор утверждающих”
  • +
  • вГрафе сущностейэлемента Поле с множественным выбором в качестве Главной сущностидолжна быть определена таблица базы данных (справочник Сотрудников)-employee.Отображаемым значением пользователю должна быть выбрана колонка employee.name_short_email
  • +
  • вГраф сущностейв качестве Главной сущностиТаблицыдоступных строк для выбора пользователем должна быть определенатаблица базы данных (справочник сотрудников)-employee,на которую ссылается представление базы данных view_admin_employee и связь с которой ограничит список доступных для выбора значений. В настройках колонок Таблицы должна быть включена колонкаФИО (view_admin_employee.name) с отображаемым на странице заголовком ФИО;
  • +
  • Связанную таблицууже выбранных пользователем строк настраивать нет необходимости, поскольку по умолчанию (с помощью уже включенной в базовую конфигурацию функции -Продублировать конфигурацию текущей таблицы (с доступными строками) в таблицу уже выбранных строк) дублирует конфигурациюТаблицыдоступных строк для выбора.
  • +
+

Решение задачи:

+

Предполагается, что страницаОтчетность и окно ввода параметров для отчета - компонентаДиалогуже реализована бизнес-аналитиком, с соответствующей логикой для формирования печатнойформысо страницы приложения.

+

Для добавления на страницу и настройкиСписка зависимых записей (поле)необходимо сделать следующее:

+

добавить внутрь Диалога (окна параметров отчетной формы) компоненту*Список зависимых записей (поле)*и для удобства переименовать ее, например как,Утверждающие (рис.1)

+

+

рис.1 Добавление компоненты Список зависимых записей (поле) в окно Параметры отчета настроить в соответствии с условиемзадачи Поле множественного выборазависимых записей:

+
    + +
  • в Основных параметрах Поля множественного выбора необходимо заполнить значениями следующие свойства (рис.2): +
      + +
    • Надпись - Утверждающие
    • +
    • Видимость -(Истина)
    • +
    • Недоступно для управления -(Истина)
    • +
    • Разделитель - ;
    • +
    +
  • +
  • в функции Поле с множественным выбором. Подгрузка данных вГраф сущностейнастраиваемого элемента необходимо включитьтаблицу базы данных (справочник Сотрудников)-employee.(рис.3)
  • +
  • в функции Поле с множественным выбором. Подгрузка данных в свойстве “Отображаемая колонка” необходимо указать колонку базы данных ФИО сотрудника -employee.name_short_email (рис.3)
  • +
+

рис.2 Настройка основных параметров компоненты Поле с множественным выбором
+рис.3 Настройка Графа сущностей компоненты Поле с множественным выбором

+

настроить в соответствии с условиями задачиТаблицудоступных строк для выбора пользователем(в списке компонент, входящих в структуру Списка зависимых записей (поле), находится первой по очередности внутри элементаДиалог).

+
    + +
  • в Граф сущностейнастраиваемого элемента необходимо включить в качестве Главной сущности таблицу базы данныхСправочник пользователей -employee ина которую ссылается представление базы данных view_admin_employee(рис.4)
  • +
  • в свойстве компоненты Таблица. Настроить колонки таблицы необходимо указать колонкуФИО (name)таблицы базы данных view_admin_employee(рис.5)
  • +
+

рис.4 Редактор структуры сущностей Таблицы доступных строк
+рис.5 Настройка колонок Таблицы доступных строк

+
    + +
  • Связанную таблицууже выбранных пользователем строк (в списке компонент, входящих в структуру Списка зависимых записей (поле), находится после Вертикального контейнера с кнопками действий"Добавить", “Добавить все”, “Удалить”, “Удалить все”- рис.6)настраивать нет необходимости, поскольку по умолчанию дублирует конфигурацию (настройки)Таблицыдоступных строк. Для этого используется функцияПродублировать конфигурацию текущей таблицы (с доступными строками) в таблицу уже выбранных строк,включенная в свойстваТаблицыдоступных строк (рис.7)
  • +
+

рис.6 Связанная таблица уже выбранных пользователем строк
+рис.7 Настройка функции Продублировать конфигурацию текущей таблицы в таблицу выбранных строк

+
    + +
  • настройки Кнопок действий"Добавить", “Добавить все”, “Удалить”, “Удалить все”, используемые для добавления исключения записей в/изТаблицыдоступных строк иСвязанной таблицыуже выбранных пользователем строк, находящихсявнутрикомпонентыДиалог- оставить неизменными, т.е.по умолчанию заданными.
  • +
  • настройки Кнопок подтверждения и отмены действия"Ок"/“Отмена”,находящихся внутри компонентыДиалог,остаютсяпо умолчанию заданными.
  • +
+

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что к окне Параметры отчета добавлено Поле с множественным выбором - Утверждающие с кнопкой вызова диалогового окна выбора значений (рис.8).По нажатию на кнопку “Изменить” происходит открытие диалогового окна на странице со списком доступных записей для выбора пользователем. В левой части окна отображается список сотрудников (утверждающих), в правой части - список выбранных пользователем записей из предложенного справочника (рис.9). Выбор (исключение) записей осуществляется с помощью кнопок “Добавить”, “Добавить все”, “Удалить”, “Удалить все”, расположенных в контейнере между Таблицей доступных строк для выбора иТаблицейуже выбранных строк (рис.10). После того, как список необходимых видов испытаний был сформирован пользователем, по нажатию на кнопку подтверждения действий “Выбрать” происходит перенос записей из Таблицы выбранных строк в Поле множественного выбора, где значения разделены между собой символом точки запятой(рис.11).

+

рис.9 Окно Параметры отчета
+рис.10 Диалоговое окно со списком сотрудников для выбора

+

рис.11 Добавление записей из Таблицы доступных в Таблицу выбранных строк
+рис.12 Отображение результата выбора значений

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミサミーミウ_ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミサミーミウ_ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..152bf4f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ、ミサミーミウ_ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,135 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ、ミサミーミウ ミスミー ムムびミーミスミクムミオ? + + + + + + +
+
+ + + +
+
+

Как задействовать компоненту Флаг на странице?

+

Постановка задачи: на пользовательской странице Карточка задачи, скрыть блоки параметров, касающихся сроков исполнения задачи и задействованных по ней сотрудников. При этом расположить и сделать видимыми компоненты Флаг, с помощьюкоторых можно открыть (cделать видимыми) изначально скрытые блоки.

+

Решение задачи:

+

Предполагается, что страница Карточка задачи уже создана бизнес-аналитиком.

+
    + +
  • Страница содержит блоки “Общие сведения”, “Сроки”, “Действующие лица”, реализованные с использованием компонент Группа полей. Снять с этих компонент параметр “Видимость”, чтобы при первоначальной загрузке страницы блоки “Сроки” и “Действующие лица” были невидимы. (рис.1)
  • +
+

+
    + +
  • в структуру страницы добавить 2 компоненты Флаг (без возможности сохранения), сразу после каждого из блоков “Сроки” и “Действующие лица”. Подобрать наименования для этих компонент, указывающее их назначение. Произвести настройку параметров “Надпись”, “Значение” (выставить FALSE) и “Расширенные настройки”→ “CSS классы” (рис. 2)
  • +
+

+

класс check-invert предписывает расположить сам визуальный значок компоненты перед параметром компоненты “Надпись”

+

класс free-label предписывает не форматировать значение параметра “Надпись”, располагая его свободным текстом после визуального значка компоненты

+
    + +
  • в структуру страницы добавить 2 компоненты Обработка событий для управления событиями и реакцией на них в случае изменения пользователем состояния компонент Флаг, а именно проставления флага или его снятия. Подобрать наименования для этих компонент, указывающее их назначение. Произвести настройку алгоритма реакции на событие. (рис. 3)
  • +
+ +
+ + + + + + + + + + + + + + + + + + +
+
+ +

+
+
+ +

+

+

+
+
+ +

В результате выполнения указанной последовательности действий и запуска приложения, интерфейс экранной формы примет следующий вид:

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ「ミオミコムム_ミエミサム柔ミセムひセミアムミーミカミオミスミクム柔ミスミーミキミイミーミスミクム柔ミセムミウミーミスミクミキミームミクミク_ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ「ミオミコムム_ミエミサム柔ミセムひセミアムミーミカミオミスミクム柔ミスミーミキミイミーミスミクム柔ミセムミウミーミスミクミキミームミクミク_ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..08a61c7 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ「ミオミコムム_ミエミサム柔ミセムひセミアムミーミカミオミスミクム柔ミスミーミキミイミーミスミクム柔ミセムミウミーミスミクミキミームミクミク_ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,95 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミクムミソミセミサム糊キミセミイミームび ミコミセミシミソミセミスミオミスムび ミ「ミオミコムム ミエミサム ミセムひセミアムミーミカミオミスミクム ミスミーミキミイミーミスミクム ミセムミウミーミスミクミキミームミクミク ミスミー ムムびミーミスミクムミオ? + + + + + + +
+
+ + + +
+
+

Как использовать компоненту Текст для отображения названия организации на странице?

+

Постановка задачи: необходимо реализовать на странице вывода информации об организации элемент Текст (с возможностью сохранения), который будет отображать наименование организации и сохраняться в базу данных, содержащий следующие настройки:

+
    + +
  • надпись поля -Название организации
  • +
  • поле должно иметь подсказку -Наименование организации
  • +
  • значение поля должно подгружаться из переменной процесса organization
  • +
  • сохранение значения должно осуществляться в базу данныхв таблицу organization колонку Организация (legal_entity_id)
  • +
+

Решение задачи:

+

Предполагается, что бизнес процесс и страница вывода информации об организации уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***. Для добавления на страницу и настройки компоненты Текст (с возможностьюсохранения) необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Текст и произвести настройки согласно условию задачи (рис.1)
  • +
  • в функции Заполнить значением из переменной любого типа выбрать переменную процесса, относящуюся к организации****(рис.2)
    +(прим. переменная процесса была создана ранее при создании бизнес процесса)
  • +
  • в функции Сохранение значения необходимо указать таблицу и колонку БД, куда будет сохранена информация об организации (рис.2)
  • +
+

+ +
+
рис.1. Добавление компоненты Текст (с возможностью сохранения) на страницу   
+рис.2. Настройка компоненты Текст (с возможностью сохранения)
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены, как, например, Текст соответствует наименованию организации (рис.3).

+

+

рис.3.Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ムひオミコムムひセミイミセミオ_ミソミセミサミオ_ミイ_ミコミームミオムムひイミオ_ミソミームミーミシミオムびミー_ミエミサム柔ミソミオムミームひスミセミケ_ムミセムミシム祇.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ムひオミコムムひセミイミセミオ_ミソミセミサミオ_ミイ_ミコミームミオムムひイミオ_ミソミームミーミシミオムびミー_ミエミサム柔ミソミオムミームひスミセミケ_ムミセムミシム祇.html new file mode 100644 index 0000000..14faab5 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ムひオミコムムひセミイミセミオ_ミソミセミサミオ_ミイ_ミコミームミオムムひイミオ_ミソミームミーミシミオムびミー_ミエミサム柔ミソミオムミームひスミセミケ_ムミセムミシム祇.html @@ -0,0 +1,104 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミクムミソミセミサム糊キミセミイミームび ムひオミコムムひセミイミセミオ ミソミセミサミオ ミイ ミコミームミオムムひイミオ ミソミームミーミシミオムびミー ミエミサム ミソミオムミームひスミセミケ ムミセムミシム? + + + + + + +
+
+ + + +
+
+

Как использовать текстовое поле в качестве параметра для печатной формы?

+

Постановка задачи: необходимо реализовать на странице вывода информации о департаменте текстовое поле, значение из которого будет использоваться в качестве входного параметра для формирования печатной (отчетной) формы об этом департаменте и будет иметь следующие настройки:

+
    + +
  • надпись поля -Название департамента
  • +
  • обязательно для заполнения пользователем приложения
  • +
  • ввод текста в поле должен осуществляться с использованиемтипа регистра -Первая буква-заглавная,то есть каждое новое слово в поле будет начинаться с заглавной буквы
  • +
  • поле должно иметь подсказку -Введите название департамента
  • +
  • к полю должны быть применены CSS-классы: фиксированный заголовок (fixed-label)
  • +
+

Решение задачи:

+

Предполагается, что страница вывода информации о департаменте уже создана бизнес-аналитиком, где имеется ***основная компонента Вертикальный контейнер***, куда включена и ссылается компонента Кнопка печати отчета из формы. Для добавления на страницу и настройки текстового поля в качестве параметра для печатной формы необходимо сделать следующее:

+
    + +
  • добавить внутрь Вертикального контейнера компоненту Текстовое поле, отключив у нее функцию Текстовое поле. Сохранения значения, поскольку в данном случае сохранения значения и подгрузки его из базы данных происходить не будет, значение будет вводиться пользователем на странице. Далее произвести настройкисогласно условию задачи (рис.1)
  • +
  • в компоненте Кнопка печати отчета из формы в качестве входного параметра указать созданное Текстовое поле (рис.2)
  • +
+

+ +
+
рис.1. Добавление текстового поля на страницу и настройка               
+рис.2. Настройка кнопки печати отчета с использованием текстового поля
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены, как, например, текстовое поле обязательно для заполнения (рис.3) и каждое новое слово вводимого значения в поле автоматически начинается с Заглавной буквы (рис.4).

+

+ +
+
рис.3. Визуальное отображение условия обязательности поля     
+рис.4. Визуальное отображение выполнения условия: тип регистра Первая буква - заглавная
+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ムひオミコムムひセミイミセミオ_ミソミセミサミオ_ミエミサム柔ミスミームムびミセミケミコミク_ミイミクミエミクミシミセムムひク_ミエムムσウミクム_ム災サミオミシミオミスムひセミイ_ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ムひオミコムムひセミイミセミオ_ミソミセミサミオ_ミエミサム柔ミスミームムびミセミケミコミク_ミイミクミエミクミシミセムムひク_ミエムムσウミクム_ム災サミオミシミオミスムひセミイ_ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..9110fbc --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミクムミソミセミサム糊キミセミイミームび契ムひオミコムムひセミイミセミオ_ミソミセミサミオ_ミエミサム柔ミスミームムびミセミケミコミク_ミイミクミエミクミシミセムムひク_ミエムムσウミクム_ム災サミオミシミオミスムひセミイ_ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,137 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミクムミソミセミサム糊キミセミイミームび ムひオミコムムひセミイミセミオ ミソミセミサミオ ミエミサム ミスミームムびミセミケミコミク ミイミクミエミクミシミセムムひク ミエムムσウミクム ム災サミオミシミオミスムひセミイ ミスミー ムムびミーミスミクムミオ? + + + + + + +
+
+ + + +
+
+

Как использовать текстовое поле для настройки видимости других элементов на странице?

+

Постановка задачи: необходимо в зависимости от того, каким из возможных значений переменной процесса create_available, заполнилось по умолчанию скрытое Текстовое поле, отображать на странице Вывода предупреждения пользователю три варианта сообщения с помощью компоненты Текст:

+
    + +
  1. Невозможно создать документ. Выбранные партии соответствуют разным наименованиям ассортимента (когда значение переменной равно assort)
  2. +
  3. Невозможно создать документ. Одна или несколько из выбранных партий уже содержаться в ранее созданных свидетельствах и соответствуют разным наименованиям ассортимента(когда значение переменной равно certificate)
  4. +
  5. Невозможно создать документ. Одна или несколько из выбранных партий уже содержаться в ранее созданных решениях о невыдаче и соответствуют разным наименованиям ассортимента(когда значение переменной равно denial_decision)
  6. +
+

На странице Вывода предупреждения пользователю также должно быть реализовано:

+
    + +
  • видимый по умолчанию элемент Текст с примененным CSS-классом: title (заголовок), который будет служить заголовком страницы и содержать в себе статичный текст -Внимание!
  • +
  • кнопка навигации, по которой будет осуществляться Выход со страницы по значению registr_part
  • +
+

Решение задачи:

+

Предполагается, что страница Вывода предупреждения пользователю уже создана бизнес-аналитиком в проекте, как и переменная процесса create_available, имеющая тип строка и значение которой заполняется с помощьюОбработчика, выполняющего SQL-запрос перед открытием страницы. Для настройки Текстового поля и отображения информации на странице в соответствии с условиями задачи необходимо сделать следующее:

+
    + +
  • добавить видимый элемент Текст, который будет служить заголовком страницы и настроить его согласно условию задачи (рис.1)
  • +
  • добавить скрытое Текстовое поле (можно назвать его как create_available), значение которого будет заполняться из переменной процесса create_available (рис.2)
  • +
  • добавить кнопку навигации, по нажатию на которую будет осуществляться Выход со страницы и следующий переход по бизнес-процессу (рис.3)
  • +
+

+ +
+
        рис.1 Настройка заголовка страницы    
+        рис.2 Настройка скрытого Текстового поля          
+        рис.3 Настройка кнопки навигации
+
+ +
    + +
  • + +

    добавить три скрытых по умолчанию компоненты Текст, которые будут содержать в себе сообщения для пользователя (рис.4, рис.5, рис.6)

    + +
    +
    рис.4 Настройка первого сообщения пользователю   
    +рис.5 Настройка второго сообщения пользователю       
    +рис.6 Настройка третьего сообщения пользователю
    +
    +
  • +
  • + +

    добавить три Обработчика событий, которые в зависимости от значения Текстового поля будут отображать статичные сообщения пользователю (рис.7, рис.8, рис.9)

    +
  • +
+

+ +
+
    рис.7 Настройка обработчика событий для 1-го условия     
+    рис.8 Настройка обработчика событий для 2-го условия      
+    рис.9 Настройка обработчика событий для 3-го условия
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и сообщения пользователю на странице Вывода предупреждения отображаются корректно (рис.10, рис.11).

+

+ +
+
рис.10 Визуальное отображение вывода первого варианта предупреждения пользователю   
+рис.11 Визуальное отображение вывода второго варианта предупреждения пользователю
+
+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミセムひセミアムミーミキミクムび契ミスミーミキミイミーミスミクミオ_ミセムミウミーミスミクミキミームミクミク_ムひオミコムムひセミシ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミセムひセミアムミーミキミクムび契ミスミーミキミイミーミスミクミオ_ミセムミウミーミスミクミキミームミクミク_ムひオミコムムひセミシ.html new file mode 100644 index 0000000..7f883a4 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ墟ーミコ_ミセムひセミアムミーミキミクムび契ミスミーミキミイミーミスミクミオ_ミセムミウミーミスミクミキミームミクミク_ムひオミコムムひセミシ.html @@ -0,0 +1,95 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミクムミソミセミサム糊キミセミイミームび ミコミセミシミソミセミスミオミスムび ミ「ミオミコムム ミエミサム ミセムひセミアムミーミカミオミスミクム ミスミーミキミイミーミスミクム ミセムミウミーミスミクミキミームミクミク ミスミー ムムびミーミスミクムミオ? + + + + + + +
+
+ + + +
+
+

Как использовать компоненту Текст для отображения названия организации на странице?

+

Постановка задачи: необходимо реализовать на странице вывода информации об организации элемент Текст (с возможностью сохранения), который будет отображать наименование организации и сохраняться в базу данных, содержащий следующие настройки:

+
    + +
  • надпись поля -Название организации
  • +
  • поле должно иметь подсказку -Наименование организации
  • +
  • значение поля должно подгружаться из переменной процесса organization
  • +
  • сохранение значения должно осуществляться в базу данныхв таблицу organization колонку Организация (legal_entity_id)
  • +
+

Решение задачи:

+

Предполагается, что бизнес процесс и страница вывода информации об организации уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***. Для добавления на страницу и настройки компоненты Текст (с возможностьюсохранения) необходимо сделать следующее:

+
    + +
  • добавить внутрь Формы компоненту Текст и произвести настройки согласно условию задачи (рис.1)
  • +
  • в функции Заполнить значением из переменной любого типа выбрать переменную процесса, относящуюся к организации****(рис.2)
    +(прим. переменная процесса была создана ранее при создании бизнес процесса)
  • +
  • в функции Сохранение значения необходимо указать таблицу и колонку БД, куда будет сохранена информация об организации (рис.2)
  • +
+

+ +
+
рис.1. Добавление компоненты Текст (с возможностью сохранения) на страницу   
+рис.2. Настройка компоненты Текст (с возможностью сохранения)
+
+ +

Результат выполнения задачи:

+

После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены, как, например, Текст соответствует наименованию организации (рис.3).

+

+

рис.3.Визуальное отображение выполнения условий задачи

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ.html new file mode 100644 index 0000000..564a280 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ慴スミセミウミセムムびミセムミスミセミオ_ミソミセミサミオ.html @@ -0,0 +1,213 @@ + + + + + + + + Web-BPM Docs – ミ慴スミセミウミセムムびミセムミスミセミオ ミソミセミサミオ + + + + + + +
+
+ + + +
+
+

Многострочное поле

+

Назначение

+

Многострочное поле - это компонента, которая используетсядля ввода и отображения нескольких строк текста. В таком текстовом поле допустимо делать переносы строк.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Многострочное полеможет использовать для:

+
    + +
  • Для сохранения введенной информации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Поле многострочного ввода. Сохранение значения должно быть включена).
  • +
  • Для отображения текста, который был введен пользователем приложения или является константой, определённой в логике приложения (в данном случае, функция компоненты Поле многострочного ввода. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке).
  • +
+

Компонента Многострочное поле находится в разделе Компоненты - Поля - Многострочное поле.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите название организации
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Наименование организации
Значение позволяет задать значение поля по умолчанию пример возможного значения: ООО “Форт”
Максимальная длина задаёт максимальное количество вводимых символов в поле пример возможного значения: 10
Минимальная длина (Min length) задаёт минимальное количество вводимых символов в поле
allowMoreSymbols при true позволяет пользователю ввести больше символов, чем значение максимальной длины, но при этом поле станет невалидным и будет отображено сообщение об ошибке maxLengthErrorMsg (см. документацию) логическое значение (true, false)
Оперировать немаскированным значением позволяет регулировать возможность ввода текста в соответствии с маской, даже если маска задана (значение маски указывается в расширенных настройках в поле “маска, ограничивающая ввод”) +
    +
  • значение не определено - по умолчанию
  • +
  • активно - сохранять без форматирования маской
  • +
  • пустое - сохранять с форматированием маской
Маска позволяет задать маску, в соответствии с которой пользователь будет осуществлять ввод текста выставление маски не может обеспечить выполнение требования обязательности ввода, маска только внешне отфильтровывает и форматирует последовательность вводимых пользователем символов заранее заданным образом (например, ввод тел. номера “+ 7 (917) - 101 - 02 - 03” вместо “8917010203” или не допустит такого ввода “89170102АЯ”). Для блокирования сохранения записи с пустым значением поля и обеспечения контроля обязательности ввода используйте свойство “Обязательность”
Регистр позволяет задать вид регистра вводимого текста +
    +
  • в верхнем регистре - заглавные (прописные) буквы
  • +
  • в нижнем регистре - строчные (маленькие) буквы
  • +
  • первая буква каждого слова заглавная
  • +
  • только первая буква текста заглавная, остальные строчные
  • +
  • первая буква текста заглавная
Тип позволяет задать тип вводимого текста +
    +
  • обычный текст
  • +
  • пароль (заполнитель - звездочки)
  • +
  • электронная почта
  • +
  • URL
Регулярное выражение или Pattern позволяет задать проверку вводимого текста с помощью регулярных выражений поля, для которых не выполняются условия заданных регулярных выражений, при сохранении записи подсвечиваются красным оттенком и операция отменяется.
patterErrorMsg, maxLengthErrorMsg, minLengthErrorMsg позволяют задать пользовательское сообщение о соответствующих ошибках валидации строка
+

Примеры масок:

+
    + +
  • A (буква, латинская, регистр не имеет значения) в маске - позволит ввести в поле одну любую букву любого алфавита
  • +
  • Б (буква, русская, в верхнем регистре) в маске - позволит ввести в поле одну любую букву русского алфавита
  • +
  • 9 (цифра) в маске - позволит ввести в поле одну любую цифру
  • +
  • * (символ) в маске - позволит ввести в поле одну любую цифру или букву
  • +
  • R (буква, латинская, в верхнем регистре) в маске - позволит ввести в поле одну римскую цифру
  • +
  • ? (символ) в маске - позволит ввести или опустить при вводе в поле один необязательный символ (букву, цифру) ,например 999?9; под эту маску подходит как 123, так и 1234
  • +
+

Например, необходимо задать форматирование ввода маской для значения Й456QЬ. В данном случае маска будет выглядеть следующим образом: А999АА, где А - латинская буква.

+

Некоторые типовые регулярные выражения:

+
    + +
  • \d [0-9] - одна цифра от 0 до 9
  • +
  • \D [^0-9] - любой символ кроме цифры
  • +
  • \s - пробел
  • +
  • [A-Z] - только заглавная латинская буква
  • +
  • [A-Za-z] - только латинская буква в любом регистре
  • +
  • [А-Яа-яЁё] - только русская буква в любом регистре
  • +
  • [A-Za-zА-Яа-яЁё] - любая буква русского и латинского алфавита
  • +
  • [0-9]{3} - три цифры
  • +
  • [A-Za-z]{6,} - не менее шести латинских букв
  • +
  • [0-9]{,3} - не более трёх цифр
  • +
  • [0-9]{5,10} - от пяти до десяти цифр
  • +
  • ^[a-zA-Z]+$ - любое слово на латинице
  • +
  • ^[А-Яа-яЁё\s]+$ - любое слово на русском включая пробелы
  • +
  • ^[ 0-9]+$ - любое число
  • +
+

Например, чтобы ограничить возможность ввода и сохранения текста латиницей, можно использовать регулярное выражение ^[А-Яа-яЁё\s]+$

+

Свойство Поле многострочного ввода. Сохранение значения

+

+

В случае, если значение в многострочное поле необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение.Для выбора доступны только колонки имеющий строковый тип в базе данных. В случае, если значение многострочного поля не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда многострочное поле используется дляотображения текста, который был введен пользователем приложения или является константой, определённой в логике приложения.

+

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Сохранить значение в переменную процесса любого типа

+

Сохранить значение в переменную процесса любого типа

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Склеить несколько значений

+

Склеить несколько значений

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Поле многострочного вводаот компоненты Текст? Компонента Поле многострочного ввода используются для отображения многострочного текста на странице, где предусмотрены переносы строк.
Все ли свойства компоненты обязательны для заполнения? Нет.Свойства компоненты определяются в зависимости от решаемой задачи.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство Поле многострочного ввода. Сохранение значения? Да. В случае, если функция “Поле многострочного ввода. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
Можно ли ограничить перенос строки по нажатию на клавишу Enter в Многострочном поле? Чаще всего подобногорода задачи решаются использованием Маски в свойствах элемента. Для того, чтобы ограничить перенос строки по нажатию на клавишу Enter в Многострочном поле необходимо в Расширенных настройках в свойстве Маска указать значение[^\r\n]* и перевести значение флага regexMask =true
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ斷ームムびミセミケミコミー_ミイミキミーミクミシミセミキミーミイミクムミクミシム錦_ミソミセミサミオミケ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ斷ームムびミセミケミコミー_ミイミキミーミクミシミセミキミーミイミクムミクミシム錦_ミソミセミサミオミケ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html new file mode 100644 index 0000000..485e41b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ斷ームムびミセミケミコミー_ミイミキミーミクミシミセミキミーミイミクムミクミシム錦_ミソミセミサミオミケ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html @@ -0,0 +1,88 @@ + + + + + + + + Web-BPM Docs – ミ斷ームムびミセミケミコミー ミイミキミーミクミシミセミキミーミイミクムミクミシム錦 ミソミセミサミオミケ ム ミソミセミエミアミセムミセミシ ミキミスミームミオミスミクム + + + + + + +
+
+ + + +
+
+

Настройка взаимозависимых полей с подбором значения

+

Дано: два поля City (Город), District (Район). Сущности: country, city, country_city.

+

Задача: настроить подгрузку районов в зависимости от выбранного города, т.е. если в первом поле выбрали Казань, то во втором должны подгружаться казанские районы, н-р, Вахитовский.

+

Решение:

+
    + +
  1. + +

    Задать сущность для поля City (Autocomplete Service - Load Dao) - выбрать city. Настроить свойства поля:

    +
  2. +
  3. + +

    Задать сущности для поля District (Autocomplete Service - Load Dao) -country, city,country_city. Настроить связи между ними:
    +2.1. Тянем стрелки от country_city к country и city.
    +2.2. Выделяем стрелку, нажимаем кнопку “Элемент”, выбираем исходящую и входящую колонки.

    +
  4. +
  5. + +

    Настроить остальные свойства поля District:
    +3.1. Задать родителя (City) - drag&drop City в свойство Parent Control поля District.
    +3.2. Выставить значения Parent Control Reference - city, city_id.
    +3.3. Настроить оставшиеся свойства, в т.ч. Column For Sort, Display Column.

    +
  6. +
+

Результат: в поле Город выбрали Казань. В поле район можно выбирать только казанские районы, в данном случае Вахитовский.

+ +
+
+

Attachments:

+
+ +
+ +

city-attr.JPG (image/jpeg)
+ relations-1.JPG (image/jpeg)
+ relations-2.JPG (image/jpeg)
+ district-attr.JPG (image/jpeg)
+ dependents_autocomplete.JPG (image/jpeg)

+
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙オムミオミコミサム紗ミームひオミサム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙オムミオミコミサム紗ミームひオミサム.html new file mode 100644 index 0000000..d5173b1 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙オムミオミコミサム紗ミームひオミサム.html @@ -0,0 +1,152 @@ + + + + + + + + Web-BPM Docs – ミ渙オムミオミコミサム紗ミームひオミサム + + + + + + +
+
+ + + +
+
+

Переключатель

+

Назначение

+

Переключатель - это компонента, которая используется для выбора одного из нескольких предоставленных вариантов.Значения берутся из базы данных,а не вводятся вручную.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Переключатель может использоваться для:

+
    + +
  1. Для сохранения введенной информации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Переключатель. Сохранение значения должна быть включена)
  2. +
  3. Для отображения значений,которые были введены пользователем приложенияили являются константой, определённой в логике приложения (в данном случае, функция компоненты Дата. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке)
  4. +
+

Компонента Переключатель находится в разделе Компоненты - Поля - Переключатель.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента. Данное свойство не применимо с логикой отображения поля на странице приложения
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Статусы
+

Свойство Переключатель. Подгрузка данных

+

+

Позволяет задать источник подгрузки/сохранения данных в компоненту из/в объекта базы данных (таблицы или представления) с указанием следующих дополнительных настроек:

+
    + +
  • Граф сущностей элемента настраивается в соответствии с п. Настройка Графа сущностей. Является обязательным к заполнению и настройке.
  • +
  • Возвращать значение дополнительно из - по умолчанию компонента возвращает идентификатор записи выбранной из справочника значений. Настройка данного параметра позволяет указать компоненте, какое значение необходимо дополнительно считать и вернуть, кроме значения идентификатора выбранной пользователем записи.
  • +
  • + +

    Колонка наименования - позволяет задать колонку базы данных, значение которой будет отображено пользователю в списке

    +
  • +
  • + +

    Порядок сортировки - позволяет задать порядок сортировки отображаемых значений в списке для выбора, принимает значения:

    +
      + +
    • по возрастанию- значения будут сортироваться от меньшего к большему
    • +
    • по убыванию- значения будут сортироваться от большего к меньшему
    • +
    +
  • +
  • + +

    Колонка сортировки - позволяет задать колонку базы данных, по которой будет производиться сортировка

    +
  • +
+

Пример возможной настройки:

+

+

Свойство Переключатель. Сохранение значения

+

+

В случае, если значение в поле Переключатель необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Для выбора доступны только колонки имеющие числовой тип в базе данных.

+

В случае, если значение поля Переключатель не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется для отображения значения, которое было введено пользователем приложения или является константой, определённой в логике приложения.

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений,- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Сохранить значение в переменную процесса любого типа

+

Сохранить значение в переменную процесса любого типа

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Статичный переключатель от компоненты Переключатель? Компонента Статичный переключательиспользуются для выбора значений, которые вводятся аналитиком при настройке компоненты,Переключательиспользуется для выбора значений,которые берутся из базы данных.
Все ли свойства компоненты обязательны для заполнения? Нет.Свойства компоненты определяются в зависимости от решаемой задачи.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство Переключатель. Сохранение значения? Да. В случае, если функция “Переключатель. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html new file mode 100644 index 0000000..bfaec12 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙セミサミオ_ミイミイミセミエミー_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html @@ -0,0 +1,201 @@ + + + + + + + + Web-BPM Docs – ミ渙セミサミオ ミイミイミセミエミー ム ミソミセミエミアミセムミセミシ ミキミスミームミオミスミクム + + + + + + +
+
+ + + +
+
+

Поле ввода с подбором значения

+

Назначение

+

Поле ввода с подбором значения - это компонента, которая визуально выглядит как обычное поле ввода, но по мере набора пользователем символов с клавиатуры подбирает, отображая возможные варианты, значений из подключенного справочника, при этом функционируя уже как компонента Выпадающий список.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Поле ввода с подбором значения может использоваться для:

+
    + +
  1. Для сохранения введенной информации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Поле ввода с подбором значения. Сохранение значения должна быть включена)
  2. +
  3. Для отображения данных, которые были введены пользователем приложения или является константой, определённой в логике приложения(в данном случае, функция компоненты Поле ввода с подбором значения. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке)
  4. +
+

Компонента Поле ввода с подбором значения находится в разделе Компоненты - Поля - Поиск.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Район
Зависит от позволяет указать объект (родителя), например Выпадающий список, по идентификатору которого будут отображаться сведения в текущем зависимом элементе
Начать подбор вариантов после ввода позволяет задать количество символов, после ввода которых пользователем, компонента начинает подбор и вывод вариантов, соответствующих уже введенной пользователем подстроке пример возможного значения: 3
Прикрепить значение (Scroll Gravity) позволяет задать расположение уже выбранного значения при отображении в выпадающем списке доступных значений позволяет задать расположение уже выбранного значения при отображении в выпадающем списке доступных значений +
    +
  • По умолчанию (DEFAULT) - выбранное значение отображается в порядке своего следования в списке доступных значений для выбора
  • +
  • По центру (CENTER) - выбранное значение отображается по центру в выпадающем списке доступных значений для выбора
  • +
  • В верхней части (TOP)- выбранное значение отображается в верхней части выпадающего списка доступных значений для выбора
  • +
  • В нижней части (BOTTOM) - выбранное значение отображается в нижней части выпадающего списка доступных значений для выбора
Исключить условия графа данное свойство позволяет подгружать для отображения значения в поле минуя условия (ограничения), заданные в Графе сущностей компоненты +
    +
  • Не активно - в данном состоянии, при подгрузке значений отсекаются значения не соответствующие условиям, заданным в Графе сущностей компоненты
  • +
  • Активно - в данном состоянии, при подгрузке значений допускается отображение значений, не соответствующих условиям, заданным в Графе сущностей компоненты, но без возможности их повторного выбора в выпадающем списке
Помечать невалидным (Mark invalid if not Satisfy) данное свойство доступно для управления при активации значении свойства Exclude Graph Conditions и позволяет визуально помечать поле как невалидное на странице, в случае если в него было подгружено значение, не соответствующие условиям Графа сущностей элемента +
    +
  • Не активно - в данном значении, поле не помечается на странице как невалидное и отображается стандартным образом
  • +
  • Активно - в данном значении, убрав фокус с поля, оно помечается на странице как невалидное
Css class if not Satisfy данное свойство доступно для управления при активном значении свойства Exclude Graph Conditions и позволяет задать CSS-класс, который будет применяться, в случае если в поле было подгружено значение, не соответствующие условиям Графа сущностей элемента
Tooltip if not Satisfy позволяет отображать всплывающую подсказку,в случае если в поле было подгружено значение, не соответствующие условиям Графа сущностей элемента. Данное свойство доступно для управления при: активном значении свойства Exclude Graph Conditions и заданному значению в поле Css Class If Not Satisfy пример возможного значения: not_valid
+

Свойство компоненты: Поле ввода с подбором значения. Сохранение значения

+

+

указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение

+

+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен **перечень функций, расширяющих её базовую функциональность,**которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Сохранить значение в переменную процесса любого типа

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить_роли_текущего_пользователя

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Сконвертировать значение в целочисленный тип

+

Сконвертировать значение в целочисленный тип

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Поле ввода с подбором значения от компоненты Выпадающий список? Поле ввода с подбором значения отличается от компоненты Выпадающий список тем, что не показывает и не подгружает сразу все строки из справочника, но по мере ввода пользователем подстроки предлагает всё более усеченный список вариантов, выводя только релевантные уже введенной подстроке значения.
Значение какого типа возвращает компонента? В общем случае может быть любым (чаще всего целочисленным или строковым).Тип возвращаемого компонентойзначения определяется выбором аналитиком метода, который возвращает значение, а также типом колонки в базе данных.
+

Метод “Получить значение” возвращает первичный ключ и тип такого значения зависит от типа колонки первичного ключа в базе данных (обычно целочисленный bigint).

+

Метод"Задать значение" выставляет в компоненте значение, соответствующее значению в колонке с первичным ключом.

+

Метод “Получить значение BusinessId” возвращает значение колонки, заданной в параметре компоненты “Возвращать значение доп.колонки(BusinessId)” и определяется типом этой колонки в базе данных.

+

Метод “Задать значение поBusinessId” выставляет в компонентезначение, соответствующее значению в колонке, указанной в параметре компоненты"Возвращать значение доп.колонки(BusinessId)".

+

В этом примере функции “Получить значение” и “Задать значение” работаю следующим образом:

+ + + + + + + + + + + + + + + + + + + + + +
Функция в обработчике событий Пример использования
Получить значение BusinessId +
    +
  1. Пользователь выбрал значение на форме из справочника
  2. +
  3. Для выбранной пользователем записи значение из колонки, которая указана в параметре Возвращать значение доп. колонки (BusinessId), возвращается значение
Пример: Для справочника статусов задачи для BusinessId указана дополнительная колонка CODE. Значение этой колонки будет возвращено этой функцией при выборе пользователя.
Получить значение +
    +
  1. Пользователь выбрал значение на форме из справочника
  2. +
  3. Для выбранной пользователем записи значение из колонки, которая указана как первичный ключ, возвращается значение
Пример: Для справочника статусов задачи для первичного ключа указана колонка STATUS_ID. Значение этой колонки будет возвращено этой функцией при выборе пользователя.
Задать значение BusinessId +
    +
  1. Аналитик выбрал значение из справочника для отображения в поле по умолчанию. Выбор выполнен через дополнительное поле BusinessId, а точнее с помощью CODE. Для этого с помощью функции Задать значение указывается квалификатор (статичное), тип значения (строка) и само значение (например, “ЗАДАЧА ЗАВЕРШЕНА”)
  2. +
  3. Обработчик события загрузки формы вызывает функцию задания значения
  4. +
  5. Поле ввода автоматически по заданному CODE = “ЗАДАЧА ЗАВЕРШЕНА”; находит единственную запись в справочнике и отображает пользователю как значение по умолчанию
Задать значение +
    +
  1. Аналитик выбрал значение из справочника для отображения в поле по умолчанию. Выбор выполнен через первичный ключ, а точнее с помощью STATUS_ID. Для этого с помощью функции “Задать значение” указывается квалификатор (статичное), тип значения (целое число) и само значение (например, “123”)
  2. +
  3. Обработчик события загрузки формы вызывает функцию задания значения
  4. +
  5. Поле ввода автоматически по заданному STATUS_ID = 123 находит единственную запись в справочнике и отображает пользователю как значение по умолчанию
+

Дополнительная функция “Сконвертировать значение в целочисленный тип” как раз используется для явной конвертации возвращаемого компонентой неопределенного типа (ANY) в явно желаемый Integer (например, при присвоении идентификатора строки выбранного в компоненте значения какой-либо переменной целого типа на странице).

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html new file mode 100644 index 0000000..844f287 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html @@ -0,0 +1,449 @@ + + + + + + + + Web-BPM Docs – ミ渙セミソミセミサミスム紹オミシム巾ケ ムミソミクムミセミコ ミキミーミイミクムミクミシム錦 ミキミーミソミクムミオミケ + + + + + + +
+
+ + + +
+
+

Пополняемый список зависимых записей

+

Назначение

+

Пополняемый список зависимых записей - это составной компонент, которыйиспользуется для выполнения на одной web-странице двух последовательных действий - добавления одной или нескольких новых строк в зависимую (от главной сущности компоненты Форма на текущей странице) таблицу и последующую взаимосвязь (линкование) каждой из вновь добавленных в зависимую таблицу строкс главной сущностьюкомпоненты Форма на текущей странице. Примером такого использования может служить необходимость прикрепления сразу нескольких сканированных документов (т.е. добавление набора файлов с атрибутами имя файла, описание, размер и т.д. в виде отдельных строк взависимую таблицу “Вложения”) к какой-то одной заявке (является главной сущностью компоненты Форма основной страницы, на которой находится пользователь).

+

Если web-страница открывается в режиме просмотра/изменения, то компонента отображает и позволяет внести изменения в список ранее уже связанных записей зависимой таблицы с главной сущностью компоненты Форма.

+

Для того, чтобы сформированные в этой компоненте строки сохранялись/считывались из/в базу данных, Пополняемый список зависимых записей следует по иерархии расположить внутри компоненты Форма.

+

Работа с компонентой осуществляется в следующей последовательности:

+
    + +
  • нажатие кнопки создать (изменить) в панели кнопок компоненты (в составе компоненты находится над элементом Редактируемая таблица)
  • +
  • в открывшемся экранном интерфейсе (элемент компоненты Диалог) ввести атрибуты создаваемой (изменяемой) записи
  • +
  • сохранение записи в элемент “Редактируемая таблица” компоненты Пополняемый список зависимых записей по нажатию на кнопку “Ок”
  • +
  • сохранение всей карточки главной сущностикомпоненты Форма, при котором осуществляется взаимопривязка (линкование) каждой записи из элемента “Редактируемая таблица” к главной сущности экранного интерфейса
  • +
+

Компонента Пополняемый список зависимых записей находится в разделе Компоненты - Сложные - Пополняемый список зависимых записей.

+

Структура компоненты Пополняемый список зависимых записей представлена набором простых компонентов, связанных между собой заранее определенными алгоритмами, и в нее входят следующие элементы (рис.2)

+

Структура

+

Основные вложенные элементы компоненты “Пополняемый список зависимых записей”(табл.1)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование элемента Описание
Пополняемый список зависимых записей Корневой контейнер вертикального выравнивания компоненты, в который по иерархии вложены все дочерние компоненты. основные параметры элемента “Список зависимых записей”
Кнопка создать используется для открытия (вызова) диалогового окна с экранным интерфейсом для ввода атрибутов записи, которую необходимо добавить в связанную таблицу
Кнопка редактировать используется для открытия (вызова) диалогового окна с экранным интерфейсом для изменения атрибутов записи, которую необходимо добавить в связанную таблицу
Кнопка Удалить используется для удаления ранее уже связанной записи в зависимой таблице
Редактируемая таблица используется для отображения строк в зависимой таблице, которые уже связаны с главной сущностью компоненты Форма
Диалог используется для отображения всплывающего диалогового окна, позволяющего ввести или изменить атрибуты зависимой записи
Форма компонента - контейнер используется для наполнения её простыми компонентами, которые позволят пользователю ввести значения атрибутов зависимой записи (при добавлении или изменении)
Кнопка Сохранение используется для сохранения введенных пользователем в поля формы значений атрибутов зависимой записи
Кнопка Отмены используется для отмены ввода значений атрибутов зависимой записи и закрывает Диалог
+

Свойства

+

Компонента имеет набор общих свойств.

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Вертикальный контейнер

+

Базовые функции элемента “Пополняемый список зависимых записей”

+

Заполнить значением по умолчанию

+

Основные параметры элемента Редактируемая таблица

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Таблица

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Показывать номер строки позволяет задать автоматическую нумерацию строк +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать нумерацию строк
  • +
  • Не активно - не отображать нумерацию строк
Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
    +
  • возможность выбора сразу нескольких или одной строки
  • +
  • возможность выбора одной строки - значение по умолчанию
Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать колонку флагов +
  • Не активно - не отображать колонку флагов
Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого
Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
    +
  • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
  • +
  • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
  • +
  • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
Форма ввода и сохранения зависимых записей Позволяет указать (методом DragAndDrop) ссылку на элемент Пополняемый список зависимых записей - Форма. В текущем компоненте, в которой будут вводиться атрибуты записей для последующей вставки в зависимую таблицу (или отображаться уже сохраненные при открытии в режиме просмотра) По умолчанию уже заполнена соответствующей ссылкой на этот элемент
Loading Overlay Type позволяет выбрать вид прелоадера при подгрузке данных в таблицу Доступны следующие виды настройки: +
    +
  • TEXT_OVERLAY - отображает текст в центре таблицы при подгрузке данных, задаваемый в свойствах: No Rows Overlay Message и Loading Overlay Message
  • +
  • PROGRESS_BAR - отображает прогресс-бар при подгрузке данных в таблицу
Allow Context Menu With позволяет управлять отображением контекстного меню (список доступных для исполнения действий) при нажатии правой кнопкой мыши на ячейку внутри таблицы +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - при нажатии правой кнопкой мыши на ячейку внутри таблицы отображается контекстное меню доступных действий, например, копирование значения ячейки
  • +
  • Не активно - исключает отображение контекстного меню при нажатии правой кнопкой мыши на ячейку внутри таблицы
+

Свойство компоненты: “Пополняемый список зависимых записей”. Подгрузка данных

+

+

позволяет задать граф сущностей для подгрузки данных в Таблицу. Является обязательным к заполнению и настройке.

+

Особенностью данной настройки является обязательная необходимость указания колонок, по которым связаны таблица, в которую добавляются зависимые записи (в примере - “Вложенные документы задачи”), и таблица главной сущности компоненты Форма (в примере - “Список задач”)

+

С описанием настройки Графа сущностей для Таблицы можно ознакомиться в разделе: Настройка Графа сущностей

+

Свойство компоненты: Таблица. Настроить колонки таблицы

+

+

позволяет настроить колонки (набор , порядок следования, сортировка) в Таблице

+

Отображает новые записи, добавляемые пользователем с использованием компоненты Пополняемый список зависимых записей

+

с описанием настройки Колонок Таблицы можно ознакомиться в разделе:

+

Настройка колонок Таблицы

+

Свойство компоненты: Активировать кнопку после выбора строки в таблице

+

+

Автоматически переводит кнопки “Редактировать”, “Удалить” в кликабельное состояние после выбора строки в Редактируемой таблице.

+

Если ни одна строка в Редактируемой таблице не выбрана, то кнопки не могут быть нажаты пользователем.

+

Базовые функции элемента “Редактируемая таблица”

+

Заполнить значением по умолчанию

+

Основные параметры элемента Кнопка “Создать”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет создать надпись на кнопке Создать - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет
+

Свойство компоненты: Диалог. Вызвать

+

+

указывается ссылка на дочерний элемент Пополняемый список зависимых записей - Диалог, для отображениявсплывающего диалогового окна, позволяющего ввести или изменить атрибуты зависимой записи при нажатии на кнопку

+

Свойство компоненты: “Пополняемый список зависимых записей”. Создать новую зависимую запись в списке

+

+

Предписывает системе, что нужно связать логикой исполнения перечисленные дочерние элементы Пополняемый список зависимых записей - Диалог, в котором находится элемент Пополняемый список зависимых записей - Форма, информация из полей которой потребуется для вставки записей в Редактируемую (зависимую) таблицу.

+

Параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Пополняемый список зависимых записей

+
    + +
  • Форма ввода и сохранения зависимых записей: заполняется ссылкой на дочерний элемент Пополняемый список зависимых записей - Форма основная результирующая таблица с выбранными (зависимыми) записями на странице
  • +
  • Пополняемый список зависимых записей : указывается ссылка на дочерний элемент Редактируемая таблица, которая отображает строки в зависимой таблице
  • +
  • Вызываемый диалог: указывается ссылка на дочерний элемент Пополняемый список зависимых записей - Диалог, для отображениявсплывающего диалогового окна, позволяющего ввести или изменить атрибуты зависимой записи
  • +
  • Вызываемый диалог: указывается текст заголовка дочернего элемента Диалог, по умолчанию принимает значение “Создание записи” (но может быть изменен)
  • +
+

Основные параметры элемента Кнопка “Редактировать”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет создать надпись на кнопке Редактировать - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет Внести изменения в список?
+

Свойство компоненты: Диалог. Вызвать

+

+

Вызвать диалог - указывается ссылка на дочерний элемент Пополняемый список зависимых записей - Диалог, для отображениявсплывающего диалогового окна, позволяющего ввести или изменить атрибуты зависимой записи при нажатии на кнопку

+

Свойство компоненты: “Пополняемый список зависимых записей”. Изменить новую зависимую запись в списке

+

+

Предписывает системе, что нужно связать логикой исполнения перечисленные дочерние элементы Пополняемый список зависимых записей - Диалог, в котором находится Пополняемый список зависимых записей - Форма, информация из полей которой потребуется для вставки записей в Редактируемую (зависимую) таблицу.

+

Параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Пополняемый список зависимых записей

+
    + +
  • Форма ввода и сохранения зависимых записей: заполняется ссылкой на дочерний элемент Пополняемый список зависимых записей - Форма основная результирующая таблица с выбранными (зависимыми) записями на странице
  • +
  • Пополняемый список зависимых записей : указывается ссылка на дочерний элемент Редактируемая таблица, которая отображает строки в зависимой таблице
  • +
  • Вызываемый диалог: указывается ссылка на дочерний элемент Пополняемый список зависимых записей - Диалог, для отображениявсплывающего диалогового окна, позволяющего ввести или изменить атрибуты зависимой записи
  • +
  • Вызываемый диалог: указывается текст заголовка дочернего элемента Диалог, по умолчанию принимает значение “Редактирование записи” (но может быть изменен)
  • +
+

Основные параметрыэлемента “Кнопка Удалить”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе-Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет создать надпись на кнопке Удалить - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет
+

Свойство компоненты: “Пополняемый список зависимых записей”. Удалить новую зависимую запись в списке

+

+

Предписывает системе произвести операцию удаления выбранной записи из элемента Редактируемая (зависимая) таблица

+

Основные параметры элемента “Диалог”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Диалог

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Заголовок позволяет задать заголовок диалога на странице пример возможного значения: Выбор записей - значение по умолчанию
Допускается скрытие через системную Х позволяет задать возможность закрытия диалога по нажатию на системный возможно закрыть диалог через- значение по умолчанию, невозможно закрыть диалог (системный скрыт)
+

Базовые функции элемента “Диалог”

+

Заполнить значением по умолчанию

+

Основные параметры элемента “Форма”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Форма

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Пополняемый список зависимых записей Устанавливает взаимосвязь с элементом Редактируемая (зависимая) таблица, указывая Системе, в какую таблицу должна сохранить (или считать) данные элементу Пополняемый список зависимых записей #Форма
Диалог Указывает системе на взаимосвязь с родительским элементом Пополняемый список зависимых записей #Диалог, в котором элемент Форма находится
+

Свойство компоненты: “Форма”. Подгрузка данных основная

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Скрипт Используется в предустановленной конфигурации по умолчанию, изменений со стороны пользователя не требует
Show server validation error Позволяет выводить текст с северной ошибкой при загрузке формы. +
    +
  • Активно - выводит текст серверной ошибки
  • Не активно - не выводить текст серверной +
  • +
  • Значение не определено - по умолчанию
Message validation template Позволяет задать текст шаблона валидации
+

Базовые функции элемента “Форма”

+

Заполнить значением по умолчанию

+

Основные параметры элемента “Кнопка Сохранения”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка сохранения

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке Значение “Ок” по умолчанию, может быть изменено
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет
Компонента Форма Указывает системе, данные из какого элемента Пополняемый список зависимых записей #Форма следует сохранить в таблицу зависимых записей
+

Основные параметры элемента “Кнопка Отмена”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке Значение “Отмена” по умолчанию, может быть изменено
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет
+

Свойство компоненты: Диалог. Скрыть

+

+

Предписывает системе закрыть элемент Пополняемый список зависимых записей #Диалог в случае нажатия на кнопку Отмена

+

Базовые функции

+

Заполнить значением по умолчанию

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотренперечень функций, расширяющих её базовую функциональность,которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации скриптов (

+

-скрипты выполняются удаленно на сервере приложений,

+

- скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Какие параметры компоненты “Пополняемый список зависимых записей” требуют непосредственной настройки аналитиком? Большинству описанных параметров элементов сложного компонента уже заранее заданы значения по умолчанию, и они не требуют каких-либо изменений от аналитика в типовых случаях. Но часть параметров следует задать в процессе использования компоненты для её внедрения в логику проекта. Вот список этих параметров: “Пополняемый список зависимых записей”. Подгрузка данных; “Таблица”. Настроить колонки таблицы; И дополнительно наполнить полями элемент Пополняемый список зависимых записей #Форма - на этом шаге от аналитика требуется заполнить в дереве страницы контейнер элемента Форма необходимыми простыми компонентами для оперирования атрибутами вставляемой записи.
Можно ли поменять порядок отображаемых колонок в Таблице? Для того, чтобы изменить порядок колонок в Таблице необходимо в свойстве Настроить колонки таблицы - Колонки нажать правой кнопкой мыши на «Элемент» и выбрать предложенные варианты: Переместить наверх - Переместить вниз - Удалить элемент
Как изменить формат отображения данных в колонке Таблицы? В случае, если необходимо изменить формат отображения значений в колонке Таблицы необходимо при настройке колонки применить Форматтер. Например, подгружаемое значение в колонку имеет тип данных Дата и Время (DateTime), но на странице пользовательского приложения необходимо отображать значение в колонке без Времени, только Дату. В таком случае, целесообразно использовать форматтер DateFormatter, который отобразит значение колонки в нужном виде. Но при этом предварительно необходимо применить к Таблице функцию Очистить форматирование колонок таблицы, указав наименование настраиваемой колонки.
Можно ли изменить цветовое оформление Таблицы? Да. Цветовым оформлением Таблицы можно управлять с помощью CSS-стилей, задаваемых в Основных параметрах - Расширенные настройки - CSS классы
Как автоматически вывести сумму значений по колонке в Таблицу? Для того, чтобы на странице отобразилась сумма значений по колонке, необходимо при настройке колонки выбрать Агрегирующую функцию - Сумма, после чего в Таблице автоматически отобразится зафиксированная (положение не будет изменяться при прокрутке записей) результирующая строка в Таблице. При этом строка будет выделена отличным от других записей в таблице цветом и значение в результирующем поле будет динамически изменяться по мере заполнения колонки (выбранной в качестве источника данных) новыми значениями в таблице базы данных.С описанием настройки колонок в Таблице можно ознакомиться в разделе: Настройка колонок Таблицы
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html new file mode 100644 index 0000000..88554ab --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html @@ -0,0 +1,777 @@ + + + + + + + + Web-BPM Docs – ミ。ミソミクムミセミコ ミキミーミイミクムミクミシム錦 ミキミーミソミクムミオミケ + + + + + + +
+
+ + + +
+
+

Список зависимых записей

+

Назначение

+

Список зависимых записей - это составной компонент, который используется для формирования и отображения списка выбранных пользователем и связанных с главной сущностью (компонентой Формана текущей странице) записей (одной или нескольких) из множества доступных, но без возможности пополнения пользователем списка доступных записей. Примером использования может служить задача назначения нескольких сотрудников из списочного состава организации в команду проекта, когда списочный состав - это заранее сформированный и нередактируемый из компоненты справочник сотрудников, из которого можно только выбирать тех, кто будет включен в команду проекта.

+

Для того чтобы данные, отобранные с помощью этой компоненты, сохранялись/считывались в/из базы данных, её необходимо расположить внутри (вложить) компоненты Форма.

+

Компонента Список зависимых записей находится в разделе Компоненты - Поля - Список зависимых записей.

+

В структуру компоненты Список зависимых записей, представленной набором простых компонентов и связанных между собой заранее определенными алгоритмами, входят следующие элементы

+

Работа с компонентой и выбор требуемых значений из списка доступных записей осуществляется в следующей последовательности:

+
    + +
  • нажатие Кнопки “Изменить”, расположенной рядом с основной Таблицей зависимых записей на странице(в составе компоненты находится под элементом Связанная таблица); по нажатию на кнопку происходит открытие всплывающего диалогового окна
  • +
  • поиск необходимых значений в Таблице доступных записей (на странице в диалоговом окне находится слева)
  • +
  • выбор значения с помощью Кнопок “Добавить” или *“Добавить все” *из списка доступных записей; по нажатию на кнопку происходит перенос (добавление) записи из Таблицы доступных значений (на странице в диалоговом окне находится слева) в Связанную таблицу выбранных значений (на странице в диалоговом окне находится справа)
  • +
  • удаление выбранного значения с помощью Кнопок “Удалить” или “Удалить все” из списка уже выбранных значений; по нажатию на кнопку происходит перенос (удаление) записи из Связанной таблицы выбранных значений(на странице в диалоговом окне находится справа) и возвращение записи в Таблицу доступных значений(на странице в диалоговом окне находится слева)
  • +
  • перенос значений из Связанной таблицы выбранных записей в результирующую Связанную таблицу с главной сущностью (компонентой Формана текущей странице) по нажатию на Кнопку “Ок” и закрытие диалогового окна
  • +
  • сохранение всей карточки главной сущности компоненты Форма, при котором осуществляется взаимопривязка (линкование) каждой записи из элемента “Связанная таблица” к главной сущности экранного интерфейса
  • +
+

Структура

+

Основные вложенные элементы компоненты Список зависимых записей

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование элемента Описание
Список зависимых записей контейнер вертикального выравнивания, в который вложены все дочерние компоненты
Связанная таблица используется для отображения строк в зависимой таблице, которые уже связаны сглавной сущностью компоненты Форма
Кнопка Изменить используется для открытия (вызова) диалогового окна со списком доступных значений для выбора
Диалог используется для отображения всплывающего диалогового окна со списком доступных значений для выбора
Таблица используется для отображения списка доступных значений (записей) для выбора (во всплывающем диалоговом окне находится слева)
Кнопка Добавить используется для переноса (добавления) одной выбранной записи из Таблицы
Кнопка Добавить все используется для переноса (добавления) всех записей из Таблицы всех доступных значений(на странице в диалоговом окне находится слева)вСвязанную таблицувыбранных значений(на странице в диалоговом окне находится справа)
Кнопка Удалить используется для исключения (удаления) строки из Связанной таблицы уже выбранных значений (на странице в диалоговом окне находится справа) и обратного переноса в Таблицу всех доступных значений(на странице в диалоговом окне находится слева)
Кнопка Удалить все используется для исключения (удаления) всех строк из Связанной таблицы уже выбранных значений (на странице в диалоговом окне находится справа) и обратного переноса в Таблицу всех доступных значений(на странице в диалоговом окне находится слева)
Связанная таблица используется для отображения списка уже выбранных пользователем записей (во всплывающем диалоговом окне находится справа) из массива доступных значений (записей) для выбора. Необязательна для настройки (только при необходимости более детального вывода информации), так как по умолчанию дублирует конфигурацию
Кнопка Ок используется для переноса значений из Связанной таблицы выбранных записей в результирующую Связанную таблицу с главной сущностью(компонентойФормана текущей странице)и закрытия диалогового окна
Кнопка Отмена используется для отмены выбора значений из списка доступных и закрытия диалогового окна
+

Свойства

+

Компонента имеет набор общих свойств.

+

Основные параметры Список зависимых записей

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Вертикальный контейнер

+

Основные параметры Связанной таблицы

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Таблица

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Показывать номер строки позволяет задать автоматическую нумерацию строк +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать нумерацию строк
  • +
  • Не активно - не отображать нумерацию строк
Подсказка позволяет создать подсказку, расположенную внутри элемента
Надпись позволяет задать наименование поля, которое будет отображаться на странице
Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
    +
  • возможность выбора сразу нескольких или одной строки
  • +
  • возможность выбора одной строки - значение по умолчанию
Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать колонку флагов +
  • Не активно - не отображать колонку флагов
Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого
Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
    +
  • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
  • +
  • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
  • +
  • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
Save Column State позволяет задать возможность сохранения пользовательских настроек в части состава и ширины колонок в таблице +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - изменения пользователя в части отображаемых колонок в таблице (состав и ширина) будут сохраняться в локальном хранилище, т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения отобразятся
  • +
  • Не активно - не сохранять изменения пользователя в части отображаемых колонокв таблице (состав и ширина), т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения не отобразятся и таблица будет иметь исходный вид по умолчанию
No Rows Overlay Message позволяет указать текст для отображения пользователю в таблице в случае, если результат запроса не вернул ни одной строки, например, Данные отсутствуют(доступно для настройки при Loading Overlay Type - TEXT_OVERLAY) пример возможного значения:Данные отсутствуют
Loading Overlay Type позволяет выбрать вид прелоадера при подгрузке данных в таблицу Доступны следующие виды настройки: +
    +
  • TEXT_OVERLAY - отображает текст в центре таблицы при подгрузке данных, задаваемый в свойствах:No Rows Overlay Message и Loading Overlay Message
  • +
  • PROGRESS_BAR - отображает прогресс-бар при подгрузке данных в таблицу
Allow Context Menu With позволяет управлять отображением контекстного меню (список доступных для исполнения действий) при нажатии правой кнопкой мыши на ячейку внутри таблицы +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - при нажатии правой кнопкой мыши на ячейку внутри таблицы отображается контекстное меню доступных действий, например, копирование значения ячейки
  • +
  • Не активно - исключает отображение контекстного меню при нажатии правой кнопкой мыши на ячейку внутри таблицы
Loading overlay message позволяет указать текст для отображения пользователю в процессе подгрузки данных в таблицу, например,Загрузка данных, пожалуйста, подождите.(доступно для настройки приLoading Overlay Type - TEXT_OVERLAY)
+

Свойство компоненты: Список зависимых записей. Подгрузка данных

+

+

позволяет задать граф сущностей для подгрузки данных в Таблицу. Является обязательным к заполнению и настройке.

+

с описанием настройки Графа сущностей для Таблицы можно ознакомиться в разделе: Настройка Графа сущностей

+

Свойство компоненты: Таблица. Настроить колонки таблицы

+

+

позволяет настроить отображаемые колонки в Таблице с сортировкой данных по конкретному порядку

+

с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы

+

Свойство компоненты: Список зависимых записей. Взаимосвязи таблиц

+

+

позволяет задать взаимосвязи между таблицами для подгрузки/сохранения значений

+
    + +
  • Колонка, ссылающаяся на таблицу “доступных” - указывается колонка объекта базы данных, включенного в Граф сущностей текущей настраиваемой Связанной таблицы, которая ссылается на главную таблицу в Графе сущностей Таблицы “доступных” записей для выбора (на странице в диалоговом окне находится слева)
  • +
  • Колонка, ссылающаяся на “основную” таблицу - указывается колонка объекта базы данных, включенного в Граф сущностей текущей настраиваемой Связанной таблицы, которая ссылается на главную таблицу в Графе сущностей основной компоненты Форма на странице
  • +
  • Колонка “основной” таблицы - указывается колонка (первичный ключ) главной таблицы в Графе сущностей основной компоненты Форма на странице, на которую ссылается текущая настраиваемая Связанная таблица
  • +
+

Свойство компоненты: Список зависимых записей. Заполнить значением по умолчанию

+

+

позволяет настроить параметры и осуществить запрос данных для заполнения значениями по умолчанию полей компоненты Список зависимых записей

+

с описанием функции Заполнить значением по умолчанию можно ознакомиться в разделе: Заполнить значением по умолчанию - Список зависимых записей.

+

с описанием настройки Графа сущностей для Таблицы можно ознакомиться в разделе: Настройка Графа сущностей

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет создать надпись на кнопке Изменить - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Внести изменения в список?
+

Свойство компоненты: Диалог. Вызвать

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Вызвать диалог позволяет задать диалог, который будет открываться при нажатии на кнопку по умолчанию задан Диалог вложенный в компоненту Список зависимых записей
+

Свойство компоненты: Список зависимых записей. Перенести записи в таблицу “выбранных” записей

+

+

параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей

+
    + +
  • Из списка зависимых записей: указывается основная результирующая Связанная таблица с главной сущностью(компонентой Формана текущей странице)
  • +
  • В таблицу выбранных записей: указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных
  • +
  • Таблица со всеми доступными записями: указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи
  • +
+

+

Основные параметры Диалога

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Диалог

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Заголовок позволяет задать заголовок диалога на странице пример возможного значения: Выбор записей - значение по умолчанию
Допускается скрытие через системную Х позволяет задать возможность закрытия диалога по нажатию на системный возможно закрыть диалог через- значение по умолчанию, невозможно закрыть диалог (системный скрыт)
+

Основные параметры Таблицы

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Таблица

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Зависит от позволяет указать объект (родителя), по идентификатору которого будут отображаться сведения в текущей Таблице; задаётся в случае необходимости связать Таблицу с другой компонентой, например, Выпадающий список
Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
    +
  • возможность выбора сразу нескольких или одной строки
  • +
  • возможность выбора одной строки - значение по умолчанию
Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать колонку флагов +
  • Не активно - не отображать колонку флагов
Показывать номер строки позволяет задать автоматическую нумерацию строк +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать нумерацию строк
  • +
  • Не активно - не отображать нумерацию строк
Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого
Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
    +
  • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
  • +
  • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
  • +
  • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
Save column state позволяет задать возможность сохранения пользовательских настроек в части состава и ширины колонок в таблице +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - изменения пользователя в части отображаемых колонок в таблице (состав и ширина) будут сохраняться в локальном хранилище, т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения отобразятся
  • +
  • Не активно - не сохранять изменения пользователя в части отображаемых колонокв таблице (состав и ширина), т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения не отобразятся и таблица будет иметь исходный вид по умолчанию
Loading Overlay Type позволяет выбрать вид прелоадера при подгрузке данных в таблицу Доступны следующие виды настройки: +
    +
  • TEXT_OVERLAY - отображает текст в центре таблицы при подгрузке данных, задаваемый в свойствах:No Rows Overlay Message и Loading Overlay Message
  • +
  • PROGRESS_BAR - отображает прогресс-бар при подгрузке данных в таблицу
No Rows Overlay Message позволяет указать текст для отображения пользователю в таблице в случае, если результат запроса не вернул ни одной строки, например, Данные отсутствуют(доступно для настройки при Loading Overlay Type - TEXT_OVERLAY)
Loading overlay message позволяет указать текст для отображения пользователю в процессе подгрузки данных в таблицу, например,Загрузка данных, пожалуйста, подождите.(доступно для настройки приLoading Overlay Type - TEXT_OVERLAY) *пример возможного значения:Загрузка данных, пожалуйста, подождите.
Allow Context Menu With позволяет управлять отображением контекстного меню (список доступных для исполнения действий) при нажатии правой кнопкой мыши на ячейку внутри таблицы +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - при нажатии правой кнопкой мыши на ячейку внутри таблицы отображается контекстное меню доступных действий, например, копирование значения ячейки
  • +
  • Не активно - исключает отображение контекстного меню при нажатии правой кнопкой мыши на ячейку внутри таблицы
+

Свойство компоненты: Таблица. Подгрузка данных

+

+

позволяет задать граф сущностей для подгрузки данных в Таблицу. Является обязательным к заполнению и настройке.

+

с описанием настройки Графа сущностей для Таблицы можно ознакомиться в разделе: Настройка Графа сущностей

+

Свойство компоненты: Таблица. Настроить колонки таблицы

+

+

позволяет настроить отображаемые колонки в Таблице с сортировкой данных по конкретному порядку

+

Видимые колонки данной Таблицы должны быть равны колонкам, отображаемым в основной Связанной таблице (колонки могут быть скрыты, но должны быть включены в таблицу)

+

с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы

+

Свойство компоненты: Активировать кнопку после выбора строки в таблице

+

+

устанавливает доступность Кнопки “Добавить” после выбора строки в Таблице со списком доступных записей (на странице в диалоговом окне находится слева) для переноса записи в Связанную таблицу выбранных пользователем записей (на странице в диалоговом окне находится справа)

+

+

-по умолчанию задана Кнопка “Добавить”, вложенная в компоненту Список зависимых записей

+

Свойство компоненты: Продублировать конфигурацию текущей таблицы (с доступными строками) в таблицу уже выбранных строк

+

+

позволяет продублировать настройки Таблицы с доступными для выбора записей (на странице в диалоговом окне находится слева) в Связанную таблицу уже выбранных пользователем записей (на странице в диалоговом окне находится справа), то есть исключает необходимость ручной настройки (так как обе таблицы должны быть приведены к единому виду) бизнес-аналитиком колонок таблицы, сортировки, форматирования таблицы и проч. для Связанной таблицы.

+

+

-по умолчанию задана Связанная таблица, вложенная в компоненту Список зависимых записей

+

Свойство компоненты: Исключить из текущей таблицы (доступных строк) уже выбранные строки

+

+

при выборе записи в Таблице с доступными для выбора записей (на странице в диалоговом окне находится слева) и переносе её (с помощью Кнопки “Добавить” или Кнопки “Добавить все” ) в Связанную таблицу уже выбранных пользователем записей (на странице в диалоговом окне находится справа) исключает данную запись (и) из текущей Таблицы (доступных строк)

+

-по умолчанию задана Связанная таблица, вложенная в компоненту Список зависимых записей

+

Свойство компоненты: Таблица. Настроить динамическую подгрузку данных при просмотре страницы

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Количество записей в блоке количество отображаемых записей в Таблице по умолчанию при каждой новой подгрузке 20 - значение по умолчанию
+

Основные параметры Кнопки “Добавить”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: > - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите выбрать данное значение?
+

Свойство компоненты: Список зависимых записей. Перенести строку из таблицы “доступных” строк в таблицу “выбранных”

+

+

по нажатию на кнопку автоматически происходит перенос строки из Таблицы доступных записей (на странице в диалоговом окне находится слева) в Таблицу выбранных пользователем записей (на странице в диалоговом окне находится справа)

+

параметры функции заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей

+
    + +
  • Из таблицы “доступных”: указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи, откуда будет перенесена выбранная запись
  • +
  • В таблицу “выбранных”: указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, куда будет перенесена выбранная запись
  • +
+

+

Основные параметры Кнопки “Добавить все”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе-Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке *пример возможного значения: >> - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите выбрать данное значение?
+

Свойство компоненты: Список зависимых записей. Перенести строку из таблицы “доступных” строк в таблицу “выбранных”

+

+

по нажатию на кнопку автоматически происходит перенос всех строк из Таблицы доступных записей (на странице в диалоговом окне находится слева) в Таблицу выбранных пользователем записей (на странице в диалоговом окне находится справа)

+

параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей

+
    + +
  • Из таблицы “доступных”: указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи, откуда будут перенесены все записи одновременно
  • +
  • В таблицу “выбранных”: указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, куда будут перенесены записи
  • +
+

+

Основные параметры **Кнопки “Удалить”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: < - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите исключить данное значение?
+

Свойство компоненты: Список зависимых записей. Вернуть строку в таблицу “доступных” из таблицы “выбранных”

+

+

по нажатию на кнопку автоматически происходит перенос строки из Таблицы выбранных пользователем записей (на странице в диалоговом окне находится справа) в Таблицу доступных записей (на странице в диалоговом окне находится слева)

+

параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей

+
    + +
  • В таблицу “доступных”: указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи, куда будет перенесена (возвращена) выбранная запись
  • +
  • Из таблицы “выбранных”: указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, откуда будет перенесена (возвращена) выбранная запись
  • +
+

+

Основные параметры **Кнопки “Удалить все”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: << - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите исключить все значения?
+

Свойство компоненты: Список зависимых записей. Вернуть все строки в таблицу “доступных” из таблицы “выбранных”

+

+

по нажатию на кнопку автоматически происходит перенос строки из Таблицы выбранных пользователем записей (на странице в диалоговом окне находится справа) в Таблицу доступных записей (на странице в диалоговом окне находится слева)

+

параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей

+
    + +
  • В таблицу “доступных”: указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи, куда будут перенесены (возвращены) все записи
  • +
  • Из таблицы “выбранных”: указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, откуда будут перенесены (возвращены) все записи
  • +
+

+

Основные параметры Связанной таблицы (таблица выбранных пользователем записей)

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Таблица

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Показывать номер строки позволяет задать автоматическую нумерацию строк +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать нумерацию строк
  • +
  • Не активно - не отображать нумерацию строк
Подсказка позволяет создать подсказку, расположенную внутри элемента
Надпись позволяет задать наименование поля, которое будет отображаться на странице
Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
    +
  • возможность выбора сразу нескольких или одной строки
  • +
  • возможность выбора одной строки - значение по умолчанию
Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой Таблица +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать колонку флагов +
  • Не активно - не отображать колонку флагов
Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого
Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
    +
  • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
  • +
  • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
  • +
  • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
Save Column State позволяет задать возможность сохранения пользовательских настроек в части состава и ширины колонок в таблице +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - изменения пользователя в части отображаемых колонок в таблице (состав и ширина) будут сохраняться в локальном хранилище, т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения отобразятся
  • +
  • Не активно - не сохранять изменения пользователя в части отображаемых колонокв таблице (состав и ширина), т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения не отобразятся и таблица будет иметь исходный вид по умолчанию
Loading Overlay Type позволяет выбрать вид прелоадера при подгрузке данных в таблицу Доступны следующие виды настройки: +
    +
  • TEXT_OVERLAY - отображает текст в центре таблицы при подгрузке данных, задаваемый в свойствах:No Rows Overlay Message и Loading Overlay Message
  • +
  • PROGRESS_BAR - отображает прогресс-бар при подгрузке данных в таблицу
No Rows Overlay Message позволяет указать текст для отображения пользователю в таблице в случае, если результат запроса не вернул ни одной строки, например, Данные отсутствуют(доступно для настройки при Loading Overlay Type - TEXT_OVERLAY)
Loading overlay message позволяет указать текст для отображения пользователю в процессе подгрузки данных в таблицу, например,Загрузка данных, пожалуйста, подождите.(доступно для настройки приLoading Overlay Type - TEXT_OVERLAY)
Allow Context Menu With позволяет управлять отображением контекстного меню (список доступных для исполнения действий) при нажатии правой кнопкой мыши на ячейку внутри таблицы +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - при нажатии правой кнопкой мыши на ячейку внутри таблицы отображается контекстное меню доступных действий, например, копирование значения ячейки
  • +
  • Не активно - исключает отображение контекстного меню при нажатии правой кнопкой мыши на ячейку внутри таблицы
+

Свойство компоненты: Таблица. Настроить колонки таблицы

+

+

позволяет настроить отображаемые колонки в Таблице с сортировкой данных по конкретному порядку

+

с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы

+

Свойство компоненты: Активировать кнопку после выбора строки в таблице

+

+

устанавливает доступность Кнопки “Удалить” после выбора строки в Связанной таблице выбранных пользователем записей (на странице в диалоговом окне находится справа) для переноса (возврата) записи в Таблицу со списком доступных записей (на странице в диалоговом окне находится слева)

+

по умолчанию задана - Кнопка “Удалить”

+

+

Свойство компоненты:Список зависимых записей. Заполнить значением по умолчанию

+

+

позволяет настроить параметры и осуществить запрос данных для заполнения значениями по умолчанию полей компоненты Список зависимых записей

+

Внимание! При использовании данной функции, нет необходимости настройки и заполнения Графа сущностей в текущей таблице

+

с описанием функции Заполнить значением по умолчанию можно ознакомиться в разделе: Заполнить значением по умолчанию.Список зависимых записей

+

Основные параметры Кнопки “Ок”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет создать надпись на кнопке пример возможного значения: Ок - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно выбрали все необходимые значения?
+

Свойство компоненты: Диалог. Скрыть

+

+

Скрыть Диалог - позволяет задать диалог, который будет закрыт при нажатии на кнопку. По умолчанию задан Список зависимых записей#Диалог, вложенный в компоненту Список зависимых записей

+

Свойство компоненты: Список зависимых записей. Перенести записи из таблицы “выбранных” записей

+

+

по нажатию на кнопку автоматически происходит перенос записей из Таблицы выбранных пользователем записей (на странице в диалоговом окне находится справа) в результирующую Связанную таблицу зависимых записей (на основной странице)

+

параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей

+
    + +
  • Из таблицы “выбранных”: указывается Связанная таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, откуда будут перенесены значения
  • +
  • В список зависимых записей: указывается основная результирующая Связанная таблица с главной сущностью(компонентой Формана текущей странице), куда будут перенесены записи
  • +
+

+

Основные параметры Кнопки “Отмена”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет создать надпись на кнопке пример возможного значения: Отмена - значение по умолчанию
Текст подтверждения при нажатии позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите отменить операцию?
+

Свойство компоненты: Диалог. Скрыть

+

+

позволяет задать диалог, который будет закрыт при нажатии на кнопку

+

- по умолчанию задан Список зависимых записей#Диалог, вложенный в компоненту Список зависимых записей

+

Базовые функции

+

заполнить значением по умолчанию

+

Назначение

+

Функция, которая позволяет настроить параметры и осуществить запрос данных для заполнения значениями по умолчанию полей компоненты Список зависимых записей.

+

Функция Заполнить значением по умолчанию должна быть задействована на обоих компонентах “Связанная таблица”, а настроена только на основной компоненте “Связанная таблица”, входящей в состав сложной компоненты Список зависимых записей.

+

Активация и настройка функции на первой компоненте “Связанная таблица”

+

Активация без настройки функции на второй компоненте “Связанная таблица”

+

При этом, на выше лежащей компоненте Форма функция Подгрузка значений по умолчанию должна быть активирована (но может быть не настроена).

+

+

Результатом исполнения функции Заполнить значением по умолчанию является одно или несколько значений, которыми предзаполняются основная компонента “Связанная таблица”, входящая в состав сложнойкомпоненты Список зависимых записей, и отображающая список только тех строк из списка всех доступных строк, которые выбраны пользователем .

+

В этом основное отличие этой функции от аналогичной функции, используемой для запроса ‘значений по умолчанию’ обычных визуальных компонентов, но оперирующей только одним значением.

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Как ограничить количество строк в Связанной таблице (LinkField)

+

Чтобы ограничить количество строк в Связанной таблице установите необходимое значение в параметр “Макс. количество строк” (Если значение не установлено или 0, то ограничение не действует):

+

+

Если Вы хотите выбрать действие при попытке выйти за границы максимального количества, выберите это действие в блоке “Тогда” в компоненте “Обработка событий”:

+

+

Если Вы хотите динамически менять максимальное количество строк, используйте метод “Задать максимальное количество строк” в компоненте:

+

+

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Как сделать, чтобы данные, отобранные с помощью компоненты Список зависимых записей, сохранялись в базу данных? Для того, чтобы данные, отобранные с помощью компоненты Список зависимых записей, сохранялись/считывались в/из базы данных, её необходимо вложить внутрь основной компоненты Формана странице.
Какие дочерние элементы Списка зависимых записей требуют обязательной и непосредственнойнастройки аналитиком? Большинству описанных параметров дочерних элементов компоненты Список зависимых записей уже заранее заданы значения по умолчанию, и они не требуют каких-либо изменений от аналитика в типовых случаях. Но часть параметров следует задать в процессе использования компоненты для её корректной работы и внедрения в логику бизнес-процесса: +
    +
  • параметры основной Таблицы Списка зависимых записей на странице -Связанная таблица: Список зависимых записей. Подгрузка данныхСписок зависимых записей. Взаимосвязи таблиц Таблица. Настроить колонки таблицы
  • +
  • параметры Таблицы доступных строк для выбора -Таблица: Таблица. Подгрузка данных Таблица. Настроить колонки таблицы
В каких случаях используется Список зависимых записей, а в каких случаях Список с поиском для выбора одного значения? В случае, когда необходимо связать идентификатор главной сущности компоненты Форма, например, Заявление на получение лицензии, одновременно с несколькими значениями (связь многие ко многим), например, виды деятельности лицензиата,из заранее сформированного списка доступных значений, то используется Список зависимых записей (сохранение отобранных значений, осуществляется в таблицу связи базы данных, в приведенном примере, между Заявлением и Видом деятельности лицензиата). В случае, когда архитектура базы данных предполагает сохранение одного идентификатора из списка доступных значений (связь один ко многим) используется Список с поиском для выбора одного значения
Можно ли использовать Набор фильтров для удобства поиска значений в Таблице доступных строк? Да, можно. Для этого необходимо в элемент Диалог, входящий в состав компоненты Список зависимых записей, добавить элемент Набор фильтров со вложенными фильтрами, например, *Текстовое поле (фильтр)*или Фильтр по числовому полю, настроить их свойства и в качестве Таблицы, по значениям которой будет происходить фильтрация, в Наборе фильтров указать Таблицу доступных строк компоненты Список зависимых записей.
Почему при открытии диалога на странице неактивна кнопка “Добавить”? Кнопка "Добавить"недоступна для управления по умолчанию и становится активна только при выборе записи (с помощью функцииАктивировать кнопку после выбора строки в таблице, настраиваемой в свойствах Таблицы) в Таблице доступных строк для выбора(на странице в диалоговом окне находится слева). По нажатию на кнопку выбранная пользователем строка будет перенесена в Таблицу выбранных строк(на странице в диалоговом окне находится справа). Аналогичная логика заложена в работу кнопки “Удалить”, которая становится активна только при выборе записи в Таблице выбранных строк(на странице в диалоговом окне находится справа),и по нажатию на кнопку выбранная запись будет перенесена в Таблицу доступных строк(на странице в диалоговом окне находится слева).
Можно ли выбрать одновременно несколько строк в Таблице доступных записей для добавления в Таблицу выбранных строк? Да, можно. Для этого необходимо при настройке основных параметров Таблицы доступных строк, привести свойства Допустимо выбрать несколько строк и Колонка флагов в значение(истина) в параметре Таблица. Задействовать режим выбора нескольких строк, после чего в интерфейсе в Таблице доступных строк (на странице в диалоговом окне находится слева)отобразится колонка флагов (выбора записи), которая позволит одновременно выделить несколько строк (при этом выбранные строки окрасятся в отличный от других строк цвет), и по нажатию на кнопку “Добавить” выбранные записи будут перенесены в Таблицу выбранных строк(на странице в диалоговом окне находится слева). В случае, когда необходимо выбрать все предложенные записи в Таблице доступных строк и включить их в Таблицу выбранных строк используется кнопка “Добавить все”.
Можно ли изменить цветовое оформление Таблицы? Да. Цветовым оформлением Таблицы можно управлять с помощью CSS-стилей, задаваемых в**Основных параметрах - Расширенные настройки - CSS классы.
Как изменить формат отображения данных в колонке Таблицы? В случае, если необходимо изменить формат отображения значений в колонке Таблицы необходимо при настройке колонки применить Форматтер. Например, подгружаемое значение в колонку имеет тип данных Дата и Время (DateTime), но на странице пользовательского приложения необходимо отображать значение в колонке без Времени, только Дату. В таком случае, целесообразно использовать форматтер DateFormatter, который отобразит значение колонки в нужном виде. Но при этом предварительно необходимо применить к Таблице функцию Очистить форматирование колонок таблицы, указав наименование настраиваемой колонки.
Можно ли поменять порядок отображаемых колонок в Таблице? Для того, чтобы изменить порядок колонок в Таблице необходимо в свойстве Настроить колонки таблицы - Колонки нажать правой кнопкой мыши на «Элемент» и выбрать предложенные варианты: Переместить наверх - Переместить вниз - Удалить элемент.
Можно ли задать автоматическую нумерацию строк (записей) в Таблице? Да, можно. Для этого необходимо в настраиваемых параметрах Таблицы перейти к свойству Таблица. Основные параметры - Показывать номер строки и привести его в значение(истина).
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html new file mode 100644 index 0000000..7e694e1 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ_ミソミセミサミオ_.html @@ -0,0 +1,751 @@ + + + + + + + + Web-BPM Docs – ミ。ミソミクムミセミコ ミキミーミイミクムミクミシム錦 ミキミーミソミクムミオミケ (ミソミセミサミオ) + + + + + + +
+
+ + + +
+
+

Список зависимых записей (поле)

+

Назначение

+

Список зависимых записей (поле)- это составной компонент, которыйиспользуется длявыбора одного или нескольких значений из списка доступных и записи выбранных значений в поле, которое имеет возможность хранения и отображения нескольких значений одновременно (поле с множественным выбором). Логика работы компоненты Список зависимых записей (поле) схожа с логикой работы компоненты Список зависимых записей, отличие заключается в том, что результатвыбора значений отображается не в виде таблицы, а в виде поля с множественным выбором.Компонента может быть использована в достаточно частных случаях, посколькуданные, отобранные с помощью этой компоненты, не сохраняются в базу данных. Примером возможного применения компоненты Список зависимых записей (поле) можно назвать использование компоненты в качестве входного параметра для формирования отчетной формы, когда в качестве параметра необходимо передать массив значений (идентификаторов) (например, список нескольких сотрудников, по которым необходимо сформировать отчет).

+

Компонента Список зависимых записей (поле) находится в разделе Компоненты - Поля - Список зависимых записей(поле).

+

В структуру компоненты Список зависимых записей (поле), представленной набором простых компонентов и связанных между собой заранее определенными алгоритмами, входят следующие элементы

+

Работа с компонентой и выбор требуемых значений из списка доступных записей осуществляется в следующей последовательности:

+
    + +
  • нажатие Кнопки “Изменить” (рис.3), расположенной рядом с Полем с множественным выбором на странице; по нажатию на кнопку происходит открытие диалогового окна (рис.4)
  • +
  • доступные для выбора значения расположены вТаблицедоступных записей(на странице в диалоговом окне находится слева)
  • +
  • выбор значения осуществляется с помощью Кнопок “Добавить” (>) или “Добавить все” (>>) из списка доступных записей; по нажатию на кнопку происходит перенос (добавление) записи из Таблицы доступных значений(на странице в диалоговом окне находится слева) в Связанную таблицу выбранных значений (на странице в диалоговом окне находится справа)
  • +
  • удаление выбранного значения осуществляется с помощью Кнопок “Удалить” или “Удалить все” из списка уже выбранных значений; по нажатию на кнопку происходит перенос (удаление) записи из Связанной таблицы выбранных значений(на странице в диалоговом окне находится справа) и возвращение записи в Таблицу доступных значений(на странице в диалоговом окне находится слева)
  • +
  • перенос значений из Связанной таблицы выбранных записей в результирующее Поле с множественным выбором по нажатию на Кнопку “Ок” и закрытие диалогового окна
  • +
+

+

рис.3 Поле с множественным выборок и кнопка “Изменить”

+

+

рис.4 Диалоговое окно для выбора значений

+

Структура

+

Основные вложенные элементы компоненты Список зависимых записей (поле)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование элемента Описание
Список зависимых записей (поле) контейнер горизонтального выравнивания, в который вложены все дочерние компоненты
Поле с множественным выбором используется только для отображения (без возможности управления и ручного ввода) выбранных значений из Связанной таблицы
Кнопка “Изменить” используется для открытия (вызова) диалогового окна со списком доступных значений для выбора
Диалог используется для отображениявсплывающего диалогового окна со списком доступных значений для выбора
Таблица используется для отображения списка доступных значений (записей) для выбора (во всплывающем диалоговом окне находится слева)
Кнопка “Добавить” используется для переноса (добавления) одной выбранной записи из Таблицы всех доступных значений (на странице в диалоговом окне находится слева) в Связанную таблицу выбранных значений (на странице в диалоговом окне находится справа)
Кнопка Добавить все используется для переноса (добавления) всех записей из Таблицы всех доступных значений(на странице в диалоговом окне находится слева)вСвязанную таблицувыбранных значений(на странице в диалоговом окне находится справа)
Кнопка “Удалить” используется для исключения (удаления) строки из Связанной таблицы уже выбранных значений (на странице в диалоговом окне находится справа) и обратного переноса в Таблицу всех доступных значений(на странице в диалоговом окне находится слева)
Кнопка Удалить все используется для исключения (удаления) всех строк из Связанной таблицы уже выбранных значений (на странице в диалоговом окне находится справа) и обратного переноса в Таблицу всех доступных значений(на странице в диалоговом окне находится слева)
Связанная таблица используется для отображения списка уже выбранных пользователем записей (во всплывающем диалоговом окне находится справа) из массива доступных значений (записей) для выбора. Необязательна для настройки (только при необходимости более детального вывода информации), так как по умолчанию дублирует конфигурацию Таблицы Списка зависимых записей всех доступных значений для выбора (во всплывающем диалоговом окне находится слева)
Кнопка “ОК” используется для переноса значений из “Связанной таблицы” выбранных записей в результирующее “Поле с множественным выбором” и закрытия диалогового окна
Кнопка Отмены используется для отмены выбора значений из списка доступных и закрытия диалогового окна
+

Свойства

+

Компонента имеет набор общих свойств.

+

Основные параметры Список зависимых записей (поле)

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Горизонтальный контейнер

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
+

Основные параметры Поле с множественным выбором

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись позволяет задать наименование поля, которое будет отображаться на странице *пример возможного значения:*Утверждающие (рис.1)
Разделитель позволяет указать символ или пробел, который будет разделять между собой выбранные значения в поле пример возможного значения: ;
Подсказка позволяет создать подсказку, расположенную внутри элемента *пример возможного значения:*Выбрать сотрудников
+

Свойство компоненты: Поле с множественным выбором. Подгрузка данных

+

+

позволяет задать источник подгрузки данных с указанием отображаемых значений пользователю, и с настройкой Графа сущностей. Является обязательным к заполнению и настройке.

+
    + +
  • + +

    Граф сущностей элемента настраивается в соответствии с п. Настройка Графа сущностей. Является обязательным к заполнению и настройке.

    +
  • +
  • + +

    Отображаемая колонка - позволяет задатьэлемент базы данных, значение которого будет отображено пользователю на странице в Поле с множественным выбором

    +
  • +
+

Свойство компоненты: Поле с множественным выбором. Подгрузка данных по умолчанию

+

позволяет указать значение по умолчанию, которое будет подгружаться в поле с помощью двух типов подгрузки (источников подгрузки значения):

+
    + +
  • из колонки
  • +
  • из сервиса
  • +
+

с описанием настройки свойства Подгрузка данных по умолчаниюи соответствующих ей типов подгрузкиможно ознакомиться в разделе: Заполнить значением по умолчанию

+

Основные параметры Кнопки “Изменить”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Текст подтверждения позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Внести изменения в список?
Надпись позволяет задать надпись на кнопке пример возможного значения: … - значение по умолчанию
+

Свойство компоненты: Диалог. Вызвать

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
позволяет задать диалог, который будет открываться при нажатии на кнопку по умолчанию задан Диалог (Список зависимых записей(поле) - Диалог вложенный в компоненту Список зависимых записей (поле))
+

Свойство компоненты: Список зависимых записей. Перенести записи в Поле множественного выбора (SetRowsFromFieldForMTMField)

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
SetRowsFromFieldForMTMField параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей (поле) +
    +
  • From (Из списка зависимых записей): указывается результирующий элемент Поле с множественным выбором
  • +
  • To (В таблицу выбранных записей): указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных
  • +
  • Grid (Таблица со всеми доступными записями): указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи
+

+

рис.1 Отображение связи элементов

+

Основные параметры Диалога

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Диалог

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Заголовок позволяет задать заголовок диалога на странице пример возможного значения: Выбор записей - значение по умолчанию
Допускается скрытие через системную Х позволяет задать возможность закрытия диалога по нажатию на системный возможно закрыть диалог через- значение по умолчанию, невозможно закрыть диалог (системный скрыт)
+

Основные параметры Таблицы

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Таблица

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Зависит от позволяет указать объект (родителя), по идентификатору которого будут отображаться сведения в текущей Таблице; задаётся в случае необходимости связать Таблицу с другой компонентой, например, Выпадающий список
Всплывающая подсказка позволяет указать текст всплывающей подсказки, которая появляется при наведении курсора на элемент
Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
    +
  • возможность выбора сразу нескольких или одной строки
  • +
  • возможность выбора одной строки - значение по умолчанию
Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой Таблица +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать колонку флагов
  • +
  • Не активно - не отображать колонку флагов
Показывать номер строки позволяет задать автоматическую нумерацию строк +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать нумерацию строк
  • +
  • Не активно - не отображать нумерацию строк
Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого
Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
    +
  • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
  • +
  • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
  • +
  • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
Save Column State позволяет задать возможность сохранения пользовательских настроек в части состава и ширины колонок в таблице +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - изменения пользователя в части отображаемых колонок в таблице (состав и ширина) будут сохраняться в локальном хранилище, т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения отобразятся
  • +
  • Не активно - не сохранять изменения пользователя в части отображаемых колонокв таблице (состав и ширина), т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения не отобразятся и таблица будет иметь исходный вид по умолчанию
Loading Overlay Type позволяет выбрать вид прелоадера при подгрузке данных в таблицу Доступны следующие виды настройки: +
    +
  • TEXT_OVERLAY - отображает текст в центре таблицы при подгрузке данных, задаваемый в свойствах:No Rows Overlay Message и Loading Overlay Message
  • +
  • PROGRESS_BAR - отображает прогресс-бар при подгрузке данных в таблицу
No Rows Overlay Message позволяет указать текст для отображения пользователю в таблице в случае, если результат запроса не вернул ни одной строки, например, Данные отсутствуют(доступно для настройки при Loading Overlay Type - TEXT_OVERLAY) пример возможного значения:Данные отсутствуют
Loading overlay message позволяет указать текст для отображения пользователю в процессе подгрузки данных в таблицу, например,Загрузка данных, пожалуйста, подождите.(доступно для настройки приLoading Overlay Type - TEXT_OVERLAY) пример возможного значения:Загрузка данных, пожалуйста, подождите.
Allow Context Menu With позволяет управлять отображением контекстного меню (список доступных для исполнения действий) при нажатии правой кнопкой мыши на ячейку внутри таблицы +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - при нажатии правой кнопкой мыши на ячейку внутри таблицы отображается контекстное меню доступных действий, например, копирование значения ячейки
  • +
  • Не активно - исключает отображение контекстного меню при нажатии правой кнопкой мыши на ячейку внутри таблицы
+

Свойство компоненты: Таблица. Подгрузка данных

+

+

позволяет задать граф сущностей для подгрузки данных в Таблицу. Является обязательным к заполнению и настройке.

+

Граф сущностей элемента настраивается в соответствии с п. Настройка Графа сущностей.

+
    + +
  • + +

    Колонка для режима “Зависит от” - позволяет указать колонку настраиваемой Таблицы, которая обеспечивает связь текущей компоненты с компонентой заданной в параметре “Зависит от”

    +
  • +
  • + +

    Datasource Jndi Name - позволяет задать иной источник (базу данных) для выполнения запроса, заданного с помощью элементов базы данных в редакторе Графа сущностей элемента.

    +
  • +
+

Значение данного свойства может быть задано следующим образом: java:/webbpm/AppRepDS, а сам адрес базы данных, логин и пароль для подключения должен быть указан в файле standalone.xml (аналогично тому, как указывается, например, подключение к базе данных безопасности).

+

В случае, если данное свойство не заполнено, запрос выполняется в базе данных, указанной в конфигурации проекта (во вкладке База данных).

+

Свойство компоненты: Таблица. Настроить колонки таблицы

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Настроить колонки таблицы позволяет настроить отображаемые колонки в Таблице с сортировкой данных по конкретному порядку с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы
+

+

Свойство компоненты: Активировать кнопку после выбора строки в таблице

+

+

устанавливает доступность Кнопки “Добавить” (>) после выбора строки в Таблице со списком доступных записей (на странице в диалоговом окне находится слева) для переноса записи в Связанную таблицу выбранных пользователем записей (на странице в диалоговом окне находится справа)

+

+
    + +
  • по умолчанию задана Кнопка “Добавить”, вложенная в компоненту Список зависимых записей (поле)
  • +
+

Свойство компоненты: Продублировать конфигурацию текущей таблицы (с доступными строками) в таблицу уже выбранных строк

+

+

позволяет продублировать настройки Таблицы с доступными для выбора записей (на странице в диалоговом окне находится слева) в Связанную таблицу уже выбранных пользователем записей (на странице в диалоговом окне находится справа), то есть исключает необходимость ручной настройки (так как обе таблицы должны быть приведены к единому виду) бизнес-аналитиком колонок таблицы, сортировки, форматирования таблицы и проч. для Связанной таблицы.

+

+
    + +
  • по умолчанию задана Связанная таблица, вложенная в компоненту Список зависимых записей
  • +
+

Свойство компоненты: Таблица.Настроить динамическую подгрузку данных при просмотре страницы

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Количество запесей в блоке количество отображаемых записей в Таблице по умолчанию при каждой новой подгрузке пример возможного значения: 20 - значение по умолчанию
+

Основные параметры Кнопки “Добавить”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: > - значение по умолчанию
Текст подтверждения позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите выбрать данное значение?
+

Свойство компоненты: Список зависимых записей. Перенести строку из таблицы “доступных” строк в таблицу “выбранных”

+

+

по нажатию на кнопку автоматически происходит перенос строки из Таблицы доступных записей (на странице в диалоговом окне находится слева) в Таблицу выбранных пользователем записей (на странице в диалоговом окне находится справа)

+

параметры функции заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей (поле)

+
    + +
  • Из таблицы “доступных”: указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи, откуда будет перенесена выбранная запись
  • +
  • В таблицу “выбранных”: указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, куда будет перенесена выбранная запись
  • +
+

+

Основные параметры Кнопки “Добавить все”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: >> - значение по умолчанию
Текст подтверждения позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите выбрать данное значение?
+

Свойство компоненты: Список зависимых записей. Перенести строку из таблицы “доступных” строк в таблицу “выбранных”

+

+

по нажатию на кнопку автоматически происходит перенос всех строк из Таблицы доступных записей (на странице в диалоговом окне находится слева) в Таблицу выбранных пользователем записей (на странице в диалоговом окне находится справа)

+

параметры заполнены по умолчанию ссылками на элементы, иерархически ходящими в состав компоненты Список зависимых записей (поле)

+
    + +
  • Из таблицы “доступных”: указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи, откуда будут перенесены все записи одновременно
  • +
  • В таблицу “выбранных”: указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, куда будут перенесены записи
  • +
+

+

Основные параметры Кнопки “Удалить”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: < - значение по умолчанию
Текст подтверждения позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите выбрать данное значение?
+

Свойство компоненты: Список зависимых записей. Вернуть строку в таблицу “доступных” из таблицы “выбранных”

+

+

по нажатию на кнопку автоматически происходит перенос строки из Таблицы выбранных пользователем записей (на странице в диалоговом окне находится справа) в Таблицу доступных записей (на странице в диалоговом окне находится слева)

+

параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей

+
    + +
  • В таблицу “доступных”: указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи, куда будет перенесена (возвращена) выбранная запись
  • +
  • Из таблицы “выбранных”: указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, откуда будет перенесена (возвращена) выбранная запись
  • +
+

+

Основные параметры Кнопки “Удалить все”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: << - значение по умолчанию
Текст подтверждения позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите выбрать данное значение?
+

Свойство компоненты: Список зависимых записей. Вернуть все строки в таблицу “доступных” из таблицы “выбранных”

+

+

по нажатию на кнопку автоматически происходит перенос строки из Таблицы выбранных пользователем записей (на странице в диалоговом окне находится справа) в Таблицу доступных записей (на странице в диалоговом окне находится слева)

+

параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей (поле)

+
    + +
  • В таблицу “доступных”: указывается таблица, расположенная (слева) во всплывающем диалоговом окне, в которой находятся все доступные для выбора записи, куда будут перенесены (возвращены) все записи
  • +
  • Из таблицы “выбранных”: указывается таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, откуда будут перенесены (возвращены) все записи
  • +
+

+

Основные параметры Связанной таблицы(таблица выбранных пользователем записей)

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Таблица

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Показывать номер строки позволяет задать автоматическую нумерацию строк +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать нумерацию строк
  • +
  • Не активно - не отображать нумерацию строк
Подсказка позволяет создать подсказку, расположенную внутри элемента
Надпись позволяет задать наименование поля, которое будет отображаться на странице Активно - подлежит сохранению - значение по умолчанию, Не активно -не подлежит сохранению
Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
    +
  • возможность выбора сразу нескольких или одной строки
  • +
  • возможность выбора одной строки - значение по умолчанию
Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать колонку флагов
  • +
  • Не активно - не отображать колонку флагов
Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого
Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
    +
  • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
  • +
  • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
  • +
  • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
Save Column State позволяет задать возможность сохранения пользовательских настроек в части состава и ширины колонок в таблице +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - изменения пользователя в части отображаемых колонок в таблице (состав и ширина) будут сохраняться в локальном хранилище, т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения отобразятся
  • +
  • Не активно - не сохранять изменения пользователя в части отображаемых колонокв таблице (состав и ширина), т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения не отобразятся и таблица будет иметь исходный вид по умолчанию
Loading Overlay Type позволяет выбрать вид прелоадера при подгрузке данных в таблицу Доступны следующие виды настройки: +
    +
  • TEXT_OVERLAY - отображает текст в центре таблицы при подгрузке данных, задаваемый в свойствах:No Rows Overlay Message и Loading Overlay Message
  • +
  • PROGRESS_BAR - отображает прогресс-бар при подгрузке данных в таблицу
No Rows Overlay Message позволяет указать текст для отображения пользователю в таблице в случае, если результат запроса не вернул ни одной строки, например, Данные отсутствуют(доступно для настройки при Loading Overlay Type - TEXT_OVERLAY) пример возможного значения:Данные отсутствуют
Loading overlay message позволяет указать текст для отображения пользователю в процессе подгрузки данных в таблицу, например,Загрузка данных, пожалуйста, подождите.(доступно для настройки приLoading Overlay Type - TEXT_OVERLAY) пример возможного значения: Загрузка данных, пожалуйста, подождите.
Allow Context Menu With позволяет управлять отображением контекстного меню (список доступных для исполнения действий) при нажатии правой кнопкой мыши на ячейку внутри таблицы +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - при нажатии правой кнопкой мыши на ячейку внутри таблицы отображается контекстное меню доступных действий, например, копирование значения ячейки
  • +
  • Не активно - исключает отображение контекстного меню при нажатии правой кнопкой мыши на ячейку внутри таблицы
+

Свойство компоненты: Таблица. Настроить колонки таблицы

+

+

позволяет настроить отображаемые колонки в Таблице с сортировкой данных по конкретному порядку

+

с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы

+

Свойство компоненты: Активировать кнопку после выбора строки в таблице

+

+

устанавливает доступность Кнопки “Удалить” после выбора строки в Связанной таблице выбранных пользователем записей (на странице в диалоговом окне находится справа) для переноса (возврата) записи в Таблицу со списком доступных записей (на странице в диалоговом окне находится слева)

+

по умолчанию задана - Кнопка “Удалить” (Список зависимых записей (поле ) - Кнопка удалить).

+

+

Свойство компоненты: Список зависимых записей. Заполнить значением по умолчанию

+

+

позволяет настроить параметры и осуществить запрос данных для заполнения значениями по умолчанию полей компонентыСписок зависимых записей (поле)

+

с описанием функции Заполнить значением по умолчанию можно ознакомиться в разделе: Заполнить значением по умолчанию. Список зависимых записей

+

Основные параметры Кнопки “Ок”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: Ок - значение по умолчанию
Текст подтверждения позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно выбрали все необходимые значения?
+

Свойство компоненты: Диалог. Скрыть

+

+

позволяет задать диалог, который будет закрыт при нажатии на кнопку

+

- по умолчанию задан Диалог Список зависимых записей (поле) - Диалог вложенный в компоненту Список зависимых записей (поле)

+

Свойство компоненты: Список зависимых записей. Перенести записи из таблицы “выбранных” записей

+

+

по нажатию на кнопку автоматически происходит перенос записей из Таблицы выбранных пользователем записей (на странице в диалоговом окне находится справа) в результирующую Связанную таблицу зависимых записей (на основной странице)

+

параметры заполнены по умолчанию ссылками на элементы, иерархически входящими в состав компоненты Список зависимых записей

+
    + +
  • Из таблицы “выбранных”: указывается Связанная таблица, расположенная (справа) во всплывающем диалоговом окне, в которой находятся уже выбранные пользователем записи из списка доступных, откуда будут перенесены значения
  • +
  • В список зависимых записей: указывается результирующая компонента Поле с множественным выбором
  • +
+

+

Основные параметры Кнопки “Отмена”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: Отмена - значение по умолчанию
Текст подтверждения позволяет задать текст, который будет отображен пользователю внутри диалогового окна вместе с кнопками для подтверждения действия - Да/Нет пример возможного значения: Вы действительно хотите отменить действие?
+

Свойство компоненты: Диалог. Скрыть

+

+

позволяет задать диалог, который будет закрыт при нажатии на кнопку

+

- по умолчанию задан Диалог Список зависимых записей (поле) - Диалог, вложенный в компоненту Список зависимых записей

+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации функций (-функции, которые выполняются удаленно на сервере приложений,- функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Рекурсивно копировать составные объекты сложных компонент

+

TODO

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Какие дочерние элементы Списка зависимых записей требуют обязательной и непосредственнойнастройки аналитиком? Большинству описанных параметров дочерних элементов компоненты Список зависимых записей (поле) уже заранее заданы значения по умолчанию, и они не требуют каких-либо изменений от аналитика в типовых случаях. Но часть параметров следует задать в процессе использования компоненты для её корректной работы и внедрения в логику бизнес-процесса: +
    +
  • параметры элемента Поле с множественнымвыбором: Поле с множественным выбором. Подгрузка данных
  • +
  • параметры Таблицы доступных строк для выбора - Таблица: Таблица. Подгрузка данных Таблица. Настроить колонки таблицы
С примером добавления и настройки компоненты Список зависимых записей можно ознакомиться в разделе: Как задействовать компоненту Список зависимых записей (поле)
Можно ли использовать Набор фильтров для удобства поиска значений в Таблице доступных строк? Да, можно. Для этого необходимо в элемент Диалог, входящий в состав компоненты Список зависимых записей (поле), добавить элемент Набор фильтров со вложенными фильтрами, например, Текстовое поле (фильтр) или Фильтр по числовому полю, настроить их свойства и в качестве Таблицы, по значениям которой будет происходить фильтрация, в Наборе фильтров указать Таблицу доступных строк (Список зависимых записей (поле) - Таблица) компоненты Список зависимых записей (поле).
Почему при открытии диалога на странице неактивна кнопка “Добавить”? Кнопка"Добавить"недоступна для управления по умолчанию и становится активна только при выборе записи (с помощью функцииАктивировать кнопку после выбора строки в таблице,настраиваемой в свойствахТаблицы) в Таблице доступных строк для выбора(на странице в диалоговом окне находится слева).По нажатию на кнопку выбранная пользователем строка будет перенесена в Таблицу выбранных строк(на странице в диалоговом окне находится справа).Аналогичная логика заложена в работу кнопки"Удалить", которая становится активна только при выборе записи в Таблице выбранных строк(на странице в диалоговом окне находится справа),и по нажатию на кнопку выбранная запись будет перенесена в Таблицу доступных строк(на странице в диалоговом окне находится слева).
Можно ли выбрать одновременно несколько строк в Таблице доступных записей для добавления в Таблицу выбранных строк? Да, можно. Для этого необходимо при настройкеосновных параметров Таблицы доступных строк, привести свойства Допустимо выбрать несколько строк (Multiselectable) и Колонка флагов в значение (истина), после чего в интерфейсе в Таблице доступных строк (на странице в диалоговом окне находится слева) отобразится колонка флагов (выбора записи), которая позволит одновременно выделить несколько строк (при этом выбранные строки окрасятся в отличный от других строк цвет), и по нажатию на кнопку"Добавить"выбранные записи будут перенесены в Таблицу выбранных строк(на странице в диалоговом окне находится слева).В случае, когда необходимо выбрать все предложенные записи в Таблице доступных строк и включить их в Таблицу выбранных строк используется кнопка"Добавить все".
Можно ли изменить цветовое оформление Таблицы? Да. Цветовым оформлением Таблицы можно управлять с помощью CSS-стилей, задаваемых в**Основных параметрах - Расширенные настройки - CSS классы.
Как изменить формат отображения данных в колонке Таблицы? В случае, если необходимо изменить формат отображения значений в колонке Таблицы необходимо при настройке колонки применить Форматтер. Например, подгружаемое значение в колонку имеет тип данных Дата и Время (DateTime), но на странице пользовательского приложения необходимо отображать значение в колонке без Времени, только Дату. В таком случае, целесообразно использовать форматтер DateFormatter, который отобразит значение колонки в нужном виде. Но при этом предварительно необходимо применить к Таблице функцию Очистить форматирование колонок таблицы, указав наименование настраиваемой колонки.
Можно ли поменять порядок отображаемых колонок в Таблице? Для того, чтобы изменить порядок колонок в Таблице необходимо в свойстве Настроить колонки таблицы - Колонкинажать правой кнопкой мыши на «Элемент» и выбрать предложенные варианты: Переместить наверх - Переместить вниз - Удалить элемент.
Можно ли задать автоматическую нумерацию строк (записей) в Таблице? Да, можно. Для этого необходимо в настраиваемых параметрах Таблицы перейти к свойству Таблица. Основные параметры - Показывать номер строкии привести его в значение(истина).
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム.html new file mode 100644 index 0000000..5919d8a --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ミソミクムミセミコ_ム\ミソミセミクムミコミセミシ_ミエミサム柔ミイム巾アミセムミー_ミセミエミスミセミウミセ_ミキミスミームミオミスミクム.html @@ -0,0 +1,675 @@ + + + + + + + + Web-BPM Docs – ミ。ミソミクムミセミコ ム ミソミセミクムミコミセミシ ミエミサム ミイム巾アミセムミー ミセミエミスミセミウミセ ミキミスミームミオミスミクム + + + + + + +
+
+ + + +
+
+

Список с поиском для выбора одного значения

+

Назначение

+

Список с поиском для выбора одного значения - это составной компонент, который используется длявыбора одного значения из списка доступных с возможностью поиска.Для того чтобы данные, отобранные с помощью этой компоненты, сохранялись в базу данных, её необходимо вложить в компоненту Форма.

+

Компонента Список с поиском для выбора одного значения находится в разделе Компоненты - Поля - Список с поиском для выбора одного значения.

+

В структуру компоненты Список с поиском для выбора одного значения входят следующие элементы

+

Структура

+

Основные вложенные элементы компоненты Список с поиском для выбора одного значения

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование элемента Описание
Список с поиском для выбора одного значения контейнер горизонтального выравнивания, в который вложены все дочерние компоненты
Списка с поиском (с возможностью сохранения) отображает информацию по выбранной записи из списка
Кнопка выбора используется для открытия (вызова) диалогового окна
Диалог выбора используется для отображениявсплывающего диалогового окна
Панель фильтров представляет собой сворачиваемую панель, которая включает в себя Группу фильтров, Кнопку для фильтрации и “Кнопку Очистить”, которые будут отображаться в диалоговом окне
Группа фильтров позволяет задать фильтры поиска, которые будут применяться к Таблице; в зависимости от типа полей (текст, число и т.д.) по которым будет осуществляться фильтрация, в группу фильтров может быть вложен, например, Фильтр по текстовому полю или Фильтр по числовому полю
Кнопка для фильтрации используется для осуществления поиска значения в Таблице в соответствии с заданными фильтрами из Группы фильтров
Кнопка Очистить позволяет очистить введенные значения фильтров из Группы фильтров
Таблица используется для отображения информации в табличном виде, в данном случае, списка доступных значений из справочника
Кнопка выбора позволяет перенести значение из списка доступных вариантов в поле список с поиском (с возможностью сохранения)
Кнопка отмены позволяет закрыть диалог без выполнения действий с данными
+

Свойства

+

Компонента имеет набор общих свойств.

+

Основные параметры Списка с поиском для выбора одного значения

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Горизонтальный контейнер

+

Основные параметры Списка с поиском с возможностью сохранения

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Поле ввода с подбором значения (Поиск)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Начните вводить название департамента
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Департамент
Зависит от используется в том случае, когда набор доступных для выбора значений в текущем компоненте необходимо ограничить, исходя из выбранного значения в вышестоящем компоненте, от которого зависит текущий
Начать подбор вариантов после ввода задает минимальное число символов, при наборе которых будет осуществляться запрос на сервер пример возможного значения: 3 - значение по умолчанию
Прикрепить значение (Scroll Gravity) позволяет задать расположение уже выбранного значения при отображении в выпадающем списке доступных значений позволяет задать расположение уже выбранного значения при отображении в выпадающем списке доступных значений +
    +
  • По умолчанию (DEFAULT) - выбранное значение отображается в порядке своего следования в списке доступных значений для выбора
  • +
  • По центру (CENTER) - выбранное значение отображается по центру в выпадающем списке доступных значений для выбора
  • +
  • В верхней части (TOP)- выбранное значение отображается в верхней части выпадающего списка доступных значений для выбора
  • +
  • В нижней части (BOTTOM) - выбранное значение отображается в нижней части выпадающего списка доступных значений для выбора
Исключить условия графа данное свойство позволяет подгружать для отображения значения в поле минуя условия (ограничения), заданные в Графе сущностей компоненты +
    +
  • Не активно - в данном состоянии, при подгрузке значений отсекаются значения не соответствующие условиям, заданным в Графе сущностей компоненты
  • +
  • Активно - в данном состоянии, при подгрузке значений допускается отображение значений, не соответствующих условиям, заданным в Графе сущностей компоненты, но без возможности их повторного выбора в выпадающем списке
Помечать невалидным (Mark invalid if not Satisfy) данное свойство доступно для управления при активации значении свойства Exclude Graph Conditions и позволяет визуально помечать поле как невалидное на странице, в случае если в него было подгружено значение, не соответствующие условиям Графа сущностей элемента +
    +
  • Не активно - в данном значении, поле не помечается на странице как невалидное и отображается стандартным образом
  • +
  • Активно - в данном значении, убрав фокус с поля, оно помечается на странице как невалидное
Css class if not Satisfy данное свойство доступно для управления при активном значении свойства Exclude Graph Conditions и позволяет задать CSS-класс, который будет применяться, в случае если в поле было подгружено значение, не соответствующие условиям Графа сущностей элемента
Tooltip if not Satisfy позволяет отображать всплывающую подсказку,в случае если в поле было подгружено значение, не соответствующие условиям Графа сущностей элемента. Данное свойство доступно для управления при: активном значении свойства Exclude Graph Conditions и заданному значению в поле Css Class If Not Satisfy пример возможного значения: not_valid
+

Свойство компоненты: Поле ввода с подбором значения. Подгрузка данных

+

+

позволяет задать источник подгрузки данных с указанием методов и типов сортировки, и с настройкой Графа сущностей. Является обязательным к заполнению и настройке.

+
    + +
  • + +

    Граф сущностей элемента настраивается в соответствии с п. Настройка Графа сущностей. Является обязательным к заполнению и настройке.

    +
  • +
  • + +

    Возвращать значение дополнительно из - по умолчанию компонента возвращает идентификатор записи выбранной из справочника значений. Настройка данного параметра позволяет указать компоненте, какое значение необходимо дополнительно считать и вернуть, кроме значения идентификатора выбранной пользователем записи.

    +
  • +
  • + +

    Показывать варианты по - позволяет ограничить список отображаемых вариантов в процессе подбора по подстроке.

    +
  • +
  • + +

    Тип поиска позволяет задать один из вариантов поиска по вводимой пользователем подстроке:

    +
  • +
  • + +

    С начала строки - значение отображается в списке, если с введенной пользователем подстроки начинается значение колонки из базы данных

    +
  • +
  • По всей строке -значение отображается в списке, если введенная пользователем подстрока содержится в значении колонки из базы данных с любого места вхождения
  • +
  • + +

    Связаны по - позволяет указать колонку текущей компоненты, по которой осуществляется связь с компонентой, указанной в свойстве “Зависит от”, обеспечивающую связь между родительской и текущей компонентами

    +
  • +
  • + +

    Тип колонки - это свойство, позволяющее выбрать тип для отображения значения в поле:

    +
  • +
  • + +

    Из одной колонки - значение по умолчанию

    +
  • +
  • Из нескольких колонок - позволяет указать перечень колонок, значения которых будут склеиваться в одну строку при отображении на страницес определяемым разделителем значений (точка, запятая, пробел и другие)
  • +
  • + +

    Разделитель - символ или пробел, который будет разделять между собой значения из разных колонок таблиц (ы) приводимых в одну строку (доступно для настройки при Тип колонки - Из нескольких колонок)

    +
  • +
  • + +

    Колонка для поиска (Search Columns) - позволяет задать элемент базы данных (колонку) со строковым типом данных, значениекоторого будет отображаться в строке результата поиска, в случае если в отображаемой (по умолчанию) пользователю колонке (Display Column) содержится значение NULL (доступно для настройки при Тип колонки - Из нескольких колонок)

    +
  • +
  • + +

    Порядок сортировки (Sort Order) - позволяет задать порядок сортировки отображаемых значений в списке для выбора, принимает значения:

    +
      + +
    • по возрастанию - значения будут сортироваться от меньшего к большему
    • +
    • по убыванию - значения будут сортироваться от большего к меньшему
    • +
    +
  • +
  • + +

    Показывать пользователю - позволяет задатьэлемент базы данных, значение которого будет отображено пользователю в Выпадающем списке (доступно для настройки при Тип колонки - Из одной колонки)

    +
  • +
  • + +

    Активировать фильтрацию по - позволяет задать колонку, по которой можно будет динамически активировать фильтр при использовании метода “Задать фильтр” (Set_Filter) в компоненте Обработка Событий в отношении настраиваемой компоненты

    +
  • +
  • + +

    *Datasource Jndi Name - *позволяет задать иной источник (базу данных) для выполнения запроса, заданного с помощью элементов базы данных в редакторе Графа сущностей элемента.

    +
  • +
+

Значение данного свойства может быть задано следующим образом: java:/webbpm/AppRepDS, а сам адрес базы данных, логин и пароль для подключения должен быть указан в файлеstandalone.xml(аналогично тому, как указывается, например, подключение к базе данных безопасности) (рис.1)

+

В случае, если данное свойство не заполнено, запрос выполняется в базе данных, указанной в конфигурации проекта (во вкладке База данных).

+
    + +
  • Сортировать по - позволяет задать элемент базы данных, по значению которого будет производиться сортировка
  • +
+

с описанием настройки Списка с поиском с возможностью сохраненияможно ознакомиться в разделе: Поле ввода с подбором значения

+

Свойство компоненты: Поле ввода с подбором значения. Сохранение значения

+

+

В случае, если значение в Поле ввода с подбором значения необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение.

+

В случае, если значение Поля ввода с подбором значения не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется для отображения значения, которое является константой, определённой в логике приложения.

+

+

Свойство компоненты: Заполнить значением из переменнойлюбого типа

+

позволяет указать переменную процесса, значение которой будет передаваться в поле и отображаться по умолчанию

+

с описанием настройки свойстваЗаполнить значением из переменной процессаможно ознакомиться в разделе: Заполнить значением из переменной процесса

+

Свойство компоненты: Поле ввода с подбором значения. Подгрузка данных по умолчанию

+

позволяет указать значение по умолчанию, которое будет подгружаться в поле с помощью двух типов подгрузки (источников подгрузки значения):

+
    + +
  • из колонки
  • +
  • из сервиса
  • +
+

с описанием настройки свойства Заполнить значением поумолчаниюи соответствующих ей типов подгрузкиможно ознакомиться в разделе: Заполнить значением по умолчанию

+

Основные параметры Кнопки выбора (открытия диалога)

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка выбора

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке … - значение по умолчанию
Вызвать диалог позволяет задать диалог, который будет открываться при нажатии на кнопку по умолчанию задан Диалог выбора
+

Основные параметры Диалога выбора

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Диалог

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Заголовк позволяет задать заголовок диалога на странице пример возможного значения: Выбор записи - значение по умолчанию
Допускается скрытие через системную Х позволяет задать возможность закрытия диалога по нажатию на системный крестик возможно закрыть диалог через - значение по умолчанию, невозможно закрыть диалог (системный скрыт)
+

Основные параметры Панели фильтров

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Заголовок позволяет задать заголовок сворачиваемой панели на странице пример возможного значения: Фильтр - значение по умолчанию
Открывать развернутым позволяет задать вид панели при открытии диалога не активно - панель свернута - значение по умолчанию, активно - панель развернута
+

Основные параметры Кнопки для фильтрации

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка для фильтрации

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке Найти - значение по умолчанию
Компонент “Набор фильтров” позволяет задать Набор фильтров, по значениям которых будет осуществляться поиск по умолчанию задана Группа фильтров
Текст подтверждения позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопкус возможностью подтвердить действие с помощью кнопок “Да / Нет”
+

Основные параметры Кнопки “Очистить”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе-Кнопка очистки фильтра

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: Сбросить - значение по умолчанию
Текст подтверждения позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопкус возможностью подтвердить действие с помощью кнопок “Да / Нет”
Для компонента “набор фильтров” позволяет задать Набор фильтров, поля которого будут очищаться при нажатии по умолчанию задана Группа фильтров
Сбросить значения фильтров на значения по умолчанию при нажатии на кнопку возвращает значения заданных фильтров к значениям по умолчанию Не активно - не сбрасывать значения - значение по умолчанию, активно - сбрасывать значения
Применять фильтры после сброса позволяет задать возможность возврата фильтруемой Таблицы в первоначальное состояние при нажатии на кнопку Не активно - не применять значения фильтров - значение по умолчанию, активно - применять значения фильтров
+

Основные параметры Кнопки выбора

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка выбора

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: Выбрать - значение по умолчанию
Текст подтверждения позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопкус возможностью подтвердить действие с помощью кнопок “Да / Нет”
Скрыть диалог позволяет указать Диалог, который будет закрыт при нажатии на кнопку по умолчанию задан Диалог выбора
+

Свойство компоненты: Перенести значение из списка доступных вариантов в поле “выбранное значение”

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Из списка доступных вариантов позволяет задать Таблицу, из которой будет переносится выбранное значение по умолчанию задана Таблица
В поле выбранное занчение позволяет указать поле, куда будет копироваться выбранное значение из Таблицы по умолчанию задан Список с поиском (с возможностью сохранения)(Поле ввода с подбором значения)
+

Основные параметры “Кнопки отмены”

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Кнопка отмены

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись на кнопке позволяет задать надпись на кнопке пример возможного значения: Отмена - значение по умолчанию
Скрыть диалог позволяет указать Диалог, который будет закрыт при нажатии на кнопку по умолчанию задан Диалог выбора
Текст подтверждения позволяет задать текст сообщения, который отобразится в диалоговом окне после нажатия на кнопкус возможностью подтвердить действие с помощью кнопок “Да / Нет”
+

Основные параметры Таблицы

+

прим.: с полным описанием компоненты и её настройки также можно ознакомиться в разделе - Таблица

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Зависит от позволяет указать объект (родителя), по идентификатору которого будут отображаться сведения в текущей Таблице; задаётся в случае необходимости связать Таблицу с другой компонентой, например, Выпадающий список пример возможного значения: необходимо ограничить по конкретному признаку вложенную Таблицу (справочник районов). В данном случае, ограничивающим признаком будет служить значение из Выпадающего списка (регионы России), например, Республика Татарстан. В Таблице будут отображаться районы только Республики Татарстан, из которых будет производится дальнейший выбор.
Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
    +
  • возможность выбора сразу нескольких или одной строки
  • +
  • возможность выбора одной строки - значение по умолчанию
Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать колонку флагов +
  • Не активно - не отображать колонку флагов
Показывать номер строки позволяет задать автоматическую нумерацию строк +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать нумерацию строк
  • +
  • Не активно - не отображать нумерацию строк
Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого
Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
    +
  • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
  • +
  • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
  • +
  • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
Save column state позволяет задать возможность сохранения пользовательских настроек в части состава и ширины колонок в таблице +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - изменения пользователя в части отображаемых колонок в таблице (состав и ширина) будут сохраняться в локальном хранилище, т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения отобразятся
  • +
  • Не активно - не сохранять изменения пользователя в части отображаемых колонокв таблице (состав и ширина), т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения не отобразятся и таблица будет иметь исходный вид по умолчанию
Loading Overlay Type позволяет выбрать вид прелоадера при подгрузке данных в таблицу Доступны следующие виды настройки: +
    +
  • TEXT_OVERLAY - отображает текст в центре таблицы при подгрузке данных, задаваемый в свойствах: No Rows Overlay Message и Loading Overlay Message
  • +
  • PROGRESS_BAR - отображает прогресс-бар при подгрузке данных в таблицу
No rows overlay message позволяет указать текст для отображения пользователю в таблице в случае, если результат запроса не вернул ни одной строки, например, Данные отсутствуют (доступно для настройки при Loading Overlay Type - TEXT_OVERLAY) пример возможного значения: Данные отсутствуют
Loading Overlay Message позволяет указать текст для отображения пользователю в процессе подгрузки данных в таблицу, например,Загрузка данных, пожалуйста, подождите.(доступно для настройки приLoading Overlay Type - TEXT_OVERLAY) пример возможного значения:Загрузка данных, пожалуйста, подождите.
Allow Context Menu With позволяет управлять отображением контекстного меню (список доступных для исполнения действий) при нажатии правой кнопкой мыши на ячейку внутри таблицы +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - при нажатии правой кнопкой мыши на ячейку внутри таблицы отображается контекстное меню доступных действий, например, копирование значения ячейки
  • +
  • Не активно - исключает отображение контекстного меню при нажатии правой кнопкой мыши на ячейку внутри таблицы
+

Свойство компоненты: Таблица. Подгрузка данных

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подгрузка данных позволяет задать граф сущностей для подгрузки данных в Таблицу. Является обязательным к заполнению и настройке. +
    +
  • Граф сущностей элемента настраивается в соответствии с п. Настройка Графа сущностей. Является обязательным к заполнению и настройке.
  • +
  • Колонка для режима “Зависит от” - позволяет указать колонку настраиваемой Таблицы, которая обеспечивает связь текущей компоненты с компонентой заданной в параметре “Зависит от”
+

Свойство компоненты: Таблица. Настроить колонки таблицы

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Настроить колонки таблицы позволяет настроить отображаемые колонки в Таблице с сортировкой данных по конкретному порядку с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы
+

Свойство компоненты: Активировать кнопку после выбора строки в таблице

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Активируемая кнопка устанавливает доступность Кнопки выбора записи после указания необходимой строки в Таблице по умолчанию задана Кнопка выбора
+

Свойство компоненты: Таблица. Настроить динамическую подгрузку данных при просмотре страницы

+ + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Количество записей в блоке количество отображаемых записей в Таблице по умолчанию при каждой новой подгрузке пример возможного значения: 20 - значение по умолчанию
+

Основные параметры Группы фильтров

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Фильтровать сразу позволяет задать возможность фильтровать Таблицу сразу по мере ввода значения фильтра, без нажатия на Кнопку для фильтрации +
    +
  • Активно - не фильтровать сразу - значение по умолчанию
  • +
  • Активно - фильтровать сразу, без нажатия Кнопки для фильтрации
  • +
  • - значение не определено
Применить к … позволяет задать Таблицу, по которой будет осуществляться фильтрация записей по умолчанию задана Таблица
Запомнить значения фильтра позволяет восстанавливать значения фильтров при возврате на страницу, т.е. запоминать значения фильтров (сохранять в кэше). При этом значение фильтра, заданное пользователем имеет приоритет над значением фильтра по умолчанию +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - запоминать значения фильтров
  • +
  • Не активно - не запоминать значения фильтров
Skip initial loading позволяет исключать подгрузку данных в таблицу без указания значений фильтров (пустыми фильтрами) +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - исключает возможность подгрузки данных в таблицу без указания значений фильтров, т.е. при пустых значениях фильтров при первоначальном открытии страницы или по кнопке “Найти” запрос в базу данных (по Графу сущностей таблицы) выполняться не будет
  • +
  • Не активно - позволяет подгружать данные в таблицу без указания значений фильтров, т.е. при первоначальном открытии страницы или по кнопке “Найти” будет осуществляться запрос в базу данных по пустым значениям фильтров
позволяет задатьшаблон вывода сообщения (текст сообщения), отображаемого в окне ошибки при валидации значений фильтров. По умолчанию шаблон сообщения выставлен как:“#{label}: #{message}”, где параметры интерпретируются следующим образом: #{label} -наименование компоненты, в которой произошла ошибка. #{message}-текст сообщения об ошибке Примеры возможной настройки: При пустом значений в поле* Message Validation Template* текст в окне об ошибке, отображаемом, например, при не заполнении значения в обязательном поле, будет отображаться по шаблону "\#{label}: \#{message}", где \#{label} - наименование компоненты, в которой произошла ошибка (например, поле ФИО) \#{message} - текст сообщения об ошибке (значение по умолчанию Поле обязательно). При указании конкретного текста в поле Message Validation Template,например, “Для выполнения поиска необходимо заполнить обязательные поля!”. Указываемое значение вMessage Validation Template допускает и использование атрибутов#{label} и #{message} по отдельности, например, если задать значение “#{label}: Некорректное значение в обязательном поле”, то окно об ошибке будет иметь следующий вид (рис.3), где#{label} -наименование компоненты, в которой произошла ошибка (например, поле ФИО)
+

Функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

TODO

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Как определить какие типы фильтров необходимо включить в Группу Фильтров? В зависимости от того, к какому типу относится колонка в таблице, по которой будет осуществляться поиск и фильтрация, определяется соответствующий тип фильтра. Например, если мы указываем, что необходимо фильтровать по колонке, в которой хранится текст, то в данном случае, используем Фильтр по текстовому полю, если необходимо предоставить возможность выбора значения из списка значений, то применяем Фильтр по выпадающему списку.
Есть ли ограничения по количеству включаемых фильтров в Группу фильтров? Нет.Количество фильтров определяется в зависимости от решаемой задачи.
Обязательно ли использование фильтров в диалоговом окне? Нет, необязательно.Фильтры можно отключить, скрыв видимость Панели фильтров.
В каком случае целесообразно использовать компоненту Список с поиском для выбора одного значения, а в каком Выпадающий список? Если справочник, из которого необходимо выбрать значение имеет небольшую размерность и пользователь сможет сразу найти значение без использования вспомогательных фильтров, то целесообразно использовать Выпадающий список значений. Если для удобства выбора значения необходимо отобразить дополнительные параметры в виде Таблицы, то в этом случае необходимо использовать Список с поиском для выбора одного значения.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html new file mode 100644 index 0000000..61a59e0 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひームひクムミスム巾ケ_ミイム巾ソミーミエミーム紗禍クミケ_ムミソミクムミセミコ.html @@ -0,0 +1,144 @@ + + + + + + + + Web-BPM Docs – ミ。ムひームひクムミスム巾ケ ミイム巾ソミーミエミーム紗禍クミケ ムミソミクムミセミコ + + + + + + +
+
+ + + +
+
+

Статичный выпадающий список

+

Назначение

+

Статичный выпадающий список - это компонента, которая используется для выбора одного значения из выпадающего списка значений, источником подгрузки которых является не объект базы данных (таблица или представление), а массив данных, определенный вручную аналитиком при настройке элемента.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Статичный выпадающий список может использоваться для:

+
    + +
  1. Для сохранения введенной информации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Статичный выпадающий список. Сохранение значения должна быть включена)
  2. +
  3. Для отображения данных, которые были введены пользователем приложения или является константой, определённой в логике приложения(в данном случае, функция компоненты Статичный выпадающий список. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке)
  4. +
+

Компонента Статичный выпадающий список (без возможности сохранения) находится в разделе Компоненты - Поля - Статичный выпадающий список.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите год
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Отчетный год
Значение позволяет задать значение поля по умолчанию пример возможного значения: 2019
Список значений позволяет задать список значений, которые будут отображаться в выпадающем списке +
    +
  • надпись - позволяет задать наименование элемента в списке значений
  • +
  • значение - позволяет задать значение элемента, которое можно записать в базу данных
  • +
  • скрыть - позволяет регулировать видимость элемента в списке значений
надпись - Отчетный год, значение - 2018
Прикрепить значение (Scroll Gravity) позволяет задать расположение уже выбранного значения при отображении в выпадающем списке доступных значений позволяет задать расположение уже выбранного значения при отображении в выпадающем списке доступных значений +
    +
  • По умолчанию (DEFAULT) - выбранное значение отображается в порядке своего следования в списке доступных значений для выбора
  • +
  • По центру (CENTER) - выбранное значение отображается по центру в выпадающем списке доступных значений для выбора
  • +
  • В верхней части (TOP)- выбранное значение отображается в верхней части выпадающего списка доступных значений для выбора
  • +
  • В нижней части (BOTTOM) - выбранное значение отображается в нижней части выпадающего списка доступных значений для выбора
+

Свойство компоненты: Выпадающий список. Сохранение значения

+

+

указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

сохранить значение в переменную процесса любого типа

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить_роли_текущего_пользователя

+

Заполнить значением из переменной любого типа

+

Заполнить значением из переменной процесса

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Статичный выпадающий список от компоненты Выпадающий список? Компонента Статичный выпадающий список используются для выбора значений, которые указываются аналитиком вручную при настройке компоненты, Выпадающий список используется для выбора значений, которые подгружаются из таблицы базы данных.
Все ли свойства компоненты обязательны для заполнения? Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム.html new file mode 100644 index 0000000..de423f2 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひームひクムミスム巾ケ_ミソミオムミオミコミサム紗ミームひオミサム.html @@ -0,0 +1,138 @@ + + + + + + + + Web-BPM Docs – ミ。ムひームひクムミスム巾ケ ミソミオムミオミコミサム紗ミームひオミサム + + + + + + +
+
+ + + +
+
+

Статичный переключатель

+

Назначение

+

Статичный переключатель - это компонента, которая используется для выбора одного из нескольких предоставленных вариантов.Значения берутся не из базы данных,а задаются аналитиком вручную при настройке компоненты.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Статичный переключатель может использоваться для:

+
    + +
  1. Для сохранения введеннойинформации в базу данных и отображения значения из базы данных(в данном случае, функция компоненты Статичный переключатель. Сохранение значения должна быть включена)
  2. +
  3. Для отображения значений,заданных бизнес-аналитиком или являющихся константой, определённой в логике приложения(в данном случае, функция компоненты Статичный переключатель. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке)
  4. +
+

Компонента Статичный переключатель находится в разделе Компоненты - Поля без сохранения - Статичный переключатель.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента. Данное свойство не применимо с логикой отображения поля на странице приложения
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Статус
Значение позволяет задать значение по умолчанию, соответствующее одному из указанных значений в настройках компоненты “Список значений” в настройке элемента “Возвращаемое значение” В списке значений компоненты указано, например, два элемента, в настройках которых заполнены поля “Возвращаемое значение”, одно из которых можно использовать в качестве значения по умолчанию для компоненты, отображаемое при отсутствиииного значения подгруженного из базы данных (через функцию Статичный переключатель. Сохранение значения)
Список значений позволяет задать значения доступные для выбора пользователем на странице со следующими настройками +
    +
  • Возвращаемое значение - позволяет задать значение, которое может быть сохранено в базу данных
  • +
  • Сделать скрытым -* позволяет регулировать видимость элемента (значения)
  • +
  • Видимое значение - позволяет задать значение, которое будет отображено пользователю
  • +
  • Сделать недоступным для выбора* - позволяет регулировать возможность управления элементом
+

Свойство Статичный переключатель. Сохранение значения

+

+

В случае, если значение в поле Статичный переключатель необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Для выбора доступны только колонки имеющие строковый тип в базе данных.

+

В случае, если значение поля Статичный переключатель не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется дляотображения значения, которое было введено пользователем приложения или является константой, определённой в логике приложения.

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Сохранить значение в переменную процесса любого типа

+

Сохранить значение в переменную процесса любого типа

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Статичный переключатель от компоненты Переключатель? Компонента Статичный переключательиспользуются для выбора значений, которые задаются аналитиком при настройке компоненты, Переключательиспользуется для выбора значений,которые берутся из базы данных.
Все ли свойства компоненты обязательны для заполнения? Нет.Свойства компоненты определяются в зависимости от решаемой задачи.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство Статичный переключатель. Сохранение значения? Да. В случае, если функция “Статичный переключатель. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひクミサミク-ミソミセミサミオミケ-ミイミイミセミエミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひクミサミク-ミソミセミサミオミケ-ミイミイミセミエミー.html new file mode 100644 index 0000000..8688dbe --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ。ムひクミサミク-ミソミセミサミオミケ-ミイミイミセミエミー.html @@ -0,0 +1,201 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
+
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Название класса css Описание
radio-invert применять для группы radiobutton с целью изменения порядка следования элементов
radio-horizontal применять для RadioButton / StaticRadioButton для горизонтального вывода (кнопки в одну строку)
check-invert применять для группы checkbox с целью изменения порядка следования элементов
ok Бледно-зеленый фон input-а
error Мигающий красный фон input-а
align-center-field Выравнивание полей по центру по горизонтали (Для корректной работы должен находиться внутри отдельного контейнера с классом align-center)
+

Растягиваемые по ширине поля

+

Пользоваться КРАЙНЕ аккуратно, возможны искажения информации!

+ + + + + + + + + + + + +
Название класса css Описание
width-full для полнотекстовых полей input и textarea. Использовать только если элемент единственный в строке!
+

Размеры полей

+ + + + + + + + + + + + + + + + + + + + + + + + +
Название класса css Описание
extra-mini 60px
mini 80px
small 150px
medium 220px
large 600px
+

Размеры надписей к компонентам

+ + + + + + + + + + + + + + + + + + + + + +
Название класса css Описание
fixed-label класс для жесткой фиксации длины метки (заголовка поля), ширина - 200px
fixed-label-small класс для жесткой фиксации длины метки (заголовка поля), ширина - 150px
fixed-label-mini класс для жесткой фиксации длины метки (заголовка поля), ширина - 100px
free-label сбрасывает изначальную ширину, принимает значение по длине текста
+

Размеры шрифтов

+ + + + + + + + + + + + + + + + + + + + + +
Название класса css Описание
font-large 1.8em
font-medium 1.4em
font-small 0.9em
font-mini 0.8em
+

Жирный шрифт

+ + + + + + + + + + + + +
Название класса css Описание
font-bold для текста
+

Компонент Text

+ + + + + + + + + + + + + + + + + + + + + +
Название класса css Описание
title класс для заголовка страницы. * При необходимости использования title на группу элементов, применять ко всему контейнеру * Применять title при наличии заголовка у объекта «fieldset».
blue (совместно с title) Синий фон заголовка
text-blink Мигающий красный текст
text-blink -blue Мигающий синий текст
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ「ミオミコムム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ「ミオミコムム.html new file mode 100644 index 0000000..5e94c67 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ「ミオミコムム.html @@ -0,0 +1,146 @@ + + + + + + + + Web-BPM Docs – ミ「ミオミコムム + + + + + + +
+
+ + + +
+
+

Текст

+

Назначение

+

Текст - это компонента, которая используется для отображения статического текста на форме страницы без возможности прямого ввода значения в поле на форме приложения.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Текст может использоваться для:

+
    + +
  1. Для сохранения информации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Текст. Сохранение значения должна быть включена)
  2. +
  3. Для отображения текста, который является константой, определённой в логике приложения(в данном случае, функция компоненты Текст. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке) (рис.3)
  4. +
+

Компонента Текст находится в разделе Компоненты - Поля - Текст.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Наименование организации
Значение позволяет задать значение поля по умолчанию пример возможного значения: ООО “Форт”
+

Свойство Текст. Сохранение значения

+

+

В случае, если значение в поле Текст необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Для выбора доступны колонки без ограничения по типу данных (например, если для Текстового поля можно выбрать только колонки имеющий строковый тип данных, то для компоненты Текст таких ограничений нет).

+

В случае, если значение поля Текст не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется для отображения текста, являющегося константой, определённой в логике приложения, например, Заголовок страницы.

+

+

Свойство Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Свойство Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Сохранить значение в переменную процесса любого типа

+

Сохранить значение в переменную процесса любого типа

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

### Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

### Добавить строку к значению в текущем поле

+

Добавить строку к значению в текущем поле

+

### Склеить несколько значений

+

Склеить несколько значений

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Текстовое поле от компоненты Текст? Компонента Текст используется для отображения статического текста на странице без возможности ввода значения в поле на форме,текстовое полеиспользуется для отображения и ввода текста.
Для решения каких задач чаще всего используется компонента Текст? Компонента Текст чаще всего используется для добавления Заголовка на странице или отображения каких-то текстовых примечаний для пользователя на странице без возможности их редактирования пользователем.
Какие действия необходимо выполнить для того, чтобы значение указанное в настройке поля Текст отобразилось как заголовок на странице (т.е. отличалось от других текстовых полей на странице)? Для того, чтобы элемент Текст отображался как заголовок на странице к нему необходимо применить CSS-класс “title”.
Как задать определенный цвет шрифта для значения, содержащегося в поле Текст? Для этого необходимо применить соответствующий необходимому цвету CSS-класс в настройке компоненты, например, “font-color-pink.”
Как задать определенный размер шрифта для значения, содержащегося в поле Текст? Для этого необходимо применить соответствующий необходимому размеру шрифта CSS-класс в настройке компоненты, например, "font-small.
Все ли свойства компоненты обязательны для заполнения? Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство Текст. Сохранение значения? Да. В случае, если функция “Текст. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
Если в поле Текст невозможно ввести значение на странице приложения, то возможно ли выставить в него значение по определенному действию на странице? Для того, чтобы выставить в поле Текст определенное значение по событию (действию) на странице, необходимо использовать компоненту “Обработка событий”, настроив ее условия следующий образом: в условии “Когда” мы указываем событие, по которому должно происходить определение значения в поле, например нажатие на кнопку на странице или изменение значения в другом поле; в условии “Если” указываем дополнительные условия, при которых должно выполниться действие, например, значение в поле указанном в условии “Когда” - не пусто; в условии “Тогда” указываем поле Текст, которому необходимо задать значение, выбираем метод “Задать значение” во вкладке “Текст. Основные параметры” и указываем необходимое значение в зависимости от поставленной задачи, в условии “Иначе” также можно прописать ряд в действий в зависимости от поставленной задачи.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ.html new file mode 100644 index 0000000..514bbe3 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ「ミオミコムムひセミイミセミオ_ミソミセミサミオ.html @@ -0,0 +1,231 @@ + + + + + + + + Web-BPM Docs – ミ「ミオミコムムひセミイミセミオ ミソミセミサミオ + + + + + + +
+
+ + + +
+
+

Текстовое поле

+

Назначение

+

Текстовое поле - это компонента, которая используется для отображения и ввода однострочного текста на форме страницы.

+

В зависимости от настройкисвойств, включенных по умолчанию в состав компоненты, компонента Текстовое поле может использоваться для:

+
    + +
  1. Для сохранения введенной информации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Текстовое поле. Сохранение значения должна быть включена) (рис.2)
  2. +
  3. Для отображения текста, который был введен пользователем приложения или является константой, определённой в логике приложения (в данном случае, функция компоненты Текстовое поле. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке) (рис.3)
  4. +
+

Компонента Текстовое поле находится в разделе Компоненты - Поля - Текстовое поле.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите название организации
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Наименование организации
Значение позволяет задать значение поля по умолчанию пример возможного значения: ООО “Форт”
Максимальная длина задаёт максимальное количество вводимых символов в поле пример возможного значения: 10
Минимальная длина (Min length) задаёт минимальное количество вводимых символов в поле
allowMoreSymbols при true позволяет пользователю ввести больше символов, чем значение максимальной длины, но при этом поле станет невалидным и будет отображено сообщение об ошибке maxLengthErrorMsg (см. документацию) логическое значение (true, false)
Оперировать немаскированным значением указывает системе порядок обработки символов маски при сохранении значения поля в базу данных +
    +
  • значение не определено - по умолчанию
  • +
  • активно - сохранять без форматирования маской
  • +
  • пустое - сохранять с форматированием маской
Значение, отформатированное маской в поле ввода как “+7~(917)-922-33-44”, может быть сохранено в поле таблицы базы данных как “+7~(917)-922-33-44” (если флажок снят) или как “9179223344” (если флажок выставлен)
Маска позволяет задать маску, в соответствии с которой пользователь будет осуществлять ввод текста выставление маски не может обеспечить выполнение требования обязательности ввода, маска только внешне отфильтровывает и форматирует последовательность вводимых пользователем символов заранее заданным образом (например, отобразит тел. номер в виде “+ 7 (917) - 101 - 02 - 03” вместо “8917010203” или не допустит такого ввода “89170102йЯ”). Для блокирования сохранения записи с пустым значением поля и обеспечения контроля обязательности ввода используйте свойство “Обязательность” Примеры масок: +
    +
  • A (буква, латинская, регистр не имеет значения) в маске - позволит ввести в поле одну любую букву любого алфавита
  • +
  • Б (буква, русская, в верхнем регистре) в маске - позволит ввести в поле одну любую букву русского алфавита
  • +
  • 9 (цифра) в маске - позволит ввести в поле одну любую цифру
  • +
  • * (символ) в маске - позволит ввести в поле одну любую цифру или букву
  • +
  • R (буква, латинская, в верхнем регистре) в маске - позволит ввести в поле одну римскую цифру
  • +
  • [ ] (внутри квадратных скобок) в маске - позволит ввести или опустить при вводе в поле один или несколько необязательных символов (букву, цифру), например 999[9]; под эту маску подходит как 123, так и 1234 Например, необходимо задать форматирование ввода маской для значения Й456QЬ. В данном случае маска может выглядеть следующим образом: Б999АА, где А - латинская буква.
Регистр позволяет задать вид регистра вводимого текста: +
    +
  • в верхнем регистре - заглавные (прописные) буквы
  • +
  • в нижнем регистре - строчные (маленькие) буквы
  • +
  • первая буква каждого слова заглавная
  • +
  • только первая буква текста заглавная, остальные строчные
  • +
  • первая буква текста заглавная
Тип позволяет задать тип вводимого текста: +
    +
  • обычный текст
  • +
  • пароль (заполнитель - звездочки)
  • +
  • электронная почта
  • +
  • URL
Регулярное выражение или Pattern позволяет задать проверку вводимого текста с помощью регулярных выражений поля, для которых не выполняются условия заданных регулярных выражений, при сохранении записи подсвечиваются красным оттенком и операция отменяется. Некоторые типовые регулярные выражения: +
    +
  • \d [0-9] - одна цифра от 0 до 9
  • +
  • \D [^0-9] - любой символ кроме цифры
  • +
  • \s - пробел
  • +
  • [A-Z] - только заглавная латинская буква
  • +
  • [A-Za-z] - только латинская буква в любом регистре
  • +
  • [А-Яа-яЁё] - только русская буква в любом регистре
  • +
  • [A-Za-zА-Яа-яЁё] - любая буква русского и латинского алфавита
  • +
  • [0-9]{3} - три цифры
+
    +
  • [A-Za-z]{6,}- не менее шести латинских букв
  • +
  • [0-9]{,3} - не более трёх цифр
  • +
  • [0-9]{5,10} - от пяти до десяти цифр
  • +
  • ^[a-zA-Z]+$ - любое слово на латинице
  • +
  • ^[А-Яа-яЁё\s]+$ - любое слово на русском включая пробелы
  • +
  • ^[ 0-9]+$ - любое число
чтобы ограничить возможность ввода и сохранения текста латиницей, можно использовать регулярное выражение ^[А-Яа-яЁё\s]+$
patterErrorMsg, maxLengthErrorMsg, minLengthErrorMsg, emailErrorMsg, urlErrorMsg позволяют задать пользовательское сообщение о соответствующих ошибках валидации строка
+

Свойство Текстовое поле. Сохранение значения

+

+

В случае, если значение в текстовом поле необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Для выбора доступны только колонки имеющий строковый тип в базе данных.В случае, если значение текстового поля не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда текстовое поле используется дляотображения текста, который был введен пользователем приложения или является константой, определённой в логике приложения.

+

+

Свойство Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Базовые функции

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Настройка

+

Для добавления функции в логику работы компоненты необходимо нажать на кнопку Добавить скрипт - Выбрать из списка функцию, если она предусмотрена для использования с компонентой Указать переменную, в которую будет сохраняться значение из поля.

+

+

+

### Определить права текущего пользователя

+

Определить права текущего пользователя

+

### Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Добавить строку к значению в текущем поле

+

Добавить строку к значению в текущем поле

+

Склеить несколько значений

+

Склеить несколько значений

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компонента Текстовое поле от компоненты Текст? Компонента текст используются для отображения статического текста на странице, текстовое поле используется для отображения и ввода текста.
Все ли свойства компоненты обязательны для заполнения? Нет. Свойства компоненты определяются в зависимости от решаемой задачи.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство Текстовое поле. Сохранение значения? Да. В случае, если функция “Текстовое поле. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
Чем отличается регулярное выражение от маски? Маска даёт простое и наглядное представление правила ввода с подстановкой дополнительных символов, а регулярное выражение позволяет задать более сложный шаблон с дополнительными условиями. Необходимо отметить, что поля, для которых не выполняются условия заданных регулярных выражений, при сохранении записи подсвечиваются красным оттенком и операция отменяется.
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
Все ли типы переменных можно записать в текстовое поле? Нет. Вслучае с текстовым полем, используется строковый тип переменной (string).
Какую функцию необходимо добавить, чтобы сохранить значение из текстовогополя в переменную процесса? Для того чтобы сохранить значение из текстового поля в переменную процесса необходимо по кнопке “Добавить функцию” выбрать в списке функцию “Сохранить значение в переменную процесса любого типа”, выбрав в настройке добавленной функции необходимую переменную строкового типа (string).
Обязательно ли наличие Формы на странице для сохранения значения из текстового поля в переменную процесса? Нет, наличие Формы на странице необязательно для сохранения значения из текстового поля в переменную процесса. При переходе по процессу со страницы, где расположено текстовое поле, например, по Кнопке навигации, осуществится сохранение значения в переменную процесса при условии, что на текстовое поле добавлена функция “Сохранить значение в переменную процесса любого типа” и указана необходимая переменная процесса.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミーミケミサ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミーミケミサ.html new file mode 100644 index 0000000..f5d1c5d --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミーミケミサ.html @@ -0,0 +1,172 @@ + + + + + + + + Web-BPM Docs – ミ、ミーミケミサ + + + + + + +
+
+ + + +
+
+

Файл

+

Файл - это компонента, которая сочетает в себе функциональность сохранения файлов-вложений в базу данных в кодировке base64, функциональность отображения preview уже сохраненных файлов и функциональность скачивания сохраненных в базу данных файлов-вложений на компьютер пользователя. Указание файлов, подлежащих сохранению в базу данных, осуществляется через перетягивание файлов мышью из других приложений (drag-and-drop), либо явным указанием набора файлов через системный диалог операционной системы. Режим предпросмотра включен всегда - если файлы существуют, и для них операционная система может отобразить содержимое - то компонента отображает контент в уменьшенном масштабе. Для скачивания ранее сохраненных файлов достаточно кликнуть мышью по наименованию файла, являющемуся гиперссылкой на скачивание:

+

Компонента Файл находится в разделе Компоненты - Поля - Файл.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Выберите файл для загрузки
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Файл
Максимальный размер каждого файла позволяет задать максимально разрешенный размер для каждого из загружаемых файлов, измеряется мегабайтами пример возможного значения: 10
Допустимо удаление файла позволяет настроить разрешение на удаление файла
Список доступных типов файлов позволяет сформировать список разрешенных для загрузки расширений файлов, при пустом списке можно добавлять файлы любых расширений пример возможного значения: doc
File names
+

Свойство Загрузки файлов: Настройка

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Ссылка на главную сущность графа основной формы осуществляется настройка таблиц и связей между ними для сохранения файлов-вложений.
граф сущностей настраивается в соответствии с п. Настройка Графа сущностей. Указывается только та таблица, в которую будут сохраняться вложения.
допустимое максимальное количество файлов в компоненте позволяет задать количество файлов, которые допустимо загрузить.
колонка главной сущности графа основной формы(а не графа сущности текущей компоненты) - позволяет задать наименование таблицы и колонки, указанной как главная в графе сущностей родительской компоненты Форма.
колонка с именем файла позволяет задать наименование таблицы и колонки с именем файла.
колонка с содержимым файла позволяет задать наименование таблицы и колонки для сохранения содержимого файла в base64 кодировке.
+

+

В показанной конфигурации в основную таблицу базы данных (Проекты) сохраняется информация об основным признаках проекта, т.е в новой создаваемой строке о проекте присваивается новый идентификатор, а в зависимую таблицу (Вложенные документы) со ссылкой на этот идентификатор создается 10 записей, в каждой из которых сохраняется по 1 файл вложений.

+

Таким образом, между 2 таблицами создается связь один-ко-многим с внешним ключом из зависимой таблицы вложений в основную таблицу проектов.

+

+

Для случая, когда количество вложений строго ограничено 1 (одним) файлом, параметр:

+

допустимое максимальное количество файлов в компоненте - принимает значение “1”,

+

а параметр:

+

колонка главной сущности графа основной формы - исключается из интерфейса настройки компоненты.

+

+

В показанной конфигурации в основную таблицу базы данных (Проекты) сохраняется информация как об основных признаках проекта, так и сам файл вложений.

+

Таким образом, сохранение 1 файла-вложения происходит в ту же таблицу, что и другие основные параметры сущности “проект”, без использования зависимой таблицы и без внешних ключей между сущностью “проект” и файлом-вложением .

+

Заполнить значением по умолчанию

+

Заполнить значением по умолчанию

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации скриптов (скрипты выполняются удаленно на сервере приложений, скрипты выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Все настроено верно, но компонента по-прежнему не сохраняет вложения в базу данных ? Проверьте свойство компоненты
Нужно ли включать (дублировать) в граф сущности компоненты таблицу, являющуюся главной сущностью всей компоненты Form ? Ответ зависит от ситуации ,в которой используется компонента Файл. Когда для одной основной сущности всей страницы требуется сохранить несколько файлов вложений (это большинство случаев использования компоненты) в графе сущностей компоненты Файл указывается только таблица, в которую происходит непосредственное сохранение файлов. Взаимосвязь с таблицей, представляющей главную сущность родительской компоненты Форма, осуществляется не стрелками в графе сущностей компоненты Файл, а при настройке параметров колонка главной сущности графа основной формы,колонка с именем файла,колонка с содержимым файла в интерфейсе Диспетчера компоненты Файл. Когда для одной основной сущности всей страницы требуется сохранить единственный файл вложений (редкий вариант) в графе сущностей компоненты Файлуказывается та же самая таблица, которая указана в качестве главной сущности родительской компоненты Форма.
Где в иерархии страницы следует располагать компоненту? Поскольку она уже имеет свою структуру сущности - должна ли она обязательно находиться внутри родительской компоненты Form всей страницы? Да, При любом кейсе использования компоненты Файл, эта она должна быть дочерней по отношению к компоненте Форма всей страницы и располагаться внутри ее (компоненты Форма) контейнера.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミクミサム袴びミームミクム柔ミクムムひセムミスミクミコミー_ミエミーミスミスム錦.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミクミサム袴びミームミクム柔ミクムムひセムミスミクミコミー_ミエミーミスミスム錦.html new file mode 100644 index 0000000..887fe11 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミクミサム袴びミームミクム柔ミクムムひセムミスミクミコミー_ミエミーミスミスム錦.html @@ -0,0 +1,105 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴びミームミクム ミクムムひセムミスミクミコミー ミエミーミスミスム錦 ミセミエミスミセミウミセ ミクミキ ミソミセミサミオミケ ム ミソミセミエミアミセムミセミシ ミキミスミームミオミスミクム ミイ ミキミーミイミクムミクミシミセムムひク ミセム ミイム巾アムミーミスミスミセミウミセ ミキミスミームミオミスミクム ミイ ミエムムσウミセミシ ミソミセミサミオ ム ミソミセミエミアミセムミセミシ ミキミスミームミオミスミクム + + + + + + +
+
+ + + +
+
+

Фильтрация источника данных одного из полей с подбором значения в зависимости от выбранного значения в другом поле с подбором значения

+

Дано: 3 Autocomplete поля: Страна, область и город. Необходимо организовать последовательное заполнение этих полей.

+

Проблема: Если просто использовать 3 Autocomplete поля, без настройки,пользователь сможет выбрать несуществующую цепочку, к примеру: Германия - Татарстан - Пекин
+Нужно, чтобы в следующем уровне можно было выбирать только дочерние значения родительского уровня. В России можно выбирать только российские населенные пункты и т.д.

+

Пример настройки

+

На страницу добавлены нужные компоненты:

+
    + +
  1. Настроить Autocomplete. Autocomplete области и города сделать неактивными (Enabled = false), для того, чтобы пользователь заполнял поля последовательно.
  2. +
  3. Задать свойство filter column
    +для Autocomplete области фильтруем по странам, для города - по областям. Для Autocomplete страны не задаем.
  4. +
  5. + +

    Настраиваем ActionController’ы:
    +Настроем ActionController, который отвечает за фильтрацию области по стране. Настройка выглядит следующим образом:

    +
  6. +
+

ЕСЛИ Autocomplete страны был заполнен,

+

ТОГДА установить фильтр дляAutocomplete области (метод setFilter) по значению изAutocomplete страны.

+

А также сделать активным(Enabled = true)Autocomplete области.

+

ИНАЧЕ очистить фильтр используя метод resetFilter

+

исделать неактивным (Enabled = false) Autocomplete области.

+

5. Аналогично настраивается второйAutocomplete.

+

Фильтрация может задаваться 2 способами:

+
    + +
  1. C использованием метода getValue :
  2. +
+

Autocomplete_1:

+

Autocomplete_2:

+

Используется метод getValue:

+
    + +
  1. C помощью метода getBusinessId:
  2. +
+

Autocomplete_1:

+

Autocomplete_2:

+

Используется метод getBusinessId:

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミクミサム袴びミームミクム柔ミクムムひセムミスミクミコミー_ミエミーミスミスム錦_ミセミエミスミセミウミセ_ミクミキ_ミソミセミサミオミケ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミイ_ミキミーミイミクムミクミシミセムムひク_ミセム_ミイム巾アムミーミスミスミセミウミセ_ミキミスミームミオミスミクム柔ミイ_ミエムムσウミセミシ_ミソミセミサミオ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミクミサム袴びミームミクム柔ミクムムひセムミスミクミコミー_ミエミーミスミスム錦_ミセミエミスミセミウミセ_ミクミキ_ミソミセミサミオミケ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミイ_ミキミーミイミクムミクミシミセムムひク_ミセム_ミイム巾アムミーミスミスミセミウミセ_ミキミスミームミオミスミクム柔ミイ_ミエムムσウミセミシ_ミソミセミサミオ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html new file mode 100644 index 0000000..6588db9 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミクミサム袴びミームミクム柔ミクムムひセムミスミクミコミー_ミエミーミスミスム錦_ミセミエミスミセミウミセ_ミクミキ_ミソミセミサミオミケ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム柔ミイ_ミキミーミイミクムミクミシミセムムひク_ミセム_ミイム巾アムミーミスミスミセミウミセ_ミキミスミームミオミスミクム柔ミイ_ミエムムσウミセミシ_ミソミセミサミオ_ム\ミソミセミエミアミセムミセミシ_ミキミスミームミオミスミクム.html @@ -0,0 +1,105 @@ + + + + + + + + Web-BPM Docs – ミ、ミクミサム袴びミームミクム ミクムムひセムミスミクミコミー ミエミーミスミスム錦 ミセミエミスミセミウミセ ミクミキ ミソミセミサミオミケ ム ミソミセミエミアミセムミセミシ ミキミスミームミオミスミクム ミイ ミキミーミイミクムミクミシミセムムひク ミセム ミイム巾アムミーミスミスミセミウミセ ミキミスミームミオミスミクム ミイ ミエムムσウミセミシ ミソミセミサミオ ム ミソミセミエミアミセムミセミシ ミキミスミームミオミスミクム + + + + + + +
+
+ + + +
+
+

Фильтрация источника данных одного из полей с подбором значения в зависимости от выбранного значения в другом поле с подбором значения

+

Дано: 3 Autocomplete поля: Страна, область и город. Необходимо организовать последовательное заполнение этих полей.

+

Проблема: Если просто использовать 3 Autocomplete поля, без настройки,пользователь сможет выбрать несуществующую цепочку, к примеру: Германия - Татарстан - Пекин
+Нужно, чтобы в следующем уровне можно было выбирать только дочерние значения родительского уровня. В России можно выбирать только российские населенные пункты и т.д.

+

Пример настройки

+

На страницу добавлены нужные компоненты:

+
    + +
  1. Настроить Autocomplete. Autocomplete области и города сделать неактивными (Enabled = false), для того, чтобы пользователь заполнял поля последовательно.
  2. +
  3. Задать свойство filter column
    +для Autocomplete области фильтруем по странам, для города - по областям. Для Autocomplete страны не задаем.
  4. +
  5. + +

    Настраиваем ActionController’ы:
    +Настроем ActionController, который отвечает за фильтрацию области по стране. Настройка выглядит следующим образом:

    +
  6. +
+

ЕСЛИ Autocomplete страны был заполнен,

+

ТОГДА установить фильтр дляAutocomplete области (метод setFilter) по значению изAutocomplete страны.

+

А также сделать активным(Enabled = true)Autocomplete области.

+

ИНАЧЕ очистить фильтр используя метод resetFilter

+

исделать неактивным (Enabled = false) Autocomplete области.

+

5. Аналогично настраивается второйAutocomplete.

+

Фильтрация может задаваться 2 способами:

+
    + +
  1. C использованием метода getValue :
  2. +
+

Autocomplete_1:

+

Autocomplete_2:

+

Используется метод getValue:

+
    + +
  1. C помощью метода getBusinessId:
  2. +
+

Autocomplete_1:

+

Autocomplete_2:

+

Используется метод getBusinessId:

+ +
+
+

Attachments:

+
+ + +
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミサミーミウ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミサミーミウ.html new file mode 100644 index 0000000..d2fabde --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミ、ミサミーミウ.html @@ -0,0 +1,138 @@ + + + + + + + + Web-BPM Docs – ミ、ミサミーミウ + + + + + + +
+
+ + + +
+
+

Флаг

+

Назначение

+

Флаг - это компонента, которая используется для проставления отметок в виде “флажков - галочек” в группе из нескольких доступных пользователю вариантов выбора значений. Отличается от компоненты Переключатель тем, что предоставляет выбор сразу нескольких значений вместо одного из альтернативных. При одиночном использовании (не в составе группы) может использоваться как включатель/выключатель какой-либо функциональности, разработанной аналитиком на web-странице. В этом случае используется совместно с компонентой Обработка Событий, которая управляет реакцией системы на изменение значения компоненты Флаг.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Флаг может использоваться для:

+
    + +
  1. Для сохранения введеннойинформации в базу данных и отображения значения из базы данных(в данном случае, функция компоненты Флаг. Сохранение значения должна быть включена)
  2. +
  3. Для отображения значений,которые были введены пользователем приложенияили являются константой, определённой в логике приложения (в данном случае, функция компоненты Дата. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке)
  4. +
+

Компонента Флаг (без возможности сохранения) находится в разделе Компоненты - Поля - Флаг

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента данное свойство не применимо с логикой отображения поля на странице приложения
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Пример поля Флаг
Значение позволяет задать значение по умолчанию, которое примет компонента при открытии страницы в приложении, значение типа Boolean (TRUE, FALSE, UNDEFINED) Истина (TRUE), Ложь (FALSE), Не определено (UNDEFINED) - значение по умолчанию
Allow null позволяет регулировать возможность выбора (отображения) значения “Не определено (UNDEFINED)” при работе с полем Флаг Активно - позволяет выбирать значение “Не определено (UNDEFINED)” пользователем при работе с полем на ряду со значениямиИстина (TRUE) иЛожь (FALSE), Не активно - исключает возможность выбора значения “Не определено (UNDEFINED)” пользователем при работе с полем, т.е. к выбору доступны только два значения Истина (TRUE) и Ложь (FALSE)- значение по умолчанию
+

Свойство Флаг.Сохранение значения

+

+

В случае, если значение в поле Флаг необходимо сохранить или подгрузить из базы данных, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Для выбора доступны только колонки имеющие логический тип в базе данных - BOOLEAN. В случае, если значение поля Флаг не требуется сохранять или подгружать из базы данных, то данное свойство удаляется (или отключается). Данный вариант может быть необходим, когда поле используется дляотображения значения, которое было введено пользователем приложения или является константой, определённой в логике приложения.

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

сохранить значение в переменную процесса любого типа

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Вопрос Ответ
Чем отличается компоненты Флаг и Переключатель? в компоненте Переключатель в один и тот же момент времени может быть выбрано только единственное значение из нескольких возможных, тогда как компонент Флаг предоставляет возможность одновременно выбрать несколько вариантов из предложенных. При этом, поскольку компонента Переключатель предоставляет выбор только одного варианта, то в базу данных сохраняется разные значения, но в одну колонку для всех вариантов. Для компоненты Флаг для каждого варианта должна быть предусмотрена своя колонка.
Чем отличается компоненты Флаг и Переключатель? в компоненте Переключатель в один и тот же момент времени может быть выбрано только единственное значение из нескольких возможных, тогда как компонент Флаг предоставляет возможность одновременно выбрать несколько вариантов из предложенных. При этом, поскольку компонента Переключатель предоставляет выбор только одного варианта, то в базу данных сохраняется разные значения, но в одну колонку для всех вариантов . Для компоненты Флаг для каждого варианта должна быть предусмотрена своя колонка.
Сохраняет ли в базу данных свои значения компонента Флаг? КомпонентаФлаг, для которой указана колонка для сохранения, обеспечивает и сохранение значения в базу данных, и чтение из нее. КомпонентаФлаг, без параметра “колонка для сохранения в БД” не сохраняет свое значение в базу данных. Но зато может использоваться для динамического управления интерфейсом страницы, на которой расположена. Пример такой настройки приведен в разделе методических рекомендаций.
Все ли свойства компоненты обязательны для заполнения? Нет.Свойства компоненты определяются в зависимости от решаемой задачи.
Можно ли расположить сам Флаг на странице с левой стороны от наименования поля? Да. Если на странице необходимо отображать сначала сам Флаг, а после Наименование этого поля, то необходимо использовать CSS-класс “check-invert”. После применения CSS-класса поле Флаг будет выглядеть следующим образом:(вместо стандартного отображения)
Если удалить базовые функции, которые включены в компоненту по умолчанию, например, “Заполнить значением по умолчанию” можно ли будет вновь их добавить? Да. Если удалить какую-то базовую функцию компоненты, то по кнопке “Добавить функцию” она будет доступна для выбора.
Возникнет ли ошибка при запуске приложения, если оставить незаполненным свойство Флаг. Сохранение значения? Да.В случае, если функция “Флаг. Сохранения значения” включена у элемента и не заполнены ее параметры, то при валидации проекта возникнет ошибка. Если по условию задачи данное поле не должно подгружаться и сохраняться в базу данных, данную функцию в компоненте необходимо либо отключить либо удалить.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミァミクムミサミセミイミセミオ_ミソミセミサミオ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミァミクムミサミセミイミセミオ_ミソミセミサミオ.html new file mode 100644 index 0000000..0dcfa60 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/fields/ミァミクムミサミセミイミセミオ_ミソミセミサミオ.html @@ -0,0 +1,165 @@ + + + + + + + + Web-BPM Docs – ミァミクムミサミセミイミセミオ ミソミセミサミオ + + + + + + +
+
+ + + +
+
+

Числовое поле

+

Назначение

+

Числовое поле - это компонента, которая используется для отображения и ввода чисел на форме страницы.

+

В зависимости от настройки свойств, включенных по умолчанию в состав компоненты, компонента Числовое поле может использоваться для:

+
    + +
  1. Для сохранения введенной информации в базу данных и отображения значения из базы данных (в данном случае, функция компоненты Числовое поле. Сохранение значения должна быть включена)
  2. +
  3. Для отображения числа, которые было введено пользователем приложения или является константой, определённой в логике приложения(в данном случае, функция компоненты Числовое поле. Сохранение значения должна быть выключена или удалена через настройки функции по кнопке)
  4. +
+

Компонента Числовое поле находится в разделе Компоненты - Поля - Числовое поле.

+

Свойства

+

Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Подсказка позволяет создать подсказку, расположенную внутри элемента пример возможного значения: Введите год
Надпись позволяет задать наименование поля, которое будет отображаться на странице пример возможного значения: Год
Значение по умолчанию позволяет задать значение поля по умолчанию, которое будет отображаться на странице пример возможного значения: 100
Минимальное возможное значение позволяет задать минимально возможное значение числа, меньше которого пользователь ввести не сможет пример возможного значения: 0
Максимальное возможное значение позволяет задать максимально возможное значение числа, больше которого пользователь ввести не сможет пример возможного значения: 2999
Шаг увеличения позволяет задать шаг увеличения значения числа пример возможного значения: 1
maxValueErrorMsg, minValueErrorMsg, numberErrorMsg позволяют задать пользовательское сообщение о соответствующих ошибках валидации строка
+

Свойство Числового поля: Сохранение значения

+

+

В случае если значение в числовом поле необходимо сохранить или подгрузить из БД, указывается поле таблицы базы данных, куда будет сохраняться и откуда будет подгружаться введенное значение. Если же числовое поле не требуется сохранять в БД или подгружать из БД, то данное свойство удаляется. Данный вариант может быть необходим, когдачисловое поле используется для отображения текста,который был введен пользователем приложенияили является константой, определённой в логике приложения.

+

+

Базовые функции

+

Заполнить значением по умолчанию

+

Подгрузка данных по умолчанию

+

Заполнить значением из переменной процесса

+

Заполнить значением из переменной процесса

+

Дополнительные функции

+

В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

+

Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

+

Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

+

Определить права текущего пользователя

+

Определить права текущего пользователя

+

Определить роли текущего пользователя

+

Определить роли текущего пользователя

+

Включить вычисление математических операций

+

Включить вычисление математических операций

+

Включить конвертирование значений

+

TODO desribe function

+

Функция, которая не имеет настраиваемых аналитиком параметров, но будучи задействованной, позволяет осуществить преобразование значения в исходном компоненте из текущего типа (чаще всего, в компоненте Поле ввода с подбором значенияиз типа данных ANY) в целочисленный тип данных.

+

Она относится к той группе функций, чья функциональность применяетсяи может быть полезной не сразу после добавленияв исходную компоненту, а только при последующем использовании в компоненте “Обработка событий”, когда у исходной компоненты появляется нескольконовых доступных методов при конструировании алгоритма обработки событий на web-странице. Например, для такого паттерна обработки: ‘ЕСЛИ в компоненте Поле ввода с подбором значения выбрано (изменилось) значение, ТО в компоненту числовое поле вывести идентификатор(первичный ключ) этого значения’

+

+

Рис.1 Активация функции на компоненте Поле ввода с подбором значения

+

+

Рис.2 Числовое поле, в которое будем записывать идентификатор значения из компонента Поле ввода с подбором значения

+

+

Рис. 3 Пример алгоритма заполнения числового поля идентификатором значения, выбранного в поле с Постановщиком задачи, при условии расширения функциональности исходной компоненты Поле ввода с подбором значения функцией Сконвертировать значение в целочисленный тип; (появился новый метод Сконвертировать в число; у исходной компоненты)

+

+

Рис.4 Пример невозможности построения алгоритма из-за отсутствия необходимого метода Сконвертировать в число, вследствие удаления функции Сконвертировать значение в целочисленный тип из исходной компоненты Поле ввода с подбором значения Постановщик задачи (пропал метод Сконвертировать в число у исходной компоненты)

+

После запуска web-приложения (in runtime mode) выбираем в компоненте Список с поиском одно из значений (например, постановщика задачи с фамилией Дякин), после этого значение идентификатора (первичный ключ сотрудника по фамилии Дякин в справочнике) переносится в поле"Идентификатор постановщика", а в консоли браузера можно наблюдать сообщение о срабатывании компоненты Обработка событий, которое показывает выполненное функцией действие.

+

+

Рис 5.Выбираем Постановщика задачи

+

+

Рис.6 Функция заполняет числовое поле идентификатором

+

Сохранить значение в переменную процесса

+

Сохранить значение в переменную процесса любого типа

+

Методические рекомендации по применению

+

Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

+ +

Часто задаваемые вопросы

+ + + + + + + + + + + + + + + + + + +
Вопрос Ответ
В каком случае используется числовое поле, а в каком текстовое? Использование того или иного компонента зависит от типа поля в базе данных, в которую предполагается сохранение данных. Например, если поле в базе данных текстовое (text, char и т.п.), то используется компонента - текстовое поле.
Можно ли в числовое поле вводить отрицательные числа? Да, можно.
Можно ли в числовое поле вводить нецелые числа? Да, например, 3,25.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ColumnNavigationRenderer.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ColumnNavigationRenderer.html new file mode 100644 index 0000000..c8349c3 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ColumnNavigationRenderer.html @@ -0,0 +1,70 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
+
+ + + +
+
+

Скрипт для настройки переходов по ячейке в новых таблицах GridV2. Накидывается на колонку GridV2Column.

+

Правила настройки:

+
    + +
  1. + +

    В отличие от NavigateOnGridCellOrRow, в данном скрипте не нужно проставлять индексы колонок:

    +
      + +
    • Если необходимо использовать значение из данной колонки, а не идентификатор (isPk == false), то свойство useSelfValue выставляем в true.
    • +
    • Если нужно взять значение из другой, то накидываем соответствующую колонку в поле valueColumn.
    • +
    +
  2. +
  3. + +

    Все остальные свойства настраиваются по аналогии со свойствами в NavigateOnGridCellOrRow.

    +
  4. +

+

Примеры заполнения:

+

+

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/CustomSqlLoadDao-ミク-CustomSqlFormDao.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/CustomSqlLoadDao-ミク-CustomSqlFormDao.html new file mode 100644 index 0000000..ee03936 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/CustomSqlLoadDao-ミク-CustomSqlFormDao.html @@ -0,0 +1,53 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
+
+ + + +
+
+

Расположение в студии: database\dao\CustomSqlLoadDao.java, dao\container\CustomSqlFormDao.java

+

Описание: скрипты добавляют возможность задания оптимизированного запроса в виде текста. Статичные параметры должны быть прописаны в тексте запроса, а динамические в тексте запроса должны быть определены знаком ‘?’ и заданы в переменных процесса (parameterVariables).

+

CustomSqlLoadDao необходим для загрузки данных таблицы и загрузки данных по умолчанию, а CustomSqlFormDao для загрузки данных формы.

+

CustomSqlLoadDao необходимо добавить вместо DefaultLoadDao, а CustomSqlFormDao необходимо добавить вместо FormDao.

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/GridServiceWithAggregationColumnsImpl-ミーミウムミオミウミームミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/GridServiceWithAggregationColumnsImpl-ミーミウムミオミウミームミクム.html new file mode 100644 index 0000000..6909631 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/GridServiceWithAggregationColumnsImpl-ミーミウムミオミウミームミクム.html @@ -0,0 +1,52 @@ + + + + + + + + Web-BPM Docs – ミ湲ミクミシミオミスミオミスミクミオ ミーミウムミオミウミクムムτ紗禍クム ムムσスミコムミクミケ + + + + + + +
+
+ + + +
+
+

Применение агрегирующих функций

+

Для того чтобы применить агрегирующую функцию на колонку, необходимо во вкладке “Таблица. Подгрузка данных” выбрать скрипт GridServiceWithAggregationColumnsImpl и в нужной колонке выбрать агрегирующую функцию. В таком случае к запросу будет применен group by без агрегирующихся колонок.

+

! Примечание: если среди агрегирующихся колонок есть та, которая принадлежит главной сущности, то вместо id главной сущности каждой строке будет присвоен фиктивный идентификатор, соответсвующий его порядковому номеру в результирующей таблице.

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/GridV2.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/GridV2.html new file mode 100644 index 0000000..26851cc --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/GridV2.html @@ -0,0 +1,264 @@ + + + + + + + + Web-BPM Docs – GridV2 + + + + + + +
+
+ + + +
+
+

GridV2

+

Назначение

+

GridV2 - это компонента, которая используется для отображения информации из базы данных в табличном виде с возможностью сортировки записей в нужном порядке.

+

Свойства

+

Компонента имеет набор общих свойств.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Зависит от позволяет указать объект (родителя), по идентификатору которого будут отображаться сведения в текущей Таблице; задаётся в случае необходимости связать Таблицу с другой компонентой, например, Выпадающий список или Таблицей
multiselectable Выбор более 1 строки Да/Нет. По умолчанию ???
checkboxColumn ТУДУ: нельзя менять ширину колонки. Отобразить колонку с флажками для выбора значений. Свойство активно, если задано multiselectable = true Да/Нет
checkboxHeader Добавить выбор/снятие выбора для всех элементов. Свойство активно, если задано checkboxColumn == true Да/Нет
pinnedBottomRowLabel ТУДУ Подпись, которая видна, только если задать checkboxColumn=true ?!!!
rowClickSelectionType Выбор действия по нажатию левой кнопки мыши : SUPPRESS_SELECT_CLICK - запрет выбора строк, MULTI_SELECT_CLICK - выбор нескольких строк, SINGLE_SELECT_CLICK - выбор 1 строки. По умолчанию - SINGLE_SELECT_CLICK.
showRowNumber ТУДУ: нельзя менять ширину колонки. Отобразить колонку с порядковым номером строки Да/Нет. По умолчанию - нет
floatingFilter Добавить компоненты фильтрации в шапке Да/Нет. По умолчанию - нет
loadOnInit Загружать данные при инициализации Да/Нет. По умолчанию - да
pagination Показать элементы для переключения между страницами Да/Нет. По умолчанию - нет
fetchSize
rowModelType Тип загрузки данных INFINITE_LOAD - постраничная загрузка данных, CLIENT_SIDE - загрузка всех данных. По умолчанию - CLIENT_SIDE
+

Расширенные свойства

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
headerHeight высота заголовка
rowHeight высота строки
autoStretchColumns ТУДУ: AutoSizeColumn? Растянуть колонки по содержимому Да/нет
loadingOverlayType способ отображения процесса загрузки данных TEXT_OVERLAY - визуализация внутри грида, PROGRESS_BAR - блокирующий прогресс бар на странице
loadingOverlayMessage Сообщение при загрузке данных. Свойство видно если задано loadingOverlayType=TEXT_OVERLAY По умолчанию “Загрузка данных, пожалуйста, подождите.”
noRowsOverlayMessage Сообщение при отсутствии данных. Свойство видно если задано loadingOverlayType=TEXT_OVERLAY По умолчанию “Данные отсутствуют”
theme Визуализация таблицы (темы) BOOTSTRAP, BALHAM, BALHAM_DARK, BLUE, DARK, MATERIAL, FRESH
allowContextMenuWithControlKey Если нет, то при нажатии Ctrl и правой кнопки будет отображение контекстное меню браузера. Иначе всегда контекстное меню таблицы. Да/Нет.
saveColumnState Сохранять ли состояние колонок грида в локальный кэш браузера
gridConfigurationRowHeight Высота строки в диалоге конфигурации колонок грида
+

GridV2Column

+

Назначение

+

Для настройки колонок в GridV2 добавлена компонента GridV2Column, с помощью которой на клиентской части можно настраивать отображение и экспорт данных в колонке.

+

Свойства

+ + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Value Formatter Форматирование исходных данных для корректного отображения. При задании серверного и клиентского форматера возможно непредвиденное поведение. Форматирование будет применяться и на строку Итого. Принимает один из возможных форматеров (см. раздел Value Formatter ниже). По умолчанию выбран DefaultValueFormatter
File Export Formatter Форматирование исходных данных для корректного экспорта. Принимает один из возможных форматтеров (см. раздел Export Formatter ниже).
Renderer Позволяет изменить внешний вид GridV2Column (напр. цвет текста). Принимает один из возможных GridCellValueRenderer скриптов.
+

Value Formatter

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование форматера Назначение форматера Настраиваемые значения
DateFormatter Преобразует дату из стандартного (ISO) формата в формат DD.MM.YYYY -
DateTimeFormatter Преобразует дату из стандартного (ISO) формата в формат DD.MM.YYYY hh.mm.ss -
DefaultValueFormatter Предназначен для замены null-значений на настраиваемое noDataValue - значение, на которое будет заменяться null, по умолчанию настроено значение пустой строки
ReplaceValueFormatter Заменяет значения, указанные в Regex, на значения, указанные в New Value No Data Value - значение, на которое будет заменяться null, по умолчанию настроено значение пустой строки
Value To Replace - список пар значений Regex, New Value;
Regex - регулярное выражение, которое используется при поиске;
New Value - значение, на которое нужно заменить.
+

File Export Formatter

+ + + + + + + + + + + + + + + + + + +
Наименование форматера Назначение форматера Настраиваемые значения
DateExportFormatter Преобразует дату из стандартного (ISO) формата в формат DD.MM.YYYY -
DateTimeExportFormatter Преобразует дату из стандартного (ISO) формата в формат DD.MM.YYYY hh.mm.ss -
+

Renderer

+ + + + + + + + + + + + + + +
Наименование скрипта Назначение форматера Настраиваемые значения
ChangeColorOnColumnValueColumnCellRenderer Позволяет изменять цвет текущего GridV2Column на основе значения из любого GridV2Column на странице Grid Column - позволяет указать GridV2Column, который будет использоваться для сравнения значений. Color For Value - позволяет выбрать цвет для каждого значения, которому равен выбранный GridV2Column.
+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/MaskCellValueFormatter.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/MaskCellValueFormatter.html new file mode 100644 index 0000000..9f1e274 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/MaskCellValueFormatter.html @@ -0,0 +1,51 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
+
+ + + +
+
+

Описание: Форматер для колонок GridV2, задает маску для отображения колонки.

+

Использование: Выбрать скрипт MaskCellValueFormatter.ts на объект GridV2Column в valueFormatter. Поле mask - обязательное, для задачи маски. Поле regex - регулярное/не регулярное выражение. Поле casing - отвечает за регистр, может принимать значения null, “upper”, “lower” or “title”.

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/NavigateOnGridCellOrRow.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/NavigateOnGridCellOrRow.html new file mode 100644 index 0000000..233b803 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/NavigateOnGridCellOrRow.html @@ -0,0 +1,98 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
+
+ + + +
+
+

Скрипт для настройки переходов по строке (одинарный, двойной клик) и по ячейке: по процессу, по внешней/внутренней ссылке, к диалогу. Накидывается на таблицу.

+

Правила настройки:

+
    + +
  1. + +

    Для начала нужно выбрать направление перехода redirectionType: BPMN (по процессу), LINK (по ссылке) или DIALOG (к диалогу).

    +

    > Большинство остальных свойств настраиваются по аналогии со свойствами в старых скриптах > (SelectAndNavigateCellGridConfigurator, NavigateOnClickGridRow, NavigateOnDoubleClickGridRow).

    +
  2. +
  3. + +

    Вместо identityColumnIndex используется valueColumnIndex - индекс колонки, из которой берем значения (необязательно идентификатор).

    +
  4. +
  5. + +

    Для таблиц типа GridV2 добавлено свойство columnGroupIndex:

    +
      + +
    • Нумерация групп начинается с 1 с учетом индексов колонок, НЕ входящих в группы.
    • +
    • Если колонка принадлежит группе, то необходимо указать индекс columnGroupIndex. Индекс самой колонки начинается с 1 внутри группы.
    • +
    • Если колонка не принадлежит ни одной из групп, то свойство columnGroupIndex оставляем незаполненным (либо 0).
    • +
    +
  6. +
  7. + +

    Сегмент ссылки передается как resources:

    +
      + +
    • Образец внешней ссылки: https://www.wildberries.ru/catalog/${sku}/detail.aspx
    • +
    • Образец внутренней ссылки: products/ru.cg.webbpm.packages.base:resources:jar:3.185.0
    • +
    +
  8. +
  9. + +

    Для ссылок (baseRoute) добавлено свойство isAbsolute:

    +
      + +
    • Если ссылка внутренняя (isAbsolute == false), то для нее можно задать свойство openInNewTab. При true ссылка откроется в новой вкладке.
    • +
    • Если ссылка внешняя, она всегда будет открываться в новой вкладке.
    • +
    +
  10. +
  11. + +

    При настройке перехода к диалогу на свойство dialog необходимо накинуть соответствующий объект диалога.

    +
  12. +

+

Для того чтобы настроить переходы без индексов, необходимо использовать скрипты RowNavigationHandler и ColumnNavigationRenderer. Работают только для GridV2.


+

Пример заполнения:

+

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/RowNavigationHandler.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/RowNavigationHandler.html new file mode 100644 index 0000000..48db3da --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/RowNavigationHandler.html @@ -0,0 +1,69 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
+
+ + + +
+
+

Скрипт для настройки переходов по строке в новых таблицах GridV2. Накидывается на таблицу GridV2.

+

Правила настройки:

+
    + +
  1. + +

    В отличие от NavigateOnGridCellOrRow, в данном скрипте не нужно проставлять индексы колонок:

    +
      + +
    • Если в навигации не используем идентификатор (isPk == false), то колонку, из которой берем значения, накидываем в поле valueColumn.
    • +
    +
  2. +
  3. + +

    Все остальные свойства настраиваются по аналогии со свойствами в NavigateOnGridCellOrRow.

    +
  4. +

+

Примеры заполнения:

+

+

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/SelectAndNavigateCellGridConfigurator.ts-(ミ墟セミサミセミスミコミク-ム-ミスミーミイミクミウミームミクミオミケ).html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/SelectAndNavigateCellGridConfigurator.ts-(ミ墟セミサミセミスミコミク-ム-ミスミーミイミクミウミームミクミオミケ).html new file mode 100644 index 0000000..2e28bfb --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/SelectAndNavigateCellGridConfigurator.ts-(ミ墟セミサミセミスミコミク-ム-ミスミーミイミクミウミームミクミオミケ).html @@ -0,0 +1,58 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
+
+ + + +
+
+

Скрипт предназанчен для отображения колонки(колонок) грида как ссылки для перехода на другую страницу. Скрипт доступен для добавления в любой грид.

+

Параметры:

+

variable - переменная процесса, в которую будет сохранено значение(идентификатор) из ячейки-ссылки, на которой было нажатие.

+

navigableColumns - массив элементов вида:

+

renderColumnIndex - индекс колонки, которую нужно отобразить как ссылку, нумерация начинается с 1.

+

isPk - сохранять в переменную ‘_variable’_ значение первичного ключа строки, в которой была нажата ячейка-ссылка. Если isPk=true, то в переменную ‘variable’ сохраняется первичный ключ строки, иначе надо указать индекс колонки(identityColumnIndex), из которой брать значение

+

identityColumnIndex - поле видно, если isPk = false, указывает на индекс колонки, из которой будет взято значение для сохранения в переменную
+‘variable’ . Нумерация начинается с 1

+

navigateTo - значение которое будет передано в переменную для навигации.

+
+
+
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/index.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/index.html new file mode 100644 index 0000000..36d30ab --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/index.html @@ -0,0 +1,72 @@ + + + + + + + + Web-BPM Docs – ミ「ミーミアミサミクムム + + + + + + + +
+
+
+
+

© 2023 +Micord +

+
+

Built by Maven +

+
+
+ + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー.html new file mode 100644 index 0000000..1071ef2 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー.html @@ -0,0 +1,182 @@ + + + + + + + + Web-BPM Docs – ミ飯ミオミイミセミイミクミエミスミーム ムひーミアミサミクムミー + + + + + + +
+
+ + + +
+
+

Древовидная таблица

+

Назначение

+

Древовидная таблица - это компонента, которая используется для отображения иерархических данных из таблицы базы данных в виде дерева (каждую запись, можно назвать узлом или ветвью, которая может иметь один или несколько подразделов, то есть дочерних записей). При работе с элементом на странице можно развернуть каждую запись таблицы для просмотра подпунктов (если такие существуют), а также свернуть, чтобы их скрыть. Источником подгрузки данных в компоненту является иерархическая таблица базы данных (определенная в качестве Главной сущности в Редакторе структуры сущностей элемента), представляющая собой набор элементов данных (записей), связанных между собой иерархическими связями. Иерархические связи - это связи, в которых один из элементов данных является родителем другого элемента, то есть в таблице присутствует внешний ключ (например, parent_id), ссылающийся на первичный ключ этой же таблицы базы данных.

+

Компонента Древовидная таблица находится в разделе Компоненты - Таблицы - Древовидная таблица (рис.1)

+

Примером использования компоненты Древовидная таблица можно привести задачу, когда на странице необходимо отобразить справочник ОКТМО (Общероссийский классификатор территорий муниципальных образований), где каждый муниципальный район будет отображаться вместе со входящими в него сельскими и городскими поселениями, в виде дерева. В данном случае, Алексеевский муниципальный район будет считаться родителем для входящих в него сельских поселений, например, Лебяжинское, Майнское и др., которые считаются по отношению к нему дочерними записями. При этом на пользовательской странице родительская запись в таблице будет отображаться вместе с подсчитанным числом относящихся к нему дочерних записей, выведенным в скобках после значения, отображаемого в первом столбце таблицы, например, 92606000 (20), где 92606000 - это код муниципального района, а (20) - количество поселений входящих в данный муниципальный район.

+

+

рис.1 Компонента Древовидная таблица

+

+

рис.2 Пример использования компоненты Древовидная таблица на странице

+

Свойства

+

Компонента имеет набор общих свойств.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Наименование свойства Назначение свойства Принимаемые значения
Показывать номер строки позволяет задать автоматическую нумерацию строк +
    +
  • значение не определено - по умолчанию
  • +
  • Активно - отображать нумерацию строк
  • +
  • Не активно - не отображать нумерацию строк
Зависит от позволяет указать объект (родителя), по идентификатору которого будут отображаться сведения в текущей Таблице; задаётся в случае необходимости связать Таблицу с другой компонентой, например, Выпадающий список или Таблицей
Root id equal parent id В случае, если корневой элемент таблицы имеет id равный родительскому id, свойство позволяет переопределить построение иерархии +
  • Значение не определено/Не активно - по умолчанию.
  • +
  • Активно - корневой элемент ссылается сам на себя при построении таблицы
  • Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
      +
    • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
    • +
    • MULTI_SELECT_CLICK– при каждом клике на строку не сбрасываются предыдущие выбранные строки. Например, если вы кликнули на одну строку, а затем на другую, то первая строка останется выбранной. В этом случае клик по уже выбранной строке снимает выделение (deselect). Эта настройка полезна для touch-устройств, у которых нет клавиш Ctrl или Shift.
    • +
    • SUPPRESS_SELECT_CLICK– сроки не будут выбираться при клике. Например, если вы хотите выбирать строки только при нажатии на чекбокс.
    +

    Свойство компоненты: Таблица. Задействовать режим выбора нескольких строк

    + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Допустимо выбрать несколько строк позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
      +
    • возможность выбора сразу нескольких или одной строки
    • +
    • возможность выбора одной строки - значение по умолчанию
    Колонка “Флагов” позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой Таблица +
      +
    • значение не определено - значение по умолчанию
    • +
    • Активно - отображать колонку флагов
    • +
    • Не активно - не отображать колонку флагов
    +

    Свойство компоненты: Древовидная таблица. Подгрузка данных

    +

    +

    Позволяет задать Граф сущностей для подгрузки данных в Таблицу и Колонку, указывающую на родительский элемент для построения древовидной структуры. Является обязательным к заполнению и настройке.

    +

    Сущность - это объект с которым работают в графе. В качестве объекта могут быть: таблицы и представления (вью) из базы данных. Понятие сущности не равно понятию таблицы, поскольку одна таблица может быть добавлена в граф несколько раз.

    +
      + +
    • Колонка, указывающая на родительский элемент - это колонка иерархической таблицы базы данных, включенной в качестве Главной сущности
    • +
    • в структуру сущности элемента Древовидная таблица, которая является внешним ключом (например,parent_id), ссылающимся на первичный ключ
    • +
    • этой же таблицы базы данных.
    • +
    +

    с описанием настройки Графа сущностей для Таблицы можно ознакомиться в разделе: Настройка Графа сущностей

    +

    Свойство компоненты: Таблица. Настроить колонки таблицы

    +

    +

    позволяет настроить отображаемые колонки в Таблице с сортировкой данных по конкретному порядку

    +

    с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы

    +

    Функции

    +

    В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

    +

    Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

    +

    Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

    +

    Определить права текущего пользователя

    +

    Определить роли текущего пользователя

    +

    Очистить форматирование колонок таблицы

    +

    Преобразовать в колонки со значениями-переходами

    +

    Методические рекомендации по применению

    +

    Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

    + +

    Часто задаваемые вопросы

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Вопрос Ответ
    Как задать ширину Таблицы? Для того, чтобы настроить ширину или высоту таблицы необходимо в Основных настройках - Расширенные настройки - Стилизадать необходимые значения для настраиваемых параметров, например, Ширина 500px.
    Как задать ширину колонок в процентах? Для задания ширины колонок в процентах необходимо выставить нужный процент в поле width и поставить галочку “Автоматически выравнивать по ширине” (autoStretchColumns)
    Можно ли поменять порядок отображаемых колонок в Таблице? Для того, чтобы изменить порядок колонок в Таблице необходимо в свойстве Настроить колонки таблицы - Колонкинажать правой кнопкой мыши на «Элемент»ивыбрать предложенные варианты: Переместить наверх - Переместить вниз - Удалить элемент
    Как настроить возможность многострочного выбора записей в Таблице? Для того, чтобы настроить многострочный выбор (одновременный выбор нескольких) записей в Таблице необходимо в разделеТаблица. Задействовать режим выбора нескольких строкустановить свойство Допустимо выбрать несколько строк в значение(истина).
    Можно ли поменять порядок отображаемых колонок в Таблице? Для того, чтобы изменить порядок колонок в Таблице необходимо в свойстве Настроить колонки таблицы - Колонкинажать правой кнопкой мыши на «Элемент»ивыбрать предложенные варианты: Переместить наверх - Переместить вниз - Удалить элемент
    Можно ли добавлять в Граф сущностейдополнительные таблицы, ссылающиеся на главную иерархическую таблицу, и отображать значения их колонок в Древовидной таблице? Да, можно. Добавление к Главной сущности компоненты (иерархической таблице) связанных с ней таблиц базы данных, никак не изменяет логики работы и отображения данных в Древовидной таблице.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ「ミーミアミサミクムムダミスミー_ムムびミーミスミクムムダム\ムミクミサム袴びミームミクミオミケ_ミキミーミソミクムミオミケ_ミソミセ_ムτミサミセミイミクム酸.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ「ミーミアミサミクムムダミスミー_ムムびミーミスミクムムダム\ムミクミサム袴びミームミクミオミケ_ミキミーミソミクムミオミケ_ミソミセ_ムτミサミセミイミクム酸.html new file mode 100644 index 0000000..5402594 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミ「ミーミアミサミクムムダミスミー_ムムびミーミスミクムムダム\ムミクミサム袴びミームミクミオミケ_ミキミーミソミクムミオミケ_ミソミセ_ムτミサミセミイミクム酸.html @@ -0,0 +1,104 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミ「ミーミアミサミクムム ミスミー ムムびミーミスミクムム ム ムミクミサム袴びミームミクミオミケ ミキミーミソミクムミオミケ ミソミセ ムτミサミセミイミクム? + + + + + + +
    +
    + + + +
    +
    +

    Как добавить Таблицу на страницу с фильтрацией записей по условию?

    +

    Постановка задачи: необходимо реализовать на пользовательской странице Реестра заявлений элемент Таблица, в которой будет отображаться информация о поступивших заявлениях на получение лицензии. Перечень заявлений доступных для просмотра пользователю (сотруднику) и отображаемых в Таблице должен определяться в зависимости от того, к какому территориальному органу относится сотрудник, то есть сотрудник Чистопольского территориального органа должен видеть заявления, зарегистрированные только в этом территориальном органе, заявления из других объектов не должны отображаться ему в Таблице.

    +

    Таблица с заявлениями должна иметь следующие настройки:

    +
      + +
    • в Граф сущностей в качестве Главной сущности должна быть определена таблица заявлений (application), которая будет связана с другими таблицами базы данных, где содержится дополнительная информация для вывода на страницу как тип заявления, данные по организации-заявителю, территориальный орган
    • +
    • в структуре Графа сущностей должно быть задано условие (фильтр), которое будет регулировать отображаемые записи в Таблице в зависимости от территориального органа сотрудника, просматривающего страницу. Ограничение можно задать приравняв значение из таблицы базы данных Территориальный орган (предварительно включенной в Граф сущностей) к переменной процесса div_code, значение которой определяется в зависимости от учетной записи пользователя и заполняется перед открытием страницы Реестр заявлений.
    • +
    • в структуру Таблицы должно быть включено шесть колонок (источником подгрузки значений из базы данных будут служить заданные в Графе сущностей таблицы): +
        + +
      • Номер заявления
      • +
      • Дата заявления
      • +
      • Наименование организации
      • +
      • Цель обращения
      • +
      • Инн
      • +
      • Территориальныйорган
      • +
      +
    • +
    • сортировка записей в Таблице должна осуществляться по дате заявления (по убыванию)
    • +
    +

    Решение задачи:

    +

    Предполагается, что страница Реестра заявлений уже создана бизнес-аналитиком и в логике бизнес-процесса определена необходимая переменная процесса div_code, значение которое заполняется перед открытием страницы пользователем. Для добавления на страницу и настройки Таблицы необходимо сделать следующее:

    +
      + +
    • добавить внутрь страницы компоненту Таблица (рис.1)
    • +
    • в настройках добавленной Таблицы перейти к разделу Таблица. Подгрузка данных - Источник данных - Граф сущностей и настроить его в соответствии с условием задачи. Во вкладке Структура открывшегося Редактора структуры сущностей необходимо задать условие (фильтр) по территориальному органу сотрудника-пользователя (рис.2)
    • +
    +

    + +
    +
    рис.1 Добавление элемента Таблица на страницу
    +рис.2 Настройка Графа сущностей Таблицы и условия фильтрации записей
    +
    + + +

    +

    рис.5 Настройка колонок Таблицы

    +

    +

    рис.6 Настройка колонок Таблицы

    +

    +

    рис.7 Настройка сортировки в Таблице по дате заявления

    +

    Результат выполнения задачи:

    +

    После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и записи в Таблице с заявлениями отображаются согласно заданному условию (фильтру) в структуре сущностей компоненты (рис.8). При удалении данного условия из логики настройки Таблицы, подгружаются данные по все территориальным органам вне зависимости от того к какому отделу относится сотрудник-пользователь, просматривающий страницу (рис.9).

    +

    рис.8 Визуальное отображение выполнения условий задачи

    +

    +

    рис.9 Отображение данных в Таблице без применения условия по территориальному органу

    +

    image2019-3-7\_15-22-36.png Screenshot\_9.png Screenshot\_9.png
    +image2019-3-7\_15-26-43.png Screenshot\_6.png
    +image2019-3-7\_15-59-25.png Screenshot\_7.png
    +Screenshot\_8.png
    +Screenshot\_3.png
    +Screenshot\_4.png

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミスミー_ムムびミーミスミクムムダミ「ミーミアミサミクムムダム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミスミー_ムムびミーミスミクムムダミ「ミーミアミサミクムムダム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ_.html new file mode 100644 index 0000000..e48991f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ミスミー_ムムびミーミスミクムムダミ「ミーミアミサミクムムダム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ_.html @@ -0,0 +1,102 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ミスミー ムムびミーミスミクムム ミ「ミーミアミサミクムム ム ミソミセムムびミーミスミクムミスム巾シ ミセムひセミアムミーミカミオミスミクミオミシ? + + + + + + +
    +
    + + + +
    +
    +

    Как добавить на страницу Таблицу с постраничным отображением?

    +

    Постановка задачи: необходимо реализовать на пользовательской странице Реестра сведений о розничных ценах по товарамэлемент Таблица с постраничным отображением, в которой будет отображаться информация о предоставленных и зарегистрированных сведениях о ценах на продовольственные товары по территориальным органам и входящих в него районах.

    +

    Таблица со сведениями должна иметь следующие настройки:

    +
      + +
    • в Граф сущностей в качестве Главной сущности должна быть определена таблица сведений (price_monitor_report), которая будет связана с другими таблицами базы данных, где содержитсядополнительная информация для вывода на страницу как территориальный орган, район, статус обработки, тип сведения
    • +
    • в структуру Таблицы должно быть включено семь колонок (источником подгрузки значений из базы данных будут служить заданные в Графе сущностей таблицы): +
        + +
      • Территориальный орган
      • +
      • Район
      • +
      • Наименование предоставляемых сведений
      • +
      • Период отчетности
      • +
      • Торговый объект
      • +
      • Статус
      • +
      • Комментарий
      • +
      +
    • +
    • сортировка записей в Таблице должна осуществляться по периоду отчетности (по убыванию)
    • +
    +

    Решение задачи:

    +

    Предполагается, что страница Реестра сведений о розничных ценах по товарам, где необходимо разместить Таблицу, уже создана бизнес-аналитиком и включена в логику бизнес-процесса. Для добавления на страницу и настройки Таблицы с постраничным отображением необходимо сделать следующее:

    +
      + +
    • добавить внутрь страницы компоненту Таблица с постраничным отображением (рис.1)
    • +
    • в настройках добавленной Таблицы с постраничным отображением перейти к разделу Таблица с постраничным отображением. Подгрузка данных - Источник данных Граф сущностей и настроить его в соответствии с условием задачи. В качестве Главной сущности (выделена желтой рамкой) в Редакторе структуры сущности задана таблица базы данныхprice_monitor_report (рис.2)
    • +
    +

    + +
    +
    рис.1 Добавление элемента Таблица с постраничным отображением на страницу
    +рис.2 Настройка  Графа сущностей Таблицы с постраничным отображением
    +
    + + +

    + +
    +
    рис.3 Настройка колонок Таблицы         
    +рис.4 Настройка колонок Таблицы   
    +рис.5 Настройка колонок и сортировки в Таблице  
    +
    + +

    Результат выполнения задачи:

    +

    После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены и в Таблице с постраничным отображением содержится вся необходимая информация (рис.6).

    +

    + +
    +
    рис.6 Визуальное отображение выполнения условий задачи
    +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミイム紹キミーミスミスム巾オ_ミ「ミーミアミサミクムム祇ミスミー_ムムびミーミスミクムムダ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミイム紹キミーミスミスム巾オ_ミ「ミーミアミサミクムム祇ミスミー_ムムびミーミスミクムムダ.html new file mode 100644 index 0000000..f3b97ba --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミエミセミアミーミイミクムび契ムミイム紹キミーミスミスム巾オ_ミ「ミーミアミサミクムム祇ミスミー_ムムびミーミスミクムムダ.html @@ -0,0 +1,89 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミエミセミアミーミイミクムび ムミイム紹キミーミスミスム巾オ ミ「ミーミアミサミクムム ミスミー ムムびミーミスミクムム? + + + + + + +
    +
    + + + +
    +
    +

    Как добавить связанные Таблицы на страницу?

    +

    Постановка задачи: необходимо реализовать на пользовательской странице Реестра заявлений, где имеется основная Таблица с информацией о заявлениях на оформление лицензии, дополнительную, зависящую от основной Таблицу объектов из заявления, где будет отображаться информация об объектах (наименование объекта, КПП, площадь), включенных в заявление. Таблица с информацией об объектах должна иметь следующие настройки:

    +
      + +
    • в Граф сущностей должна быть включена в качестве Главной сущности таблица application_object, в которой имеется ссылка на идентификатор заявления(из таблицы application) и на идентификатор объекта(из таблицы object). Также в Граф сущностей должна быть включена таблица object, из которой будет подгружаться информация об объектах, включенных в заявление
    • +
    • в структуру Таблицы должны быть включены три колонки (источником подгрузки значений из базы данных будут служить заданные вГрафе сущностейтаблицы): +
        + +
      • Наименование объекта
      • +
      • КПП объекта
      • +
      • Площадь
      • +
      +
    • +
    +

    Решение задачи:

    +

    Предполагается, что страница Реестра заявлений уже создана бизнес-аналитиком, где имеется настроенная основная Таблица заявлений, в Граф сущностей которой добавлены все необходимые объекты базы данных (таблицы и представления) и в качестве Главной сущности задана таблица базы данных application, так как будет запоминаться идентификатор выбранной из неё записи(рис.1). Для добавления на страницу и настройки дополнительной, зависящей от главной, Таблицы необходимо сделать следующее:

    +
      + +
    • добавить внутрь Формы компоненту Таблица и в параметре “Зависит от” указать основную Таблицу с заявлениями (рис.2)
    • +
    +

    + +
    +
    рис.1 Граф сущностей главной Таблицы заявлений                         
    +рис.2 Добавление связи между Таблицами
    +
    + +
      + +
    • в настройках добавленной Таблицы перейти к разделу Таблица. Подгрузка данных - Источник данных - Граф сущностей и настроить его в соответствии с условием задачи (рис.3). Там же в свойстве “Колонка для режима Зависит от” необходимо указать колонку связи с основной таблицей, и данный идентификатор будет служить в качествепараметра, по которому будет подгружаться информация в зависимую Таблицу с объектами (рис.4)
    • +
    • Настройка_колонок_Таблицы в соответствии с условием задачи (рис.5) +

      рис.3 Настройка Графа сущностей Таблицы с объекта из заявления рис.4 Настройка колонки связи между Таблицами
      +рис.5 Настройка колонок Таблицы

    • +
    +

    Результат выполнения задачи:

    +

    После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что при выборе записи в главной Таблице, где находится информация о поступивших заявлениях, в зависимой Таблице, по идентификатору заявления из главной Таблицы, отображается информация об объектах, включенных в данное заявление (рис.6).

    + +
    +
    рис.6 Визуальное отображение выполнения условий задачи
    +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー_ミスミー_ミソミセミサム糊キミセミイミームひオミサム袴ミコミセミケ_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー_ミスミー_ミソミセミサム糊キミセミイミームひオミサム袴ミコミセミケ_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..b791b3b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ飯ミオミイミセミイミクミエミスミーム柔ムひーミアミサミクムミー_ミスミー_ミソミセミサム糊キミセミイミームひオミサム袴ミコミセミケ_ムムびミーミスミクムミオ_.html @@ -0,0 +1,158 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ飯ミオミイミセミイミクミエミスミーム ムひーミアミサミクムミー ミスミー ミソミセミサム糊キミセミイミームひオミサム袴ミコミセミケ ムムびミーミスミクムミオ? + + + + + + +
    +
    + + + +
    +
    +

    Как задействовать компоненту Древовидная таблица на пользовательской странице?

    +

    Постановка задачи: на пользовательской странице Справочник видов продукции необходимо реализовать возможность отображения данных (наименований видов продукции) с использованием древовидной структуры в табличном виде, где в наборе элементов таблицы (записей) есть родительская запись Группа продукции и относящиеся к ней дочерние записи - Виды продукции. Помимо отображения данных в Древовидной таблице необходимо реализовать возможность добавления новой связанной дочерней записи к уже имеющейся ветви (записи) в таблице или родительскую запись, которая в последствии будет служить ветвью для добавления дочерних записей. При выборе записи в таблице по нажатию на кнопку Добавить (компонента Кнопка выбора) осуществляется переход по бизнес-процессу на страницу Добавления вида продукции, где помимо уже имеющихся полей на настроенной Форме для сохранения значений в таблицу базу данных - Код, Наименование продукции, Описание, Актуальность, необходимо добавить поле Родитель(компонентаПоле ввода с подбором значения), значение которого будет заполняться по умолчанию из переменной процесса значением (идентификатором) записи - parent_id, выбранной ранее с помощью кнопки Добавить в таблице Справочников видов продукции.

    +

    Последовательность действий пользователя, в данном случае, будет заключаться в следующем: в таблице Справочник видов продукции была выбрана родительская запись, например, Вина столовые фруктовые, которая является Группой продукции и уже включает в себя Виды продукции. К выбранной (строка окрашена в отличный от других строк цвет) Группе продукции (Вина столовые фруктовые) пользователю необходимо добавить новый вид продукции, для этого он нажимает на кнопку Добавить, после чего открывается страница Добавления вида продукции, где поле Родитель по умолчанию заполнилось значением - Вина столовые фруктовые и после сохранения к данной Группе продукции будет добавлена новая дочерняя запись Вид продукции, например, Сухие фруктовые вина.

    +

    В случае, когда пользователю будет необходимо добавить не дочернюю запись к уже существующей родительской записи, а самого родителя (ветвь) Группу продукции, которая в будущем будет объединять в себе Виды продукции, по нажатию на кнопку Добавить (без выбора записи в таблице) будет также осуществляться переход на страницу Добавления вида продукции, но поле Родитель будет оставаться пустым.

    +

    Источником для подгрузки данных в настраиваемой Древовидной таблице должна быть определена в качестве Главной сущности иерархическая таблица базы данных - Виды продукции, в структуре которойприсутствует внешний ключ(parent_id), ссылающийся на первичный ключ этой же таблицы базы данных. Для более детального отображения данных на странице Справочник видов продукции, в структуру сущностей компонентыДревовидная таблицанеобходимо также включить таблицы базы данных, которые будут ссылаться по ключу на Главную сущность - Справочник ЛКВП (локальный вид кода продукции) и Справочник кодов ФСРАР (классификатор видов продукции), значениями из которых будут заполняться колонки ЛКВП и Код ФСРАР в настраиваемой таблице.

    +

    Решение задачи: предполагается, что бизнес-аналитиком уже создана страница Справочник видов продукции, где необходимо расположить элемент Древовидная таблица,также создана страницаДобавление вида продукции, где помимо уже имеющихся на Формеэлементов страницы, необходимо разместить поле Родитель, значение которого будет подгружаться из уже созданной переменной процесса-parent_id и будет равно значению идентификаторазаписи выбранной в настраиваемой Древовидной таблице с помощью компоненты Кнопка выбора - Добавить.

    +

    Для добавления на страницу компоненты Древовидная таблица, которая будет отображать Справочник видов продукции в виде дерева, необходимо сделать следующее:

    +
      + +
    • добавить на страницу элемент из раздела Компоненты - Таблицы - Древовидная таблица (рис.1)
    • +
    • в свойстве компоненты Древовидная таблица. Подгрузка данных настроить Граф сущностей, где в Редакторе структуры сущностей необходимо включить таблицы базы данных Справочник видов продукции (иерархическая таблица - Главная сущность), Справочник ЛКВП (ссылается на первичный ключ Главной сущности) и Справочник кодов ФСРАР (связан с Главной сущностью через таблицу связи), которые будут служить в качестве источника данных для подгрузки значений в настраиваемую Таблицу (рис.2)
    • +
    +

    + +
    +
    рис.1 Добавление компоненты Древовидная таблица на страницу                         
    +рис.2 Настройка Графа сущностей Древовидной таблицы
    +
    + +
      + +
    • после заполнения Графа сущностей компоненты в свойстве Древовидная таблица. Подгрузка данных необходимо в качестве Колонки, указывающей на родительский элемент указать колонку Главной сущности (иерархической таблицы базы данных Справочник видов продукции) - parent_id, которая является внешним ключом, ссылающимся на первичный ключ этой же таблицы базы данных (рис.3). Указание данной колонки и использование иерархической таблицы базы данных в качестве Главной сущности позволит выстроить древовидную структуру таблицы с ветвями (родителями) и относящимися к ним дочерними записями.
    • +
    • в параметре Таблица. Настроить колонки таблицы необходимо включить элементы, которые будут отображать значения колонок из трёх ранее добавленных в Граф сущностей таблиц базы данных -Справочник видов продукции (иерархическая таблица -Главная сущность),Справочник ЛКВП и Справочник кодов ФСРАР (рис.4)
    • +
    • на этой же странице Справочник видов продукции для того чтобы реализовать возможность добавления новой записи в таблицу с переходом на страницу Добавления вида продукции необходимо добавить элемент Кнопка выбора,в свойствах которого настраиваются следующие параметры (рис.5): +
        + +
      • в качестве Компоненты для выбора записи указываем настраиваемую Древовидную в таблицу
      • +
      • в свойстве элемента Таблица. Получить идентификатор выбранной в таблице записи и сохранить в переменную процесса в параметре Сохранить идентификатор в…указываем уже созданную переменную процесса parent_id
      • +
      • по нажатию на кнопку Добавить скрипт необходимо выбрать из открывшегося списка доступную для компоненты функцию Управление навигацией и в её настройках указать значение переменной навигации add_vid_prod, по которому будет осуществляться переход по бизнес-процессу на страницу Добавление вида продукции
      • +
      +

      рис.3 Настройка свойства Подгрузка данных
      +рис.4 Настройка колонок Таблицы
      +рис.5 Настройка Кнопки выбора записи в таблице

      +
    • +
    +

    Согласно условию задачи, в случае, когда пользователю необходимо добавить новую запись (родительскую или дочернюю) в таблицу осуществляется переход по бизнес-процессу на страницу Добавления вида продукции по нажатию на кнопку Добавить. На открывшейся странице должно быть поле Родитель, которое будет заполнено из переменной процесса значением (идентификатором) выбранной ранее записи в таблице, в случае, если происходит добавление дочерней записи к уже существующей ветви (родителю). Если переход на страницу был осуществлен без выбора записи в Таблице, то есть пользователю необходимо добавить родительскую запись, на странице Добавления вида продукции поле Родитель будет пустым.

    +

    Для того чтобы добавитьполе Родитель(компонентаПоле ввода с подбором значения)на страницу Добавления вида продукции необходимо сделать следующее:

    +
      + +
    • добавить элемент из раздела **Компоненты – Поля – Поле ввода с подбором значения (с возможностью сохранения)**внутрь компоненты Формана странице(рис.6)
    • +
    • в свойстве компоненты Поле ввода с подбором значения. Подгрузка данных настроить Граф сущностей, где в Редакторе структуры сущностей необходимо включить в качестве Главной сущности таблицу базы данных -Справочник видов продукции (рис.7)
    • +
    +

    + +
    +
    рис.6 Добавление компоненты Поле ввода с подбором значения (с возможностью сохранения)     
    +рис.7 Настройка Графа сущностей Поля ввода с подбором значения
    +
    + +
      + +
    • после заполнения Графа сущностей компоненты в свойствеПоле ввода с подбором значения. Подгрузка данныхнеобходимо дополнительно настроить два параметра (рис.8): +
        + +
      • в параметре Сортировать поуказываем колонку Название (name)таблицы базы данных Справочник видов продукции, включенной в Граф сущностей компоненты.
      • +
      • в параметреПоказывать пользователюуказываем колонку Название (name)таблицы базы данных Справочник видов продукции, включенной в Граф сущностей компоненты.
      • +
      +
    • +
    • для того, чтобы полученное значение из элемента Родитель сохранялось в базу данных, необходимо настроить свойствоПоле ввода с подбором значения. Сохранения значения, где мы указываем таблицу базы данных и колонку, в которую будет происходить сохранение значения на странице (рис.9)
    • +
    • согласно поставленной задаче, описанной выше, значение поля Родитель на странице должно подгружаться из переменнойпроцесса - parent_id, что можно настроить перейдя к свойству компоненты Заполнить значением из переменной процесса (рис.9) +

      рис.8 Настройка Подгрузки данныхПоля ввода с подбором значения рис.9 Настройки свойств сохранения и заполнения значения из переменной

    • +
    +

    Результат выполнения задачи:

    +

    После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что на страницеСправочник видов продукции есть Древовидная таблица, в которой записи отображаются в виде дерева, где видно основную ветвь (родительскую запись) - Группу продукции, и ответвляющиеся от неё дочерние записи - Виды продукции (рис.10). Для того, чтобы добавить новую запись в Таблицу (дочернюю к уже имеющейся записи) на странице размещена кнопка Добавить (рис.10). По нажатию на кнопку происходит запись идентификатора выбранной строки-родителя, к которой пользовательхочет добавить дочернюю запись, в переменную процесса и переход по бизнес-процессу на страницу Добавления вида продукции (рис.11). После открытия страницы в поле Родитель отображается значение ранее выбранное в Древовидной таблице на странице Справочник видов продукции (рис.12, рис.13). В случае, если пользователь добавляет саму ветвь (родителя), то он не выбирает запись в таблице, а сразу нажимает на кнопку Добавить, и значение поля Родитель у добавляемой записи остается пустым (рис.13).

    +

    + +
    +
    рис.10 Отображение Древовидной таблицы на странице 
    +рис.11 Выбор родительской записи в таблице для добавления дочерней записи
    +
    + +

    + +
    +
    рис.12 Отображение значения в поле Родитель   
    +рис.13 Последовательность двух вариантов действия: добавление родительской и дочерней записи
    +
    + +
    +
    +

    Attachments:

    +
    + +
    + +

    image2019-4-12_14-27-47.png (image/png)
    + image2019-4-12_14-27-55.png (image/png)
    + Screenshot_2.png (image/png)
    + Screenshot_8.png (image/png)
    + Screenshot_9.png (image/png)
    + Screenshot_9.png (image/png)
    + image2019-4-12_15-13-14.png (image/png)
    + Screenshot_10.png (image/png)
    + Screenshot_11.png (image/png)
    + image2019-4-16_15-40-30.png (image/png)
    + Screenshot_12.png (image/png)
    + Screenshot_151.png (image/png)
    + Screenshot_15.png (image/png)
    + Screenshot_15.png (image/png)
    + Screenshot_15.png (image/png)
    + image2019-4-17_10-42-16.png (image/png)
    + image2019-4-17_10-48-37.png (image/png)
    + image2019-4-17_10-50-29.png (image/png)
    + image2019-4-17_10-51-29.png (image/png)
    + image2019-4-17_10-55-32.png (image/png)
    + Запись_2019_04_17_11_02_28_197.gif (image/gif)
    + image2019-4-17_11-7-50.png (image/png)
    + image2019-4-17_11-12-45.png (image/png)

    +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ムミセムムミーミスミクムび契ミクミエミオミスムひクムミクミコミームひセム_ムミイム紹キミーミスミスミセミケ_ムひーミアミサミクムム祇ミクムミソミセミサム糊キムτ柔ムミコムム錦ひセミオ_ムミクムミサミセミイミセミオ_ミソミセミサミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ムミセムムミーミスミクムび契ミクミエミオミスムひクムミクミコミームひセム_ムミイム紹キミーミスミスミセミケ_ムひーミアミサミクムム祇ミクムミソミセミサム糊キムτ柔ムミコムム錦ひセミオ_ムミクムミサミセミイミセミオ_ミソミセミサミオ_.html new file mode 100644 index 0000000..890ff3a --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ墟ーミコ_ムミセムムミーミスミクムび契ミクミエミオミスムひクムミクミコミームひセム_ムミイム紹キミーミスミスミセミケ_ムひーミアミサミクムム祇ミクムミソミセミサム糊キムτ柔ムミコムム錦ひセミオ_ムミクムミサミセミイミセミオ_ミソミセミサミオ_.html @@ -0,0 +1,68 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ムミセムムミーミスミクムび ミクミエミオミスムひクムミクミコミームひセム ムミイム紹キミーミスミスミセミケ ムひーミアミサミクムム ミクムミソミセミサム糊キムτ ムミコムム錦ひセミオ ムミクムミサミセミイミセミオ ミソミセミサミオ? + + + + + + +
    +
    + + + +
    +
    +

    Как сохранить идентификатор связанной таблицы используя скрытое числовое поле?

    +

    Постановка задачи: предполагается, что есть переменная процесса (employee_id), которая хранит в себе значение идентификатора текущего авторизованного пользователя изтаблицы с информацией о пользователях системы.Необходимо реализовать на странице скрытое Числовое поле, в которое будет записываться значение из переменной employee_id и сохраняться в базе данных в качестве идентификатора изменившего запись в таблицу Список задач (tasks) колонку updated_employee_id.

    +
      + +
    • поле должно быть невидимым пользователю
    • +
    • значение поля должно подлежать сохранению
    • +
    • сохранение значения должно осуществляться в базу данныхв таблицу Список задач (tasks) колонку updated_employee_id
    • +
    • значение поля должно заполняться из переменной employee_id
    • +
    +

    Решение задачи:

    +

    Предполагается, что страница уже создана бизнес-аналитиком, где имеется ***основная компонента Форма***, в структуру сущностей которой включена необходимая, в данном случае,таблица Список задач (tasks), в которую будет сохраняться полученноезначение. Для добавления на страницу и настройки числового поля необходимо сделать следующее:

    +
      + +
    • добавить внутрь Формы компоненту Числовое поле с возможностью сохранения
    • +
    • произвести настройки согласно условию задачи
    • +
    +

    +

    Результат выполнения задачи:

    +

    Так как поле должно быть невидимым, на странице приложения оно не отобразится. При нажатии на кнопку сохранения, значение из поля будет записано в таблицу Список задач (tasks) колонку updated_employee_id.

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ斷ームムびミセミケミコミー_ミコミセミサミセミスミセミコ_ミ「ミーミアミサミクムム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ斷ームムびミセミケミコミー_ミコミセミサミセミスミセミコ_ミ「ミーミアミサミクムム.html new file mode 100644 index 0000000..aa34611 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ斷ームムびミセミケミコミー_ミコミセミサミセミスミセミコ_ミ「ミーミアミサミクムム.html @@ -0,0 +1,100 @@ + + + + + + + + Web-BPM Docs – ミ斷ームムびミセミケミコミー ミコミセミサミセミスミセミコ ミ「ミーミアミサミクムム + + + + + + +
    +
    + + + +
    +
    +

    Настройка колонок Таблицы

    +

    Для того, чтобы приступить к настройке колонок отображаемой в приложении Таблицы, необходимо предварительно заполнить Граф сущностей компоненты, где указываются объекты базы данных (таблицы и представления) с соответствующими условиямии связями, которые будут выступать в качестве источника данных для подгрузки значений.

    +

    После настройки Графа сущностей и сохранения внесённых изменений в его структуру*, во встроенных функциях элемента Таблица* необходимо перейти к разделу Таблица. Настроить колонки таблицы - Колонки и нажать на кнопку “Плюс” (рис.1). По нажатию на кнопку будет добавлен первый элемент (колонка), который имеет следующие настройки:

    +
      + +
    • Колонка - позволяет указать конкретную таблицу или представление базы данных, предварительно включенную в Граф сущностей, и колонку из этой таблицы, значения из которой будут отображаться на странице;
    • +
    • Наименование - это свойство, которое**позволяет задать наименование колонки, которое будет отображаться в шапке Таблицы; если название колонки не задано, то по умолчанию будет отображаться название таблицы и колонки в базе данных, откуда подгружаются значения
    • +
    • Ширина - свойство, которое**позволяет указать ширину (по умолчанию в пикселях) отображаемой колонки в Таблице;
    • +
    • Фиксированная ширина - данное условие выполняется только при заполненном выше значении Ширина и фиксирует размер колонки в Таблице;
    • +
    • Скрытое - данное свойство позволяет задать возможность скрытия столбца в Таблице. Применяется в том случае, когда необходимо настроить сортировку по содержимому колонки или использовать её в качестве входного параметра для кастомных (нестандартных) функций, но при этом отображать колонку в Таблице пользователю не нужно.
    • +
    • Агрегирующая функция - это функция, которая обрабатывает набор строк в указанной колонке для подсчета и возвращения одного обобщающего значения.Предусмотрено использование следующих агрегирующих функций: +
        + +
      • Сумма- возвращает сумму содержащихся в колонке значений, при этом указанная колонка из таблицы базы данных должна иметь числовой тип;
      • +
      • Максимум- возвращает максимальное значение из массива имеющихся значений в колонке, при этом указанная колонка из таблицы базы данных должна иметь числовой тип;
      • +
      • Минимум- возвращает минимальное значение из массива имеющихся значений в колонке,при этом указанная колонка из таблицы базы данных должна иметь числовой тип;
      • +
      • Среднее- возвращает среднее подсчитанное значение из массива имеющихся значений в колонке,при этом указанная колонка из таблицы базы данных должна иметь числовой тип;
      • +
      +

      Количество - возвращает общее количество записей в колонкеВ случае, когда свойство настроено у колонки, например, выбрана Агрегирующая функция Сумма, на странице пользовательского приложения вычисленное значение по колонке будет автоматически отображаться зафиксированной (положение не будет изменяться при прокрутке записей) результирующей строкой в Таблице (рис.3). При этом строка будет выделена отличным от других записей в таблице цветом и значение в результирующем поле будет динамически изменяться по мере заполнения колонки (выбранной в качестве источника данных) новыми значениями в таблице базы данных.

      +
    • +
    • Форматирование - данное свойство позволяет отобразить значение из колонки базы данных в необходимом формате на странице в приложении. Например, подгружаемое значение в колонку имеет тип данных Дата и Время (DateTime), но на странице пользовательского приложения необходимо отображать значение в колонке без Времени, только Дату. В таком случае, целесообразно использовать форматтер DateFormatter, который отобразит значение колонки в нужном виде. Но при этом предварительно необходимо применить к Таблице функцию Очистить форматирование колонок таблицы, указав наименование настраиваемой колонки.
    • +
    +

    Порядок и удаление колонки в Таблице можно регулировать нажав правой кнопкой мыши на надписи Элемент и выбрав один из трех вариантов Переместить наверх - Переместить вниз - Удалить элемент (рис.2).

    +

    +

    рис.1 Добавление колонок в Таблицу

    +

    +

    рис.2 Изменение элемента в Таблице (порядок или удаление)

    +

    +

    рис.3 Отображение колонок с Агрегирующими функциями

    +

    В случае, когда необходимо отобразить значение из нескольких колонок таблиц(ы) базы данных в одной колонке Таблицы на странице приложения используется свойство Составная колонка (рис.4).

    +
      + +
    • Составная колонка - это элемент Таблицы, который включает в себянесколько вложенных колонок из одной или разных таблиц базы данных с определяемым разделителем значений (точка, запятая, пробел и другие) и следующими настройками: +
        + +
      • префикс- символ или текст, который будет отображаться перед подгружаемым значением из колонки базы данных, например символ открывающейся скобки (;
      • +
      • постфикс - символ или текст, который будет отображаться после подгружаемого значения из колонки базы данных, например символ закрывающейся скобки ) ;
      • +
      • разделитель - символ или пробел, который будет разделять между собой значения из разных колонок таблиц (ы) приводимых в одну строку
      • +
      +
    • +
    +

    Для отображения записей в Таблице в определенном порядке используется Сортировка, которую можно настроить перейдя к разделу Таблица. Настроить колонки таблицы - Сортировкаи нажать на кнопку. Важно отметить, что колонка(и), по которым будет производитьсяСортировкадолжны быть включены в качестве элементов в Таблицу, либо включены, но скрыты, иначе при открытии страницы пользовательского приложения будет выведена ошибка. На языке SQL-запросовданное условие равно оператору ORDER BY, который можно применять как к числовым столбцам, так и к строковым (в последнем случае, сортировка будет происходить по алфавиту). По нажатию на кнопку будет добавлен элемент сортировки, который имеет следующие настройки:

    +
      + +
    • Колонка - позволяет указать конкретную таблицу или представление базы данных, предварительно включенную в Граф сущностей, и колонку из этой таблицы, по которой будут сортироваться записи в Таблице;
    • +
    • Порядок сортировки позволяет указать в каком порядке будет производиться сортировка По возрастанию или По убыванию (рис.5)
    • +
    +

    +

    рис.4 Добавление элемента Составная колонка

    +

    +

    рис.5 Добавление сортировки Таблиц по условию

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ樮ミクムムひクムび契ムミセムミシミームひクムミセミイミーミスミクミオ_ミコミセミサミセミスミセミコ_ムひーミアミサミクムム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ樮ミクムムひクムび契ムミセムミシミームひクムミセミイミーミスミクミオ_ミコミセミサミセミスミセミコ_ムひーミアミサミクムム.html new file mode 100644 index 0000000..b148daa --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ樮ミクムムひクムび契ムミセムミシミームひクムミセミイミーミスミクミオ_ミコミセミサミセミスミセミコ_ムひーミアミサミクムム.html @@ -0,0 +1,77 @@ + + + + + + + + Web-BPM Docs – ミ樮ミクムムひクムび ムミセムミシミームひクムミセミイミーミスミクミオ ミコミセミサミセミスミセミコ ムひーミアミサミクムム + + + + + + +
    +
    + + + +
    +
    +

    Очистить форматирование колонок таблицы

    +

    Функция, которая в режиме исполнения приложения (runtime mode) очищает форматирование по умолчанию указанных в настройках функции колонок компоненты Таблица для возможности применения пользовательских параметров форматирования, указываемых в настройках колонок компоненты Таблица. Попытка выставления аналитиком пользовательских параметров форматирования в настройках колонок компоненты Таблица без совместного использования с функцией Очистить форматирование колонок таблицы не приведет к изменению форматирования и к колонкам компоненты Таблица по-прежнему будет применяться форматирование по умолчанию

    +

    Может быть активирована только на компоненте Таблица.

    +

    +

    Рис. 1 Внешний вид активированной функции

    +

    Параметры функции (табл.1)

    + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Список колонок, обязательный позволяет сформировать список колонок компоненты Таблица, для которых система должна сбросить форматирование по умолчанию. Колонки для текущей функции идентифицируются по именам, присвоенным колонкам при настройке функции “Таблица”. Настроить колонки таблицы
    +

    Пример настройки и применения

    +

    +

    Рис.2 Активация функции на компоненте Таблица

    +

    +

    Рис. 3 Форматирование колонки без применения функции “Очистить форматирование колонок таблицы”

    +

    +

    Рис.4 Форматирование колонки после применения функции Очистить форматирование колонок таблицы

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムミー.html new file mode 100644 index 0000000..8a00ca2 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムミー.html @@ -0,0 +1,247 @@ + + + + + + + + Web-BPM Docs – ミ「ミーミアミサミクムミー + + + + + + +
    +
    + + + +
    +
    +

    Таблица

    +

    Назначение

    +

    Таблица - это компонента, которая используется для отображения информации из базы данных в табличном виде с возможностью сортировки записей в нужном порядке.

    +

    Компонента Таблица находится в разделе Компоненты - Таблицы - Таблица

    +

    Свойства

    +

    Компонента имеет набор общих свойств.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Зависит от позволяет указать объект (родителя), по идентификатору которого будут отображаться сведения в текущей Таблице; задаётся в случае необходимости связать Таблицу с другой компонентой, например, Выпадающий список или Таблицей
    Multiselectable позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
      +
    • возможность выбора сразу нескольких или одной строки
    • +
    • возможность выбора одной строки - значение по умолчанию
    Checkbox Column позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой Таблица +
      +
    • значение не определено - по умолчанию
    • +
    • Активно - отображать колонку флагов
    • +
    • Не активно - не отображать колонку флагов
    Показывать номер строки позволяет задать автоматическую нумерацию строк +
      +
    • значение не определено - по умолчанию
    • +
    • Активно - отображать нумерацию строк
    • +
    • Не активно - не отображать нумерацию строк
    Pinned Bottom Row Label позволяет задать значение для названия итоговой строки таблицы (строки с агрегирующими значениями по колонкам таблицы) пример возможного значения: Итого
    Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
      +
    • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
    • +
    • MULTI_SELECT_CLICK -при каждом клике на строку, предыдущие выбранные строки не сбрасываются, т.е если кликнули на одну строку, а затем на другую, то первая строка останется выбранной. Клик по уже выбранной строке снимает с неё выделение. Использования данного метода допустимо, в случае, если в таблице доступен выбор нескольких строк (при значениисвойстваMultiselectable)
    • +
    • SUPPRESS_SELECT_CLICK – исключает возможность выбора (выделения) строки по клику. В данном случае, выбор строки представляется возможным только при использовании чекбоксов.
    Save Column State позволяет задать возможность сохранения пользовательских настроек в части состава и ширины колонок в таблице +
      +
    • значение не определено - по умолчанию
    • +
    • Активно - изменения пользователя в части отображаемых колонок в таблице (состав и ширина) будут сохраняться в локальном хранилище, т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения отобразятся
    • +
    • Не активно - не сохранять изменения пользователя в части отображаемых колонокв таблице (состав и ширина), т.е. если пользователь исключил для отображения конкретную колонку или изменил ширину столбца в таблице, то при повторном переходе на страницу эти изменения не отобразятся и таблица будет иметь исходный вид по умолчанию
    Loading Overlay Type позволяет выбрать вид прелоадера при подгрузке данных в таблицу Доступны следующие виды настройки: +
      +
    • TEXT_OVERLAY - отображает текст в центре таблицы при подгрузке данных, задаваемый в свойствах: No Rows Overlay Message и Loading Overlay Message
    • +
    • PROGRESS_BAR - отображает прогресс-бар при подгрузке данных в таблицу
    No Rows Overlay Message позволяет указать текст для отображения пользователю в таблице в случае, если результат запроса не вернул ни одной строки, например, Данные отсутствуют (доступно для настройки при Loading Overlay Type - TEXT_OVERLAY) пример возможного значения: Данные отсутствуют
    Loading overlay message позволяет указать текст для отображения пользователю в процессе подгрузки данных в таблицу, например, Загрузка данных, пожалуйста, подождите.( доступно для настройки при Loading Overlay Type - TEXT_OVERLAY) пример возможного значения: Загрузка данных, пожалуйста, подождите. Allow Context Menu With позволяет управлять отображением контекстного меню (список доступных для исполнения действий) при нажатии правой кнопкой мыши на ячейку внутри таблицы +
      +
    • значение не определено - по умолчанию
    • +
    • Активно - при нажатии правой кнопкой мыши на ячейку внутри таблицы отображается контекстное меню доступных действий, например, копирование значения ячейки
    • +
    • Не активно - исключает отображение контекстного меню при нажатии правой кнопкой мыши на ячейку внутри таблицы
    +

    Свойство компоненты: Таблица. Подгрузка данных

    +

    +

    Подгрузка данных - позволяет задать граф сущностей для подгрузки данных в Таблицу. Является обязательным к заполнению и настройке.

    +
      + +
    • + +

      Граф сущностей элемента настраивается в соответствии с п. Настройка Графа сущностей. Является обязательным к заполнению и настройке.

      +
    • +
    • + +

      Колонка для режима “Зависит от” - позволяет указать колонку настраиваемой Таблицы, которая обеспечивает связь текущей компоненты с компонентой заданной в параметре “Зависит от”

      +
    • +
    • + +

      Datasource Jndi Name -позволяет задать иной источник (базу данных) для выполнения запроса, заданного с помощью элементов базы данных в редакторе Графа сущностей элемента.

      +
    • +
    +

    Значение данного свойства может быть задано следующим образом: java:/webbpm/AppRepDS, а сам адрес базы данных, логин и пароль для подключения должен быть указан в файле standalone.xml (аналогично тому, как указывается, например, подключение к базе данных безопасности).

    +

    В случае, если данное свойство не заполнено, запрос выполняется в базе данных, указанной в конфигурации проекта (во вкладке База данных).

    +
      + +
    • Aggregation Header For Export - свойство в расширенных настройках, позволяющее задать заголовок для агрегационной строки при экспорте данных.
    • +
    +

    +

    Свойство компоненты: Таблица. Настроить колонки таблицы

    +

    +

    позволяет настроить отображаемые колонки в Таблице с сортировкой записей по конкретному порядку

    +

    с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы

    +

    Свойство компоненты: Таблица. Настроить динамическую подгрузку данных при просмотре страницы

    + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Количество записей в блоке количество отображаемых записей в Таблице по умолчанию при каждой новой подгрузк пример возможного значения: 20 - значение по умолчанию
    +

    Функции

    +

    В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

    +

    Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

    +

    Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

    +

    Очистить форматирование колонок таблицы

    +

    Преобразовать в колонки со значениями-переходами

    +

    Определить права текущего пользователя

    +

    Определить роли текущего пользователя

    +

    Методические рекомендации по применению

    +

    Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

    + +

    Часто задаваемые вопросы

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Вопрос Ответ
    Как задать ширину Таблицы? Для того, чтобы настроить ширину или высоту таблицы необходимо в Основных настройках - Расширенные настройки - Стили задать необходимые значения для настраиваемых параметров, например, Ширина 500px.
    Как задать ширину колонок в процентах? Для задания ширины колонок в процентах необходимо выставить нужный процент в поле width и поставить галочку “Автоматически выравнивать по ширине” (autoStretchColumns)
    Как скрыть колонку Таблицы? Для того, чтобы скрыть колонку таблицы можно снять флажок с параметра колонки “Скрытое” в Диспетчере компоненты, либо установить ширину колонки в значение 0px (параметр “Ширина” колонки в Диспетчере компоненты)
    Можно ли поменять порядок отображаемых колонок в Таблице? Для того, чтобы изменить порядок колонок в Таблице необходимо в свойстве Настроить колонки таблицы - Колонки нажать правой кнопкой мыши на «Элемент» и выбрать предложенные варианты: Переместить наверх - Переместить вниз - Удалить элемент
    Как изменить формат отображения данных в колонке Таблицы? В случае, если необходимо изменить формат отображения значений в колонке Таблицы необходимо при настройке колонки применить Форматтер. Например, подгружаемое значение в колонку имеет тип данных Дата и Время(DateTime), но на странице пользовательского приложения необходимо отображать значение в колонке без Времени, только Дату. В таком случае, целесообразно использовать форматтер DateFormatter, который отобразит значение колонки в нужном виде. Но при этом предварительно необходимо применить к Таблице функцию Очистить форматирование колонок таблицы, указав наименование настраиваемой колонки.
    Можно ли изменить цветовое оформление Таблицы? Да, можно. Цветовым оформлением Таблицы можно управлять с помощью CSS-стилей, задаваемых в Основных параметрах - Расширенные настройки - CSS классы
    Как автоматически вывести сумму значений по колонке в Таблицу? Для того, чтобы на странице отобразилась сумма значений по колонке, необходимо при настройке колонки выбрать Агрегирующую функцию - Сумма, после чего в Таблице автоматически отобразится зафиксированная (положение не будет изменяться при прокрутке записей) результирующая строка в Таблице. При этом строка будет выделена отличным от других записей в таблице цветом и значение в результирующем поле будет динамически изменяться по мере заполнения колонки (выбранной в качестве источника данных) новыми значениями в таблице базы данных. С описанием настройки колонок в Таблице можно ознакомиться в разделе: Настройка колонок Таблицы
    При выборе записи в основной Таблице в зависимой Таблице (с настроенным режимом «Зависит от»)**отображаются некорректные записи. В чем ошибка? В данном случае, некорректна указана колонка связи между зависимой и основной Таблицами. С описанием настройки связанных Таблиц можно ознакомиться в разделе: Как добавить связанные Таблицы на страницу?
    Как настроить возможность многострочного выбора записей в Таблице? Для того, чтобы настроить многострочный выбор (одновременный выбор нескольких) записей в Таблице необходимо в разделе Таблица. Задействовать режим выбора нескольких строк установить свойство Допустимо выбрать несколько строк в значение(истина).
    Можно ли задать автоматическую нумерацию строк (записей) в Таблице? Да, можно. Для этого необходимо в настраиваемых параметрах Таблицы перейти к свойству Таблица. Основные параметры - Показывать номер строки и привести его в значение(истина).
    Колонка в шапке таблицы имеет странное наименование. Как исправить? Такая ситуация возникает в том случае, если не было задано значение значение параметра “Наименование” в диспетчере компоненты при создании колонки и ей было присвоено название по умолчанию в формате “название таблицы:название колонки”.
    Как поменять порядок следования столбцов таблицы в диспетчере компоненты? Вызвать контекстное меню на надписи Элемент и выбрать соответствующий пункт.
    Как отобразить доступный для понимания вариант адреса, если в колонке базы данных он задан идентификатором guid_fias? Необходимо вручную настроить параметр “Форматирование” в Диспетчере компоненты.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムミー_ム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムミー_ム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ.html new file mode 100644 index 0000000..cbd952a --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムミー_ム\ミソミセムムびミーミスミクムミスム巾シ_ミセムひセミアムミーミカミオミスミクミオミシ.html @@ -0,0 +1,187 @@ + + + + + + + + Web-BPM Docs – ミ「ミーミアミサミクムミー ム ミソミセムムびミーミスミクムミスム巾シ ミセムひセミアムミーミカミオミスミクミオミシ + + + + + + +
    +
    + + + +
    +
    +

    Таблица с постраничным отображением

    +

    Назначение

    +

    Таблица с постраничным отображением - это компонента, которая используется для отображения информации из базы данных в табличном виде с возможностью сортировки записей в нужном порядке и постраничным просмотром (переключением) записей.

    +

    Компонента Таблица с постраничным отображением находится в разделе Компоненты - Таблицы - Таблица с постраничным отображением (рис.1)

    +

    Свойства

    +

    Компонента имеет набор общих свойств.

    + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Показывать номер строки позволяет задать автоматическую нумерацию строк +
      +
    • значение не определено - по умолчанию
    • +
    • Активно - отображать нумерацию строк
    • +
    • Не активно - не отображать нумерацию строк
    Зависит от позволяет указать объект (родителя), по идентификатору которого будут отображаться сведения в текущей Таблице; задаётся в случае необходимости связать Таблицу с другой компонентой, например, Выпадающий список или Таблицей
    Row click selection type позволяет задать поведение выбора строк при клике на строку Таблицы +
      +
    • SINGLE_SELECT_CLICK – при клике на строку предыдущие выбранные строки сбрасываются, если не была зажата клавиша Ctrl или Shift- данный метод выбран по умолчанию
    • +
    • MULTI_SELECT_CLICK– при каждом клике на строку не сбрасываются предыдущие выбранные строки. Например, если вы кликнули на одну строку, а затем на другую, то первая строка останется выбранной. В этом случае клик по уже выбранной строке снимает выделение (deselect). Эта настройка полезна для touch-устройств, у которых нет клавиш Ctrl или Shift.
    • +
    • SUPPRESS_SELECT_CLICK– сроки не будут выбираться при клике. Например, если вы хотите выбирать строки только при нажатии на чекбокс.
    +

    Свойство компоненты: Таблица. Задействовать режим выбора нескольких строк

    + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Допустимо выбрать несколько строк позволяет задать возможность единовременного выбора одной или нескольких записей в Таблице; выбранные строки окрашиваются в отличный от других строк цвет +
      +
    • возможность выбора сразу нескольких или одной строки
    • +
    • возможность выбора одной строки - значение по умолчанию
    Колонка “Флагов” позволяет поставить отметку в виде флажка на тех записях, которые выбраны пользователем в рамках работы с компонентой Таблица +
      +
    • значение не определено - значение по умолчанию
    • +
    • Активно - отображать колонку флагов
    • +
    • Не активно - не отображать колонку флагов
    +

    Свойство компоненты: Таблица с постраничным отображением.

    + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Показать строки по умолчанию позволяет задать количество записей отображаемых на каждой странице компоненты по умолчанию *пример возможного значения:*20 - значение по умолчанию
    Выдавать по <…> строк на странице список всех доступных пользователю вариантов количеств отображаемых строк на одной странице компоненты, которые он может выбрать в запущенном приложении пример возможного значения: 10, 20, 30 - значение по умолчанию
    +

    Свойство компоненты: Таблица с постраничным отображением. Подгрузка данных

    +

    +

    позволяет задать граф сущностей для подгрузки значений в Таблицу из базы данных. Является обязательным к заполнению и настройке.

    +

    Сущность - это объект с которым работают в графе. В качестве объекта могут быть: таблицы и представления (вью) из базы данных. Понятие сущности не равно понятию таблицы, поскольку одна таблица может быть добавлена в граф несколько раз.

    +

    с описанием настройки Графа сущностей для Таблицы можно ознакомиться в разделе: Настройка Графа сущностей

    +

    +

    позволяет указать колонку настраиваемой Таблицы, которая обеспечивает связь текущей компоненты с компонентой заданной в параметре “Зависит от”

    +

    Свойство компоненты: Таблица. Настроить колонки таблицы

    +

    +

    позволяет настроить отображаемые колонки в Таблице с сортировкой записей по конкретному порядку

    +

    с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы

    +

    Функции

    +

    В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

    +

    Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт.

    +

    Вследствие технических особенностей реализации функций (функции, которые выполняются удаленно на сервере приложений, функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

    +

    Определить роли текущего пользователя

    +

    Определить права текущего пользователя

    +

    Очистить форматирование колонок таблицы

    +

    Преобразовать в колонки со значениями-переходами

    +

    Методические рекомендации по применению

    +

    Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

    + +

    Часто задаваемые вопросы

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Вопрос Ответ
    В чем заключается различие между Таблицей с постраничным отображением и Единственное отличие заключается в том, что Таблица с постраничнымотображением функционально имеет возможность постраничного просмотра записей (с переключением).
    Можно ли изменить цветовое оформление Таблицы с постраничным отображением? Да. Цветовым оформлением Таблицы можно управлять с помощью CSS-стилей, задаваемых в **Основных параметрах - Расширенные настройки - CSS классы
    Как задать ширину или высоту Таблицы с постраничным отображением Для того, чтобы настроить ширину или высоту таблицы необходимо в Основных настройках - Расширенные настройки- Стили задать необходимые значения для настраиваемых параметров, например, Ширина 500px.
    Как изменить формат отображения данных в колонке Таблицы с постраничным отображением В случае, если необходимо изменить формат отображения значений в колонке Таблицы необходимо при настройке колонки применить Форматтер. Например, подгружаемое значение в колонку имеет тип данных Дата и Время(DateTime), но на странице пользовательского приложения необходимо отображать значение в колонке без Времени, только Дату. В таком случае, целесообразно использовать форматтер DateFormatter, который отобразит значение колонки в нужном виде. Но при этом предварительно необходимо применить к Таблице функцию Очистить форматирование колонок таблицы, указав наименование настраиваемой колонки.
    Можно ли поменять порядок отображаемых колонок в Таблице с постраничным отображением Для того, чтобы изменить порядок колонок в Таблице необходимо в свойствеНастроить колонки таблицы - Колонкинажать правой кнопкой мыши на«Элемент»ивыбрать предложенные варианты: Переместить наверх - Переместить вниз - Удалить элемент
    Как настроить возможность многострочного выбора записей в Таблице с постраничным отображением? Для того, чтобы настроить многострочный выбор (одновременный выбор нескольких) записей в Таблице необходимо в разделе Таблица. Задействовать режим выбора нескольких строкустановить свойство Допустимо выбрать несколько строкв значение
    +
    +
    +
    +
    +
    +
    +

    © 2022 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムム.html new file mode 100644 index 0000000..193ddf7 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/grids/ミ「ミーミアミサミクムム.html @@ -0,0 +1,53 @@ + + + + + + + + Web-BPM Docs – ミ「ミーミアミサミクムム + + + + + + + +
    +
    +
    +
    +

    © 2022 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/index.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/index.html new file mode 100644 index 0000000..f5ed4cb --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/index.html @@ -0,0 +1,104 @@ + + + + + + + + Web-BPM Docs – ミ岱ーミキミセミイミーム ミアミクミアミサミクミセムひオミコミー ミコミセミシミソミセミスミオミスム + + + + + + +
    +
    + + + +
    +
    +

    Базовая библиотека компонент

    +
    +

    Функции

    +

    В ходе настройки свойств компоненты (заданных по умолчанию) может оказаться недостаточно для выполнения поставленной задачи и получения необходимого результата.

    +

    Для каждой компоненты предусмотрен перечень функций, расширяющих её базовую функциональность, которые можно добавить нажатием кнопки Добавить скрипт

    +

    Вследствие технических особенностей реализации функций (

    +

    - функции, которые выполняются удаленно на сервере приложений,

    +

    - функции, которые выполняются в браузере пользователя), они имеют разные иконки, но это никак не влияет на их функциональность или предпочтительность использования.

    +

    Рекурсивно копировать составные объекты сложных компонент

    +

    TODO: описать

    +

    Определить права текущего пользователя

    +

    Определить права текущего пользователя

    +

    Определить роли текущего пользователя

    +

    Определить роли текущего пользователя

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/AC._ミ慴オムひセミエム-ミセミアム諌オミコムひセミイ-ムムびミーミスミクムム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/AC._ミ慴オムひセミエム-ミセミアム諌オミコムひセミイ-ムムびミーミスミクムム.html new file mode 100644 index 0000000..f53f80e --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/AC._ミ慴オムひセミエム-ミセミアム諌オミコムひセミイ-ムムびミーミスミクムム.html @@ -0,0 +1,83 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
    +
    + + + +
    +
    +

    У каждого компонента есть набор методов, которые используются в ActionController.

    +

    Общие для всех компонентов методы представлены в следующей таблице:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Метод Значение
    setEnabled установить активность компонента
    isEnabled проверка на активность компонента
    setTooltip задать текст всплывающей подсказки
    getTooltip получить текст всплывающей подсказки
    setVisible установить видимость компонента
    isVisible проверка на видимость компонента
    +

    Также для каждого компонента существуют свои собственные, характерные только для него, методы.

    +

    Названия этих методов формируются по общему правилу:

    +

    метод называется set + свойство компонента. Например свойство значение (value), тогда для того, чтобы задать значение необходимо выбрать метод setValue.

    +

    Аналогично, с get методами.

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ConditionOperation.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ConditionOperation.html new file mode 100644 index 0000000..07b662f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ConditionOperation.html @@ -0,0 +1,108 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
    +
    + + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    OperationSimpleArray
    EQUALS SIMPLE.EQUALS(VALUE) ARRAY.EQUALS(VALUE) ALL ELEMENTS IN ARRAY
    NOT_EQUALS !SIMPLE.EQUALS(VALUE) !ARRAY.EQUALS(VALUE) ALL ELEMENTS IN ARRAY
    IS_EMPTY SIMPLE.IS_EMPTY() ARRAY.IS_EMPTY()
    IS_NOT_EMPTY !SIMPLE.IS_EMPTY() !ARRAY.IS_EMPTY()
    LESS_THAN SIMPLE.LESS_THAN(VALUE) ARRAY.LESS_THAN(VALUE) ALL ELEMENTS IN ARRAY
    LESS_THAN_OR_EQUAL LESS_THAN_OR_EQUAL(SIMPLE) LESS_THAN_OR_EQUAL(ARRAY) ALL ELEMENTS IN ARRAY
    GREATER_THAN SIMPLE.GREATER_THAN(VALUE) ARRAY.GREATER_THAN(VALUE) ALL ELEMENTS IN ARRAY
    GREATER_THAN_OR_EQUAL SIMPLE.GREATER_THAN_OR_EQUAL(VALUE) ARRAY.GREATER_THAN_OR_EQUAL(VALUE) ALL ELEMENTS IN ARRAY
    CONTAINS SIMPLE.CONTAINS(VALUE) ARRAY.CONTAINS(VALUE) === ELEMENT_X.EQUALS(VALUE)
    DOES_NOT_CONTAIN !SIMPLE.CONTAINS(VALUE) !ARRAY.CONTAINS(VALUE) === !ELEMENT_X.EQUALS(VALUE)
    STARTS_WITH SIMPLE.STARTS_WITH ARRAY.START_WITH(VALUE) ALL ELEMENTS IN ARRAY
    DOES_NOT_STARTS_WITH DOES_NOT_STARTS_WITH !ARRAY.START_WITH(VALUE) ALL ELEMENTS IN ARRAY
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/EventCalendar.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/EventCalendar.html new file mode 100644 index 0000000..b2d4290 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/EventCalendar.html @@ -0,0 +1,359 @@ + + + + + + + + Web-BPM Docs – EventCalendar + + + + + + +
    +
    + + + +
    +
    +

    EventCalendar

    +

    Назначение

    +

    Компонента позволяет размещать календарь на странице и отображать в нем события разных типов в виде цветных маркеров.

    +

    Описание

    +

    В календаре отображаются события разных типов в виде цветных точек, расположенных в ячейках дня в представлении по месяцам, или в виде списка в представлениях по дням или неделям.
    +При представлении в виде месяца, при клике на ячейку дня раскрывается список событий.
    +Для каждого типа событий аналитик может настроить идентификатор типа, его название, цвета отображения в календаре, конфигурацию поиска данных в базе данных.
    +Поиск событий может осуществляться 2-мя способами: - поиском по графу с заданием набора тип + колонки - поиском при помощи кастомных сервисов с указанием типа

    +

    Если типы событий не заданы, события выделяются цветом по умолчанию. Поиск при этом происходит по всем наборам.

    +

    Параметры настройки

    +

    В компоненте 2 основных скрипта: - EventCalendar.ts - EventCalendarRpcService.java

    +

    EventCalendar.ts

    +

    Унаследованные свойства компоненты: набор свойств Control.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Примечание
    1 Event Color Types Определять тип события, его название и цвета, которыми помечаются события в календаре. Необязательная настройка
    Типы событий
    1.1 Event Type Идентификатор типа подгружаемых событий. Задается аналитиком.
    тип события
    1.2 Type Label Название типа подгружаемых событий. Начало заголовка события. Задается аналитиком.
    название типа события Необязательная настройка.
    1.3 Delimiter Разделитель столбцов в заголовке события. По умолчанию: " : ". Необязательная настройка.
    разделитель По умолчанию: " : ".
    1.4 Primary Цвет маркера события. Обязательный цвет
    цвет маркера
    1.5 Secondary Цвет фона события. Обязательный цвет
    цвет фона
    1.6 Secondary Text Цвет шрифта фона события.
    цвет текста фона
    2 Day Clicked Listeners Возможность назначать скрипты, выполняющие действия по клику на ячейку дня в представлении месяца.
    Действия по клику на день
    3 Event Clicked Listeners Возможность назначать скрипты, выполняющие действия по клику на событиев списке событий.
    Действия по клику на событие Эти же действия будут выполнены по клику на цветной маркер события.
    4 Selected Event Types Возможность задать список типов событий, по которым будет происходить поиск событий для календаря.
    Выбранные типы событий
    +

    EventCalendarRpcService.java

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Примечание
    1 Script Сервис загружающий данные. Первоначально выбран сервис по умолчанию.
    Сервис загрузки
    2 Load Dao Класс, назначенный по умолчанию. В нем настраивается граф таблиц базы данных. Настройка графа обязательна.
    Источник данных
    3 User Id Column Столбец базы данных из графа, привязанный к id пользователя. Необязательная настройка.
    Id пользователя
    4 Event Sources Настройка источников событий разных типов.
    Источники событий
    4.1 Event Type Идентификатор типа подгружаемых событий. Задается аналитиком.
    тип события Необязательная настройка.
    4.2 Event Id Column Столбец идентификатора подгружаемых событий. Необязательная настройка.
    идентификатор события
    4.3 Start Date Column Столбец даты начала события. Обязательная настройка.
    начало события
    4.4 End Date Column Столбец даты крнца события. Необязательная настройка.
    конец события
    4.5 Title Columns Набор столбцов, из которых формируется заголовок события. Необязательная настройка.
    заголовок события
    5 Service Types Настройка сервисов для поиска событий разных типов. Необязательная настройка
    Настраиваемые сервисы Сервисы пишутся разработчиком.
    5.1 Event Type Идентификатор типа подгружаемых событий. Задается аналитиком.
    тип события Необязательная настройка.
    5.2 Event Service Подключаемый сервис. (Пишется разработчиком.)
    подключаемый сервис
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/HyperLink.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/HyperLink.html new file mode 100644 index 0000000..d53a518 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/HyperLink.html @@ -0,0 +1,80 @@ + + + + + + + + Web-BPM Docs – HyperLink + + + + + + +
    +
    + + + +
    +
    +

    HyperLink

    +

    Назначение

    +

    HyperLink - компонента для отображение ссылки.

    +

    Свойства

    +

    Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    URL Ссылка. Может содержать выражения ${your-parameter}, которые будут заменяться. Для этого необходимо указать Parameter Providers.
    Text Текст ссылки
    Is Absolute Является ли ссылкой относительной или абсолютной
    Open In New Tab Открыть ссылку в отдельной вкладке
    Parameter providers Определяет ссылки на объекты и метод для получения значения.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/IFrame.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/IFrame.html new file mode 100644 index 0000000..eb96fb6 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/IFrame.html @@ -0,0 +1,98 @@ + + + + + + + + Web-BPM Docs – IFrame + + + + + + +
    +
    + + + +
    +
    +

    IFrame

    +

    Назначение компонента

    +

    Компонент IFrame позволяет создавать ссылки на странице(page) во фрейме.

    +

    Настройка компонента

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    visible задаёт видимость компоненты true
    disabled задаёт редактируемость компоненты false
    tooltip задаёт текст всплывающей подсказки, которая появляется при наведении курсора на элемент
    cssClasses список CSS классов (см. раздел Дизайн)
    style список основных свойств: +
      +
    • padding (необходимо указывать единицы измерения)
    • +
    • margin (необходимо указывать единицы измерения). См. http://htmlbook.ru/css/margin. Например для задания отступа справа на 50px необходимо задать значение 0px 50px 0px 0px
    • +
    • border - задает размер, цвет и стиль рамки. Например “20px solid red”. Подробнее http://htmlbook.ru/css/border
    • +
    • height - задает высоту компонента
    • +
    • width - задает ширину компонента
    • +
    • minHeight - задает минимальную высоту компонента
    • +
    • minWidth - задает минимальную ширину компонента
    • +
    • maxHeight - задает максимальную высоту компонента
    • +
    • maxWidth - задает максимальную ширину компонента.
    source задает ссылку
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/InnerHtml.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/InnerHtml.html new file mode 100644 index 0000000..451c78a --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/InnerHtml.html @@ -0,0 +1,69 @@ + + + + + + + + Web-BPM Docs – InnerHtml + + + + + + +
    +
    + + + +
    +
    +

    InnerHtml

    +

    Назначение

    +

    InnerHtml - компонента для вставки HTML кода.

    +

    Свойства

    +

    Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

    + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    htmlAsString HTML код
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/Menu.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/Menu.html new file mode 100644 index 0000000..4752453 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/Menu.html @@ -0,0 +1,100 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
    +
    + + + +
    +
    +

    Компонент Menu предназначен для отображения иерархии элементов, навигации по процессам, расчету метрик по пунктам.

    +

    Настройка компоненты: * накидывается на каждую страницу, где должен отображаться * элементы добавляются/редактируются в разделе “Меню. Настройка элементов”

    +

    Описание элементов:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    items Массив элементов 0
    Name Наименование элемента
    is Group Задать элемент группой, выделяется жирным шрифтом и не содержит метрику. false
    Has Metric Необходимость вычислить метрику для элемента false
    Business Process To Start Выбрать процесс, который нужно запустить при нажатии на соответствующий пункт меню
    Dao Выбрать граф сущностей для вычисления метрики
    Aggregation Column Выбор таблицы и колонки, по которой нужна агрегация
    Aggregation Function Выбор агрегирующей функции
    +
      + +
    • компонент отрисовывается в виде дерева с элементами
    • +
    • по нажатию на элемент, для которых задан Business Process To Start, происходит старт указанного процесса
    • +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/MenuGroup.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/MenuGroup.html new file mode 100644 index 0000000..e3d7187 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/MenuGroup.html @@ -0,0 +1,75 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
    +
    + + + +
    +
    +

    Компонент MenuGroup является контейнером предназначеным для отображения иерархии элементов, навигации по процессам, расчету метрик по пунктам.

    +

    Настройка компоненты: * накидывается на каждую страницу, где должен отображаться * внутрь этой компоненты добавляются MenuItem для отображения конечного пункта меню * для подгрупп можно добавить ещё один MenuGroup внутрь текущей

    +

    Описание элементов:

    + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    Name Наименование для заголовка группы
    Show Empty Metric Флаг, для отображения суммы метрик по элементам. Если задано false - то в случае если сумма равна нулю - метрика не будет показана false
    Subsidiary Aggregation Флаг для отображения суммы метрик, если false - то сумма по дочерним элементам высчитываться не будет false
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/MenuItem.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/MenuItem.html new file mode 100644 index 0000000..5e3291c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/MenuItem.html @@ -0,0 +1,119 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
    +
    + + + +
    +
    +

    Компонент MenuItem предназначен для отображения конечного элемента в меню, навигации по процессам, расчету метрик по пунктам.

    +

    Настройка компоненты: * накидывается на строго на компоненту MenuGroup * элементы добавляются/редактируются в разделе “Меню.Настройка элементов”

    +

    Описание элементов:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    Name Наименование элемента
    Has Metric Необходимость вычислить метрику для элемента false
    Custom Load Флаг для подгрузки метрики из кастомного запроса false
    Custom Dao Заполнение кастомного запроса с возможностью выбора переменных процесса
    Business Process To Start Выбрать процесс, который нужно запустить при нажатии на соответствующий пункт меню
    Dao Выбрать граф сущностей для вычисления метрики
    Aggregation Column Выбор таблицы и колонки, по которой нужна агрегация
    Aggregation Function Выбор агрегирующей функции
    Static Url Флаг для действия элемента, если true - открывает статичный URL false
    Process With Variables Выбор процесса для перехода
    Url URL для перехода
    Visible By Roles Список ролей который могут запустить процесс
    Advanced Properties - Additional Variables Здесь можно указать переменную процесса, значением которой будет значение выбранного объекта на форме. Эту переменную можно использовать в блоке Process with variables - Variables.
    +
      + +
    • по нажатию на элемент, для которых задан Business Process To Start, происходит старт указанного процесса
    • +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ValidationController.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ValidationController.html new file mode 100644 index 0000000..d090e87 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ValidationController.html @@ -0,0 +1,138 @@ + + + + + + + + Web-BPM Docs – ValidationController + + + + + + +
    +
    + + + +
    +
    +

    ValidationController

    +

    Назначение компонента

    +

    ValidationController – инструмент для построения проверок перед сохранением.

    +

    ValidationController срабатывает только в момент сохранения (по кнопке SaveButton на Form.

    +

    Настройка компонента

    +

    Настройка ValidationController включает в себя настройку следующих разделов:

    +
      + +
    • ЕСЛИ условия.
    • +
    • Уведомить реакция системы на выполнение всех условий из ЕСЛИ.
    • +
    +

    +

    Рассмотрим настройку каждого раздела:

    +

    ЕСЛИ

    +

    Этот раздел задает условия(проверки), при выполнении которых будет выполняться раздел Уведомить.

    +

    Условие задается:

    +
      + +
    • ссылкой на объект (на который мы накладываем наше условие):
    • +
    • проверка.
    • +
    +

    Есть возможность создавать группы условий, объединенных логическими операциями “И”, “ИЛИ”.

    +

    Уведомить

    +

    Этот раздел задает реакцию системы, в случае если условия из раздела ЕСЛИ выполнились:

    +

    Есть два типа уведомлений:

    +
      + +
    • + +

      **SYSTEM **– стандартное уведомление, с заданным текстом;

      +

      +
    • +
    • + +

      **CUSTOM **– уведомление, которое будет выведено в заданный компонент. Для примера, будем использовать вывод уведомления в компонент TextArea. Такой вывод происходит в два этапа:

      +
    • +
    • +
        + +
      • + +

        действие до – предварительные действия.
        +В нашем примере, компонент TextArea, в который будет выведено уведомление, необходимо предварительно очистить (присвоить пустое значение):
        +

        +
      • +
      • + +

        действие _–****_ действия, непосредственно связанные с выводом.
        +Осуществим вывод в TextArea:
        +

        +
      • +
      +
    • +
    +

    Пример настройки

    +

    Задача: На странице имеются два поля (ComboBox) и кнопка сохранения. Необходимо проверить на заполненность этих полей при сохранении.

    +

    +
      + +
    1. + +

      Добавляем все необходимые компоненты на страницу:

      +

      +

      Замечание

      +

      Обратите внимание, поля расположены в Form.

      +

      ValidationController расположен в Form.

      +
    2. +
    3. + +

      Настраиваем компонент Form (см. Настройка Grid), компоненты ComboBox, SaveButton.

      +
    4. +
    5. Настраиваем ValidationController: +
        + +
      1. Создаем Условие (ЕСЛИ), нажатием на кнопку . Условия в этом примере связаны логической операцией ИЛИ, т.к. необходимо проверить оба поля на пустоту (если поставим И - будет выдаваться сообщение только если оба поля будут пустыми).
      2. +
      3. К Условию привязываем объект для валидации - PersistingComboBox_country (необходимо проверять ComboBox, содержащий страны, на пустоту): +

      4. +
      5. Задаем проверку на пустоту (Если значение ComboBox пусто):
        +
      6. +
      7. Тоже самое для второго ComboBox, содержащего города:
        +
      8. +
      9. Задаем реакцию на выполненные условия (Уведомить):
        +из выпадающего списка выбираем SYSTEM - вывод простого системного сообщения:
        +
      10. +
      11. Зададим сообщение:
        +
      12. +
      +
    6. +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/index.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/index.html new file mode 100644 index 0000000..e96ef8b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/index.html @@ -0,0 +1,52 @@ + + + + + + + + Web-BPM Docs – ミ墟セミシミソミセミスミオミスムび ミアミオミキ ミコミームひオミウミセムミクミク + + + + + + +
    +
    + + + +
    +
    +

    Компоненты без категории

    +

    Компоненты - TODO Calendar - IFrame - ValidationController - Диаграмма - Диаграмма Гантта (Календарный план) - Календарь - Меню. Группа - Меню. Элемент - Обработка событий - HyperLink - InnerHtml

    +

    Функции - AC. Методы объектов страницы - Condition Operation

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー.html new file mode 100644 index 0000000..059669b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー.html @@ -0,0 +1,160 @@ + + + + + + + + Web-BPM Docs – ミ頒クミーミウムミーミシミシミー + + + + + + +
    +
    + + + +
    +
    +

    Диаграмма

    +

    Диаграмма - это компонента, которая используется для визуализации агрегированных аналитических показателей, полученных в результате выполнения запроса к базе данных.

    +

    Представляет возможность графического отображения на web-странице предусмотренных аналитиком значений мер (measures) в виде диаграмм известных и наиболее распространенных типов на шкале измерений (dimensions). Предоставляет функциональность выбора типа диаграммы, ее легенды, отображения динамичных контекстных подсказок показателей, управление видимостью показателей из легенды.

    +

    Компонента Диаграмма находится в разделе Компоненты - Без категории - Диаграмма (рис.1)

    +

    Свойства

    +

    Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Тип диаграммы позволяет выбрать один из распространенных типов диаграммы
    Допустим выбор типа диаграммы определяет возможность изменения типа диаграммы пользователем “на-лету” во время работы на web-странице в запущенном приложении +
      +
    • значение не определено- по умолчанию
    • +
    • изменение типа диаграммы “на-лету” разрешено
    • +
    • изменение типа диаграммы “на-лету” запрещено
    Легенда предписывает компоненте отображать или скрывать легенду диаграммына web-странице в запущенном приложении +
      +
    • значение не определено- по умолчанию
    • +
    • отображение легенды диаграммы разрешено
    • +
    • отображение легенды диаграммы запрещено
    Позиционирование легенды устанавливает месторасположение легенды диаграммы
    Поле ограничения подгрузки позволяется указать числовое поле, значение которого будет ограничивать число загружаемых данных в диаграмме
    Показывать все значения по оси Х предписывает компоненте отображать все без исключения значения “измерений”, даже если “мера” под такое значение шкалы измерителя отсутствует (не может быть подсчитана). +
      +
    • значение не определено- по умолчанию
    • +
    • отображать все значения “измерений”
    • +
    • отображать только те значения “измерений”, для которых существует (может быть подсчитано) значение “меры”
    +

    Свойство компоненты: Диаграмма. Подгрузка данных

    +

    +

    позволяет задать *Граф сущностей *и взаимосвязи колонок для подгрузки данных в Диаграмму Является обязательным к заполнению и настройке.

    +

    Сущность - это объект с которым работают в графе. В качестве объекта могут быть: таблицы и представления (вью) из базы данных. Понятие сущности не равно понятию таблицы, поскольку одна таблица может быть добавлена в граф несколько раз.

    +

    Скрипт - указывается модуль, реализующий логику построения диаграммы. Установлен по умолчанию, внесение изменений аналитиком не требует

    +

    С описанием настройки Графа сущностей можно ознакомиться в разделе: Настройка Графа сущностей.

    +

    Свойство компоненты: Диаграмма. Настройка

    +

    +

    позволяет настроить отображаемые показатели в Диаграмме.

    +

    Формирование набора этих параметров вкупе со структуройсущности предписывают компоненте автоматически сформировать аналитический агрегирующий запрос, в котором определяется шкала измерений и перечисляются все меры и способ их подсчета.

    +

    Метка - показатель (таблица и колонка из структуры сущности), который будет выступать “измерением” (dimension) в Диаграмме.

    +

    Следует быть уверенным (убедиться), что в колонке значений, которые будут представлены на шкале в качестве измерений, нет ячеек с пустым значением

    +

    Метод агрегирования - не используется

    +

    Наборы данных - формируемый аналитиком список “мер” (measures)и способ их подсчета для отображения по шкале измерений.

    +

    Метка - наименование “меры”, которое будет отображаться во всплывающей подсказке в Диаграмме

    +

    Колонка - таблица и колонка, значения из которой будут обрабатываться в качестве “меры”

    +

    Метод агрегирования - операция по вычислению агрегата над значениями “меры”

    +

    +

    +

    Одним из результатов работы компоненты в приведенной конфигурации будет корректный sql-запрос вида:

    +

    {select “Проекты”.“name”, max(“Список задач”.“task_id”) as “Список задач.task_id”, sum(“Список задач”.“task_id”) as “Список задач.task_id”, count(“Список задач”.“task_id”) as “Список задач.task_id” from “public”.“projects” as “Проекты” left outer join “public”.“tasks” as “Список задач” on “Список задач”.“project_id” = “Проекты”.“project_id” group by “Проекты”.“name”}

    +

    что позволит визуализирвоать , например, столбчатую диаграмму в таком виде:

    +

    +

    на горизонтальной оси размещены “измерения” (наименования проектов), по вертикальной оси в виде столбиков откладываются 3 “меры” (показатели: сумма идентификаторов задач, количество идентификаторов задач, максимальное значение идентификатора задачи).

    +

    При наведении мыши на столбик отображается контекстная подсказка с указанием конкретного “измерения” и отображаемой “меры”, соответствующей высоте столбика.

    +

    Функции

    +

    Настройка фильтрации в таблице и графике для компоненты Диаграмма

    +

    Определить_роли_текущего_пользователя

    +

    Определить права текущего пользователя

    +

    Методические рекомендации по применению

    +

    Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

    + +

    Часто задаваемые вопросы

    + + + + + + + + + + + + + + + + + + + + + +
    Вопрос Ответ
    Как сортируются “измерения” и “меры” в Диаграмме? Можно ли изменить порядок сортировки и следования внутри шкалы измерений и мер? В произвольном порядке. Изменить порядок сортировки (следования) нельзя.
    Можно ли вывести легенду? Да, можно.
    Можно ли после отрисовки страницы с диаграммой в приложении поменять ее тип? Да, можно, в специально предназначенном для этого элементе управления Диаграммой.
    Можно ли скрывать значения и визуальное представление “мер” на Диаграмме ? Да, можно. Клик мыши по наименованию “меры” в легенде диаграммы скрывает визуализацию этой “меры” на Диаграмме.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー_chart-v2.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー_chart-v2.html new file mode 100644 index 0000000..7a6bc4b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー_chart-v2.html @@ -0,0 +1,257 @@ + + + + + + + + Web-BPM Docs – Chart v2 + + + + + + +
    +
    + + + +
    +
    +

    Chart v2

    +

    Назначение

    +

    Chart v2 - отображение графиков.

    +

    Свойства

    +

    Компонента имеет набор общих свойств. Ниже отображены свойства, специфичные только для данной компоненты.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    legendPosition Расположение описания графика. Если не задано, то описание не отображается ‘top’, ‘left’, ‘bottom’, ‘right’
    legendAlign Выравнивание описания графика ‘start’, ‘center’, ‘end’. По умолчанию ‘center’
    loadOnStart Загружать данные при инициализации true, false. По умолчанию - true
    chartType Тип графика. Для типов графиков LINE, BAR, HORIZONTAL_BAR задаётся dataSetServices, для типов PIE, DOUGHNUT задаётся dataSetService LINE, PIE, DOUGHNUT, BAR, HORIZONTAL_BAR
    datasetType Тип подгрузки данных: с агрегацией (AGGREGATION) или нет (STATIC) STATIC, AGGREGATION
    chartType Подтип графика. Сценарий использования - необходимо отобразить столбчатую диаграмму внутри линейной. Основной тип - линейная, подтип - столбчатая LINE, BAR, HORIZONTAL_BAR
    scales Шкалы. По умолчанию шкала по Х и шкала по У создаётся автоматически. Необходимо задавать, если нужно отобразить более 1 шкалы.
    Scale.ScaleId Идентификатор шкалы
    Scale.Position Расположение шкалы
    Scale.Display Отображать или нет шкалу
    Scale.Type TODO:
    Scale.BeginAtZero TODO:
    Scale.Stacked TODO:
    Scale.GridSettings.DrawOnChartArea TODO:
    Scale.TickFormatter Форматирование шкалы TickFormatter
    dataLabel
    dataColumn Колонка с данными
    dataColumnFormatter Тип форматирование данных
    labelColumn Колонка с подписью данных
    labelColumnFormatter Тип форматирование подписи
    backgroundColor Цвет фона
    borderColor Цвет границы
    xAxesId идентификатор шкалы Х. Идентификаторы задаются в scales
    yAxesId идентификатор шкалы У. Идентификаторы задаются в scales
    tension Сглаживание данных. 0 - без сглаживания
    columnSorts Колонки для сортировки данных
    aggregationDataSet.aggregationFunction Функция агрегации. Задаётся только в aggregationDataSet MIN, MAX, AVG, COUNT, SUM
    aggregationDataSet.groupByColumns Колонки группировки. Задаётся только в aggregationDataSet
    hoverRadius Размер точки при наведении
    hoverBackgroundColor Цвет точки при наведении
    noDataText Текст для вывода сообщения на графике при отсутствии данных ‘Нет данных для отображения’
    noDataFont Шрифт текста сообщения ‘20px Arial’
    noDataStyle Стиль текста сообщения ‘rgb(100,100,100)’
    +

    TickFormatter

    +

    Назначение

    +

    Для настройки шкал в ChartV2 есть возможность выбрать TickFormatter, с помощью которого на клиентской части можно настраивать отображение данных в шкале.

    +

    Свойства

    + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Script Форматирование исходных данных для корректного отображения. Форматирование будет применяться к значению шкалы. Принимает один из возможных форматеров (см. раздел Tick Formatters ниже).
    +

    Tick Formatters

    + + + + + + + + + + + + + + + + + + +
    Наименование форматера Назначение форматера Настраиваемые значения
    SuffixFormatter Добавляет до и после значения заданные префикс и суффикс. Prefix, Postfix.
    NumberSuffixFormatter Добавляет до и после значения заданные префикс и суффикс, форматирует число по заданным критериям. Prefix, Postfix, Decimal Delimiter, Decimal Length, Sections Delimiter, Sections Length.
    +

    ChartV2AdditionalElementProvider

    +

    В компоненту ChartV2 есть возможность добавить скрипт, который будет отрисовывать на графике любые дополнительные элементы (напр. количество скрытых дней при нажатии на кнопку “скрыть все”).

    +

    Для того чтобы создать скрипт, необходимо отнаследоваться от класса ChartV2AdditionalElementProvider и реализовать метод addAdditionalElement();

    +

    Прим. реализации, которая добавляет надпись.

    + +
    +
    addAdditionalElement(chartV2: ChartV2): void {
    +  let chart = chartV2.chart;
    +  let ctx = chart.ctx;
    +  let width = chart.width;
    +  let height = chart.height;
    +  ctx.textAlign = "center";
    +  ctx.textBaseline = "middle";
    +  ctx.font = this.font;
    +  ctx.fillStyle = this.style;
    +  ctx.fillText("Some text", width / 2, height / 2);
    +  ctx.restore();
    +  }
    +}
    +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_.html new file mode 100644 index 0000000..b76ad2c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_.html @@ -0,0 +1,152 @@ + + + + + + + + Web-BPM Docs – ミ頒クミーミウムミーミシミシミー ミ寅ーミスムびひー (ミ墟ーミサミオミスミエミームミスム巾ケ ミソミサミーミス) + + + + + + +
    +
    + + + +
    +
    +

    Диаграмма Гантта (Календарный план)

    +

    Диаграмма Гантта (Календарный план) - это компонента, которая используется для иллюстрации плана, графика работ по проекту, визуально показывая пользователю состав работ по проекту, их взаимосвязь и расположение по шкале времени (также известна под названием Диаграммы Гантта)

    +

    Представляет собой отрезки, размещенные на горизонтальной шкале времени. Каждый отрезок соответствует какой-либо задаче. Список задач, составляющих такой план, размещаются по вертикальной шкале. Начало, конец и ширина отрезка на шкале времени соответствуют началу, концу и длительности задачи.

    +

    Компонента Календарный график находится в разделе Компоненты - Без категории - Диаграмма Гантта (рис.1)

    +

    Свойства

    +

    Компонента имеет набор общих свойств.

    +

    Свойство компоненты: Диаграмма Гантта. Подгрузка данных

    +

    +

    позволяет задать Граф сущностей и взаимосвязи колонок для подгрузки данных в Диаграмму Гантта

    +

    Является обязательным к заполнению и настройке.

    +

    Сущность - это объект с которым работают в графе. В качестве объекта могут быть: таблицы и представления (вью) из базы данных. Понятие сущности не равно понятию таблицы, поскольку одна таблица может быть добавлена в граф несколько раз.

    +
      + +
    • + +

      Скрипт - указывается модуль, реализующий логику построения календарного графика. Установлен по умолчанию, внесение изменений аналитиком не требует

      +
    • +
    • + +

      Колонка с идентификатором задач - это колонка главной сущности графа, которая содержит первичный ключ (как правило, идентификатор задачи)

      +
    • +
    • + +

      Колонка с наименованием задач - это колонка той сущности графа, которая содержит наименование задачи для отображения пользователю (как правило, в колонке должно находиться текстовое значение)

      +
    • +
    • + +

      Колонка с датой старта задач - это колонка той сущности графа, которая содержит дату, в которую запланирован старт задачи

      +
    • +
    • + +

      Колонка с датой завершения задач - это колонка той сущности графа, которая содержит дату, в которую запланировано завершение работ по задаче

      +
    • +
    • + +

      Колонка гл. сущн. с идентификатором родительской задачи - это колонка главной сущности графа, которая содержит значение первичного ключа родительской задачи

      +
    • +
    • + +

      Колонка линк. табл. с идентификатором осн. задачи - это колонка линковой таблицы графа сущности, которая содержит значение первичного ключа основной задачи

      +
    • +
    • + +

      Колонка линк. табл. с идентификаторами зависимых задач - это колонка линковой таблицы графа сущности, которая содержит значения первичных ключей тех задач, которые зависят от основной

      +
    • +
    • + +

      Колонка co статусом задач - это колонка той сущности графа, которая содержит формализованное значение статуса задачи:

      +
    • +
    • + +

      “ASSIGNED” - Назначена (заливка бирюзовым цветом)

      +
    • +
    • + +

      “CHECKING” - Требует контроля (заливка желтым цветом)

      +
    • +
    • + +

      “COMPLETED” - Завершена (заливка зеленым цветом)

      +
    • +
    • + +

      “ARCHIVED” - Перемещена в архив (заливка серым цветом)

      +
    • +
    +

    с описанием настройки Графа сущностей можно ознакомиться в разделе: Настройка Графа сущностей

    +

    Свойство компоненты: Диаграмма Гантта. Настройка колонок

    +

    +

    позволяет настроить отображаемые колонки в Диаграмме Гантта с сортировкой данных по конкретному порядку

    +

    с описанием настройки Колонок Таблицы можно ознакомиться в разделе: Настройка колонок Таблицы

    +

    Функции

    +

    Определить_роли_текущего_пользователя

    +

    Определить права текущего пользователя

    +

    Методические рекомендации по применению

    +

    Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

    + +

    Часто задаваемые вопросы

    + + + + + + + + + + + + + + + + + + + + + +
    Вопрос Ответ
    Как сортируются задачи в Диаграмме Гантта? Задачи сортируются по возрастанию значений колонки дата завершения (от самых близких по сроку завершения к самым дальним). Изменить порядок сортировки нельзя.
    Можно ли вывести легенду цветовой дифференциации задач? Нет, нельзя.
    Можно ли на самой диаграмме Гантта изменять продолжительность задачи (сдвигать моменты начала и/или конца) ? Нет, нельзя.
    Можно ли на самой диаграмме Гантта сдвинуть задачу целиком по оси времени, не меняя продолжительности задачи (перетянуть как объект)? Нет, нельзя.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..db61391 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミ寅ーミスムびひー_ミ墟ーミサミオミスミエミームミスム巾ケ_ミソミサミーミス_ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,141 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ頒クミーミウムミーミシミシミー ミ寅ーミスムびひー (ミ墟ーミサミオミスミエミームミスム巾ケ ミソミサミーミス) ミスミー ムムびミーミスミクムミオ? + + + + + + +
    +
    + + + +
    +
    +

    Как задействовать компоненту “Диаграмма Гантта (Календарный план)” на странице?

    +

    Постановка задачи: на пользовательской странице Реестр задач необходимо визуализировать список задач по проекту в виде Календарного плана (Диаграммы Гантта).

    +

    Страница “Реестр задач” должна иметь следующие настройки:

    +
      + +
    • основным элементом страницы должна быть компонента “Диаграмма Гантта (Календарный план)”, в главной сущностью которойдолжна быть назначена таблица “Список задач” (tasks).
    • +
    • необходимо задействовать компоненту Набор фильтров с включенной “живой фильтрацией” и с вложенной в Набор фильтров дочерней компонентой “Фильтр по полю ввода с подбором значения” для указания проекта , по которому следует осуществить отбор записей из списка задач.
    • +
    +

    Решение задачи:

    +

    Предполагается, что страница Реестр задач уже создана бизнес-аналитиком, расположена в проекте и связана с Пользовательской задачей на BPMN-схеме процесса . Для решения поставленной задачи необходимо произвести следующие действия:

    +
      + +
    • добавить внутрь страницы компоненту “Диаграмма Гантта”
    • +
    • в настройках добавленной компоненты перейти к разделу Диаграмма Гантта. Подгрузка данных основная - Источник данных - Граф сущностей и настроить его (рис. 1, рис. 2).
    • +
    +

    Для этого сформировать пул таблиц, колонки из которых будут использоваться при настройке отображаемой в Диаграмме Гантта информации и указать связи между ними.

    +

    + +
    +
    рис.1 Настройка Графа сущностей компоненты
    +
    + +

    Настроить прочие параметры компоненты"Диаграмма Гантта", указав на сущности и колонки, содержащие требуемую информацию.

    +

    + +
    +
    рис.2 Настройка компоненты
    +
    + +
      + +
    • добавить компоненту Набор фильтров с включенной “живой фильтрацией” (рис.4)
    • +
    +

    + +
    +
    рис.4 Добавление Компонента Набор фильтра и его связь с компонентой Диаграмма Гантта
    +
    + +
      + +
    • добавить компоненту Фильтр по полю ввода с подбором значения (рис.5) +

      рис. 5а Настройка компоненты Фильтр по полю ввода с подбором значения

    • +
    +

    + +
    +
    Рис. 5б Настройка компоненты Фильтр по полю ввода с подбором
    +значения
    +
    + +

    + +
    +
    рис. 5в Настройка компоненты Фильтр по полю ввода с подбором значения
    +
    + +

    На этом настройка компоненты закончена, запускаем приложение.

    +

    Результат выполнения задачи:

    +

    После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис. 6)

    +

    +

    Для большей детализации компонент дает возможность изменить масштаб временного промежутка в котором отображается длительность задачи :

    +

    +

    рис.6. Визуальное отображение выполнения условий задачи

    + +
    +
    +

    Attachments:

    +
    + + +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..064d911 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ頒クミーミウムミーミシミシミー_ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,163 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ頒クミーミウムミーミシミシミー ミスミー ムムびミーミスミクムミオ? + + + + + + +
    +
    + + + +
    +
    +

    Как задействовать компоненту “Диаграмма” на странице?

    +

    Постановка задачи: на пользовательской странице Реестр задач необходимо визуализировать количество задач по каждому из проектов в виде Диаграммы, вид которой можно менять динамически .

    +

    Страница “Реестр задач” должна иметь следующие настройки:

    +
      + +
    • основным элементом страницы должна быть компонента “Диаграмма”, главной сущностьюкоторойдолжна быть назначена таблица “Список задач” (tasks).
    • +
    • необходимо задействовать компоненту Набор фильтров с включенной “живой фильтрацией” и с вложенной в Набор фильтров дочерней компонентой “Фильтр по полю ввода с подбором значения” для указания проекта , по которому следует осуществить отбор записей из списка задач.
    • +
    +

    Решение задачи:

    +

    Предполагается, что страница Реестр задач уже создана бизнес-аналитиком, расположена в проекте и связана с Пользовательской задачей на BPMN-схеме процесса . Для решения поставленной задачи необходимо произвести следующие действия:

    +
      + +
    • добавить внутрь страницы компоненту"Диаграмма"
    • +
    • в настройках добавленнойкомпонентыперейти к раздел у Диаграмма .Подгрузка данных - Источник данных - Граф сущностей и настроить его (рис. 1, рис. 2).
    • +
    +

    Для этого сформировать пул таблиц, колонки из которых будут использоваться при настройке отображаемой в Диаграмме информации и указать связи между ними.

    + +
    +
    рис.1 Настройка Графа сущностей компоненты
    +
    + +

    Настроить прочие параметры компоненты"Диаграмма", указав на сущности и колонки, содержащие требуемую информацию.

    + +
    +
    рис.2 Настройка компоненты
    +
    + +
      + +
    • + +

      добавить компоненту Набор фильтровс включенной “живой фильтрацией” (рис.4)

      +

      рис.4 Добавление Компонента Набор фильтра и его связь с компонентой Диаграмма

      +
    • +
    • + +

      добавить 2 компоненты Фильтр по полю ввода с подбором значения для фильтрации по проекту и по исполнителю задачи (рис.5)

      +
    • +
    + +
    + +
    + +

    Фильтр по полю ввода с подбором значения “Фильтр по проекту”

    +
    +
    + +

    Фильтр по полю ввода с подбором значения “Фильтр по исполнителю”

    +

    +

    + +
    +
    рис. 5 Настройка компонент Фильтр по полю ввода с подбором значения
    +
    + +
      + +
    • настроить добавленные компоненты Фильтр по полю ввода с подбором значения для фильтрации (рис.6)
    • +
    + +
    + +

    Фильтр по полю ввода с подбором значения “Фильтр по проекту”

    +
    + +

    Фильтр по полю ввода с подбором значения “Фильтр по исполнителю”

    + +
    +
    + +

    + +
    +
    + +

    +

    Рис. 6 Настройка компонент Фильтр по полю ввода с подбором значения

    +

    На этом настройка компоненты закончена, запускаем приложение.

    +

    Результат выполнения задачи:

    +

    После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что условия задачи соблюдены (рис. 7)

    +

    +

    Сузим массив показателей для формирования визуального представления на Диаграмме :

    +

    + +
    +
    +

    Attachments:

    +
    + + +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ_ミスミー_ムムびミーミスミクムミオ_.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ_ミスミー_ムムびミーミスミクムミオ_.html new file mode 100644 index 0000000..f199c17 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ墟ーミコ_ミキミーミエミオミケムムひイミセミイミームび契ミコミセミシミソミセミスミオミスムびダミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ_ミスミー_ムムびミーミスミクムミオ_.html @@ -0,0 +1,239 @@ + + + + + + + + Web-BPM Docs – ミ墟ーミコ ミキミーミエミオミケムムひイミセミイミームび ミコミセミシミソミセミスミオミスムび ミ榧アムミーミアミセムひコミー ムミセミアム錦ひクミケ ミスミー ムムびミーミスミクムミオ? + + + + + + +
    +
    + + + +
    +
    +

    Как задействовать компоненту “Обработка событий” на странице?

    +

    Постановказадачи: на пользовательской странице Карточка задачи необходимо обеспечить сравнение двух полей с датами (начала и окончания работ) в момент события изменения значения одного из них. Если дата старта окажется больше, чем дата завершения, то вывести диалог с предупреждением, что дата начала выполнения задачи позже даты ее завершения, что само по себе является ошибочным обстоятельством. Если даты заданы верно, то рядом с полями дат вывести в поле с проставленным флагом, что все введено корректно.

    +

    Страница "Карточка задачи " должна иметь следующие настройки:

    +
      + +
    • на странице должны быть размещены 2компоненты Дата без возможности сохранения, компонента Диалог для отображения сообщения о некорректном вводе с компонентой-кнопкой “Ок” и компонента Флаг без возможности сохранения
    • +
    • Компонента Обработка событий, которая реализует алгоритм обработки, описанный в постановке задачи
    • +
    • с базой данных и источниками данных в этом кейсе работать не предполагается,поэтому компоненты с графами сущностей задействованы не будут.
    • +
    +

    Решение задачи:

    +
      + +
    • Добавить на страницу и настроить компоненту Дата для ввода даты начала работ по задаче (рис.1)
    • +
    +

    +

    рис.1 Добавление компоненты Дата и настройка ее основных параметров (дата начала работ по задаче)

    +
      + +
    • Добавить на страницу и настроить компоненту Дата для ввода даты окончания работ по задаче(рис.2)
    • +
    +

    +

    рис.2 Добавлениекомпоненты Датаи настройка ее основных параметров (дата окончания работ по задаче)

    +
      + +
    • Добавить на страницу и настроить компоненту Флаг (рис. 3)
    • +
    +

    +

    рис.3 Добавлениекомпоненты Флаги настройка ее основных параметров (отметка о корректности ввода значений)

    +
      + +
    • Добавить компоненту Диалог и внутрь нее добавить компоненты Text (для описания ошибки) и Кнопка (для закрытия Диалога после ознакомления с ошибкой) (рис.4)
    • +
    +


    +

    +

    рис.4 Добавление компоненты Диалог, Text и Кнопка

    +
      + +
    • Добавить первую компоненту Обработка событий1 и настроить алгоритм проверки дат (рис.5)
    • +
    +

    +

    рис.5 Настройка компоненты Обработка события для выявления ситуации, когда обе даты введены пользователем и при этом расположены в ошибочном порядке

    +

    (с компоненты Флаг снимается галочка, она превращается в невидимую компоненту, пользователю выводится компонента Диалог)

    +
      + +
    • Добавить вторую компоненту Обработка событий2 и настроить алгоритм проверки дат (рис.6)
    • +
    +

    +

    рис.6 Настройка компоненты Обработка события для выявления ситуации, когда обе даты явно введены и при этом расположены в верном порядке

    +

    (выводится компонента Флаг с помеченной галочкой внутри)

    +
      + +
    • Добавить компоненту Обработка событий и настроить реакцию на нажатие кнопки “Ок” в Диалоге, заключающуюся в очищении полей с неправильными значениями дат (рис.7)
    • +
    +

    +

    рис.7 Настройка компоненты Обработка события для выявления ситуации, когда нажата кнопка “Ок” в Диалоге

    +

    (компонента Диалог закрывается,с компоненты Флаг снимается галочка, она превращается в невидимую компоненту, поля с датами очищаются)

    +

    На этом настройка страницы закончена, можно собрать приложение и проверить работу компоненты.

    +

    Результат выполнения задачи:

    +

    После применения изменений на странице, в экранной форме пользовательского приложения, мы видим, что на странице отображаются таблица и блок фильтрации с компонентой “Фильтр по полю ввода с подбором значения” (рис.8 - рис.11)

    + +
    + + + + + + + + + + + + + + + + + + +
    +
    + +

    +
    +
    + +

    +
    +

    рис.8 Открытие страницы.

    + +

    Заполняем первое поле с датой.

    + +

    Ничего не происходит, потому что не выполнены условия ни одной из компонент Обработка событий (видно из анализа Консоли браузера)

    +

    рис. 9 Заполняем второе поле с датой. Порядок дат верный (начало периода раньше, чем окончание)

    + +

    Система помечает флажком компоненту Флаг и переводит ее в видимое состояние, поскольку обнаружено событие изменения второй даты и условия, при которых произошло это событие, выполнены.

    + +

    Консоль браузера сообщает об обнаружении заложенной в Систему аналитиком ситуации и производит соответствующие манипуляции с визуальными компонентами на странице.

    +
    + +
    + + + + + + + + + + + + + + + + + + +
    +
    + +

    +
    +
    + +

    +
    +

    рис.10 Меняем дату во втором поле ввода таким образом, чтобы порядок дат стал ошибочным (начало периода позже , чем окончание).

    + +

    Данное событие и условия, в которых оно возникло, обнаруживается компонентом Обработка событий ,поэтому Система выдает сообщение об ошибочном вводе посредством отображения компоненты Диалог в модальном режиме (весь экранный интерфейс, кроме она диалога, блокируется для пользователя) и ожидает дальнейших действий пользователя.

    + +

    На заднем плане видно, что выставленный на предыдущем этапе флажок корректного ввода пропал с экрана.

    + +

    Консоль браузера подсказывает, что изменения произошли потому, что исполнился заложенный в Систему аналитиком на этапе разработкиалгоритм, который предусматривает вывод диалогового окна, скрытие компоненты, показывающей факт корректного ввода и сброс ее значения в состояние "не отмечено".

    +

    рис.11 Нажали кнопку "Ок" в компоненте Диалог.

    + +

    Данное событие обнаруживается компонентом Обработка событий, поэтому Система скрывает компоненту Диалог, снимает блокировку с экранного интерфейса и очищает обе даты, которые заполнены в ошибочном порядке .

    + +

    Консоль браузера подсказывает, что изменения произошли потому, что исполнился заложенный в Систему аналитиком на этапе разработкиалгоритм, который предусматривает скрытие диалогового окна, скрытие компоненты, показывающей факт корректного ввода и сброс ее значения в состояние "не отмечено", а также очищение значений в полях ввода дат.

    +
    + +
    +
    +

    Attachments:

    +
    + +
    + +

    image2019-4-10_15-37-9.png (image/png)
    + image2019-4-10_15-41-23.png (image/png)
    + image2019-4-10_16-39-56.png (image/png)
    + image2019-4-11_15-37-26.png (image/png)
    + image2019-4-11_15-38-18.png (image/png)
    + image2019-4-10_18-20-12.png (image/png)
    + image2019-4-10_18-22-13.png (image/png)
    + image2019-4-10_18-49-15.png (image/png)
    + image2019-4-10_18-47-41.png (image/png)
    + image2019-4-10_18-48-6.png (image/png)
    + image2019-4-10_18-48-28.png (image/png)
    + image2019-4-10_18-48-42.png (image/png)
    + image2019-4-11_10-34-31.png (image/png)
    + image2019-4-12_17-18-58.png (image/png)
    + image2019-4-12_17-19-53.png (image/png)
    + image2019-4-12_17-21-32.png (image/png)
    + image2019-4-12_17-31-51.png (image/png)
    + image2019-4-12_17-44-33.png (image/png)
    + image2019-4-12_17-45-10.png (image/png)
    + image2019-4-12_17-48-29.png (image/png)
    + image2019-4-12_17-50-13.png (image/png)
    + image2019-4-12_17-50-42.png (image/png)
    + image2019-4-12_18-0-57.png (image/png)
    + image2019-4-12_18-23-10.png (image/png)
    + image2019-4-12_18-23-58.png (image/png)
    + image2019-4-12_18-25-26.png (image/png)
    + image2019-4-12_18-26-42.png (image/png)
    + image2019-4-12_18-33-7.png (image/png)
    + image2019-4-12_18-34-16.png (image/png)
    + image2019-4-12_18-35-29.png (image/png)
    + image2019-4-12_18-35-48.png (image/png)
    + image2019-4-12_18-36-13.png (image/png)
    + image2019-4-17_12-1-35.png (image/png)
    + image2019-4-17_12-4-17.png (image/png)
    + image2019-4-17_12-9-33.png (image/png)
    + image2019-4-17_12-10-16.png (image/png)
    + image2019-4-17_12-16-38.png (image/png)
    + image2019-4-17_12-23-13.png (image/png)
    + image2019-4-17_12-38-33.png (image/png)
    + image2019-4-17_12-56-24.png (image/png)

    +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ斷ームムびミセミケミコミー_ムミクミサム袴びミームミクミク_ミイ_ムひーミアミサミクムミオ_ミク_ミウムミームミクミコミオ_ミエミサム柔ミコミセミシミソミセミスミオミスムび祇ミ頒クミーミウムミーミシミシミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ斷ームムびミセミケミコミー_ムミクミサム袴びミームミクミク_ミイ_ムひーミアミサミクムミオ_ミク_ミウムミームミクミコミオ_ミエミサム柔ミコミセミシミソミセミスミオミスムび祇ミ頒クミーミウムミーミシミシミー.html new file mode 100644 index 0000000..8766d6c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ斷ームムびミセミケミコミー_ムミクミサム袴びミームミクミク_ミイ_ムひーミアミサミクムミオ_ミク_ミウムミームミクミコミオ_ミエミサム柔ミコミセミシミソミセミスミオミスムび祇ミ頒クミーミウムミーミシミシミー.html @@ -0,0 +1,54 @@ + + + + + + + + Web-BPM Docs – ミ斷ームムびミセミケミコミー ムミクミサム袴びミームミクミク ミイ ムひーミアミサミクムミオ ミク ミウムミームミクミコミオ ミエミサム ミコミセミシミソミセミスミオミスムび ミ頒クミーミウムミーミシミシミー + + + + + + +
    +
    + + + +
    +
    +

    Настройка фильтрации в таблице и графике для компоненты Диаграмма

    +

    в таблице для возможности строить запросы с агрегацией используется GridService → GridServiceWithAggregationColumnsImpl

    +

    В FilterGroup накидывается Grid, в Chart добавляется скрипт FilterDelegate.ts, в FilterDelegate.ts накидываем Grid

    +

    при активации фильтрации она будет произведена и в Таблице, и в Графике

    +

    Внимание! часть структуры по которой фильтруется Таблица и часть структуры по которой фильтруется График должны совпадать (название фильтруемой таблицы и колонки)

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ.html new file mode 100644 index 0000000..587bdc2 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミ榧アムミーミアミセムひコミー_ムミセミアム錦ひクミケ.html @@ -0,0 +1,148 @@ + + + + + + + + Web-BPM Docs – ミ榧アムミーミアミセムひコミー ムミセミアム錦ひクミケ + + + + + + +
    +
    + + + +
    +
    +

    Обработка событий

    +

    Назначение

    +

    Обработка событий - это невидимый для пользователя на web странице компонент, представляющий собой визуальный инструмент для аналитика, с помощью которого аналитик выстаивает алгоритм динамического управления функционированием web-страницы, основанный на отслеживании событий, происходящих на ней во время взаимодействия с пользователем в режиме исполнения (runtime mode). Динамическое управление подразумевает анализ вариантов возможных событий и действий пользователя с интерфейсом Системы, проверка условий, в которых происходят эти события и действия, предварительное составление последовательности необходимых манипуляций, которые должна предпринять Система в ответ на каждое из возможных воздействий пользователя.

    +

    Аналитик, используя компонент Обработка событий при проектировании web-страницы, получает в свое распоряжение рычаги управления свойствами, параметрами и настройками, а также значениями визуальных компонент, которые первоначально задаются в Инспекторе редактора страниц. Кроме того, компонент позволяет использовать скрытые в Инспекторе методы управления компонентами.

    +

    Компонента может располагаться в любом удобном для аналитика месте в составе дерева компонентов web странице.

    +

    Компонента Обработка событий находится в разделе Компоненты - Без категории - Обработка событий.

    +

    Свойства

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Когда Позволяет указать событие (перечень событий) которые нужно отследить Системе на экранной форме. +

    Добавление каждого из возможных событий осуществляется нажатием на кнопку и перетаскиваем соответствующего визуального компонента из иерархии страницы в появившееся поле. Так происходит связывание процесса ожидания события с конкретной компонентой, от которой это событие ожидается.

    +

    После указания субъекта события (компоненты из структуры страницы), следует указать какое именно событие от выбранной компоненты следует ожидать Системе - в следующем открывшемся поле выбрать это событие из списка всех возможных событий этой компоненты. Если добавлено несколько событий, то они автоматически соединяются между собой оператором ИЛИ (то есть система отслеживает появление хотя бы одного из них) и поменять этот оператор соединения событий нельзя.

    Если Позволяет задать условия, которые необходимо проверить системе при срабатывании механизма слежения за предписанным в предыдущем пункте событием. +

    Принцип формирования каждого конкретного условия идентичен принципу формирования события, описанному в предыдущем пункте. Также появляется поле для перетаскивания из дерева компонент страницы той компоненты, условие по которой требует проверки, а затем в следующем окне из предустановленного списка выбирается настройка, параметр, свойство или значение компоненты, которые необходимо проверить.

    +

    Поскольку каждое условие чаще всего задается для сравнения текущего состояния компоненты с каким то заранее продуманным значением, то конструктор условий позволяет задать значение для сравнения либо явно (числом, строкой и т.д.), либо сослаться на значение другой компоненты на странице, для чего снова показывает поле, в которое можно перетащить из дерева другой интересующий компонент и так же воспользоваться методом для получения уже его значения для сравнения.

    +

    Как правило, для получения значений текущей настройки, параметра, свойства или фактического значения используются методы компонент, которые перечисляются в предлагаемом списке.

    При визуальном формировании условия Система позволяет указать оператор сравнения между двумя значениями, при этом предлагаются операторы сравнения, релевантные используемым типам данных. Значение, с которым происходит сравнивание, может быть выбрано одним из трех типов: +
      +
    • статичное (аналитик сам указывает точное значение)
    • +
    • объект (аналитик накидывает дополнительно компоненту и метод, из которого будет получено это значение)
    • +
    • переменная процесса (аналитик дополнительно указывает переменную процесса, из которой будет получено это значение)
    +

    Визуальный конструктор позволяет аналитику выстраивать условия любой сложности и вложенности, разделять условия проверок на отдельные группы и явно выбирать оператор соединения как групп между собой, так и отдельных условий в каждой группе.

    +

    Формирование условий может и не выполняться при настройке, тогда Система при обнаружении события сразу перейдет в секции “Тогда” визуального конструктора алгоритма.

    Тогда +

    позволяет задать последовательность действий с одной или несколькими компонентами в случае, когда случилось отслеживаемое событие и выполнены заданные выше условия проверки вмомент происхождения события.

    +

    Если условия проверки не заданы, то Система сразу после обнаружения факта совершения ожидаемого события выполняет действия, описанные в этом пункте.

    +

    Принцип формирования каждого конкретного действия в списке действий идентичен принципу формирования события, описанному в первом пункте. Также появляется поле для перетаскивания из дерева компонент страницы той компоненты, над которой следует провести определенную операцию, а затем в следующем окне из предустановленного списка выбирается метод, который необходимо применить к компоненте и значение, которое является входящим аргументом для этого метода.Значение, которое передается в выбранный метод, может быть выбрано одним из трех типов:

    +
      +
    • статичное (аналитик сам указывает точное значение)
    • +
    • объект (аналитик накидывает дополнительно компоненту и метод, из которого будет получено это значение)
    • +
    • переменная процесса (аналитик дополнительно указывает переменную процесса, из которой будет получено это значение)
    +

    Все перечисленные в списке этого пункта действия выполняются через оператор "И", то есть выполняется каждое из заложенных действий. Изменить этот оператор соединения действий нельзя.

    +

    Например, “Числовое поле”. “Задать видимость” == “True”

    +

    Последовательность исполнения Системой инструкций в данном разделе не всегда соответствует порядку их расположения в конструкторе. В общем случае, порядок выполнения инструкций выбирается браузером произвольно.

    Иначе +

    позволяет задать последовательность действий с одной или несколькими компонентами в случае, когда случилось отслеживаемое событие, а набор условий, заданных выше, в момент происхождения события не является истинным.

    +

    Принцип формирования каждого конкретного действия в списке действий идентичен принципу формирования события, описанному в предыдущем пункте. Также появляется поле для перетаскивания из дерева компонент страницы той компоненты, над которой следует провести определенную операцию, а затем в следующем окне из предустановленного списка выбирается метод, который необходимо применить к компоненте и значение, которое является входящим аргументом для этого метода.Значение, которое передается в выбранный метод, может быть выбрано одним из трех типов:

    +
      +
    • статичное (аналитик сам указывает точное значение)
    • +
    • объект (аналитик накидывает дополнительно компоненту и метод, из которого будет получено это значение)
    • +
    • переменная процесса (аналитик дополнительно указывает переменную процесса, из которой будет получено это значение)
    +

    Все перечисленные в списке этого пункта действия выполняются через оператор “И”, то есть выполняется каждое из заложенных действий. Изменить этот оператор соединения действий нельзя.

    +

    Последовательность исполнения Системой инструкций в данном разделе не всегда соответствует порядку их расположения в конструкторе. В общем случае, порядок выполнения инструкций выбирается браузером произвольно.

    +

    Функции

    +

    Определить роли текущего пользователя

    +

    Определить права текущего пользователя

    +

    Методические рекомендации по применению

    +

    Пошаговые инструкции по применению компонента в типовых задачах Вы можете найти в разделах:

    + +

    Другое

    +

    Для включения логирования ActionController в prod сборке приложения необходимо выполнить команду в консоли браузера

    +

    window.dev_mode=true;

    +

    Часто задаваемые вопросы

    + + + + + + + + + + + + + + + + + + + + + +
    Вопрос Ответ
    В чем преимущества и гибкость компоненты Обработка событий? С использованием совокупности компонент Обработка событий, расположенных на странице,страница сама по себе может стать самостоятельной микросистемой (подмодулем) со своей логикой работы, встраивающейся в общую логику всей системы. Визуальное представление возможности строить алгоритмы посредством нескольких кликов манипулятором “мышь” и перетаскиванием нужных компонентов из иерархии страницы позволяет аналитику избежать необходимости привлечения писателей программного кода для “оживления” страницы. После сборки и запуска приложения платформа самапревратит заданные визуально алгоритмы в соответствующий код, который будет исполняться браузером пользователя.
    Существует ли возможность задать порядок рассмотрения и исполнения Системой алгоритмов из разных компонентов Обработка событий между собой? Нет, нельзя.
    Можно ли поставить рассмотрение и исполнение алгоритма из одного компонента Обработка событий в зависимость от алгоритма из другого компонента Обработка событий? Нет, нельзя.
    Как отследить исполнение и понять какие компоненты Обработка событий сработали на странице и по какому алгоритму они сработали Следует открыть в браузере “Инструменты разработчика” (обычно клавиша F12), перейти на вкладку “Консоль” и изучить расположенные там записи.В консоль выводятся информация ТОЛЬКО ОБ ОТРАБОТАВШИХ компонентах Обработка событий (Условия из раздела ЕСЛИ выполнились). Соответственно, выводится Satisfied condition for ActionController если выполнился раздел ТОГДА и Not satisfied condition for ActionController если раздел ИНАЧЕ.
    +

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミミーミキミスム巾オ_ミコミセミシミソミセミスミオミスムび.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミミーミキミスム巾オ_ミコミセミシミソミセミスミオミスムび.html new file mode 100644 index 0000000..da1097b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/uncategorized/ミミーミキミスム巾オ_ミコミセミシミソミセミスミオミスムび.html @@ -0,0 +1,52 @@ + + + + + + + + Web-BPM Docs – ミ「ミーミアミサミクムム + + + + + + +
    +
    + + + +
    +
    +

    Таблицы

    +

    Компоненты - TODO Calendar - IFrame - ValidationController - Диаграмма - Диаграмма Chart - Диаграмма Гантта (Календарный план) - Меню - Меню. Группа - Меню. Элемент - Обработка событий - HyperLink - InnerHtml

    +

    Функции - AC. Методы объектов страницы - Condition Operation

    +
    +
    +
    +
    +
    +
    +

    © 2022 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ漬コミサム紗ミクムび契ミイム錦ミクムミサミオミスミクミオ_ミシミームひオミシミームひクムミオムミコミクム_ミセミソミオムミームミクミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ漬コミサム紗ミクムび契ミイム錦ミクムミサミオミスミクミオ_ミシミームひオミシミームひクムミオムミコミクム_ミセミソミオムミームミクミケ.html new file mode 100644 index 0000000..28e10e3 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ漬コミサム紗ミクムび契ミイム錦ミクムミサミオミスミクミオ_ミシミームひオミシミームひクムミオムミコミクム_ミセミソミオムミームミクミケ.html @@ -0,0 +1,63 @@ + + + + + + + + Web-BPM Docs – ミ漬コミサム紗ミクムび ミイム錦ミクムミサミオミスミクミオ ミシミームひオミシミームひクムミオムミコミクム ミセミソミオムミームミクミケ + + + + + + +
    +
    + + + +
    +
    +

    Включить вычисление математических операций

    +

    Функция, которая не имеет настраиваемых аналитиком параметров, но будучи задействованной, позволяет осуществить одну из математических операций (сложение, вычитание, умножение, деление) во время работы приложения (in runtime mode). Применима к компонентам, оперирующим числами - Числовое поле, Денежное поле. Результат вычисления помещает в тот компонент, на который была добавлена, замещая находившее там прежде значение. Математические действия возможны только с 2 аргументами.

    +

    Она относится к той группе функций, чья функциональность применяетсяи может быть полезной не сразу после добавленияв исходную компоненту, а только при последующем использовании в компоненте “Обработка событий”, когда у исходной компоненты появляется нескольконовых доступных методов при конструировании алгоритма обработки событий на web-странице. Например, для такого паттерна обработки: ‘ЕСЛИ значение в одном из числовых полей изменилось ТО к значению во втором числовом поле прибавить измененное значение из первого числового поля’

    +

    +

    Рис.1 Активация функции на компоненте с первым аргументом

    +

    +

    Рис.2 Второй аргумент

    +

    +

    Рис. 3 Пример обработки события изменения значения второго аргумента, в результате которого вычисляется сумма аргументов (появился новый метод Сложить; у исходной компоненты, доступны также методы Вычесть, Умножить, Разделить )

    +

    После запуска web-приложения (in runtime mode) вносим значение в поле “Аргумент 1”, затем в момент внесения значения в поле “Аргумент 2” , значение в поле"Аргумент 1" изменяется на значение суммы (“Аргумент 1” + “Аргумент 2”), в консоли браузера можно наблюдать сообщение о срабатывании компоненты Обработка событий, которое показывает выполненное функцией действие.

    +

    +

    Рис 4. Вносим значение в поле Аргумент 1

    +

    +

    Рис.5 Функция рассчитывает сумму аргументов

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ頒セミアミーミイミクムび契ムムびミセミコムダミコ_ミキミスミームミオミスミクム酸ミイ_ムひオミコムτ禍オミシ_ミソミセミサミオ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ頒セミアミーミイミクムび契ムムびミセミコムダミコ_ミキミスミームミオミスミクム酸ミイ_ムひオミコムτ禍オミシ_ミソミセミサミオ.html new file mode 100644 index 0000000..1787182 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ頒セミアミーミイミクムび契ムムびミセミコムダミコ_ミキミスミームミオミスミクム酸ミイ_ムひオミコムτ禍オミシ_ミソミセミサミオ.html @@ -0,0 +1,63 @@ + + + + + + + + Web-BPM Docs – ミ頒セミアミーミイミクムび ムムびミセミコム ミコ ミキミスミームミオミスミクム ミイ ムひオミコムτ禍オミシ ミソミセミサミオ + + + + + + +
    +
    + + + +
    +
    +

    Добавить строку к значению в текущем поле

    +

    Функция, которая не имеет настраиваемых аналитиком параметров, но будучи задействованной, позволяет дописать в конец текстового значения одной компоненты текстовое значение другой компоненты во время работы приложения (in runtime mode). Применима к компоненте, оперирующей строками, - Текстовое поле. Результат объединения строк помещает в тот компонент, на который была добавлена, замещая находившее там прежде значение. Функция добавления строки к значению в текущем поле может оперировать только с 2 аргументами.

    +

    Она относится к той группе функций, чья функциональность применяется и может быть полезной не сразу после добавленияв исходную компоненту, а только при последующем использовании в компоненте “Обработка событий”, когда у исходной компоненты появляется нескольконовых доступных методов при конструировании алгоритма обработки событий на web-странице. Например, для такого паттерна обработки: ’ЕСЛИ значение в одном из текстовых полей изменилось ТО в конец значения во втором текстовом поле добавить строковое значение из первого числового поля.

    +

    +

    Рис.1 Активация функции на компоненте с первой строкой

    +

    +

    Рис.2 Второе строковое значение

    +

    +

    Рис. 3 Пример обработки события изменения значения string2, в результате которого формируется строка конкатенацией строк string1 и string2 (появился новый метод Добавить строку у исходной компоненты)

    +

    После запуска web-приложения (in runtime mode) вносим значение в поле “Строка 1”, затем в момент внесения значения в поле “Строка 2”, значение в поле"Строка 1" изменяется на конкатенированное значение полей (“Строка 1” + “Строка 2”), в консоли браузера можно наблюдать сообщение о срабатывании компоненты Обработка событий, которое показывает выполненное функцией действие.

    +

    +

    Рис 4. Вносим значение в поле “Строка 1”;

    +

    +

    Рис.5 Функция соединяется строки

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミクミキ_ミソミオムミオミシミオミスミスミセミケ_ミソムミセムミオムムミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミクミキ_ミソミオムミオミシミオミスミスミセミケ_ミソムミセムミオムムミー.html new file mode 100644 index 0000000..ca8a540 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミクミキ_ミソミオムミオミシミオミスミスミセミケ_ミソムミセムミオムムミー.html @@ -0,0 +1,78 @@ + + + + + + + + Web-BPM Docs – ミ厘ーミソミセミサミスミクムび ミキミスミームミオミスミクミオミシ ミクミキ ミソミオムミオミシミオミスミスミセミケ ミソムミセムミオムムミー + + + + + + +
    +
    + + + +
    +
    +

    Заполнить значением из переменной процесса

    +

    Назначение

    +

    Функция, которая позволяет получить значение из указанной аналитиком переменной процесса и заполнить визуальный компонент ‘значением по умолчанию’.

    +

    В платформе существуютследующие возможные способы работы со значениями по умолчанию:

    +
      + +
    1. из колонки таблицы, указанной в структуре сущности родительской (по отношению к текущему) компоненты-контейнера (например, компоненты Форма, параметр Подгрузка данных по умолчанию)
    2. +
    3. из колонки таблицы, указанной в собственной, индивидуальной, структуре сущностей, принадлежащей текущей компоненте.
    4. +
    5. из переменной процесса (для этого следует воспользоваться обособленной функцией Заполнить значением из переменной процесса, которая и добавляется в компоненту и конфигурируется отдельно).
    6. +
    7. заполнить атрибут ‘Значение по умолчанию’ в основных параметрах любого визуального компонента.
    8. +
    +

    Функция Заполнить значением из переменной процесса позволяет оперировать алгоритмом из п.3

    +

    +

    Настройка

    + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Заполнить значением из переменной процесса Формирует список всех переменных процесса и выводит в виде выпадающего списка для выбора аналитиком. В процессе работы приложения заполняет значением выбранной переменной ту визуальную компоненту, для которой функция была активирована
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム.html new file mode 100644 index 0000000..784c873 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム.html @@ -0,0 +1,115 @@ + + + + + + + + Web-BPM Docs – ミ厘ーミソミセミサミスミクムび ミキミスミームミオミスミクミオミシ ミソミセ ムσシミセミサムミーミスミクム + + + + + + +
    +
    + + + +
    +
    +

    Заполнить значением по умолчанию

    +

    Назначение

    +

    Функция, которая позволяет настроить параметры и осуществить запрос данных для заполнения компоненты значением по умолчанию.

    +

    В платформе существуютследующие возможные способы работы со значениями по умолчанию:

    +
      + +
    1. из колонки таблицы, указанной в структуре сущности родительской (по отношению к текущему) компоненты-контейнера (например, компоненты Форма, параметр Подгрузка данных по умолчанию)
    2. +
    3. из колонки таблицы, указанной в собственной, индивидуальной, структуре сущностей, принадлежащей текущей компоненте.
    4. +
    5. из переменной процесса (для этого следует воспользоваться обособленной функцией Заполнить значением из переменной процесса, которая и добавляется в компоненту и конфигурируется отдельно).
    6. +
    7. заполнить атрибут ‘Значение по умолчанию’ в основных параметрах любого визуального компонента.
    8. +
    +

    Функция Заполнить значением по умолчанию позволяет оперировать алгоритмами из пп.1 и 2.

    +

    +

    При выборе варианта “Из колонки” подгрузка значения по умолчанию осуществляется по алгоритму из п.1

    +

    При выборе варианта “Из сервиса” подгрузка значения по умолчанию осуществляется по алгоритму из п.2

    +

    Настройка

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Тип подгрузки Наименование параметра Назначение параметра Принимаемые значения
    Из колонки Колонка Позволяет указать таблицу и колонку ‘структуры сущности по умолчанию’ родительской компоненты-контейнера, из которой следует взять значение для текущей компоненты ‘Таблица1’ в этом случае является элементом ‘структуры сущностей по умолчанию’ графа (параметр Подгрузка данных по умолчанию) родительской компоненты Форма
    Из сервиса Сервис Описывает запрос к базе данных, результаты которого позволяют наполнить вложенные видимые компоненты’значениями по умолчанию’из базы данных при открытии веб-страницы приложения. +
      +
    • с помощью визуального конструктора запросов позволяет задать Граф сущностей, т.е. указать объекты базы данных и взаимосвязи между ними для получения и отображенияна веб-странице информации по умолчанию, но не ее сохранения.
    • +
    • с помощью параметра Переменная процесса с идентификатором позволяет ограничить результаты полученного запроса единственным идентификатором смысловой единицы создаваемого интерфейса.
    Сервис Скрипт Скрипт автоматически выставляется по умолчанию, указывает платформе, что ‘значение по умолчанию’ для текущей компоненты следует получить из собственного запроса к базе данных
    Источник данных Скрипт предписывает использовать визуальный конструктор для построения запроса Единственный возможный вариант, выставлен по умолчанию
    Граф сущностей Граф сущностей позволяет с помощью визуального конструктора сформировать набор объектов базы данных, указать взаимосвязи между ними и\или дополнительные условия, тем самым подготовить запрос в базу данных. При подгрузке данных сформированный запрос отрабатывает как Select-запрос. ‘Таблица2’ в этом случае является элементом собственной структуры сущностей графа текущей компоненты
    Заполнить из колонки Позволяет указать таблицу и колонку собственной структуры сущности текущей компоненты, из которой следует взять ‘значение по умолчанию’
    Переменная процесса с идентификатором Позволяет выбрать из списка переменную процесса, содержащую в себе идентификатор сущности. Список формируется автоматически из всех переменных используемых в BPMN-процессе. Является ограничивающим значением запроса (в секции WHERE primary_id = ), построенного в визуальном конструкторе параметра Граф сущностей. Благодаря этому ограничению, источник данных выбирает атрибуты единственной смысловой сущности создаваемого интерфейса. task_id
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html new file mode 100644 index 0000000..4e129cc --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html @@ -0,0 +1,83 @@ + + + + + + + + Web-BPM Docs – ミ厘ーミソミセミサミスミクムび ミキミスミームミオミスミクミオミシ ミソミセ ムσシミセミサムミーミスミクム. ミ渙セミソミセミサミスム紹オミシム巾ケ ムミソミクムミセミコ ミキミーミイミクムミクミシム錦 ミキミーミソミクムミオミケ + + + + + + +
    +
    + + + +
    +
    +

    Заполнить значением по умолчанию. Пополняемый список зависимых записей

    +

    Назначение

    +

    Функция, которая позволяет настроить параметры и осуществить запрос данных для заполнения значениями по умолчанию полей компоненты Пополняемый список зависимых записей.

    +

    Функция Заполнить значением по умолчанию должна быть задействована и настроенана компоненте “Редактируемая таблица”, входящей в состав сложнойкомпоненты Пополняемый список зависимых записей. При этом, на вышележащей компоненте Форма скрипт Подгрузка значений по умолчанию должен быть активирован (но может быть не настроен).

    +

    Результатом исполнения функции Заполнить значением по умолчанию является одно или несколько значений, которыми предзаполняется компонента “Редактируемая таблица”, входящая в состав сложной компоненты Пополняемый список зависимых записей, и отображающая список тех строк, которыми будет пополнена связанная с основной таблицей компоненты Форма таблица.

    +

    В этом основное отличие этой функции от аналогичной функции, используемой для запроса ‘значений по умолчанию’ обычных визуальных компонентов, но оперирующей только одним значением.

    +

    Настройка

    + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Тип подгрузки единственное возможное значение, выставляется по умолчанию. Описывает запрос к базе данных, результаты которого позволяют наполнить компоненту Редактируемая таблица ’значениями по умолчанию’из базы данных при открытии веб-страницы приложения. С помощью визуального конструктора запросов позволяет задать Граф сущностей т.е. указать объекты базы данных и взаимосвязи между ними для получения и отображенияна веб-странице информации по умолчанию но не ее сохранения
    Скрипт Скрипт автоматически выставляется по умолчанию, указывает платформе, что ‘значение по умолчанию’ для текущей компоненты следует получить из собственного запроса к базе данных
    Граф сущностей позволяет с помощью визуального конструктора сформировать набор объектов базы данных, указать взаимосвязи между ними и\или дополнительные условия, тем самым подготовить запрос в базу данных. При подгрузке данных сформированный запрос отрабатывает как Select-запрос. +
      +
    1. Переносим манипулятором Мышь таблицу, которая предоставит строки для подгрузки ‘значений по умолчанию’ в поле графа сущности.
    2. +
    3. Переименовываем (не обязательно, но для понимания) в сущность с именем test_default_eotm. Наименование сущности в этом пункте должно строго соответствовать наименованию этой же сущности в графе сущности функции Подгрузка данных компоненты “Редактируемая таблица”;, входящей в состав сложной компоненты Пополняемый список зависимых записей
    4. +
    5. В настройках фильтрации сущности test_default_eotm формируем условие, ограничивающее то количество выбираемых из сущности записей, которое мы хотим увидеть в ‘значениях, подгруженных по умолчанию’. В примере на скриншоте ограничение наложено на поле с первичным ключом ID (для очевидности), а в реальной жизни, как правило, ограничения накладываются, исходя из сопоставления значений переменной процесса и одной из колонок. Таким образом, из всех возможных записей в сущности test_default_eotm, система отберет в качестве ‘значений по умолчанию’ только те записи, id которых меньше числа 5.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html new file mode 100644 index 0000000..622dad7 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘ーミソミセミサミスミクムび契ミキミスミームミオミスミクミオミシ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ。ミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html @@ -0,0 +1,93 @@ + + + + + + + + Web-BPM Docs – ミ厘ーミソミセミサミスミクムび ミキミスミームミオミスミクミオミシ ミソミセ ムσシミセミサムミーミスミクム. ミ。ミソミクムミセミコ ミキミーミイミクムミクミシム錦 ミキミーミソミクムミオミケ + + + + + + +
    +
    + + + +
    +
    +

    Заполнить значением по умолчанию. Список зависимых записей

    +

    Назначение

    +

    Функция, которая позволяет настроить параметры и осуществить запрос данных для заполнения значениями по умолчанию полей компоненты Список зависимых записей.

    +

    Функция Заполнить значением по умолчанию должна быть задействована на обоих компонентах “Связанная таблица”, а настроена только на основной компоненте “Связанная таблица”, входящей в состав сложной компоненты Список зависимых записей.

    +

    +

    Активация и настройка функции на первой компоненте “Связанная таблица”

    +

    +

    Активация без настройки функции на второй компоненте “Связанная таблица”

    +

    При этом, на вышележащей компоненте Форма функция Подгрузка значений по умолчанию должна быть активирована (но может быть не настроена).

    +

    +

    Результатом исполнения функции Заполнить значением по умолчанию является одно или несколько значений, которыми предзаполняются основная компонента “Связанная таблица”, входящая в состав сложной компоненты Список зависимых записей, и отображающая список только тех строк из списка всех доступных строк, которые выбраны пользователем .

    +

    В этом основное отличие этой функции от аналогичной функции, используемой для запроса ‘значений по умолчанию’ обычных визуальных компонентов, но оперирующей только одним значением.

    +

    Настройка

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Тип подгрузки единственное возможное значение, выставляется по умолчанию Описывает запрос к базе данных, результаты которого позволяют наполнить компоненту Связанная таблица ’значениями по умолчанию’из базы данных при открытии веб-страницы приложения. С помощью визуального конструктора запросов позволяет задать Граф сущностей, т.е. указать объекты базы данных и взаимосвязи между ними для получения и отображенияна веб-странице информации по умолчанию, но не ее сохранения.
    Скрипт Скрипт автоматически выставляется по умолчанию, указывает платформе, что ‘значение по умолчанию’ для текущей компоненты следует получить из собственного запроса к базе данных
    Граф сущностей позволяет с помощью визуального конструктора сформировать набор объектов базы данных, указать взаимосвязи между ними и\или дополнительные условия, тем самым подготовить запрос в базу данных. При подгрузке данных сформированный запрос отрабатывает как Select-запрос. +
      +
    1. Переносим манипулятором Мышь ‘таблицу с доступными записями’ в поле структуры сущности
    2. +
    3. Переименовываем (не обязательно, но для понимания) в сущность с именем default_for_mtm
    4. +
    5. В настройках фильтрации сущности default_for_mtm формируем условие, ограничивающее то количество предустановленных записей, которое мы хотим увидеть в ‘значениях, подгруженных по умолчанию’. В примере на скриншоте ограничение наложено на поле с первичным ключом ID (для очевидности), а в реальной жизни, как правило, ограничения накладываются, исходя из сопоставления значений переменной процесса и одной из колонок.Таким образом, из всех доступных записей в таблице сотрудников, система отберет в качестве ‘значений по умолчанию’ только те записи, id которых меньше числа 20.
    Первичный ключ таблицы доступных значений Позволяет указать таблицу доступных записей (справочник) и её колонку с первичным ключом, по которым будут отобраны записи, удовлетворяющие условию в структуре сущности для предзаполнения по ним ‘значений по умолчанию’ таблицы выбранных записей
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘スミームミオミスミクミオ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘スミームミオミスミクミオ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html new file mode 100644 index 0000000..0ce0544 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ厘スミームミオミスミクミオ_ミソミセ_ムσシミセミサムミーミスミクム酸ミ渙セミソミセミサミスム紹オミシム巾ケ_ムミソミクムミセミコ_ミキミーミイミクムミクミシム錦_ミキミーミソミクムミオミケ.html @@ -0,0 +1,83 @@ + + + + + + + + Web-BPM Docs – ミ厘ーミソミセミサミスミクムび ミキミスミームミオミスミクミオミシ ミソミセ ムσシミセミサムミーミスミクム. ミ渙セミソミセミサミスム紹オミシム巾ケ ムミソミクムミセミコ ミキミーミイミクムミクミシム錦 ミキミーミソミクムミオミケ + + + + + + +
    +
    + + + +
    +
    +

    Заполнить значением по умолчанию. Пополняемый список зависимых записей

    +

    Назначение

    +

    Функция, которая позволяет настроить параметры и осуществить запрос данных для заполнения значениями по умолчанию полей компоненты Пополняемый список зависимых записей.

    +

    Функция Заполнить значением по умолчанию должна быть задействована и настроенана компоненте “Редактируемая таблица”, входящей в состав сложнойкомпоненты Пополняемый список зависимых записей. При этом, на вышележащей компоненте Форма скрипт Подгрузка значений по умолчанию должен быть активирован (но может быть не настроен).

    +

    Результатом исполнения функции Заполнить значением по умолчанию является одно или несколько значений, которыми предзаполняется компонента “Редактируемая таблица”, входящая в состав сложной компоненты Пополняемый список зависимых записей, и отображающая список тех строк, которыми будет пополнена связанная с основной таблицей компоненты Форма таблица.

    +

    В этом основное отличие этой функции от аналогичной функции, используемой для запроса ‘значений по умолчанию’ обычных визуальных компонентов, но оперирующей только одним значением.

    +

    Настройка

    + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Тип подгрузки единственное возможное значение, выставляется по умолчанию. Описывает запрос к базе данных, результаты которого позволяют наполнить компоненту Редактируемая таблица ’значениями по умолчанию’из базы данных при открытии веб-страницы приложения. С помощью визуального конструктора запросов позволяет задать Граф сущностей т.е. указать объекты базы данных и взаимосвязи между ними для получения и отображенияна веб-странице информации по умолчанию но не ее сохранения
    Скрипт Скрипт автоматически выставляется по умолчанию, указывает платформе, что ‘значение по умолчанию’ для текущей компоненты следует получить из собственного запроса к базе данных
    Граф сущностей позволяет с помощью визуального конструктора сформировать набор объектов базы данных, указать взаимосвязи между ними и\или дополнительные условия, тем самым подготовить запрос в базу данных. При подгрузке данных сформированный запрос отрабатывает как Select-запрос. +
      +
    1. Переносим манипулятором Мышь таблицу, которая предоставит строки для подгрузки ‘значений по умолчанию’ в поле графа сущности.
    2. +
    3. Переименовываем (не обязательно, но для понимания) в сущность с именем test_default_eotm. Наименование сущности в этом пункте должно строго соответствовать наименованию этой же сущности в графе сущности функции Подгрузка данных компоненты “Редактируемая таблица”;, входящей в состав сложной компоненты Пополняемый список зависимых записей
    4. +
    5. В настройках фильтрации сущности test_default_eotm формируем условие, ограничивающее то количество выбираемых из сущности записей, которое мы хотим увидеть в ‘значениях, подгруженных по умолчанию’. В примере на скриншоте ограничение наложено на поле с первичным ключом ID (для очевидности), а в реальной жизни, как правило, ограничения накладываются, исходя из сопоставления значений переменной процесса и одной из колонок. Таким образом, из всех возможных записей в сущности test_default_eotm, система отберет в качестве ‘значений по умолчанию’ только те записи, id которых меньше числа 5.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ墟ーミコ-ミエミセミアミーミイミクムび-ム尉ミクムムび-ミイ-ミシミセミエムσサム-ミソミオムミームひク-JasperReports.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ墟ーミコ-ミエミセミアミーミイミクムび-ム尉ミクムムび-ミイ-ミシミセミエムσサム-ミソミオムミームひク-JasperReports.html new file mode 100644 index 0000000..1afaaaa --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ墟ーミコ-ミエミセミアミーミイミクムび-ム尉ミクムムび-ミイ-ミシミセミエムσサム-ミソミオムミームひク-JasperReports.html @@ -0,0 +1,56 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
    +
    + + + +
    +
    +

    Если при разработке шаблона использовались шрифты, которых нет в ОС сервера приложений, то при формировании печатной формы будет возникать ошибка. Чтобы этого избежать необходимо выполнить шаги:

    +
      + +
    1. Экспортировать шрифт по инструкции. На выходе будет файл с расширением jar.
    2. +
    3. Скопировать полученный файл в папку проекта: $project\extensions\jasper-fonts\src\main\resources\font\.
    4. +
    5. Собрать и запустить приложение.
    6. +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ斷ームムびミセミケミコミー_ミ酉ミームミー_ムムτ禍スミセムムひオミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ斷ームムびミセミケミコミー_ミ酉ミームミー_ムムτ禍スミセムムひオミケ.html new file mode 100644 index 0000000..244d9c0 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ斷ームムびミセミケミコミー_ミ酉ミームミー_ムムτ禍スミセムムひオミケ.html @@ -0,0 +1,144 @@ + + + + + + + + Web-BPM Docs – ミ斷ームムびミセミケミコミー ミ酉ミームミー ムムτ禍スミセムムひオミケ + + + + + + +
    +
    + + + +
    +
    +

    Настройка Графа сущностей

    +

    Назначение

    +

    Граф сущностей - это визуальный конструктор запросов, с помощью которого бизнес-аналитик имеет возможность указать объекты базы данных, условия и взаимосвязи между ними для получения и отображения информации на странице пользовательского приложения, и/или её сохранения.

    +

    В качестве сущностей, заданных в графе, могут выступать таблицы и представления (view) базы данных. Важно отметить, что понятие сущности не равно понятию таблицы, поскольку одна таблица может быть добавлена в граф сущностей несколько раз.

    +

    Необходимость настройки Графа сущностей возникает при использовании компонент, логика работы которых предусматривает формирование источника данных в виде SQL-запроса, например, Таблица, Форма и другие.

    +

    В зависимости от используемой компоненты и логики её работы, Граф сущностей использует три типа оператора SQL-запросов к базе данных:

    +
      + +
    • SELECT- оператор запроса,который возвращает набор данных (выборку) из базы данных;
    • +
    • INSERT- оператор запроса, который осуществляет добавление новых записей в таблицу базы данных;
    • +
    • UPDATE- оператор запроса, который изменяет имеющиеся данные в таблице базы данных
    • +
    +

    Свойства

    +

    Для того, чтобы перейти к заполнению Графа сущностей настраиваемой компоненты, необходимо во встроенных функциях элемента перейти к разделу Подгрузка данных - Источник данных - Граф сущностей и нажать на кнопку (три точки). По нажатию на кнопку отобразится окно Редактор структуры сущностей, в котором происходит дальнейшее добавление необходимых объектов базы данных (таблиц или представлений) с соответствующими связями.

    +

    Редактор структуры сущностей включает в себя следующие области:

    +
      + +
    • Дерево БД (базы данных), где отображаются выбранные при сохранении БД схемы вместе с объектами (таблицы и представления)
    • +
    • Поиск, с помощью которого можно найти таблицу БД по её названию; по мере ввода символов будет отображаться список таблиц, содержащих в названии набранные символы (рис.4)
    • +
    +

    +

    рис.3 Редактор структуры сущностей

    +

    +

    рис.4 Область поиска

    +
      + +
    • + +

      вкладка Структура, которая в зависимости от решаемой задачи позволяет задать условия или группу условий , по которому(ым) будут ограничиваться (фильтроваться) подгружаемые данные по Графу сущностей. Для фильтрации записей больше, чем по одному условию используются операторы:

      +
        + +
      • AND - оператор, который отображает только те записи, когда первое и второе условие является истина/true;
      • +
      • OR- оператор, который отображает только те записи, когда хотя бы одно из двух или каждое из условий является истина/true;
      • +
      • AND_NOT - оператор, который отображает только те записи, когда хотя бы одно из условий является ложью/false;
      • +
      • OR_NOT - оператор, который отображает только те записи, когда все из условий являются ложью/false.
      • +
      +

      При добавлении условия (фильтра), значение из колонки таблицы или представления можно приравнять к четырем типам значений: Переменная процесса, Константа, Переменная времени выполнения, Другая колонка. В случае использования Переменной процесса, значение, к которому приравниваются данные из указанной колонки, могут динамически изменяться, в зависимости от того, какое значение содержится в переменной процесса в конкретный момент времени (рис.4). Применение заданного условия (фильтра), в котором используется переменная процесса, можно ограничить указав: Игнорировать фильтр, если переменная не задана или Не игнорировать фильтр, если переменная не задана. При указании типа Другая колонка, значение указанное в колонке сравнивается со значением другой колонки идентичной таблицы. При указании типа Переменная времени выполнения, значение из выбранной колонки сравнивается с runtime переменными. При указании типа Константа, подгружаемые данные по Графу сущностей будут фильтроваться по заданному статичному значению (рис.5). На языке SQL-запросов заданное условие (рис.5) будет иметь вид: SELECT … FROM public. Конференции AS Конференции WHERE Конференции. Описание (description) = ‘RU’

      +

      +

      рис.4 Применение фильтра с использованием Переменной процесса

      +

      +

      рис.5 Применение фильтра с использованием Константы

      +
    • +
    • + +

      вкладка Элемент, становится активна после добавления и выбора объекта базы данных:таблицы или представления(рис.6). К нередактируемым свойствам элемента относится: Схема базы данных, к которой относится объект и название Таблицы в базе данных. К настраиваемым свойствам элемента относится:

      +
        + +
      • Имя сущности, которое будет отображаться в Редакторе структуры сущностей;
      • +
      • Главная сущность - в каждом Графе должна быть задана Главная сущность, с которой начинается подгрузка и сохранение данных на странице; Главная сущность в Графе выделена желтой рамкой, все последующие сущности имеют синюю рамку.
      • +
      • Действие при сохранении: Удалить (значение по умолчанию).
      • +
      • Сохранить - Удалить если все значения FK. Добавление и возможность настройки данного свойства было обусловлено тем, что в некоторых случаях, при сохранении в сущность (таблицу) приходят пустые данные. В зависимости от того, необходимо ли сохранять пустые данные в таблицу или необходимо удалять старую запись в таблице, если пришли пустые данные, выбирается один из трех доступных вариантов действий. Как и в случае со Структурой *всего Графа сущностей, к Элементу можно применить условия (фильтрацию) для подгрузки значения. После того, как условие будет задано, в редакторе сущностей элемент будет отображаться со знаком фильтра .
      • +
      +
    • +
    +

    Добавление связей сущностей

    +

    Граф сущностей позволяет добавить сразу несколько объектов базы данных (таблиц и представлений) с соответствующими связями между собой. Одновременное использование нескольких таблиц позволяет получить достаточный и необходимый объем информации для вывода из базы данных с помощью SQL-запроса, формируемого Графом сущностей и отображения пользователю на странице с помощью компонент, например, Таблица, Форма и другие. Добавление связей возможно между объектами базы данных, которые либо явно ссылаются друг на друга по ключу, либо связь подразумевается, но внешними ключами не оформлена.

    +

    Для того, чтобы указать связь между сущностями (объектами базы данных) в Редакторе структуры сущностей, необходимо добавить элементы (таблицы или представления базы данных) и от таблицы, которая будет ссылаться на другую таблицу протянуть стрелку, нажав на указатель . Направление стрелки должно быть определено от вторичного ключа к первичному ключу. После добавления связи, необходимо выделить элемент и указать колонки, по которым будут связаны сущностиво вкладке Элемент: Исходящая колонка и Входящая колонка.

    +

    На языке SQL-запросов заданная связь (рис.8) будет иметь вид: LEFT OUTER JOIN public. Конференции AS Конференции ON Список сотрудников.employee_id = Конференции.updated_employee_id

    +

    При настройке и выборе элемента связи сущностей (стрелки ) становится активна вкладка Элемент, где помимо указания колонок связи сущностей (Исходящая и Входящая колонка), есть возможность задать следующие свойства (рис.9):

    +
      + +
    • Связь обязательна означает, что при построении SQL-запроса к базе данных по данной связи будет использоваться оператор INNER JOIN, который возвращает только совпадающие данные из двух объединяемых таблиц. В случае, когда обязательность связи не проставлена, используется оператор LEFT OUTER JOIN, который возвращаетвсе строки из внешней левой таблицы, даже если в правой таблице нет совпадений.
    • +
    • Связь только для сохранения означает, что связь будет использована только для сохранения данных, при подгрузке данных она будет игнорироваться. В случае выбора данного свойства, в Редакторе структуры сущностей стрелка,связывающая объекты, принимает вид
    • +
    • Условие или Группа условий - как и в случае с общей Структурой Графа сущностей и отдельной сущности, имеется возможность добавить к связи условия (фильтры), ограничивающие значения подгружаемых данных.После того, как условие будет задано, вредакторе сущностей элемент стрелка будет отображаться со знаком фильтра(рис.10).
    • +
    +

    На языке SQL-запросов заданное условие (рис.10) будет иметь вид: LEFT OUTER JOIN public. Конференции AS Конференции ON Список сотрудников.employee_id=Конференции.updated_employee_id AND Список сотрудников.legal_entity_id IS NOT NULL

    +

    +

    рис.8 Добавление связи между сущностями

    +

    +

    рис.9 Свойства элемента связи (стрелки)

    +

    +

    рис.10 Применение условия к элементу связи

    +

    Часто задаваемые вопросы

    + + + + + + + + + + + + + + + + + + + + + +
    Вопрос Ответ
    Чем отличается условие заданное через вкладку Структура на весь Граф сущностей и условие заданное на конкретную сущность во вкладке Элемент Заданные условия ничем не отличаются между собой, допустимо использование обоих вариантов указания условий, результат выполнения их будет одинаков.
    После сохранения Графа сущностей, одна из заданных в нём таблиц была удалена или переименована в базе данных. Как это повлияет на структуру сущностей? В данном случае, при открытии Редактора структуры сущностей будет выведено окно с предупреждением. Граф сущностей необходимо будет перерисовать в соответствии с новой структурой базы данных.
    В сохраненную базу данных была добавлена новая таблица, но она не отображается в Дереве БД Редактора структуры сущностей? После внесения изменений в структуру базы данных (новая таблица или представление, новая колонка в таблице) необходимо во вкладке База данных нажать на кнопку Обновить, дождаться завершения обновления, после чего внесенные изменения должны будут отобразиться.
    Для чего необходима Главная сущность? Для компонент, требующих задания структуры сущностей, в Графе сущностей обязательно должна быть выделена Главная сущность, с которой начинаетсяподгрузка и сохранение данных на странице. Например, при работе с Таблицейи привязанной к ней Кнопкой выбора записи, запоминается идентификатор записи Главной сущности.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧アム禍クミオ-ムムひクミサミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧アム禍クミオ-ムムひクミサミク.html new file mode 100644 index 0000000..30aeb0f --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧アム禍クミオ-ムムひクミサミク.html @@ -0,0 +1,65 @@ + + + + + + + + Web-BPM Docs – + + + + + + +
    +
    + + + +
    +
    + + + + + + + + + + + + + + + +
    Название класса css Описание
    pull-right прижать объект к правому краю (если что-то съехало относительно данного объекта, положите его в дополнительный контейнер)
    align-center выравнивание объекта по центру по горизонтали (если что-то съехало относительно данного объекта, положите его в дополнительный контейнер)
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧アム禍クミオ_ムミイミセミケムムひイミー_ミコミセミシミソミセミスミオミスム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧アム禍クミオ_ムミイミセミケムムひイミー_ミコミセミシミソミセミスミオミスム.html new file mode 100644 index 0000000..67e40dd --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧アム禍クミオ_ムミイミセミケムムひイミー_ミコミセミシミソミセミスミオミスム.html @@ -0,0 +1,177 @@ + + + + + + + + Web-BPM Docs – ミ榧アム禍クミオ ムミイミセミケムムひイミー ミコミセミシミソミセミスミオミスム + + + + + + +
    +
    + + + +
    +
    +

    Общие свойства компонент

    +

    Подраздел основных параметров: Расширенные настройки

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + +

    +
    +
    + +
      + +
    • внутренний отступ (необходимо указывать единицы измерения)
    • + +
    • внешний отступ (необходимо указывать единицы измерения)
    • + +
    • граница (необходимо указывать единицы измерения)
    • + +
    • stretch: позволяет управлять возможностью автоматического расширения (растягивания) элемента на свободную область
    • +
    + +

    - значение не определено - по умолчанию

    + +

    - элемент будет автоматически занимать всю доступную область

    + +

    - элемент не будет автоматическизанимать всю доступную область

    + +
      + +
    • высота (необходимо указывать единицы измерения, например, 20px): позволяет указать высоту элемента
    • + +
    • ширина (необходимо указывать единицы измерения, например, 40px) : позволяет указать ширину элемента
    • + +
    • минимальная высота (необходимо указывать единицы измерения, например, 20px): позволяет указать минимальную высоту элемента
    • + +
    • минимальная ширина (необходимо указывать единицы измерения, например, 40px) : позволяет указать минимальную ширину элемента
    • + +
    • максимальная высота (необходимо указывать единицы измерения, например, 20px): позволяет указать максимальную высоту элемента
    • + +
    • максимальная ширина (необходимо указывать единицы измерения, например, 40px) : позволяет указать максимальную ширину элемента
    • +
    +

    +
    +
    + +

    +
    +

    позволяет указать список CSS-классов, которые необходимо применить к элементу

    +
    + +

    по умолчанию в ряде компонент указан CSS-класс long-value-input

    + +

    + +

    Данный CSS-класспозволяет сокращать отображаемое значение в поле тремя точками, если значение не умещается по ширине поля:

    + +


    +

    + +

    Если удалить данный CSS-класс в стилях элемента, то отображение значения, не соответствующего ширине поля, имеет следующий вид:

    +
    +
    + +

    +
    позволяет наследовать (или игнорировать наследование) свойства видимости, доступности, обязательности и возможности сохранения от компоненты-контейнера, внутри которого расположен элемент (родителя) +
    + +

    - значение не определено - по умолчанию

    + +

    - наследовать свойства от компоненты-контейнера, внутри которого расположен элемент

    + +

    - не наследовать свойства от компоненты-контейнера, внутри которого расположен элемент

    + +

    например, если перевестив состояниезначение данного свойства у элемента, находящегосявнутри контейнера, у которого включено свойство Недоступно для управления, то поле проигнорирует это свойство от родителя и будет доступно для управления на странице.

    +
    +
    + +
    +
    +

    Attachments:

    +
    + + +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ミソムミーミイミー_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ミソムミーミイミー_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html new file mode 100644 index 0000000..6b7353d --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ミソムミーミイミー_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html @@ -0,0 +1,57 @@ + + + + + + + + Web-BPM Docs – ミ榧ソムミオミエミオミサミクムび ミソムミーミイミー ムひオミコムτ禍オミウミセ ミソミセミサム糊キミセミイミームひオミサム + + + + + + +
    +
    + + + +
    +
    +

    Определить права текущего пользователя

    +

    Функция, которая не имеет настраиваемых аналитиком параметров, но будучи задействованной, позволяет проверить наличие интересующих прав (меток безопасности) у текущего пользователя при выполнении приложения.

    +

    Она относится к той группе функций, чья функциональность применяется и может быть полезной не сразу после добавленияв исходную компоненту, а только при последующем использовании в компоненте “Обработка событий”, когда у исходной компоненты появляется несколько новых доступных методов при конструировании алгоритма обработки событий на web-странице. Например, для такого паттерна обработки: ‘ЕСЛИ данные загружены на форму И (текущий пользователь имеет права (метку безопасности) “WRITE” ИЛИ текущий пользователь имеет права (метку безопасности) “LIST”) ТО кнопку “Сохранить” сделать видимой идоступной для нажатия’

    +

    +

    Рис.1 Активация функции

    +

    +

    Рис.2 Использование функции в компоненте Обработка Событий (появился новый метод “Обладает правами” у компоненты Форма).

    +

    Наименования прав (меток безопасности) в условиях сравнения в компоненте Обработка событий должны соответствовать меткам безопасности, существующим в платформе и отслеживаемым с использованием Инструмента администрирования платформы.

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ムミセミサミク_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ムミセミサミク_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html new file mode 100644 index 0000000..42d6e37 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ムミセミサミク_ムひオミコムτ禍オミウミセ_ミソミセミサム糊キミセミイミームひオミサム.html @@ -0,0 +1,57 @@ + + + + + + + + Web-BPM Docs – ミ榧ソムミオミエミオミサミクムび ムミセミサミク ムひオミコムτ禍オミウミセ ミソミセミサム糊キミセミイミームひオミサム + + + + + + +
    +
    + + + +
    +
    +

    Определить роли текущего пользователя

    +

    Функция, которая не имеет настраиваемых аналитиком параметров, но будучи задействованной, позволяет проверить наличие интересующей роли у текущего пользователя при выполнении приложения.

    +

    Она относится к той группе функций, чья функциональность применяется и может быть полезной не сразу после добавленияв исходную компоненту, а только при последующем использовании в компоненте “Обработка событий”, когда у исходной компоненты появляется несколько новых доступных методов при конструировании алгоритма обработки событий на web-странице. Например, для такого паттерна обработки: ‘ЕСЛИ данные загружены на форму И (текущий пользователь имеет роль “Администратор” ИЛИ текущий пользователь имеет роль “Руководитель”) ТО кнопку “Сохранить” сделать видимой идоступной для нажатия’

    +

    +

    Рис.1 Активация функции

    +

    +

    Рис.2 Использование функции в компоненте Обработка Событий (появился новый метод “Обладает ролью” у компоненты Форма)

    +

    Наименования ролей в условиях сравнения в компоненте Обработка событий должны соответствовать ролям, существующим в платформе и созданным с использованием Инструмента администрирования платформы.

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ムひオミコムτ禾τ酸ミエミームびダミク_ムミシミオムムひクムび契ミオム狙ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ_ミスミー_ミキミーミエミーミスミスム巾ケ_ミソミオムミクミセミエ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ムひオミコムτ禾τ酸ミエミームびダミク_ムミシミオムムひクムび契ミオム狙ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ_ミスミー_ミキミーミエミーミスミスム巾ケ_ミソミオムミクミセミエ.html new file mode 100644 index 0000000..8e8ae10 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ榧ソムミオミエミオミサミクムび契ムひオミコムτ禾τ酸ミエミームびダミク_ムミシミオムムひクムび契ミオム狙ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ_ミスミー_ミキミーミエミーミスミスム巾ケ_ミソミオムミクミセミエ.html @@ -0,0 +1,104 @@ + + + + + + + + Web-BPM Docs – ミ榧ソムミオミエミオミサミクムび ムひオミコムτ禾τ ミエミームび ミク ムミシミオムムひクムび ミオム ミイミソミオムミオミエ ミクミサミク ミスミーミキミーミエ ミスミー ミキミーミエミーミスミスム巾ケ ミソミオムミクミセミエ + + + + + + +
    +
    + + + +
    +
    +

    Определить текущую дату и сместить её вперед или назад на заданный период

    +

    Функция, которая в режиме исполнения приложения (runtime mode) определяет текущую дату хоста, на котором работает браузер пользователя, и выставляет ее значением для компоненты Дата. При соответствующих настройках, может на лету сдвигать текущую дату на указанный период (год, месяц, день) в будущее или прошлое и отображать в компоненте Дата уже не текущую дату, а дату, передвинутую на указанный период. Используется для выставления в полях экранного интерфейса значения текущей даты по умолчанию, либо сдвига даты на заранее известный период времени (например, дату открытия наследства). Может быть активирована только на компоненте Дата.

    +

    Особенности функции:

    +
      + +
    • в запущенном приложении исполняется явно (не требует использования компоненты “Обработка событий” и формирования алгоритма работы с задействованием вновь предоставлямых методов)
    • +
    • записывает текущую (или дату со сдвигом) в тот компонент Дата, в котором функция активирована
    • +
    • имеет параметры для настройки аналитиком
    • +
    +

    Рис. 1 Внешний вид активированной функции

    +

    Параметры функции (табл.1)

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Пример заполнения
    Количество лет, необязательный позволяет указать количество лет, на которые нужно сдвинуть текущую дату
    Количество месяцев, необязательный позволяет указать количество месяцев, на которые нужно сдвинуть текущую дату
    Количество дней, необязательный позволяет указать количество дней, на которые нужно сдвинуть текущую дату
    В будущее, необязательный позволяет указать направление сдвига заданного периода - в будущее или в прошлое +
      +
    • значение не определено - текущую дату никуда не сдвигать - по умолчанию
    • +
    • Активно - сдвинуть текущую дату на указанный период в будущее
    • +
    • Не активно - сдвинуть текущую дату на указанный период в прошлое
    +

    Пример настройки и применения

    +

    +

    Рис.1 Активация функции на компоненте Дата без сдвига на период

    +

    +

    Рис.2 Активация функции на компоненте Дата со сдвигом на период в прошлое

    +

    Рис.3 Активация функции на компоненте Дата со сдвигом на период в будущее

    +

    Результат работы функции с разными параметрами настройки

    +

    +

    Рис. 4 Открытие web - страницы работающего приложения с полем Дата мероприятия без сдвига

    +

    +

    Рис. 5 Открытие web - страницы работающего приложения с полем Дата мероприятия со сдвигом в прошлое

    +

    +

    Рис. 6 Открытие web - страницы работающего приложения с полем Дата мероприятия со сдвигом в будущее

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦.html new file mode 100644 index 0000000..cd82533 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦.html @@ -0,0 +1,105 @@ + + + + + + + + Web-BPM Docs – ミ渙セミエミウムムσキミコミー ミエミーミスミスム錦 + + + + + + +
    +
    + + + +
    +
    +

    Подгрузка данных

    +

    Назначение

    +

    Функция, которая исполняет сформированный пользователем визуально или явно SQL-запрос на базе данных для одной из операций: INSERT, UPDATE, SELECT. Является строго обязательным для настройки. Попытка сборки и запуска системы в несконфигурированномсостоянии функции приводит к ошибке.

    +

    Вид операции определяется либо инициализацией (открытием) самой web-страницы - тогда выполняется SELECT, либо событием управляющего воздействия пользователя на web-страницу (напр, нажатие кнопки “Сохранение”) - тогда выполняется INSERT или UPDATE.

    +

    Выполнение операции INSERT или UPDATE зависит от значения Переменной процесса с идентификатором: если переменная пуста, то выполняетсяINSERT - запрос, если содержит значение, то выполняется UPDATE - запрос.

    +

    Результатом воздействия запроса любого типа должна служить толькоединственная запись смысловой сущности создаваемого интерфейса (не касается связанных и\или линковых таблиц), в противном случае функция генерирует ошибку и не исполняется.

    +

    Настройка

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование параметра Обязательность Назначение параметра Принимаемые значения
    Скрипт Обязательный позволяет указать один из вариантов реализации скрипта +
      +
    • FormServiceImpl - значение, выставляемое платформой по умолчанию. Обеспечивает сохранение и считывание значения любого визуального компонента, входящего в компоненту Форма, в/из базы данных.
    • +
    • VariableFormService - обеспечивает считывание и/или сохранение значения любого визуального компонента, входящего в компоненту Форма, только из/в переменную процесса (не из/в базу данных).
    Переменная процесса с идентификатором Обязательный позволяет выбрать из списка переменную процесса, содержащую в себе идентификатор смысловой единицы, которой посвящена компонента Форма (и web-страница приложения) Список формируется автоматически из всех переменных используемых в BPMN-процессе. Является ограничивающим значением запроса (в секции WHERE primary_id = ), построенного в визуальном конструкторе параметра Граф сущностей. Благодаря этому ограничению компонента Форма как источник данных выбирает атрибуты единственной смысловой сущности создаваемого интерфейса. Указанная переменная процесса может не содержать значения, и это означает, что web - страница открыта для создания новой записи в базе данных и после нажатия на кнопку сохранения будет выполнен оператор INSERT. Указанная переменная процесса может содержать значение идентификатора, и это означает, что web - страница открыта для отображения текущих атрибутов одной существующей записи, в нее могут быть внесены изменения, и после нажатия на кнопку сохранения будет выполнен оператор UPDATE.
    Источник данных. Скрипт Обязательный позволяет выбрать способ построения запроса - либо визуальный конструктор, либо кастомный SQL запрос +
      +
    • FormDaoImpl - Запрос формируется визуальным конструктором, значение по умолчанию
    • +
    • CustomSqlFormDao - запрос может быть сформирован вручную в отдельном окне
    • +
    • EditableOneToManyDaoImpl
    Граф сущностей Обязательный позволяет с помощью визуального конструктора сформировать набор объектов базы данных, указать взаимосвязи между ними и\или дополнительные условия, тем самым подготовить запрос в базу данных. При подгрузке данных сформированный запрос отрабатывает как Select-запрос, при сохранении новой информации как Insert-запрос, при внесении изменений как Update-запрос.
    Скрипты валидации формы Не обязательный Сценарии проверки валидности данных на форме, которые выполняются при сохранении формы (например, проверка уникальности сохраняемой улицы (что в базе ее действительно пока еще нет, или проверка правильности соотнесения значений сразу нескольких полей и т.п.).Если валидация не прошла, то выдается ошибка и сохранение формы прекращается. В базовой конфигурации сценарии не поставляются, они создаются дополнительно разработчиками под конкретные запросы пользователей. После подготовки программного кода такого скрипта и интеграции в платформу, его можно выбрать в этом пункте настроек по имени из выпадающего списка.
    Скрипты, выполняемые после сохранения формы Не обязательный Вызов обработчиков после сохранения данных. В качестве обработчиков могут выступать сценарии манипулирования данными на языке SQL с входными и выходными параметрами.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦_ミソミセ_ムσシミセミサムミーミスミクム.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦_ミソミセ_ムσシミセミサムミーミスミクム.html new file mode 100644 index 0000000..e06782c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ渙セミエミウムムσキミコミー_ミエミーミスミスム錦_ミソミセ_ムσシミセミサムミーミスミクム.html @@ -0,0 +1,105 @@ + + + + + + + + Web-BPM Docs – ミ渙セミエミウムムσキミコミー ミエミーミスミスム錦 ミソミセ ムσシミセミサムミーミスミクム + + + + + + +
    +
    + + + +
    +
    +

    Подгрузка данных по умолчанию

    +

    Назначение

    +

    Функция, которая может быть активирована на любой компоненте-контейнере (как правило, на компоненте Форма), и которая исполняет сформированный пользователем визуально SQL-SELECT запрос на базе данных. Полученные в результате исполнения запроса значения могут быть переданы в дочерние визуальные компоненты текущего контейнера для заполнения этих визуальных компонентов значениями по умолчанию. Результатом запроса должна служить толькоединственная запись смысловой единицы создаваемого интерфейса , в противном случае скрипт генерирует ошибку и не исполняется.

    +

    Функция не является обязательной для настройки, но должна присутствовать на компонентах - контейнерах в любом случае (совсем удалять функцию с компоненты нельзя). Функция активирована по умолчанию на компонентах-контейнерах Форма и Набор фильтров.

    +

    Для остальных компонент - контейнеров требует активации вручную при необходимости. Активация происходит выставлением флажка рядом с наименованием функции:

    +

    - активированное состояние функции

    +

    - не активированное состояние функции

    +

    Настройка

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование параметра Назначение параметра Принимаемые значения
    Скрипт Единственный возможный вариант, выставлен по умолчанию
    Источник данных. Скрипт предписывает использовать визуальный конструктор для построения запроса DefaultLoadDao - Запрос формируется визуальным конструктором.
    Граф сущностей Граф сущностей позволяет с помощью визуального конструктора сформировать набор объектов базы данных, указать взаимосвязи между ними и\или дополнительные условия, тем самым подготовить запрос в базу данных. При подгрузке данных сформированный запрос отрабатывает как Select-запрос.
    Переменная процесса с идентификатором позволяет выбрать из списка переменную процесса, содержащую в себе идентификатор смысловой единицы, для которой подгружаются ‘значения по умолчанию’ на web-странице приложения. Список формируется автоматически из всех переменных, используемых в BPMN-процессе. Является ограничивающим значением запроса (в секции WHERE primary_id = ), построенного в визуальном конструкторе параметра Граф сущностей. Благодаря этому ограничению источник данных выбирает атрибуты единственной смысловой единицы создаваемого интерфейса. указанная переменная процесса может не содержать в себе значения, и это означает, что никаких значений по умолчанию подгружено не будет.
    uniqueResult позволяет при выполнении запроса исключить повторяющиеся строки из результата.
    +

    Если одна компонента-контейнер вложена в другую (например, в компоненту Форма вложена компонента Горизонтальный контейнер, а в нее - Вертикальный контейнер), то следует учитывать особенности взаимодействия функций Подгрузка данных по умолчанию из компонент-контейнеров разных уровней:

    + + + + + + + + + + + + + + +
    Компонента ‘Форма 1’ - родительский контейнер Компонента ‘Горизонтальный контейнер ( а )’ является дочерней для компоненты ‘Форма 1’. Компонента ‘Вертикальный контейнер ( I )’ является дочерней для компоненты ‘Горизонтальный контейнер ( а )’.
    В нем активирована функция Подгрузка данных по умолчанию. Внутри расположен Горизонтальный контейнер и на одном уровне с ним - визуальные компоненты. Компоненты ‘Текстовое поле 1’ и ‘Числовое поле 1’, расположенные внутри компоненты ‘Форма 1’, могут получать ‘значения по умолчанию’ только из таблиц и колонок структуры сущности, заданной в функции Подгрузка данных по умолчанию компоненты ‘Форма 1’ Компонента ‘Горизонтальный контейнер ( а )’ является дочерней для компоненты ‘Форма 1’. В компоненте ‘Горизонтальный контейнер ( а )’ не активирована функция Подгрузка данных по умолчанию, но в родительской компоненте ‘Форма 1’ одноименная функция активирована. Внутри компоненты ‘Горизонтальный контейнер ( а )’ расположен Вертикальный контейнер и на одном уровне с ним - визуальные компоненты. Компоненты ‘Дата ( а )’ и ‘Статичный выпадающий список ( а )’, расположенные внутри компоненты ‘Горизонтальный контейнер ( а )’, могут получать ‘значения по умолчанию’ только из таблиц и колонок структуры сущности, заданной в функции Подгрузка данных по умолчанию компоненты ‘Форма 1’, поскольку у их прямого родительского компонента ‘Горизонтальный контейнер ( а )’ эта функция не активирована, но зато они являются наследниками компоненты-контейнера ‘Форма 1’. Таким образом, визуальные компоненты игнорируют те уровни, на которых функция не активирована и тянуться вверх по дереву до того уровня, пока не найдут первую настроенную и активированную функцию Подгрузка данных по умолчанию. Компонента ‘Вертикальный контейнер ( I )’ является дочерней для компоненты ‘Горизонтальный контейнер ( а )’. В компоненте ‘Вертикальный контейнер ( I )’ активирована функция Подгрузка данных по умолчанию. Внутри компоненты ‘Вертикальный контейнер ( I )’ расположены только визуальные компоненты. Компоненты ‘ФИАС ( I )’ и ‘Поле многострочного ввода ( I )’, расположенные внутри компоненты Вертикальный контейнер ( I )’, могут получать ‘значения по умолчанию’ только из таблиц и колонок структуры сущности, заданной в функции Подгрузка данных по умолчанию компоненты ‘Вертикальный контейнер ( I )’
    +

    Функция Подгрузка данных по умолчанию позволяет только сформировать и исполнить запрос для получения определенных сведений из базы данных, последующее указание аналитика платформе на то, каким значением из какой таблицы и какой визуальный компонент следует заполнить происходит в настройках функции Заполнить значением по умолчаниюлюбого визуального компонента (параметр Тип подгрузки - > Из колонки)

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ湲ミオミセミアムミーミキミセミイミーミスミクミオ_ムひオミコムτ禍オミケ_ミエミームび.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ湲ミオミセミアムミーミキミセミイミーミスミクミオ_ムひオミコムτ禍オミケ_ミエミームび.html new file mode 100644 index 0000000..753f8f2 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ湲ミオミセミアムミーミキミセミイミーミスミクミオ_ムひオミコムτ禍オミケ_ミエミームび.html @@ -0,0 +1,104 @@ + + + + + + + + Web-BPM Docs – ミ榧ソムミオミエミオミサミクムび ムひオミコムτ禾τ ミエミームび ミク ムミシミオムムひクムび ミオム ミイミソミオムミオミエ ミクミサミク ミスミーミキミーミエ ミスミー ミキミーミエミーミスミスム巾ケ ミソミオムミクミセミエ + + + + + + +
    +
    + + + +
    +
    +

    Определить текущую дату и сместить её вперед или назад на заданный период

    +

    Функция, которая в режиме исполнения приложения (runtime mode) определяет текущую дату хоста, на котором работает браузер пользователя, и выставляет ее значением для компоненты Дата. При соответствующих настройках, может на лету сдвигать текущую дату на указанный период (год, месяц, день) в будущее или прошлое и отображать в компоненте Дата уже не текущую дату, а дату, передвинутую на указанный период. Используется для выставления в полях экранного интерфейса значения текущей даты по умолчанию, либо сдвига даты на заранее известный период времени (например, дату открытия наследства). Может быть активирована только на компоненте Дата.

    +

    Особенности функции:

    +
      + +
    • в запущенном приложении исполняется явно (не требует использования компоненты “Обработка событий” и формирования алгоритма работы с задействованием вновь предоставлямых методов)
    • +
    • записывает текущую (или дату со сдвигом) в тот компонент Дата, в котором функция активирована
    • +
    • имеет параметры для настройки аналитиком
    • +
    +

    Рис. 1 Внешний вид активированной функции

    +

    Параметры функции (табл.1)

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Пример заполнения
    Количество лет, необязательный позволяет указать количество лет, на которые нужно сдвинуть текущую дату
    Количество месяцев, необязательный позволяет указать количество месяцев, на которые нужно сдвинуть текущую дату
    Количество дней, необязательный позволяет указать количество дней, на которые нужно сдвинуть текущую дату
    В будущее, необязательный позволяет указать направление сдвига заданного периода - в будущее или в прошлое +
      +
    • значение не определено - текущую дату никуда не сдвигать - по умолчанию
    • +
    • Активно - сдвинуть текущую дату на указанный период в будущее
    • +
    • Не активно - сдвинуть текущую дату на указанный период в прошлое
    +

    Пример настройки и применения

    +

    +

    Рис.1 Активация функции на компоненте Дата без сдвига на период

    +

    +

    Рис.2 Активация функции на компоненте Дата со сдвигом на период в прошлое

    +

    Рис.3 Активация функции на компоненте Дата со сдвигом на период в будущее

    +

    Результат работы функции с разными параметрами настройки

    +

    +

    Рис. 4 Открытие web - страницы работающего приложения с полем Дата мероприятия без сдвига

    +

    +

    Рис. 5 Открытие web - страницы работающего приложения с полем Дата мероприятия со сдвигом в прошлое

    +

    +

    Рис. 6 Открытие web - страницы работающего приложения с полем Дата мероприятия со сдвигом в будущее

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ湲ミオミセミアムミーミキミセミイミームび契ミイ_ミコミセミサミセミスミコミク_ムミセ_ミキミスミームミオミスミクム紹シミク-ミソミオムミオムミセミエミーミシミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ湲ミオミセミアムミーミキミセミイミームび契ミイ_ミコミセミサミセミスミコミク_ムミセ_ミキミスミームミオミスミクム紹シミク-ミソミオムミオムミセミエミーミシミク.html new file mode 100644 index 0000000..6da7a83 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ湲ミオミセミアムミーミキミセミイミームび契ミイ_ミコミセミサミセミスミコミク_ムミセ_ミキミスミームミオミスミクム紹シミク-ミソミオムミオムミセミエミーミシミク.html @@ -0,0 +1,96 @@ + + + + + + + + Web-BPM Docs – ミ湲ミオミセミアムミーミキミセミイミームび ミイ ミコミセミサミセミスミコミク ムミセ ミキミスミームミオミスミクム紹シミク-ミソミオムミオムミセミエミーミシミク + + + + + + +
    +
    + + + +
    +
    +

    Преобразовать в колонки со значениями-переходами

    +

    Назначение

    +
    + +

    Внимание: данный скрипт помечен как устаревший. Вместо него необходимо использовать либо NavigateOnGridCellOrRow (для всех таблиц, в т.ч. GridV2), либо ColumnNavigationRenderer (для таблиц GridV2, настройка без индексов).

    +
    +

    Функцию Преобразовать в колонки со значениями-переходами допустимо использовать при настройке компоненты Таблица (по кнопке Добавить функцию) и расширяет её базовые возможности. Добавление данного функционала в настройку компоненты Таблицы (рис.1) позволяет отображать значение в конкретной колонке (указанной в настройке функции) в виде гиперссылки, по нажатию на которую на странице приложения возможен следующий переходпо процессу (например, открытие страницы) по определённому значению переменной навигации.

    +

    +

    рис.1 Добавление функции Преобразовать в колонки со значениями-переходами

    +

    Настройка

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Сохранить идентификатор позволяет указать переменную процесса, в которую система сохранит идентификатор строки (значение идентификатора главной сущности в Графе сущностей компоненты Таблицы либо идентификатор из конкретной колонки)
    Значение для навигации позволяет задать значение, которое будет записано в переменную навигации данного процесса (по данному значению будет осуществляться переход при нажатие на колонку-гиперссылку)
    Переходить собственному позволяет указать колонку, значение из которой будет записано в переменную процесса, указанную в свойстве Сохранить идентификатор строки в Активно - будет взято значение самого идентификатора строки(значение идентификатора главной сущности в Графе сущностей компоненты). Не активно - позволяет указать порядковый номер колонки, содержащую в себе значение идентификатора, которое необходимо сохранить в переменную процесса
    Номер колонки позволяет указать номер колонки (в порядке следования в таблице), которая будет преобразована колонку перехода пример возможного значения: 3
    Номер колонки из которого позволяет указать номер колонки (в порядке следования в таблице) значение из которой будет взято для сохранения в переменную процесса, указанную в свойстве Сохранить идентификатор строки в (доступно для настройки при значении свойстваПереходить по собственному идентификатору) пример возможного значения: 6
    +

    Пример настройки

    +

    В настройке функции Преобразовать в колонки со значениями-переходами (рис.1) в качестве колонки-перехода укажем значение колонки Неделя (порядковый номер - 3), которая на странице приложения отображается как ссылка (рис.2), по нажатию на которую будет происходить дальнейший переход по процессу. Свойства функции настроены в соответствии с необходимой логикой.

    +

    +

    рис.1 Пример настройки функции

    +

    +

    рис.2 Отображение колонки-перехода на странице приложения

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミコミサミオミクムび契ミスミオムミコミセミサム糊コミセ_ミキミスミームミオミスミクミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミコミサミオミクムび契ミスミオムミコミセミサム糊コミセ_ミキミスミームミオミスミクミケ.html new file mode 100644 index 0000000..0c61b89 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミコミサミオミクムび契ミスミオムミコミセミサム糊コミセ_ミキミスミームミオミスミクミケ.html @@ -0,0 +1,112 @@ + + + + + + + + Web-BPM Docs – ミ。ミコミサミオミクムび ミスミオムミコミセミサム糊コミセ ミキミスミームミオミスミクミケ + + + + + + +
    +
    + + + +
    +
    +

    Склеить несколько значений

    +

    Функция, которая принимает на вход массив значений из любых визуальных компонентов, конвертирует эти значения на лету в строковый тип и на выходе формирует в значении отдельного компонента цельную единую строку, являющуюся результатом конкатенации значений компонент, принятых на входе. Может быть активирована на компонентах, работающих со строковыми типами данных: Текстовое поле, Текст, Поле многострочного ввода.

    +

    В отличие от функции “Добавить строку к значению в текущем поле”:

    +
      + +
    • в запущенном приложении исполняется явно (не требует использования компоненты “Обработка событий” и формирования алгоритма работы с задействованием вновь предоставлямых методов)
    • +
    • работает с неограниченным количеством визуальных компонент
    • +
    • позволяет задавать префиксы и постфиксы для соединяемых значений
    • +
    • не перезаписываетновообразованной строкой ранее находившееся в одной из склеиваемых компонент значение
    • +
    • имеет параметры для настройки аналитиком
    • +
    • работает с любыми типами данных и при необходимости может служить сама по себе конвертером значений любых типов из других компонент в строковый тип данных
    • +
    +

    +

    Рис. 1 Внешний вид активированной функции

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Массив склеиваемых значений Позволяет сформировать список компонент на странице, значения которых будут участвовать в конкатенации. Каждый последующий элемент списка добавляется с помощью кнопки
    Элемент, обязательный позволяет настроить один из элементов списка
    Префикс, необязательный позволяет задать набор символов, которые будут добавлены в результирующую строку перед фактическим значением склеиваемой компоненты
    Значение, обязательный позволяет указать компонент, значение которого будет склеиваться функцией
    Постфикс, необязательный позволяет задать набор символов, которые будут добавлены в результирующую строку после фактического значения склеиваемой компоненты
    Склеивать значения через подстроку, обязательный позволяет задать набор символов, который будет разделять склеиваемые значения разных компонент Чаще всего заполняется пробелом
    +

    Пример настройки и применения

    +

    +

    Рис.2 Активация функции на компоненте Многострочный ввод текста.

    + +

    Заполнение параметров Значениев массиве склеиваемых значений происходит путем перетаскивания манипулятором мышь соответствующих компонентов из дерева структуры страницы в окно параметра Значение каждого из элементов массива склеиваемых значений (как показано стрелками на скриншоте).

    + +

    Также существует удобная функциональность обратного быстрого перехода по дереву структуры страницы к задействованной компоненте посредством клика на параметреЗначение, когда есть необходимость уточнить, на какую именно компоненту в дереве ссылается интересующий параметр.

    + +

    +

    Рис. 3 Открытие web - страницы работающего приложения в момент когда склеиваемые поля еще не заполнены

    +

    +

    Рис.4 Работа с web страницей. Часть склеиваемых полей уже заполнено, отработали префиксы и постфиксы из настроек

    +

    +

    Рис.5 Завершение работы с группой полей, участвующих в объединении значений. В итогом поле получили соединенный текст с учетом префиксов и постфиксов соединяемых значений

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミコミセミスミイミオムムひクムミセミイミームび契ミキミスミームミオミスミクミオ_ミイ_ムミオミサミセムミクムミサミオミスミスム巾ケ_ムひクミソ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミコミセミスミイミオムムひクムミセミイミームび契ミキミスミームミオミスミクミオ_ミイ_ムミオミサミセムミクムミサミオミスミスム巾ケ_ムひクミソ.html new file mode 100644 index 0000000..0610a3d --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミコミセミスミイミオムムひクムミセミイミームび契ミキミスミームミオミスミクミオ_ミイ_ムミオミサミセムミクムミサミオミスミスム巾ケ_ムひクミソ.html @@ -0,0 +1,65 @@ + + + + + + + + Web-BPM Docs – ミ。ミコミセミスミイミオムムひクムミセミイミームび ミキミスミームミオミスミクミオ ミイ ムミオミサミセムミクムミサミオミスミスム巾ケ ムひクミソ + + + + + + +
    +
    + + + +
    +
    +

    Сконвертировать значение в целочисленный тип

    +

    Функция, которая не имеет настраиваемых аналитиком параметров, но будучи задействованной, позволяет осуществить преобразование значения в исходном компоненте из текущего типа (чаще всего, в компоненте Поле ввода с подбором значенияиз типа данных ANY) в целочисленный тип данных.

    +

    Она относится к той группе функций, чья функциональность применяется и может быть полезной не сразу после добавленияв исходную компоненту, а только при последующем использовании в компоненте “Обработка событий”, когда у исходной компоненты появляется нескольконовых доступных методов при конструировании алгоритма обработки событий на web-странице. Например, для такого паттерна обработки: ‘ЕСЛИ в компоненте Поле ввода с подбором значения выбрано(изменилось) значение, ТО в компоненту числовое поле вывести идентификатор(первичный ключ) этого значения’

    +

    +

    Рис.1 Активация функции на компоненте Поле ввода с подбором значения

    +

    +

    Рис.2 Числовое поле, в которое будем записывать идентификатор значения из компонента Поле ввода с подбором значения

    +

    +

    Рис. 3 Пример алгоритма заполнения числового поля идентификатором значения, выбранного в поле с Постановщиком задачи, при условии расширения функциональности исходной компоненты Поле ввода с подбором значения функцией “Сконвертировать значение в целочисленный тип” (появился новый метод “Сконвертировать в число” у исходной компоненты )

    +

    +

    Рис.4 Пример невозможности построения алгоритма из-за отсутствия необходимого метода “Сконвертировать в число”, вследствие удаления функции “Сконвертировать значение в целочисленный тип” из исходной компоненты Поле ввода с подбором значения “Постановщик задачи” (пропал метод “Сконвертировать в число” у исходной компоненты)

    +

    После запуска web-приложения (in runtime mode) выбираем в компоненте Список с поиском одно из значений (например, постановщика задачи с фамилией Дякин), после этого значение идентификатора (первичный ключ сотрудника по фамилии Дякин в справочнике) переносится в поле"Идентификатор постановщика", а в консоли браузера можно наблюдать сообщение о срабатывании компоненты Обработка событий, которое показывает выполненное функцией действие.

    +

    +

    Рис 5.Выбираем Постановщика задачи

    +

    +

    Рис.6 Функция заполняет числовое поле идентификатором

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミシミオムムひクムび契ミエミームびダミクミキ_ミソミセミサム柔ミスミー_ミソミオムミクミセミエ_ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミシミオムムひクムび契ミエミームびダミクミキ_ミソミセミサム柔ミスミー_ミソミオムミクミセミエ_ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ.html new file mode 100644 index 0000000..a4517d3 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミシミオムムひクムび契ミエミームびダミクミキ_ミソミセミサム柔ミスミー_ミソミオムミクミセミエ_ミイミソミオムミオミエ_ミクミサミク_ミスミーミキミーミエ.html @@ -0,0 +1,97 @@ + + + + + + + + Web-BPM Docs – ミ。ミシミオムムひクムび ミエミームび ミクミキ ミソミセミサム ミスミー ミソミオムミクミセミエ ミイミソミオムミオミエ ミクミサミク ミスミーミキミーミエ + + + + + + +
    +
    + + + +
    +
    +

    Сместить дату из поля на период вперед или назад

    +

    Функция, которая в режиме исполнения приложения (runtime mode) может на лету считывать исходное значение даты из одной компоненты Дата и отображать в другой компоненте Дата исходное значение даты, смещенное на определенный период (или годы, или месяцы, или дни) в будущее или прошлое. Используется для выставления в полях экранного интерфейса значения даты со сдвигом на заранее заданный период времени. Может быть активирована только на компоненте Дата.

    +

    Она относится к той группе функций, чья функциональность применяется и может быть полезной не сразу после добавленияв исходную компоненту, а только при последующем использовании в компоненте “Обработка событий”, когда у исходной компоненты появляется нескольконовых доступных методов при конструировании алгоритма обработки событий на web-странице. Например, для такого паттерна обработки: ‘ЕСЛИ в исходном компоненте Дата выбрано(изменилось) значение, ТО в другую компоненту Дата вывести значение из исходного, но на заранее заданный период (или годы, или месяцы, или дни) в будущее или прошлое’.

    +

    Функция имеет параметры, позволяющие аналитику задать направление и величину сдвига во времени.

    +

    Параметры функции (табл.1)

    + + + + + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Величина периода, обязательный позволяет указать величину временных периодов, на которую будет смещена исходная дата Пример возможного занчения: 2
    Единица измерения периода, обязательный позволяет указать размерность временного периода, в которых измеряется сдвиг Дни, месяцы, годы
    +

    +

    Рис.1 Активация функции на поле “Исходная дата”

    +

    +

    Рис.2 Поле “Дата после применения функции”, в которое будем записывать значение исходной даты, сдвинутое на заданный промежуток времени - 2 года

    +

    +

    Рис. 3 Пример алгоритма заполнения поля “Дата после применения функции” значением поля “Исходная дата”, сдвинутым на 2 года в прошлое (появилось 2 новых метода “Сдвинуть на период в будущее”; и “Сдвинуть на период в прошлое” у компоненты Дата)

    +

    Для применения функции Сместить дату из поля на период вперед или назад следует использоваться связку методов компоненты Дата:

    +
      + +
    • + +

      Задать значение как дату для поля-приемника измененной даты

      +
    • +
    • + +

      Сдвинуть на период в прошлое (будущее) для источника исходной даты

      +
    • +
    +

    Использование в поле-приемнике похожего метода компоненты Дата “Задать значение” приведет к невозможности использования метода “Сдвинуть на период в прошлое (будущее)” для источника даты при формировании алгоритма обработки события.

    +

    После запуска web-приложения (in runtime mode) выбираем дату в компоненте Исходная Дата (например,01.03.2019), после этого значение даты в поле Дата после применения функции изменится на 01.03.2017 г., а в консоли браузера можно наблюдать сообщение о срабатывании компоненты Обработка событий, которое показывает выполненное функцией действие.

    +

    +

    Рис 5.Состояние интерфейса до изменения поля Исходная дата

    +

    +

    Рис.6 Функция заполняет поле Дата после применения функции

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミセムムミーミスミオミスミクミオ_ミキミーミウミセミサミセミイミコミー_ミイム巾アムミーミスミスミセミケ_ミイミコミサミーミエミコミク_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミセムムミーミスミオミスミクミオ_ミキミーミウミセミサミセミイミコミー_ミイム巾アムミーミスミスミセミケ_ミイミコミサミーミエミコミク_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html new file mode 100644 index 0000000..0e3f116 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミセムムミーミスミオミスミクミオ_ミキミーミウミセミサミセミイミコミー_ミイム巾アムミーミスミスミセミケ_ミイミコミサミーミエミコミク_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html @@ -0,0 +1,54 @@ + + + + + + + + Web-BPM Docs – ミ。ミセムムミーミスミオミスミクミオ ミキミーミウミセミサミセミイミコミー ミイム巾アムミーミスミスミセミケ ミイミコミサミーミエミコミク ミイ ミソミオムミオミシミオミスミスムτ ミソムミセムミオムムミー + + + + + + +
    +
    + + + +
    +
    +

    Сохранение заголовка выбранной вкладки в переменную процесса

    +

    Используется для возврата на нужную вкладку после выхода с формы.

    +

    На TabContainer ts\custom\tab\TabContainerState.ts, java\custom\tab\TabContainerStateRpcService.java и внутрь последнего java\custom\tab\TabContainerStateVariableService.java

    +

    Далее нужно в TabContainerStateVariableService выбрать переменную процесса (тип - строка), в которую будет сохраняться заголовок выбранного таба.

    +

    Если после каких-то манипуляций не нужно восстанавливать открытый таб, то нужно использовать обработчик, очищающий переменную.

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミセムムミーミスミクムび契ミキミスミームミオミスミクミオ_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミセムムミーミスミクムび契ミキミスミームミオミスミクミオ_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html new file mode 100644 index 0000000..e779164 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ。ミセムムミーミスミクムび契ミキミスミームミオミスミクミオ_ミイ_ミソミオムミオミシミオミスミスムτ酸ミソムミセムミオムムミー.html @@ -0,0 +1,58 @@ + + + + + + + + Web-BPM Docs – ミ。ミセムムミーミスミクムび ミキミスミームミオミスミクミオ ミイ ミソミオムミオミシミオミスミスムτ ミソムミセムミオムムミー + + + + + + +
    +
    + + + +
    +
    +

    Сохранить значение в переменную процесса

    +

    Назначение

    +

    Сохранить значение в переменную процесса любого типа - эта функция позволяет задать переменную процесса, в которую будет сохраняться введенное значение, которое в последствии может передаваться на другие страницы приложения в зависимости от решаемой задачи.

    +

    Настройка

    +

    Для добавления функции в логику работы компоненты необходимо нажать на кнопку Добавить скрипт - Выбрать из спискафункцию, если она предусмотрена для использования с компонентой (рис.1) - Указать переменную, в которую будет сохраняться значение из поля (рис.2)

    +

    +

    рис.1. Добавление функции

    +

    +

    рис.2. Настройка функции

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ」ミソムミーミイミサミオミスミクミオ_ミスミーミイミクミウミームミクミオミケ.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ」ミソムミーミイミサミオミスミクミオ_ミスミーミイミクミウミームミクミオミケ.html new file mode 100644 index 0000000..a6a6bd4 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ」ミソムミーミイミサミオミスミクミオ_ミスミーミイミクミウミームミクミオミケ.html @@ -0,0 +1,72 @@ + + + + + + + + Web-BPM Docs – ミ」ミソムミーミイミサミオミスミクミオ ミスミーミイミクミウミームミクミオミケ + + + + + + +
    +
    + + + +
    +
    +

    Управление навигацией

    +

    Функция, которая в режиме исполнения приложения (runtime mode) закрывает текущую web-страницу (завершает пользовательскую BPMN задачу), сохраняет предопределенное в настройках функции значение в переменную процесса navigation и отправляет маркер процесса к следующему узлу схемы процесса (чаще всего, к исключающему шлюзу, в котором на основании значения переменной navigation осуществляется выбор одного из возможных дальнейших маршрутов).

    +

    Может быть активирована только на компонентах Кнопка сохранения, Кнопка Выбора, Кнопка Отмены семейства компонент Кнопка.

    +

    Параметры функции (табл.1)

    + + + + + + + + + + + + + + +
    Наименование свойства Назначение свойства Принимаемые значения
    Значение переменной навигации, обязательный позволяет указать значение, которое будет сохранено в переменную процесса navigation Возможное значение например: edit
    +

    Объявление навигационной переменной с именем navigation и типом String является обязательным требованием при создании любого BPMN процесса в редакторе бизнес процессов:

    +

    +

    Обычной практикой является оперирование этой переменной при определении условий в исключающих шлюзах при разработке бизнес-процессов и анализ значения этой переменной в компоненте Обработка событий на странице в редакторе интерфейса. Некоторая часть дополнительных функций визуальных компонентов по умолчанию ссылается в своих настройках на эту переменную.

    +

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ、ムσスミコムミクミク.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ、ムσスミコムミクミク.html new file mode 100644 index 0000000..973c17b --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/component/ミ、ムσスミコムミクミク.html @@ -0,0 +1,77 @@ + + + + + + + + Web-BPM Docs – ミ、ムσスミコムミクミク + + + + + + +
    +
    + + + +
    +
    +

    Функции

    +

    Полный справочник функций, доступных для всех компонент:

    + +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/apache-maven-fluido-1.9.min.css b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/apache-maven-fluido-1.9.min.css new file mode 100644 index 0000000..0bafa30 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/apache-maven-fluido-1.9.min.css @@ -0,0 +1,17 @@ +/*! + * Bootstrap v2.3.2 + * + * Copyright 2013 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world by @mdo and @fat. + */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{width:auto\9;height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img,.google-maps img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}label,select,button,input[type="button"],input[type="reset"],input[type="submit"],input[type="radio"],input[type="checkbox"]{cursor:pointer}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}@media print{*{color:#000 !important;text-shadow:none !important;background:transparent !important;box-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover,a:focus{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.127659574468085%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}a.muted:hover,a.muted:focus{color:gray}.text-warning{color:#c09853}a.text-warning:hover,a.text-warning:focus{color:#a47e3c}.text-error{color:#b94a48}a.text-error:hover,a.text-error:focus{color:#953b39}.text-info{color:#3a87ad}a.text-info:hover,a.text-info:focus{color:#2d6987}.text-success{color:#468847}a.text-success:hover,a.text-success:focus{color:#356635}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:20px;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}ul.inline,ol.inline{margin-left:0;list-style:none}ul.inline>li,ol.inline>li{display:inline-block;*display:inline;padding-right:5px;padding-left:5px;*zoom:1}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;line-height:0;content:""}.dl-horizontal:after{clear:both}.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:17.5px;font-weight:300;line-height:1.25}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;white-space:nowrap;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#555;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #ccc}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:20px;padding-left:20px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"],.row-fluid .controls-row [class*="span"]{float:left}.controls-row .checkbox[class*="span"],.controls-row .radio[class*="span"]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning .control-label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error .control-label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success .control-label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}.control-group.info .control-label,.control-group.info .help-block,.control-group.info .help-inline{color:#3a87ad}.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#3a87ad}.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#3a87ad;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#2d6987;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3}.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#3a87ad;background-color:#d9edf7;border-color:#3a87ad}input:focus:invalid,textarea:focus:invalid,select:focus:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{display:inline-block;margin-bottom:10px;font-size:0;white-space:nowrap;vertical-align:middle}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu,.input-append .popover,.input-prepend .popover{font-size:14px}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn,.input-append .btn-group>.dropdown-toggle,.input-prepend .btn-group>.dropdown-toggle{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input+.btn-group .btn:last-child,.input-append select+.btn-group .btn:last-child,.input-append .uneditable-input+.btn-group .btn:last-child{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append .add-on:last-child,.input-append .btn:last-child,.input-append .btn-group:last-child>.dropdown-toggle{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .btn-group:first-child{margin-left:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block,.form-horizontal .uneditable-input+.help-block,.form-horizontal .input-prepend+.help-block,.form-horizontal .input-append+.help-block{margin-top:10px}.form-horizontal .form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child>th:first-child,.table-bordered tbody:first-child tr:first-child>td:first-child,.table-bordered tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child>th:last-child,.table-bordered tbody:first-child tr:first-child>td:last-child,.table-bordered tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child>th:first-child,.table-bordered tbody:last-child tr:last-child>td:first-child,.table-bordered tbody:last-child tr:last-child>th:first-child,.table-bordered tfoot:last-child tr:last-child>td:first-child,.table-bordered tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child>th:last-child,.table-bordered tbody:last-child tr:last-child>td:last-child,.table-bordered tbody:last-child tr:last-child>th:last-child,.table-bordered tfoot:last-child tr:last-child>td:last-child,.table-bordered tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}.table-bordered tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-striped tbody>tr:nth-child(odd)>td,.table-striped tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover tbody tr:hover>td,.table-hover tbody tr:hover>th{background-color:#f5f5f5}table td[class*="span"],table th[class*="span"],.row-fluid table td[class*="span"],.row-fluid table th[class*="span"]{display:table-cell;float:none;margin-left:0}.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody tr.success>td{background-color:#dff0d8}.table tbody tr.error>td{background-color:#f2dede}.table tbody tr.warning>td{background-color:#fcf8e3}.table tbody tr.info>td{background-color:#d9edf7}.table-hover tbody tr.success:hover>td{background-color:#d0e9c6}.table-hover tbody tr.error:hover>td{background-color:#ebcccc}.table-hover tbody tr.warning:hover>td{background-color:#faf2cc}.table-hover tbody tr.info:hover>td{background-color:#c4e3f3}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:focus>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>li>a:focus>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:focus>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"],.dropdown-submenu:focus>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{width:16px;background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-submenu:hover>a,.dropdown-submenu:focus>a{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:default;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open{*z-index:1000}.open>.dropdown-menu{display:block}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{z-index:1051;margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #ccc;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover,.btn:focus{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:11px 19px;font-size:17.5px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.btn-large [class^="icon-"],.btn-large [class*=" icon-"]{margin-top:4px}.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-small [class^="icon-"],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini [class^="icon-"],.btn-mini [class*=" icon-"]{margin-top:-1px}.btn-mini{padding:0 6px;font-size:10.5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;border-color:#04c #04c #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-moz-linear-gradient(top,#62c462,#51a351);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-moz-linear-gradient(top,#444,#222);background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-repeat:repeat-x;border-color:#222 #222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:focus,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover,.btn-link:focus{color:#005580;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus{color:#333;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*margin-left:.3em;font-size:0;white-space:nowrap;vertical-align:middle;*zoom:1}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:14px}.btn-group>.btn-mini{font-size:10.5px}.btn-group>.btn-small{font-size:11.9px}.btn-group>.btn-large{font-size:17.5px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.btn-mini .caret,.btn-small .caret{margin-top:8px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical>.btn{display:block;float:none;max-width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical>.btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical>.btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical>.btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical>.btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert,.alert h4{color:#c09853}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success h4{color:#468847}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger h4,.alert-error h4{color:#b94a48}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info h4{color:#3a87ad}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li>a>img{max-width:none}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover,.nav-list>.active>a:focus{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{border-color:#eee #eee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover,.nav-tabs>.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover,.nav-pills>.active>a:focus{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover,.nav-tabs.nav-stacked>li>a:focus{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret,.nav .dropdown-toggle:focus .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover,.nav>.dropdown.active>a:focus{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover,.nav>li.dropdown.open.active>a:focus{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret,.nav li.dropdown.open a:focus .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover,.tabs-stacked .open>a:focus{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover,.tabs-left>.nav-tabs>li>a:focus{border-color:#eee #ddd #eee #eee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#eee #eee #eee #ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs .active>a:focus{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover,.nav>.disabled>a:focus{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);*zoom:1;-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar-inner:before,.navbar-inner:after{display:table;line-height:0;content:""}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#777;text-shadow:0 1px 0 #fff}.navbar .brand:hover,.navbar .brand:focus{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px;color:#777}.navbar-link{color:#777}.navbar-link:hover,.navbar-link:focus{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:5px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn,.navbar .input-prepend .btn-group,.navbar .input-append .btn-group{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:5px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,0.1);box-shadow:0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,0.1);box-shadow:0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#777;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:focus,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown>a:hover .caret,.navbar .nav li.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#777;border-bottom-color:#777}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover,.navbar-inverse .brand:focus,.navbar-inverse .nav>li>a:focus{color:#fff}.navbar-inverse .brand{color:#999}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover,.navbar-inverse .navbar-link:focus{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>a:hover .caret,.navbar-inverse .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-moz-linear-gradient(top,#151515,#040404);background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:focus,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb>li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb>li>.divider{padding:0 5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>li>a:focus,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#f5f5f5}.pagination ul>.active>a,.pagination ul>.active>span{color:#999;cursor:default}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>a:focus{color:#999;cursor:default;background-color:transparent}.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:17.5px}.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-bottomleft:3px;-moz-border-radius-topleft:3px}.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:3px}.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:0 6px;font-size:10.5px}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:default;background-color:#fff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:10%;left:50%;z-index:1050;width:560px;margin-left:-280px;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;outline:0;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:10%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{position:relative;max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.tooltip{position:absolute;z-index:1030;display:block;font-size:11px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-title:empty{display:none}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover,a.thumbnail:focus{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-right:9px;padding-left:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.label:empty,.badge:empty{display:none}a.label:hover,a.label:focus,a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-indicators{position:absolute;top:15px;right:15px;z-index:5;margin:0;list-style:none}.carousel-indicators li{display:block;float:left;width:10px;height:10px;margin-left:5px;text-indent:-999px;background-color:#ccc;background-color:rgba(255,255,255,0.25);border-radius:5px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}/*! + * Bootstrap Responsive v2.3.2 + * + * Copyright 2013 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world by @mdo and @fat. + */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@-ms-viewport{width:device-width}.hidden{display:none;visibility:hidden}.visible-phone{display:none !important}.visible-tablet{display:none !important}.hidden-desktop{display:none !important}.visible-desktop{display:inherit !important}@media(min-width:768px) and (max-width:979px){.hidden-desktop{display:inherit !important}.visible-desktop{display:none !important}.visible-tablet{display:inherit !important}.hidden-tablet{display:none !important}}@media(max-width:767px){.hidden-desktop{display:inherit !important}.visible-desktop{display:none !important}.visible-phone{display:inherit !important}.hidden-phone{display:none !important}}.visible-print{display:none !important}@media print{.visible-print{display:inherit !important}.hidden-print{display:none !important}}@media(min-width:1200px){.row{margin-left:-30px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:30px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:1170px}.span12{width:1170px}.span11{width:1070px}.span10{width:970px}.span9{width:870px}.span8{width:770px}.span7{width:670px}.span6{width:570px}.span5{width:470px}.span4{width:370px}.span3{width:270px}.span2{width:170px}.span1{width:70px}.offset12{margin-left:1230px}.offset11{margin-left:1130px}.offset10{margin-left:1030px}.offset9{margin-left:930px}.offset8{margin-left:830px}.offset7{margin-left:730px}.offset6{margin-left:630px}.offset5{margin-left:530px}.offset4{margin-left:430px}.offset3{margin-left:330px}.offset2{margin-left:230px}.offset1{margin-left:130px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.564102564102564%;*margin-left:2.5109110747408616%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.564102564102564%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.45299145299145%;*width:91.39979996362975%}.row-fluid .span10{width:82.90598290598291%;*width:82.8527914166212%}.row-fluid .span9{width:74.35897435897436%;*width:74.30578286961266%}.row-fluid .span8{width:65.81196581196582%;*width:65.75877432260411%}.row-fluid .span7{width:57.26495726495726%;*width:57.21176577559556%}.row-fluid .span6{width:48.717948717948715%;*width:48.664757228587014%}.row-fluid .span5{width:40.17094017094017%;*width:40.11774868157847%}.row-fluid .span4{width:31.623931623931625%;*width:31.570740134569924%}.row-fluid .span3{width:23.076923076923077%;*width:23.023731587561375%}.row-fluid .span2{width:14.52991452991453%;*width:14.476723040552828%}.row-fluid .span1{width:5.982905982905983%;*width:5.929714493544281%}.row-fluid .offset12{margin-left:105.12820512820512%;*margin-left:105.02182214948171%}.row-fluid .offset12:first-child{margin-left:102.56410256410257%;*margin-left:102.45771958537915%}.row-fluid .offset11{margin-left:96.58119658119658%;*margin-left:96.47481360247316%}.row-fluid .offset11:first-child{margin-left:94.01709401709402%;*margin-left:93.91071103837061%}.row-fluid .offset10{margin-left:88.03418803418803%;*margin-left:87.92780505546462%}.row-fluid .offset10:first-child{margin-left:85.47008547008548%;*margin-left:85.36370249136206%}.row-fluid .offset9{margin-left:79.48717948717949%;*margin-left:79.38079650845607%}.row-fluid .offset9:first-child{margin-left:76.92307692307693%;*margin-left:76.81669394435352%}.row-fluid .offset8{margin-left:70.94017094017094%;*margin-left:70.83378796144753%}.row-fluid .offset8:first-child{margin-left:68.37606837606839%;*margin-left:68.26968539734497%}.row-fluid .offset7{margin-left:62.393162393162385%;*margin-left:62.28677941443899%}.row-fluid .offset7:first-child{margin-left:59.82905982905982%;*margin-left:59.72267685033642%}.row-fluid .offset6{margin-left:53.84615384615384%;*margin-left:53.739770867430444%}.row-fluid .offset6:first-child{margin-left:51.28205128205128%;*margin-left:51.175668303327875%}.row-fluid .offset5{margin-left:45.299145299145295%;*margin-left:45.1927623204219%}.row-fluid .offset5:first-child{margin-left:42.73504273504273%;*margin-left:42.62865975631933%}.row-fluid .offset4{margin-left:36.75213675213675%;*margin-left:36.645753773413354%}.row-fluid .offset4:first-child{margin-left:34.18803418803419%;*margin-left:34.081651209310785%}.row-fluid .offset3{margin-left:28.205128205128204%;*margin-left:28.0987452264048%}.row-fluid .offset3:first-child{margin-left:25.641025641025642%;*margin-left:25.53464266230224%}.row-fluid .offset2{margin-left:19.65811965811966%;*margin-left:19.551736679396257%}.row-fluid .offset2:first-child{margin-left:17.094017094017094%;*margin-left:16.98763411529369%}.row-fluid .offset1{margin-left:11.11111111111111%;*margin-left:11.004728132387708%}.row-fluid .offset1:first-child{margin-left:8.547008547008547%;*margin-left:8.440625568285142%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:30px}input.span12,textarea.span12,.uneditable-input.span12{width:1156px}input.span11,textarea.span11,.uneditable-input.span11{width:1056px}input.span10,textarea.span10,.uneditable-input.span10{width:956px}input.span9,textarea.span9,.uneditable-input.span9{width:856px}input.span8,textarea.span8,.uneditable-input.span8{width:756px}input.span7,textarea.span7,.uneditable-input.span7{width:656px}input.span6,textarea.span6,.uneditable-input.span6{width:556px}input.span5,textarea.span5,.uneditable-input.span5{width:456px}input.span4,textarea.span4,.uneditable-input.span4{width:356px}input.span3,textarea.span3,.uneditable-input.span3{width:256px}input.span2,textarea.span2,.uneditable-input.span2{width:156px}input.span1,textarea.span1,.uneditable-input.span1{width:56px}.thumbnails{margin-left:-30px}.thumbnails>li{margin-left:30px}.row-fluid .thumbnails{margin-left:0}}@media(min-width:768px) and (max-width:979px){.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:724px}.span12{width:724px}.span11{width:662px}.span10{width:600px}.span9{width:538px}.span8{width:476px}.span7{width:414px}.span6{width:352px}.span5{width:290px}.span4{width:228px}.span3{width:166px}.span2{width:104px}.span1{width:42px}.offset12{margin-left:764px}.offset11{margin-left:702px}.offset10{margin-left:640px}.offset9{margin-left:578px}.offset8{margin-left:516px}.offset7{margin-left:454px}.offset6{margin-left:392px}.offset5{margin-left:330px}.offset4{margin-left:268px}.offset3{margin-left:206px}.offset2{margin-left:144px}.offset1{margin-left:82px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.7624309392265194%;*margin-left:2.709239449864817%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.7624309392265194%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.43646408839778%;*width:91.38327259903608%}.row-fluid .span10{width:82.87292817679558%;*width:82.81973668743387%}.row-fluid .span9{width:74.30939226519337%;*width:74.25620077583166%}.row-fluid .span8{width:65.74585635359117%;*width:65.69266486422946%}.row-fluid .span7{width:57.18232044198895%;*width:57.12912895262725%}.row-fluid .span6{width:48.61878453038674%;*width:48.56559304102504%}.row-fluid .span5{width:40.05524861878453%;*width:40.00205712942283%}.row-fluid .span4{width:31.491712707182323%;*width:31.43852121782062%}.row-fluid .span3{width:22.92817679558011%;*width:22.87498530621841%}.row-fluid .span2{width:14.3646408839779%;*width:14.311449394616199%}.row-fluid .span1{width:5.801104972375691%;*width:5.747913483013988%}.row-fluid .offset12{margin-left:105.52486187845304%;*margin-left:105.41847889972962%}.row-fluid .offset12:first-child{margin-left:102.76243093922652%;*margin-left:102.6560479605031%}.row-fluid .offset11{margin-left:96.96132596685082%;*margin-left:96.8549429881274%}.row-fluid .offset11:first-child{margin-left:94.1988950276243%;*margin-left:94.09251204890089%}.row-fluid .offset10{margin-left:88.39779005524862%;*margin-left:88.2914070765252%}.row-fluid .offset10:first-child{margin-left:85.6353591160221%;*margin-left:85.52897613729868%}.row-fluid .offset9{margin-left:79.8342541436464%;*margin-left:79.72787116492299%}.row-fluid .offset9:first-child{margin-left:77.07182320441989%;*margin-left:76.96544022569647%}.row-fluid .offset8{margin-left:71.2707182320442%;*margin-left:71.16433525332079%}.row-fluid .offset8:first-child{margin-left:68.50828729281768%;*margin-left:68.40190431409427%}.row-fluid .offset7{margin-left:62.70718232044199%;*margin-left:62.600799341718584%}.row-fluid .offset7:first-child{margin-left:59.94475138121547%;*margin-left:59.838368402492065%}.row-fluid .offset6{margin-left:54.14364640883978%;*margin-left:54.037263430116376%}.row-fluid .offset6:first-child{margin-left:51.38121546961326%;*margin-left:51.27483249088986%}.row-fluid .offset5{margin-left:45.58011049723757%;*margin-left:45.47372751851417%}.row-fluid .offset5:first-child{margin-left:42.81767955801105%;*margin-left:42.71129657928765%}.row-fluid .offset4{margin-left:37.01657458563536%;*margin-left:36.91019160691196%}.row-fluid .offset4:first-child{margin-left:34.25414364640884%;*margin-left:34.14776066768544%}.row-fluid .offset3{margin-left:28.45303867403315%;*margin-left:28.346655695309746%}.row-fluid .offset3:first-child{margin-left:25.69060773480663%;*margin-left:25.584224756083227%}.row-fluid .offset2{margin-left:19.88950276243094%;*margin-left:19.783119783707537%}.row-fluid .offset2:first-child{margin-left:17.12707182320442%;*margin-left:17.02068884448102%}.row-fluid .offset1{margin-left:11.32596685082873%;*margin-left:11.219583872105325%}.row-fluid .offset1:first-child{margin-left:8.56353591160221%;*margin-left:8.457152932878806%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:710px}input.span11,textarea.span11,.uneditable-input.span11{width:648px}input.span10,textarea.span10,.uneditable-input.span10{width:586px}input.span9,textarea.span9,.uneditable-input.span9{width:524px}input.span8,textarea.span8,.uneditable-input.span8{width:462px}input.span7,textarea.span7,.uneditable-input.span7{width:400px}input.span6,textarea.span6,.uneditable-input.span6{width:338px}input.span5,textarea.span5,.uneditable-input.span5{width:276px}input.span4,textarea.span4,.uneditable-input.span4{width:214px}input.span3,textarea.span3,.uneditable-input.span3{width:152px}input.span2,textarea.span2,.uneditable-input.span2{width:90px}input.span1,textarea.span1,.uneditable-input.span1{width:28px}}@media(max-width:767px){body{padding-right:20px;padding-left:20px}.navbar-fixed-top,.navbar-fixed-bottom,.navbar-static-top{margin-right:-20px;margin-left:-20px}.container-fluid{padding:0}.dl-horizontal dt{float:none;width:auto;clear:none;text-align:left}.dl-horizontal dd{margin-left:0}.container{width:auto}.row-fluid{width:100%}.row,.thumbnails{margin-left:0}.thumbnails>li{float:none;margin-left:0}[class*="span"],.uneditable-input[class*="span"],.row-fluid [class*="span"]{display:block;float:none;width:100%;margin-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.span12,.row-fluid .span12{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="offset"]:first-child{margin-left:0}.input-large,.input-xlarge,.input-xxlarge,input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.input-prepend input,.input-append input,.input-prepend input[class*="span"],.input-append input[class*="span"]{display:inline-block;width:auto}.controls-row [class*="span"]+[class*="span"]{margin-left:0}.modal{position:fixed;top:20px;right:20px;left:20px;width:auto;margin:0}.modal.fade{top:-100px}.modal.fade.in{top:20px}}@media(max-width:480px){.nav-collapse{-webkit-transform:translate3d(0,0,0)}.page-header h1 small{display:block;line-height:20px}input[type="checkbox"],input[type="radio"]{border:1px solid #ccc}.form-horizontal .control-label{float:none;width:auto;padding-top:0;text-align:left}.form-horizontal .controls{margin-left:0}.form-horizontal .control-list{padding-top:0}.form-horizontal .form-actions{padding-right:10px;padding-left:10px}.media .pull-left,.media .pull-right{display:block;float:none;margin-bottom:10px}.media-object{margin-right:0;margin-left:0}.modal{top:10px;right:10px;left:10px}.modal-header .close{padding:10px;margin:-10px}.carousel-caption{position:static}}@media(max-width:979px){body{padding-top:0}.navbar-fixed-top,.navbar-fixed-bottom{position:static}.navbar-fixed-top{margin-bottom:20px}.navbar-fixed-bottom{margin-top:20px}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding:5px}.navbar .container{width:auto;padding:0}.navbar .brand{padding-right:10px;padding-left:10px;margin:0 0 0 -5px}.nav-collapse{clear:both}.nav-collapse .nav{float:none;margin:0 0 10px}.nav-collapse .nav>li{float:none}.nav-collapse .nav>li>a{margin-bottom:2px}.nav-collapse .nav>.divider-vertical{display:none}.nav-collapse .nav .nav-header{color:#777;text-shadow:none}.nav-collapse .nav>li>a,.nav-collapse .dropdown-menu a{padding:9px 15px;font-weight:bold;color:#777;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.nav-collapse .btn{padding:4px 10px 4px;font-weight:normal;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.nav-collapse .dropdown-menu li+li a{margin-bottom:2px}.nav-collapse .nav>li>a:hover,.nav-collapse .nav>li>a:focus,.nav-collapse .dropdown-menu a:hover,.nav-collapse .dropdown-menu a:focus{background-color:#f2f2f2}.navbar-inverse .nav-collapse .nav>li>a,.navbar-inverse .nav-collapse .dropdown-menu a{color:#999}.navbar-inverse .nav-collapse .nav>li>a:hover,.navbar-inverse .nav-collapse .nav>li>a:focus,.navbar-inverse .nav-collapse .dropdown-menu a:hover,.navbar-inverse .nav-collapse .dropdown-menu a:focus{background-color:#111}.nav-collapse.in .btn-group{padding:0;margin-top:5px}.nav-collapse .dropdown-menu{position:static;top:auto;left:auto;display:none;float:none;max-width:none;padding:0;margin:0 15px;background-color:transparent;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.nav-collapse .open>.dropdown-menu{display:block}.nav-collapse .dropdown-menu:before,.nav-collapse .dropdown-menu:after{display:none}.nav-collapse .dropdown-menu .divider{display:none}.nav-collapse .nav>li>.dropdown-menu:before,.nav-collapse .nav>li>.dropdown-menu:after{display:none}.nav-collapse .navbar-form,.nav-collapse .navbar-search{float:none;padding:10px 15px;margin:10px 0;border-top:1px solid #f2f2f2;border-bottom:1px solid #f2f2f2;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}.navbar-inverse .nav-collapse .navbar-form,.navbar-inverse .nav-collapse .navbar-search{border-top-color:#111;border-bottom-color:#111}.navbar .nav-collapse .nav.pull-right{float:none;margin-left:0}.nav-collapse,.nav-collapse.collapse{height:0;overflow:hidden}.navbar .btn-navbar{display:block}.navbar-static .navbar-inner{padding-right:10px;padding-left:10px}}@media(min-width:980px){.nav-collapse.collapse{height:auto !important;overflow:visible !important}}.clear{clear:both;visibility:hidden}.clear hr{display:none}.section p,.section p,.section dt,.section dt{margin-right:7px;margin-left:7px}#ohloh{margin-bottom:10px}#poweredBy{text-align:center}a.externalLink{padding-right:18px}a.newWindow{background:url('../images/window-new.png') right center no-repeat;padding-right:18px}a.externalLink[href^=http]{background:url('../images/internet-web-browser.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".asc"]{background:url('../images/accessories-text-editor.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".jpg"],a.externalLink[href$=".jpeg"],a.externalLink[href$=".gif"],a.externalLink[href$=".png"]{background:url('../images/image-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".tar.gz"],a.externalLink[href$=".zip"]{background:url('../images/package-x-generic.png') right center no-repeat;padding-right:18px}a.externalLink[href$=".md5"],a.externalLink[href$=".sha1"]{background:url('../images/document-properties.png') right center no-repeat;padding-right:18px}a.externalLink[href^=https]{background:url('../images/application-certificate.png') right center no-repeat;padding-right:18px}a.externalLink[href^=file]{background:url('../images/drive-harddisk.png') right center no-repeat;padding-right:18px}a.externalLink[href^=ftp]{background:url('../images/network-server.png') right center no-repeat;padding-right:18px}a.externalLink[href^=mailto]{background:url('../images/contact-new.png') right center no-repeat;padding-right:18px}li.none{list-style:none}.search-query{background-image:url(https://cse.google.com/cse/images/google_custom_search_watermark.gif);background-attachment:initial;background-origin:initial;background-clip:initial;background-color:#fff;background-position:0 50%;background-repeat:no-repeat no-repeat;width:95%}body.topBarEnabled{padding-top:60px}body.topBarDisabled{padding-top:20px}.builtBy{display:block}img.builtBy{margin:10px auto}#search-form{margin-left:9px;margin-right:9px}.hero-unit h2{font-size:60px}tt{padding:0 3px 2px;font-family:Monaco,Andale Mono,Courier New,monospace;font-size:.9em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;background-color:#fee9cc;color:rgba(0,0,0,0.75);padding:1px 3px}li{color:#404040}table.zebra-striped{background-color:#FFF}.footer{background-color:#EEE}.sidebar-nav{padding-left:0;padding-right:0}.sidebar-nav .icon-chevron-right,.sidebar-nav .icon-chevron-down{margin-top:2px;margin-right:-6px;float:right;opacity:.25}li.pull-right{margin-left:3px;margin-right:3px}.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0;padding-left:15px}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} \ No newline at end of file diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/print.css b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/print.css new file mode 100644 index 0000000..cd19a8c --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/print.css @@ -0,0 +1,21 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {display: none !important;} +#bodyColumn, body.docs div.docs {margin: 0 !important;border: none !important} diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/site.css b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/site.css new file mode 100644 index 0000000..055e7e2 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/css/site.css @@ -0,0 +1 @@ +/* You can override this file with your own styles */ \ No newline at end of file diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependencies.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependencies.html new file mode 100644 index 0000000..490ae35 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependencies.html @@ -0,0 +1,5824 @@ + + + + + + + + Web-BPM Docs – Project Dependencies + + + + + + +
    +
    + + + +
    +
    +
    +

    Project Dependencies

    +

    compile

    +

    The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:

    + + + + + + + + + + + + + + + + + + + + + + + + +
    GroupIdArtifactIdVersionTypeLicenses
    ru.cg.webbpm.packages.basebackend3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.packages.baseconverters3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.packages.basefrontend3.143.0-SNAPSHOTjar-
    +

    Project Transitive Dependencies

    +

    The following is a list of transitive dependencies for this project. Transitive dependencies are the dependencies of the project dependencies.

    +

    compile

    +

    The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    GroupIdArtifactIdVersionTypeLicenses
    OAuth2EsiaOAuth2Esia1.1jar-
    ch.qos.logbacklogback-classic1.2.3jarEclipse Public License - v 1.0GNU Lesser General Public License
    ch.qos.logbacklogback-core1.2.3jarEclipse Public License - v 1.0GNU Lesser General Public License
    com.carrotsearchhppc0.8.1jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.corejackson-annotations2.12.4jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.corejackson-core2.12.4jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.corejackson-databind2.12.4jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.dataformatjackson-dataformat-cbor2.8.11jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.dataformatjackson-dataformat-smile2.8.11jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.dataformatjackson-dataformat-yaml2.8.11jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.datatypejackson-datatype-jsr3102.12.4jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.jaxrsjackson-jaxrs-base2.14.0jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.jaxrsjackson-jaxrs-json-provider2.14.0jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.modulejackson-module-jaxb-annotations2.14.0jarThe Apache Software License, Version 2.0
    com.github.ben-manes.caffeinecaffeine2.9.2jarApache License, Version 2.0
    com.github.spullara.mustache.javacompiler0.9.10jarApache License 2.0
    com.github.virtualdcurvesapi1.06jarBSD License
    com.google.code.findbugsjsr3051.3.9jarThe Apache Software License, Version 2.0
    com.google.code.gsongson2.3.1jarThe Apache Software License, Version 2.0
    com.google.errorproneerror_prone_annotations2.0.18jarApache 2.0
    com.google.guavaguava23.4-jrejarThe Apache Software License, Version 2.0
    com.google.j2objcj2objc-annotations1.1jarThe Apache Software License, Version 2.0
    com.h2databaseh21.4.199jarMPL 2.0 or EPL 1.0
    com.hazelcasthazelcast4.1.9jarThe Apache Software License, Version 2.0
    com.hazelcasthazelcast-spring4.1.4jarThe Apache Software License, Version 2.0
    com.sun.mailjavax.mail1.5.1jarCDDL/GPLv2+CE
    com.sun.xml.bindjaxb-impl2.3.3jarEclipse Distribution License - v 1.0
    com.tdunningt-digest3.2jarThe Apache Software License, Version 2.0
    com.zaxxerSparseBitSet1.2jarThe Apache Software License, Version 2.0
    commons-codeccommons-codec1.6jarThe Apache Software License, Version 2.0
    commons-iocommons-io2.4jarThe Apache Software License, Version 2.0
    commons-langcommons-lang2.6jarThe Apache Software License, Version 2.0
    commons-loggingcommons-logging1.1.1jarThe Apache Software License, Version 2.0
    io.jsonwebtokenjjwt-api0.10.5jarApache License, Version 2.0
    io.jsonwebtokenjjwt-jackson0.10.5jarApache License, Version 2.0
    io.nettynetty-buffer4.1.43.FinaljarApache License, Version 2.0
    io.nettynetty-codec4.1.43.FinaljarApache License, Version 2.0
    io.nettynetty-codec-http4.1.43.FinaljarApache License, Version 2.0
    io.nettynetty-common4.1.43.FinaljarApache License, Version 2.0
    io.nettynetty-handler4.1.43.FinaljarApache License, Version 2.0
    io.nettynetty-resolver4.1.43.FinaljarApache License, Version 2.0
    io.nettynetty-transport4.1.43.FinaljarApache License, Version 2.0
    jakarta.annotationjakarta.annotation-api1.3.5jarEPL 2.0GPL2 w/ CPE
    jakarta.validationjakarta.validation-api2.0.2jarApache License 2.0
    jakarta.ws.rsjakarta.ws.rs-api2.1.6jarEPL 2.0GPL2 w/ CPE
    javax.activationactivation1.1.1jarCOMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
    javax.activationjavax.activation-api1.2.0jarCDDL/GPLv2+CE
    javax.annotationjavax.annotation-api1.3.2jarCDDL + GPLv2 with classpath exception
    javax.mailjavax.mail-api1.5.4jarCDDL/GPLv2+CE
    javax.xml.bindjaxb-api2.3.1jarCDDL 1.1GPL2 w/ CPE
    joda-timejoda-time2.9.2jarApache 2
    net.java.dev.jnajna4.2.2jarLGPL, version 2.1ASL, version 2
    net.javacrumbs.shedlockshedlock-core0.18.2jarThe Apache Software License, Version 2.0
    net.javacrumbs.shedlockshedlock-provider-jdbc-internal0.18.2jarThe Apache Software License, Version 2.0
    net.javacrumbs.shedlockshedlock-provider-jdbc-template0.18.2jarThe Apache Software License, Version 2.0
    net.javacrumbs.shedlockshedlock-spring0.18.2jarThe Apache Software License, Version 2.0
    net.sf.jopt-simplejopt-simple5.0.2jarThe MIT License
    org.apache.commonscommons-collections44.1jarApache License, Version 2.0
    org.apache.commonscommons-compress1.19jarApache License, Version 2.0
    org.apache.commonscommons-csv1.9.0jarApache License, Version 2.0
    org.apache.commonscommons-lang33.6jarApache License, Version 2.0
    org.apache.commonscommons-math33.6.1jarApache License, Version 2.0
    org.apache.httpcomponentshttpasyncclient4.1.4jarApache License, Version 2.0
    org.apache.httpcomponentshttpclient4.5.1jarApache License, Version 2.0
    org.apache.httpcomponentshttpcore4.4.12jarApache License, Version 2.0
    org.apache.httpcomponentshttpcore-nio4.4.12jarApache License, Version 2.0
    org.apache.httpcomponentshttpmime4.5.13jarApache License, Version 2.0
    org.apache.logging.log4jlog4j-api2.11.1jarApache License, Version 2.0
    org.apache.lucenelucene-analyzers-common8.4.0jarApache 2
    org.apache.lucenelucene-backward-codecs8.4.0jarApache 2
    org.apache.lucenelucene-core8.4.0jarApache 2
    org.apache.lucenelucene-grouping8.4.0jarApache 2
    org.apache.lucenelucene-highlighter8.4.0jarApache 2
    org.apache.lucenelucene-join8.4.0jarApache 2
    org.apache.lucenelucene-memory8.4.0jarApache 2
    org.apache.lucenelucene-misc8.4.0jarApache 2
    org.apache.lucenelucene-queries8.4.0jarApache 2
    org.apache.lucenelucene-queryparser8.4.0jarApache 2
    org.apache.lucenelucene-sandbox8.4.0jarApache 2
    org.apache.lucenelucene-spatial8.4.0jarApache 2
    org.apache.lucenelucene-spatial-extras8.4.0jarApache 2
    org.apache.lucenelucene-spatial3d8.4.0jarApache 2
    org.apache.lucenelucene-suggest8.4.0jarApache 2
    org.apache.mavenmaven-model3.3.3jarApache License, Version 2.0
    org.apache.maven.sharedmaven-invoker3.0.1jarApache License, Version 2.0
    org.apache.maven.sharedmaven-shared-utils3.2.1jarApache License, Version 2.0
    org.apache.poipoi4.1.2jarApache License, Version 2.0
    org.apache.poipoi-ooxml4.1.2jarApache License, Version 2.0
    org.apache.poipoi-ooxml-schemas4.1.2jarApache License, Version 2.0
    org.apache.santuarioxmlsec1.5.7jarThe Apache Software License, Version 2.0
    org.apache.tikatika-core1.7jarThe Apache Software License, Version 2.0
    org.apache.xmlbeansxmlbeans3.1.0jarThe Apache Software License, Version 2.0
    org.aspectjaspectjweaver1.9.5jarEclipse Public License - v 1.0
    org.bouncycastlebcpkix-jdk15on1.60jarBouncy Castle Licence
    org.bouncycastlebcprov-jdk15on1.60jarBouncy Castle Licence
    org.checkerframeworkchecker-qual3.10.0jarThe MIT License
    org.codehaus.mojoanimal-sniffer-annotations1.14jarMIT license
    org.codehaus.plexusplexus-component-annotations1.7.1jarApache License, Version 2.0
    org.codehaus.plexusplexus-utils3.0.20jarThe Apache Software License, Version 2.0
    org.controlsfxcontrolsfx11.1.1jarThe 3-Clause BSD License
    org.easymockeasymock3.5.1jarApache 2
    org.elasticsearchelasticsearch7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearchelasticsearch-cli7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearchelasticsearch-core7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearchelasticsearch-geo7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearchelasticsearch-secure-sm7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearchelasticsearch-ssl-config7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearchelasticsearch-x-content7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearchjna4.5.1jarThe Apache Software License, Version 2.0
    org.elasticsearch.clientelasticsearch-rest-client7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.clientelasticsearch-rest-high-level-client7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.clienttransport7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.pluginaggs-matrix-stats-client7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.pluginlang-mustache-client7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.pluginmapper-extras-client7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.pluginparent-join-client7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.pluginpercolator-client7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.pluginrank-eval-client7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.pluginreindex-client7.6.2jarThe Apache Software License, Version 2.0
    org.elasticsearch.plugintransport-netty4-client7.6.2jarThe Apache Software License, Version 2.0
    org.glassfishjavax.json1.0.4jarDual license consisting of the CDDL v1.1 and GPL v2
    org.glassfish.grizzlygrizzly-framework2.4.4jarEPL-2.0
    org.glassfish.grizzlygrizzly-http2.4.4jarEPL-2.0
    org.glassfish.grizzlygrizzly-http-server2.4.4jarEPL-2.0
    org.glassfish.hk2hk2-api2.6.1jarEPL 2.0GPL2 w/ CPE
    org.glassfish.hk2hk2-locator2.6.1jarEPL 2.0GPL2 w/ CPE
    org.glassfish.hk2hk2-utils2.6.1jarEPL 2.0GPL2 w/ CPE
    org.glassfish.hk2osgi-resource-locator1.0.3jarEPL 2.0GPL2 w/ CPE
    org.glassfish.hk2.externalaopalliance-repackaged2.6.1jarEPL 2.0GPL2 w/ CPE
    org.glassfish.hk2.externaljakarta.inject2.6.1jarEPL 2.0GPL2 w/ CPE
    org.glassfish.jersey.containersjersey-container-grizzly2-http2.35jarEPL 2.0GPL2 w/ CPEEDL 1.0BSD 2-ClauseApache License, 2.0Public DomainModified BSDjQuery licenseMIT licenseW3C license
    org.glassfish.jersey.corejersey-client2.35jarEPL 2.0GPL2 w/ CPEEDL 1.0BSD 2-ClauseApache License, 2.0Public DomainModified BSDjQuery licenseMIT licenseW3C license
    org.glassfish.jersey.corejersey-common2.35jarEPL 2.0The GNU General Public License (GPL), Version 2, With Classpath ExceptionApache License, 2.0Public Domain
    org.glassfish.jersey.corejersey-server2.35jarEPL 2.0The GNU General Public License (GPL), Version 2, With Classpath ExceptionApache License, 2.0Modified BSD
    org.glassfish.jersey.extjersey-entity-filtering2.35jarEPL 2.0GPL2 w/ CPEEDL 1.0BSD 2-ClauseApache License, 2.0Public DomainModified BSDjQuery licenseMIT licenseW3C license
    org.glassfish.jersey.injectjersey-hk22.35jarEPL 2.0GPL2 w/ CPEEDL 1.0BSD 2-ClauseApache License, 2.0Public DomainModified BSDjQuery licenseMIT licenseW3C license
    org.glassfish.jersey.mediajersey-media-json-jackson2.35jarEPL 2.0The GNU General Public License (GPL), Version 2, With Classpath ExceptionApache License, 2.0
    org.hdrhistogramHdrHistogram2.1.9jarPublic Domain, per Creative Commons CC0
    org.hsqldbhsqldb2.5.2jarHSQLDB License, a BSD open source license
    org.javassistjavassist3.25.0-GAjarMPL 1.1LGPL 2.1Apache License 2.0
    org.jooqjooq3.14.15jarApache License, Version 2.0
    org.jooqjooq-meta3.14.15jarApache License, Version 2.0
    org.jooqjooq-meta-extensions3.14.15jarApache License, Version 2.0
    org.jooqjooq-meta-extensions-liquibase3.14.15jarApache License, Version 2.0
    org.jsonjson20220924jarPublic Domain
    org.liquibaseliquibase-core3.10.3jarApache License, Version 2.0
    org.mnode.ical4jical4j3.0.5jariCal4j - License
    org.objenesisobjenesis2.6jarApache 2
    org.reactivestreamsreactive-streams1.0.2jarCC0
    org.slf4jjul-to-slf4j1.7.10jarMIT License
    org.slf4jslf4j-api1.7.10jarMIT License
    org.springframeworkspring-aop5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-aspects5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-beans5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-context5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-context-support5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-core5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-expression5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-jcl5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-jdbc5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-tx5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-web5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-webmvc5.2.6.RELEASEjarApache License, Version 2.0
    org.springframework.dataspring-data-commons2.3.0.RELEASEjarApache License, Version 2.0
    org.springframework.dataspring-data-elasticsearch4.0.0.RELEASEjarApache License, Version 2.0
    org.springframework.ldapspring-ldap-core2.3.4.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-config5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-core5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-jwt1.0.9.RELEASEjarApache 2.0
    org.springframework.securityspring-security-web5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.security.kerberosspring-security-kerberos-core1.0.1.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.security.kerberosspring-security-kerberos-web1.0.1.RELEASEjarThe Apache Software License, Version 2.0
    org.telegramtelegrambots6.3.0jarMIT License
    org.telegramtelegrambots-meta6.3.0jarMIT License
    org.yamlsnakeyaml1.17jarApache License, Version 2.0
    org.zeroturnaroundzt-exec1.12jarThe Apache Software License, Version 2.0
    org.zeroturnaroundzt-process-killer1.10jarThe Apache Software License, Version 2.0
    org.zeroturnaroundzt-zip1.15jarThe Apache Software License, Version 2.0
    ru.cg.webbpm.modulesexpression3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modulesinject3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modulesstandard-annotations3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.moduleswebkit-annotations3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.moduleswebkit-base3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.moduleswebkit-beans3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.moduleswebkit-rpc3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.bpmnbpmn-beans3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.coreapp-info3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.coreerror-handling-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.coremetrics3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.databasedatabase-beans3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.jndijndi-beans3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.jndijndi-inject3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-adapter3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-beans3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-db-synchronization-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-db-synchronization-ldap-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-esia3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studioresources3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.basecore-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.baseplatform-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.bpmnbpmn-core-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.bpmnwebbpm-process-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.databasedatabase-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.databasedatabase-models3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.page-designerserialized-page-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.script-editorserialized-object-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.scriptingcompile-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.scriptingmetadata-models3.143.0-SNAPSHOTjar-
    ru.fixaggregating-profiler1.4.7jarThe Apache License, Version 2.0
    ru.micord.fiasclient2.24.1jar-
    ru.micord.gargar-client2.6.0jar-
    ru.micord.gargar-core2.6.0jar-
    +

    runtime

    +

    The following is a list of runtime dependencies for this project. These dependencies are required to run the application:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    GroupIdArtifactIdVersionTypeLicenses
    com.sun.activationjakarta.activation1.2.2jarEDL 1.0
    io.jsonwebtokenjjwt-impl0.10.5jarApache License, Version 2.0
    xercesxercesImpl2.11.0jarThe Apache Software License, Version 2.0
    xml-apisxml-apis1.4.01jarThe Apache Software License, Version 2.0The SAX LicenseThe W3C License
    +

    provided

    +

    The following is a list of provided dependencies for this project. These dependencies are required to compile the application, but should be provided by default when using the library:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    GroupIdArtifactIdVersionTypeLicenses
    com.zaxxerHikariCP2.4.0jarThe Apache Software License, Version 2.0
    jakarta.xml.bindjakarta.xml.bind-api2.3.3jarEclipse Distribution License - v 1.0
    javaxjavaee-api7.0jarCDDL + GPLv2 with classpath exception
    org.postgresqlpostgresql42.5.2jarBSD-2-Clause
    org.xerialsqlite-jdbc3.34.0jarThe Apache Software License, Version 2.0
    ru.cg.webbpm.modules.corecore-runtime-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.databasedatabase-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.databasedatabase-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.resourcesresources-api3.143.0-SNAPSHOTjar-
    +

    Project Dependency Graph

    + +
    +

    Dependency Tree

    +
    +

    Licenses

    +

    MPL 2.0 or EPL 1.0: H2 Database Engine

    +

    Apache 2.0: Spring Security JWT Library, error-prone annotations

    +

    The Apache License, Version 2.0: ru.fix:aggregating-profiler

    +

    MIT License: JUL to SLF4J bridge, SLF4J API Module, Telegram Bots, Telegram Bots Meta

    +

    jQuery license: jersey-container-grizzly2-http, jersey-core-client, jersey-ext-entity-filtering, jersey-inject-hk2

    +

    GPL2 w/ CPE: HK2 API module, HK2 Implementation Utilities, Jakarta Annotations API, OSGi resource locator, ServiceLocator Default Implementation, aopalliance version 1.0 repackaged as a module, jakarta.ws.rs-api, javax.inject:1 as OSGi bundle, jaxb-api, jersey-container-grizzly2-http, jersey-core-client, jersey-ext-entity-filtering, jersey-inject-hk2

    +

    CDDL/GPLv2+CE: JavaBeans Activation Framework API jar, JavaMail API, JavaMail API jar

    +

    Apache 2: EasyMock, Joda-Time, Lucene Common Analyzers, Lucene Core, Lucene Grouping, Lucene Highlighter, Lucene Join, Lucene Memory, Lucene Miscellaneous, Lucene Queries, Lucene QueryParsers, Lucene Sandbox, Lucene Spatial, Lucene Spatial 3D, Lucene Spatial Extras, Lucene Suggest, Objenesis

    +

    CC0: reactive-streams

    +

    Unknown: OAuth2Esia, app-info, backend, bpmn-beans, bpmn-core-api, client, compile-api, converters, core-api, core-runtime-api, database-api, database-beans, database-impl, database-models, error-handling-api, expression, frontend, gar-client, gar-core, inject, jndi-beans, jndi-inject, metadata-models, metrics, platform-api, resources, resources-api, security-adapter, security-api, security-beans, security-db-synchronization-api, security-db-synchronization-ldap-impl, security-esia, serialized-object-api, serialized-page-api, standard-annotations, webbpm-process-api, webkit-annotations, webkit-base, webkit-beans, webkit-rpc

    +

    Public Domain, per Creative Commons CC0: HdrHistogram

    +

    Apache License 2.0: Jakarta Bean Validation API, Javassist, compiler

    +

    BSD License: curvesapi

    +

    The MIT License: Checker Qual, JOpt Simple

    +

    Apache License, Version 2.0: Apache Commons CSV, Apache Commons Collections, Apache Commons Compress, Apache Commons Lang, Apache Commons Math, Apache HttpAsyncClient, Apache HttpClient, Apache HttpClient Mime, Apache HttpCore, Apache HttpCore NIO, Apache Log4j API, Apache Maven Invoker, Apache Maven Shared Utils, Apache POI, Caffeine cache, JJWT :: API, JJWT :: Extensions :: Jackson, JJWT :: Impl, Liquibase, Maven Model, Netty/Buffer, Netty/Codec, Netty/Codec/HTTP, Netty/Common, Netty/Handler, Netty/Resolver, Netty/Transport, Plexus :: Component Annotations, SnakeYAML, Spring AOP, Spring Aspects, Spring Beans, Spring Commons Logging Bridge, Spring Context, Spring Context Support, Spring Core, Spring Data Core, Spring Data Elasticsearch, Spring Expression Language (SpEL), Spring JDBC, Spring Transaction, Spring Web, Spring Web MVC, jOOQ, jOOQ Meta, jOOQ Meta Extensions, jOOQ Meta Extensions Liquibase

    +

    COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0: JavaBeans(TM) Activation Framework

    +

    EPL 2.0: HK2 API module, HK2 Implementation Utilities, Jakarta Annotations API, OSGi resource locator, ServiceLocator Default Implementation, aopalliance version 1.0 repackaged as a module, jakarta.ws.rs-api, javax.inject:1 as OSGi bundle, jersey-container-grizzly2-http, jersey-core-client, jersey-core-common, jersey-core-server, jersey-ext-entity-filtering, jersey-inject-hk2, jersey-media-json-jackson

    +

    MIT license: Animal Sniffer Annotations, jersey-container-grizzly2-http, jersey-core-client, jersey-ext-entity-filtering, jersey-inject-hk2

    +

    MPL 1.1: Javassist

    +

    LGPL, version 2.1: Java Native Access

    +

    BSD 2-Clause: jersey-container-grizzly2-http, jersey-core-client, jersey-ext-entity-filtering, jersey-inject-hk2

    +

    Apache License, 2.0: jersey-container-grizzly2-http, jersey-core-client, jersey-core-common, jersey-core-server, jersey-ext-entity-filtering, jersey-inject-hk2, jersey-media-json-jackson

    +

    CDDL 1.1: jaxb-api

    +

    The SAX License: XML Commons External Components XML APIs

    +

    The 3-Clause BSD License: ControlsFX

    +

    HSQLDB License, a BSD open source license: HyperSQL Database

    +

    BSD-2-Clause: PostgreSQL JDBC Driver

    +

    The W3C License: XML Commons External Components XML APIs

    +

    Public Domain: JSON in Java, jersey-container-grizzly2-http, jersey-core-client, jersey-core-common, jersey-ext-entity-filtering, jersey-inject-hk2

    +

    GNU Lesser General Public License: Logback Classic Module, Logback Core Module

    +

    Bouncy Castle Licence: Bouncy Castle PKIX, CMS, EAC, TSP, PKCS, OCSP, CMP, and CRMF APIs, Bouncy Castle Provider

    +

    W3C license: jersey-container-grizzly2-http, jersey-core-client, jersey-ext-entity-filtering, jersey-inject-hk2

    +

    EDL 1.0: Jakarta Activation, jersey-container-grizzly2-http, jersey-core-client, jersey-ext-entity-filtering, jersey-inject-hk2

    +

    iCal4j - License: ical4j

    +

    Modified BSD: jersey-container-grizzly2-http, jersey-core-client, jersey-core-server, jersey-ext-entity-filtering, jersey-inject-hk2

    +

    Eclipse Distribution License - v 1.0: Jakarta XML Binding API, Old JAXB Runtime

    +

    LGPL 2.1: Javassist

    +

    ASL, version 2: Java Native Access

    +

    CDDL + GPLv2 with classpath exception: Java(TM) EE 7 Specification APIs, javax.annotation API

    +

    Dual license consisting of the CDDL v1.1 and GPL v2: JSR 353 (JSON Processing) Default Provider

    +

    EPL-2.0: grizzly-framework, grizzly-http, grizzly-http-server

    +

    The Apache Software License, Version 2.0: Apache Tika core, Apache XML Security for Java, Commons Codec, Commons IO, Commons Lang, Commons Logging, Elastic JNA Distribution, FindBugs-jsr305, Gson, Guava: Google Core Libraries for Java, HPPC Collections, HikariCP, J2ObjC Annotations, Jackson dataformat: CBOR, Jackson dataformat: Smile, Jackson datatype: JSR310, Jackson module: Old JAXB Annotations (javax.xml.bind), Jackson-JAXRS: JSON, Jackson-JAXRS: base, Jackson-annotations, Jackson-core, Jackson-dataformat-YAML, Plexus Common Utilities, SQLite JDBC, SparseBitSet, Spring Security Kerberos Core, Spring Security Kerberos Web, T-Digest, XML Commons External Components XML APIs, Xerces2-j, XmlBeans, ZT Process Executor, ZT Process Killer, ZT Zip, aggs-matrix-stats, elasticsearch-cli, elasticsearch-core, elasticsearch-geo, elasticsearch-secure-sm, elasticsearch-ssl-config, elasticsearch-x-content, hazelcast, hazelcast-spring, jackson-databind, lang-mustache, mapper-extras, parent-join, percolator, rank-eval, reindex, rest, rest-high-level, server, shedlock-core, shedlock-provider-jdbc-internal, shedlock-provider-jdbc-template, shedlock-spring, spring-ldap-core, spring-security-config, spring-security-core, spring-security-web, transport, transport-netty4

    +

    Eclipse Public License - v 1.0: AspectJ weaver, Logback Classic Module, Logback Core Module

    +

    The GNU General Public License (GPL), Version 2, With Classpath Exception: jersey-core-common, jersey-core-server, jersey-media-json-jackson

    +

    Dependency File Details

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    FilenameSizeEntriesClassesPackagesJava VersionDebug InformationSealed
    OAuth2Esia-1.1.jar34.5 kB362431.5YesNo
    logback-classic-1.2.3.jar290.3 kB234175271.6YesNo
    logback-core-1.2.3.jar471.9 kB419373361.6YesNo
    hppc-0.8.1.jar1.2 MB96495051.7YesNo
    jackson-annotations-2.12.4.jar75.7 kB84722-YesNo
    jackson-core-2.12.4.jar365.2 kB15112513-YesNo
    jackson-databind-2.12.4.jar1.5 MB73770123-YesNo
    jackson-dataformat-cbor-2.8.11.jar50.7 kB23911.7YesNo
    jackson-dataformat-smile-2.8.11.jar73.9 kB321721.7YesNo
    jackson-dataformat-yaml-2.8.11.jar40.9 kB311321.7YesNo
    jackson-datatype-jsr310-2.12.4.jar120.4 kB79597-YesNo
    jackson-jaxrs-base-2.14.0.jar31.9 kB37195-YesNo
    jackson-jaxrs-json-provider-2.14.0.jar16.7 kB31113-YesNo
    jackson-module-jaxb-annotations-2.14.0.jar36.8 kB34144-YesNo
    caffeine-2.9.2.jar925.3 kB70369241.8YesNo
    compiler-0.9.10.jar111.5 kB1069071.8YesNo
    curvesapi-1.06.jar111.9 kB12010161.5YesNo
    jsr305-1.3.9.jar33 kB723531.5YesNo
    gson-2.3.1.jar210.9 kB17516561.5YesNo
    error_prone_annotations-2.0.18.jar12.1 kB311921.7NoNo
    guava-23.4-jre.jar2.7 MB19461916181.8YesNo
    j2objc-annotations-1.1.jar8.8 kB231211.5YesNo
    h2-1.4.199.jar2.2 MB87787244-YesNo
    hazelcast-4.1.9.jar11.6 MB752469834671.8YesNo
    hazelcast-spring-4.1.4.jar163.1 kB472851.8YesNo
    jakarta.activation-1.2.2.jar68.5 kB61434-YesNo
    javax.mail-1.5.1.jar545.4 kB342311141.5YesNo
    jaxb-impl-2.3.3.jar1.1 MB92372432-YesNo
    t-digest-3.2.jar51.2 kB291811.7YesNo
    HikariCP-2.4.0.jar125.4 kB897461.7YesNo
    SparseBitSet-1.2.jar24.5 kB251511.5YesNo
    commons-codec-1.6.jar232.8 kB2187661.5YesNo
    commons-io-2.4.jar185.1 kB12811061.6YesNo
    commons-lang-2.6.jar284.2 kB155133101.3YesNo
    commons-logging-1.1.1.jar60.7 kB422821.1YesNo
    jjwt-api-0.10.5.jar74.8 kB887641.7YesNo
    jjwt-impl-0.10.5.jar68 kB665341.7YesNo
    jjwt-jackson-0.10.5.jar4.7 kB12211.7YesNo
    netty-buffer-4.1.43.Final.jar277.4 kB13311711.6YesNo
    netty-codec-4.1.43.Final.jar318.4 kB220198101.6YesNo
    netty-codec-http-4.1.43.Final.jar594.7 kB38135591.6YesNo
    netty-common-4.1.43.Final.jar605.4 kB48845891.6YesNo
    netty-handler-4.1.43.Final.jar441.3 kB302275111.6YesNo
    netty-resolver-4.1.43.Final.jar32.8 kB382611.6YesNo
    netty-transport-4.1.43.Final.jar474 kB387359121.6YesNo
    jakarta.annotation-api-1.3.5.jar25.1 kB281531.8YesNo
    jakarta.validation-api-2.0.2.jar91.9 kB16014391.8YesNo
    jakarta.ws.rs-api-2.1.6.jar140.4 kB1551387-YesNo
    jakarta.xml.bind-api-2.3.3.jar115.6 kB1371117-YesNo
    javaee-api-7.0.jar1.9 MB238922381331.7YesNo
    activation-1.1.1.jar69.4 kB503831.4YesNo
    javax.activation-api-1.2.0.jar56.7 kB413111.5YesNo
    javax.annotation-api-1.3.2.jar26.6 kB291531.8YesNo
    javax.mail-api-1.5.4.jar194 kB14813451.5YesNo
    jaxb-api-2.3.1.jar128.1 kB1361117-YesNo
    joda-time-2.9.2.jar625.6 kB75224671.5YesNo
    jna-4.2.2.jar1.1 MB15410731.6YesNo
    shedlock-core-0.18.2.jar13.4 kB281621.8YesNo
    shedlock-provider-jdbc-internal-0.18.2.jar5.1 kB14111.8YesNo
    shedlock-provider-jdbc-template-0.18.2.jar4.3 kB14211.8YesNo
    shedlock-spring-0.18.2.jar13.3 kB211011.8YesNo
    jopt-simple-5.0.2.jar78.1 kB715931.7YesNo
    commons-collections4-4.1.jar751.2 kB548518181.6YesNo
    commons-compress-1.19.jar615.1 kB395354291.7YesNo
    commons-csv-1.9.0.jar51.3 kB301711.8YesNo
    commons-lang3-3.6.jar494.9 kB292267131.7YesNo
    commons-math3-3.6.1.jar2.2 MB14021301751.5YesNo
    httpasyncclient-4.1.4.jar180 kB1118681.6YesNo
    httpclient-4.5.1.jar732.8 kB502461241.6YesNo
    httpcore-4.4.12.jar328.3 kB283253171.6YesNo
    httpcore-nio-4.4.12.jar367.7 kB270241141.6YesNo
    httpmime-4.5.13.jar41.8 kB402321.6YesNo
    log4j-api-2.11.1.jar264.1 kB1941628-YesNo
    lucene-analyzers-common-8.4.0.jar1.7 MB693579631.8YesNo
    lucene-backward-codecs-8.4.0.jar139.4 kB1018641.8YesNo
    lucene-core-8.4.0.jar3.3 MB20751978271.8YesNo
    lucene-grouping-8.4.0.jar90.8 kB665711.8YesNo
    lucene-highlighter-8.4.0.jar209.2 kB14313231.8YesNo
    lucene-join-8.4.0.jar148.9 kB11210311.8YesNo
    lucene-memory-8.4.0.jar51.9 kB372011.8YesNo
    lucene-misc-8.4.0.jar99 kB805781.8YesNo
    lucene-queries-8.4.0.jar369.8 kB29828471.8YesNo
    lucene-queryparser-8.4.0.jar382.1 kB292254251.8YesNo
    lucene-sandbox-8.4.0.jar320.7 kB18716061.8YesNo
    lucene-spatial-8.4.0.jar14.5 kB13421.8YesNo
    lucene-spatial-extras-8.4.0.jar240.3 kB164147101.8YesNo
    lucene-spatial3d-8.4.0.jar306.8 kB15214321.8YesNo
    lucene-suggest-8.4.0.jar249.5 kB14913171.8YesNo
    maven-model-3.3.3.jar160.8 kB675031.7YesNo
    maven-invoker-3.0.1.jar33 kB341711.7YesNo
    maven-shared-utils-3.2.1.jar166.6 kB10984101.6YesNo
    poi-4.1.2.jar2.9 MB18431764661.8YesNo
    poi-ooxml-4.1.2.jar1.9 MB942878481.8YesNo
    poi-ooxml-schemas-4.1.2.jar7.9 MB75434261501.8NoNo
    xmlsec-1.5.7.jar656 kB484393321.5YesNo
    tika-core-1.7.jar526.2 kB294235171.6YesNo
    xmlbeans-3.1.0.jar2.6 MB20921373511.6YesNo
    aspectjweaver-1.9.5.jar2 MB1020968361.8YesNo
    bcpkix-jdk15on-1.60.jar796.5 kB723674421.5NoNo
    bcprov-jdk15on-1.60.jar4.2 MB349433301491.5NoNo
    checker-qual-3.10.0.jar207 kB396330291.8YesNo
    animal-sniffer-annotations-1.14.jar3.5 kB12111.5NoNo
    plexus-component-annotations-1.7.1.jar4.3 kB15311.6NoNo
    plexus-utils-3.0.20.jar243.1 kB12910491.5YesNo
    controlsfx-11.1.1.jar1.4 MB77065241-YesNo
    easymock-3.5.1.jar540.2 kB404375131.6YesNo
    elasticsearch-7.6.2.jar11.8 MB63846048286-YesNo
    elasticsearch-cli-7.6.2.jar17.1 kB16911.8YesNo
    elasticsearch-core-7.6.2.jar44.7 kB492310-YesNo
    elasticsearch-geo-7.6.2.jar45 kB312321.8YesNo
    elasticsearch-secure-sm-7.6.2.jar11 kB12511.8YesNo
    elasticsearch-ssl-config-7.6.2.jar66.6 kB413311.8YesNo
    elasticsearch-x-content-7.6.2.jar132.5 kB1028881.8YesNo
    jna-4.5.1.jar885.3 kB14010731.6YesNo
    elasticsearch-rest-client-7.6.2.jar63.6 kB494211.8YesNo
    elasticsearch-rest-high-level-client-7.6.2.jar1.5 MB824763491.8YesNo
    transport-7.6.2.jar7.6 kB9111.8YesNo
    aggs-matrix-stats-client-7.6.2.jar60.6 kB443051.8YesNo
    lang-mustache-client-7.6.2.jar62.7 kB423411.8YesNo
    mapper-extras-client-7.6.2.jar88.9 kB605121.8YesNo
    parent-join-client-7.6.2.jar82.8 kB544151.8YesNo
    percolator-client-7.6.2.jar74.8 kB332611.8YesNo
    rank-eval-client-7.6.2.jar77 kB382811.8YesNo
    reindex-client-7.6.2.jar116.7 kB554621.8YesNo
    transport-netty4-client-7.6.2.jar74.1 kB463541.8YesNo
    javax.json-1.0.4.jar85.1 kB887251.6YesNo
    grizzly-framework-2.4.4.jar852 kB619583231.8YesNo
    grizzly-http-2.4.4.jar349.5 kB17816331.8YesNo
    grizzly-http-server-2.4.4.jar312 kB19717781.8YesNo
    hk2-api-2.6.1.jar200.2 kB19717671.8YesNo
    hk2-locator-2.6.1.jar203.4 kB1179931.8YesNo
    hk2-utils-2.6.1.jar131.6 kB1028071.8YesNo
    osgi-resource-locator-1.0.3.jar19.5 kB231211.6YesNo
    aopalliance-repackaged-2.6.1.jar27 kB412641.8YesNo
    jakarta.inject-2.6.1.jar18.1 kB17611.8NoNo
    jersey-container-grizzly2-http-2.35.jar42.3 kB401821.8YesNo
    jersey-client-2.35.jar260.5 kB191162101.8YesNo
    jersey-common-2.35.jar1.2 MB92486923-YesNo
    jersey-server-2.35.jar948.9 kB666607271.8YesNo
    jersey-entity-filtering-2.35.jar84 kB765931.8YesNo
    jersey-hk2-2.35.jar78.4 kB684611.8YesNo
    jersey-media-json-jackson-2.35.jar75.9 kB654081.8YesNo
    HdrHistogram-2.1.9.jar114.2 kB685911.6YesNo
    hsqldb-2.5.2.jar1.6 MB754690221.8NoYes
    javassist-3.25.0-GA.jar780.3 kB449425171.7YesNo
    jooq-3.14.15.jar3.2 MB20652024211.8YesNo
    jooq-meta-3.14.15.jar683.6 kB381334341.8YesNo
    jooq-meta-extensions-3.14.15.jar11.2 kB18421.8YesNo
    jooq-meta-extensions-liquibase-3.14.15.jar6.4 kB15111.8YesNo
    json-20220924.jar70.3 kB362711.6YesNo
    liquibase-core-3.10.3.jar3.2 MB224319231171.8YesNo
    ical4j-3.0.5.jar1.3 MB1527531161.8YesNo
    objenesis-2.6.jar55.7 kB5943101.6YesNo
    postgresql-42.5.2.jar1 MB536469441.8YesNo
    reactive-streams-1.0.2.jar2.1 kB8411.6NoNo
    jul-to-slf4j-1.7.10.jar4.7 kB11111.5YesNo
    slf4j-api-1.7.10.jar32.1 kB392831.5YesNo
    spring-aop-5.2.6.RELEASE.jar372.3 kB306277171.8YesNo
    spring-aspects-5.2.6.RELEASE.jar47.4 kB472851.8YesNo
    spring-beans-5.2.6.RELEASE.jar686.5 kB413383131.8YesNo
    spring-context-5.2.6.RELEASE.jar1.2 MB964877641.8YesNo
    spring-context-support-5.2.6.RELEASE.jar182.4 kB140119111.8YesNo
    spring-core-5.2.6.RELEASE.jar1.4 MB1020962471.8YesNo
    spring-expression-5.2.6.RELEASE.jar282.2 kB16415061.8YesNo
    spring-jcl-5.2.6.RELEASE.jar24 kB281721.8YesNo
    spring-jdbc-5.2.6.RELEASE.jar407.2 kB315285171.8YesNo
    spring-tx-5.2.6.RELEASE.jar314.4 kB288254201.8YesNo
    spring-web-5.2.6.RELEASE.jar1.4 MB994924551.8YesNo
    spring-webmvc-5.2.6.RELEASE.jar955 kB586541281.8YesNo
    spring-data-commons-2.3.0.RELEASE.jar1.2 MB830759421.8YesNo
    spring-data-elasticsearch-4.0.0.RELEASE.jar557.9 kB370319251.8YesNo
    spring-ldap-core-2.3.4.RELEASE.jar378.4 kB340300271.6YesNo
    spring-security-config-5.2.6.RELEASE.jar862.2 kB382309351.8YesNo
    spring-security-core-5.2.6.RELEASE.jar445.7 kB410334491.8YesNo
    spring-security-jwt-1.0.9.RELEASE.jar37.2 kB412641.6YesNo
    spring-security-web-5.2.6.RELEASE.jar568 kB470401521.8YesNo
    spring-security-kerberos-core-1.0.1.RELEASE.jar20.6 kB231521.6YesNo
    spring-security-kerberos-web-1.0.1.RELEASE.jar7.1 kB11311.6YesNo
    telegrambots-6.3.0.jar58.2 kB442871.8YesNo
    telegrambots-meta-6.3.0.jar982.2 kB573510521.8YesNo
    sqlite-jdbc-3.34.0.jar7.3 MB16010471.8YesNo
    snakeyaml-1.17.jar273.6 kB242206191.5YesNo
    zt-exec-1.12.jar57.1 kB625261.6YesNo
    zt-process-killer-1.10.jar32.6 kB362931.7YesNo
    zt-zip-1.15.jar111.7 kB968651.6YesNo
    expression-3.143.0-SNAPSHOT.jar24.6 kB362131.8YesNo
    inject-3.143.0-SNAPSHOT.jar5.4 kB16311.8YesNo
    standard-annotations-3.143.0-SNAPSHOT.jar10.4 kB311531.8NoNo
    webkit-annotations-3.143.0-SNAPSHOT.jar4.9 kB19511.8NoNo
    webkit-base-3.143.0-SNAPSHOT.jar11.6 kB20621.8YesNo
    webkit-beans-3.143.0-SNAPSHOT.jar11.9 kB18411.8YesNo
    webkit-rpc-3.143.0-SNAPSHOT.jar17.1 kB301241.8YesNo
    bpmn-beans-3.143.0-SNAPSHOT.jar16.3 kB351741.8YesNo
    app-info-3.143.0-SNAPSHOT.jar4.8 kB18211.8YesNo
    core-runtime-api-3.143.0-SNAPSHOT.jar7 kB20511.8YesNo
    error-handling-api-3.143.0-SNAPSHOT.jar10.7 kB27821.8YesNo
    metrics-3.143.0-SNAPSHOT.jar5.1 kB16211.8YesNo
    database-api-3.143.0-SNAPSHOT.jar46.1 kB6739121.8YesNo
    database-beans-3.143.0-SNAPSHOT.jar46.6 kB543381.8YesNo
    database-impl-3.143.0-SNAPSHOT.jar69 kB6333131.8YesNo
    jndi-beans-3.143.0-SNAPSHOT.jar7.6 kB24521.8YesNo
    jndi-inject-3.143.0-SNAPSHOT.jar5.3 kB16111.8YesNo
    resources-api-3.143.0-SNAPSHOT.jar8.5 kB22811.8YesNo
    security-adapter-3.143.0-SNAPSHOT.jar5.5 kB17311.8YesNo
    security-api-3.143.0-SNAPSHOT.jar273.2 kB255116211.8YesNo
    security-beans-3.143.0-SNAPSHOT.jar5.2 kB17311.8YesNo
    security-db-synchronization-api-3.143.0-SNAPSHOT.jar18.7 kB311241.8YesNo
    security-db-synchronization-ldap-impl-3.143.0-SNAPSHOT.jar23.2 kB351541.8YesNo
    security-esia-3.143.0-SNAPSHOT.jar5.7 kB18321.8YesNo
    backend-3.143.0-SNAPSHOT.jar793.9 kB8126241241.8YesNo
    converters-3.143.0-SNAPSHOT.jar87.8 kB6935201.8YesNo
    frontend-3.143.0-SNAPSHOT.jar3.1 kB800-NoNo
    resources-3.143.0-SNAPSHOT.jar1.3 MB298624-YesNo
    core-api-3.143.0-SNAPSHOT.jar110.1 kB14611319-YesNo
    platform-api-3.143.0-SNAPSHOT.jar144.2 kB16513021-YesNo
    bpmn-core-api-3.143.0-SNAPSHOT.jar12.5 kB34145-YesNo
    webbpm-process-api-3.143.0-SNAPSHOT.jar19.4 kB41197-YesNo
    database-api-3.143.0-SNAPSHOT.jar15.9 kB34183-YesNo
    database-models-3.143.0-SNAPSHOT.jar5.1 kB1621-YesNo
    serialized-page-api-3.143.0-SNAPSHOT.jar67.1 kB714610-YesNo
    serialized-object-api-3.143.0-SNAPSHOT.jar44.7 kB59386-YesNo
    compile-api-3.143.0-SNAPSHOT.jar9.3 kB2591-YesNo
    metadata-models-3.143.0-SNAPSHOT.jar28.3 kB27141-YesNo
    aggregating-profiler-1.4.7.jar28.6 kB292221.8YesNo
    client-2.24.1.jar60 kB5836111.8YesNo
    gar-client-2.6.0.jar48.3 kB472771.8YesNo
    gar-core-2.6.0.jar67 kB836841.8YesNo
    xercesImpl-2.11.0.jar1.4 MB1035952401.3NoNo
    xml-apis-1.4.01.jar220.5 kB391346291.1NoNo
    TotalSizeEntriesClassesPackagesJava VersionDebug InformationSealed
    229130 MB855257208638521.82151
    compile: 216compile: 117.7 MBcompile: 80489compile: 67611compile: 3551-compile: 204compile: 1
    runtime: 4runtime: 1.7 MBruntime: 1553runtime: 1394runtime: 77-runtime: 2-
    provided: 9provided: 10.6 MBprovided: 3483provided: 3081provided: 224-provided: 9-
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependency-info.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependency-info.html new file mode 100644 index 0000000..b79c577 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependency-info.html @@ -0,0 +1,73 @@ + + + + + + + + Web-BPM Docs – Dependency Information + + + + + + +
    +
    + + + +
    +
    +
    +

    Dependency Information

    +

    Apache Maven

    +
    <dependency>
    +  <groupId>ru.cg.webbpm.packages.base</groupId>
    +  <artifactId>resources</artifactId>
    +  <version>3.143.0-SNAPSHOT</version>
    +</dependency>
    +

    Apache Buildr

    +
    'ru.cg.webbpm.packages.base:resources:jar:3.143.0-SNAPSHOT'
    +

    Apache Ivy

    +
    <dependency org="ru.cg.webbpm.packages.base" name="resources" rev="3.143.0-SNAPSHOT">
    +  <artifact name="resources" type="jar" />
    +</dependency>
    +

    Groovy Grape

    +
    @Grapes(
    +@Grab(group='ru.cg.webbpm.packages.base', module='resources', version='3.143.0-SNAPSHOT')
    +)
    +

    Gradle/Grails

    +
    compile 'ru.cg.webbpm.packages.base:resources:3.143.0-SNAPSHOT'
    +

    Scala SBT

    +
    libraryDependencies += "ru.cg.webbpm.packages.base" % "resources" % "3.143.0-SNAPSHOT"
    +

    Leiningen

    +
    [ru.cg.webbpm.packages.base/resources "3.143.0-SNAPSHOT"]
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependency-management.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependency-management.html new file mode 100644 index 0000000..17b9ab1 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/dependency-management.html @@ -0,0 +1,1167 @@ + + + + + + + + Web-BPM Docs – Project Dependency Management + + + + + + +
    +
    + + + +
    +
    +
    +

    Project Dependency Management

    +

    compile

    +

    The following is a list of compile dependencies in the DependencyManagement of this project. These dependencies can be included in the submodules to compile and run the submodule:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    GroupIdArtifactIdVersionTypeLicense
    OAuth2EsiaOAuth2Esia1.1jar-
    com.fasterxml.jackson.corejackson-annotations2.12.4jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.corejackson-core2.12.4jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.corejackson-databind2.12.4jarThe Apache Software License, Version 2.0
    com.fasterxml.jackson.datatypejackson-datatype-jsr3102.12.4jarThe Apache Software License, Version 2.0
    com.github.spullara.mustache.javacompiler0.9.10jarApache License 2.0
    com.google.code.gsongson2.3.1jarThe Apache Software License, Version 2.0
    com.google.guavaguava23.4-jrejarThe Apache Software License, Version 2.0
    com.h2databaseh21.4.199jarMPL 2.0 or EPL 1.0
    com.jcabijcabi-aether0.10.1jarBSD
    com.sun.mailjavax.mail1.5.1jarCDDL/GPLv2+CE
    com.sun.xml.bindjaxb-impl2.3.3jarEclipse Distribution License - v 1.0
    commons-codeccommons-codec1.6jarThe Apache Software License, Version 2.0
    commons-configurationcommons-configuration1.10jarThe Apache Software License, Version 2.0
    commons-iocommons-io2.4jarThe Apache Software License, Version 2.0
    commons-langcommons-lang2.6jarThe Apache Software License, Version 2.0
    io.jsonwebtokenjjwt-api0.10.5jarApache License, Version 2.0
    io.jsonwebtokenjjwt-jackson0.10.5jarApache License, Version 2.0
    javax.activationactivation1.1.1jarCOMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
    javax.annotationjavax.annotation-api1.3.2jarCDDL + GPLv2 with classpath exception
    javax.mailmail1.4.7jarCDDL, GPLv2+CE
    joda-timejoda-time2.9.2jarApache 2
    mysqlmysql-connector-java8.0.25jarThe GNU General Public License, v2 with FOSS exception
    net.javacrumbs.shedlockshedlock-provider-jdbc-template0.18.2jarThe Apache Software License, Version 2.0
    net.javacrumbs.shedlockshedlock-spring0.18.2jarThe Apache Software License, Version 2.0
    org.apache.commonscommons-csv1.9.0jarApache License, Version 2.0
    org.apache.commonscommons-exec1.3jarApache License, Version 2.0
    org.apache.derbyderby10.11.1.1jarApache 2
    org.apache.mavenmaven-aether-provider3.3.9jarApache License, Version 2.0
    org.apache.poipoi4.1.2jarApache License, Version 2.0
    org.apache.poipoi-ooxml4.1.2jarApache License, Version 2.0
    org.apache.santuarioxmlsec1.5.7jarThe Apache Software License, Version 2.0
    org.apache.tikatika-core1.7jarThe Apache Software License, Version 2.0
    org.assertjassertj-core3.13.0jarApache License, Version 2.0
    org.bouncycastlebcpkix-jdk15on1.60jarBouncy Castle Licence
    org.bouncycastlebcprov-jdk15on1.60jarBouncy Castle Licence
    org.eclipse.aetheraether-api1.1.0jarEclipse Public License, Version 1.0
    org.eclipse.aetheraether-connector-basic1.1.0jarEclipse Public License, Version 1.0
    org.eclipse.aetheraether-transport-file1.1.0jarEclipse Public License, Version 1.0
    org.eclipse.aetheraether-transport-http1.1.0jarEclipse Public License, Version 1.0
    org.eclipse.jdt.core.compilerecj4.4.2jarEclipse Public License v1.0
    org.firebirdsql.jdbcjaybird4.0.3.java8jarGNU Lesser General Public License, Modified BSD (3-clause) License
    org.freemarkerfreemarker2.3.26-incubatingjarApache License, Version 2.0
    org.glassfishjavax.json1.0.4jarDual license consisting of the CDDL v1.1 and GPL v2
    org.hsqldbhsqldb2.5.2jarHSQLDB License, a BSD open source license
    org.jbossjboss-dmr1.5.0.FinaljarGNU Lesser General Public License v2.1 only, Apache License 2.0
    org.jboss.loggingjboss-logging3.3.1.FinaljarApache License, version 2.0
    org.jboss.logmanagerjboss-logmanager2.0.9.FinaljarApache License 2.0
    org.jboss.modulesjboss-modules1.5.4.Finaljarasl
    org.jboss.remotingjboss-remoting5.0.5.FinaljarApache License 2.0
    org.jboss.threadsjboss-threads2.3.1.FinaljarApache License 2.0
    org.jboss.xnioxnio-api3.6.2.FinaljarApache License 2.0
    org.jboss.xnioxnio-nio3.6.2.FinaljarApache License 2.0
    org.jbpmjbpm-bpmn27.58.0.Final-Micord-3jar-
    org.jbpmjbpm-flow7.58.0.Final-Micord-3jar-
    org.jooqjooq3.14.15jarApache License, Version 2.0
    org.jooqjooq-codegen3.14.15jarApache License, Version 2.0
    org.jooqjooq-meta3.14.15jarApache License, Version 2.0
    org.jooqjooq-meta-extensions3.14.15jarApache License, Version 2.0
    org.jooqjooq-meta-extensions-liquibase3.14.15jarApache License, Version 2.0
    org.liquibaseliquibase-core3.10.3jarApache License, Version 2.0
    org.mariadb.jdbcmariadb-java-client2.7.3jarLGPL-2.1
    org.mnode.ical4jical4j3.0.5jariCal4j - License
    org.ocpsoft.prettytimeprettytime4.0.0.FinaljarApache License
    org.postgresqlpostgresql42.5.2jarBSD-2-Clause
    org.slf4jjcl-over-slf4j1.7.10jarMIT License
    org.slf4jjul-to-slf4j1.7.10jarMIT License
    org.slf4jslf4j-api1.7.10jarMIT License
    org.slf4jslf4j-log4j121.7.10jarMIT License
    org.springframeworkspring-aop5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-aspects5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-beans5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-context5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-context-indexer5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-context-support5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-core5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-expression5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-instrument5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-jcl5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-jdbc5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-jms5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-messaging5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-orm5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-oxm5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-test5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-tx5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-web5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-webflux5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-webmvc5.2.6.RELEASEjarApache License, Version 2.0
    org.springframeworkspring-websocket5.2.6.RELEASEjarApache License, Version 2.0
    org.springframework.ldapspring-ldap-core2.3.4.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-acl5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-aspects5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-cas5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-config5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-core5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-crypto5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-data5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-jwt1.0.9.RELEASEjarApache 2.0
    org.springframework.securityspring-security-ldap5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-messaging5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-oauth2-client5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-oauth2-core5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-oauth2-jose5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-oauth2-resource-server5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-openid5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-remoting5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-rsocket5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-saml2-service-provider5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-taglibs5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-test5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.securityspring-security-web5.2.6.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.security.kerberosspring-security-kerberos-core1.0.1.RELEASEjarThe Apache Software License, Version 2.0
    org.springframework.security.kerberosspring-security-kerberos-web1.0.1.RELEASEjarThe Apache Software License, Version 2.0
    org.telegramtelegrambots6.3.0jarMIT License
    org.wildfly.clientwildfly-client-config1.0.1.FinaljarApache License 2.0
    org.wildfly.commonwildfly-common1.2.0.FinaljarApache License 2.0
    org.wildfly.corewildfly-controller-client4.0.0.FinaljarGNU Lesser General Public License v2.1 or later, Apache License 2.0
    org.wildfly.corewildfly-launcher4.0.0.FinaljarGNU Lesser General Public License v2.1 or later, Apache License 2.0
    org.wildfly.corewildfly-protocol4.0.0.FinaljarGNU Lesser General Public License v2.1 or later, Apache License 2.0
    org.wildfly.securitywildfly-elytron1.2.2.FinaljarApache License 2.0
    org.xerialsqlite-jdbc3.34.0jarThe Apache Software License, Version 2.0
    org.zeroturnaroundzt-zip1.15jarThe Apache Software License, Version 2.0
    ru.cg.webbpm.modulesstandard-annotations3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.moduleswebkit-beans3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.moduleswebkit-rpc3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.bpmnbpmn-beans3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.coreerror-handling-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.coremetrics3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.databasedatabase-test3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.jndijndi-beans3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.jndijndi-inject3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-adapter3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-db-synchronization-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-db-synchronization-ldap-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.securitysecurity-esia3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.packages.basebackend3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.packages.baseconverters3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.packages.basefrontend3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.basecore-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.bpmnwebbpm-process-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.databasedatabase-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.studio.subsystems.page-designerserialized-page-api3.143.0-SNAPSHOTjar-
    ru.micord.fiasclient2.24.1jar-
    ru.micord.gargar-client2.6.0jar-
    +

    runtime

    +

    The following is a list of runtime dependencies in the DependencyManagement of this project. These dependencies can be included in the submodules to run the submodule:

    + + + + + + + + + + + + + + + + + + +
    GroupIdArtifactIdVersionTypeLicense
    io.jsonwebtokenjjwt-impl0.10.5jarApache License, Version 2.0
    xercesxercesImpl2.11.0jarThe Apache Software License, Version 2.0
    +

    test

    +

    The following is a list of test dependencies in the DependencyManagement of this project. These dependencies can be included in the submodules to compile and run unit tests for the submodule:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    GroupIdArtifactIdVersionTypeLicense
    org.apache.commonscommons-email1.5jarApache License, Version 2.0
    org.hamcresthamcrest2.2jarBSD License 3
    org.junit.jupiterjunit-jupiter5.8.1jarEclipse Public License v2.0
    org.junit.platformjunit-platform-suite-engine1.8.1jarEclipse Public License v2.0
    org.mockitomockito-core3.8.0jarThe MIT License
    org.mockitomockito-inline3.8.0jarThe MIT License
    org.mockitomockito-junit-jupiter2.23.4jarThe MIT License
    org.powermockpowermock-api-mockito-common1.7.4jarThe Apache Software License, Version 2.0
    org.powermockpowermock-api-mockito22.0.9jarThe Apache Software License, Version 2.0
    org.powermockpowermock-module-junit42.0.9jarThe Apache Software License, Version 2.0
    org.springframeworkspring-mock2.0.8jarThe Apache Software License, Version 2.0
    +

    provided

    +

    The following is a list of provided dependencies in the DependencyManagement of this project. These dependencies can be included in the submodules to compile the submodule, but should be provided by default when using the library:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    GroupIdArtifactIdVersionTypeLicense
    jakarta.xml.bindjakarta.xml.bind-api2.3.3jarEclipse Distribution License - v 1.0
    javaxjavaee-api7.0jarCDDL + GPLv2 with classpath exception
    javax.servletjavax.servlet-api3.1.0jarCDDL + GPLv2 with classpath exception
    ru.cg.webbpm.modules.bpmnbpmn-deploy3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.bpmnbpmn-variable-condition-adapter3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.bpmnbpmn-workflow-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.bpmnbpmn-workflow-jbpm3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.bpmnbpmn-workflow-jbpm-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.corecore-runtime-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.databasedatabase-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.databasedatabase-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.reportingreporting-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.reportingreporting-runtime-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.reportingreporting-runtime-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.reporting.reporting-jasperreporting-jasper-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.reporting.reporting-jasperreporting-jasper-runtime-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.reporting.reporting-xdocreporting-xdoc-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.reporting.reporting-xdocreporting-xdoc-runtime-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.resourcesresources-api3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.resourcesresources-impl3.143.0-SNAPSHOTjar-
    ru.cg.webbpm.modules.webkitactive-users-tracker3.143.0-SNAPSHOTjar-
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/distribution-management.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/distribution-management.html new file mode 100644 index 0000000..b89a907 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/distribution-management.html @@ -0,0 +1,54 @@ + + + + + + + + Web-BPM Docs – Project Distribution Management + + + + + + +
    +
    + + + +
    +
    +
    +

    Overview

    +

    The following is the distribution management information used by this project.

    +

    Repository - micord

    https://repo.micord.ru/repository/packages-releases-local/
    +

    Snapshot Repository - snapshots

    https://repo.micord.ru/repository/packages-snapshots-local/
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.eot b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.eot new file mode 100644 index 0000000000000000000000000000000000000000..af587a81a89423df1afa32cadb51d43e4683a800 GIT binary patch literal 35691 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 Q5f(`zbM$4l>h($ literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.svg b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.svg new file mode 100644 index 0000000..4469488 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.svg @@ -0,0 +1,229 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.ttf b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8681f1ecd170bfd273ae33e202e300297eb1a7dd GIT binary patch literal 55383 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

    M754_=G6N%E1heiGTw=ebLjpO4SRs0wQPbV>lsk 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 literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.woff b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/fonts/glyphicons-halflings-regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..1e69f48900579eae2c4b5ac4af98efe13f72ec06 GIT binary patch literal 42340 zcmd75`CC=@x%a;rL1RlVtjh~Jx|-ye!H*l^L_q+=X$O6W`88-oZla>1@2+3&-#4s z`+dLf_kFLmH#7TdYaLz=hr`k9b~zpEc;t3DBkb4y^S|2K_C|-pi+vrAcz%w#T~2%3 zvuk&)=e>;%hhvkMzr%NbTXvr3)f$JxF>uuFayGbK&Y_9HDTl+`;c$3GI~?A}-7aU{ zzUZN|r#CqqJ~0l5!{7Qz^>MqLBU48w91fpN%OiOYx4B);Y`4pKbZ~mg;qbL*WFO&h ztUWq@Ze;n@M(aJd%NdjY&Uf7|=dt0zBMwKaeMEu7;VAO*9pm+5!-Eb-o3B>3H89UN z^w`AdS%;&I^F}xv-k!CtbGw}5lS6|JM|;8YoUlrs+vRLOKQTBv<#2S^XV`=#ynT81 z#NfoR!_mo#t@nK9-~XdMTWfpAq05iM7H09nz>$Fgx6A2sIKXf1z~KQbd7#qm zatMju4a}IMPBYWOxcDtNY6@IJz+%D&y zHEx%4wcF(k!Zr0dOw8?a#@ail=Hz%gf(8S4l`~)aVp)Sv)mr@Rb~*dpF6XWx|GGZ(&SbaC8D_tbUbU6C{5yp=*6v%nWWTwT+{L)|ws&IO?Q#~bj_T^^ zwqKdg%(ow8;OR8C%bA(?_A^Z1?Q-_GUCvc*m$l+*d$*3TyFZxYb+g!}VX$Do?fG2^ z(BA!Wt=r|i`NxnmZkH1r`#0D4>^YWLolxU;IZxUzaY2EIcY!i{5~i%9G$mc(tk|H-m+OawkX{0b~#Vo`7~Z`jofL!nm&@? zb~%@@@2WFfhU)}JM=F40z6V>}E@#sL%iF=B#-N)REy8majKdgUm-+1>gOdP=&4BE~j5&blrS)d16>T-f+8|1*IH3{r1=L8{Yh)+vS{byPUj* zZ?<|)2x^O%8e<5q_M^Xl{&V(&)xF~*_9I-&vN`Dbmr9R=?XtsOy(L2j4x z?I){ehze4c=)vuB9(o%x2d^6mo2nttf%b#F_J2Dwu>7$Q-!mIBCK&sOA^7zU!mU2WJ_A#xhtb z$8TQ{Zh_1KasxuJq{Slv_4Xb~Tc`FCjl|DXv_a)5Ajx`&6nk5^@e)INo?{Sj1Pu|V z{O}q8x3?0v%Q+7dPI;$5deAocb66+8`el2+r41QDJI7BYd4;m_sh+&RJ(xkb{eOP= zyl2FsygkeG9<>=hgw}aQc#mXs&eDW|1w08DCPETuC|KelrdR`^AH4a!@w7^i6-zFi zFX$kP_3?{23ta3jy2mBakRiK7>&%`h)-&~%^M;Tr&i8M#-`#cqi-b>RUH>`@WuiTt zm+1E#ui1`h^30HIsI{`*HZc%yDV<#ST4}@CKtgnv{bE9F;=v=k?!TCzc^4ZSAvx?V z135C)3+1_8P8K?$F+IEJFp}bt!kSt*bM(@WqX>^AjUU;siV?LeVvch~qBcMfBSY(P51x8UByr|;Ehk~O%ZVxf{pBBvDC~EY zIU8Eij+2fvi9bA9t`zHbIlI#vMGJ11^VX9}gNt|(fAM2)nE?O4+^V)Hkc@~qwfESS zmp}St=KA6?g2?S!&I<8a@=*#vw6|5!pc5WqzD*lUREzZOcTr7f6ycooUTDA58FKl1 z)fgS%pu4j1Dxtl%Ah(Uc(n|2d0c>BRL^(uEa=s*m)#X?4D4FYd-0t1qlAlyTnm@Ac zh>3W6mo2jkXlKrM|Lbm-^YZt|T$f3RU1tz%@{0XP!UORHx|lve$1jmmN7qgUMCrv# zglIiO;VBn*Oa^zmoSV@L2TGLodpF@3@Q^wAUZ+&oNV>J{WZ@!x4xcu<*P@ep6pjqbDnJ@p?t!)&8Vu|58FGXU4Haz zsjT8TY)1vqzr=asyNWhfG;~nTSSlQw*Hpgw@&Foi9l#)1yowuZ2l}?*%J`(beE_{Z zs!(KE*=v%+ttWRIZ@68~eL4O15SuOTvmZ-T1Z+v^aLWV~mH_l^YT<8rd+2;2`+61Cfo*@C#O88pH%Z+(ZhW#(+k9_P251&7UdO z)-@@fV#`iMqn~Hl-R*MXWZ(o&?2W8BowOx=)UR{w5ade2CDq;fo=JuFuGu6DV-S&; zOuB7`1)D?a7z2mMYn~HAn{Jo0f>MwSL{4E2UT_W63~op$a-kUZ1`j0V?IXA04;JUy zJ}LUhVg^udmsMPR^s*IHGN`F2#v$}fLu;g>xock*<6}d`3ul44W+^@Gjir1q2iU=}Ovu?cX*VD_Q5 zz+~V!XUaPiJjADv0^8teg+uM<9rAFHm`h}?WHh5mP^O8I>n3q=^yWiDeTjjwW_Ac1 zJhWvdoXJ#l-Fbm}ZpFInU5t(G=PB-@c?J9Dh7FfJhq*u_^ zL98ABKot*Xbi14%eEH_{97z(ix85%D45v8_@OTmn0w_!Xpyot!6A-BgA&yQ3SyqJJ zILmPdm#h=dTzb|XK;9pl`1^D4Cjr+=aR}qd!p)fs-hAgpffy37x3(+HP~Rg%?Oj(Xkw!RF|eo(}C**Gqi=$JjKu)*>DS7@S$TJ7C~$FNnk936k-+k*Dyq`g;PRWL%_uqTG6 z%!rm{d!=79nvar!+D;|Dr;K^`Wd_Z!1i3wk6nnezS#tFs> z3{41)nUIori%vd9un?}((hp*Cx628$;4ng9w))y{Vvh^hT0Y1NtzX;yrx&RON#Ntl zyb(^x*l8@zd^-;l{fatCYdBGWRCq#Dj1JCSgXl=$_W4ueP+a5fxj)y$LB=j=w2tH(bpJSS7#1T8TZnHEwz_Ib##)r!p)aq4r$qp0 zp1A3-WmQLJacn`BNcB~*q?ThiVLVKV5nT(zwdYSq!==p4kr88Zd2n1@0<7N%R3HrB zPN9C)heRV>X;kG3bu+`W1%l^Hoyvt&b*jBb*8_35v3G~+8dAdSd^e+KPDS?ZW7IL_ z4PmfP*)mt{UU~8ga9ekcRD(>6Y5 zDa>HhENbx7^vsQ~D!CSI1C?u4%gm^n0{18KmB&3{?s+hI`;Qy+CKlTePKb(1Pnvk} z><`(%kaxd%okChsn>NE3AUdm{gDj*Lj%xe-*lyI(xdi1egDlB$d!*+4%#^!7bi17Y z_7M5IkFYU~3apM*Z<74glPpu>vv)jSHU%4jkA31b{%eZpV>+TGdsm<1B!gP%unR|gj4 zsEQoMsi4#&F6{r1NcQ&5x9tD@1Q5gFA@c?rS}unjHS)H>FWi4)wKTImOj9%rrhqL={R4cA&N9{T#62*%>CIHe& zShu}x+hnCRg{4tG2#JEW+IZ~Q==fD>x6w}82@qYy$Gw$7uj>XhdG z0OiCWD(4UKI)ITcJVU@KAOCXCQoqEq=MB#T)s(w8Nh!=SBtxkSX#5GUBLyL+ERtV=N+6(Av7Jh5~ghkLfGnyz?v`s@U?*=RH%bI`Gcd z8=rOi7FQYGoH&dr-*o1yJ()z~&PAc+kA zJe{T}5D?+k9_o7n;nKf)4l{idR#&-n{^m<>zNAq0H6{M)Sy2gWeU_nF*b2xVYh#I< zlTF&S_lV6!1$^`rgY8CxdbY7CC5t_*zGR&c-cojKx!4>qq3k(o%bv5AF2%4h)H|pR z2Jmdatx(|Y1>2kY2RHw(hraZ*bdkLy9FA3VR=3OfkI()Ndy?_5(0Z>XCI#?{b!*Qm zjqXh{(!q01-#550WpCl?3@S?yQ3s$WmF#Yp^8y#*@Y0&*9e5v~{4iS9C<2xM)n6jR zbW%){X)A@_Jq=T%0N$UBdra82!Szk2_L~~AxNv%`>EB0~!^Q%C*W%i&EI1B*TamKurFEB$k?EKNc;OB9|*wRK& zbj);fdto%!B>`~6>LX?(_yFHcbE86{ka1a~dWeeFe3HSCDGg^n~Z=eRAUX^f@4l3lNgvs(Dl}fe;xtAg8D` zI6D;Dsv$p{`d1eWGWXnnk!dwEgl9u)3;2QwmJiNbe?}1xC#%vz2v|4F479)b=}im+ zp`3a5Q&*8>WYf~|#v&;dAFFw$=%BLjx)ALrxU;!W3 zkgMR!IX}cp%)9h^blSZvmD=JsruA%`Pc7ILuB12qa-Z0xT#gf8S<> ziDy_!m7RIhjho1ghN0X)e?;}igL?|05_RhI?0M&>Xz;mxxc<`5ESqm6vM>{;edlMM zF^GLiS1B-|LG`AR;(3C!n9BIbx!rw=*w{(|rK)IGz1L83dbeL%j-2$DSH4kd`axE2 z*if4!l2r?$4^GL;^haw{bM$WVT`FsFl-5XoU@ydH5TRzVjAsFEm-EAKdY(ZSxMflg z2y(JG%S0O%*A3y`G<>%ROlvkK&-MJ(Ira}X0Ae}>)3Y%ZtLq99SIGBPTrk@i zbZo;qKU1BNXQiEi@}=L4t5m+Iqvj)6A0RB4BeZ32R?mW18YA5Q`O}wa9ZIE}r03&M z|6kXU&cU=SuoIX=@dZQWF`!NWJnHr4=fuVY;U!wV%yn)%GaJUXy7iz6gu+8fmuarb zcjxv0bYxssQjKogxcRha+Dc#6?Lr_%@xOOe4JH7bC1qw>n7ZW!Rwn6X1>g|J{jV); z9uI9tQD}MTnLhIVaZ_~J=LRJzVo})xm=4Pk!{hBsL8QimCo~KD5F8gEbiMsOY}BW8 zKs-){LqECejnLy3yyq3&Wi7BJ{%FWbAZ6@8EBPMs_TTOGz`E5JlF>HF-B(|Vs_YAs z`ZO{wdCTkH5%8m+mQ)$fL>_C1z4v6otP*`8bhoM+3L;>EYub{7((#Zm(%CXA=C#*6 zn-5QV6Dx{qtxwV5apVzow%+^>e7T1eY>^kZlGQ$^+MLiG#>j`Seg};0pbeA;s}!oB z7!x7MHMV=S3sc0l#M>W=LQt z0n1jCB_PoNN{8QiX7yX2>fNbQ zEHkljZC-uq8bUkPq?e$`X4Za>uCwlQ?SlEQ{N7Zk_FG_YW6*ZBr9t6wA{J{a^Fwzm zn3$bdzdiESFVwd87>o)jQz~s$wUoCiOcag4#hAzL(U}?^*u0JfI5IS4?7K?1eY2y zV9cMLe;n_hG!Br&DoQ6m?ou+d&voOE=K(LIvZ}Y0N#y0V=7OArjfY5-J7y!(ct84`4D+=-l{efH4Su=5*(l$!;^}(oUL}^X%g)5E*3X0dI}LK2b&d7Y-qxj?M?j;2t3Q^qULMgXxOn6MmtD= z&tb64R8C{++NIE0>{D_7yW5#w4%BFQuUav&zxpy4e(g<7=Aii6J@q?PU{@o`lHjs2 zxkfla@1~Lfa`u)h?Wc~z1Y;ZU=5g6@HRBX)->h|-`#NEKm;sj%xUeb$3EQ-`Rl>g4 zxDS?zUPY_ods-L4K<`5?M*V-!KKnCs+ep5lXwQn&_`LfVCn!8JvzLWr6ZcBgV$Wh0PFLc*Y1R%aiAuYzWl@gRJZoX)t?SmlMbizA<43h%Jto-Sk$&}O z1!Y5{2aXi1NWe5}CBX8AfNMcEClsgF$PLob%Yqno*uXAQPMEzsQJFzil0AVu9a%l3 z(Bu>|kPT~NChe8@3o`>_lU^S*VpaSSnW|(F83N?&?T*-CKCMUK0A(X%qXfGcLXu13 zMnw|Swo=2OWj%W|z}Z{n*Vc}-&N`?Lqa>i}b5x%40fvKZvpNr7|6G?J0d4Xs!ImZQ zCi0>Ck}239|M*3ER^Uwne3qb6gC>NS5nwsrd%s$DP@07h=?z&pzf~2AJ%>iX3&UJ} zsuMfqriaavBi_*+dA*9PDwcRO+`3r-gQ4202o&Fo-1N-48L4Ie3Ned&ptt6Pdur*D zNbw_QwSZ?owtxGl9Q0-(i**w2;_k)yXd^9G!~ggjsL9f`s@mRsq(S$gw3mY=5VS&a z+J}V?Zn*zaJZ9VB7qVR`SZEV~lgF&PC0R{=OpO0M{vgcAlJYcW zGSDs{#BkezDF)9>9l@FtYKio%0^tOH=$kLSVfF0`v@#rM0yBM^TyMX+o^yG<{nS!T z#ns0&)^cUKXAfTUSCh-sT}ZkIw>ObxxJ+lV-)qP}Hej;oCU|yr+TJ0U1x9OxZYlpL z3*gofvY@EEWSZRo)#8-YKQbg06vXe+G!YVpVFR)JQQDSod`naX0%TdjJ7H`T`%H7< z6@m|jNjQ0t&ylEnRb4;;Ga~;>!vi}U5ygBw8``7+&m}g()aN-Jp4+@nt?ixgv?Ngw zJ9@U5J^*%0w{xlnKJ3@o&_#eRHgt7ex+GcwgKs>|8P(MB9tQm*#Zq}W zS<8*V=@2Hqs+BPZigu?uR0Zo&>`oPRjw2MMd(fgRV#c0<7#9cQ zI-=)$L)Hf_P|;Y8VzZM#50kvMRPT!HgD(s#*vEw9NfU6^UEN&qee(HexjN1-(Qi(S zsB=MguRYSyDCWpwP%1wW$6Ls#RSoIulR=|rYY)?kk%QTK%Q$TLLiYlzNg}>uyZF8M zw}+oBG9r!Mr-7zta09%LPz$%!t&_L12q7=U(9jt3o)wAVmBRiSBKM+dprhhSd+-1s zpuP7{XzJb=Y+58aK7^)6L!Zzsdzy0!gF@%u*qzKzc@lIrv5FVz-Mx^cEpaSu>mCM*(P$#ej6OB}C76nR1e8b! zk+4#gxQ)lV7Qm9KD{pK|r?IEtT?zK`T8y?QmiQ(22YD~;!$~UR$xrKvVS8)1;!(mBNWV+nUi^3dZzV&b#^n-b1+Y^jt-O_+c=*`qshdM;j zX+Uj~j^`9$7zl|WvrojHN<>MEmoR+xwm!*ad%w(hqezORZ}QYt`r9kNwmuk)?dsL+C3h7~v=4k%Q$xf`>zJABh`ImUQ6WNI9}zooVAUp%so4ew3l8G| z5XCWmk#P~A=66g@2KtPq3hNn8ATuNpZxqU?2ou;J{Z=%L^-jqc z75s1EWA^srv5X3|SsyW6%6ZSeLD>dlveMT+1zY-@`rwzQHM3aBK{yNri;4!Q_kQ`{ zS|l2MHyqxXf{&~T3?H2uWQ7afeJqL;S<-!Y7yE(;{$~x+#SjWl9n872C$OziO=p0` z{_0+gWuX#LT!X@OpR!+jB7C&?Yjys zK~Hper$%fP^!+<)K_i-w-FrZv;*)^)J4(f}{Bbi(tJ+FHotW7-+{r1{Pryr`tm*o8 zwL{3B4al*#UMxPrsTxjhp2#_0y4)q8yP-k?-9Y}Oz%vD{YNlop(s4qirD-2QVI-t~ zP?4^ZHHrKqOYVQwx-9~h6W@j=ZHB9k!3w4ks@mk=e)KXN;@L7Pv7Hr8*MF_<9_kOP z6urx34I&PtB`fjmTcLz&qP@kMBef z-0Z!wi_6sWCDX!tR}gw6^YKe7VU3!HFkAcnGjO`~We5g^742cc!3Y}vH)uxz1vx|nh?PvO zCqQ$q4OA&o)%KLIu64<1_lI2DQM<+~Ze*Xw5#BoFH>HZZ*PR{-tUFBa@o}I$1{TEhb_ZpB1iH<-6R~ ziWimeBFw)3aGH;HEipqsWlNZW-OVH*wk}@wY^~+cm|@D}x_n@2SlAVwtRkYSM?m5# zqGq|))UoFv5HP@d)p_s!l3>372yuf&$PTy6U1A#3beMZ|HS8~+=fh!Y{($i%OB3GL zmBdiNBxn+XOd6d{SipWjd_}EdKi3To_7l0Q%)0JlzeEl>MrPSoBVNd1uAc3+S7ChU zkr+>7y5T+pWIM8+!aRH=jwF6645~G}D$$RgI@0Dp1Yi1RX%1j?MgPuoMpm^4-c2MX zETMilYL*itr?@`7%0vh_#OegfoyT`$!KQ0p!1++c#B1Nc-TSP|?xb!av~0`&|I}~3 zKN)obOnjiP$nu;WWmLZB@1IuXxBx#C8Qx+_l!MXMr#FhnQ)dmb%vFeYzXAhb$96)~ z?Q*`)4HEXYH8uaeuPL7p&6A)6PC5$y8BU5_XkrD*TtUSrWHYkf)=4^=OT)*2uXMZT zEUPDX8fhw`?atg%yq~2{Ij@dwe`(;e*eoaQMjbeN}nOJ-HHVmK=l!@BbDb zFW(bz>V0!}`EFPrT^QF#l_|Nwt)sM`gpqPT23o$~z` zQSS}AVyg@K9v5PA`xgBBrtWCPqPeB2nay=4bsUN>e@!$wzZW)q&&tt>EPBAy`@6yu zJG++E$%>-(0Esyt?b&Jazdco5crgpv`SEAk3Q00FNQy$Q{a#fU5tKw&?ZgZ#Zkm*4 zNRkbL$%R5aCHb-X?Edxj5SuC()d=C!Mj3g(E^x3Wis+3}V&?GyVux5HZ~|(q z?=8CUY!^u!<7JXznDh9WrU$gGxtT+{1BHDsrMEtj308c>H|^OQ2Yv9bLD~E8f@%-( z_ZiKaX;{+Sb5Kr@Jb(|6>Jm|t=@w@+F`Cs{!`fs`)A(R?lQQq}xrqqu>6OXcpq^Ml z*80%RnTFFRkWT8f{f}QmU#tKQCn}?^eeJBA5wjQcVh;&mrHma~&H^V@bwPhwtqlUu zB*M}yGnYOuR)$j+GjHpbP3xI`*gMO-4fY1ctnV>l-nw|I-ot>XCO|SK?!6bLDbak* z;tQelWR^`9Pu)7Wb~b*kXe%WoSUTE1spt1)CX}OA6u8y+yRK2h_cW~@74O3tWH!W; z^<5}4;A-O<;;`+V-Qd5GhTbz{Fca~yTP6tZ;jbB07G zFc)Hz!5|70&nD>{roq{BSC>H*acPd8>V~-XW4ll2s>yJpMP=8iM@==xBZ6=9xt1kw zAH{@{u6;HF>H4=B#QHAD-4R$xZaE-oHiPrCP-sGB0s~nkZ%9G@Re4I}hwZhANm66ux3=Y6)_@^&D`O+^I(fiT9{syV- z*-@FZ8~k*|wsRj0OD)i*TyHfu##iO5?DR~55Gw88K8aPuS86%+_isNXTibgtCoRvh zierP_EP}wg>*>LL3_K#CcTt#Z@2``pwU%mRXCuae9OcIQDopUKN;jac>1dWR!tV$tpuaHSkP4?ClQ>|LX8sACGY=etjPodC`T&VTkz^E)iN!sA_GZnxU8Q> zguRif`mN9SNWm%K>9~sdR^R=yKMc+ymo};HBuAa#tSN(Uz3f=NYXfMH9<&@todQT> z<^|7W5Ky^W)$;CrUDg+H1_6(~$3+~Cdy;xkum}YoLzxlr^HAZo^bJg0FpngpEsedAeyYA~ZO^2FflFZStNDpa6A<2_~AD$KiVR8tz( zMd*_6+%9q=>j_m{8Ukqx+CW9=+0J6&xM33u3T<#f?&B%7&lVECFTV^=Afn6*7@tw}!k7m~BL;Ozr(>I+0>h>|cHf`Q0E z6-oBVJ>88gX!)iw(~|8CDiV!kkVR3$A3xIu7*w@%l*JTy4`T7F>Tr8zq0aLm_D&g` zHDqA=rR!xM82u*qOsY&i1*0*=ToQbP?q7SU1 zZ~{q~C|mj{Z4U>WI0G%mn>dt?Tan2-yTu6h5M+bd6QEO4Wg(Ej*vVXo7}Q9w)-;_; zo*v&`g{Q*NYY%Se(!Lb6wGes+ekrcBzDqiwwVt`D^$TS%hP_?>VenBon;u=J+RO(= zNPzfBA#)U}TezkQ_rQ@!CBXw_yn%tuLRrvTp919hS;^Lwh@+Oc_|Um-Kfv9(vpC}x zw}q_1=_|B)7mRmHie@8P&ztedv;2rE1lsD*nX2lP8B{qjsdW9ZF-+vrT~4#C|8RKr zji=q}v#Z*xD>MRef`CfC?eqX4RY z;@Z#Vv4Op9>Pk=&Q{>ZTq#NLK01Qs&Ta_~MxjEa!&r)|%)g681CuxBprQ5lA~C&MjYiwcm<_|7WE(scGUu?&%)%qEi{{$jVTSsuD3_z!A zdl#jH)u^o{j8u_ZwVw55RNJ%Bb!XfBOg*NUkH@7-m*)ee)c^MMGsXY!7gYY3LsCu@ z6>TTmV0r7d=WamDnl`hVkA7`^u@R#g()ZZuI^UfJ?l4^sT7EBI&(Wk$rF zS6+z33Ni*nU`;Y39k)mR{n1wqU4ckAgiwvr9PufvA5nis{oe&?F}$`AES+eNhl|?D z{@7$w%GL~aMfyt-3|kGR!;->^9!q01Y-L5tBOV))PIjj#cWcRYOBkap$|o0sdCN3) zX%{Kz^VsDoEI_~#am*|YP#}@)O{TP;SocIoD-_=U6__6J^2xxa0&3rfpTT*Uv@`J1 zb5YFR`)$&In2mJ?-iBsBdTA4dlQMFlsQ`U9;_aQFYmFS$z|?Rm5yi~-u;r6R6@Y~^GOO4Z!^(IZn3 zmQl0zk)$+8glW^awc}30g#G&T5ej(?rh_=On080YpV1-C9VQ=P6Eu8q~)3|XU zGf{d02ufS}tu90?o;$Y|ZXm_fH_upK+&lvHo(t|#C&eDO;xHnVn7WV3*FsFyIdSL3 zO{z7BZOXlDng|Dvr!c;~H2`M+qhUSUbUZjImGVOqO8J>ARZgnkON0(cF!sau9KMD* zGso>303F8(c-^z<9)yeE`S|JgJ{_WTPVCD=2s(RH5c$q;#$#1gqGQkdoNDdHEotw5 z`3>`;qGU|!{FDCu%VS?bz9MqrbY=&-dCUijUbHT}rF$c5KKNyHMuw?7${VmA@Ugx= z-CXPqf|}M2uC5Pk^|HPVMCd>uoHX8NHC5y(prx|f9x(I}BSV>aJN+6oM8~*!C=1^f!k+lkwWR|LVFKWhi4a%za2=V17ulz2UL0Pxy z{)j^Dod|81ns6sp&hCgPQ>9H5_ME0hRD#LBz#UT77mn|p_Zm?O!M+^fO<3Rk3JMzW zg8)9mfnW^ar&-s{k3bZE{*-P3Z}`)f9^ck>=}W+7MdGPdwp!I6_3zyGU){NI{8Y?`5+G6n=wRvx#qb#~)ZicNvn~@a|r@h6-TQ^c7B=2x(FtIvRvQPsP14*WDhb8tFz4j^!AsW5Pyu)&b zFMJ2bca0tg?^=uC1GgVm@xr^(2S!x;QuS|;vPAiANo4nw!6Fv8qOqwg#H2L8v?LT~ zkfkW>B`p-G1x|o%#@v^_^xlsVF5BS8B(TwFB^kLDE0GE>KDVgSsH$}n$-eyNx1#2A zmP%t!^GnvHU=g!t+V+D`l*1ey1X!m7h_jlg+F{+(l6mdf5>BsNA}*qK zG41!Pb+}TNy!u44N$fMn9|tQjCS9U5YNtURvj6J0u!=A2 zsY@@OnXgV1wuiGb#(mN6-6Yd)-pWH71f=~%IqsG4rPyQd_BjIA;RhQOiH9EGQHY>s$nb+QQ_W{ z13X~!V|DN$^TPa?{On=0m}m34Oo@G$kBM0~(MR!aBr_{Mv;5)WRH1YzHgsDHF}~3| zYBk_%q5Z<(bFwW29r6zMJ8aC&uS_!6gs;39YW=w#SrZ1uZ^gZRS;KzKP!6cwumH=1 zF!}C;Gs`6<2HsybJYIo_CgKA+S22s8B6N8Z$ z+Zm0xO$6j^x7R0o zA;c)B7KP1T`1wB{qL6|?P_ih?p)gjGRsxF6m15{X35v|dicPLjd=`zGm8xcJ5`^ZW zqnipjLp~N?%x1WmV{QGFWi$!vaqC}yNPaGU>+2$Ka>u~67oZ407SAD}qH!4U{0@PE zQ(WQW!+?R3m5gA0c2j*727F!jPSV)vJs>|;vtBU7j-yMc8I@bNxpUMMNQKP$;#0Zk z0Y+CzYM*lqx6GT=s2aP@WMzB5y>*)Kaih7^A}y~%4(-D=I1&qYp@HyAvuJh!TAojb zI@b`QffgDxlTsON8&;#jGgq5h=kNVtH-O|wX3$+S)4ABVf@3&w?E0>Luxs5|BT;db z*kw;QY>L@o5KDLgqde?_Fej7M_15| zq?b%Z?n)TvH=${Lzkk4lL3g;aH#%46jqt*Xpa-*MHLF1!RM0>)Kyi$+{yy9YAplT~J2x_zweB6hyoFix@A&W= zZ*vPuv?+1SMU5jQ2Z&=Wk)^06@pk*X|MFR_;*AweLwmoD{&)W+7S=sNHiJxxp?0Zh zt2K>!5-$&{?rH(_P;wsjt=W$yr6Aaop%$0FK^)SDBQhaXDP%!g7{VN(K!~uy2x=nW z!eAJ3U?>;xlC+uF5i~!DL^O6)|NFxat!RS7VFwf#r%#vEF@hGyY>%p74dH0(!&ZPQ zGsU1m#ofRC;CbtV{VLJ#KNRxGYX($|pv2w^Lq@KCV>97x7D}%1I^A*grA6wcu`I?) z#E7U!3_F}8O>ZAoTd?Eax5e=Uua82$`)I-dvSDPP(==z9H%Du&#U%$e<$@jGD8z^< zSqbzuKe^O1-8-~e;$R8p(R~J^##d!PB$x>+@}A)(MDC=>B&}>_H_}o@JFIFoDc>+4ZuVitMfw<##(6(@?@ z$x>ihjm-s-S74%x-)3iZfJNPYwWas?P(x3Ig43kmsgzTtT8310^2s>8ARpdG2mDZ%idj=$mkTJkQz$)Kflb8PS&)2nOp+03>D{>s@hyOd%4t09 zBMvqf5{P|5WgkBH%MTv?U*CS^3Ey;+W%r>Icm4TgKA-`=0cNvEb3wT^FwXjZZsHM@ zcYeOH7S@_J#W1oI6vX=j5Uc~!tHd?CS^WWZHWK5k>nQeaq&l6t%J1qAEvs*2xLI&A~5-GzS!7Ey1Jed+%kt!q??(*@G z0Hsf&=EonbVbCIZbz}F|+Jx7?+jCtvz}66m z@Ly_(>dJj4h&(Hw%nJz!EF+}aty{Y}gZ*YLBo!fHMlNh%;a8uV7{YOf;^?<(pJ7))U%P@LMUc-TQ)swRlS zE=>oFpdyNTy$%uUw@8oG>ELM z+Y0BV@{6>>BmQbhbB48Yk(fN7k`tU-NZ|BTot{;!qpu>I$u~>EljHcx-Vg+LA0wcK z)~bWSe&+7{J;^l(d==~1^+SE}ihcMw(S_1FWMB@(m?!+Y)Aqw(_J*5+Pl2CY{4?-6 zIqHlGhkT;g`iiQ(@AFk)M<>Mo0c6^Z;fchvNX&Q_Qq?p63y)6GPQU~Fvvu|64ba6N(7R9~2FJ>Yq);D|s;emhj2)7IAYDp47FdCx1a+^#Fe>i^Owy^6%RhH7 zSix6v&#mY75S3wo6i-Cr>g|hwa{Yb)BV*eW^DfI4FJ#~PUBSDLm!K<1N<<*!C{9ya zUeUVrEY*IX($aoHI!Qr$VbTNZN(Y$=^tXEniX%S_%0ihvGQ~2V;W8kd%!&!SEbD@~ zXs(aWFg@$Zp2RNc}VVaWI|#draD8yo?FjZu)C#3s zgNq()o?=|(YD{0{LnC8{vdioUF^|s<@7dl7DHWDUO9DtKSkR3P)!gFTdnz_zAZfSs zo!gDnh)6rsZPXB40O^aYJ#(Joq(nt|26?GW8f+XwEUQgdYz6Nk2-xi)5ux}1w?G-T zzwrcM8Xl_Ox>UEFe03;bPQv&;pBtBGVzLuh+gw>XESa!<>+&D)E`~`^+L~-UR+44w z6BV(|MLP%|fCS!Z?;;wu#j1eETdK`*fGTQx*i_9WN5=Qqg1PzMdF1b}uDG?eK>6CU z+j>TX5+N7t-9a)Y@uY}eF8ufu7Z#Pk{RYB-Q+NzMh%ikHdq7xem0E$($9>b)4&w;V zmT==qbZq&GE3x*w*6u&l-=;bovfx!&3hWTdjo2oLlfp`Xc~={torj`xidS?O-or=s z)&tiGMz~df`s+x<1Ail6gk)9CfJO+TJAQ#>ME;5fqN3Gk~ys!>!nZ zEG+e`+mZU%oXb1}FEXW#a!>e8E}$_z zvS;C7KZJFaZt4h>%)|#msSyk>H{yD!tHT&#c9N;v+uNhJ6i($F&xclY4*>?AnViIrq;eX0RWO_sJ6w~4%BtNsu|2cP(mJc}T74{gZ_}De zoA>i(?MDrP4z zl^(Nr9#F%z-G{WUJzu|u*(B1RU*%sBj@J&n@eRe{VhGv9-Y_Hh?}NdO685}rKd2$| z{^N!3?>qs?&gHFOuZ&0*&D3DRIA9QV`$_sE1P@jw*6MfHi_@$I=RT%zvH%cB@SM@@ zVyKu|uWcD^mZH=>jGp=AK`j7=lvFbE!BZq5{LmVY$olI~pSpk^kO7I{L6XhMfBsy5 zQ4Y?y@i<)oOnrperd!`W9(Fb?dekf|NICCJCVqc#n>~N9>%QfNa|fiafT0w*F0FYE zU=^hi>M>||Q_>k{LZ-85A_#U*97{YYy(2x8-GXyZ!Yi?|qYOsoYa@nlP%uW}N-z*Sk_Qi-vfjh4838 zPgoIlKn{79%NZZspvCc%u;iWR#S+`=l2I;O6r${4=23d;&^S5)3i5sJhcVJ0_K+Pw zBDPtp31B>?LY*YVV?Lg;B4P4{TYqRtTGvR50*tCXvq>c^xFi`~RzBrWQ^5JNY}JLu z(Gn4;p|^fD)Hr4^(K5Q+Y&sm|HAm{{2DIm)CVR847X%(#1k#E~qa8=OqaEtm8xTJ5e61 z{o@IZKwNVD2Y_yHtC}s!I=bwpgk(G;8i@z+G($)~CZfEQ@J;jDI)$`q;X0o{!`ddp z4P-HXSqV$AE;HKqI+Xn530+q_Ox85u+81<^1Dbq0mX1Vk{P>lz^mpjBj5X;78^Q!E z!|VgdBITEXN%@kfxyNTr$#x(+X;K_PlFAWNlZ)V?BN(B0CX7UVhSCwKVpP3OrbMqo zs;((N6KEkp$E3l5ZSp&h!;U25oq-$LG%+G%&w(~DP-D`OeI}EQDwN3x&s3}Hu>2Rw zF{*E0cL(nrC^GfX?O)ycxmxAQFbbWR@@$jZkuSn}%;oO?o z_a6t!Ox4spEOh?D*T^Sw0ZAO&^;MqO*P6Ufedv+F3}tr-S?EZynv9QyfJD6K*>Fe4 zT!&>wma#^HaMk9njD7DJ8PjvzF6*ut`{}#C+Da6#XvW?S2U#RdC8HY< zO^qS37BIL0TV6$%uP&%0R0|m;1rl7BEAiff)mg;Y$yuhisY20GT&ko>dnqyI!V{+6 zl329oHbzYG)5v+nEZOQLt`&i2i4C#umCv89qJCPB)Gp@UYwhm+oZ?CRrEF4osh>?R8^0^R^Zu~)bS z7=wvPpxfB#pS{TCxjJU%4YDE&$0ez-DBXd}PZrUfmRn;ni zJ%IS~9RNyUh^qlZM$*RQ%#a462P||#hB(Od*~R**H-Z0f z*tI{164)Elot63xwmwZE1@Mt>QWdSMI|J)kAI69(K1Wt(&a15+mI(jSPk33i@@+mr z*{>?6L}VbBEdQk{EB!${8LQ#T!QEcD;j)dtA2xKP>ZuAJf4}KN&ElAT>((V=q`eZ4 znnoH&KDZ?{6E|A{Ra)wmZx4b2u&=S{Mun<(``}^rV^)BTKmtVQ2T^b?kyhOxk)CZ?Y z{)|S15rYZD6p&J4-h0|)NK;DK?>n&F(7=&_fq^3!@IYj)@{0PRBdx$V~H@zxSk*SNnL9QSwU)MYEPOr2~)JdLlqp*q$+PjI16vX$Vn zU;oa=kwui$0tHS}tr8CmFz&VK+UHc`U19LawdFjGt(#9eX7VZXGYuI0u`0qeSOp#i z2Qt1HJw*b-4`**V%QMEv#ynGTQ^`{z@f95c*o(<1C*e=*ntTY1klhOB zi{|U+%XIl*62t|Z4(P+D;qCn1yp>sQI$hIEY{4H5TdP*+RcM4C>`(TQVgU?W^7 zyk2v|1c@E|R-)Z9nmAfE%32^|9l0W*a8?x7xh-QD4=Xc?ntwhEH>irH_y~>Yjwp!e zi#SEoIifsuBz0r!DeL}O(R=OgI;ooQ4$=cXSxmgX{r(R%9eczU`0j0e?UVJlr7O48 zt_V>pCX^^hIwoWQrM;baj|W8CEi#w-{Xp0-gL;9nTVM#tl!!c-yg7MVye#I(3C{`2 zKLGU}-l#Qr&SO6aYY1r|B3aay&iKyq&ZJK4^j~gw9=pSLNsGP3O7@;gQX8z>;pu~f zhAi@5{3>b&ezr%Jluc(%8$z}Z^l|J4Z1E00VLz{C0pIq(iHz3zd85qMM`tZ~FR=Ct$|O0P zt0Y=k+B}kizTwP?AnQ8>6o!bMWAFna;q9;V1>?HF6J+$uye1(*c*U1TfIDV~%Bt<0 zYgb)oA6`_K7H#q1bKWx z2`{2gx2rN8!>4Hh*l{@1f`E7<5N=phk3prC_Yi?98O(a;a(dh9k6SnIvKCFzKChwO zxCt-Q*GW4Z_rITb<|qI74d1b8SyI%MFbQQfpwwYvVb?l~Jz%Ho9Y}?7fcWX?B)ru^ zV3@A5%;{UtSbup5lVOul(>ftjJ|KxKX~4ufZhdLkf$#4;q{zMZQ<>8q9wd1-HOf=d z&(6%u%nZ)VTz!|8-tNA5(cFbA%q;(R;f3W#_HpCTX!E<~3-cZv zZv5h_+RgLozLAu(BY{4(w?B384&S$W=h3n|d>!eX#~1EU>|-V$*^2*a9(Zhh9gFrE zdf@eNJ+@B*Nl(KSDAV_7re};y@0cd2C8uRD9i_;#uAf#TD6K!o-O3}i-PKA{CruXz z&O@8E{IYuWojg+CN|{f*D(^0$VygHx$gdWDsisw)P)KQZ=QwURzlQnM!7tTeew3e4 z{DP*9K=LA~uH%O3f7B^ro5SJoYAq&rI2`{6 Dwp1LJ literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/EmailHandler.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/EmailHandler.html new file mode 100644 index 0000000..84be2ea --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/EmailHandler.html @@ -0,0 +1,105 @@ + + + + + + + + Web-BPM Docs – ミ斷ーミキミスミームミオミスミクミオ + + + + + + +

    +
    + + + +
    +
    +

    Назначение

    +

    Обработчик для отправки письма.

    +

    Свойства

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    smtpConfiguration Конфигурация SMTP-сервиса
    to Поле кому
    copy Поле копия
    hiddenCopy Поле скрытая копия
    subject Тема письма
    body Тело письма
    attachments Список прикрепленных файлов
    +
      + +
    1. В параметры (to, copy, hiddenCopy, subject, body) можно подставить выражение #{variableName}. Вместо данного выражения подставится значение указанное переменной. Например: в теле письма указано “Здравствуйте, #{user}. #{body}”. Созданы и заполнены переменные user=“Петров Дмитрий”, body=“На ваш счёт начислено 1 000 000 руб”. При запуске обработчика тело письма будет заменено на текст “Здравствуйте, Петров Дмитрий. На ваш счёт начислено 1 000 000 руб.”
    2. +
    3. Добавлена возможность выбора dao (стандартного графа - DefaultLoadDao, либо любого кастомного), это позволяет получить выборку нужной информации по письму, использовать полученную информацию в полях письма. Для этого: в параметры (to, copy, hiddenCopy, subject, body) подставляют выражение в виде @{table.column}, где table.column сущность и колонка из графа. Писем отправится столько, сколько будет получено в результате запроса строк. Каждой строке соответствует 1 письмо.
    4. +
    +

    Конфигурация SMTP-сервиса исходящей почты

    +

    Данная конфигурация задаётся в файле resources\src\main\resources\config\jndi-resources.xml

    +

    Для добавления новой конфигурации добавьте в тег jndi-resources строку вида:

    + +
    +
    <jndi-resource name="java:comp/env/webbpm/testResource" type="bpmn.handler.email_handler.SmtpConfiguration">
    +    {"host":"mail.cg.ru","port":587,"login":"iteco","password":"Qazar@375","from":"iteco@cg.ru","senderName":"Webbpm","isSecured":false}
    +</jndi-resource>
    +
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/JiraCreateIssueHandler.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/JiraCreateIssueHandler.html new file mode 100644 index 0000000..62fbf76 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/JiraCreateIssueHandler.html @@ -0,0 +1,120 @@ + + + + + + + + Web-BPM Docs – ミ斷ーミキミスミームミオミスミクミオ + + + + + + +
    +
    + + + +
    +
    +

    Назначение

    +

    Обработчик для создания задачи в Jira.

    +

    Свойства, задаваемые аналитиком

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    projectKey Код проекта
    summary Название
    description Описание
    issueType Тип задачи
    assignee Исполнитель
    reporter Автор
    createdIssueId Переменная, в которую запишется идентификатор созданной задачи
    createdIssueKey Переменная, в которую запишется код созданной задачи
    +

    В параметры (summary, description, assignee, reporter) можно подставить выражение #{variableName}. Вместо данного выражения подставится значение указанное переменной.

    +

    Свойства, задаваемые на сервере приложений

    + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    webbpm.jira.url Jira REST API URL. Например - https://jira.micord.ru/rest/api/2/issue/
    webbpm.jira.username
    webbpm.jira.password
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/RESTHandler.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/RESTHandler.html new file mode 100644 index 0000000..d135870 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/RESTHandler.html @@ -0,0 +1,100 @@ + + + + + + + + Web-BPM Docs – ミ斷ーミキミスミームミオミスミクミオ + + + + + + +
    +
    + + + +
    +
    +

    Назначение

    +

    Обработчик для отправки REST запроса с помощью JSON.

    +

    Свойства

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    Authentication Type Тип аутентификации: NONE/BASIC
    URL URL запроса.
    Method Метод. Один из списка: GET, POST, PUT, DELETE
    Request body type Один из списка: OBJECT, ARRAY, MANUAL.
    OBJECT - в данном режиме можно заполнить массив значений в формате ключ/значение. Например {"A": 1, "B": 2, "C": 3}
    ARRAY - в данном режиме можно заполнить массив значений. Например {"A", "B", "C"}
    MANUAL - в данном режиме можно ввести произвольный JSON.
    Headers Заголовки запроса
    Cookies Cookies запроса.
    Result Результат запроса.
    Sub results Частичный результат. С помощью данного параметра можно сохранить из ответа значение параметра, указанное в качестве ключа.
    timeout Таймаут ожидания ответа в секундах
    +

    В параметры (URL, Headers, Cookies, Request body type) можно подставить выражение #{variableName}. Вместо данного выражения подставится значение указанное переменной.

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/SetVariableHandler.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/SetVariableHandler.html new file mode 100644 index 0000000..91418ab --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/SetVariableHandler.html @@ -0,0 +1,73 @@ + + + + + + + + Web-BPM Docs – SetVariableHandler + + + + + + +
    +
    + + + +
    +
    +

    SetVariableHandler

    +

    Назначение

    +

    Задание значения(ий) переменной(ым) процесса.

    +

    Свойства

    + + + + + + + + + + + + + + +
    Наименование Тип свойства Назначение
    mapping VariableWithValue[] список переменных процесса
    +

    Интерфейс пользователя

    +

    Значение переменной не пусто

    +

    non empty value

    +

    Значение не задано

    +

    null value

    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/SqlAttachmentsEmailHandler.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/SqlAttachmentsEmailHandler.html new file mode 100644 index 0000000..fa67fc6 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/SqlAttachmentsEmailHandler.html @@ -0,0 +1,75 @@ + + + + + + + + Web-BPM Docs – ミ斷ーミキミスミームミオミスミクミオ + + + + + + +
    +
    + + + +
    +
    +

    Назначение

    +

    Является наследником EmailHandler-а, с дополнительным функционалом: прикреплять файлы можно при помощи подгрузки из базы.

    +

    Свойства

    + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    dao DefaultLoadDao (граф сущности)
    fileNameColumn Колонка из графа сущности с именем файла
    fileContentColumn Колонка из графа сущности с содержимым файла
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/Telegram.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/Telegram.html new file mode 100644 index 0000000..b6b5b11 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/Telegram.html @@ -0,0 +1,96 @@ + + + + + + + + Web-BPM Docs – ミ斷ーミキミスミームミオミスミクミオ + + + + + + +
    +
    + + + +
    +
    +

    Назначение

    +

    Отправка сообщений в чат Telegram.

    +

    Свойства, задаваемые аналитиком

    + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    chatId Идентификатор чата
    message Сообщение
    +

    В параметр message можно подставить выражение #{variableName}. Вместо данного выражения подставится значение указанное переменной.

    +

    Свойства, задаваемые на сервере приложений

    + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Назначение Значение по умолчанию
    telegram.bot.token The token is a string, like 110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw, which is required to authorize the bot and send requests to the Bot API. как создать Bot см. тут https://core.telegram.org/bots/features#creating-a-new-bot
    telegram.bot.name The username is a short name, used in search, mentions and t.me links. Usernames are 5-32 characters long and not case sensitive – but may only include Latin characters, numbers, and underscores. Your bot’s username must end in ’bot’, like ‘tetris_bot’ or ‘TetrisBot’.
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/UserAuthorityHandler.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/UserAuthorityHandler.html new file mode 100644 index 0000000..4974aa0 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/UserAuthorityHandler.html @@ -0,0 +1,119 @@ + + + + + + + + Web-BPM Docs – ミ斷ーミキミスミームミオミスミクミオ + + + + + + +
    +
    + + + +
    +
    +

    Назначение

    +

    Кастомный обработчик, который выбирается в Web-BPM Task. При выполнении этого обработчика происходит сохранение данных пользователя в переменные процесса, также в булавы переменные процесса могут быть сохранены значения, соответствующие наличию у пользователя тех или иных ролей/групп.

    +

    Свойства

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Наименование Тип свойства Тип значения переменной Назначение
    login BpmnVariable String переменная процесса, в которую будет сохранен логин пользователя
    userFio BpmnVariable String переменная процесса, в которую будет сохранено ФИО пользователя
    firstName BpmnVariable String переменная процесса, в которую будет сохранено имя пользователя
    lastName BpmnVariable String переменная процесса, в которую будет сохранена фамилия пользователя
    middleName BpmnVariable String переменная процесса, в которую будет сохранено отчество пользователя
    orgName BpmnVariable String переменная процесса, в которую будет сохранено наименование организации пользователя
    orgCode BpmnVariable String переменная процесса, в которую будет сохранено код организации пользователя
    userGroups BpmnVariable Collection<String> переменная процесса, в которую будет сохранен список групп пользователя
    userRoles BpmnVariable Collection<String> переменная процесса, в которую будет сохранен список ролей пользователя
    hasRoleVariables Collection<UserHasPropertyVariable> Boolean Тип UserHasPropertyVariable представляет собой объект, в котором есть свойства: variable - переменная процесса, в которую будет сохранено вычисленное булево значение valueForMatching - строка, которая будет использоваться для сравнения. Например, если список ролей/групп пользователя содержит в себе значение из поля ‘valueForMatching’, то в переменную, указанную в поле ‘variable’, будет сохранено true, иначе - false. Используется для проверки наличия ролей (hasRoleVariables) и групп (hasGroupVariables)
    hasGroupVariables Collection<UserHasPropertyVariable> Boolean
    +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/index.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/index.html new file mode 100644 index 0000000..f4d6580 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/handlers/index.html @@ -0,0 +1,60 @@ + + + + + + + + Web-BPM Docs – ミ榧アムミーミアミセムびミクミコミク + + + + + + +
    +
    + + + +
    +
    +

    Обработчики

    + +
    +
    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/accessories-text-editor.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/accessories-text-editor.png new file mode 100644 index 0000000000000000000000000000000000000000..abc3366edad864f1c06e1354c2f7cd0ee1f2a080 GIT binary patch literal 746 zcmZ{bTTGGx7=}MgQB0a>2Xy8-Qk%Mg)2Uol)6`~&MoY2`5S-^yam$v=69SeK6$KK{ znHyTBE2klfh0EWeMkof(9Qj+OH{yY~a?Kl87j4h8y?eJuOs7TT-F@8w03RC@nFs(! z_H{c102dpVRsb+`dK@DP0Ca88R!`Tp?T^0^RS6W5d#Ykg4b!QH=_INW)G(b!nz*uT z(!m1&m7;Q?xI$DVI6$xR)3w2um&Yw{f~{(r{sn$>R`{vi`PW2NLrun1&zY$X+<15B ze7EnIDt@+$@S)SUIoH3hoZ8&lWV6{87Z=TD^OCV^(KI$QF8X2amE3V_?`*Z(?G}s0 zXf$dxnxE$0Q6;CNv(@2nY;0_-udf>nhSjecDKO{|&=a5SBk}4|8mY0`ni&N4W&fDzv3d1u886KWTj9efdhBR}^d^c97d`ZGFy^`Qp&{?y7IF)B z9X^g7ya&GeS#?}o;k2{f#}OF#s<%{ob-_fVi%Ms|jT;aIVJ=L}UymV97XIGc+1aw& zcDGLuTo9}?)LHbpZ){@AU28?`T7d0><^nORoMUl literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/add.gif b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/add.gif new file mode 100644 index 0000000000000000000000000000000000000000..1cb3dbf936e38b5c5efdc3e247a042eb1b1d23e9 GIT binary patch literal 397 zcmV;80doFFNk%w1VGsZi0Hrwqfq{XHjC_`scb}hfo}Qksu4?V%HuUQ#_Ut72?;iT^ zBKq(m_wPpc?_K-yJooTv`tnWp@M`+UP{`_CX>@2HM@dakAa8CUVIWOmV*nxf1OW;FKL9KM0000G01yBG z28=)gU`QMW1_i@!3CKC0&ddYCI52ah&u7HtL@q0qBk^l$xg^p?lB(HEigIo{N|QVi z)(zKM$kAyhAQ&1iFcb)XbtESzDjgOT6Af33jV>-IB_SdLSAi#(F{3g$0H2JZE~KTW ra*U!eGBdQMSC^|Yvokcda+j>Uy{=7A#!jw6Max43OV7~J&_Mt@cAw$D literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/apache-maven-project-2.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/apache-maven-project-2.png new file mode 100644 index 0000000000000000000000000000000000000000..a44db6ed08630e9fc59e65ea42a1a067f781ddae GIT binary patch literal 43073 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 literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/application-certificate.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/application-certificate.png new file mode 100644 index 0000000000000000000000000000000000000000..cc6aff616f3e49450f1c31f1d2aed5f748af151f GIT binary patch literal 923 zcmZ{jTTGh;0EJJx0i{TpW3ob8`CHoB(v|)#h0?Bo&3xIN^;!UeQ8e=HKK!8g1QgJ$F|21F`2mq4@4vZkG zQQ*2#Hl>kX1{#17V1iC>0j>fAKqD{&wC`cJ40+)a3u1pFVlF(Kap1xKXT{BvL=qNWb+smr4un8uFHk6~X-M z87_BLzzN#Si;lPMRq8_e+y@0&%i`2;RKj^NZ{~<7=zRO@O5Jiv-dceqEI7E%id#vG zyPwOSW~R*YIrF)K6^-PfFy$$m_KZzi=Q3_8q_^Z5L2lB0R{RF>($D;t7i+77O3_k| z@H>NgRi78kmv&rW2=Rv7*#vYyUp4vKO+EYJUVdZKU3G%Bx8~wx6$d^Hn+p?ZXi0E{KpCFaW_$7DytZJa@h-j zA023L_}yyP9tAlmlSyPU38}J@Dz$=C=cvS_Oihv%uRZJdPr>7DXlm^G{{rWXYc={J MlisYGE4KIl3*iznyZ`_I literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/close.gif b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/close.gif new file mode 100644 index 0000000000000000000000000000000000000000..1c26bbc5264fcc943ad7b5a0f1a84daece211f34 GIT binary patch literal 279 zcmZ?wbhEHb6kyFkwP}e}6+mLp=yE)H5&?6cps==O-j2#K*@61O)i|`#U%|*xTD17#Qg5 z>nkWI$ji$M2ng`=^D}^ygDj#2&|zR;U;z1rfz8IDp}<3@i=ksl(aIK?nHQD_&lKsL w7WOiDrfZ2{@UpMm_mbA1{xEaRx<&hQi?++=&UziikaGV0_u~zXjgAb~0CgX#Hvj+t literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/contact-new.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/contact-new.png new file mode 100644 index 0000000000000000000000000000000000000000..ebc4316d844dea7c644b636a768348a4a105fefe GIT binary patch literal 736 zcmZ|GZ7kFQ9KiA4A)V)D5-po*ikfyu)ZMb>JYEX(kdw1{I*n?cZlbOw)taPteFBFK}8FBxiiqi%0as~+2x zJZ7;=R{6zc6)YAT`P*=-$~!vSdU~4|X5VVI26S2#s-9z(7Vq!x@2NIsI+#DZ%XK=f zRy~0#SlaD=RN2_yTZsNv_GGzE@<&aQ&W?Zlah_4Gh2F&WlFY1 zGTk(jaY3n6N~KbXL?RZ8Q55|&$YXLMidmt^OG?kjS3;psAP_7pEU49Lxm>1DC?wKf z3Wa=gb8}~B=S@v@^Sp}y0IcaDfuR6Ko;iUg4wr~&vzn!-i628pldSpZN^_Vx_J&c?^&==q*Ww7%(Xm}!n(Tv=XS62&hb z%Y!r{vQrYq&^9uXkbQ^{>El2<8t!Hv5$zQk5akyUB=|gz9dUEVySa9^cDBE7>(Wo( zuscyz=}e{aseBKcge(1hj~H5%ucwzs&6!_B##`n2BlTnLd{yP8w*(cDu InG}=z2h*!{c>n+a literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/document-properties.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/document-properties.png new file mode 100644 index 0000000000000000000000000000000000000000..34c2409a7c28092f7437730eb92e25834a433349 GIT binary patch literal 577 zcmeAS@N?(olHy`uVBq!ia0y~yVBiB`4rT@h290TVA2Tp8Tn+FEab;j&m^pLigb5QG zVPNXisomY(U0q#Mr%vta>Y6iW&j0`afB*jd=g*%XKYqM=_3G~3yZ7$hyMO=w`}gmE z{rdI#_3IlqZfxGXdHVF}^XJb$bLPygTeqG)dv^Kq<+!-G*|TR~xpL*@%a{B1?K^Pb zKx%4gZEf|FCr=hHUK|-2xop|8^z`(stgMEH`g`|oZP>6OBO@a-Gqba^^Us0gp@~3%xPk5VR>?K91k8pOk*wj$;!go+S1bE z>Y^B9Sjg$AnJFm|9_Hs17v~trc`7t)VqjQkaQn%ujI7MpFJ2wo@r#YEt*y=NSiri@ zl{07VY+brUbVhb=a&~t5`v)g-*`J=8VPR>xd&jA!oi^7T6trHcaTke7Tbs)i6c`z7 z*m#Ihota^Kkl^bc;alwt3=FCzt`Q|Ei6yC4$wjG&C8-QX28M>ZhK9NZmLUd~Rwf2k rrWV=;hE@g!-vTZiM$wR)pOTqYiCaTEZ$>=>0|SGntDnm{r-UW|tUd*w literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/drive-harddisk.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/drive-harddisk.png new file mode 100644 index 0000000000000000000000000000000000000000..d7ce475f83900cfe56bc5374932b5bf2ca4dbc8d GIT binary patch literal 700 zcmeAS@N?(olHy`uVBq!ia0y~yVBiB`4rT@h290TVA2Tp8oC)v=am_2phM?a5?(UwB zimK9o|Ni~_`Sa7~Pvw=RZ{EIr^XAQ)w{PCQ1+m_~dHdz6NIzIgHC`Sa&5T)5EI-rUmG)ZEh0)LgH7@Zx3$1_tJm zAirQvp(QadUKBGhFmM)lL>4nJa0`PlBg3pY5)2Fs(>+}rLpZL7p1&^CWFX>tFK~!*kQ3gwWi?wP&{Z zc`U!Jyz8F)o@)4foiXjxr=q=I&fHc8tNJv>Ka&v7+6}F7+9H_Ya19^85l4~EYL#Hkei>9nO2EgL!qn0GzJC+ N22WQ%mvv4FO#pj0UK;=a literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/fix.gif b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/fix.gif new file mode 100644 index 0000000000000000000000000000000000000000..b7eb3dc44242af0aefef59f29411441b74815987 GIT binary patch literal 366 zcmZ?wbhEHb6krfwSgOsS;MHE++*;DLsHl5gM^|e_?~<;b_S%WdYbI~5n!2TG>ejY7 zI~FXQH)-jvha*6u#Df8X9ChYuY)a%k^~E2mDLxODNt zmCKi|T)zC|@uR1YAH8|~^39u9@7}$6_wMcc_wPP@c=zGM`wt&JeE$6T+qbXZzkmPr z>(_tEfZ{(X=c3falGGH1^30M91$R&10EPTKg+vA4#AF7=pDc`A4E78<3=9kmARjZZ z83czi z3pTO%vHV~bkQA-4XAlwLU?`Glc4d%YW#wh?k`*s&6=7xK?2MBZ^KN73VxHo|vxt|Q PdwHRM-MVsnM+R#E?HkRg literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_error_sml.gif b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_error_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..12e9a01a930c8dfa20992254a9c2b19272d1d491 GIT binary patch literal 633 zcmZ?wbhEHb6krfwIF`;38Xg=L5fUC55*`^E5fv5{6CRfslb9Tzl#-BFkkeEgUS3gJ zQ(M{4RM*nl*wWV2(%#h8(cIqA(%#w9-r3sG+1lRK+R@e0(bd}7-8N}*|Mq_0$x|mz znL26u^hq;kO`AD;`s}$gHqEVEv2fzXg{_O0ELaRe3l}e2xMbO)ON&C5uUvXydELs@ z%O5XsTD5w`>NP7?uU+|Kncdp;tJbbxy>9)Q_3PKH->_!G#&sJut=qV1{qr@x7dO;y z+Ol!W)=gWsZQ8nh^S13a(Ivun@3-G8g0()sgef1hdmeYWZMx%!{?=l^&<^Y@btf1m97^?KWX>H)=n`azY6c?!9|U~ literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_help_sml.gif b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_help_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..aaf20e6eea4148fe8fbb09bdf4595eb98334fff6 GIT binary patch literal 1072 zcmZ?wbhEHb6krfwcs`v$!K+=-yFK@*{4(4w^PNhOVz(i)xTTKzgs<^TPwIv zC!|+5v{yH@PcO7zH*A7_c)xzcM8k-QM$uD@qo)|hOfiX>Y8EruBzCGr+!Tw1=@tny ztP`eLCC#)>o@J9V%OQQPQ|5g4%sI|k^IdZmy5%nP&YSODZ9nxjDUiXKwe_oZjtOeY*;Kw`TY6 zF6!T2IB|FWq`d``_m@uDTQu!p@w9^_(+^h8JXkUNXw%$-Z3_=~E;A zJ(ss1yS3}&-MuGo?>%+rz?r*;&fPn9>EVehPflHXdivValh>c0x&G|zt(O;Xzqoeq z<>MD0p1l0<^wq~_uRcC|{ptDZPcPnle)0D6%eS9jzWe<8{g<~NzP|nV{r#tJ?>~Qk z|M|y<&)+|M{_*k4kB?t}e){_J=kGti|NQ;?_us#N|Nf5xa)IJMDd(cp#FEq$h4Rdj z3CKPr~;uOk1Br@kRa|08HxJ}MZ7Y|l$-BJz)kCulFEj;p5d^Sx{W$RV# zVamC>VL=nSV5{EDoeLiypW@EMa7I!o(YZsc>>UH=q!vy|TQ-K8!emAlPVs~zB85sz zz2+G){<9QtQDNbdpRVV+u<2>fA`a$anW{}r9vRvZmt2gR1P<^y7wmD^*_7tLSdCN7 bPNJE8l8RlnnvV>}f&&eV97f7K91PX~|E#c| literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_info_sml.gif b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_info_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..b776326703c341ce559f98f028bb92fe4c332a83 GIT binary patch literal 638 zcmZ?wbhEHb6krfwI99}9U|?WrY3AnUX5m?3;Z0M>*U2f%FW$ja8 z>r-aqTVd;4X6IMw5K!e9SnV8G?iy0(7FzEf-ryBpc!NE&Uj$V3r=<<`pm!Dj|y5Z>6r^l~7J$dccki#haQF4)`>(G&cyr~!+iMTs-gxx(=HqvdpY3|^^zDOZZ|*(+c>npQ zN6+8ifAQ(T%TJG9eSZD+;EVTPUcCSM_WhUFAHKf+@a@gV@1MV&eE0ds`_JFM{y6pd z`>!wGe|`P&>-*2&zkdJy_2=)OKY#xd4HWCBD!6<41~4f8WMSlDsAte&U|?VXMIr!o^7_0%ivRRh^ literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_success_sml.gif b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/icon_success_sml.gif new file mode 100644 index 0000000000000000000000000000000000000000..0a195279b3f930efd5b4be22968615ca313cf8d0 GIT binary patch literal 604 zcmZ?wbhEHb6krfwIOfgpXT9B@4R*gb+Wp>W|7WA!pG|guHrfB#Z1-og{jV+dzqi=` z*<$}|tLyKbUVnB5|K1h;XHWR=z0rS;6#O|_@aI_WpEFIrFMIwu+w%8p^Pj7pe{QDy zzMb>uvEQF3k$;}X{&}A9=VjQRmyv&7h5vaK_2)(2pVz5>-emlFTln|c{=d%-{(ZIf z&-=zd@0TV`Lg=Ym$iSttoi$8 z-QO=8{(jx~_uIaIKhFL8apB+3^Z$Nc`1j-azn}O2{e1rK*W-VG-v9ga;oqN+|NegX z_wV=r!3`Au=?7IN<|#Pm=j3Fj7Aa^H6sMM^Fbx5m+L`vnTw};e!{BR~$Za@W|1FM~)sk ze&XnflgCb+JpSiM!Ku?H{v0hlb^7F=W4Wi#oH~2%%!Lc*E?hkK=SWv%MZr{0e=gzIWcW>Xld-u;{zkB!YzI)X5=SkT8 z`*;7m41M(Y;p4}T9zS{f=XJ`{r%#?ed-~&b0Vl^7jiE8Eg*nVXiK5*Ov~DIq1^A!U$} zoRkm~;_W8c+oBpC>k*{R%_An#uEHIe9QxOQ~4c67B)nAG?0 z-@ivsUR=I@_s^d{6DIXOeDb2OWxiWYNez1#A;x8!wgaf_~vE$ExSY1iXd=l=ZtaO2UA&iVUWX76vBxwmn~UjL-Vl+sDF z*Pd9rclWVNTbJ)RFn!gDiAxT)OkHX?amiUtnNhWL%n)f7<11cPzcq>;ejG{qt=6 z@+`fxja`#%T|<2R1I=AytbH;Q5nlA`*RLmA zmU%HSFff$_`32A2$S1X{l!1YPv%n*=n1O-!ItVj5Y0R!*U|^W*>Eal|aXmR9!HJ27 z$LEaBnt%g`j-5Mj!t zLY_lHK!Ha_#EyIyl^N2avcl5h^CwK0!0||pQ`MRAhGfp6q5y?Cht3^1(Z?depwJ@2 z_Vy?L2?hoR)e_f;l9a@fRIB8o)Wnih1|tJQLtR5dT?5My14}Ct11nPtZ39Cq1A}h? h7Y?In$jwj5OsmALp`ACQo`HdZ!PC{xWt~$(69DZwCz=2N literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/internet-web-browser.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/internet-web-browser.png new file mode 100644 index 0000000000000000000000000000000000000000..307d6aca6141d213d1563b49f974bd8b0c74e678 GIT binary patch literal 1017 zcmZ{cYgChU0LK4B2NheTojmD>8kHvn)0c%*5ax8;It)oDwpXN$ZRFy>$X+2{u3JVb zVv6V)L!h~L$_PkqB@E;e>;h~HWMgA)Y%(Tpa*>-H8M6c5`p`MQ=fiW(^Lx(6M2F+N zcXzW zioqMiBUOpn*iV8soBc1JDDM%=ZM(rCw1RsizpdY@tkXLMirbTq97IVXR4$MgIZ@X*=E#6N1Jl2tWIti zw`+8!0j*iCwRLE$ed0w%H&G^ zF;6$DoxP^zVf*Tc{kd|;;C8!RF4yRosk2|-H*D!r4s~nHO=?Gj%30k$JiD;8u(-6c zvSJ<|zt^vC?$u8@XO@hDT>=$E=EzerQAc1n9SrL~Iu@{TL@YJT(m zOSLMryt6rxPuWceGmhu4rThb$_KLD`xjrDi{!Hu^7 z0IEn5F>doHgGQqzCDU1qM;2QW@JM?*@kDU;rtm{~9{6K13Zt1|r^OCgnViBS&* zjPg;<=XfaMNC}td`^ozO`}TeIF2Oe_3@#)F2JS!P+cC0B(36>x|3fO63HE+rr)Kv|N0}phlKO; zBG*M;y&Y8%m@6Bkjvdb4i6BeKnzCSy`=wmZJASz0i{u>wL0J*uFcAGLzSe@{Zvn;M z24shoY<&j+a1aTlAV)c=sjM^v>|yN16Cfx6{{=neOcFj8VX@O#r@g(8o@UVz789Sz zMo!`5POr@mh9V9CVE6g~la8>07#k}W|QP{{mZe3?~2p literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/logos/build-by-maven-black.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/logos/build-by-maven-black.png new file mode 100644 index 0000000000000000000000000000000000000000..919fd0f66a7f713920dd7422035db1c9d484351d GIT binary patch literal 2294 zcmVKOG`!VuDc=fnx$+R6#>c^>b&wcOS?|$!`a}U6ptjU_J zlBA}l*3{J0)YMd0R~Hr*dU$xO^ie1jhYlTLS+=C4#MRYRCX#twGUSD6Il$6AA+=UAlkY(ZF;m4037Yc>v&!1mPsNXdliHV74&z>zUEv=}iC@U)i zfc^XTJ3BiAKvYyzczAd~K){|od(ip)`}f`5-HnZnv$L~Hzqq=(y7Kb!>gsAwPfu@e z@3gcu0LabFC4?{xBNPh18Fpy3+Tr2hfq{Yc_V$w}PjVdhGtMTH$zU){PfznaPmK)? z4KH52=;-KZX=#a#jlFZ{PF7YH!!Q{c8Taqs=Xt)UsK{tE{@>vc{2Hgh!NL0adH}e0 z@19Df^78Tm0ES@zz{SO7Zf@=upJ1_AP_bIAgpih&mWqmsojZ4GG#a&9{f)&Au~_Wm z<0F^L4;(mPHk)-io!M*-3JMa7#VIK%EBy%}_$g6IPEM9cBvPp~K0f}{t5+6_rMbEJ z(xpqcZ{G$0j^p<2+vnuu^bN3MdU`rLJ3Br;9ss7MrVbuFxUjHLQBhGX6WriQ5|M*_w z@5bUDdV71dTCG;AO-@dx@4a~OA{y)K>k+2N$jAo|9?w z?b_+nr`2k;!{M;o?Qh<^`R=>#RtFA0KR<`Vfh)Li;|5+X!otGn&U<@%H*VaBDU;Gf zr_<5=()7Iqfmk>yLj`}084`48Zf?d|M~)mpOHfeI{QNv2WMN?;Dk=&9GBY#LVzb%$ z`};Aq6GAK&OK4~)&U*g*IT{xh7M8K~%9SgtQ-;OG#ZeC5ym=F=X|vf(9h#b&K7RZN z05+S=X0xGjU|@g-%ePwl!GC`7t=5VDruDp`t9rXwq=tAb*88KQqo~N`a#V_oixKzA z%F4dJzL1cRy1F{CSUfW`qfjWeZ{Hpm7>H$yNF>V6&c<>vGBOgU_w@7}J9g~o(WA6z z#sgc0B0VlH4i&T6{Pyiz)FUDys6$s*7rnXCi!3z)!0DGJ5eITHyM2Q|E@qtti{QRD z*nbiZg+h^&lY>QINl6I+oH}*N-Q67kYHMqqoSd*@fE67^695Pa36aTU0HD+95)%{g zFw)c0Gcqy&K&4WxG906$qk6p_b=txpgmiazqaGF(M)NU+!{3cPsc^{*a`Ja$nXfZ@ zhsL%N4whw0OG`2M6&4oG&CQ8KBHBPHC@3f>C|I^a>__(qFp!^RU zV`F0uhl6EVxm><`_ijATmoHz|)ztxjL?XdmSuB<(Po5A$mM!w}C3kdS~ef}W>dub-Hhz&fI`vJ#oXvTST@?6qsxN=r)tz|+%n^XARiL+I)0 z!HGL|?4Z?OC@z>ppO+fmk zEDIk1FgrV2R8&O&@;qNwR)+h@$;nZx)dqvXVzG2}b>-#d_4oHa!G&Dp59OYMg zd;9A2I}{29&+|ObzkB!Y^XJcKjE;^*({SomlT)I^E^_90Q{xPG;bvU;38ml zcng&pTZhKxAmAX-{xuvUBO`bZu-omWrKK8;X6fkl>(@`5I6;GyySuwkDCBv*tE;QE zwH1kg)0Ijk1~{Qms8A@Vadob6a=9D}VUx-9>C-1l1S|^dcDq`w#&Z*k#hB*+K%>#n z=0$)zo8T)X1Ujc}V+Omw8!O@%0GKp7%(fp1ER{;7QYogYiHQlT)w*&q5{X2iP;Ak literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/logos/build-by-maven-white.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/logos/build-by-maven-white.png new file mode 100644 index 0000000000000000000000000000000000000000..7d44c9c2e5742bdf8649ad282f83208f1da9b982 GIT binary patch literal 2260 zcmV;_2rKuAP)4hTLUyOQ{PVbVY5&Y3g!&hN~bnR7}ZgkXUt ziC%zU0gf+&kEv>t|d$x|zXw1mS0D%1b{8z7DF%0wW-8(XBFc`A3vVI|O z^!N97baWg(eE86zLn4uA_wL=Zb@+UKU|=8sJb3V6XlSUctSl!dhm4xd=KJ^W|8h2q zR4NS%3yX+|NKQ`f?d=7Cf`Wo)&z=E5TU%REQIXYZefjbwRvsQ6zIyfQojZ3l8V#{v zv)R(q)39Vr2GBPsa+apV2%%fIZY3ln0Kl+1Y8c*(xe3X6sWFH9kH*UDDLl)ZN`}u~;f9D%P!A2LK5P2`MQl z(b3TuDUC++_U+qm01k;n!Z1u+TwGjS+}X2d^Yil+3Pn;B-~q z{Qdm_z{kf&EEb1^gw)j3R904!x}#RBj~+c578Vv16olc}xpQZGd;7k9`>@WHD_2M| z{%VB2fNVCK&1U^_rTW_bx`C@MK&%ZR^ybZ*=;&yb zN);0mV>X+~OA`|lRVtNAr7A8i#zL)DyJycHxm+$5izO0?QmM?$%p@6le0*H3R;yI1 z=;-LCrlu1oPI!8HIypHhmCA~Wig|;>WHON!GbSbmcN`jxhJ=GssnlpRR;zVzaF8J4 z>+3sJhW@0w{LH6-`(Afr<9kMWBXoSUM7Dox&JGJtojOI96z3EG z*uH)HWN?qO7x!`hzQnzLg5JL3Ui^ps%X$n4`+YK2S-yNZo>gC8kJmXUC#D?-i_a7IlwdR(Kkw#T>s)<( zJ!ZVTycREBO!{t;H9|r{F#q)FQ_`LjAsBnPnnKk2PZ;V3*7{M#@%jyBNObh|^_fg2 zd|f0I3eTTEPf=83VhUbHWgRft|{%MRRMp6H>seM7wV6&k5Vn7H0DDSDT_wn(;aaUDU zWi%QoiptK;CgqIWB$bwy78Mm?w@oI~&6_tPBO~$kExCLno}10)mX;RGM?^%-PjqOt zTFi(#=@4C7NJmxEVK7l6G0yhEp_Lq9)1fj}S-2%Mdrv$L~tStVt%xVSheDG9e5EX$6J zj8GIMm&=bIKaK;TqoYG05D0}r0!Kqb1E0?q2n1`_uAR{_f0E{OgnR$~y~Sd|+0n_# z2@6L?MsUQ^H0|QzLJoDKqobtlneyk|8`Sp{cp}PUC5RRQ^8?;2;Iss$eWk%*n3$Nr z(73v~e)3}s219#$yTM=(2n6o#?!LahxUO>?H!v`O%bZ*;$Ideh!!Qg0h{fVXix$lf i91DLtEx@rr0RIK2cl{g~?Z1Nn0000}s literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/logos/maven-feather.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/logos/maven-feather.png new file mode 100644 index 0000000000000000000000000000000000000000..b5ada836e9eb4af4db810f648b013933e72c8fbe GIT binary patch literal 3330 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 literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/network-server.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/network-server.png new file mode 100644 index 0000000000000000000000000000000000000000..1d12e1938ac4d8817701a555a97b36a42413ff7f GIT binary patch literal 536 zcmeAS@N?(olHy`uVBq!ia0y~yVBiB`4i*LmhOLfIqZk+%n3BBRT^JIc+dE}3Ffecy zctjR6FmMZjFyp1Wb$=Kb7zI3C977~7+n(R+Cz2?^`XJrxevgiH0p|<@PD2wlwzuEK za^5H?s;NX*u-{>7Wi<);cEoyuleVz5R#dJ|0N0r#O{x#xSsAZqUA)|;-cp@;we|7r z^;Q2CmQ|KiJrENszgOEAX%cwcChenj-7(KS7Sqyu+!t@YuGQkuZJJ*b@B7_Vye{Hr ze08cff99Vnc8Mn^2{>gh5PP%y?eS2{t1Eo049`rhu=IKF+dG9VRx3E0=VPMr-oF<6 z&Yjb%`E+S^3VpqA7yo)O8uYr=bgB_@b>JSuFfdl|O3W@z zQc%yz%*{^hYwGp%bfX z-rPNUVtLW4+lS6?YMvO&IXzY6!;|ypH?>Sl6`PhU_~!26>8WB9W7wxA3r&n+KfA7W zVhlUTkXWAnXtu5}rq&?Fg@vjMi_{kuYb+>GnvpJca%I_x6=kPZm!Do;ab|VNnboDs zs!gUR@l8wOo1G!Ls8DH1iTd&?!+WRK+&VPt(1OfIrZx`u(+aclUJkM>0*0Wu2EJb!A!N$$s-oOB3g1OD)Kiy}PO4 z+I*ke8}jDo$Slm4d%CCY(fY(kyQ&xD$t@~We0_G_tE1h|PfTB!FTc1*d10YS&W9HV z85kJkN`m}?8JLB1I^~c2`}gnfzxkK{{=4()--mDC{{H*d!F}{3_m=AP^9&3Oj7i?^ zE({&4vK|Z!44efXk;M!Qyw^dP(Me-=1p@=aB2O2`5RU7v=Z`Wq1&AWEPrm>WPXZ zPpk692%CirOSNWtExkN5M=xGum1D40_^Pc{i*II??~1zcvik4AhD8}w7E;m&PWaSG zC@*-Kb1q6paKY88!?)hq?X;JPT>e>I|GM<+e+~&o_WR?+v>RUTPiQsoovZ%%ysv#I z0|SFRdP{kVo554k%6J1uA!l>fn|t+rIm?+m8qq+fuWUwL4f-0auf}@ c`6-!cmAEx1RwbWiU|?YIboFyt=akR{03i%TNdN!< literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/profiles/pre-release.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/profiles/pre-release.png new file mode 100644 index 0000000000000000000000000000000000000000..d448e850cd3f885844d0c28da7dddf4457e25300 GIT binary patch literal 32607 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�ysnRgUBl3j#Alk_~PK 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 FzW{@NM1BAO literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/profiles/retired.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/profiles/retired.png new file mode 100644 index 0000000000000000000000000000000000000000..f89f6a29c6b61beafd8d2f729085fbf1d17b0e86 GIT binary patch literal 22003 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 V<(PMYP*6}%a#G5Yb>b!={{@S08P5O! literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/remove.gif b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/remove.gif new file mode 100644 index 0000000000000000000000000000000000000000..fc65631cad989e01ea73e3fc063ae37ff05310a0 GIT binary patch literal 607 zcmZ?wbhEHb6krfwIF`+@TAFvE3c~_3hH5W{8gGUj7P1X~jBA~QTY?zdf|z%EX|$&> zEX(9tna#B!Q+#zU_ogDAO=a9Ca*b!TGVH11pVPsxu!Hent-zdahPgcq^LiQP^)k-y zWtiW~IKPi!ejnq4KF0ZdEDQP>=l8QN=x1Fxfn(7G&ZScXSI?GOH&1%w0@>Y5HTSJE zI&A_(w|)m zdwxCo`HlF`x3%8ha(jL=_r z`TNY~@5`XSuj2o{O8)yg@$c)LAFn!oziRpWCj0N3+~04z|GumJ`@ZGx`>y|#0mXk( z&PAz-C8;S2<(VZJ3hti10Sftf3W*B7iOCF#KUo;L80r~x7#J8BKrzO^KChvkg}J`9 zt-Xzzhrgwxk6A#Rw?(3_ol``dLwM@6R%SLqF&(XWZQP-U+1fgo7#XYq DLz686 literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/rss.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/rss.png new file mode 100644 index 0000000000000000000000000000000000000000..a9850ee2cd5772d77d85b1e0cafb778713b4aa26 GIT binary patch literal 474 zcmV<00VV#4P)WFU8GbZ8({Xk{QrNlj1+3MgYKATls8GayP~Yjt8ECu(VJ zZDC_4AX9W@X>Mh5Co}I@0003UNklbs1!vJ0Jd$DrfEG7f&hT!atTnc0nYm9mAO41e1l4182;MaJh>N8 zMQj?{wKm9TZ(5cGK$c~Lrw%6Q)6of(Qk_Pn6u$5G)&~<*(JRGq+yQu=S3_!mR0`L1 zK?9;3lvFs516qR+2MIa=B_&Cca6k|on9Gvp`s#+=F5d&bwp*lBjK^d0JO>0qXwU)# z80U?f3Mh2((^mps*Xz&Q(Zz_OD31IIn$_w9;7tI`7Sng&^3=~bxqq5`15X!uDk|-l QCIA2c07*qoM6N<$g3qY74FCWD literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/update.gif b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/update.gif new file mode 100644 index 0000000000000000000000000000000000000000..b2a6d0bf63758c0374e27e1e73bc98b469b3173c GIT binary patch literal 1090 zcmZ?wbhEHb6krfwc)o;T2?N7C4(^$PVv{8lTZ~=JJSxgP5*LW=UkO8ip# z1JfsDB(vT|`02rY@K zT9Qz;IJS0~f5W!y>iLQFE5cg0hqdj>Y+e@Gu_vZ$Z&~-+r2d1s6SkL5+)_SiTlTbL zIn$0-PT5v9b$jdNjdjy^7S29dI{$RbvQrJqFE%ef*S-As+-2*gEH`vp1cYv+4BQ&1WZXyEA{wxdmI!F4=l=@wRj8w(eQF{p8{u7uN4My>{ohIeQ;0 z+Iwr|o{OvYUEZ?i?ACoJcI-d4YyXkW2QO?qbZz^gvwM!5*>e2Ofn(?P9lx;s#GN&# zUhX+@Wyi_8`%YckeCEZz)3=VCy0-D$n>}amA3u9(-}#4IFTOi*?#i+AH%^?tdhWu- z!TUdHdY$S7+|Nzj^2WoxAsM-+OTN z{>zgOe_p-+`r7@MXCD8$`S9g~2M_K%e0u-k<2#REK6>=%($k+;o_@RYp#z4e|Yx#%e}Y1@4fqf|NZ|5@Bcq~|L^U)_YXh(fAsPH`}gl3 zfBgUP)8{W=zJC4s_1m{^KYoJ1@87@w{{8#!-@pH(00Sug)741UR4_6yFj4SI%q~q* z2rfy@%u6le;&LuZO)N=GQ7F$W$xsN%NL6t6^bKH8{K>+|#qgg&hk=2C0hEatINmY* z7nShX;LyhXUr5Wx!+=G}qjuGa3mXg)SvUe-_;5ac#;u?%Ef&8{OiuQ#2wWue zRPnOI10lV_A38=$(xyZPxZhCu@qIzNs7b=Pp2AO=msj{?@6q_t?%2K{uz8k&U=XwW zawp3s0fq;RZStF^<=t5DP)R^WMT3RmhdL97qJL1@7LUY7XGP`M%+&upNbc(rR&nTA su<5X4Lzij<&&?#Z)BU0xdEtM|4<2IUlhop2I8gJ$>Dh(Z>?{n{03kf-_y7O^ literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/window-new.png b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/images/window-new.png new file mode 100644 index 0000000000000000000000000000000000000000..0e12ef954c7c215014cdf1ad81fab712f02d3d99 GIT binary patch literal 583 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 literal 0 HcmV?d00001 diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/index.html b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/index.html new file mode 100644 index 0000000..286d602 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/index.html @@ -0,0 +1,52 @@ + + + + + + + + Web-BPM Docs – About + + + + + + +

    +
    +
    +
    +
    +

    © 2023 +Micord +

    +
    +

    Built by Maven +

    +
    +
    + + diff --git a/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/js/apache-maven-fluido-1.9.min.js b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/js/apache-maven-fluido-1.9.min.js new file mode 100644 index 0000000..1324fb4 --- /dev/null +++ b/packages/ru.cg.webbpm.packages.base.resources/META-INF/components/docs/js/apache-maven-fluido-1.9.min.js @@ -0,0 +1,25 @@ +/*! + * jQuery JavaScript Library v1.11.2 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: 2014-12-17T15:27Z + */ +(function(b,a){if(typeof module==="object"&&typeof module.exports==="object"){module.exports=b.document?a(b,true):function(c){if(!c.document){throw new Error("jQuery requires a window with a document")}return a(c)}}else{a(b)}}(typeof window!=="undefined"?window:this,function(a5,av){var aP=[];var P=aP.slice;var az=aP.concat;var x=aP.push;var bU=aP.indexOf;var ac={};var y=ac.toString;var K=ac.hasOwnProperty;var D={};var ai="1.11.2",bI=function(e,i){return new bI.fn.init(e,i)},E=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,bS=/^-ms-/,aW=/-([\da-z])/gi,O=function(e,i){return i.toUpperCase()};bI.fn=bI.prototype={jquery:ai,constructor:bI,selector:"",length:0,toArray:function(){return P.call(this)},get:function(e){return e!=null?(e<0?this[e+this.length]:this[e]):P.call(this)},pushStack:function(e){var i=bI.merge(this.constructor(),e);i.prevObject=this;i.context=this.context;return i},each:function(i,e){return bI.each(this,i,e)},map:function(e){return this.pushStack(bI.map(this,function(b7,b6){return e.call(b7,b6,b7)}))},slice:function(){return this.pushStack(P.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(b7){var e=this.length,b6=+b7+(b7<0?e:0);return this.pushStack(b6>=0&&b6=0},isEmptyObject:function(i){var e;for(e in i){return false}return true},isPlainObject:function(b7){var i;if(!b7||bI.type(b7)!=="object"||b7.nodeType||bI.isWindow(b7)){return false}try{if(b7.constructor&&!K.call(b7,"constructor")&&!K.call(b7.constructor.prototype,"isPrototypeOf")){return false}}catch(b6){return false}if(D.ownLast){for(i in b7){return K.call(b7,i)}}for(i in b7){}return i===undefined||K.call(b7,i)},type:function(e){if(e==null){return e+""}return typeof e==="object"||typeof e==="function"?ac[y.call(e)]||"object":typeof e},globalEval:function(e){if(e&&bI.trim(e)){(a5.execScript||function(i){a5["eval"].call(a5,i)})(e)}},camelCase:function(e){return e.replace(bS,"ms-").replace(aW,O)},nodeName:function(i,e){return i.nodeName&&i.nodeName.toLowerCase()===e.toLowerCase()},each:function(ca,cb,b6){var b9,b7=0,b8=ca.length,e=ad(ca);if(b6){if(e){for(;b70&&(i-1) in b6}var m= +/*! + * Sizzle CSS Selector Engine v2.2.0-pre + * http://sizzlejs.com/ + * + * Copyright 2008, 2014 jQuery Foundation, Inc. and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: 2014-12-16 + */ +(function(de){var cy,dh,cn,cH,cK,ci,cW,dg,dm,cI,cX,cZ,cC,co,c8,c3,df,ce,cF,da="sizzle"+1*new Date(),cJ=de.document,di=0,c4=0,b9=cA(),c9=cA(),cG=cA(),cE=function(i,e){if(i===e){cX=true}return 0},cQ=1<<31,cO=({}).hasOwnProperty,dc=[],dd=dc.pop,cM=dc.push,b7=dc.push,cm=dc.slice,cd=function(dq,dp){var dn=0,e=dq.length;for(;dn+~]|"+cp+")"+cp+"*"),ct=new RegExp("="+cp+"*([^\\]'\"]*?)"+cp+"*\\]","g"),cS=new RegExp(ck),cU=new RegExp("^"+cL+"$"),c2={ID:new RegExp("^#("+b6+")"),CLASS:new RegExp("^\\.("+b6+")"),TAG:new RegExp("^("+b6.replace("w","w*")+")"),ATTR:new RegExp("^"+c6),PSEUDO:new RegExp("^"+ck),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+cp+"*(even|odd|(([+-]|)(\\d*)n|)"+cp+"*(?:([+-]|)"+cp+"*(\\d+)|))"+cp+"*\\)|)","i"),bool:new RegExp("^(?:"+b8+")$","i"),needsContext:new RegExp("^"+cp+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+cp+"*((?:-\\d)?\\d*)"+cp+"*\\)|)(?=[^-]|$)","i")},cc=/^(?:input|select|textarea|button)$/i,cl=/^h\d$/i,cP=/^[^{]+\{\s*\[native \w/,cR=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,c1=/[+~]/,cN=/'|\\/g,cs=new RegExp("\\\\([\\da-f]{1,6}"+cp+"?|("+cp+")|.)","ig"),c5=function(e,dp,i){var dn="0x"+dp-65536;return dn!==dn||i?dp:dn<0?String.fromCharCode(dn+65536):String.fromCharCode(dn>>10|55296,dn&1023|56320)},dl=function(){cZ()};try{b7.apply((dc=cm.call(cJ.childNodes)),cJ.childNodes);dc[cJ.childNodes.length].nodeType}catch(cD){b7={apply:dc.length?function(i,e){cM.apply(i,cm.call(e))}:function(dq,dp){var e=dq.length,dn=0;while((dq[e++]=dp[dn++])){}dq.length=e-1}}}function cw(dv,dn,dz,dB){var dA,ds,dt,dx,dy,dr,dq,e,dp,dw;if((dn?dn.ownerDocument||dn:cJ)!==cC){cZ(dn)}dn=dn||cC;dz=dz||[];dx=dn.nodeType;if(typeof dv!=="string"||!dv||dx!==1&&dx!==9&&dx!==11){return dz}if(!dB&&c8){if(dx!==11&&(dA=cR.exec(dv))){if((dt=dA[1])){if(dx===9){ds=dn.getElementById(dt);if(ds&&ds.parentNode){if(ds.id===dt){dz.push(ds);return dz}}else{return dz}}else{if(dn.ownerDocument&&(ds=dn.ownerDocument.getElementById(dt))&&cF(dn,ds)&&ds.id===dt){dz.push(ds);return dz}}}else{if(dA[2]){b7.apply(dz,dn.getElementsByTagName(dv));return dz}else{if((dt=dA[3])&&dh.getElementsByClassName){b7.apply(dz,dn.getElementsByClassName(dt));return dz}}}}if(dh.qsa&&(!c3||!c3.test(dv))){e=dq=da;dp=dn;dw=dx!==1&&dv;if(dx===1&&dn.nodeName.toLowerCase()!=="object"){dr=ci(dv);if((dq=dn.getAttribute("id"))){e=dq.replace(cN,"\\$&")}else{dn.setAttribute("id",e)}e="[id='"+e+"'] ";dy=dr.length;while(dy--){dr[dy]=e+ch(dr[dy])}dp=c1.test(dv)&&cT(dn.parentNode)||dn;dw=dr.join(",")}if(dw){try{b7.apply(dz,dp.querySelectorAll(dw));return dz}catch(du){}finally{if(!dq){dn.removeAttribute("id")}}}}}return dg(dv.replace(cr,"$1"),dn,dz,dB)}function cA(){var i=[];function e(dn,dp){if(i.push(dn+" ")>cn.cacheLength){delete e[i.shift()]}return(e[dn+" "]=dp)}return e}function cj(e){e[da]=true;return e}function cf(i){var dp=cC.createElement("div");try{return !!i(dp)}catch(dn){return false}finally{if(dp.parentNode){dp.parentNode.removeChild(dp)}dp=null}}function dj(dn,dq){var e=dn.split("|"),dp=dn.length;while(dp--){cn.attrHandle[e[dp]]=dq}}function ca(i,e){var dp=e&&i,dn=dp&&i.nodeType===1&&e.nodeType===1&&(~e.sourceIndex||cQ)-(~i.sourceIndex||cQ);if(dn){return dn}if(dp){while((dp=dp.nextSibling)){if(dp===e){return -1}}}return i?1:-1}function cx(e){return function(dn){var i=dn.nodeName.toLowerCase();return i==="input"&&dn.type===e}}function cb(e){return function(dn){var i=dn.nodeName.toLowerCase();return(i==="input"||i==="button")&&dn.type===e}}function c7(e){return cj(function(i){i=+i;return cj(function(dn,ds){var dq,dp=e([],dn.length,i),dr=dp.length;while(dr--){if(dn[(dq=dp[dr])]){dn[dq]=!(ds[dq]=dn[dq])}}})})}function cT(e){return e&&typeof e.getElementsByTagName!=="undefined"&&e}dh=cw.support={};cK=cw.isXML=function(e){var i=e&&(e.ownerDocument||e).documentElement;return i?i.nodeName!=="HTML":false};cZ=cw.setDocument=function(dn){var e,i,dp=dn?dn.ownerDocument||dn:cJ;if(dp===cC||dp.nodeType!==9||!dp.documentElement){return cC}cC=dp;co=dp.documentElement;i=dp.defaultView;if(i&&i!==i.top){if(i.addEventListener){i.addEventListener("unload",dl,false)}else{if(i.attachEvent){i.attachEvent("onunload",dl)}}}c8=!cK(dp);dh.attributes=cf(function(dq){dq.className="i";return !dq.getAttribute("className")});dh.getElementsByTagName=cf(function(dq){dq.appendChild(dp.createComment(""));return !dq.getElementsByTagName("*").length});dh.getElementsByClassName=cP.test(dp.getElementsByClassName);dh.getById=cf(function(dq){co.appendChild(dq).id=da;return !dp.getElementsByName||!dp.getElementsByName(da).length});if(dh.getById){cn.find.ID=function(ds,dr){if(typeof dr.getElementById!=="undefined"&&c8){var dq=dr.getElementById(ds);return dq&&dq.parentNode?[dq]:[]}};cn.filter.ID=function(dr){var dq=dr.replace(cs,c5);return function(ds){return ds.getAttribute("id")===dq}}}else{delete cn.find.ID;cn.filter.ID=function(dr){var dq=dr.replace(cs,c5);return function(dt){var ds=typeof dt.getAttributeNode!=="undefined"&&dt.getAttributeNode("id");return ds&&ds.value===dq}}}cn.find.TAG=dh.getElementsByTagName?function(dq,dr){if(typeof dr.getElementsByTagName!=="undefined"){return dr.getElementsByTagName(dq)}else{if(dh.qsa){return dr.querySelectorAll(dq)}}}:function(dq,du){var dv,dt=[],ds=0,dr=du.getElementsByTagName(dq);if(dq==="*"){while((dv=dr[ds++])){if(dv.nodeType===1){dt.push(dv)}}return dt}return dr};cn.find.CLASS=dh.getElementsByClassName&&function(dr,dq){if(c8){return dq.getElementsByClassName(dr)}};df=[];c3=[];if((dh.qsa=cP.test(dp.querySelectorAll))){cf(function(dq){co.appendChild(dq).innerHTML="";if(dq.querySelectorAll("[msallowcapture^='']").length){c3.push("[*^$]="+cp+"*(?:''|\"\")")}if(!dq.querySelectorAll("[selected]").length){c3.push("\\["+cp+"*(?:value|"+b8+")")}if(!dq.querySelectorAll("[id~="+da+"-]").length){c3.push("~=")}if(!dq.querySelectorAll(":checked").length){c3.push(":checked")}if(!dq.querySelectorAll("a#"+da+"+*").length){c3.push(".#.+[+~]")}});cf(function(dr){var dq=dp.createElement("input");dq.setAttribute("type","hidden");dr.appendChild(dq).setAttribute("name","D");if(dr.querySelectorAll("[name=d]").length){c3.push("name"+cp+"*[*^$|!~]?=")}if(!dr.querySelectorAll(":enabled").length){c3.push(":enabled",":disabled")}dr.querySelectorAll("*,:x");c3.push(",.*:")})}if((dh.matchesSelector=cP.test((ce=co.matches||co.webkitMatchesSelector||co.mozMatchesSelector||co.oMatchesSelector||co.msMatchesSelector)))){cf(function(dq){dh.disconnectedMatch=ce.call(dq,"div");ce.call(dq,"[s!='']:x");df.push("!=",ck)})}c3=c3.length&&new RegExp(c3.join("|"));df=df.length&&new RegExp(df.join("|"));e=cP.test(co.compareDocumentPosition);cF=e||cP.test(co.contains)?function(dr,dq){var dt=dr.nodeType===9?dr.documentElement:dr,ds=dq&&dq.parentNode;return dr===ds||!!(ds&&ds.nodeType===1&&(dt.contains?dt.contains(ds):dr.compareDocumentPosition&&dr.compareDocumentPosition(ds)&16))}:function(dr,dq){if(dq){while((dq=dq.parentNode)){if(dq===dr){return true}}}return false};cE=e?function(dr,dq){if(dr===dq){cX=true;return 0}var ds=!dr.compareDocumentPosition-!dq.compareDocumentPosition;if(ds){return ds}ds=(dr.ownerDocument||dr)===(dq.ownerDocument||dq)?dr.compareDocumentPosition(dq):1;if(ds&1||(!dh.sortDetached&&dq.compareDocumentPosition(dr)===ds)){if(dr===dp||dr.ownerDocument===cJ&&cF(cJ,dr)){return -1}if(dq===dp||dq.ownerDocument===cJ&&cF(cJ,dq)){return 1}return cI?(cd(cI,dr)-cd(cI,dq)):0}return ds&4?-1:1}:function(dr,dq){if(dr===dq){cX=true;return 0}var dx,du=0,dw=dr.parentNode,dt=dq.parentNode,ds=[dr],dv=[dq];if(!dw||!dt){return dr===dp?-1:dq===dp?1:dw?-1:dt?1:cI?(cd(cI,dr)-cd(cI,dq)):0}else{if(dw===dt){return ca(dr,dq)}}dx=dr;while((dx=dx.parentNode)){ds.unshift(dx)}dx=dq;while((dx=dx.parentNode)){dv.unshift(dx)}while(ds[du]===dv[du]){du++}return du?ca(ds[du],dv[du]):ds[du]===cJ?-1:dv[du]===cJ?1:0};return dp};cw.matches=function(i,e){return cw(i,null,null,e)};cw.matchesSelector=function(dn,dq){if((dn.ownerDocument||dn)!==cC){cZ(dn)}dq=dq.replace(ct,"='$1']");if(dh.matchesSelector&&c8&&(!df||!df.test(dq))&&(!c3||!c3.test(dq))){try{var i=ce.call(dn,dq);if(i||dh.disconnectedMatch||dn.document&&dn.document.nodeType!==11){return i}}catch(dp){}}return cw(dq,cC,null,[dn]).length>0};cw.contains=function(e,i){if((e.ownerDocument||e)!==cC){cZ(e)}return cF(e,i)};cw.attr=function(dn,e){if((dn.ownerDocument||dn)!==cC){cZ(dn)}var i=cn.attrHandle[e.toLowerCase()],dp=i&&cO.call(cn.attrHandle,e.toLowerCase())?i(dn,e,!c8):undefined;return dp!==undefined?dp:dh.attributes||!c8?dn.getAttribute(e):(dp=dn.getAttributeNode(e))&&dp.specified?dp.value:null};cw.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)};cw.uniqueSort=function(dp){var dq,dr=[],e=0,dn=0;cX=!dh.detectDuplicates;cI=!dh.sortStable&&dp.slice(0);dp.sort(cE);if(cX){while((dq=dp[dn++])){if(dq===dp[dn]){e=dr.push(dn)}}while(e--){dp.splice(dr[e],1)}}cI=null;return dp};cH=cw.getText=function(dr){var dq,dn="",dp=0,e=dr.nodeType;if(!e){while((dq=dr[dp++])){dn+=cH(dq)}}else{if(e===1||e===9||e===11){if(typeof dr.textContent==="string"){return dr.textContent}else{for(dr=dr.firstChild;dr;dr=dr.nextSibling){dn+=cH(dr)}}}else{if(e===3||e===4){return dr.nodeValue}}}return dn};cn=cw.selectors={cacheLength:50,createPseudo:cj,match:c2,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:true}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:true},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){e[1]=e[1].replace(cs,c5);e[3]=(e[3]||e[4]||e[5]||"").replace(cs,c5);if(e[2]==="~="){e[3]=" "+e[3]+" "}return e.slice(0,4)},CHILD:function(e){e[1]=e[1].toLowerCase();if(e[1].slice(0,3)==="nth"){if(!e[3]){cw.error(e[0])}e[4]=+(e[4]?e[5]+(e[6]||1):2*(e[3]==="even"||e[3]==="odd"));e[5]=+((e[7]+e[8])||e[3]==="odd")}else{if(e[3]){cw.error(e[0])}}return e},PSEUDO:function(i){var e,dn=!i[6]&&i[2];if(c2.CHILD.test(i[0])){return null}if(i[3]){i[2]=i[4]||i[5]||""}else{if(dn&&cS.test(dn)&&(e=ci(dn,true))&&(e=dn.indexOf(")",dn.length-e)-dn.length)){i[0]=i[0].slice(0,e);i[2]=dn.slice(0,e)}}return i.slice(0,3)}},filter:{TAG:function(i){var e=i.replace(cs,c5).toLowerCase();return i==="*"?function(){return true}:function(dn){return dn.nodeName&&dn.nodeName.toLowerCase()===e}},CLASS:function(e){var i=b9[e+" "];return i||(i=new RegExp("(^|"+cp+")"+e+"("+cp+"|$)"))&&b9(e,function(dn){return i.test(typeof dn.className==="string"&&dn.className||typeof dn.getAttribute!=="undefined"&&dn.getAttribute("class")||"")})},ATTR:function(dn,i,e){return function(dq){var dp=cw.attr(dq,dn);if(dp==null){return i==="!="}if(!i){return true}dp+="";return i==="="?dp===e:i==="!="?dp!==e:i==="^="?e&&dp.indexOf(e)===0:i==="*="?e&&dp.indexOf(e)>-1:i==="$="?e&&dp.slice(-e.length)===e:i==="~="?(" "+dp.replace(cu," ")+" ").indexOf(e)>-1:i==="|="?dp===e||dp.slice(0,e.length+1)===e+"-":false}},CHILD:function(i,dq,dp,dr,dn){var dt=i.slice(0,3)!=="nth",e=i.slice(-4)!=="last",ds=dq==="of-type";return dr===1&&dn===0?function(du){return !!du.parentNode}:function(dA,dy,dD){var du,dG,dB,dF,dC,dx,dz=dt!==e?"nextSibling":"previousSibling",dE=dA.parentNode,dw=ds&&dA.nodeName.toLowerCase(),dv=!dD&&!ds;if(dE){if(dt){while(dz){dB=dA;while((dB=dB[dz])){if(ds?dB.nodeName.toLowerCase()===dw:dB.nodeType===1){return false}}dx=dz=i==="only"&&!dx&&"nextSibling"}return true}dx=[e?dE.firstChild:dE.lastChild];if(e&&dv){dG=dE[da]||(dE[da]={});du=dG[i]||[];dC=du[0]===di&&du[1];dF=du[0]===di&&du[2];dB=dC&&dE.childNodes[dC];while((dB=++dC&&dB&&dB[dz]||(dF=dC=0)||dx.pop())){if(dB.nodeType===1&&++dF&&dB===dA){dG[i]=[di,dC,dF];break}}}else{if(dv&&(du=(dA[da]||(dA[da]={}))[i])&&du[0]===di){dF=du[1]}else{while((dB=++dC&&dB&&dB[dz]||(dF=dC=0)||dx.pop())){if((ds?dB.nodeName.toLowerCase()===dw:dB.nodeType===1)&&++dF){if(dv){(dB[da]||(dB[da]={}))[i]=[di,dF]}if(dB===dA){break}}}}}dF-=dn;return dF===dr||(dF%dr===0&&dF/dr>=0)}}},PSEUDO:function(dp,dn){var e,i=cn.pseudos[dp]||cn.setFilters[dp.toLowerCase()]||cw.error("unsupported pseudo: "+dp);if(i[da]){return i(dn)}if(i.length>1){e=[dp,dp,"",dn];return cn.setFilters.hasOwnProperty(dp.toLowerCase())?cj(function(ds,du){var dr,dq=i(ds,dn),dt=dq.length;while(dt--){dr=cd(ds,dq[dt]);ds[dr]=!(du[dr]=dq[dt])}}):function(dq){return i(dq,0,e)}}return i}},pseudos:{not:cj(function(e){var i=[],dn=[],dp=cW(e.replace(cr,"$1"));return dp[da]?cj(function(dr,dw,du,ds){var dv,dq=dp(dr,null,ds,[]),dt=dr.length;while(dt--){if((dv=dq[dt])){dr[dt]=!(dw[dt]=dv)}}}):function(ds,dr,dq){i[0]=ds;dp(i,null,dq,dn);i[0]=null;return !dn.pop()}}),has:cj(function(e){return function(i){return cw(e,i).length>0}}),contains:cj(function(e){e=e.replace(cs,c5);return function(i){return(i.textContent||i.innerText||cH(i)).indexOf(e)>-1}}),lang:cj(function(e){if(!cU.test(e||"")){cw.error("unsupported lang: "+e)}e=e.replace(cs,c5).toLowerCase();return function(dn){var i;do{if((i=c8?dn.lang:dn.getAttribute("xml:lang")||dn.getAttribute("lang"))){i=i.toLowerCase();return i===e||i.indexOf(e+"-")===0}}while((dn=dn.parentNode)&&dn.nodeType===1);return false}}),target:function(e){var i=de.location&&de.location.hash;return i&&i.slice(1)===e.id},root:function(e){return e===co},focus:function(e){return e===cC.activeElement&&(!cC.hasFocus||cC.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===false},disabled:function(e){return e.disabled===true},checked:function(e){var i=e.nodeName.toLowerCase();return(i==="input"&&!!e.checked)||(i==="option"&&!!e.selected)},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling){if(e.nodeType<6){return false}}return true},parent:function(e){return !cn.pseudos.empty(e)},header:function(e){return cl.test(e.nodeName)},input:function(e){return cc.test(e.nodeName)},button:function(i){var e=i.nodeName.toLowerCase();return e==="input"&&i.type==="button"||e==="button"},text:function(i){var e;return i.nodeName.toLowerCase()==="input"&&i.type==="text"&&((e=i.getAttribute("type"))==null||e.toLowerCase()==="text")},first:c7(function(){return[0]}),last:c7(function(e,i){return[i-1]}),eq:c7(function(e,dn,i){return[i<0?i+dn:i]}),even:c7(function(e,dp){var dn=0;for(;dn=0;){e.push(dn)}return e}),gt:c7(function(e,dq,dp){var dn=dp<0?dp+dq:dp;for(;++dn1?function(dr,dq,dn){var dp=e.length;while(dp--){if(!e[dp](dr,dq,dn)){return false}}return true}:e[0]}function cz(dn,dr,dq){var dp=0,e=dr.length;for(;dp-1){dC[dE]=!(dz[dE]=dw)}}}}else{dy=c0(dy===dz?dy.splice(dt,dy.length):dy);if(dr){dr(null,dz,dy,dB)}else{b7.apply(dz,dy)}}})}function db(dt){var dn,dr,dp,ds=dt.length,dw=cn.relative[dt[0].type],dx=dw||cn.relative[" "],dq=dw?1:0,du=cq(function(i){return i===dn},dx,true),dv=cq(function(i){return cd(dn,i)>-1},dx,true),e=[function(dA,dz,dy){var i=(!dw&&(dy||dz!==dm))||((dn=dz).nodeType?du(dA,dz,dy):dv(dA,dz,dy));dn=null;return i}];for(;dq1&&dk(e),dq>1&&ch(dt.slice(0,dq-1).concat({value:dt[dq-2].type===" "?"*":""})).replace(cr,"$1"),dr,dq0,dq=dp.length>0,i=function(dA,du,dz,dy,dD){var dv,dw,dB,dF=0,dx="0",dr=dA&&[],dG=[],dE=dm,dt=dA||dq&&cn.find.TAG("*",dD),ds=(di+=dE==null?1:Math.random()||0.1),dC=dt.length;if(dD){dm=du!==cC&&du}for(;dx!==dC&&(dv=dt[dx])!=null;dx++){if(dq&&dv){dw=0;while((dB=dp[dw++])){if(dB(dv,du,dz)){dy.push(dv);break}}if(dD){di=ds}}if(e){if((dv=!dB&&dv)){dF--}if(dA){dr.push(dv)}}}dF+=dx;if(e&&dx!==dF){dw=0;while((dB=dn[dw++])){dB(dr,dG,du,dz)}if(dA){if(dF>0){while(dx--){if(!(dr[dx]||dG[dx])){dG[dx]=dd.call(dy)}}}dG=c0(dG)}b7.apply(dy,dG);if(dD&&!dA&&dG.length>0&&(dF+dn.length)>1){cw.uniqueSort(dy)}}if(dD){di=ds;dm=dE}return dr};return e?cj(i):i}cW=cw.compile=function(e,dp){var dq,dn=[],ds=[],dr=cG[e+" "];if(!dr){if(!dp){dp=ci(e)}dq=dp.length;while(dq--){dr=db(dp[dq]);if(dr[da]){dn.push(dr)}else{ds.push(dr)}}dr=cG(e,cY(ds,dn));dr.selector=e}return dr};dg=cw.select=function(dp,e,dq,dt){var dr,dw,dn,dx,du,dv=typeof dp==="function"&&dp,ds=!dt&&ci((dp=dv.selector||dp));dq=dq||[];if(ds.length===1){dw=ds[0]=ds[0].slice(0);if(dw.length>2&&(dn=dw[0]).type==="ID"&&dh.getById&&e.nodeType===9&&c8&&cn.relative[dw[1].type]){e=(cn.find.ID(dn.matches[0].replace(cs,c5),e)||[])[0];if(!e){return dq}else{if(dv){e=e.parentNode}}dp=dp.slice(dw.shift().value.length)}dr=c2.needsContext.test(dp)?0:dw.length;while(dr--){dn=dw[dr];if(cn.relative[(dx=dn.type)]){break}if((du=cn.find[dx])){if((dt=du(dn.matches[0].replace(cs,c5),c1.test(dw[0].type)&&cT(e.parentNode)||e))){dw.splice(dr,1);dp=dt.length&&ch(dw);if(!dp){b7.apply(dq,dt);return dq}break}}}}(dv||cW(dp,ds))(dt,e,!c8,dq,c1.test(dp)&&cT(e.parentNode)||e);return dq};dh.sortStable=da.split("").sort(cE).join("")===da;dh.detectDuplicates=!!cX;cZ();dh.sortDetached=cf(function(e){return e.compareDocumentPosition(cC.createElement("div"))&1});if(!cf(function(e){e.innerHTML="";return e.firstChild.getAttribute("href")==="#"})){dj("type|href|height|width",function(i,e,dn){if(!dn){return i.getAttribute(e,e.toLowerCase()==="type"?1:2)}})}if(!dh.attributes||!cf(function(e){e.innerHTML="";e.firstChild.setAttribute("value","");return e.firstChild.getAttribute("value")===""})){dj("value",function(i,e,dn){if(!dn&&i.nodeName.toLowerCase()==="input"){return i.defaultValue}})}if(!cf(function(e){return e.getAttribute("disabled")==null})){dj(b8,function(i,e,dp){var dn;if(!dp){return i[e]===true?e.toLowerCase():(dn=i.getAttributeNode(e))&&dn.specified?dn.value:null}})}return cw})(a5);bI.find=m;bI.expr=m.selectors;bI.expr[":"]=bI.expr.pseudos;bI.unique=m.uniqueSort;bI.text=m.getText;bI.isXMLDoc=m.isXML;bI.contains=m.contains;var A=bI.expr.match.needsContext;var a=(/^<(\w+)\s*\/?>(?:<\/\1>|)$/);var aL=/^.[^:#\[\.,]*$/;function aR(b6,e,i){if(bI.isFunction(e)){return bI.grep(b6,function(b8,b7){return !!e.call(b8,b7,b8)!==i})}if(e.nodeType){return bI.grep(b6,function(b7){return(b7===e)!==i})}if(typeof e==="string"){if(aL.test(e)){return bI.filter(e,b6,i)}e=bI.filter(e,b6)}return bI.grep(b6,function(b7){return(bI.inArray(b7,e)>=0)!==i})}bI.filter=function(b7,e,b6){var i=e[0];if(b6){b7=":not("+b7+")"}return e.length===1&&i.nodeType===1?bI.find.matchesSelector(i,b7)?[i]:[]:bI.find.matches(b7,bI.grep(e,function(b8){return b8.nodeType===1}))};bI.fn.extend({find:function(b6){var b9,b8=[],b7=this,e=b7.length;if(typeof b6!=="string"){return this.pushStack(bI(b6).filter(function(){for(b9=0;b91?bI.unique(b8):b8);b8.selector=this.selector?this.selector+" "+b6:b6;return b8},filter:function(e){return this.pushStack(aR(this,e||[],false))},not:function(e){return this.pushStack(aR(this,e||[],true))},is:function(e){return !!aR(this,typeof e==="string"&&A.test(e)?bI(e):e||[],false).length}});var z,n=a5.document,bt=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,bV=bI.fn.init=function(e,b6){var i,b7;if(!e){return this}if(typeof e==="string"){if(e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3){i=[null,e,null]}else{i=bt.exec(e)}if(i&&(i[1]||!b6)){if(i[1]){b6=b6 instanceof bI?b6[0]:b6;bI.merge(this,bI.parseHTML(i[1],b6&&b6.nodeType?b6.ownerDocument||b6:n,true));if(a.test(i[1])&&bI.isPlainObject(b6)){for(i in b6){if(bI.isFunction(this[i])){this[i](b6[i])}else{this.attr(i,b6[i])}}}return this}else{b7=n.getElementById(i[2]);if(b7&&b7.parentNode){if(b7.id!==i[2]){return z.find(e)}this.length=1;this[0]=b7}this.context=n;this.selector=e;return this}}else{if(!b6||b6.jquery){return(b6||z).find(e)}else{return this.constructor(b6).find(e)}}}else{if(e.nodeType){this.context=this[0]=e;this.length=1;return this}else{if(bI.isFunction(e)){return typeof z.ready!=="undefined"?z.ready(e):e(bI)}}}if(e.selector!==undefined){this.selector=e.selector;this.context=e.context}return bI.makeArray(e,this)};bV.prototype=bI.fn;z=bI(n);var bv=/^(?:parents|prev(?:Until|All))/,bz={children:true,contents:true,next:true,prev:true};bI.extend({dir:function(b6,i,b8){var e=[],b7=b6[i];while(b7&&b7.nodeType!==9&&(b8===undefined||b7.nodeType!==1||!bI(b7).is(b8))){if(b7.nodeType===1){e.push(b7)}b7=b7[i]}return e},sibling:function(b6,i){var e=[];for(;b6;b6=b6.nextSibling){if(b6.nodeType===1&&b6!==i){e.push(b6)}}return e}});bI.fn.extend({has:function(b8){var b7,b6=bI(b8,this),e=b6.length;return this.filter(function(){for(b7=0;b7-1:ca.nodeType===1&&bI.find.matchesSelector(ca,b9))){e.push(ca);break}}}return this.pushStack(e.length>1?bI.unique(e):e)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.first().prevAll().length:-1}if(typeof e==="string"){return bI.inArray(this[0],bI(e))}return bI.inArray(e.jquery?e[0]:e,this)},add:function(e,i){return this.pushStack(bI.unique(bI.merge(this.get(),bI(e,i))))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}});function aY(i,e){do{i=i[e]}while(i&&i.nodeType!==1);return i}bI.each({parent:function(i){var e=i.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return bI.dir(e,"parentNode")},parentsUntil:function(b6,e,b7){return bI.dir(b6,"parentNode",b7)},next:function(e){return aY(e,"nextSibling")},prev:function(e){return aY(e,"previousSibling")},nextAll:function(e){return bI.dir(e,"nextSibling")},prevAll:function(e){return bI.dir(e,"previousSibling")},nextUntil:function(b6,e,b7){return bI.dir(b6,"nextSibling",b7)},prevUntil:function(b6,e,b7){return bI.dir(b6,"previousSibling",b7)},siblings:function(e){return bI.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return bI.sibling(e.firstChild)},contents:function(e){return bI.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:bI.merge([],e.childNodes)}},function(e,i){bI.fn[e]=function(b8,b6){var b7=bI.map(this,i,b8);if(e.slice(-5)!=="Until"){b6=b8}if(b6&&typeof b6==="string"){b7=bI.filter(b6,b7)}if(this.length>1){if(!bz[e]){b7=bI.unique(b7)}if(bv.test(e)){b7=b7.reverse()}}return this.pushStack(b7)}});var aF=(/\S+/g);var b2={};function af(i){var e=b2[i]={};bI.each(i.match(aF)||[],function(b7,b6){e[b6]=true});return e}bI.Callbacks=function(ce){ce=typeof ce==="string"?(b2[ce]||af(ce)):bI.extend({},ce);var b8,b7,e,b9,ca,b6,cb=[],cc=!ce.once&&[],i=function(cf){b7=ce.memory&&cf;e=true;ca=b6||0;b6=0;b9=cb.length;b8=true;for(;cb&&ca-1){cb.splice(cg,1);if(b8){if(cg<=b9){b9--}if(cg<=ca){ca--}}}})}return this},has:function(cf){return cf?bI.inArray(cf,cb)>-1:!!(cb&&cb.length)},empty:function(){cb=[];b9=0;return this},disable:function(){cb=cc=b7=undefined;return this},disabled:function(){return !cb},lock:function(){cc=undefined;if(!b7){cd.disable()}return this},locked:function(){return !cc},fireWith:function(cg,cf){if(cb&&(!e||cc)){cf=cf||[];cf=[cg,cf.slice?cf.slice():cf];if(b8){cc.push(cf)}else{i(cf)}}return this},fire:function(){cd.fireWith(this,arguments);return this},fired:function(){return !!e}};return cd};bI.extend({Deferred:function(b6){var i=[["resolve","done",bI.Callbacks("once memory"),"resolved"],["reject","fail",bI.Callbacks("once memory"),"rejected"],["notify","progress",bI.Callbacks("memory")]],b7="pending",b8={state:function(){return b7},always:function(){e.done(arguments).fail(arguments);return this},then:function(){var b9=arguments;return bI.Deferred(function(ca){bI.each(i,function(cc,cb){var cd=bI.isFunction(b9[cc])&&b9[cc];e[cb[1]](function(){var ce=cd&&cd.apply(this,arguments);if(ce&&bI.isFunction(ce.promise)){ce.promise().done(ca.resolve).fail(ca.reject).progress(ca.notify)}else{ca[cb[0]+"With"](this===b8?ca.promise():this,cd?[ce]:arguments)}})});b9=null}).promise()},promise:function(b9){return b9!=null?bI.extend(b9,b8):b8}},e={};b8.pipe=b8.then;bI.each(i,function(ca,b9){var cc=b9[2],cb=b9[3];b8[b9[1]]=cc.add;if(cb){cc.add(function(){b7=cb},i[ca^1][2].disable,i[2][2].lock)}e[b9[0]]=function(){e[b9[0]+"With"](this===e?b8:this,arguments);return this};e[b9[0]+"With"]=cc.fireWith});b8.promise(e);if(b6){b6.call(e,e)}return e},when:function(b9){var b7=0,cb=P.call(arguments),e=cb.length,b6=e!==1||(b9&&bI.isFunction(b9.promise))?e:0,ce=b6===1?b9:bI.Deferred(),b8=function(cg,ch,cf){return function(i){ch[cg]=this;cf[cg]=arguments.length>1?P.call(arguments):i;if(cf===cd){ce.notifyWith(ch,cf)}else{if(!(--b6)){ce.resolveWith(ch,cf)}}}},cd,ca,cc;if(e>1){cd=new Array(e);ca=new Array(e);cc=new Array(e);for(;b70){return}ak.resolveWith(n,[bI]);if(bI.fn.triggerHandler){bI(n).triggerHandler("ready");bI(n).off("ready")}}});function bm(){if(n.addEventListener){n.removeEventListener("DOMContentLoaded",bZ,false);a5.removeEventListener("load",bZ,false)}else{n.detachEvent("onreadystatechange",bZ);a5.detachEvent("onload",bZ)}}function bZ(){if(n.addEventListener||event.type==="load"||n.readyState==="complete"){bm();bI.ready()}}bI.ready.promise=function(b8){if(!ak){ak=bI.Deferred();if(n.readyState==="complete"){setTimeout(bI.ready)}else{if(n.addEventListener){n.addEventListener("DOMContentLoaded",bZ,false);a5.addEventListener("load",bZ,false)}else{n.attachEvent("onreadystatechange",bZ);a5.attachEvent("onload",bZ);var b7=false;try{b7=a5.frameElement==null&&n.documentElement}catch(b6){}if(b7&&b7.doScroll){(function i(){if(!bI.isReady){try{b7.doScroll("left")}catch(b9){return setTimeout(i,50)}bm();bI.ready()}})()}}}}return ak.promise(b8)};var aC=typeof undefined;var bh;for(bh in bI(D)){break}D.ownLast=bh!=="0";D.inlineBlockNeedsLayout=false;bI(function(){var b6,b7,e,i;e=n.getElementsByTagName("body")[0];if(!e||!e.style){return}b7=n.createElement("div");i=n.createElement("div");i.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px";e.appendChild(i).appendChild(b7);if(typeof b7.style.zoom!==aC){b7.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1";D.inlineBlockNeedsLayout=b6=b7.offsetWidth===3;if(b6){e.style.zoom=1}}e.removeChild(i)});(function(){var b6=n.createElement("div");if(D.deleteExpando==null){D.deleteExpando=true;try{delete b6.test}catch(i){D.deleteExpando=false}}b6=null})();bI.acceptData=function(b6){var i=bI.noData[(b6.nodeName+" ").toLowerCase()],e=+b6.nodeType||1;return e!==1&&e!==9?false:!i||i!==true&&b6.getAttribute("classid")===i};var by=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,aQ=/([A-Z])/g;function bA(b7,b6,b8){if(b8===undefined&&b7.nodeType===1){var i="data-"+b6.replace(aQ,"-$1").toLowerCase();b8=b7.getAttribute(i);if(typeof b8==="string"){try{b8=b8==="true"?true:b8==="false"?false:b8==="null"?null:+b8+""===b8?+b8:by.test(b8)?bI.parseJSON(b8):b8}catch(b9){}bI.data(b7,b6,b8)}else{b8=undefined}}return b8}function Q(i){var e;for(e in i){if(e==="data"&&bI.isEmptyObject(i[e])){continue}if(e!=="toJSON"){return false}}return true}function bc(b7,i,b9,b8){if(!bI.acceptData(b7)){return}var cb,ca,cc=bI.expando,cd=b7.nodeType,e=cd?bI.cache:b7,b6=cd?b7[cc]:b7[cc]&&cc;if((!b6||!e[b6]||(!b8&&!e[b6].data))&&b9===undefined&&typeof i==="string"){return}if(!b6){if(cd){b6=b7[cc]=aP.pop()||bI.guid++}else{b6=cc}}if(!e[b6]){e[b6]=cd?{}:{toJSON:bI.noop}}if(typeof i==="object"||typeof i==="function"){if(b8){e[b6]=bI.extend(e[b6],i)}else{e[b6].data=bI.extend(e[b6].data,i)}}ca=e[b6];if(!b8){if(!ca.data){ca.data={}}ca=ca.data}if(b9!==undefined){ca[bI.camelCase(i)]=b9}if(typeof i==="string"){cb=ca[i];if(cb==null){cb=ca[bI.camelCase(i)]}}else{cb=ca}return cb}function ab(b9,b7,e){if(!bI.acceptData(b9)){return}var cb,b8,ca=b9.nodeType,b6=ca?bI.cache:b9,cc=ca?b9[bI.expando]:bI.expando;if(!b6[cc]){return}if(b7){cb=e?b6[cc]:b6[cc].data;if(cb){if(!bI.isArray(b7)){if(b7 in cb){b7=[b7]}else{b7=bI.camelCase(b7);if(b7 in cb){b7=[b7]}else{b7=b7.split(" ")}}}else{b7=b7.concat(bI.map(b7,bI.camelCase))}b8=b7.length;while(b8--){delete cb[b7[b8]]}if(e?!Q(cb):!bI.isEmptyObject(cb)){return}}}if(!e){delete b6[cc].data;if(!Q(b6[cc])){return}}if(ca){bI.cleanData([b9],true)}else{if(D.deleteExpando||b6!=b6.window){delete b6[cc]}else{b6[cc]=null}}}bI.extend({cache:{},noData:{"applet ":true,"embed ":true,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){e=e.nodeType?bI.cache[e[bI.expando]]:e[bI.expando];return !!e&&!Q(e)},data:function(i,e,b6){return bc(i,e,b6)},removeData:function(i,e){return ab(i,e)},_data:function(i,e,b6){return bc(i,e,b6,true)},_removeData:function(i,e){return ab(i,e,true)}});bI.fn.extend({data:function(b8,cb){var b7,b6,ca,b9=this[0],e=b9&&b9.attributes;if(b8===undefined){if(this.length){ca=bI.data(b9);if(b9.nodeType===1&&!bI._data(b9,"parsedAttrs")){b7=e.length;while(b7--){if(e[b7]){b6=e[b7].name;if(b6.indexOf("data-")===0){b6=bI.camelCase(b6.slice(5));bA(b9,b6,ca[b6])}}}bI._data(b9,"parsedAttrs",true)}}return ca}if(typeof b8==="object"){return this.each(function(){bI.data(this,b8)})}return arguments.length>1?this.each(function(){bI.data(this,b8,cb)}):b9?bA(b9,b8,bI.data(b9,b8)):undefined},removeData:function(e){return this.each(function(){bI.removeData(this,e)})}});bI.extend({queue:function(b6,i,b7){var e;if(b6){i=(i||"fx")+"queue";e=bI._data(b6,i);if(b7){if(!e||bI.isArray(b7)){e=bI._data(b6,i,bI.makeArray(b7))}else{e.push(b7)}}return e||[]}},dequeue:function(b9,b8){b8=b8||"fx";var i=bI.queue(b9,b8),ca=i.length,b7=i.shift(),e=bI._queueHooks(b9,b8),b6=function(){bI.dequeue(b9,b8)};if(b7==="inprogress"){b7=i.shift();ca--}if(b7){if(b8==="fx"){i.unshift("inprogress")}delete e.stop;b7.call(b9,b6,e)}if(!ca&&e){e.empty.fire()}},_queueHooks:function(b6,i){var e=i+"queueHooks";return bI._data(b6,e)||bI._data(b6,e,{empty:bI.Callbacks("once memory").add(function(){bI._removeData(b6,i+"queue");bI._removeData(b6,e)})})}});bI.fn.extend({queue:function(e,i){var b6=2;if(typeof e!=="string"){i=e;e="fx";b6--}if(arguments.length
    a";D.leadingWhitespace=b8.firstChild.nodeType===3;D.tbody=!b8.getElementsByTagName("tbody").length;D.htmlSerialize=!!b8.getElementsByTagName("link").length;D.html5Clone=n.createElement("nav").cloneNode(true).outerHTML!=="<:nav>";i.type="checkbox";i.checked=true;b6.appendChild(i);D.appendChecked=i.checked;b8.innerHTML="";D.noCloneChecked=!!b8.cloneNode(true).lastChild.defaultValue;b6.appendChild(b8);b8.innerHTML="";D.checkClone=b8.cloneNode(true).cloneNode(true).lastChild.checked;D.noCloneEvent=true;if(b8.attachEvent){b8.attachEvent("onclick",function(){D.noCloneEvent=false});b8.cloneNode(true).click()}if(D.deleteExpando==null){D.deleteExpando=true;try{delete b8.test}catch(b7){D.deleteExpando=false}}})();(function(){var b6,e,b7=n.createElement("div");for(b6 in {submit:true,change:true,focusin:true}){e="on"+b6;if(!(D[b6+"Bubbles"]=e in a5)){b7.setAttribute(e,"t");D[b6+"Bubbles"]=b7.attributes[e].expando===false}}b7=null})();var bG=/^(?:input|select|textarea)$/i,a6=/^key/,bM=/^(?:mouse|pointer|contextmenu)|click/,bC=/^(?:focusinfocus|focusoutblur)$/,bx=/^([^.]*)(?:\.(.+)|)$/;function U(){return true}function Z(){return false}function am(){try{return n.activeElement}catch(e){}}bI.event={global:{},add:function(b8,cd,ci,ca,b9){var cb,cj,ck,b6,cf,cc,ch,b7,cg,e,i,ce=bI._data(b8);if(!ce){return}if(ci.handler){b6=ci;ci=b6.handler;b9=b6.selector}if(!ci.guid){ci.guid=bI.guid++}if(!(cj=ce.events)){cj=ce.events={}}if(!(cc=ce.handle)){cc=ce.handle=function(cl){return typeof bI!==aC&&(!cl||bI.event.triggered!==cl.type)?bI.event.dispatch.apply(cc.elem,arguments):undefined};cc.elem=b8}cd=(cd||"").match(aF)||[""];ck=cd.length;while(ck--){cb=bx.exec(cd[ck])||[];cg=i=cb[1];e=(cb[2]||"").split(".").sort();if(!cg){continue}cf=bI.event.special[cg]||{};cg=(b9?cf.delegateType:cf.bindType)||cg;cf=bI.event.special[cg]||{};ch=bI.extend({type:cg,origType:i,data:ca,handler:ci,guid:ci.guid,selector:b9,needsContext:b9&&bI.expr.match.needsContext.test(b9),namespace:e.join(".")},b6);if(!(b7=cj[cg])){b7=cj[cg]=[];b7.delegateCount=0;if(!cf.setup||cf.setup.call(b8,ca,e,cc)===false){if(b8.addEventListener){b8.addEventListener(cg,cc,false)}else{if(b8.attachEvent){b8.attachEvent("on"+cg,cc)}}}}if(cf.add){cf.add.call(b8,ch);if(!ch.handler.guid){ch.handler.guid=ci.guid}}if(b9){b7.splice(b7.delegateCount++,0,ch)}else{b7.push(ch)}bI.event.global[cg]=true}b8=null},remove:function(b7,cd,ck,b8,cc){var ca,ch,cb,b9,cj,ci,cf,b6,cg,e,i,ce=bI.hasData(b7)&&bI._data(b7);if(!ce||!(ci=ce.events)){return}cd=(cd||"").match(aF)||[""];cj=cd.length;while(cj--){cb=bx.exec(cd[cj])||[];cg=i=cb[1];e=(cb[2]||"").split(".").sort();if(!cg){for(cg in ci){bI.event.remove(b7,cg+cd[cj],ck,b8,true)}continue}cf=bI.event.special[cg]||{};cg=(b8?cf.delegateType:cf.bindType)||cg;b6=ci[cg]||[];cb=cb[2]&&new RegExp("(^|\\.)"+e.join("\\.(?:.*\\.|)")+"(\\.|$)");b9=ca=b6.length;while(ca--){ch=b6[ca];if((cc||i===ch.origType)&&(!ck||ck.guid===ch.guid)&&(!cb||cb.test(ch.namespace))&&(!b8||b8===ch.selector||b8==="**"&&ch.selector)){b6.splice(ca,1);if(ch.selector){b6.delegateCount--}if(cf.remove){cf.remove.call(b7,ch)}}}if(b9&&!b6.length){if(!cf.teardown||cf.teardown.call(b7,e,ce.handle)===false){bI.removeEvent(b7,cg,ce.handle)}delete ci[cg]}}if(bI.isEmptyObject(ci)){delete ce.handle;bI._removeData(b7,"events")}},trigger:function(b6,cd,b9,ck){var ce,b8,ci,cj,cg,cc,cb,ca=[b9||n],ch=K.call(b6,"type")?b6.type:b6,b7=K.call(b6,"namespace")?b6.namespace.split("."):[];ci=cc=b9=b9||n;if(b9.nodeType===3||b9.nodeType===8){return}if(bC.test(ch+bI.event.triggered)){return}if(ch.indexOf(".")>=0){b7=ch.split(".");ch=b7.shift();b7.sort()}b8=ch.indexOf(":")<0&&"on"+ch;b6=b6[bI.expando]?b6:new bI.Event(ch,typeof b6==="object"&&b6);b6.isTrigger=ck?2:3;b6.namespace=b7.join(".");b6.namespace_re=b6.namespace?new RegExp("(^|\\.)"+b7.join("\\.(?:.*\\.|)")+"(\\.|$)"):null;b6.result=undefined;if(!b6.target){b6.target=b9}cd=cd==null?[b6]:bI.makeArray(cd,[b6]);cg=bI.event.special[ch]||{};if(!ck&&cg.trigger&&cg.trigger.apply(b9,cd)===false){return}if(!ck&&!cg.noBubble&&!bI.isWindow(b9)){cj=cg.delegateType||ch;if(!bC.test(cj+ch)){ci=ci.parentNode}for(;ci;ci=ci.parentNode){ca.push(ci);cc=ci}if(cc===(b9.ownerDocument||n)){ca.push(cc.defaultView||cc.parentWindow||a5)}}cb=0;while((ci=ca[cb++])&&!b6.isPropagationStopped()){b6.type=cb>1?cj:cg.bindType||ch;ce=(bI._data(ci,"events")||{})[b6.type]&&bI._data(ci,"handle");if(ce){ce.apply(ci,cd)}ce=b8&&ci[b8];if(ce&&ce.apply&&bI.acceptData(ci)){b6.result=ce.apply(ci,cd);if(b6.result===false){b6.preventDefault()}}}b6.type=ch;if(!ck&&!b6.isDefaultPrevented()){if((!cg._default||cg._default.apply(ca.pop(),cd)===false)&&bI.acceptData(b9)){if(b8&&b9[ch]&&!bI.isWindow(b9)){cc=b9[b8];if(cc){b9[b8]=null}bI.event.triggered=ch;try{b9[ch]()}catch(cf){}bI.event.triggered=undefined;if(cc){b9[b8]=cc}}}}return b6.result},dispatch:function(e){e=bI.event.fix(e);var b9,ca,ce,b6,b8,cd=[],cc=P.call(arguments),b7=(bI._data(this,"events")||{})[e.type]||[],cb=bI.event.special[e.type]||{};cc[0]=e;e.delegateTarget=this;if(cb.preDispatch&&cb.preDispatch.call(this,e)===false){return}cd=bI.event.handlers.call(this,e,b7);b9=0;while((b6=cd[b9++])&&!e.isPropagationStopped()){e.currentTarget=b6.elem;b8=0;while((ce=b6.handlers[b8++])&&!e.isImmediatePropagationStopped()){if(!e.namespace_re||e.namespace_re.test(ce.namespace)){e.handleObj=ce;e.data=ce.data;ca=((bI.event.special[ce.origType]||{}).handle||ce.handler).apply(b6.elem,cc);if(ca!==undefined){if((e.result=ca)===false){e.preventDefault();e.stopPropagation()}}}}}if(cb.postDispatch){cb.postDispatch.call(this,e)}return e.result},handlers:function(e,b7){var b6,cc,ca,b9,cb=[],b8=b7.delegateCount,cd=e.target;if(b8&&cd.nodeType&&(!e.button||e.type!=="click")){for(;cd!=this;cd=cd.parentNode||this){if(cd.nodeType===1&&(cd.disabled!==true||e.type!=="click")){ca=[];for(b9=0;b9=0:bI.find(b6,this,null,[cd]).length}if(ca[b6]){ca.push(cc)}}if(ca.length){cb.push({elem:cd,handlers:ca})}}}}if(b8]","i"),b5=/^\s+/,aH=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,o=/<([\w:]+)/,b0=/\s*$/g,W={option:[1,""],legend:[1,"
    ","
    "],area:[1,"",""],param:[1,"",""],thead:[1,"","
    "],tr:[2,"","
    "],col:[2,"","
    "],td:[3,"","
    "],_default:D.htmlSerialize?[0,"",""]:[1,"X
    ","
    "]},aT=B(n),k=aT.appendChild(n.createElement("div"));W.optgroup=W.option;W.tbody=W.tfoot=W.colgroup=W.caption=W.thead;W.th=W.td;function l(b8,e){var b6,b9,b7=0,ca=typeof b8.getElementsByTagName!==aC?b8.getElementsByTagName(e||"*"):typeof b8.querySelectorAll!==aC?b8.querySelectorAll(e||"*"):undefined;if(!ca){for(ca=[],b6=b8.childNodes||b8;(b9=b6[b7])!=null;b7++){if(!e||bI.nodeName(b9,e)){ca.push(b9)}else{bI.merge(ca,l(b9,e))}}}return e===undefined||e&&bI.nodeName(b8,e)?bI.merge([b8],ca):ca}function bY(e){if(aM.test(e.type)){e.defaultChecked=e.checked}}function a3(i,e){return bI.nodeName(i,"table")&&bI.nodeName(e.nodeType!==11?e:e.firstChild,"tr")?i.getElementsByTagName("tbody")[0]||i.appendChild(i.ownerDocument.createElement("tbody")):i}function u(e){e.type=(bI.find.attr(e,"type")!==null)+"/"+e.type;return e}function bf(i){var e=ar.exec(i.type);if(e){i.type=e[1]}else{i.removeAttribute("type")}return i}function bu(e,b7){var b8,b6=0;for(;(b8=e[b6])!=null;b6++){bI._data(b8,"globalEval",!b7||bI._data(b7[b6],"globalEval"))}}function at(cc,b6){if(b6.nodeType!==1||!bI.hasData(cc)){return}var b9,b8,e,cb=bI._data(cc),ca=bI._data(b6,cb),b7=cb.events;if(b7){delete ca.handle;ca.events={};for(b9 in b7){for(b8=0,e=b7[b9].length;b8")){cd=b6.cloneNode(true)}else{k.innerHTML=b6.outerHTML;k.removeChild(cd=k.firstChild)}if((!D.noCloneEvent||!D.noCloneChecked)&&(b6.nodeType===1||b6.nodeType===11)&&!bI.isXMLDoc(b6)){ca=l(cd);cb=l(b6);for(b9=0;(b7=cb[b9])!=null;++b9){if(ca[b9]){T(b7,ca[b9])}}}if(b8){if(e){cb=cb||l(b6);ca=ca||l(cd);for(b9=0;(b7=cb[b9])!=null;b9++){at(b7,ca[b9])}}else{at(b6,cd)}}ca=l(cd,"script");if(ca.length>0){bu(ca,!cc&&l(b6,"script"))}ca=cb=b7=null;return cd},buildFragment:function(b6,b8,cd,ci){var ce,ca,cc,ch,cj,cg,b7,cb=b6.length,b9=B(b8),e=[],cf=0;for(;cf")+b7[2];ce=b7[0];while(ce--){ch=ch.lastChild}if(!D.leadingWhitespace&&b5.test(ca)){e.push(b8.createTextNode(b5.exec(ca)[0]))}if(!D.tbody){ca=cj==="table"&&!b0.test(ca)?ch.firstChild:b7[1]===""&&!b0.test(ca)?ch:0;ce=ca&&ca.childNodes.length;while(ce--){if(bI.nodeName((cg=ca.childNodes[ce]),"tbody")&&!cg.childNodes.length){ca.removeChild(cg)}}}bI.merge(e,ch.childNodes);ch.textContent="";while(ch.firstChild){ch.removeChild(ch.firstChild)}ch=b9.lastChild}}}}if(ch){b9.removeChild(ch)}if(!D.appendChecked){bI.grep(l(e,"input"),bY)}cf=0;while((ca=e[cf++])){if(ci&&bI.inArray(ca,ci)!==-1){continue}cc=bI.contains(ca.ownerDocument,ca);ch=l(b9.appendChild(ca),"script");if(cc){bu(ch)}if(cd){ce=0;while((ca=ch[ce++])){if(bB.test(ca.type||"")){cd.push(ca)}}}}ch=null;return b9},cleanData:function(b6,ce){var b8,cd,b7,b9,ca=0,cf=bI.expando,e=bI.cache,cb=D.deleteExpando,cc=bI.event.special;for(;(b8=b6[ca])!=null;ca++){if(ce||bI.acceptData(b8)){b7=b8[cf];b9=b7&&e[b7];if(b9){if(b9.events){for(cd in b9.events){if(cc[cd]){bI.event.remove(b8,cd)}else{bI.removeEvent(b8,cd,b9.handle)}}}if(e[b7]){delete e[b7];if(cb){delete b8[cf]}else{if(typeof b8.removeAttribute!==aC){b8.removeAttribute(cf)}else{b8[cf]=null}}aP.push(b7)}}}}}});bI.fn.extend({text:function(e){return aB(this,function(i){return i===undefined?bI.text(this):this.empty().append((this[0]&&this[0].ownerDocument||n).createTextNode(i))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var i=a3(this,e);i.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var i=a3(this,e);i.insertBefore(e,i.firstChild)}})},before:function(){return this.domManip(arguments,function(e){if(this.parentNode){this.parentNode.insertBefore(e,this)}})},after:function(){return this.domManip(arguments,function(e){if(this.parentNode){this.parentNode.insertBefore(e,this.nextSibling)}})},remove:function(e,b9){var b8,b6=e?bI.filter(e,this):this,b7=0;for(;(b8=b6[b7])!=null;b7++){if(!b9&&b8.nodeType===1){bI.cleanData(l(b8))}if(b8.parentNode){if(b9&&bI.contains(b8.ownerDocument,b8)){bu(l(b8,"script"))}b8.parentNode.removeChild(b8)}}return this},empty:function(){var b6,e=0;for(;(b6=this[e])!=null;e++){if(b6.nodeType===1){bI.cleanData(l(b6,false))}while(b6.firstChild){b6.removeChild(b6.firstChild)}if(b6.options&&bI.nodeName(b6,"select")){b6.options.length=0}}return this},clone:function(i,e){i=i==null?false:i;e=e==null?i:e;return this.map(function(){return bI.clone(this,i,e)})},html:function(e){return aB(this,function(b9){var b8=this[0]||{},b7=0,b6=this.length;if(b9===undefined){return b8.nodeType===1?b8.innerHTML.replace(aD,""):undefined}if(typeof b9==="string"&&!an.test(b9)&&(D.htmlSerialize||!M.test(b9))&&(D.leadingWhitespace||!b5.test(b9))&&!W[(o.exec(b9)||["",""])[1].toLowerCase()]){b9=b9.replace(aH,"<$1>");try{for(;b71&&typeof ce==="string"&&!D.checkClone&&bW.test(ce))){return this.each(function(cj){var i=cf.eq(cj);if(b6){cd[0]=ce.call(this,cj,i.html())}i.domManip(cd,ci)})}if(b8){cc=bI.buildFragment(cd,this[0].ownerDocument,false,this);cb=cc.firstChild;if(cc.childNodes.length===1){cc=cb}if(cb){b9=bI.map(l(cc,"script"),u);e=b9.length;for(;ca")).appendTo(i.documentElement);i=(aI[0].contentWindow||aI[0].contentDocument).document;i.write();i.close();e=a4(b6,i);aI.detach()}bl[b6]=e}return e}(function(){var e;D.shrinkWrapBlocks=function(){if(e!=null){return e}e=false;var b7,i,b6;i=n.getElementsByTagName("body")[0];if(!i||!i.style){return}b7=n.createElement("div");b6=n.createElement("div");b6.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px";i.appendChild(b6).appendChild(b7);if(typeof b7.style.zoom!==aC){b7.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1";b7.appendChild(n.createElement("div")).style.width="5px";e=b7.offsetWidth!==3}i.removeChild(b6);return e}})();var aZ=(/^margin/);var Y=new RegExp("^("+aE+")(?!px)[a-z%]+$","i");var bq,G,bo=/^(top|right|bottom|left)$/;if(a5.getComputedStyle){bq=function(e){if(e.ownerDocument.defaultView.opener){return e.ownerDocument.defaultView.getComputedStyle(e,null)}return a5.getComputedStyle(e,null)};G=function(cb,i,ca){var b8,b7,b9,e,b6=cb.style;ca=ca||bq(cb);e=ca?ca.getPropertyValue(i)||ca[i]:undefined;if(ca){if(e===""&&!bI.contains(cb.ownerDocument,cb)){e=bI.style(cb,i)}if(Y.test(e)&&aZ.test(i)){b8=b6.width;b7=b6.minWidth;b9=b6.maxWidth;b6.minWidth=b6.maxWidth=b6.width=e;e=ca.width;b6.width=b8;b6.minWidth=b7;b6.maxWidth=b9}}return e===undefined?e:e+""}}else{if(n.documentElement.currentStyle){bq=function(e){return e.currentStyle};G=function(ca,b7,b9){var cb,i,e,b6,b8=ca.style;b9=b9||bq(ca);b6=b9?b9[b7]:undefined;if(b6==null&&b8&&b8[b7]){b6=b8[b7]}if(Y.test(b6)&&!bo.test(b7)){cb=b8.left;i=ca.runtimeStyle;e=i&&i.left;if(e){i.left=ca.currentStyle.left}b8.left=b7==="fontSize"?"1em":b6;b6=b8.pixelLeft+"px";b8.left=cb;if(e){i.left=e}}return b6===undefined?b6:b6+""||"auto"}}}function a7(e,i){return{get:function(){var b6=e();if(b6==null){return}if(b6){delete this.get;return}return(this.get=i).apply(this,arguments)}}}(function(){var cb,b9,b7,ca,b6,b8,i;cb=n.createElement("div");cb.innerHTML="
    a";b7=cb.getElementsByTagName("a")[0];b9=b7&&b7.style;if(!b9){return}b9.cssText="float:left;opacity:.5";D.opacity=b9.opacity==="0.5";D.cssFloat=!!b9.cssFloat;cb.style.backgroundClip="content-box";cb.cloneNode(true).style.backgroundClip="";D.clearCloneStyle=cb.style.backgroundClip==="content-box";D.boxSizing=b9.boxSizing===""||b9.MozBoxSizing===""||b9.WebkitBoxSizing==="";bI.extend(D,{reliableHiddenOffsets:function(){if(b8==null){e()}return b8},boxSizingReliable:function(){if(b6==null){e()}return b6},pixelPosition:function(){if(ca==null){e()}return ca},reliableMarginRight:function(){if(i==null){e()}return i}});function e(){var cf,cc,cd,ce;cc=n.getElementsByTagName("body")[0];if(!cc||!cc.style){return}cf=n.createElement("div");cd=n.createElement("div");cd.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px";cc.appendChild(cd).appendChild(cf);cf.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute";ca=b6=false;i=true;if(a5.getComputedStyle){ca=(a5.getComputedStyle(cf,null)||{}).top!=="1%";b6=(a5.getComputedStyle(cf,null)||{width:"4px"}).width==="4px";ce=cf.appendChild(n.createElement("div"));ce.style.cssText=cf.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0";ce.style.marginRight=ce.style.width="0";cf.style.width="1px";i=!parseFloat((a5.getComputedStyle(ce,null)||{}).marginRight);cf.removeChild(ce)}cf.innerHTML="
    t
    ";ce=cf.getElementsByTagName("td");ce[0].style.cssText="margin:0;border:0;padding:0;display:none";b8=ce[0].offsetHeight===0;if(b8){ce[0].style.display="";ce[1].style.display="none";b8=ce[0].offsetHeight===0}cc.removeChild(cd)}})();bI.swap=function(b9,b8,ca,b7){var b6,i,e={};for(i in b8){e[i]=b9.style[i];b9.style[i]=b8[i]}b6=ca.apply(b9,b7||[]);for(i in b8){b9.style[i]=e[i]}return b6};var bj=/alpha\([^)]*\)/i,aU=/opacity\s*=\s*([^)]*)/,H=/^(none|table(?!-c[ea]).+)/,bb=new RegExp("^("+aE+")(.*)$","i"),V=new RegExp("^([+-])=("+aE+")","i"),be={position:"absolute",visibility:"hidden",display:"block"},bD={letterSpacing:"0",fontWeight:"400"},aw=["Webkit","O","Moz","ms"];function c(b8,b6){if(b6 in b8){return b6}var b9=b6.charAt(0).toUpperCase()+b6.slice(1),e=b6,b7=aw.length;while(b7--){b6=aw[b7]+b9;if(b6 in b8){return b6}}return e}function s(ca,e){var cb,b8,b9,i=[],b6=0,b7=ca.length;for(;b6=1||b9==="")&&bI.trim(b6.replace(bj,""))===""&&b7.removeAttribute){b7.removeAttribute("filter");if(b9===""||i&&!i.filter){return}}b7.filter=bj.test(b6)?b6.replace(bj,e):b6+" "+e}}}bI.cssHooks.marginRight=a7(D.reliableMarginRight,function(i,e){if(e){return bI.swap(i,{display:"inline-block"},G,[i,"marginRight"])}});bI.each({margin:"",padding:"",border:"Width"},function(e,i){bI.cssHooks[e+i]={expand:function(b8){var b7=0,b6={},b9=typeof b8==="string"?b8.split(" "):[b8];for(;b7<4;b7++){b6[e+bT[b7]+i]=b9[b7]||b9[b7-2]||b9[0]}return b6}};if(!aZ.test(e)){bI.cssHooks[e+i].set=aN}});bI.fn.extend({css:function(e,i){return aB(this,function(ca,b7,cb){var b9,b6,cc={},b8=0;if(bI.isArray(b7)){b9=bq(ca);b6=b7.length;for(;b81)},show:function(){return s(this,true)},hide:function(){return s(this)},toggle:function(e){if(typeof e==="boolean"){return e?this.show():this.hide()}return this.each(function(){if(S(this)){bI(this).show()}else{bI(this).hide()}})}});function J(b6,i,b8,e,b7){return new J.prototype.init(b6,i,b8,e,b7)}bI.Tween=J;J.prototype={constructor:J,init:function(b7,i,b9,e,b8,b6){this.elem=b7;this.prop=b9;this.easing=b8||"swing";this.options=i;this.start=this.now=this.cur();this.end=e;this.unit=b6||(bI.cssNumber[b9]?"":"px")},cur:function(){var e=J.propHooks[this.prop];return e&&e.get?e.get(this):J.propHooks._default.get(this)},run:function(b6){var i,e=J.propHooks[this.prop];if(this.options.duration){this.pos=i=bI.easing[this.easing](b6,this.options.duration*b6,0,1,this.options.duration)}else{this.pos=i=b6}this.now=(this.end-this.start)*i+this.start;if(this.options.step){this.options.step.call(this.elem,this.now,this)}if(e&&e.set){e.set(this)}else{J.propHooks._default.set(this)}return this}};J.prototype.init.prototype=J.prototype;J.propHooks={_default:{get:function(i){var e;if(i.elem[i.prop]!=null&&(!i.elem.style||i.elem.style[i.prop]==null)){return i.elem[i.prop]}e=bI.css(i.elem,i.prop,"");return !e||e==="auto"?0:e},set:function(e){if(bI.fx.step[e.prop]){bI.fx.step[e.prop](e)}else{if(e.elem.style&&(e.elem.style[bI.cssProps[e.prop]]!=null||bI.cssHooks[e.prop])){bI.style(e.elem,e.prop,e.now+e.unit)}else{e.elem[e.prop]=e.now}}}}};J.propHooks.scrollTop=J.propHooks.scrollLeft={set:function(e){if(e.elem.nodeType&&e.elem.parentNode){e.elem[e.prop]=e.now}}};bI.easing={linear:function(e){return e},swing:function(e){return 0.5-Math.cos(e*Math.PI)/2}};bI.fx=J.prototype.init;bI.fx.step={};var N,ae,bR=/^(?:toggle|show|hide)$/,bJ=new RegExp("^(?:([+-])=|)("+aE+")([a-z%]*)$","i"),bP=/queueHooks$/,aG=[h],a2={"*":[function(e,ca){var cc=this.createTween(e,ca),b8=cc.cur(),b7=bJ.exec(ca),cb=b7&&b7[3]||(bI.cssNumber[e]?"":"px"),i=(bI.cssNumber[e]||cb!=="px"&&+b8)&&bJ.exec(bI.css(cc.elem,e)),b6=1,b9=20;if(i&&i[3]!==cb){cb=cb||i[3];b7=b7||[];i=+b8||1;do{b6=b6||".5";i=i/b6;bI.style(cc.elem,e,i+cb)}while(b6!==(b6=cc.cur()/b8)&&b6!==1&&--b9)}if(b7){i=cc.start=+i||+b8||0;cc.unit=cb;cc.end=b7[1]?i+(b7[1]+1)*b7[2]:+b7[2]}return cc}]};function bn(){setTimeout(function(){N=undefined});return(N=bI.now())}function bH(b7,b9){var b8,e={height:b7},b6=0;b9=b9?1:0;for(;b6<4;b6+=2-b9){b8=bT[b6];e["margin"+b8]=e["padding"+b8]=b7}if(b9){e.opacity=e.width=b7}return e}function bd(b8,ca,b7){var i,b9=(a2[ca]||[]).concat(a2["*"]),e=0,b6=b9.length;for(;e
    a";i=b8.getElementsByTagName("a")[0];e=n.createElement("select");b7=e.appendChild(n.createElement("option"));b6=b8.getElementsByTagName("input")[0];i.style.cssText="top:1px";D.getSetAttribute=b8.className!=="t";D.style=/top/.test(i.getAttribute("style"));D.hrefNormalized=i.getAttribute("href")==="/a";D.checkOn=!!b6.value;D.optSelected=b7.selected;D.enctype=!!n.createElement("form").enctype;e.disabled=true;D.optDisabled=!b7.disabled;b6=n.createElement("input");b6.setAttribute("value","");D.input=b6.getAttribute("value")==="";b6.value="t";b6.setAttribute("type","radio");D.radioValue=b6.value==="t"})();var al=/\r/g;bI.fn.extend({val:function(b7){var e,i,b8,b6=this[0];if(!arguments.length){if(b6){e=bI.valHooks[b6.type]||bI.valHooks[b6.nodeName.toLowerCase()];if(e&&"get" in e&&(i=e.get(b6,"value"))!==undefined){return i}i=b6.value;return typeof i==="string"?i.replace(al,""):i==null?"":i}return}b8=bI.isFunction(b7);return this.each(function(b9){var ca;if(this.nodeType!==1){return}if(b8){ca=b7.call(this,b9,bI(this).val())}else{ca=b7}if(ca==null){ca=""}else{if(typeof ca==="number"){ca+=""}else{if(bI.isArray(ca)){ca=bI.map(ca,function(cb){return cb==null?"":cb+""})}}}e=bI.valHooks[this.type]||bI.valHooks[this.nodeName.toLowerCase()];if(!e||!("set" in e)||e.set(this,ca,"value")===undefined){this.value=ca}})}});bI.extend({valHooks:{option:{get:function(e){var i=bI.find.attr(e,"value");return i!=null?i:bI.trim(bI.text(e))}},select:{get:function(e){var cb,b7,cd=e.options,b9=e.selectedIndex,b8=e.type==="select-one"||b9<0,cc=b8?null:[],ca=b8?b9+1:cd.length,b6=b9<0?ca:b8?b9:0;for(;b6=0){try{b9.selected=cc=true}catch(b6){b9.scrollHeight}}else{b9.selected=false}}if(!cc){ca.selectedIndex=-1}return b7}}}});bI.each(["radio","checkbox"],function(){bI.valHooks[this]={set:function(e,i){if(bI.isArray(i)){return(e.checked=bI.inArray(bI(e).val(),i)>=0)}}};if(!D.checkOn){bI.valHooks[this].get=function(e){return e.getAttribute("value")===null?"on":e.value}}});var ba,b3,bO=bI.expr.attrHandle,aq=/^(?:checked|selected)$/i,bN=D.getSetAttribute,bF=D.input;bI.fn.extend({attr:function(e,i){return aB(this,bI.attr,e,i,arguments.length>1)},removeAttr:function(e){return this.each(function(){bI.removeAttr(this,e)})}});bI.extend({attr:function(b8,b7,b9){var e,b6,i=b8.nodeType;if(!b8||i===3||i===8||i===2){return}if(typeof b8.getAttribute===aC){return bI.prop(b8,b7,b9)}if(i!==1||!bI.isXMLDoc(b8)){b7=b7.toLowerCase();e=bI.attrHooks[b7]||(bI.expr.match.bool.test(b7)?b3:ba)}if(b9!==undefined){if(b9===null){bI.removeAttr(b8,b7)}else{if(e&&"set" in e&&(b6=e.set(b8,b9,b7))!==undefined){return b6}else{b8.setAttribute(b7,b9+"");return b9}}}else{if(e&&"get" in e&&(b6=e.get(b8,b7))!==null){return b6}else{b6=bI.find.attr(b8,b7);return b6==null?undefined:b6}}},removeAttr:function(b7,b9){var e,b8,b6=0,ca=b9&&b9.match(aF);if(ca&&b7.nodeType===1){while((e=ca[b6++])){b8=bI.propFix[e]||e;if(bI.expr.match.bool.test(e)){if(bF&&bN||!aq.test(e)){b7[b8]=false}else{b7[bI.camelCase("default-"+e)]=b7[b8]=false}}else{bI.attr(b7,e,"")}b7.removeAttribute(bN?e:b8)}}},attrHooks:{type:{set:function(e,i){if(!D.radioValue&&i==="radio"&&bI.nodeName(e,"input")){var b6=e.value;e.setAttribute("type",i);if(b6){e.value=b6}return i}}}}});b3={set:function(i,b6,e){if(b6===false){bI.removeAttr(i,e)}else{if(bF&&bN||!aq.test(e)){i.setAttribute(!bN&&bI.propFix[e]||e,e)}else{i[bI.camelCase("default-"+e)]=i[e]=true}}return e}};bI.each(bI.expr.match.bool.source.match(/\w+/g),function(b7,b6){var e=bO[b6]||bI.find.attr;bO[b6]=bF&&bN||!aq.test(b6)?function(b9,b8,cb){var i,ca;if(!cb){ca=bO[b8];bO[b8]=i;i=e(b9,b8,cb)!=null?b8.toLowerCase():null;bO[b8]=ca}return i}:function(b8,i,b9){if(!b9){return b8[bI.camelCase("default-"+i)]?i.toLowerCase():null}}});if(!bF||!bN){bI.attrHooks.value={set:function(i,b6,e){if(bI.nodeName(i,"input")){i.defaultValue=b6}else{return ba&&ba.set(i,b6,e)}}}}if(!bN){ba={set:function(b6,b7,i){var e=b6.getAttributeNode(i);if(!e){b6.setAttributeNode((e=b6.ownerDocument.createAttribute(i)))}e.value=b7+="";if(i==="value"||b7===b6.getAttribute(i)){return b7}}};bO.id=bO.name=bO.coords=function(b6,i,b7){var e;if(!b7){return(e=b6.getAttributeNode(i))&&e.value!==""?e.value:null}};bI.valHooks.button={get:function(b6,i){var e=b6.getAttributeNode(i);if(e&&e.specified){return e.value}},set:ba.set};bI.attrHooks.contenteditable={set:function(i,b6,e){ba.set(i,b6===""?false:b6,e)}};bI.each(["width","height"],function(b6,e){bI.attrHooks[e]={set:function(i,b7){if(b7===""){i.setAttribute(e,"auto");return b7}}}})}if(!D.style){bI.attrHooks.style={get:function(e){return e.style.cssText||undefined},set:function(e,i){return(e.style.cssText=i+"")}}}var aJ=/^(?:input|select|textarea|button|object)$/i,F=/^(?:a|area)$/i;bI.fn.extend({prop:function(e,i){return aB(this,bI.prop,e,i,arguments.length>1)},removeProp:function(e){e=bI.propFix[e]||e;return this.each(function(){try{this[e]=undefined;delete this[e]}catch(i){}})}});bI.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(b9,b7,ca){var b6,e,b8,i=b9.nodeType;if(!b9||i===3||i===8||i===2){return}b8=i!==1||!bI.isXMLDoc(b9);if(b8){b7=bI.propFix[b7]||b7;e=bI.propHooks[b7]}if(ca!==undefined){return e&&"set" in e&&(b6=e.set(b9,ca,b7))!==undefined?b6:(b9[b7]=ca)}else{return e&&"get" in e&&(b6=e.get(b9,b7))!==null?b6:b9[b7]}},propHooks:{tabIndex:{get:function(i){var e=bI.find.attr(i,"tabindex");return e?parseInt(e,10):aJ.test(i.nodeName)||F.test(i.nodeName)&&i.href?0:-1}}}});if(!D.hrefNormalized){bI.each(["href","src"],function(b6,e){bI.propHooks[e]={get:function(i){return i.getAttribute(e,4)}}})}if(!D.optSelected){bI.propHooks.selected={get:function(i){var e=i.parentNode;if(e){e.selectedIndex;if(e.parentNode){e.parentNode.selectedIndex}}return null}}}bI.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){bI.propFix[this.toLowerCase()]=this});if(!D.enctype){bI.propFix.enctype="encoding"}var bL=/[\t\r\n\f]/g;bI.fn.extend({addClass:function(cd){var b7,b6,ce,cb,b8,e,b9=0,ca=this.length,cc=typeof cd==="string"&&cd;if(bI.isFunction(cd)){return this.each(function(i){bI(this).addClass(cd.call(this,i,this.className))})}if(cc){b7=(cd||"").match(aF)||[];for(;b9=0){ce=ce.replace(" "+cb+" "," ")}}e=cd?bI.trim(ce):"";if(b6.className!==e){b6.className=e}}}}return this},toggleClass:function(b6,e){var i=typeof b6;if(typeof e==="boolean"&&i==="string"){return e?this.addClass(b6):this.removeClass(b6)}if(bI.isFunction(b6)){return this.each(function(b7){bI(this).toggleClass(b6.call(this,b7,this.className,e),e)})}return this.each(function(){if(i==="string"){var b9,b8=0,b7=bI(this),ca=b6.match(aF)||[];while((b9=ca[b8++])){if(b7.hasClass(b9)){b7.removeClass(b9)}else{b7.addClass(b9)}}}else{if(i===aC||i==="boolean"){if(this.className){bI._data(this,"__className__",this.className)}this.className=this.className||b6===false?"":bI._data(this,"__className__")||""}}})},hasClass:function(e){var b8=" "+e+" ",b7=0,b6=this.length;for(;b7=0){return true}}return false}});bI.each(("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu").split(" "),function(b6,e){bI.fn[e]=function(b7,i){return arguments.length>0?this.on(e,null,b7,i):this.trigger(e)}});bI.fn.extend({hover:function(e,i){return this.mouseenter(e).mouseleave(i||e)},bind:function(e,b6,i){return this.on(e,null,b6,i)},unbind:function(e,i){return this.off(e,null,i)},delegate:function(e,i,b7,b6){return this.on(i,e,b7,b6)},undelegate:function(e,i,b6){return arguments.length===1?this.off(e,"**"):this.off(i,e||"**",b6)}});var bp=bI.now();var bQ=(/\?/);var a1=/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;bI.parseJSON=function(e){if(a5.JSON&&a5.JSON.parse){return a5.JSON.parse(e+"")}var b7,b6=null,i=bI.trim(e+"");return i&&!bI.trim(i.replace(a1,function(ca,b8,b9,cb){if(b7&&b8){b6=0}if(b6===0){return ca}b7=b9||b8;b6+=!cb-!b9;return""}))?(Function("return "+i))():bI.error("Invalid JSON: "+e)};bI.parseXML=function(b7){var i,b6;if(!b7||typeof b7!=="string"){return null}try{if(a5.DOMParser){b6=new DOMParser();i=b6.parseFromString(b7,"text/xml")}else{i=new ActiveXObject("Microsoft.XMLDOM");i.async="false";i.loadXML(b7)}}catch(b8){i=undefined}if(!i||!i.documentElement||i.getElementsByTagName("parsererror").length){bI.error("Invalid XML: "+b7)}return i};var b4,aa,ap=/#.*$/,R=/([?&])_=[^&]*/,ah=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,C=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,r=/^(?:GET|HEAD)$/,aK=/^\/\//,aV=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,w={},a9={},aX="*/".concat("*");try{aa=location.href}catch(bi){aa=n.createElement("a");aa.href="";aa=aa.href}b4=aV.exec(aa.toLowerCase())||[];function bK(e){return function(b9,ca){if(typeof b9!=="string"){ca=b9;b9="*"}var b6,b7=0,b8=b9.toLowerCase().match(aF)||[];if(bI.isFunction(ca)){while((b6=b8[b7++])){if(b6.charAt(0)==="+"){b6=b6.slice(1)||"*";(e[b6]=e[b6]||[]).unshift(ca)}else{(e[b6]=e[b6]||[]).push(ca)}}}}}function p(e,b6,ca,b7){var i={},b8=(e===a9);function b9(cb){var cc;i[cb]=true;bI.each(e[cb]||[],function(ce,cd){var cf=cd(b6,ca,b7);if(typeof cf==="string"&&!b8&&!i[cf]){b6.dataTypes.unshift(cf);b9(cf);return false}else{if(b8){return !(cc=cf)}}});return cc}return b9(b6.dataTypes[0])||!i["*"]&&b9("*")}function t(b6,b7){var e,i,b8=bI.ajaxSettings.flatOptions||{};for(i in b7){if(b7[i]!==undefined){(b8[i]?b6:(e||(e={})))[i]=b7[i]}}if(e){bI.extend(true,b6,e)}return b6}function g(cc,cb,b8){var e,b7,b6,b9,i=cc.contents,ca=cc.dataTypes;while(ca[0]==="*"){ca.shift();if(b7===undefined){b7=cc.mimeType||cb.getResponseHeader("Content-Type")}}if(b7){for(b9 in i){if(i[b9]&&i[b9].test(b7)){ca.unshift(b9);break}}}if(ca[0] in b8){b6=ca[0]}else{for(b9 in b8){if(!ca[0]||cc.converters[b9+" "+ca[0]]){b6=b9;break}if(!e){e=b9}}b6=b6||e}if(b6){if(b6!==ca[0]){ca.unshift(b6)}return b8[b6]}}function ag(cg,b8,cd,b6){var i,cb,ce,b9,b7,cf={},cc=cg.dataTypes.slice();if(cc[1]){for(ce in cg.converters){cf[ce.toLowerCase()]=cg.converters[ce]}}cb=cc.shift();while(cb){if(cg.responseFields[cb]){cd[cg.responseFields[cb]]=b8}if(!b7&&b6&&cg.dataFilter){b8=cg.dataFilter(b8,cg.dataType)}b7=cb;cb=cc.shift();if(cb){if(cb==="*"){cb=b7}else{if(b7!=="*"&&b7!==cb){ce=cf[b7+" "+cb]||cf["* "+cb];if(!ce){for(i in cf){b9=i.split(" ");if(b9[1]===cb){ce=cf[b7+" "+b9[0]]||cf["* "+b9[0]];if(ce){if(ce===true){ce=cf[i]}else{if(cf[i]!==true){cb=b9[0];cc.unshift(b9[1])}}break}}}}if(ce!==true){if(ce&&cg["throws"]){b8=ce(b8)}else{try{b8=ce(b8)}catch(ca){return{state:"parsererror",error:ce?ca:"No conversion from "+b7+" to "+cb}}}}}}}}return{state:"success",data:b8}}bI.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:aa,type:"GET",isLocal:C.test(b4[1]),global:true,processData:true,async:true,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":aX,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":true,"text json":bI.parseJSON,"text xml":bI.parseXML},flatOptions:{url:true,context:true}},ajaxSetup:function(i,e){return e?t(t(i,bI.ajaxSettings),e):t(bI.ajaxSettings,i)},ajaxPrefilter:bK(w),ajaxTransport:bK(a9),ajax:function(ca,b7){if(typeof ca==="object"){b7=ca;ca=undefined}b7=b7||{};var cj,cl,cb,cq,cf,b6,cm,b8,ce=bI.ajaxSetup({},b7),cs=ce.context||ce,ch=ce.context&&(cs.nodeType||cs.jquery)?bI(cs):bI.event,cr=bI.Deferred(),co=bI.Callbacks("once memory"),cc=ce.statusCode||{},ci={},cp={},b9=0,cd="canceled",ck={readyState:0,getResponseHeader:function(i){var e;if(b9===2){if(!b8){b8={};while((e=ah.exec(cq))){b8[e[1].toLowerCase()]=e[2]}}e=b8[i.toLowerCase()]}return e==null?null:e},getAllResponseHeaders:function(){return b9===2?cq:null},setRequestHeader:function(i,ct){var e=i.toLowerCase();if(!b9){i=cp[e]=cp[e]||i;ci[i]=ct}return this},overrideMimeType:function(e){if(!b9){ce.mimeType=e}return this},statusCode:function(i){var e;if(i){if(b9<2){for(e in i){cc[e]=[cc[e],i[e]]}}else{ck.always(i[ck.status])}}return this},abort:function(i){var e=i||cd;if(cm){cm.abort(e)}cg(0,e);return this}};cr.promise(ck).complete=co.add;ck.success=ck.done;ck.error=ck.fail;ce.url=((ca||ce.url||aa)+"").replace(ap,"").replace(aK,b4[1]+"//");ce.type=b7.method||b7.type||ce.method||ce.type;ce.dataTypes=bI.trim(ce.dataType||"*").toLowerCase().match(aF)||[""];if(ce.crossDomain==null){cj=aV.exec(ce.url.toLowerCase());ce.crossDomain=!!(cj&&(cj[1]!==b4[1]||cj[2]!==b4[2]||(cj[3]||(cj[1]==="http:"?"80":"443"))!==(b4[3]||(b4[1]==="http:"?"80":"443"))))}if(ce.data&&ce.processData&&typeof ce.data!=="string"){ce.data=bI.param(ce.data,ce.traditional)}p(w,ce,b7,ck);if(b9===2){return ck}b6=bI.event&&ce.global;if(b6&&bI.active++===0){bI.event.trigger("ajaxStart")}ce.type=ce.type.toUpperCase();ce.hasContent=!r.test(ce.type);cb=ce.url;if(!ce.hasContent){if(ce.data){cb=(ce.url+=(bQ.test(cb)?"&":"?")+ce.data);delete ce.data}if(ce.cache===false){ce.url=R.test(cb)?cb.replace(R,"$1_="+bp++):cb+(bQ.test(cb)?"&":"?")+"_="+bp++}}if(ce.ifModified){if(bI.lastModified[cb]){ck.setRequestHeader("If-Modified-Since",bI.lastModified[cb])}if(bI.etag[cb]){ck.setRequestHeader("If-None-Match",bI.etag[cb])}}if(ce.data&&ce.hasContent&&ce.contentType!==false||b7.contentType){ck.setRequestHeader("Content-Type",ce.contentType)}ck.setRequestHeader("Accept",ce.dataTypes[0]&&ce.accepts[ce.dataTypes[0]]?ce.accepts[ce.dataTypes[0]]+(ce.dataTypes[0]!=="*"?", "+aX+"; q=0.01":""):ce.accepts["*"]);for(cl in ce.headers){ck.setRequestHeader(cl,ce.headers[cl])}if(ce.beforeSend&&(ce.beforeSend.call(cs,ck,ce)===false||b9===2)){return ck.abort()}cd="abort";for(cl in {success:1,error:1,complete:1}){ck[cl](ce[cl])}cm=p(a9,ce,b7,ck);if(!cm){cg(-1,"No Transport")}else{ck.readyState=1;if(b6){ch.trigger("ajaxSend",[ck,ce])}if(ce.async&&ce.timeout>0){cf=setTimeout(function(){ck.abort("timeout")},ce.timeout)}try{b9=1;cm.send(ci,cg)}catch(cn){if(b9<2){cg(-1,cn)}else{throw cn}}}function cg(cw,i,cx,cu){var e,cA,cy,cv,cz,ct=i;if(b9===2){return}b9=2;if(cf){clearTimeout(cf)}cm=undefined;cq=cu||"";ck.readyState=cw>0?4:0;e=cw>=200&&cw<300||cw===304;if(cx){cv=g(ce,ck,cx)}cv=ag(ce,cv,ck,e);if(e){if(ce.ifModified){cz=ck.getResponseHeader("Last-Modified");if(cz){bI.lastModified[cb]=cz}cz=ck.getResponseHeader("etag");if(cz){bI.etag[cb]=cz}}if(cw===204||ce.type==="HEAD"){ct="nocontent"}else{if(cw===304){ct="notmodified"}else{ct=cv.state;cA=cv.data;cy=cv.error;e=!cy}}}else{cy=ct;if(cw||!ct){ct="error";if(cw<0){cw=0}}}ck.status=cw;ck.statusText=(i||ct)+"";if(e){cr.resolveWith(cs,[cA,ct,ck])}else{cr.rejectWith(cs,[ck,ct,cy])}ck.statusCode(cc);cc=undefined;if(b6){ch.trigger(e?"ajaxSuccess":"ajaxError",[ck,ce,e?cA:cy])}co.fireWith(cs,[ck,ct]);if(b6){ch.trigger("ajaxComplete",[ck,ce]);if(!(--bI.active)){bI.event.trigger("ajaxStop")}}}return ck},getJSON:function(e,i,b6){return bI.get(e,i,b6,"json")},getScript:function(e,i){return bI.get(e,undefined,i,"script")}});bI.each(["get","post"],function(e,b6){bI[b6]=function(i,b8,b9,b7){if(bI.isFunction(b8)){b7=b7||b9;b9=b8;b8=undefined}return bI.ajax({url:i,type:b6,dataType:b7,data:b8,success:b9})}});bI._evalUrl=function(e){return bI.ajax({url:e,type:"GET",dataType:"script",async:false,global:false,"throws":true})};bI.fn.extend({wrapAll:function(e){if(bI.isFunction(e)){return this.each(function(b6){bI(this).wrapAll(e.call(this,b6))})}if(this[0]){var i=bI(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){i.insertBefore(this[0])}i.map(function(){var b6=this;while(b6.firstChild&&b6.firstChild.nodeType===1){b6=b6.firstChild}return b6}).append(this)}return this},wrapInner:function(e){if(bI.isFunction(e)){return this.each(function(b6){bI(this).wrapInner(e.call(this,b6))})}return this.each(function(){var i=bI(this),b6=i.contents();if(b6.length){b6.wrapAll(e)}else{i.append(e)}})},wrap:function(e){var i=bI.isFunction(e);return this.each(function(b6){bI(this).wrapAll(i?e.call(this,b6):e)})},unwrap:function(){return this.parent().each(function(){if(!bI.nodeName(this,"body")){bI(this).replaceWith(this.childNodes)}}).end()}});bI.expr.filters.hidden=function(e){return e.offsetWidth<=0&&e.offsetHeight<=0||(!D.reliableHiddenOffsets()&&((e.style&&e.style.display)||bI.css(e,"display"))==="none")};bI.expr.filters.visible=function(e){return !bI.expr.filters.hidden(e)};var bw=/%20/g,aS=/\[\]$/,X=/\r?\n/g,b=/^(?:submit|button|image|reset|file)$/i,au=/^(?:input|select|textarea|keygen)/i;function j(b6,b8,i,b7){var e;if(bI.isArray(b8)){bI.each(b8,function(ca,b9){if(i||aS.test(b6)){b7(b6,b9)}else{j(b6+"["+(typeof b9==="object"?ca:"")+"]",b9,i,b7)}})}else{if(!i&&bI.type(b8)==="object"){for(e in b8){j(b6+"["+e+"]",b8[e],i,b7)}}else{b7(b6,b8)}}}bI.param=function(e,b6){var b7,i=[],b8=function(b9,ca){ca=bI.isFunction(ca)?ca():(ca==null?"":ca);i[i.length]=encodeURIComponent(b9)+"="+encodeURIComponent(ca)};if(b6===undefined){b6=bI.ajaxSettings&&bI.ajaxSettings.traditional}if(bI.isArray(e)||(e.jquery&&!bI.isPlainObject(e))){bI.each(e,function(){b8(this.name,this.value)})}else{for(b7 in e){j(b7,e[b7],b6,b8)}}return i.join("&").replace(bw,"+")};bI.fn.extend({serialize:function(){return bI.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=bI.prop(this,"elements");return e?bI.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!bI(this).is(":disabled")&&au.test(this.nodeName)&&!b.test(e)&&(this.checked||!aM.test(e))}).map(function(e,b6){var b7=bI(this).val();return b7==null?null:bI.isArray(b7)?bI.map(b7,function(i){return{name:b6.name,value:i.replace(X,"\r\n")}}):{name:b6.name,value:b7.replace(X,"\r\n")}}).get()}});bI.ajaxSettings.xhr=a5.ActiveXObject!==undefined?function(){return !this.isLocal&&/^(get|post|head|put|delete|options)$/i.test(this.type)&&bE()||bg()}:bE;var aA=0,aj={},ay=bI.ajaxSettings.xhr();if(a5.attachEvent){a5.attachEvent("onunload",function(){for(var e in aj){aj[e](undefined,true)}})}D.cors=!!ay&&("withCredentials" in ay);ay=D.ajax=!!ay;if(ay){bI.ajaxTransport(function(e){if(!e.crossDomain||D.cors){var i;return{send:function(b9,b6){var b7,b8=e.xhr(),ca=++aA;b8.open(e.type,e.url,e.async,e.username,e.password);if(e.xhrFields){for(b7 in e.xhrFields){b8[b7]=e.xhrFields[b7]}}if(e.mimeType&&b8.overrideMimeType){b8.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!b9["X-Requested-With"]){b9["X-Requested-With"]="XMLHttpRequest"}for(b7 in b9){if(b9[b7]!==undefined){b8.setRequestHeader(b7,b9[b7]+"")}}b8.send((e.hasContent&&e.data)||null);i=function(cd,cc){var cb,cg,ce;if(i&&(cc||b8.readyState===4)){delete aj[ca];i=undefined;b8.onreadystatechange=bI.noop;if(cc){if(b8.readyState!==4){b8.abort()}}else{ce={};cb=b8.status;if(typeof b8.responseText==="string"){ce.text=b8.responseText}try{cg=b8.statusText}catch(cf){cg=""}if(!cb&&e.isLocal&&!e.crossDomain){cb=ce.text?200:404}else{if(cb===1223){cb=204}}}}if(ce){b6(cb,cg,ce,b8.getAllResponseHeaders())}};if(!e.async){i()}else{if(b8.readyState===4){setTimeout(i)}else{b8.onreadystatechange=aj[ca]=i}}},abort:function(){if(i){i(undefined,true)}}}}})}function bE(){try{return new a5.XMLHttpRequest()}catch(i){}}function bg(){try{return new a5.ActiveXObject("Microsoft.XMLHTTP")}catch(i){}}bI.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){bI.globalEval(e);return e}}});bI.ajaxPrefilter("script",function(e){if(e.cache===undefined){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});bI.ajaxTransport("script",function(b6){if(b6.crossDomain){var e,i=n.head||bI("head")[0]||n.documentElement;return{send:function(b7,b8){e=n.createElement("script");e.async=true;if(b6.scriptCharset){e.charset=b6.scriptCharset}e.src=b6.url;e.onload=e.onreadystatechange=function(ca,b9){if(b9||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(e.parentNode){e.parentNode.removeChild(e)}e=null;if(!b9){b8(200,"success")}}};i.insertBefore(e,i.firstChild)},abort:function(){if(e){e.onload(undefined,true)}}}}});var bs=[],a8=/(=)\?(?=&|$)|\?\?/;bI.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=bs.pop()||(bI.expando+"_"+(bp++));this[e]=true;return e}});bI.ajaxPrefilter("json jsonp",function(b7,e,b8){var ca,i,b6,b9=b7.jsonp!==false&&(a8.test(b7.url)?"url":typeof b7.data==="string"&&!(b7.contentType||"").indexOf("application/x-www-form-urlencoded")&&a8.test(b7.data)&&"data");if(b9||b7.dataTypes[0]==="jsonp"){ca=b7.jsonpCallback=bI.isFunction(b7.jsonpCallback)?b7.jsonpCallback():b7.jsonpCallback;if(b9){b7[b9]=b7[b9].replace(a8,"$1"+ca)}else{if(b7.jsonp!==false){b7.url+=(bQ.test(b7.url)?"&":"?")+b7.jsonp+"="+ca}}b7.converters["script json"]=function(){if(!b6){bI.error(ca+" was not called")}return b6[0]};b7.dataTypes[0]="json";i=a5[ca];a5[ca]=function(){b6=arguments};b8.always(function(){a5[ca]=i;if(b7[ca]){b7.jsonpCallback=e.jsonpCallback;bs.push(ca)}if(b6&&bI.isFunction(i)){i(b6[0])}b6=i=undefined});return"script"}});bI.parseHTML=function(b8,b6,b7){if(!b8||typeof b8!=="string"){return null}if(typeof b6==="boolean"){b7=b6;b6=false}b6=b6||n;var i=a.exec(b8),e=!b7&&[];if(i){return[b6.createElement(i[1])]}i=bI.buildFragment([b8],b6,e);if(e&&e.length){bI(e).remove()}return bI.merge([],i.childNodes)};var b1=bI.fn.load;bI.fn.load=function(b7,ca,cb){if(typeof b7!=="string"&&b1){return b1.apply(this,arguments)}var e,b6,b8,i=this,b9=b7.indexOf(" ");if(b9>=0){e=bI.trim(b7.slice(b9,b7.length));b7=b7.slice(0,b9)}if(bI.isFunction(ca)){cb=ca;ca=undefined}else{if(ca&&typeof ca==="object"){b8="POST"}}if(i.length>0){bI.ajax({url:b7,type:b8,dataType:"html",data:ca}).done(function(cc){b6=arguments;i.html(e?bI("
    ").append(bI.parseHTML(cc)).find(e):cc)}).complete(cb&&function(cd,cc){i.each(cb,b6||[cd.responseText,cc,cd])})}return this};bI.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,b6){bI.fn[b6]=function(i){return this.on(b6,i)}});bI.expr.filters.animated=function(e){return bI.grep(bI.timers,function(i){return e===i.elem}).length};var bX=a5.document.documentElement;function br(e){return bI.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}bI.offset={setOffset:function(b7,ch,cb){var cd,ca,e,b8,b6,cf,cg,cc=bI.css(b7,"position"),b9=bI(b7),ce={};if(cc==="static"){b7.style.position="relative"}b6=b9.offset();e=bI.css(b7,"top");cf=bI.css(b7,"left");cg=(cc==="absolute"||cc==="fixed")&&bI.inArray("auto",[e,cf])>-1;if(cg){cd=b9.position();b8=cd.top;ca=cd.left}else{b8=parseFloat(e)||0;ca=parseFloat(cf)||0}if(bI.isFunction(ch)){ch=ch.call(b7,cb,b6)}if(ch.top!=null){ce.top=(ch.top-b6.top)+b8}if(ch.left!=null){ce.left=(ch.left-b6.left)+ca}if("using" in ch){ch.using.call(b7,ce)}else{b9.css(ce)}}};bI.fn.extend({offset:function(i){if(arguments.length){return i===undefined?this:this.each(function(ca){bI.offset.setOffset(this,i,ca)})}var e,b9,b7={top:0,left:0},b6=this[0],b8=b6&&b6.ownerDocument;if(!b8){return}e=b8.documentElement;if(!bI.contains(e,b6)){return b7}if(typeof b6.getBoundingClientRect!==aC){b7=b6.getBoundingClientRect()}b9=br(b8);return{top:b7.top+(b9.pageYOffset||e.scrollTop)-(e.clientTop||0),left:b7.left+(b9.pageXOffset||e.scrollLeft)-(e.clientLeft||0)}},position:function(){if(!this[0]){return}var b6,b7,e={top:0,left:0},i=this[0];if(bI.css(i,"position")==="fixed"){b7=i.getBoundingClientRect()}else{b6=this.offsetParent();b7=this.offset();if(!bI.nodeName(b6[0],"html")){e=b6.offset()}e.top+=bI.css(b6[0],"borderTopWidth",true);e.left+=bI.css(b6[0],"borderLeftWidth",true)}return{top:b7.top-e.top-bI.css(i,"marginTop",true),left:b7.left-e.left-bI.css(i,"marginLeft",true)}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||bX;while(e&&(!bI.nodeName(e,"html")&&bI.css(e,"position")==="static")){e=e.offsetParent}return e||bX})}});bI.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(b6,i){var e=/Y/.test(i);bI.fn[b6]=function(b7){return aB(this,function(b8,cb,ca){var b9=br(b8);if(ca===undefined){return b9?(i in b9)?b9[i]:b9.document.documentElement[cb]:b8[cb]}if(b9){b9.scrollTo(!e?ca:bI(b9).scrollLeft(),e?ca:bI(b9).scrollTop())}else{b8[cb]=ca}},b6,b7,arguments.length,null)}});bI.each(["top","left"],function(e,b6){bI.cssHooks[b6]=a7(D.pixelPosition,function(b7,i){if(i){i=G(b7,b6);return Y.test(i)?bI(b7).position()[b6]+"px":i}})});bI.each({Height:"height",Width:"width"},function(e,i){bI.each({padding:"inner"+e,content:i,"":"outer"+e},function(b6,b7){bI.fn[b7]=function(cb,ca){var b9=arguments.length&&(b6||typeof cb!=="boolean"),b8=b6||(cb===true||ca===true?"margin":"border");return aB(this,function(cd,cc,ce){var cf;if(bI.isWindow(cd)){return cd.document.documentElement["client"+e]}if(cd.nodeType===9){cf=cd.documentElement;return Math.max(cd.body["scroll"+e],cf["scroll"+e],cd.body["offset"+e],cf["offset"+e],cf["client"+e])}return ce===undefined?bI.css(cd,cc,b8):bI.style(cd,cc,ce,b8)},i,b9?cb:undefined,b9,null)}})});bI.fn.size=function(){return this.length};bI.fn.andSelf=bI.fn.addBack;if(typeof define==="function"&&define.amd){define("jquery",[],function(){return bI})}var bk=a5.jQuery,I=a5.$;bI.noConflict=function(e){if(a5.$===bI){a5.$=I}if(e&&a5.jQuery===bI){a5.jQuery=bk}return bI};if(typeof av===aC){a5.jQuery=a5.$=bI}return bI}));!function(a){a(function(){a.support.transition=(function(){var b=(function(){var e=document.createElement("bootstrap"),d={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},c;for(c in d){if(e.style[c]!==undefined){return d[c]}}}());return b&&{end:b}})()})}(window.jQuery);!function(d){var c='[data-dismiss="alert"]',b=function(e){d(e).on("click",c,this.close)};b.prototype.close=function(j){var i=d(this),g=i.attr("data-target"),h;if(!g){g=i.attr("href");g=g&&g.replace(/.*(?=#[^\s]*$)/,"")}h=d(g);j&&j.preventDefault();h.length||(h=i.hasClass("alert")?i:i.parent());h.trigger(j=d.Event("close"));if(j.isDefaultPrevented()){return}h.removeClass("in");function f(){h.trigger("closed").remove()}d.support.transition&&h.hasClass("fade")?h.on(d.support.transition.end,f):f()};var a=d.fn.alert;d.fn.alert=function(e){return this.each(function(){var g=d(this),f=g.data("alert");if(!f){g.data("alert",(f=new b(this)))}if(typeof e=="string"){f[e].call(g)}})};d.fn.alert.Constructor=b;d.fn.alert.noConflict=function(){d.fn.alert=a;return this};d(document).on("click.alert.data-api",c,b.prototype.close)}(window.jQuery);!function(c){var b=function(e,d){this.$element=c(e);this.options=c.extend({},c.fn.button.defaults,d)};b.prototype.setState=function(g){var i="disabled",e=this.$element,f=e.data(),h=e.is("input")?"val":"html";g=g+"Text";f.resetText||e.data("resetText",e[h]());e[h](f[g]||this.options[g]);setTimeout(function(){g=="loadingText"?e.addClass(i).attr(i,i):e.removeClass(i).removeAttr(i)},0)};b.prototype.toggle=function(){var d=this.$element.closest('[data-toggle="buttons-radio"]');d&&d.find(".active").removeClass("active");this.$element.toggleClass("active")};var a=c.fn.button;c.fn.button=function(d){return this.each(function(){var g=c(this),f=g.data("button"),e=typeof d=="object"&&d;if(!f){g.data("button",(f=new b(this,e)))}if(d=="toggle"){f.toggle()}else{if(d){f.setState(d)}}})};c.fn.button.defaults={loadingText:"loading..."};c.fn.button.Constructor=b;c.fn.button.noConflict=function(){c.fn.button=a;return this};c(document).on("click.button.data-api","[data-toggle^=button]",function(f){var d=c(f.target);if(!d.hasClass("btn")){d=d.closest(".btn")}d.button("toggle")})}(window.jQuery);!function(b){var c=function(e,d){this.$element=b(e);this.$indicators=this.$element.find(".carousel-indicators");this.options=d;this.options.pause=="hover"&&this.$element.on("mouseenter",b.proxy(this.pause,this)).on("mouseleave",b.proxy(this.cycle,this))};c.prototype={cycle:function(d){if(!d){this.paused=false}if(this.interval){clearInterval(this.interval)}this.options.interval&&!this.paused&&(this.interval=setInterval(b.proxy(this.next,this),this.options.interval));return this},getActiveIndex:function(){this.$active=this.$element.find(".item.active");this.$items=this.$active.parent().children();return this.$items.index(this.$active)},to:function(f){var d=this.getActiveIndex(),e=this;if(f>(this.$items.length-1)||f<0){return}if(this.sliding){return this.$element.one("slid",function(){e.to(f)})}if(d==f){return this.pause().cycle()}return this.slide(f>d?"next":"prev",b(this.$items[f]))},pause:function(d){if(!d){this.paused=true}if(this.$element.find(".next, .prev").length&&b.support.transition.end){this.$element.trigger(b.support.transition.end);this.cycle(true)}clearInterval(this.interval);this.interval=null;return this},next:function(){if(this.sliding){return}return this.slide("next")},prev:function(){if(this.sliding){return}return this.slide("prev")},slide:function(k,f){var m=this.$element.find(".item.active"),d=f||m[k](),j=this.interval,l=k=="next"?"left":"right",g=k=="next"?"first":"last",h=this,i;this.sliding=true;j&&this.pause();d=d.length?d:this.$element.find(".item")[g]();i=b.Event("slide",{relatedTarget:d[0],direction:l});if(d.hasClass("active")){return}if(this.$indicators.length){this.$indicators.find(".active").removeClass("active");this.$element.one("slid",function(){var e=b(h.$indicators.children()[h.getActiveIndex()]);e&&e.addClass("active")})}if(b.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(i);if(i.isDefaultPrevented()){return}d.addClass(k);d[0].offsetWidth;m.addClass(l);d.addClass(l);this.$element.one(b.support.transition.end,function(){d.removeClass([k,l].join(" ")).addClass("active");m.removeClass(["active",l].join(" "));h.sliding=false;setTimeout(function(){h.$element.trigger("slid")},0)})}else{this.$element.trigger(i);if(i.isDefaultPrevented()){return}m.removeClass("active");d.addClass("active");this.sliding=false;this.$element.trigger("slid")}j&&this.cycle();return this}};var a=b.fn.carousel;b.fn.carousel=function(d){return this.each(function(){var h=b(this),g=h.data("carousel"),e=b.extend({},b.fn.carousel.defaults,typeof d=="object"&&d),f=typeof d=="string"?d:e.slide;if(!g){h.data("carousel",(g=new c(this,e)))}if(typeof d=="number"){g.to(d)}else{if(f){g[f]()}else{if(e.interval){g.pause().cycle()}}}})};b.fn.carousel.defaults={interval:5000,pause:"hover"};b.fn.carousel.Constructor=c;b.fn.carousel.noConflict=function(){b.fn.carousel=a;return this};b(document).on("click.carousel.data-api","[data-slide], [data-slide-to]",function(j){var i=b(this),f,d=b(i.attr("data-target")||(f=i.attr("href"))&&f.replace(/.*(?=#[^\s]+$)/,"")),g=b.extend({},d.data(),i.data()),h;d.carousel(g);if(h=i.attr("data-slide-to")){d.data("carousel").pause().to(h).cycle()}j.preventDefault()})}(window.jQuery);!function(b){var c=function(e,d){this.$element=b(e);this.options=b.extend({},b.fn.collapse.defaults,d);if(this.options.parent){this.$parent=b(this.options.parent)}this.options.toggle&&this.toggle()};c.prototype={constructor:c,dimension:function(){var d=this.$element.hasClass("width");return d?"width":"height"},show:function(){var g,d,f,e;if(this.transitioning||this.$element.hasClass("in")){return}g=this.dimension();d=b.camelCase(["scroll",g].join("-"));f=this.$parent&&this.$parent.find("> .accordion-group > .in");if(f&&f.length){e=f.data("collapse");if(e&&e.transitioning){return}f.collapse("hide");e||f.data("collapse",null)}this.$element[g](0);this.transition("addClass",b.Event("show"),"shown");b.support.transition&&this.$element[g](this.$element[0][d])},hide:function(){var d;if(this.transitioning||!this.$element.hasClass("in")){return}d=this.dimension();this.reset(this.$element[d]());this.transition("removeClass",b.Event("hide"),"hidden");this.$element[d](0)},reset:function(d){var e=this.dimension();this.$element.removeClass("collapse")[e](d||"auto")[0].offsetWidth;this.$element[d!==null?"addClass":"removeClass"]("collapse");return this},transition:function(h,e,f){var g=this,d=function(){if(e.type=="show"){g.reset()}g.transitioning=0;g.$element.trigger(f)};this.$element.trigger(e);if(e.isDefaultPrevented()){return}this.transitioning=1;this.$element[h]("in");b.support.transition&&this.$element.hasClass("collapse")?this.$element.one(b.support.transition.end,d):d()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}};var a=b.fn.collapse;b.fn.collapse=function(d){return this.each(function(){var g=b(this),f=g.data("collapse"),e=b.extend({},b.fn.collapse.defaults,g.data(),typeof d=="object"&&d);if(!f){g.data("collapse",(f=new c(this,e)))}if(typeof d=="string"){f[d]()}})};b.fn.collapse.defaults={toggle:true};b.fn.collapse.Constructor=c;b.fn.collapse.noConflict=function(){b.fn.collapse=a;return this};b(document).on("click.collapse.data-api","[data-toggle=collapse]",function(i){var h=b(this),d,g=h.attr("data-target")||i.preventDefault()||(d=h.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""),f=b(g).data("collapse")?"toggle":h.data();h[b(g).hasClass("in")?"addClass":"removeClass"]("collapsed");b(g).collapse(f)})}(window.jQuery);!function(f){var b="[data-toggle=dropdown]",a=function(h){var g=f(h).on("click.dropdown.data-api",this.toggle);f("html").on("click.dropdown.data-api",function(){g.parent().removeClass("open")})};a.prototype={constructor:a,toggle:function(j){var i=f(this),h,g;if(i.is(".disabled, :disabled")){return}h=e(i);g=h.hasClass("open");d();if(!g){if("ontouchstart" in document.documentElement){f('

    +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[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�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