From 94c73fbbeaa23822815458e6b3a5c858cb41b121 Mon Sep 17 00:00:00 2001 From: Nishu Goel Date: Fri, 16 Aug 2024 14:04:01 +0200 Subject: [PATCH] Upgrade provider to add back entityId --- .speakeasy/gen.lock | 121 +- CONTRIBUTING.md | 26 + Makefile | 10 +- README.md | 2 +- docs/data-sources/journey.md | 19 +- docs/index.md | 2 +- docs/resources/journey.md | 33 +- examples/bigggg/bla.tf | 25 + examples/bigggg/gen.tf | 511 + ...ourney_5255eaaefdef4f179207831b2ccfab47.tf | 15320 ++++++++++++++++ .../epilot-journey_journey/data-source.tf | 2 +- examples/provider/provider.tf | 2 +- .../epilot-journey_journey/import.sh | 1 + .../epilot-journey_journey/resource.tf | 40 +- gen.yaml | 11 +- go.mod | 40 +- go.sum | 70 +- .../boolplanmodifier/suppress_diff.go | 2 +- .../float64planmodifier/suppress_diff.go | 2 +- .../int64planmodifier/suppress_diff.go | 2 +- .../listplanmodifier/suppress_diff.go | 2 +- .../mapplanmodifier/suppress_diff.go | 2 +- .../numberplanmodifier/suppress_diff.go | 2 +- .../objectplanmodifier/suppress_diff.go | 2 +- .../setplanmodifier/suppress_diff.go | 2 +- .../stringplanmodifier/suppress_diff.go | 2 +- internal/planmodifiers/utils/state_check.go | 2 +- internal/provider/journey_data_source.go | 52 +- internal/provider/journey_data_source_sdk.go | 280 +- internal/provider/journey_resource.go | 76 +- internal/provider/journey_resource_sdk.go | 344 +- internal/provider/provider.go | 6 +- internal/provider/reflect/diags.go | 2 +- internal/provider/reflect/doc.go | 2 +- .../provider/reflect/generic_attr_value.go | 2 +- internal/provider/reflect/helpers.go | 4 +- internal/provider/reflect/interfaces.go | 2 +- internal/provider/reflect/into.go | 2 +- internal/provider/reflect/map.go | 2 +- internal/provider/reflect/number.go | 2 +- internal/provider/reflect/options.go | 11 +- internal/provider/reflect/outof.go | 2 +- internal/provider/reflect/pointer.go | 2 +- internal/provider/reflect/primitive.go | 2 +- internal/provider/reflect/slice.go | 2 +- internal/provider/reflect/struct.go | 16 +- .../journey_creation_request_v2_button.go} | 4 +- ...rney_creation_request_v2_context_schema.go | 11 + .../journey_creation_request_v2_design.go} | 4 +- ...rney_creation_request_v2_embed_options.go} | 4 +- .../journey_creation_request_v2_logics.go} | 4 +- .../journey_creation_request_v2_rules.go} | 4 +- .../journey_creation_request_v2_settings.go} | 5 +- .../journey_creation_request_v2_steps.go} | 4 +- internal/provider/utils.go | 17 +- internal/sdk/.gitattributes | 2 + internal/sdk/.gitignore | 1 + internal/sdk/CONTRIBUTING.md | 26 + internal/sdk/internal/hooks/hooks.go | 144 + internal/sdk/internal/hooks/registration.go | 15 + .../{pkg => internal}/utils/contenttype.go | 6 +- internal/sdk/{pkg => internal}/utils/form.go | 4 +- .../sdk/{pkg => internal}/utils/headers.go | 32 +- internal/sdk/{pkg => internal}/utils/json.go | 80 +- .../sdk/{pkg => internal}/utils/pathparams.go | 51 +- internal/sdk/internal/utils/queryparams.go | 259 + .../{pkg => internal}/utils/requestbody.go | 17 +- .../sdk/{pkg => internal}/utils/retries.go | 23 +- .../sdk/{pkg => internal}/utils/security.go | 142 +- internal/sdk/{pkg => internal}/utils/utils.go | 98 +- internal/sdk/journeys.go | 1187 +- internal/sdk/journeysv2.go | 753 +- .../sdkerrors => models/errors}/sdkerror.go | 4 +- .../models/operations/createjourney.go | 4 +- .../models/operations/createjourneyv2.go | 4 +- .../{pkg => }/models/operations/getjourney.go | 4 +- .../models/operations/getjourneyproducts.go | 4 +- .../models/operations/getjourneysbyorgid.go | 4 +- .../models/operations/getjourneyv2.go | 4 +- .../{pkg => }/models/operations/options.go | 38 +- .../models/operations/patchupdatejourney.go | 4 +- .../models/operations/patchupdatejourneyv2.go | 4 +- .../models/operations/removejourney.go | 2 +- .../models/operations/removejourneyv2.go | 2 +- .../models/operations/searchjourneys.go | 4 +- .../models/operations/updatejourney.go | 4 +- .../models/operations/updatejourneyv2.go | 4 +- .../sdk/models/shared/getjourneysresponse.go | 6 + .../sdk/{pkg => }/models/shared/journey.go | 174 +- .../models/shared/journeycreationrequest.go | 154 +- .../models/shared/journeycreationrequestv2.go | 99 +- .../models/shared/journeyproductsresponse.go | 34 +- .../models/shared/journeyresponse.go | 2 +- .../shared/patchupdatejourneyrequest.go | 19 +- .../shared/searchjourneysqueryrequest.go | 4 +- .../models/shared/searchjourneysresponse.go | 5 +- .../sdk/{pkg => }/models/shared/security.go | 2 +- .../pkg/models/shared/getjourneysresponse.go | 6 - internal/sdk/pkg/utils/queryparams.go | 178 - internal/sdk/retry/config.go | 16 + internal/sdk/sdk.go | 57 +- internal/sdk/{pkg => }/types/bigint.go | 2 +- internal/sdk/{pkg => }/types/date.go | 2 +- internal/sdk/{pkg => }/types/datetime.go | 2 +- internal/sdk/{pkg => }/types/decimal.go | 2 +- internal/sdk/{pkg => }/types/pointers.go | 2 +- internal/validators/DateValidator.go | 4 +- internal/validators/ExactlyOneChild.go | 2 +- internal/validators/JSONParseValidator.go | 2 +- internal/validators/RFC3339Validator.go | 2 +- .../validators/boolvalidators/not_null.go | 2 +- .../validators/float64validators/not_null.go | 2 +- .../validators/int64validators/not_null.go | 2 +- .../validators/listvalidators/not_null.go | 2 +- internal/validators/mapvalidators/not_null.go | 2 +- .../validators/numbervalidators/not_null.go | 2 +- .../validators/objectvalidators/not_null.go | 2 +- internal/validators/setvalidators/not_null.go | 2 +- .../validators/stringvalidators/not_null.go | 2 +- main.go | 4 +- openapi.yml | 972 + original_modified.yaml | 981 + overlay.yaml | 6 +- tools/tools.go | 2 +- 124 files changed, 21314 insertions(+), 1498 deletions(-) create mode 100644 CONTRIBUTING.md create mode 100644 examples/bigggg/bla.tf create mode 100644 examples/bigggg/gen.tf create mode 100644 examples/bigggg/journey_5255eaaefdef4f179207831b2ccfab47.tf create mode 100644 examples/resources/epilot-journey_journey/import.sh rename internal/provider/{type_journey_creation_request_v2_button.go => types/journey_creation_request_v2_button.go} (70%) create mode 100644 internal/provider/types/journey_creation_request_v2_context_schema.go rename internal/provider/{type_journey_creation_request_v2_design.go => types/journey_creation_request_v2_design.go} (73%) rename internal/provider/{type_journey_creation_request_v2_embed_options.go => types/journey_creation_request_v2_embed_options.go} (86%) rename internal/provider/{type_journey_creation_request_v2_logics.go => types/journey_creation_request_v2_logics.go} (77%) rename internal/provider/{type_journey_creation_request_v2_rules.go => types/journey_creation_request_v2_rules.go} (78%) rename internal/provider/{type_journey_creation_request_v2_settings.go => types/journey_creation_request_v2_settings.go} (87%) rename internal/provider/{type_journey_creation_request_v2_steps.go => types/journey_creation_request_v2_steps.go} (89%) create mode 100644 internal/sdk/.gitattributes create mode 100644 internal/sdk/.gitignore create mode 100644 internal/sdk/CONTRIBUTING.md create mode 100644 internal/sdk/internal/hooks/hooks.go create mode 100644 internal/sdk/internal/hooks/registration.go rename internal/sdk/{pkg => internal}/utils/contenttype.go (80%) rename internal/sdk/{pkg => internal}/utils/form.go (97%) rename internal/sdk/{pkg => internal}/utils/headers.go (66%) rename internal/sdk/{pkg => internal}/utils/json.go (88%) rename internal/sdk/{pkg => internal}/utils/pathparams.go (69%) create mode 100644 internal/sdk/internal/utils/queryparams.go rename internal/sdk/{pkg => internal}/utils/requestbody.go (92%) rename internal/sdk/{pkg => internal}/utils/retries.go (85%) rename internal/sdk/{pkg => internal}/utils/security.go (63%) rename internal/sdk/{pkg => internal}/utils/utils.go (60%) rename internal/sdk/{pkg/models/sdkerrors => models/errors}/sdkerror.go (87%) rename internal/sdk/{pkg => }/models/operations/createjourney.go (94%) rename internal/sdk/{pkg => }/models/operations/createjourneyv2.go (91%) rename internal/sdk/{pkg => }/models/operations/getjourney.go (94%) rename internal/sdk/{pkg => }/models/operations/getjourneyproducts.go (96%) rename internal/sdk/{pkg => }/models/operations/getjourneysbyorgid.go (93%) rename internal/sdk/{pkg => }/models/operations/getjourneyv2.go (92%) rename internal/sdk/{pkg => }/models/operations/options.go (66%) rename internal/sdk/{pkg => }/models/operations/patchupdatejourney.go (91%) rename internal/sdk/{pkg => }/models/operations/patchupdatejourneyv2.go (91%) rename internal/sdk/{pkg => }/models/operations/removejourney.go (93%) rename internal/sdk/{pkg => }/models/operations/removejourneyv2.go (93%) rename internal/sdk/{pkg => }/models/operations/searchjourneys.go (91%) rename internal/sdk/{pkg => }/models/operations/updatejourney.go (91%) rename internal/sdk/{pkg => }/models/operations/updatejourneyv2.go (91%) create mode 100644 internal/sdk/models/shared/getjourneysresponse.go rename internal/sdk/{pkg => }/models/shared/journey.go (73%) rename internal/sdk/{pkg => }/models/shared/journeycreationrequest.go (77%) rename internal/sdk/{pkg => }/models/shared/journeycreationrequestv2.go (83%) rename internal/sdk/{pkg => }/models/shared/journeyproductsresponse.go (55%) rename internal/sdk/{pkg => }/models/shared/journeyresponse.go (78%) rename internal/sdk/{pkg => }/models/shared/patchupdatejourneyrequest.go (58%) rename internal/sdk/{pkg => }/models/shared/searchjourneysqueryrequest.go (94%) rename internal/sdk/{pkg => }/models/shared/searchjourneysresponse.go (97%) rename internal/sdk/{pkg => }/models/shared/security.go (78%) delete mode 100644 internal/sdk/pkg/models/shared/getjourneysresponse.go delete mode 100644 internal/sdk/pkg/utils/queryparams.go create mode 100644 internal/sdk/retry/config.go rename internal/sdk/{pkg => }/types/bigint.go (87%) rename internal/sdk/{pkg => }/types/date.go (96%) rename internal/sdk/{pkg => }/types/datetime.go (90%) rename internal/sdk/{pkg => }/types/decimal.go (85%) rename internal/sdk/{pkg => }/types/pointers.go (82%) create mode 100644 openapi.yml create mode 100644 original_modified.yaml diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index fc89587..18a4856 100755 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,27 +1,75 @@ lockVersion: 2.0.0 id: 1afd37bc-cea9-4679-ac40-35ad5de414fc management: - docChecksum: 25eb21ef4a0c170c431dedb3401afc84 + docChecksum: a2a4e6e0c5d448a2079d174f9d7ed7fe docVersion: 1.0.0 - speakeasyVersion: internal - generationVersion: 2.230.1 - releaseVersion: 0.2.7 - configChecksum: ba1909901d42d5999d4327d01df604d8 + speakeasyVersion: 1.346.0 + generationVersion: 2.379.3 + releaseVersion: 0.3.2 + configChecksum: 6429bafb37993b177594dcd335dadc26 repoURL: https://github.com/epilot-dev/terraform-provider-epilot-journey.git repoSubDirectory: . published: true features: terraform: + additionalDependencies: 0.1.0 additionalProperties: 0.1.2 - constsAndDefaults: 0.1.2 - core: 3.8.1 - globalSecurity: 2.81.2 + constsAndDefaults: 0.1.4 + core: 3.24.3 + globalSecurity: 2.81.6 globalServerURLs: 2.82.1 + nullables: 0.0.0 retries: 2.81.1 generatedFiles: - internal/sdk/journeys.go - internal/sdk/journeysv2.go - internal/sdk/sdk.go + - internal/sdk/models/errors/sdkerror.go + - internal/sdk/retry/config.go + - internal/sdk/types/bigint.go + - internal/sdk/types/date.go + - internal/sdk/types/datetime.go + - internal/sdk/types/decimal.go + - internal/sdk/types/pointers.go + - internal/sdk/internal/utils/contenttype.go + - internal/sdk/internal/utils/form.go + - internal/sdk/internal/utils/headers.go + - internal/sdk/internal/utils/json.go + - internal/sdk/internal/utils/pathparams.go + - internal/sdk/internal/utils/queryparams.go + - internal/sdk/internal/utils/requestbody.go + - internal/sdk/internal/utils/retries.go + - internal/sdk/internal/utils/security.go + - internal/sdk/internal/utils/utils.go + - internal/sdk/models/operations/createjourney.go + - internal/sdk/models/operations/getjourney.go + - internal/sdk/models/operations/getjourneyproducts.go + - internal/sdk/models/operations/getjourneysbyorgid.go + - internal/sdk/models/operations/patchupdatejourney.go + - internal/sdk/models/operations/removejourney.go + - internal/sdk/models/operations/searchjourneys.go + - internal/sdk/models/operations/updatejourney.go + - internal/sdk/models/operations/createjourneyv2.go + - internal/sdk/models/operations/getjourneyv2.go + - internal/sdk/models/operations/patchupdatejourneyv2.go + - internal/sdk/models/operations/removejourneyv2.go + - internal/sdk/models/operations/updatejourneyv2.go + - internal/sdk/models/shared/journey.go + - internal/sdk/models/shared/journeycreationrequest.go + - internal/sdk/models/shared/journeyproductsresponse.go + - internal/sdk/models/shared/getjourneysresponse.go + - internal/sdk/models/shared/journeyresponse.go + - internal/sdk/models/shared/patchupdatejourneyrequest.go + - internal/sdk/models/shared/searchjourneysresponse.go + - internal/sdk/models/shared/searchjourneysqueryrequest.go + - internal/sdk/models/shared/journeycreationrequestv2.go + - internal/sdk/models/shared/security.go + - internal/sdk/.gitignore + - internal/sdk/models/operations/options.go + - internal/sdk/.gitattributes + - internal/sdk/internal/hooks/registration.go + - internal/sdk/internal/hooks/hooks.go + - internal/sdk/CONTRIBUTING.md - examples/README.md - go.mod - go.sum @@ -50,22 +98,6 @@ generatedFiles: - internal/provider/reflect/slice.go - internal/provider/reflect/struct.go - internal/provider/utils.go - - internal/sdk/pkg/models/sdkerrors/sdkerror.go - - internal/sdk/pkg/types/bigint.go - - internal/sdk/pkg/types/date.go - - internal/sdk/pkg/types/datetime.go - - internal/sdk/pkg/types/decimal.go - - internal/sdk/pkg/types/pointers.go - - internal/sdk/pkg/utils/contenttype.go - - internal/sdk/pkg/utils/form.go - - internal/sdk/pkg/utils/headers.go - - internal/sdk/pkg/utils/json.go - - internal/sdk/pkg/utils/pathparams.go - - internal/sdk/pkg/utils/queryparams.go - - internal/sdk/pkg/utils/requestbody.go - - internal/sdk/pkg/utils/retries.go - - internal/sdk/pkg/utils/security.go - - internal/sdk/pkg/utils/utils.go - internal/validators/DateValidator.go - internal/validators/ExactlyOneChild.go - internal/validators/JSONParseValidator.go @@ -82,44 +114,23 @@ generatedFiles: - main.go - terraform-registry-manifest.json - tools/tools.go - - internal/sdk/pkg/models/operations/createjourney.go - - internal/sdk/pkg/models/operations/getjourney.go - - internal/sdk/pkg/models/operations/getjourneyproducts.go - - internal/sdk/pkg/models/operations/getjourneysbyorgid.go - - internal/sdk/pkg/models/operations/patchupdatejourney.go - - internal/sdk/pkg/models/operations/removejourney.go - - internal/sdk/pkg/models/operations/searchjourneys.go - - internal/sdk/pkg/models/operations/updatejourney.go - - internal/sdk/pkg/models/operations/createjourneyv2.go - - internal/sdk/pkg/models/operations/getjourneyv2.go - - internal/sdk/pkg/models/operations/patchupdatejourneyv2.go - - internal/sdk/pkg/models/operations/removejourneyv2.go - - internal/sdk/pkg/models/operations/updatejourneyv2.go - - internal/sdk/pkg/models/shared/journey.go - - internal/sdk/pkg/models/shared/journeycreationrequest.go - - internal/sdk/pkg/models/shared/journeyproductsresponse.go - - internal/sdk/pkg/models/shared/getjourneysresponse.go - - internal/sdk/pkg/models/shared/journeyresponse.go - - internal/sdk/pkg/models/shared/patchupdatejourneyrequest.go - - internal/sdk/pkg/models/shared/searchjourneysresponse.go - - internal/sdk/pkg/models/shared/searchjourneysqueryrequest.go - - internal/sdk/pkg/models/shared/journeycreationrequestv2.go - - internal/sdk/pkg/models/shared/security.go - - internal/provider/type_journey_creation_request_v2_design.go - - internal/provider/type_journey_creation_request_v2_logics.go - - internal/provider/type_journey_creation_request_v2_rules.go - - internal/provider/type_journey_creation_request_v2_button.go - - internal/provider/type_journey_creation_request_v2_embed_options.go - - internal/provider/type_journey_creation_request_v2_settings.go - - internal/provider/type_journey_creation_request_v2_steps.go + - internal/provider/types/journey_creation_request_v2_context_schema.go + - internal/provider/types/journey_creation_request_v2_design.go + - internal/provider/types/journey_creation_request_v2_logics.go + - internal/provider/types/journey_creation_request_v2_rules.go + - internal/provider/types/journey_creation_request_v2_button.go + - internal/provider/types/journey_creation_request_v2_embed_options.go + - internal/provider/types/journey_creation_request_v2_settings.go + - internal/provider/types/journey_creation_request_v2_steps.go - USAGE.md - internal/provider/provider.go - examples/provider/provider.tf + - examples/resources/epilot-journey_journey/import.sh - internal/provider/journey_resource.go - internal/provider/journey_resource_sdk.go - examples/resources/epilot-journey_journey/resource.tf - internal/provider/journey_data_source.go - internal/provider/journey_data_source_sdk.go - examples/data-sources/epilot-journey_journey/data-source.tf - - internal/sdk/pkg/models/operations/options.go - .gitattributes + - CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..d585717 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,26 @@ +# Contributing to This Repository + +Thank you for your interest in contributing to this repository. Please note that this repository contains generated code. As such, we do not accept direct changes or pull requests. Instead, we encourage you to follow the guidelines below to report issues and suggest improvements. + +## How to Report Issues + +If you encounter any bugs or have suggestions for improvements, please open an issue on GitHub. When reporting an issue, please provide as much detail as possible to help us reproduce the problem. This includes: + +- A clear and descriptive title +- Steps to reproduce the issue +- Expected and actual behavior +- Any relevant logs, screenshots, or error messages +- Information about your environment (e.g., operating system, software versions) + - For example can be collected using the `npx envinfo` command from your terminal if you have Node.js installed + +## Issue Triage and Upstream Fixes + +We will review and triage issues as quickly as possible. Our goal is to address bugs and incorporate improvements in the upstream source code. Fixes will be included in the next generation of the generated code. + +## Contact + +If you have any questions or need further assistance, please feel free to reach out by opening an issue. + +Thank you for your understanding and cooperation! + +The Maintainers diff --git a/Makefile b/Makefile index 6472c73..a068a38 100644 --- a/Makefile +++ b/Makefile @@ -2,17 +2,19 @@ all: speakeasy docs original.yaml: - curl https://docs.api.epilot.io/journey-config.yaml > original.yaml +# curl https://docs.api.epilot.io/file.yaml > original.yaml + cp openapi.yml original.yaml -original_modified.yaml: original.yaml - cp original.yaml original_modified.yaml +original_modified.yaml: original.yaml overlay.yaml + speakeasy overlay apply -s original.yaml -o overlay.yaml > original_modified.yaml overlay.yaml: speakeasy overlay compare -s original.yaml -s original_modified.yaml > overlay.yaml speakeasy: $(eval TMP := $(shell mktemp -d)) - curl https://docs.api.epilot.io/journey-config.yaml > $(TMP)/openapi.yaml +# curl https://docs.api.epilot.io/file.yaml > $(TMP)/openapi.yaml + cp openapi.yml $(TMP)/openapi.yaml speakeasy overlay apply -s $(TMP)/openapi.yaml -o overlay.yaml > $(TMP)/final.yaml speakeasy generate sdk --lang terraform -o . -s $(TMP)/final.yaml diff --git a/README.md b/README.md index 5b86f46..8c4931c 100755 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ terraform { required_providers { epilot-journey = { source = "epilot-dev/epilot-journey" - version = "0.2.7" + version = "0.3.2" } } } diff --git a/docs/data-sources/journey.md b/docs/data-sources/journey.md index a19749d..f21177e 100644 --- a/docs/data-sources/journey.md +++ b/docs/data-sources/journey.md @@ -14,27 +14,35 @@ Journey DataSource ```terraform data "epilot-journey_journey" "my_journey" { - journey_id = "509cdffe-424f-457a-95c2-9708c304ce77" + id = "509cdffe-424f-457a-95c2-9708c304ce77" } ``` ## Schema -### Required - -- `journey_id` (String) Journey ID - ### Read-Only - `brand_id` (String) +- `context_schema` (Attributes List) (see [below for nested schema](#nestedatt--context_schema)) - `design` (Attributes) (see [below for nested schema](#nestedatt--design)) +- `journey_id` (String) - `logics` (Attributes List) (see [below for nested schema](#nestedatt--logics)) - `name` (String) - `rules` (Attributes List) (see [below for nested schema](#nestedatt--rules)) - `settings` (Attributes) (see [below for nested schema](#nestedatt--settings)) - `steps` (Attributes List) (see [below for nested schema](#nestedatt--steps)) + +### Nested Schema for `context_schema` + +Read-Only: + +- `is_required` (Boolean) +- `param_key` (String) +- `type` (String) + + ### Nested Schema for `design` @@ -74,6 +82,7 @@ Read-Only: - `description` (String) - `design_id` (String) - `embed_options` (Attributes) (see [below for nested schema](#nestedatt--settings--embed_options)) +- `entity_id` (String) - `entity_tags` (List of String) - `file_purposes` (List of String) - `mappings_automation_id` (String) diff --git a/docs/index.md b/docs/index.md index 98897c4..673adad 100644 --- a/docs/index.md +++ b/docs/index.md @@ -17,7 +17,7 @@ terraform { required_providers { epilot-journey = { source = "epilot-dev/epilot-journey" - version = "0.2.7" + version = "0.3.2" } } } diff --git a/docs/resources/journey.md b/docs/resources/journey.md index 79de396..5db7445 100644 --- a/docs/resources/journey.md +++ b/docs/resources/journey.md @@ -15,20 +15,21 @@ Journey Resource ```terraform resource "epilot-journey_journey" "my_journey" { brand_id = "...my_brand_id..." + id = "509cdffe-424f-457a-95c2-9708c304ce77" journey_id = "...my_journey_id..." - name = "Dianne Kiehn" + name = "Nathaniel Von" steps = [ { - hide_next_button = false - name = "Pearl Ondricka" + hide_next_button = true + name = "Devin Lehner" schema = "{ \"see\": \"documentation\" }" - show_step_name = true - show_stepper = true + show_step_name = false + show_stepper = false show_stepper_labels = true show_step_subtitle = true step_id = "...my_step_id..." sub_title = "...my_sub_title..." - title = "Ms." + title = "Dr." uischema = "{ \"see\": \"documentation\" }" }, ] @@ -46,8 +47,9 @@ resource "epilot-journey_journey" "my_journey" { ### Optional - `brand_id` (String) +- `context_schema` (Attributes List) (see [below for nested schema](#nestedatt--context_schema)) - `design` (Attributes) (see [below for nested schema](#nestedatt--design)) -- `journey_id` (String) Journey ID +- `journey_id` (String) - `logics` (Attributes List) (see [below for nested schema](#nestedatt--logics)) - `rules` (Attributes List) (see [below for nested schema](#nestedatt--rules)) - `settings` (Attributes) (see [below for nested schema](#nestedatt--settings)) @@ -70,6 +72,16 @@ Optional: - `uischema` (String) Parsed as JSON. + +### Nested Schema for `context_schema` + +Optional: + +- `is_required` (Boolean) +- `param_key` (String) Not Null +- `type` (String) Not Null + + ### Nested Schema for `design` @@ -109,6 +121,7 @@ Optional: - `description` (String) - `design_id` (String) - `embed_options` (Attributes) (see [below for nested schema](#nestedatt--settings--embed_options)) +- `entity_id` (String) - `entity_tags` (List of String) - `file_purposes` (List of String) - `mappings_automation_id` (String) @@ -137,4 +150,10 @@ Optional: - `align` (String) must be one of ["left", "center", "right"] - `text` (String) +## Import + +Import is supported using the following syntax: +```shell +terraform import epilot-journey_journey.my_epilot-journey_journey "" +``` diff --git a/examples/bigggg/bla.tf b/examples/bigggg/bla.tf new file mode 100644 index 0000000..480e694 --- /dev/null +++ b/examples/bigggg/bla.tf @@ -0,0 +1,25 @@ +# Provider definitions +terraform { + required_providers { + epilot-journey = { + source = "epilot-dev/epilot-journey" + version = "1.0.1" + } + } +} + +# Variables +variable "epilot_auth" { + type = string +} +variable "journey_api_url" { + type = string + default = "https://journey-config.sls.epilot.io" +} + +# Providers configuration +provider "epilot-journey" { + epilot_auth = var.epilot_auth + server_url = var.journey_api_url +} +# resource "epilot-journey_journey" "journey_bla" {} \ No newline at end of file diff --git a/examples/bigggg/gen.tf b/examples/bigggg/gen.tf new file mode 100644 index 0000000..c69dacc --- /dev/null +++ b/examples/bigggg/gen.tf @@ -0,0 +1,511 @@ +# epilot-journey_journey.journey_bla: +resource "epilot-journey_journey" "journey_bla" { + context_schema = [] + design = { + logo_url = "https://go.epilot.cloud/designs/66/logo/2560px-Enercity_Logo.svg_(1).png" + theme = { + "breakpoints" = jsonencode( + { + values = { + lg = 1200 + md = 900 + sm = 600 + xl = 1920 + xs = 0 + } + } + ) + "muiOverrides" = jsonencode( + { + MuiAppBar = { + colorPrimary = { + background = "linear-gradient(90deg, #9a0097, #ff0000)" + backgroundColor = "#005EB4FF" + } + } + MuiAutocomplete = { + inputRoot = { + "&[class*='MuiFilledInput-root']" = { + padding = "0 !important" + } + } + listbox = { + "& li[aria-selected='true']" = { + color = "#ffffff" + } + } + } + MuiButton = { + containedPrimary = { + background = "linear-gradient(90deg, rgba(154, 0, 151, 255), rgba(255, 0, 0, 1))" + borderRadius = "9999px" + } + text = { + backgroundColor = "#ffffff !important" + } + } + MuiCardContent = { + root = { + "&:last-child" = { + paddingBottom = "24px" + } + padding = "24px" + } + } + MuiCheckbox = { + root = { + border = "1px" + color = "#c7125c" + } + } + MuiDivider = { + root = { + backgroundColor = "transparent" + color = "transparent" + } + } + MuiFilledInput = { + root = { + "&.Mui-focused" = { + backgroundColor = "#ffffff" + border = "1px solid #c7125c" + borderColor = "#c7125c !important" + borderWidth = "2px !important" + } + "&:hover" = { + backgroundColor = "#fcf8fc" + borderColor = "#c7125c" + } + backgroundColor = "#ffffff" + borderColor = "#c7125c" + } + } + MuiFormControl = { + root = { + "& .MuiInputLabel-root" = { + color = "#5b5b5b !important" + fontSize = "13px" + marginBottom = "5px" + position = "static" + transform = "translate(0) !important" + } + } + } + MuiFormHelperText = { + root = { + whiteSpace = "nowrap" + } + } + MuiFormLabel = { + root = { + overflow = "hidden" + textOverflow = "ellipsis" + whiteSpace = "nowrap" + } + } + MuiInputAdornment = { + filled = { + color = "#c7125cFF !important" + } + } + MuiInputBase = { + input = { + border = "0" + boxSizing = "border-box" + color = "#222222FF" + height = "48px" + padding = "10px 12px !important" + } + } + MuiPaper = { + root = { + "& .section-title" = { + textAlign = "center" + } + "&.MuiCard-root.MuiPaper-elevation2.MuiPaper-rounded" = { + background = "transparent !important" + border = "solid 2px #ffffff" + boxShadow = "0 8px 48px #00000014" + } + backgroundColor = "#fdfcfd" + } + } + MuiTabPanel = { + root = { + "& .MuiPaper-root" = { + borderRadius = "0px 4px 4px 4px" + } + padding = 0 + } + } + MuiTabs = { + flexContainer = { + "& .Mui-selected path" = { + fill = "#005EB4FF" + } + marginTop = "8px" + } + root = { + minHeight = 40 + overflow = "visible" + visibility = "hidden" + } + } + MuiToggleButton = { + root = { + "&$disabled" = { + "& .MuiToggleButton-label" = { + color = "#8C9DAD" + } + backgroundColor = "#E6EEF7" + } + "&$selected" = { + "& .MuiToggleButton-label" = { + color = "#ffffff" + } + "&:hover" = { + backgroundColor = "#c7125c" + } + backgroundColor = "#c7125c !important" + borderColor = "#c7125c !important" + borderRight = "1px solid #039BE5FF !important" + } + "&:hover" = { + backgroundColor = "#ffffff" + } + backgroundColor = "#ffffff" + borderColor = "#c7125c !important" + color = "#222222FF" + fontWeight = 600 + height = "32px" + } + } + MuiTypography = { + h5 = { + color = "transparent !important" + } + } + } + ) + "muiProps" = jsonencode( + { + MuiAppBar = { + elevation = 0 + position = "static" + square = true + } + MuiButton = { + containedPrimary = { + elevation = 1 + } + } + MuiCard = { + elevation = 0 + } + } + ) + "palette" = jsonencode( + { + accent1 = { + "100" = "#FFCABA" + "200" = "#FFA78E" + "300" = "#FF8461" + "50" = "#FBE8E6" + "500" = "#FF6A3F" + "600" = "#F44719" + contrastText = "#FFFFFF" + main = "#FF6A3F" + } + accent2 = { + "100" = "#BEECF6" + "200" = "#99E0EF" + "300" = "#77D4E7" + "400" = "#62CBE2" + "50" = "#E5F7FB" + "500" = "#59C3DC" + contrastText = "#172B4D" + main = "#99E0EF" + } + action = { + active = "#324C66" + disabled = "#E6EEF7" + focus = "#324C66" + hover = "#EFF5FA" + selected = "#324C66" + selectedText = "#ffffff" + } + background = { + default = "#FFFFFFFF" + } + divider = "#DEEAF7" + error = { + "100" = "#FFC9CF" + "200" = "#FB9393" + "300" = "#F46668" + "500" = "#FF3A3F" + contrastText = "#FFFFFF" + main = "#FF3A3FFF" + } + focus = { + "100" = "#CBC0F7" + "200" = "#A797F2" + "300" = "#806CEF" + "500" = "#5B4CEC" + contrastText = "#FFFFFF" + dark = "#5B4CEC" + main = "#5B4CEC" + } + grey = { + "10" = "#FCFEFF" + "100" = "#8C9DAD" + "20" = "#f7f7f7" + "200" = "#7E8D9C" + "30" = "#EDF2F7" + "300" = "#6F7C8A" + "40" = "#E6EEF7" + "400" = "#596775" + "50" = "#DEEAF7" + "500" = "#505E6B" + "60" = "#D5E1ED" + "600" = "#44525E" + "70" = "#C5D0DB" + "700" = "#35434F" + "80" = "#AFBCC9" + "800" = "#27333D" + "90" = "#9DADBD" + "900" = "#263847" + A100 = "#D5D5D5" + A200 = "#AAAAAA" + A400 = "#616161" + A700 = "#303030" + } + info = { + "100" = "#ACE2FF" + "200" = "#70CFFF" + "50" = "#DEF4FF" + "500" = "#26BCFC" + contrastText = "#172B4D" + main = "#26BCFC" + } + primary = { + "100" = "#EDF9FF" + "200" = "#D9F1FC" + "300" = "#ADDFF7" + "400" = "#65C8F7" + "50" = "#F7FBFD" + "500" = "#039BE5" + "600" = "#0F5B99" + "700" = "#28527D" + "800" = "#1B3855" + "900" = "#152B42" + contrastText = "#FFFFFF" + main = "#c7125c" + } + secondary = { + "100" = "#FFCABA" + "200" = "#FFA78E" + "300" = "#FF8461" + "50" = "#FBE8E6" + "500" = "#FF6A3F" + "600" = "#F44719" + contrastText = "#FFFFFF" + main = "#1D2036" + } + success = { + "100" = "#B1E4D0" + "200" = "#7AD3B2" + "50" = "#DFF4EC" + "500" = "#13BB89" + contrastText = "#FFFFFF" + main = "#13BB89" + } + tertiary = { + "100" = "#BEECF6" + "200" = "#99E0EF" + "300" = "#77D4E7" + "400" = "#62CBE2" + "50" = "#E5F7FB" + "500" = "#59C3DC" + contrastText = "#172B4D" + main = "#99E0EF" + } + text = { + primary = "#c7125c" + secondary = "#222222FF" + } + warning = { + "100" = "#FFE3B0" + "200" = "#FFD17C" + "50" = "#FFF4DF" + "500" = "#FFBF44" + contrastText = "#172B4D" + main = "#FFBF44" + } + } + ) + "shape" = jsonencode( + { + borderRadius = 12 + } + ) + "spacing" = "4" + "typography" = jsonencode( + { + body1 = { + color = "#222222FF" + } + body2 = { + color = "#222222FF" + fontSize = "14px" + lineHeight = "157%" + } + button = { + fontSize = 16 + height = "48px" + textTransform = "none" + } + caption = { + color = "#222222FF" + fontSize = "12px" + lineHeight = "150%" + } + fontFamily = "Euclid_Circular_A_Regular" + fontSize = 14 + fontSource = [ + { + fontDisplay = "swap" + fontFamily = "Euclid_Circular_A_Regular" + fontStyle = "regular" + fontWeight = 400 + src = "url('https://go.epilot.cloud/designs/66/font/Euclid_Circular_A_Regular.ttf')" + }, + ] + fontWeightBold = 600 + fontWeightRegular = 400 + h1 = { + "@media (max-width:600px)" = { + fontSize = "24px" + fontWeight = 600 + marginLeft = "24px" + } + color = "#c7125cFF" + fontSize = "32px" + } + h2 = { + "-webkit-background-clip" = "text" + "@media (max-width:600px)" = { + fontSize = "20px" + fontWeight = 600 + } + background = "linear-gradient(90deg, #9a0097, #ff0000)" + backgroundClip = "text" + color = "transparent" + display = "inline" + fontSize = "24px" + } + h3 = { + "-webkit-background-clip" = "text" + "@media (max-width:600px)" = { + fontSize = "40px" + } + background = "linear-gradient(90deg, #9a0097, #ff0000)" + backgroundClip = "text" + color = "transparent" + display = "inline" + } + h4 = { + "-webkit-background-clip" = "text" + background = "linear-gradient(90deg, #9a0097, #ff0000)" + backgroundClip = "text" + color = "transparent" + display = "inline" + } + h5 = { + "-webkit-background-clip" = "text" + background = "linear-gradient(90deg, #9a0097, #ff0000)" + backgroundClip = "text" + color = "transparent" + display = "inline" + } + h6 = { + "-webkit-background-clip" = "text" + background = "linear-gradient(90deg, #9a0097, #ff0000)" + backgroundClip = "text" + color = "transparent" + display = "inline" + } + overline = { + fontSize = 12 + lineHeight = "150%" + textTransform = "uppercase" + } + subtitle1 = { + fontSize = 16 + lineHeight = "150%" + } + subtitle2 = { + fontSize = 14 + lineHeight = "150%" + } + } + ) + } + } + journey_id = "66298520-5bb5-11ef-a094-b9c50d1aa040" + logics = [] + name = "Neue Journey erstellen" + rules = [] + settings = { + design_id = "1d003ea8-72cc-4f75-86d6-635f992538db" + entity_id = "c7b3d2ae-1f33-438b-a437-5555e4115c83" + entity_tags = [] + file_purposes = [] + mappings_automation_id = "38d516e7-27a5-42f1-9b58-abbc8ba065ac" + runtime_entities = [ + "OPPORTUNITY", + ] + safe_mode_automation = true + template_id = "df1ab4d0-b284-11ed-a2ff-b797508f696a" + } + steps = [ + { + hide_next_button = true + name = "Launcher step" + schema = jsonencode( + { + properties = { + "Launcher block" = { + type = "object" + } + } + type = "object" + } + ) + step_id = "New step" + uischema = jsonencode( + { + elements = [ + [ + { + options = { + showPaper = true + stickyOnMobile = false + stickyOnMobileIndex = 1 + } + scope = "#/properties/Launcher block" + type = "JourneyLauncherControl" + }, + ], + [], + [], + [], + ] + options = { + scale = 5 + } + type = "MainContentCartLayout" + } + ) + }, + ] +} diff --git a/examples/bigggg/journey_5255eaaefdef4f179207831b2ccfab47.tf b/examples/bigggg/journey_5255eaaefdef4f179207831b2ccfab47.tf new file mode 100644 index 0000000..a6b1559 --- /dev/null +++ b/examples/bigggg/journey_5255eaaefdef4f179207831b2ccfab47.tf @@ -0,0 +1,15320 @@ +# # epilot-journey_journey.journey_5255eaaefdef4f179207831b2ccfab47: +# resource "epilot-journey_journey" "journey_5255eaaefdef4f179207831b2ccfab47" { +# design = { +# logo_url = "https://go.epilot.cloud/designs/16581920/logo/gelsenwasser-energienetze-logo-full.svg" +# theme = { +# "breakpoints" = jsonencode( +# { +# values = { +# lg = 1200 +# md = 900 +# sm = 600 +# xl = 1920 +# xs = 0 +# } +# } +# ) +# "muiOverrides" = jsonencode( +# { +# MuiAppBar = { +# colorPrimary = { +# backgroundColor = "#ffffffFF" +# } +# } +# MuiAutocomplete = { +# inputRoot = { +# "&[class*='MuiFilledInput-root']" = { +# padding = "0 !important" +# } +# } +# listbox = { +# "& li[aria-selected='true']" = { +# color = "#ffffff" +# } +# } +# } +# MuiCardContent = { +# root = { +# "&:last-child" = { +# paddingBottom = "24px" +# } +# padding = "24px" +# } +# } +# MuiFormHelperText = { +# root = { +# whiteSpace = "nowrap" +# } +# } +# MuiFormLabel = { +# root = { +# overflow = "hidden" +# textOverflow = "ellipsis" +# whiteSpace = "nowrap" +# } +# } +# MuiInputBase = { +# input = { +# boxSizing = "border-box" +# color = "#29343aFF" +# height = "48px" +# padding = "22px 12px 6px !important" +# } +# } +# MuiPaper = { +# root = { +# backgroundColor = "#FFFFFFFF" +# } +# } +# MuiTabPanel = { +# root = { +# "& .MuiPaper-root" = { +# borderRadius = "0px 4px 4px 4px" +# } +# padding = 0 +# } +# } +# MuiTabs = { +# flexContainer = { +# "& .Mui-selected path" = { +# fill = "#00467DFF" +# } +# marginTop = "8px" +# } +# root = { +# minHeight = 40 +# overflow = "visible" +# } +# } +# MuiToggleButton = { +# root = { +# "&$disabled" = { +# "& .MuiToggleButton-label" = { +# color = "#8C9DAD" +# } +# backgroundColor = "#E6EEF7" +# } +# "&$selected" = { +# "& .MuiToggleButton-label" = { +# color = "#ffffff" +# } +# "&:hover" = { +# backgroundColor = "#00467DFF" +# } +# backgroundColor = "#00467DFF !important" +# borderColor = "#00467DFF !important" +# borderRight = "1px solid #00467DFF !important" +# } +# "&:hover" = { +# backgroundColor = "#ffffff" +# } +# backgroundColor = "#ffffff" +# borderColor = "#C5D0DB !important" +# color = "#29343aFF" +# fontWeight = 600 +# height = "32px" +# } +# } +# } +# ) +# "muiProps" = jsonencode( +# { +# MuiAppBar = { +# elevation = 0 +# position = "static" +# square = true +# } +# MuiCard = { +# elevation = 1 +# } +# } +# ) +# "palette" = jsonencode( +# { +# accent1 = { +# "100" = "#FFCABA" +# "200" = "#FFA78E" +# "300" = "#FF8461" +# "50" = "#FBE8E6" +# "500" = "#FF6A3F" +# "600" = "#F44719" +# contrastText = "#FFFFFF" +# main = "#FF6A3F" +# } +# accent2 = { +# "100" = "#BEECF6" +# "200" = "#99E0EF" +# "300" = "#77D4E7" +# "400" = "#62CBE2" +# "50" = "#E5F7FB" +# "500" = "#59C3DC" +# contrastText = "#172B4D" +# main = "#99E0EF" +# } +# action = { +# active = "#324C66" +# disabled = "#E6EEF7" +# focus = "#324C66" +# hover = "#EFF5FA" +# selected = "#324C66" +# selectedText = "#ffffff" +# } +# background = { +# default = "#FFFFFFFF" +# } +# divider = "#DEEAF7" +# error = { +# "100" = "#FFC9CF" +# "200" = "#FB9393" +# "300" = "#F46668" +# "500" = "#FF3A3F" +# contrastText = "#FFFFFF" +# main = "#FF3A3FFF" +# } +# focus = { +# "100" = "#CBC0F7" +# "200" = "#A797F2" +# "300" = "#806CEF" +# "500" = "#5B4CEC" +# contrastText = "#FFFFFF" +# dark = "#5B4CEC" +# main = "#5B4CEC" +# } +# grey = { +# "10" = "#FCFEFF" +# "100" = "#8C9DAD" +# "20" = "#F5F7FA" +# "200" = "#7E8D9C" +# "30" = "#EDF2F7" +# "300" = "#6F7C8A" +# "40" = "#E6EEF7" +# "400" = "#596775" +# "50" = "#DEEAF7" +# "500" = "#505E6B" +# "60" = "#D5E1ED" +# "600" = "#44525E" +# "70" = "#C5D0DB" +# "700" = "#35434F" +# "80" = "#AFBCC9" +# "800" = "#27333D" +# "90" = "#9DADBD" +# "900" = "#263847" +# A100 = "#D5D5D5" +# A200 = "#AAAAAA" +# A400 = "#616161" +# A700 = "#303030" +# } +# info = { +# "100" = "#ACE2FF" +# "200" = "#70CFFF" +# "50" = "#DEF4FF" +# "500" = "#26BCFC" +# contrastText = "#172B4D" +# main = "#26BCFC" +# } +# primary = { +# "100" = "#EDF9FF" +# "200" = "#D9F1FC" +# "300" = "#ADDFF7" +# "400" = "#65C8F7" +# "50" = "#F7FBFD" +# "500" = "#039BE5" +# "600" = "#0F5B99" +# "700" = "#28527D" +# "800" = "#1B3855" +# "900" = "#152B42" +# contrastText = "#FFFFFF" +# main = "#00467DFF" +# } +# secondary = { +# "100" = "#FFCABA" +# "200" = "#FFA78E" +# "300" = "#FF8461" +# "50" = "#FBE8E6" +# "500" = "#FF6A3F" +# "600" = "#F44719" +# contrastText = "#FFFFFF" +# main = "#00c713FF" +# } +# success = { +# "100" = "#B1E4D0" +# "200" = "#7AD3B2" +# "50" = "#DFF4EC" +# "500" = "#13BB89" +# contrastText = "#FFFFFF" +# main = "#13BB89" +# } +# tertiary = { +# "100" = "#BEECF6" +# "200" = "#99E0EF" +# "300" = "#77D4E7" +# "400" = "#62CBE2" +# "50" = "#E5F7FB" +# "500" = "#59C3DC" +# contrastText = "#172B4D" +# main = "#99E0EF" +# } +# text = { +# primary = "#00467DFF" +# secondary = "#29343aFF" +# } +# warning = { +# "100" = "#FFE3B0" +# "200" = "#FFD17C" +# "50" = "#FFF4DF" +# "500" = "#FFBF44" +# contrastText = "#172B4D" +# main = "#FFBF44" +# } +# } +# ) +# "shape" = jsonencode( +# { +# borderRadius = 4 +# } +# ) +# "spacing" = "4" +# "typography" = jsonencode( +# { +# body1 = { +# color = "#29343aFF" +# } +# body2 = { +# color = "#29343aFF" +# fontSize = "14px" +# lineHeight = "157%" +# } +# button = { +# fontSize = 16 +# height = "48px" +# textTransform = "none" +# } +# caption = { +# color = "#29343aFF" +# fontSize = "12px" +# lineHeight = "150%" +# } +# fontFamily = "ProximaNova" +# fontSize = 14 +# fontSource = [ +# { +# fontDisplay = "swap" +# fontFamily = "ProximaNova" +# fontStyle = "regular" +# fontWeight = 400 +# src = "url('https://go.epilot.cloud/elements-static/fonts/ProximaNova-Regular.woff')" +# }, +# ] +# fontWeightBold = 600 +# fontWeightRegular = 400 +# h1 = { +# "@media (max-width:600px)" = { +# fontSize = "24px" +# fontWeight = 600 +# marginLeft = "24px" +# } +# color = "#00467DFF" +# fontSize = "32px" +# } +# h2 = { +# "@media (max-width:600px)" = { +# fontSize = "20px" +# fontWeight = 600 +# } +# color = "#00467DFF" +# fontSize = "24px" +# } +# h3 = { +# "@media (max-width:600px)" = { +# fontSize = "40px" +# } +# color = "#00467DFF" +# } +# h4 = { +# color = "#00467DFF" +# } +# h5 = { +# color = "#00467DFF" +# } +# h6 = { +# color = "#00467DFF" +# } +# overline = { +# fontSize = 12 +# lineHeight = "150%" +# textTransform = "uppercase" +# } +# subtitle1 = { +# fontSize = 16 +# lineHeight = "150%" +# } +# subtitle2 = { +# fontSize = 14 +# lineHeight = "150%" +# } +# } +# ) +# } +# } + +# logics = [ +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Angaben zum Zähler##", +# ] +# conditions = [ +# "$$Kopie von Messung/Auswahl Messkonzept$$::=::%%MK 0 %%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Auswahl Messstellenbetreiber MK0 Z1$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Angaben zum Zähler/Auftragsgrund Einbau MK0 Z1##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Auswahl Grund MK0 Z1$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Auswahl Grund MK0 Z1$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Auszubauende Geräte/Grund Demontage des Zählers Z Ausbau##", +# ] +# conditions = [ +# "$$Auszubauende Geräte/Grund Ausbau Z Ausbau$$::=::%%Demontage des Zählers%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Angaben zum Zähler/Auftragsgrund Wechsel MK0 Z1##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Auswahl Grund MK0 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Angaben zum Zähler MK0##", +# ] +# conditions = [ +# "$$Kopie von Messung/Auswahl Messkonzept$$::=::%%MK 1 %%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK0/Auftragsgrund Einbau MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Auswahl Grund MK1 Z1$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK0/Auftragsgrund Wechsel MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Auswahl Grund MK1 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Auswahl Messstellenbetreiber MK1 Z1$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Auswahl Grund MK1 Z1$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK05619/Einspeiseleistung MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Wahl Einspeiser MK2 Z1$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK05619/Auftragsgrund Einbau MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Auswahl Grund MK2 Z1$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK05619/Auftragsgrund Wechsel MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Auswahl Grund MK2 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK05619/Wahl Einspeiser MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Auswahl Grund MK2 Z1$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Ausführung des Zähler MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK02607/Gewünschte Messeinrichtung MK2 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Angaben zum Zähler MK05619##", +# ] +# conditions = [ +# "$$Kopie von Messung/Auswahl Messkonzept$$::=::%%MK 2%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Auswahl Messstellenbetreiber MK2 Z1$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Auswahl Grund MK2 Z1$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK05619/Steuerung nach 14a MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Wahl Bedarfsart Anlage MK2 Z1$$::CONTEITHER::%%Wärmepumpe inkl. Zusatzheizung///private Ladeeinrichtung///Klimanlagen///Anlage zur Stromspeicherung%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK05619/Anzahl Wohneinheiten MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Wahl Bedarfsart Anlage MK2 Z1$$::CONTEITHER::%%Haushalt///Gewerbe///Wohn / Gewerbe///Landwirtschaft%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Angaben zum Zähler/Steuerung nach 14a MK0 Z1##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Wahl Bedarfsart 14a MK0 Z1$$::CONTEITHER::%%Wärmepumpe inkl. Zusatzheizung §14a EnWG///private Ladeeinrichtung §14a EnWG///Klimanlagen §14a EnWG///Anlage zur Stromspeicherung §14a EnWG%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Messart des Zähler RLM MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK02607/Bestands RLM MK2 Z1$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Bestätigung RLM Zähler MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK02607/Messart des Zähler MK2 Z1$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Messart des Zähler MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK02607/Bestands RLM MK2 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3/Eigentumsnummer des bereits vorhandenen Zählers MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3/Auswahl Zähler aus MK3 Z1 $$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3/Auswahl Zähler aus MK3 Z1 $$::=::%%Nein%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK05619/Bestätigung Einspeisemangement MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Einspeiseleistung MK2 Z1$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK05619/Upload Einspeisemanagement MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Bestätigung Einspeisemangement MK2 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK0/Bestätigung Einspeisemanagent MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Einspeiseleistung in kVA MK1 Z1$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK0/Upload Einspeisemanagement MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Bestätigung Einspeisemanagent MK1 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Messart RLM wenn Einspeisung 100 MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Einspeiseleistung MK2 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Bestands RLM MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Einspeiseleistung MK2 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Gewünschte Messeinrichtung MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Einspeiseleistung MK2 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Gewünschte Messeinrichtung RLM MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Einspeiseleistung MK2 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Zählernummer des Mittelspannungszählers MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK02607/Untermessung Mittelspannung MK2 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Schwachlast Regelung MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK02607/Gewünschte Messeinrichtung MK2 Z1$$::=::%%Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Befestigungsart RLM MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK02607/Gewünschte Messeinrichtung RLM MK2 Z1$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Befestigungsart MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK02607/Gewünschte Messeinrichtung MK2 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler///Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Angaben zum Zähler MK3##", +# ] +# conditions = [ +# "$$Kopie von Messung/Auswahl Messkonzept$$::=::%%MK 3%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Messart RLM wenn Einspeisung 100 MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Einspeiseleistung in kVA MK1 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Bestands RLM MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Einspeiseleistung in kVA MK1 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Messart des Zähler RLM MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK26656/Bestands RLM MK1 Z1$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Messart des Zähler MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK26656/Bestands RLM MK1 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Bestätigung RLM Zähler MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK26656/Messart des Zähler MK1 Z1$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Gewünschte Messeinrichtung MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Einspeiseleistung in kVA MK1 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Gewünschte Messeinrichtung RLM MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Einspeiseleistung in kVA MK1 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Ausführung des Zähler MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK26656/Gewünschte Messeinrichtung MK1 Z1$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Befestigungsart MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK26656/Gewünschte Messeinrichtung MK1 Z1$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Befestigungsart RLM MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK26656/Gewünschte Messeinrichtung RLM MK1 Z1$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Zählernummer des Mittelspannungszählers MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK26656/Untermessung Mittelspannung MK1 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Kein Zählerwechsel notwendig MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK02607/Wechsel ohne Gerätetausch MK2 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z1/Auftragsgrund Einbau MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Auswahl Grund MK3 Z2$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z1/Auftragsgrund Wechsel MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Auswahl Grund MK3 Z2$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z1/Wahl Einspeiser MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Auswahl Grund MK3 Z2$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Auswahl Grund MK3 Z2$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Messart RLM wenn Einspeisung 100 MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Einspeiseleistung MK3 Z2$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Bestands RLM MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Einspeiseleistung MK3 Z2$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Messart des Zähler RLM MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z1/Bestands RLM MK3 Z2$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Messart des Zähler MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z1/Bestands RLM MK3 Z2$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Bestätigung RLM Zähler MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z1/Messart des Zähler MK3 Z2$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Gewünschte Messeinrichtung MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Einspeiseleistung MK3 Z2$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Gewünschte Messeinrichtung RLM MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Einspeiseleistung MK3 Z2$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Ausführung des Zähler MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z1/Gewünschte Messeinrichtung MK3 Z2$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Befestigungsart MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z1/Gewünschte Messeinrichtung MK3 Z2$$::IN::%%Drehstromzähler///Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Befestigungsart RLM MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z1/Gewünschte Messeinrichtung RLM MK3 Z2$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Zählernummer des Mittelspannungszählers MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z1/Untermessung Mittelspannung MK3 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Abfrage welcher Zähler MK36008/Eigentumsnummer des bereits vorhandenen Zählers MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK36008/Auswahl Zähler aus MK4 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK36008##", +# ] +# conditions = [ +# "$$Kopie von Messung/Auswahl Messkonzept$$::=::%%MK 4%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK36008/Auswahl Zähler aus MK4 Z1$$::=::%%Nein%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK26361/Auftragsgrund Einbau MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Auswahl Grund MK4 Z1$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK26361/Auftragsgrund Wechsel MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Auswahl Grund MK4 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK26361/Wahl Einspeiser MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Auswahl Grund MK4 Z1$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK26361/Einspeiseleistung MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Wahl Einspeiser MK4 Z1$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK26361/Bestätigung Einspeisemangement MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Einspeiseleistung MK4 Z1$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK26361/Upload Einspeisemanagement MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Bestätigung Einspeisemangement MK4 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK26361/Steuerung nach 14a MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Wahl Bedarfsart Anlage MK4 Z1$$::CONTEITHER::%%Wärmepumpe inkl. Zusatzheizung §14a EnWG///private Ladeeinrichtung §14a EnWG///Klimanlagen §14a EnWG///Anlage zur Stromspeicherung%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK26361/Anzahl Wohneinheiten MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Wahl Bedarfsart Anlage MK4 Z1$$::CONTEITHER::%%Haushalt///Gewerbe///Wohn / Gewerbe///Landwirtschaft%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Auswahl Grund MK4 Z1$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Auswahl Messstellenbetreiber MK3 Z1$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Auswahl Messstellenbetreiber MK3 Z2$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Auswahl Messstellenbetreiber MK4 Z1$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Auswahl Messstellenbetreiber MK4 Z2$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Messart RLM wenn Einspeisung 100 MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Einspeiseleistung MK4 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Bestands RLM MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Einspeiseleistung MK4 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Messart des Zähler RLM MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK22064/Bestands RLM MK4 Z1$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Messart des Zähler MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK22064/Bestands RLM MK4 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Bestätigung RLM Zähler MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK22064/Messart des Zähler MK4 Z1$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Gewünschte Messeinrichtung MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Einspeiseleistung MK4 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Gewünschte Messeinrichtung RLM MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Einspeiseleistung MK4 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Ausführung des Zähler MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK22064/Gewünschte Messeinrichtung MK4 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Befestigungsart MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK22064/Gewünschte Messeinrichtung MK4 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Befestigungsart RLM MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK22064/Gewünschte Messeinrichtung RLM MK4 Z1$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Schwachlast Regelung MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK22064/Gewünschte Messeinrichtung MK4 Z1$$::=::%%Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Kein Zählerwechsel notwendig MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Auswahl Grund MK4 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Zählernummer des Mittelspannungszählers MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK22064/Untermessung Mittelspannung MK4 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z2/Auftragsgrund Einbau MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Auswahl Grund MK4 Z2$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z2/Auftragsgrund Wechsel MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Auswahl Grund MK4 Z2$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z2/Wahl Einspeiser MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Auswahl Grund MK4 Z2$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z2/Einspeiseleistung MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Wahl Einspeiser MK4 Z2$$::IN::%%Einspeiser Biomasse///Einspeiser KWK%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z2/Bestätigung Einspeisemangement MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Einspeiseleistung MK4 Z2$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z2/Upload Einspeisemanagement MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Bestätigung Einspeisemangement MK4 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Messart RLM wenn Einspeisung 100 MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Einspeiseleistung MK4 Z2$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Bestands RLM MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Einspeiseleistung MK4 Z2$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Messart des Zähler RLM MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z2/Bestands RLM MK4 Z2$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Messart des Zähler MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z2/Bestands RLM MK4 Z2$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Bestätigung RLM Zähler MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z2/Messart des Zähler MK4 Z2$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Gewünschte Messeinrichtung MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Einspeiseleistung MK4 Z2$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Gewünschte Messeinrichtung RLM MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Einspeiseleistung MK4 Z2$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Ausführung des Zähler MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z2/Gewünschte Messeinrichtung MK4 Z2$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Befestigungsart MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z2/Gewünschte Messeinrichtung MK4 Z2$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Befestigungsart RLM MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z2/Gewünschte Messeinrichtung RLM MK4 Z2$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Kein Zählerwechsel notwendig MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z2/Wechsel ohne Gerätetausch MK4 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Zählernummer des Mittelspannungszählers MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z2/Untermessung Mittelspannung MK4 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z2/Wechsel ohne Gerätetausch MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z2/Auswahl Grund MK4 Z2$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK22064/Wechsel ohne Gerätetausch MK4 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK26361/Auswahl Grund MK4 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Wechsel ohne Gerätetausch MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Auswahl Grund MK3 Z2$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z1/Kein Zählerwechsel notwendig MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z1/Wechsel ohne Gerätetausch MK3 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Kein Zählerwechsel notwendig MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK2/Wechsel ohne Gerätetausch MK3 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Wechsel ohne Gerätetausch MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Auswahl Grund MK3 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Zählernummer des Mittelspannungszählers MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK2/Untermessung Mittelspannung MK3 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Messart RLM wenn Einspeisung 100 MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Einspeiseleistung MK3 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Bestands RLM MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Einspeiseleistung MK3 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Messart des Zähler RLM MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK2/Bestands RLM MK3 Z1$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Messart des Zähler MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK2/Bestands RLM MK3 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Bestätigung RLM Zähler MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK2/Messart des Zähler MK3 Z1$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Gewünschte Messeinrichtung MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Einspeiseleistung MK3 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Gewünschte Messeinrichtung RLM MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Einspeiseleistung MK3 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Ausführung des Zähler MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK2/Gewünschte Messeinrichtung MK3 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Befestigungsart MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK2/Gewünschte Messeinrichtung MK3 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Befestigungsart RLM MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK2/Gewünschte Messeinrichtung RLM MK3 Z1$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK2/Schwachlast Regelung MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK2/Gewünschte Messeinrichtung MK3 Z1$$::=::%%Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Wechsel ohne Gerätetausch MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Auswahl Grund MK2 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/Wechsel ohne Gerätetausch MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK0/Auswahl Grund MK1 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK26656/kein Zählerwechsel notwendig MK1 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK26656/Wechsel ohne Gerätetausch MK1 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK2/Auftragsgrund Einbau MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Auswahl Grund MK3 Z1$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK2/Auftragsgrund Wechsel MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Auswahl Grund MK3 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK2/Bestätigung Einspeisemangement MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Einspeiseleistung MK3 Z1$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK2/Upload Einspeisemanagement MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Bestätigung Einspeisemangement MK3 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK2/Wahl Einspeiser MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Auswahl Grund MK3 Z1$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK2/Einspeiseleistung MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Wahl Einspeiser MK3 Z1$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK2/Steuerung nach 14a MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Wahl Bedarfsart Anlage MK3 Z1$$::CONTEITHER::%%Wärmepumpe inkl. Zusatzheizung §14a EnWG///private Ladeeinrichtung §14a EnWG///Klimanlagen §14a EnWG///Anlage zur Stromspeicherung §14a EnWG%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK2/Anzahl Wohneinheiten MK3 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK2/Wahl Bedarfsart Anlage MK3 Z1$$::CONTEITHER::%%Haushalt///Gewerbe///Wohn / Gewerbe///Landwirtschaft%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK21161/Kein Zählerwechsel notwendig MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK21161/Wechsel ohne Gerätetausch MK5 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK21161/Zählernummer des Mittelspannungszählers MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK21161/Untermessung Mittelspannung MK5 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK25000/Upload Einspeisemanagement MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Bestätigung Einspeisemangement MK5 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK25000/Auftragsgrund Einbau MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Auswahl Grund MK5 Z1$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK25000/Auftragsgrund Wechsel MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Auswahl Grund MK5 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK25000/Wahl Einspeiser MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Auswahl Grund MK5 Z1$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK25000/Einspeiseleistung MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Wahl Einspeiser MK5 Z1$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK25000/Bestätigung Einspeisemangement MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Einspeiseleistung MK5 Z1$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK25000/Steuerung nach 14a MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Wahl Bedarfsart Anlage MK5 Z1$$::CONTEITHER::%%Wärmepumpe inkl. Zusatzheizung §14a EnWG///private Ladeeinrichtung §14a EnWG///Klimanlagen §14a EnWG///Anlage zur Stromspeicherung §14a EnWG%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK25000/Anzahl Wohneinheiten MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Wahl Bedarfsart Anlage MK5 Z1$$::CONTEITHER::%%Haushalt///Gewerbe///Wohn / Gewerbe///Landwirtschaft%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK4 Z2/Auftragsgrund Einbau MK5 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK4 Z2/Auswahl Grund MK5 Z2$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK4 Z2/Auftragsgrund Wechsel MK5 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK4 Z2/Auswahl Grund MK5 Z2$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK4 Z2/Wahl Einspeiser MK5 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK4 Z2/Auswahl Grund MK5 Z2$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK4 Z2/Einspeiseleistung MK5 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK4 Z2/Wahl Einspeiser MK5 Z2$$::IN::%%Einspeiser Biomasse///Einspeiser KWK///Einspeiser PV///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK4 Z2/Bestätigung Einspeisemangement MK5 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK4 Z2/Einspeiseleistung MK5 Z2$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK4 Z2/Upload Einspeisemanagement MK5 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK4 Z2/Bestätigung Einspeisemangement MK5 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK4 Z2/Kein Zählerwechsel notwendig MK5 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK4 Z2/Wechsel ohne Gerätetausch MK5 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK4 Z2/Zählernummer des Mittelspannungszählers MK5 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK4 Z2/Untermessung Mittelspannung MK5 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK4##", +# ] +# conditions = [ +# "$$Kopie von Messung/Auswahl Messkonzept$$::=::%%MK 5%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Auswahl Grund MK5 Z1$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK4 Z2/Auswahl Grund MK5 Z2$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK25000/Auswahl Messstellenbetreiber MK5 Z1$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK4 Z2/Auswahl Messstellenbetreiber MK5 Z2$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Abfrage welcher Zähler MK4/Eigentumsnummer des bereits vorhandenen Zählers MK5 Z1##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK4/Auswahl Zähler aus MK5 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK4 Z2##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK4/Auswahl Zähler aus MK5 Z1$$::=::%%Nein%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Abfrage welcher Zähler MK32776/Eigentumsnummer des bereits vorhandenen Zählers MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK32776/Auswahl Zähler aus MK6 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK5 1##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK32776/Auswahl Zähler aus MK6 Z1$$::=::%%Nein%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Angaben zum Zähler MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK32776/Auswahl Zähler aus MK6 Z1$$::=::%%Nein%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Auswahl Grund MK6 Z1$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Auswahl Grund MK6 Z2$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Auswahl Grund MK6 Z3$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Auswahl Grund MK6 Z4$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Auswahl Messstellenbetreiber MK6 Z1$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Auswahl Messstellenbetreiber MK6 Z2$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Auswahl Messstellenbetreiber MK6 Z3$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Auswahl Messstellenbetreiber MK6 Z4$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK27914/Auftragsgrund Einbau MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Auswahl Grund MK6 Z1$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK27914/Auftragsgrund Wechsel MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Auswahl Grund MK6 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK27914/Wahl Einspeiser MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Auswahl Grund MK6 Z1$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK27914/Einspeiseleistung MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Wahl Einspeiser MK6 Z1$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK27914/Bestätigung Einspeisemangement MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Einspeiseleistung MK6 Z1$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK27914/Upload Einspeisemanagement MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Bestätigung Einspeisemangement MK6 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK27914/Steuerung nach 14a MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Wahl Bedarfsart Anlage MK6 Z1$$::CONTEITHER::%%Wärmepumpe inkl. Zusatzheizung §14a EnWG///private Ladeeinrichtung §14a EnWG///Klimanlagen §14a EnWG///Anlage zur Stromspeicherung %%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK27914/Anzahl Wohneinheiten MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Wahl Bedarfsart Anlage MK6 Z1$$::CONTEITHER::%%Haushalt///Gewerbe///Wohn / Gewerbe///Landwirtschaft%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Messart RLM wenn Einspeisung 100 MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Einspeiseleistung MK6 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Bestands RLM MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Einspeiseleistung MK6 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Messart des Zähler RLM MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK28250/Bestands RLM MK6 Z1$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Messart des Zähler MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK28250/Bestands RLM MK6 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Bestätigung RLM Zähler MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK28250/Messart des Zähler MK6 Z1$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Gewünschte Messeinrichtung MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Einspeiseleistung MK6 Z1$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Gewünschte Messeinrichtung RLM MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Einspeiseleistung MK6 Z1$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Ausführung des Zähler MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK28250/Gewünschte Messeinrichtung MK6 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Befestigungsart MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK28250/Gewünschte Messeinrichtung MK6 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Befestigungsart RLM MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK28250/Gewünschte Messeinrichtung RLM MK6 Z1$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Schwachlast Regelung MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK28250/Gewünschte Messeinrichtung MK6 Z1$$::=::%%Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Wechsel ohne Gerätetausch MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Auswahl Grund MK6 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Kein Zählerwechsel notwendig MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK27914/Auswahl Grund MK6 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK28250/Zählernummer des Mittelspannungszählers MK6 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK28250/Untermessung Mittelspannung MK6 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Abfrage welcher Zähler MK5 1/Eigentumsnummer des bereits vorhandenen Zählers##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK5 1/Auswahl Zähler aus MK6 Z2$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK1/Auftragsgrund Einbau MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Auswahl Grund MK6 Z2$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK1/Auftragsgrund Wechsel MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Auswahl Grund MK6 Z2$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK1/Wahl Einspeiser MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Auswahl Grund MK6 Z2$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK1/Einspeiseleistung in kVA MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Wahl Einspeiser MK6 Z2$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK1/Bestätigung Einspeisemanagent MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Einspeiseleistung in kVA MK6 Z2$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK1/Upload Einspeisemanagement MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Bestätigung Einspeisemanagent MK6 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Messart RLM wenn Einspeisung 100 MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Einspeiseleistung in kVA MK6 Z2$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Bestands RLM MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Einspeiseleistung in kVA MK6 Z2$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Messart des Zähler RLM MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK11178/Bestands RLM MK6 Z2$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Messart des Zähler MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK11178/Bestands RLM MK6 Z2$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Bestätigung RLM Zähler MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK11178/Messart des Zähler MK6 Z2$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Gewünschte Messeinrichtung MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Einspeiseleistung in kVA MK6 Z2$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Gewünschte Messeinrichtung RLM MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Einspeiseleistung in kVA MK6 Z2$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Ausführung des Zähler MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK11178/Gewünschte Messeinrichtung MK6 Z2$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Befestigungsart MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK11178/Gewünschte Messeinrichtung MK6 Z2$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Befestigungsart RLM MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK11178/Gewünschte Messeinrichtung RLM MK6 Z2$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Wechsel ohne Gerätetausch MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Auswahl Grund MK6 Z2$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/kein Zählerwechsel notwendig MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK1/Auswahl Grund MK6 Z2$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK11178/Zählernummer des Mittelspannungszählers MK6 Z2##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK11178/Untermessung Mittelspannung MK6 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Abfrage welcher Zähler MK5/Eigentumsnummer des bereits vorhandenen Zählers MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK5/Zähler wird im Anlagenaufbau nicht benötigt MK6 Z3$$::=::%%Zähler bereits vorhanden%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Abfrage welcher Zähler MK5/Zähler wird im Anlagenaufbau nicht benötigt MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK5/Auswahl Zähler aus MK6 Z3$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z2/Auftragsgrund Einbau MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Auswahl Grund MK6 Z3$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z2/Auftragsgrund Wechsel MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Auswahl Grund MK6 Z3$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z2/Wahl Einspeiser MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Auswahl Grund MK6 Z3$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z2/Einspeiseleistung in kVA MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Wahl Einspeiser MK6 Z3$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z2/Bestätigung Einspeisemanagent MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Einspeiseleistung in kVA MK6 Z3$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z2/Upload Einspeisemanagement MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Bestätigung Einspeisemanagent MK6 Z3$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Messart RLM wenn Einspeisung 100 MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Einspeiseleistung in kVA MK6 Z3$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Bestands RLM MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Einspeiseleistung in kVA MK6 Z3$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Messart des Zähler RLM MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z2/Bestands RLM MK6 Z3$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Messart des Zähler MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z2/Bestands RLM MK6 Z3$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Bestätigung RLM Zähler MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z2/Messart des Zähler MK6 Z3$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Gewünschte Messeinrichtung MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Einspeiseleistung in kVA MK6 Z3$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Gewünschte Messeinrichtung RLM MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Einspeiseleistung in kVA MK6 Z3$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Ausführung des Zähler MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z2/Gewünschte Messeinrichtung MK6 Z3$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Befestigungsart MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z2/Gewünschte Messeinrichtung MK6 Z3$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Befestigungsart RLM MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z2/Gewünschte Messeinrichtung RLM MK6 Z3$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Wechsel ohne Gerätetausch MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z2/Auswahl Grund MK6 Z3$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/kein Zählerwechsel notwendig MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z2/Wechsel ohne Gerätetausch MK6 Z3$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z2/Zählernummer des Mittelspannungszählers MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z2/Untermessung Mittelspannung MK6 Z3$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK6 Z3##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK5/Zähler wird im Anlagenaufbau nicht benötigt MK6 Z3$$::=::%%Zähler Z3 wird bei diesem Anlagenaufbau nicht benötigt%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z3/Auftragsgrund Einbau MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Auswahl Grund MK6 Z4$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z3/Auftragsgrund Wechsel MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Auswahl Grund MK6 Z4$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z3/Wahl Einspeiser MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Auswahl Grund MK6 Z4$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z3/Einspeiseleistung in kVA MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Wahl Einspeiser MK6 Z4$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z3/Bestätigung Einspeisemanagent MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Einspeiseleistung in kVA MK6 Z4$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z3/Upload Einspeisemanagement MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Bestätigung Einspeisemanagent MK6 Z4$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Messart RLM wenn Einspeisung 100 MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Einspeiseleistung in kVA MK6 Z4$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Bestands RLM MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Einspeiseleistung in kVA MK6 Z4$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Messart des Zähler RLM MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z3/Bestands RLM MK6 Z4$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Messart des Zähler MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z3/Bestands RLM MK6 Z4$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Bestätigung RLM Zähler MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z3/Messart des Zähler MK6 Z4$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Gewünschte Messeinrichtung MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Einspeiseleistung in kVA MK6 Z4$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Gewünschte Messeinrichtung RLM MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Einspeiseleistung in kVA MK6 Z4$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Ausführung des Zähler MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z3/Gewünschte Messeinrichtung MK6 Z4$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Befestigungsart MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z3/Gewünschte Messeinrichtung MK6 Z4$$::=::%%Drehstromzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Befestigungsart RLM MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z3/Gewünschte Messeinrichtung RLM MK6 Z4$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Wechsel ohne Gerätetausch MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z3/Auswahl Grund MK6 Z4$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/kein Zählerwechsel notwendig MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z3/Wechsel ohne Gerätetausch MK6 Z4$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3/Zählernummer des Mittelspannungszählers MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z3/Untermessung Mittelspannung MK6 Z4$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK32776##", +# ] +# conditions = [ +# "$$Kopie von Messung/Auswahl Messkonzept$$::=::%%MK 6%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK5##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK5 1/Auswahl Zähler aus MK6 Z2$$::=::%%Nein%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z17309/Auftragsgrund Einbau MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Auswahl Grund MK8 Z1$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z17309/Auftragsgrund Wechsel MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Auswahl Grund MK8 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z17309/Wahl Einspeiser MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Auswahl Grund MK8 Z1$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z17309/Einspeiseleistung MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Wahl Einspeiser MK8 Z1$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z17309/Bestätigung Einspeisemangement MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Einspeiseleistung MK8 Z1$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z17309/Upload Einspeisemanagement MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Bestätigung Einspeisemangement MK8 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z17309/Steuerung nach 14a MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Wahl Bedarfsart Anlage MK8 Z1$$::CONTEITHER::%%Wärmepumpe inkl. Zusatzheizung § 14a EnWG///private Ladeeinrichtung § 14a EnWG///Klimanlagen § 14a EnWG///Anlage zur Stromspeicherung §14a EnWG%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z17309/Anzahl Wohneinheiten MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Wahl Bedarfsart Anlage MK8 Z1$$::CONTEITHER::%%Haushalt///Gewerbe///Wohn / Gewerbe%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z11877/Ausführung des Zähler MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z11877/Gewünschte Messeinrichtung MK8 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z11877/Befestigungsart MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z11877/Gewünschte Messeinrichtung MK8 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler///Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z11877/Schwachlast Regelung MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z11877/Gewünschte Messeinrichtung MK8 Z1$$::=::%%Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z11877/Wechsel ohne Gerätetausch MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Auswahl Grund MK8 Z1$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK3 Z11877/Kein Zählerwechsel notwendig MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z11877/Wechsel ohne Gerätetausch MK8 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK01374/Auftragsgrund Einbau MK8 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK01374/Auswahl Grund MK8 Z2$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK01374/Auftragsgrund Wechsel MK8 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK01374/Auswahl Grund MK8 Z2$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK01374/Steuerung nach 14a MK8 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK01374/Wahl Bedarfsart 14a MK8 Z2$$::CONTEITHER::%%private Ladeeinrichtung § 14a EnWG///Klimanlagen § 14///Anlage zur Stromspeicherung § 14a EnWG%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Abfrage welcher Zähler MK6 Z35783/Zähler wird im Anlagenaufbau nicht benötigt MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK6 Z35783/Auswahl Zähler aus MK8 Z3$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Abfrage welcher Zähler MK6 Z35783/Eigentumsnummer des bereits vorhandenen Zählers MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK6 Z35783/Zähler wird im Anlagenaufbau nicht benötigt MK8 Z3$$::=::%%Zähler bereits vorhanden%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z34825/Auftragsgrund Einbau MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z34825/Auswahl Grund MK8 Z3$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z34825/Auftragsgrund Wechsel MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z34825/Auswahl Grund MK8 Z3$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z34825/Wahl Einspeiser MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z34825/Auswahl Grund MK8 Z3$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z34825/Einspeiseleistung in kVA MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z34825/Wahl Einspeiser MK8 Z3$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z34825/Bestätigung Einspeisemanagent MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z34825/Einspeiseleistung in kVA MK8 Z3$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK6 Z34825/Upload Einspeisemanagement MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z34825/Bestätigung Einspeisemanagent MK8 Z3$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3371./Wechsel ohne Gerätetausch MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z34825/Auswahl Grund MK8 Z3$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK6 Z3371./kein Zählerwechsel notwendig MK8 Z3##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK6 Z3371./Wechsel ohne Gerätetausch MK8 Z3$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Angaben zum Zähler MK01374##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK6/Auswahl Zähler aus MK8 Z1$$::=::%%Nein%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Auswahl Grund MK8 Z1$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z34825/Auswahl Grund MK8 Z3$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z17309/Auswahl Messstellenbetreiber MK8 Z1$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK01374/Auswahl Messstellenbetreiber MK8 Z2$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Neuer Schritt3551##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK6 Z34825/Auswahl Messstellenbetreiber MK8 Z3$$::=::%%Fremder Messstellenbetreiber%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Neuer Schritt3551/Bestätigung Einspeisemanagement FREMD MSB##", +# ] +# conditions = [ +# "$$Neuer Schritt3551/Einspeiseleistung in kVA FREMD MSB$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Neuer Schritt3551/Upload Einspeisemanagement FREMD MSB##", +# ] +# conditions = [ +# "$$Neuer Schritt3551/Bestätigung Einspeisemanagement FREMD MSB$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Auszubauende Geräte##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Auswahl Grund MK iv$$::=::%%Ausbau & Vertragsende%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Angaben zum Zähler MK21168##", +# ] +# conditions = [ +# "$$Kopie von Messung/Auswahl Messkonzept$$::=::%%Individuelles Messkonzept%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Bestätigung RLM Zähler MK0 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK1/Messart des Zähler MK0 Z1$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Schwachlast Regelung MK0 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK1/Gewünschte Messeinrichtung MK0 Z1$$::=::%%Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Zählernummer des Mittelspannungszählers MK0 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK1/Untermessung Mittelspannung MK0 Z1$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Ausführung der Messeinrichtung MK0 Z1##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Wahl Bedarfsart 14a MK0 Z1$$::CONTEITHER::%%Wärmepumpe inkl. Zusatzheizung §14a EnWG///private Ladeeinrichtung §14a EnWG///Klimanlagen §14a EnWG///Anlage zur Stromspeicherung §14a EnWG%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK6##", +# ] +# conditions = [ +# "$$Kopie von Messung/Auswahl Messkonzept$$::=::%%MK 8%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z1/Einspeiseleistung MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Wahl Einspeiser MK3 Z2$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z1/Bestätigung Einspeisemangement MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Einspeiseleistung MK3 Z2$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK3 Z1/Upload Einspeisemanagement MK3 Z2##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK3 Z1/Bestätigung Einspeisemangement MK3 Z2$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Informationen Vertragsinstallateur/Info Zählerabholung##", +# ] +# conditions = [ +# "$$Informationen Vertragsinstallateur/Zähler Abholung oder Versand$$::=::%%Abholung%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Informationen Vertragsinstallateur/Versand an Firmensitz Installateur##", +# ] +# conditions = [ +# "$$Informationen Vertragsinstallateur/Zähler Abholung oder Versand$$::=::%%Versand%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Informationen Vertragsinstallateur/Lieferadresse Zähler wenn nicht Firmensitz##", +# ] +# conditions = [ +# "$$Informationen Vertragsinstallateur/Versand an Firmensitz Installateur$$::=::%%Nein, an eine abweichende Adresse%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Abfrage welcher Zähler MK6/Eigentumsnummer des bereits vorhandenen Zählers MK8 Z1##", +# ] +# conditions = [ +# "$$Kopie von Abfrage welcher Zähler MK6/Auswahl Zähler aus MK8 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Kopie von Abfrage welcher Zähler MK6 Z4##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK3 Z11877/Befestigungsart MK8 Z1$$::IN::%%BKE für EHZ///Dreipunkt%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Zusammenfassung##", +# ] +# conditions = [ +# "$$Auszubauende Geräte/Grund Ausbau Z Ausbau$$::IN::%%Anlagenzusammlegung///Demontage des Zählers%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK21168/Auftragsgrund Einbau MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Auswahl Grund MK iv$$::=::%%Einbau%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK21168/Auftragsgrund Wechsel MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Auswahl Grund MK iv$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK21168/Wahl Einspeiser MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Auswahl Grund MK iv$$::IN::%%Einbau///Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK21168/Einspeiseleistung MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Wahl Einspeiser MK iv$$::IN::%%Einspeiser PV///Einspeiser Biomasse///Einspeiser KWK///Einspeiser Wind%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK21168/Bestätigung Einspeisemangement MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Einspeiseleistung MK iv$$::>=::%%25%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK21168/Upload Einspeisemanagement MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Bestätigung Einspeisemangement MK iv$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK21168/Steuerung nach 14a MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Wahl Bedarfsart Anlage MK iv$$::CONTEITHER::%%Wärmepumpe inkl. Zusatzheizung///private Ladeeinrichtung///Klimanlagen///Anlage zur Stromspeicherung%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Angaben zum Zähler MK21168/Anzahl Wohneinheiten MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Wahl Bedarfsart Anlage MK iv$$::CONTEITHER::%%Haushalt///Gewerbe///Wohn / Gewerbe///Landwirtschaft%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Messart RLM wenn Einspeisung 100 MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Einspeiseleistung MK iv$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Bestands RLM MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Einspeiseleistung MK iv$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Messart des Zähler RLM MK iv##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK25762/Bestands RLM MK iv$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Messart des Zähler MK iv##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK25762/Bestands RLM MK iv$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Bestätigung RLM Zähler MK iv##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK25762/Messart des Zähler MK iv$$::=::%%RLM (Registrierende Lastgangmessung)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Gewünschte Messeinrichtung MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Einspeiseleistung MK iv$$::<::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Gewünschte Messeinrichtung RLM MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Einspeiseleistung MK iv$$::>=::%%100%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Ausführung des Zähler MK iv##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK25762/Gewünschte Messeinrichtung MK iv$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Befestigungsart MK iv##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK25762/Gewünschte Messeinrichtung MK iv$$::IN::%%Drehstromzähler///Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Befestigungsart RLM MK iv##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK25762/Gewünschte Messeinrichtung RLM MK iv$$::=::%%Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Schwachlast Regelung MK iv##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK25762/Gewünschte Messeinrichtung MK iv$$::=::%%Doppeltarifzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Wechsel ohne Gerätetausch MK iv##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK21168/Auswahl Grund MK iv$$::=::%%Wechsel%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Kein Zählerwechsel notwendig MK iv##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK25762/Wechsel ohne Gerätetausch MK iv$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK25762/Zählernummer des Mittelspannungszählers MK iv##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK25762/Untermessung Mittelspannung MK iv$$::=::%%true%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Informationen Vertragsinstallateur/Zähler Abholung oder Versand##", +# ] +# conditions = [ +# "$$Informationen Vertragsinstallateur/Zählereinbau durch GWN$$::=::%%Zählereinbau durch Elektrofachunternehmen (keine iMSys und Wandlerzähler)%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Messart RLM wenn Verbrauch 100000kWh MK0 Z1##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Energieverbrauch im Jahr MK0 Z1$$::>=::%%100000%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Bestands RLM MK0 Z1##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Energieverbrauch im Jahr MK0 Z1$$::<::%%100000%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Messart des Zähler RLM MK0 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK1/Bestands RLM MK0 Z1$$::=::%%Ja%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Messart des Zähler MK0 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK1/Bestands RLM MK0 Z1$$::=::%%Nein%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Gewünschte Messeinrichtung MK0 Z1##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Energieverbrauch im Jahr MK0 Z1$$::<::%%100000%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Gewünschte Messeinrichtung RLM MK0 Z1##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Energieverbrauch im Jahr MK0 Z1$$::>=::%%100000%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Befestigungsart RLM MK0 Z1##", +# ] +# conditions = [ +# "$$Angaben zum Zähler/Energieverbrauch im Jahr MK0 Z1$$::=::%%100000%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK1/Befestigungsart MK0 Z1##", +# ] +# conditions = [ +# "$$Kopie von Messstellenbetrieb MK1/Gewünschte Messeinrichtung MK0 Z1$$::IN::%%Drehstromzähler///Doppeltarifzähler///Wandlerzähler%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::NavStep::$$$$##Zusammenfassung##", +# ] +# conditions = [ +# "$$Neuer Schritt3551/Bezugsleistung FREMD MSB$$::RANGE::%%0///10000000%%||NX||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Angaben Gebäudeeigentümer/Anschlussnutzer##", +# ] +# conditions = [ +# "$$Angaben Gebäudeeigentümer/Kundendatenänderung$$::=::%%Ja, die Kundendaten haben sich geändert.%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Neuer Schritt/Fester Verschiebungsfaktor cos phi##", +# ] +# conditions = [ +# "$$Neuer Schritt/Verfahren Blindleistungsbereitstellung$$::=::%%fester Verschiebungsfaktor cos phi%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Zählerart MME MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Einspeiseleistung MK2 Z1$$::<::%%7%%||VC||", +# ] +# }, +# { +# actions = [ +# "!TRUE!::DspBlock::$$$$##Kopie von Messstellenbetrieb MK02607/Zählerart iMSys MK2 Z1##", +# ] +# conditions = [ +# "$$Kopie von Angaben zum Zähler MK05619/Einspeiseleistung MK2 Z1$$::RANGE::%%7///99%%||VC||", +# ] +# }, +# ] +# name = "Inbetriebsetzung Strom für Prozesse" +# settings = { + + +# runtime_entities = [ +# "OPPORTUNITY", +# ] +# safe_mode_automation = false +# template_id = "7fc491a0-9357-11ed-819d-45a4b70a96e0" +# } +# steps = [ +# { +# hide_next_button = true +# name = "Verfügbarkeitsprüfung" +# schema = jsonencode( +# { +# properties = { +# "Hinweistext Installateure" = { +# type = "object" +# } +# Weiter = { +# type = "object" +# } +# } +# required = [] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Neuer Schritt1352" +# sub_title = "Verfügbarkeitsprüfung" +# title = "I-Auftrag Strom" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Installateure" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFMAZQBoAHIAIABnAGUAZQBoAHIAdABlACAASQBuAHMAdABhAGwAbABhAHQAZQB1AHIAZQAgAHUAbgBkACAASQBuAHMAdABhAGwAbABhAHQAZQB1AHIAaQBuAG4AZQBuACwAXAByAFwAbgB3AGkAbABsAGsAbwBtAG0AZQBuACAAaQBuACAAdQBuAHMAZQByAGUAcgAgAGQAaQBnAGkAdABhAGwAZQBuACAASQBuAGIAZQB0AHIAaQBlAGIAcwBlAHQAegB1AG4AZwBzAHQAcgBlAGMAawBlACAAKABTAHQAcgBvAG0AKQAuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFwAcgBcAHIAXABuAFcAaQBjAGgAdABpAGcAZQAgAEgAaQBuAHcAZQBpAHMAZQA6AFwAcgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgAiIFwAdABBAGMAaAB0AGUAbgAgAFMAaQBlACAAYQB1AGYAIABkAGkAZQAgAEcA/ABsAHQAaQBnAGsAZQBpAHQAIABkAGUAcgAgAEEAbgBzAGMAaABsAHUAcwBzAHoAdQBzAGEAZwBlACAAYQB1AHMAIABkAGUAcgAgAEUALQBNAGEAaQBsAC4AXAByACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiACIgXAB0AEQAaQBlACAAVgBEAEUAIABEAGEAdABlAG4AYgBsAOQAdAB0AGUAcgAgAEUAMgAsACAARQAzACAAdQBuAGQAIABFADgAIABzAG8AbABsAGUAbgAgAG4AaQBjAGgAdAAgAGgAbwBjAGgAZwBlAGwAYQBkAGUAbgAgAHcAZQByAGQAZQBuACEAIABBAGwAbABlACAAbgBvAHQAdwBlAG4AZABpAGcAZQBuACAARABhAHQAZQBuACAAdwBlAHIAZABlAG4AIABkAGkAcgBlAGsAdAAgAGkAbgAgAGQAaQBlAHMAZQBtACAATwBuAGwAaQBuAGUAYQBuAHQAcgBhAGcAIABhAGIAZwBlAGYAcgBhAGcAdAAuAFwAcgBcAHIAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAXAByAFwAbgBTAG8AbABsAHQAZQBuACAAUwBpAGUAIABuAG8AYwBoACAARgByAGEAZwBlAG4AIABoAGEAYgBlAG4ALAAgAHQAZQBpAGwAZQBuACAAUwBpAGUAIAB1AG4AcwAgAGQAaQBlAHMAZQAgAGcAZQByAG4AZQAgAGEAbQAgAEUAbgBkAGUAIABkAGUAcgAgAFMAdAByAGUAYwBrAGUAIABtAGkAdAAuAFwAcgBcAG4AVgBpAGUAbABlAG4AIABEAGEAbgBrACAAZgD8AHIAIABJAGgAcgBlACAAQQB1AGYAbQBlAHIAawBzAGEAbQBrAGUAaQB0ACEAHCBcAHIAXABuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# type = "Label" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# showPaper = false +# stickyOnMobile = true +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Weiter" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben Anschlussnehmer" +# schema = jsonencode( +# { +# properties = { +# "Kontaktinformationen Anschlussnutzer" = { +# type = "object" +# } +# Kundendatenänderung = { +# default = "Nein, keine Änderung." +# enum = [ +# "Nein, keine Änderung.", +# "Ja, die Kundendaten haben sich geändert.", +# ] +# type = "string" +# } +# "Rechnungsadresse Anschlussnutzer" = { +# type = "object" +# } +# Weiter = { +# type = "object" +# } +# } +# required = [ +# "Kundendatenänderung", +# "Kontaktinformationen Anschlussnutzer", +# "Rechnungsadresse Anschlussnutzer", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = true +# step_id = "Angaben Gebäudeeigentümer" +# title = "Kontaktinformationen" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Nein, keine Änderung.", +# "Ja, die Kundendaten haben sich geändert.", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Haben sich die Kundendaten zur Anfrage geändert?" +# } +# scope = "#/properties/Kundendatenänderung" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# autoFillPISettings = {} +# fields = { +# companyName = {} +# email = { +# required = true +# } +# firstName = { +# required = true +# } +# lastName = { +# required = true +# } +# salutation = { +# options = [ +# "Mr.", +# "Ms. / Mrs.", +# "Other", +# "Company", +# "Spouse", +# "Ownership", +# "Family", +# ] +# required = true +# } +# telephone = { +# required = true +# } +# title = {} +# } +# halfWidth = false +# isAutoFillPIEnabled = true +# isNested = true +# purposeLabels = [ +# "customer", +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wer ist der / die Anschlussnutzer(in)?" +# } +# scope = "#/properties/Kontaktinformationen Anschlussnutzer" +# type = "PersonalInformationControl" +# }, +# { +# options = { +# autoFillAddressSettings = {} +# countryAddressSettings = { +# countryCode = "DE" +# enableAutoComplete = true +# enableFreeText = false +# } +# fields = { +# houseNumber = { +# required = true +# } +# streetName = { +# required = true +# } +# zipCity = { +# required = true +# } +# } +# halfWidth = false +# isAutoFillAddressEnabled = true +# isBilling = true +# isDelivery = false +# isNested = true +# labels = [] +# related_pi = "Angaben Gebäudeeigentümer/Kontaktinformationen Anschlussnutzer" +# showPaper = true +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# unlistedFields = { +# zipCity = {} +# } +# } +# scope = "#/properties/Rechnungsadresse Anschlussnutzer" +# type = "AddressControl" +# }, +# ] +# options = { +# display = true +# isNested = false +# name = "Gebäudeeigentümer" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Anschlussnutzer" +# type = "GroupLayout" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Weiter" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angabe Messkonzept" +# schema = jsonencode( +# { +# properties = { +# "Auswahl Messkonzept" = { +# enum = [ +# "MK 0 ", +# "MK 1 ", +# "MK 2", +# "MK 3", +# "MK 4", +# "MK 5", +# "MK 6", +# "MK 8", +# "Individuelles Messkonzept", +# ] +# type = "string" +# } +# Weiter = { +# type = "object" +# } +# } +# required = [ +# "Auswahl Messkonzept", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = true +# step_id = "Kopie von Messung" +# title = "Wählen Sie bitte Ihr Messkonzept aus" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# halfWidth = false +# imageButton = true +# imageType = "infographic" +# label = false +# options = [ +# "MK 0 ", +# "MK 1 ", +# "MK 2", +# "MK 3", +# "MK 4", +# "MK 5", +# "MK 6", +# "MK 8", +# "Individuelles Messkonzept", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# ] +# optionsImages = [ +# { + +# url = "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/16581920/a74ec2fc-109c-4f5b-86a1-2713dbb2f4ff/MK%25200.jpg" +# }, +# { + +# url = "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/16581920/606384aa-6732-4e6c-a9e5-9ff7b515c568/MK%25201.jpg" +# }, +# { + +# url = "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/16581920/700be921-5afb-49ba-b899-a548c30f6e6c/MK%25202.jpg" +# }, +# { + +# url = "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/16581920/9ac773e3-0028-4c6f-b4e2-8eb90b3cb0a2/MK%25203.jpg" +# }, +# { + +# url = "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/16581920/0f36d437-4ecc-4497-b1ad-d476aab6a43d/MK%25204.jpg" +# }, +# { + +# url = "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/16581920/459782a7-e1ec-475a-b5b6-ba36dff7dc0a/MK%25205.jpg" +# }, +# { + +# url = "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/16581920/e5ee999a-a91a-4d2b-8626-4c428d463127/MK%25206.jpg" +# }, +# { + +# url = "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/16581920/8f5e016a-593e-4a12-9ef6-8b0065029740/MK%25208.jpg" +# }, +# { + +# url = "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/16581920/064672e3-652b-49f3-a89b-a2e446659da3/gl_hbirne-idee-x-wandtattoo-wadeco.jpg" +# }, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Messkonzept" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = false +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Weiter" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK0" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK0 Z1" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Anschluss an die Steuerbox MK0 Z1" = { +# enum = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# type = "string" +# } +# "Anzahl Wohneinheiten MK0 Z1" = { +# type = "object" +# } +# "Auswahl Entgeltmodell MK0 Z1" = { +# enum = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig)", +# ] +# type = "string" +# } +# "Auswahl Grund MK0 Z1" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK0 Z1" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK0 Z1" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK0 Z1" = { +# enum = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bezugsleistung in kW MK0 Z1" = { +# type = "object" +# } +# "Energieverbrauch im Jahr MK0 Z1" = { +# type = "object" +# } +# "Hinweistext Anlagennutzung MK0 Z1" = { +# type = "object" +# } +# "Hinweistext Anschluss an die Steuerbox MK0 Z1" = { +# type = "object" +# } +# "Konkretisierung der Anlage MK0 Z1" = { +# type = "string" +# } +# "Montageort des Zählerschrankes MK0 Z1" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Steuerung der SteuVE MK0 Z1" = { +# enum = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# type = "string" +# } +# "Wahl Bedarfsart 14a MK0 Z1" = { +# type = "array" +# } +# "Zustimmung Beauftragung Zusatzleistung MK0 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zustimmung TAB NS MK0 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK0 Z1" = { +# enum = [ +# "Z1", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK0 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Zählernummer auszubauender Zähler MK0 Z1", +# "Zählerbezeichnung im ausgewählten Messkonzept MK0 Z1", +# "Auswahl Grund nach Einbau MK0 Z1", +# "Auswahl Grund nach Wechsel MK0 Z1", +# "Steuerung der SteuVE MK0 Z1", +# "Anschluss an die Steuerbox MK0 Z1", +# "Anzahl Wohneinheiten MK0 Z1", +# "Bezugsleistung in kW MK0 Z1", +# "Konkretisierung der Anlage MK0 Z1", +# "Energieverbrauch im Jahr MK0 Z1", +# "Montageort des Zählerschrankes MK0 Z1", +# "Abfrage Spannungsebene MK0 Z1", +# "Zustimmung TAB NS MK0 Z1", +# "Wahl Bedarfsart 14a MK0 Z1", +# "Zustimmung Beauftragung Zusatzleistung MK0 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Angaben zum Zähler" +# title = "Angaben zum Zähler (Messkonzept 0)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK0 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z1", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK0 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK0 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK0 Z1" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK0 Z1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK0 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK0 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anlagennutzung MK0 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAxACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABpAHMAdAAgAGEAdQBzAHoAdQB3AOQAaABsAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAZwBlAG4AdQB0AHoAdAAgAHcAZQByAGQAZQBuACAAcwBvAGwAbAAuACAAUwB0AGUAdQBlAHIAYgBhAHIAZQAgAEEAbgBsAGEAZwBlAG4AIABzAGkAbgBkACAAbgBhAGMAaAAgAKcAIAAxADQAYQAgAEUAbgBXAEcAIABiAGUAaQBtACAATgBlAHQAegBiAGUAdAByAGUAaQBiAGUAcgAgAGEAbgB6AHUAbQBlAGwAZABlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGgAZQBhAGQAaQBuAGcAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdABhAGcAIgA6ACIAaAAzACIAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBcAG4ARABpAGUAIABBAG4AbQBlAGwAZAB1AG4AZwAgAGYA/AByACAApwAgADEANABhACAARQBuAFcARwAgAEEAbgBsAGEAZwBlAG4AIABvAGgAbgBlACAAZQBpAGcAZQBuAGUAbQAgAFoA5ABoAGwAZQByACAAawD2AG4AbgBlAG4AIABtAGkAdAAgAGUAaQBuAGUAcgAgAEIAZQB6AHUAZwBzAGEAbgBsAGEAZwBlACAAKAB6AC4AIABCAC4AIABIAGEAdQBzAGgAYQBsAHQALAAgAEcAZQB3AGUAcgBiAGUALAAuAC4ALgApACAAYQBuAGcAZQBtAGUAbABkAGUAdAAgAHUAbgBkACAAZwBlAG0AZQBpAG4AcwBhAG0AIABnAGUAbQBlAHMAcwBlAG4AIAB3AGUAcgBkAGUAbgAuACAARABpAGUAIABBAG4AbQBlAGwAZAB1AG4AZwAgAGYA/AByACAApwAgADEANABhACAARQBuAFcARwAgAEEAbgBsAGEAZwBlAG4AIABtAGkAdAAgAGUAaQBnAGUAbgBlAG0AIABaAOQAaABsAGUAcgAgAHcA5ABoAGwAZQBuACAAUwBpAGUAIABiAGkAdAB0AGUAIABkAGkAZQAgAEIAZQBkAGEAcgBmAHMAYQByAHQAIABhAHUAcwAuACAAIABcAG4ARABpAGUAIABzAGUAcABhAHIAYQB0AGUAbgAgAEEAbgBtAGUAbABkAHUAbgBnAGUAbgAgAHYAbwBuACAApwAxADQAYQAgAEUAbgBXAEcAIABTAHQAZQB1AGUAcgBiAGEAcgBlAG4AIABBAG4AbABhAGcAZQBuACAAZgBpAG4AZABlAG4AIABTAGkAZQAgAGkAbQAgAEkAbgBzAHQAYQBsAGwAYQB0AGUAdQByAHAAbwByAHQAYQBsACAAZgD8AHIAIABXAOQAcgBtAGUAcAB1AG0AcABlAG4ALwBLAGwAaQBtAGEAYQBuAGwAYQBnAGUAbgAsACAATABhAGQAZQBlAGkAbgByAGkAYwBoAHQAdQBuAGcAZQBuACAAdQBuAGQAIABTAHAAZQBpAGMAaABlAHIALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBNAGUAaAByAGYAYQBjAGgAYQB1AHMAdwBhAGgAbAAgAGkAcwB0ACAAbQD2AGcAbABpAGMAaAAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# type = "Label" +# }, +# { +# options = { +# halfWidth = false +# label = false +# options = [ +# "Haushalt", +# "Gewerbe", +# "Wohn / Gewerbe", +# "Landwirtschaft", +# "Wärmepumpe inkl. Zusatzheizung §14a EnWG", +# "private Ladeeinrichtung §14a EnWG", +# "Klimanlagen §14a EnWG", +# "Anlage zur Stromspeicherung §14a EnWG", +# "öffentliche Ladeeinrichtung", +# "andere Bedarfsart", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# uiType = "button" +# } +# scope = "#/properties/Wahl Bedarfsart 14a MK0 Z1" +# type = "MultichoiceControl" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Steuerung der SteuVE MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anschluss an die Steuerbox MK0 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABtAHUAcwBzACAAYQBuAGcAZQBnAGUAYgBlAG4AIAB3AGUAcgBkAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAKABTAHQAZQB1AGUAcgBiAGEAcgBlAG4AIABWAGUAcgBiAHIAYQB1AGMAaABzAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBWAEUAKQApACAAbQBpAHQAIABkAGUAcgAgAFMAdABlAHUAZQByAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBlAHIAYgBvAHgAKQAgAHYAZQByAGQAcgBhAGgAdABlAHQALwBhAG4AZwBlAHMAYwBoAGwAbwBzAHMAZQBuACAAdwBpAHIAZAA6ACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAXAByAFwAcgBcAG4ARABpAGcAaQB0AGEAbAAgAEUARQBCAFUAUwA6ACAAQQBuAHMAYwBoAGwAdQBzAHMAIABkAGUAcgAgAFMAdABlAHUAVgBFACAAbQBpAHQAdABlAGwAcwAgAEUAdABoAGUAcgBuAGUAdAAgAEsAYQBiAGUAbAAgACgATgBlAHQAegB3AGUAcgBrAGsAYQBiAGUAbAApACAAYQBuACAAZABpAGUAIABSAEoANAA1AC0AQgB1AGMAaABzAGUAIABkAGUAcgAgAFMAdABlAHUAZQByAGIAbwB4ACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdABpAHQAZQBtACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHYAYQBsAHUAZQAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBnAGkAdABhAGwAIABLAE4AWAA6ACAAQQBuAHMAYwBoAGwAdQBzAHMAIABkAGUAcgAgAFMAdABlAHUAVgBFACAAbQBpAHQAdABlAGwAcwAgAEUAdABoAGUAcgBuAGUAdAAgAEsAYQBiAGUAbAAgACgATgBlAHQAegB3AGUAcgBrAGsAYQBiAGUAbAApACAAYQBuACAAZABpAGUAIABSAEoANAA1AC0AQgB1AGMAaABzAGUAIABkAGUAcgAgAFMAdABlAHUAZQByAGIAbwB4AFwAcgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGwAaQBzAHQAaQB0AGUAbQAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgB2AGEAbAB1AGUAIgA6ADIAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBQAG8AdABlAG4AegBpAGEAbABmAHIAZQBpAGUAcgAgAEsAbwBuAHQAYQBrAHQAOgAgAEEAbgBzAGMAaABsAHUAcwBzACAAZABlAHIAIABTAHQAZQB1AFYARQAgAGEAbgAgAGQAaQBlACAAUgBlAGwAYQBpAHMALQBLAG8AbgB0AGEAawB0AGUAIABkAGUAcgAgAFMAdABlAHUAZQByAGIAbwB4ACwAIABWAGUAcgBiAGkAbgBkAHUAbgBnACAA/ABiAGUAcgAgAEQAcgBhAGgAdAAgACgAUwB0AHIAbwBtAGwAZQBpAHQAdQBuAGcAZQBuACkAIAAgACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdABpAHQAZQBtACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHYAYQBsAHUAZQAiADoAMwB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGwAaQBzAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAbABpAHMAdABUAHkAcABlACIAOgAiAGIAdQBsAGwAZQB0ACIALAAiAHMAdABhAHIAdAAiADoAMQAsACIAdABhAGcAIgA6ACIAdQBsACIAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# type = "Label" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = true +# label = false +# options = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Anschluss an die Steuerbox MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für die Gewährung des reduzierten Netzentgelt müssen Sie vorgeben, ob Ihr Kunde eine pauschale Reduzierung des Netzentgeltes (Modul 1) oder eine prozentuale Reduzierung des Arbeitspreises (Modul 2) wünscht. Für Modul 2 ist ein separater für die steuerbare Verbrauchseinsrichtung erforderlich." +# title = "Abrechnung des reduzierten Netzentgeltes" +# } +# scope = "#/properties/Auswahl Entgeltmodell MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAYgBlAHMAdADkAHQAaQBnAGUALAAgAGQAYQBzACAAZABpAGUAIABCAGUAcgBlAGkAdABzAHQAZQBsAGwAdQBuAGcALAAgAE0AbwBuAHQAYQBnAGUAIAB1AG4AZAAgAEIAZQB0AHIAaQBlAGIAIABkAGUAcgAgAFMAdABlAHUAZQByAHUAbgBnAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAZAB1AHIAYwBoACAAZABpAGUAIABHAGUAbABzAGUAbgB3AGEAcwBzAGUAcgAgAEUAbgBlAHIAZwBpAGUAbgBlAHQAegAgAEcAbQBiAEgAIABlAHIAZgBvAGwAZwBlAG4AIABzAG8AbABsACAAdQBuAGQAIABkAGUAbQAgAEsAdQBuAGQAZQBuACAAZABhAGQAdQByAGMAaAAgAEsAbwBzAHQAZQBuACAAZgD8AHIAIABkAGkAZQAgAFoAdQBzAGEAdAB6AGwAZQBpAHMAdAB1AG4AZwAgAG4AYQBjAGgAIACnADMANAAgAEEAYgBzAC4AIAAyACAATQBlAHMAcwBzAHQAZQBsAGwAZQBuAGIAZQB0AHIAaQBlAGIAcwBnAGUAcwBlAHQAegAgAGUAbgB0AHMAdABlAGgAZQBuAC4AIABEAGUAcgAgAEsAdQBuAGQAIABpAHMAdAAgAGkAbgBmAG8AcgBtAGkAZQByAHQAIAB1AG4AZAAgAGgAYQB0ACAAbQBpAGMAaAAgAGUAcgBtAOQAYwBoAHQAaQBnAHQAIABkAGkAZQBzAGUAIABCAGUAYQB1AGYAdAByAGEAZwB1AG4AZwAgAGEAbgAgAGQAaQBlACAARwBlAGwAcwBlAG4AdwBhAHMAcwBlAHIAIABFAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAgAEcAbQBiAEgAIAB6AHUAIAD8AGIAZQByAG0AaQB0AHQAZQBsAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung Beauftragung Zusatzleistung MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAbQBpAHQAIABiAGUAcwB0AOQAdABpAGcAZQAgAGkAYwBoACAAZABpAGUAIABFAGkAbgBoAGEAbAB0AHUAbgBnACAAZABlAHIAIABFAHIAZwDkAG4AegBlAG4AZABlACAAQgBlAGQAaQBuAGcAdQBuAGcAZQBuACAAXAByAFwAbgB1AG4AZAAgAEgAaQBuAHcAZQBpAHMAZQAgAHoAdQAgAGQAZQBuACAAXAByAFwAbgAeICIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADgALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAVABlAGMAaABuAGkAcwBjAGgAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAYgBlAGQAaQBuAGcAdQBuAGcAZQBuACAAXAByAFwAbgBmAPwAcgAgAGQAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAIABhAG4AIABkAGEAcwAgAFwAcgBcAG4ATgBpAGUAZABlAHIAcwBwAGEAbgBuAHUAbgBnAHMAbgBlAHQAegAgACgAVABBAEIAIAAyADAAMQA5ACkAHCAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGwAaQBuAGsAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAcgBlAGwAIgA6ACIAbgBvAG8AcABlAG4AZQByACIALAAiAHQAYQByAGcAZQB0ACIAOgBuAHUAbABsACwAIgB0AGkAdABsAGUAIgA6AG4AdQBsAGwALAAiAHUAcgBsACIAOgAiAGgAdAB0AHAAcwA6AC8ALwB3AHcAdwAuAGcAdwAtAGUAbgBlAHIAZwBpAGUAbgBlAHQAegBlAC4AZABlAC8AZgBpAGwAZQBhAGQAbQBpAG4ALwBnAHcALQBlAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAvADIAMABfAG4AZQB0AHoAYQBuAHMAYwBoAGwAdQBzAHMALwAyADAAMgA0AC0AMAA0AC0AMQA4AF8AZQByAGcAJQBDADMAJQBBADQAbgB6AHUAbgBnAGUAbgBfAHQAYQBiAF8AMgAwADEAOQBfAGcAdwBuAC4AcABkAGYAIgB9ACwAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgAgAFwAcgBcAG4AZABlAHIAIABHAEUATABTAEUATgBXAEEAUwBTAEUAUgAgAEUAbgBlAHIAZwBpAGUAbgBlAHQAegBlACAARwBtAGIASAAuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung TAB NS MK0 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für den Einbau und Betrieb der Steuerungseinrichtung in Verbindung mit einem intelligenten Messsystem (iMSys) ist laut Messstellenbetriebsgesetzt (MSBG) der Messstellenbetreiber verantwortlich. Der Einbau Mess- (iMSys) und Steuerungseinrichtung (z.B. FNN-Steuerbox) wird durch die Gelsenwasser Energienetze GmbH durchgeführt. . Der Betrieb der Steuerungseinrichtung hat keinen Einfluss auf die freie Wahl des Stromlieferanten." +# title = "Steuerbare Verbrauchseinrichtung" +# } +# scope = "#/properties/Steuerung nach 14a MK0 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 2 +# show = false +# validate = false +# } +# label = "Anzahl Wohneinheiten" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Wie viele Wohneinheiten befinden sich im Anschlussobjekt?" +# title = "Anzahl der Wohneinheiten" +# } +# scope = "#/properties/Anzahl Wohneinheiten MK0 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Bezugsleistung in kW" +# range = {} +# unit = { +# label = "kw" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte berücksichtigen Sie ein eventuell vorhandenes Energiemanagementsystem (EMS), beispielsweise für steuerbare Verbraucher, die sich hinter diesem Zähler befinden könnten, und geben Sie lediglich die maximale gleichzeitige Leistung an z.B. 21." +# title = "Bezungsleistung in kW" +# } +# scope = "#/properties/Bezugsleistung in kW MK0 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "z.B. EG rechts, Halle2, ..." +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Konkretisierung der Anlage (Bezeichnung)" +# } +# scope = "#/properties/Konkretisierung der Anlage MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 6 +# show = false +# validate = false +# } +# label = null +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Voraussichtlicher Jahresverbrauch" +# } +# scope = "#/properties/Energieverbrauch im Jahr MK0 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Messstellenbetrieb MK0" +# schema = jsonencode( +# { +# properties = { +# "Ausführung der Messeinrichtung MK0 Z1" = { +# type = "object" +# } +# "Befestigungsart MK0 Z1" = { +# enum = [ +# "EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Befestigungsart RLM MK0 Z1" = { +# enum = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Bestands RLM MK0 Z1" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Bestätigung RLM Zähler MK0 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Datum Inbetriebnahme MK0 Z1" = { +# type = "object" +# } +# "Gewünschte Messeinrichtung MK0 Z1" = { +# enum = [ +# "Drehstromzähler", +# "Doppeltarifzähler", +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Gewünschte Messeinrichtung RLM MK0 Z1" = { +# enum = [ +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Messart RLM wenn Verbrauch 100000kWh MK0 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler MK0 Z1" = { +# enum = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler RLM MK0 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Schwachlast Regelung MK0 Z1" = { +# default = false +# type = "boolean" +# } +# "Untermessung Mittelspannung MK0 Z1" = { +# default = false +# type = "boolean" +# } +# "Zählernummer des Mittelspannungszähler" = { +# type = "object" +# } +# "Zählernummer des Mittelspannungszählers MK0 Z1" = { +# type = "object" +# } +# } +# required = [ +# "Messart des Zähler MK0 Z1", +# "Gewünschte Messeinrichtung MK0 Z1", +# "Befestigungsart MK0 Z1", +# "Zählernummer des Mittelspannungszählers MK0 Z1", +# "Datum Inbetriebnahme MK0 Z1", +# "Messart RLM wenn Verbrauch 100000kWh MK0 Z1", +# "Bestands RLM MK0 Z1", +# "Gewünschte Messeinrichtung RLM MK0 Z1", +# "Befestigungsart RLM MK0 Z1", +# "Bestätigung RLM Zähler MK0 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Messstellenbetrieb MK1" +# title = "Angaben zum Zähler (Messkonzept 0)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart RLM wenn Verbrauch 100000kWh MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Sind in der Bestandsanlage(n) schon RLM (Registrierende Lastgangmessung) Zähler verbaut?" +# } +# scope = "#/properties/Bestands RLM MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler RLM MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGUAbgAgAFoA5ABoAGwAZQByACAAYQBsAHMAIABSAEwATQAgACgAUgBlAGcAaQBzAHQAcgBpAGUAcgBlAG4AZABlACAATABhAHMAdABnAGEAbgBnAG0AZQBzAHMAdQBuAGcAIABhAHUAcwBmAPwAaAByAGUAbgApACAAYQB1AHMAZgD8AGgAcgBlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Bestätigung RLM Zähler MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Drehstromzähler", +# "Doppeltarifzähler", +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = true +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Ausführung der Messeinrichtung MK0 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEEAdQBmAGcAcgB1AG4AZAAgAEkAaAByAGUAcgAgAEEAbgBnAGEAYgBlAG4AIAB3AGkAcgBkACAAZABlAHIAIABaAOQAaABsAGUAcgAgAGEAbABzACAAaQBNAFMAeQBzACAAYQB1AHMAZwBlAGYA/ABoAHIAdAAuAFwAbgBEAGUAcgAgAEUAaQBuAGIAYQB1ACAAZQByAGYAbwBsAGcAdAAgAGQAdQByAGMAaAAgAGQAaQBlACAARwBlAGwAcwBlAG4AdwBhAHMAcwBlAHIAIABFAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAgAEcAbQBiAEgALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGgAZQBhAGQAaQBuAGcAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdABhAGcAIgA6ACIAaAAzACIAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# type = "Label" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung RLM MK0 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Alle Direktmessungen sind als EHZ (BKE) auszuführen." +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Alle Direktmessungen sind als EHZ (BKE) auszuführen." +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart RLM MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# startDate = {} +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte Datum der Inbetriebnahme(n) angeben." +# title = "Inbtriebnahmedatum" +# } +# scope = "#/properties/Datum Inbetriebnahme MK0 Z1" +# type = "DatePickerControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAQQBuAHMAYwBoAGwAdQBzAHMAbgB1AHQAegBlAHIAIAAoAEsAdQBuAGQAZQApACAAdwD8AG4AcwBjAGgAdAAgAGUAaQBuAGUAIABTAGMAaAB3AGEAYwBoAGwAYQBzAHQAcgBlAGcAZQBsAHUAbgBnAD8AXABuAEQAaQBlACAAUwBjAGgAdwBhAGMAaABsAGEAcwB0AHIAZQBnAGUAbAB1AG4AZwAgAHMAbwBsAGwAIABkAGUAbgAgAEEAbgByAGUAaQB6ACAAZwBlAGIAZQBuACwAIABlAGkAbgBlAG4AIABUAGUAaQBsACAAZABlAHMAIABTAHQAcgBvAG0AdgBlAHIAYgByAGEAdQBjAGgAcwAgAHYAbwBtACAAVABhAGcAIABpAG4AIABkAGkAZQAgAE4AYQBjAGgAdAAgAHoAdQAgAHYAZQByAGwAYQBnAGUAcgBuAC4AIABcAG4AVQBtACAAZABpAGUAIABTAGMAaAB3AGEAYwBoAGwAYQBzAHQAcgBlAGcAZQBsAHUAbgBnACAAbgB1AHQAegBlAG4AIAB6AHUAIABrAPYAbgBuAGUAbgAgACwAIABpAHMAdAAgAGUAaQBuACAARABvAHAAcABlAGwAdABhAHIAaQBmAHoA5ABoAGwAZQByACAAdQBuAGQAIABlAGkAbgAgAFMAdABlAHUAZQByAGcAZQByAOQAdAAgAGYA/AByACAAZABpAGUAIABVAG0AcwBjAGgAYQBsAHQAdQBuAGcAIAB6AHcAaQBzAGMAaABlAG4AIABkAGkAZQBzAGUAbgAgAFoA5ABoAGwAdwBlAHIAawBlAG4AIABuAG8AdAB3AGUAbgBkAGkAZwAuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Schwachlast Regelung" +# } +# scope = "#/properties/Schwachlast Regelung MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlAHMAZQByACAAWgDkAGgAbABlAHIAIAB3AGkAcgBkACAAYQBsAHMAIABlAGkAbgBlACAAVQBuAHQAZQByAG0AZQBzAHMAdQBuAGcAIABoAGkAbgB0AGUAcgAgAGUAaQBuAGUAcgAgAE0AaQB0AHQAZQBsAHMAcABhAG4AbgB1AG4AZwBzAGgAYQB1AHAAdABtAGUAcwBzAHUAbgBnACAAaQBuACAAZQBpAG4AZQByACAA3ABiAGUAcgBnAGEAYgBlAHMAdABhAHQAaQBvAG4AIABpAG4AcwB0AGEAbABsAGkAZQByAHQALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Untermessung Mittelspannung" +# } +# scope = "#/properties/Untermessung Mittelspannung MK0 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "Zählernummer des Mittelspannungszählers" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Zählernummer des Mittelspannungszählers" +# } +# scope = "#/properties/Zählernummer des Mittelspannungszählers MK0 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# targetStepId = "Informationen Vertragsinstallateur" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK1" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK1 Z1" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Auswahl Grund MK1 Z1" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK1 Z1" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK1 Z1" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK1 Z1" = { +# enum = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bestätigung Einspeisemanagent MK1 Z1" = { +# default = false +# type = "boolean" +# } +# "Einspeiseleistung in kVA MK1 Z1" = { +# type = "object" +# } +# "Energieverbrauch im Jahr MK1 Z1" = { +# type = "object" +# } +# "Montageort des Zählerschrankes MK1 Z1" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Upload Einspeisemanagement MK1 Z1" = { +# type = "array" +# } +# "Wahl Einspeiser MK1 Z1" = { +# enum = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# type = "string" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK1 Z1" = { +# enum = [ +# "Z1", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK1 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Zählernummer auszubauender Zähler MK1 Z1", +# "Zählerbezeichnung im ausgewählten Messkonzept MK1 Z1", +# "Auswahl Grund nach Einbau MK1 Z1", +# "Auswahl Grund nach Wechsel MK1 Z1", +# "Wahl Einspeiser MK1 Z1", +# "Einspeiseleistung in kVA MK1 Z1", +# "Upload Einspeisemanagement MK1 Z1", +# "Energieverbrauch im Jahr MK1 Z1", +# "Montageort des Zählerschrankes MK1 Z1", +# "Abfrage Spannungsebene MK1 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK0" +# title = "Angaben zum Zähler (Messkonzept 1)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK1 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z1", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK1 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK1 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK1 Z1" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK1 Z1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK1 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK1 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wählen Sie eine Einspeiseart aus" +# } +# scope = "#/properties/Wahl Einspeiser MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Einspeiseleistung in kVA" +# range = {} +# unit = { +# label = "kva" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Gesamteinspeiseleistung der Erzeugungsanlage(n) an." +# } +# scope = "#/properties/Einspeiseleistung in kVA MK1 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEIAaQB0AHQAZQAgAGIAZQBzAHQA5AB0AGkAZwBlAG4AIABTAGkAZQAgAHUAbgBzACAAZABlAG4AIABFAGkAbgBiAGEAdQAgAGQAZQBzACAARQBpAG4AcwBwAGUAaQBzAGUAbQBhAG4AYQBnAGUAbQBlAG4AdABzAC4AIABEAGEAcwAgAGQAYQBmAPwAcgAgAGUAcgBmAG8AcgBkAGUAcgBsAGkAYwBoAGUAIABEAG8AawB1AG0AZQBuAHQAIABlAHIAaABhAGwAdABlAG4AIABTAGkAZQAgAGgAaQBlAHIAOgAgACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFYAZQByAGwAaQBuAGsAdQBuAGcAIABhAHUAcwAgAEcAVwBOACAASQAtAFMAZQBpAHQAZQAgAG0AdQBzAHMAIABuAG8AYwBoACAAZQByAHMAdABlAGwAbAB0ACAAdwBlAHIAZABlAG4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Einspeisemanagement gemäß §9 EEG" +# } +# scope = "#/properties/Bestätigung Einspeisemanagent MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 1 +# restricted = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier die ausgefüllte Bestätigung des Einspeisemanagements hoch" +# supportedTypes = "PDF" +# tags = [ +# "Bestätigung Einspeisemanagement", +# ] +# } +# scope = "#/properties/Upload Einspeisemanagement MK1 Z1" +# type = "UploadPanelControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 6 +# show = false +# validate = false +# } +# label = "Energieverbrauch im Jahr" +# range = {} +# unit = { +# label = "kwh" +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Voraussichtlicher Jahresverbrauch" +# } +# scope = "#/properties/Energieverbrauch im Jahr MK1 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Messstellenbetrieb MK1" +# schema = jsonencode( +# { +# properties = { +# "Ausführung des Zähler MK1 Z1" = { +# type = "object" +# } +# "Befestigungsart MK1 Z1" = { +# enum = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Befestigungsart RLM MK1 Z1" = { +# enum = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Bestands RLM MK1 Z1" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Bestätigung RLM Zähler MK1 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Datum Inbetriebnahme MK1 Z1" = { +# type = "object" +# } +# "Gewünschte Messeinrichtung MK1 Z1" = { +# enum = [ +# "Drehstromzähler", +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Gewünschte Messeinrichtung RLM MK1 Z1" = { +# enum = [ +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Messart RLM wenn Einspeisung 100 MK1 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler MK1 Z1" = { +# enum = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler RLM MK1 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messkonzeptwechsel MK1 Z1" = { +# default = false +# type = "boolean" +# } +# Next = { +# type = "object" +# } +# "Untermessung Mittelspannung MK1 Z1" = { +# default = false +# type = "boolean" +# } +# "Upload Zähler Wechsel ohne Gerätetausch MK1 Z1" = { +# type = "array" +# } +# "Wechsel ohne Gerätetausch MK1 Z1" = { +# default = false +# type = "boolean" +# } +# "Zählernummer des Mittelspannungszähler" = { +# type = "object" +# } +# "Zählernummer des Mittelspannungszählers MK1 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler Einspeisung MK1 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler HT MK1 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler NT MK1 Z1" = { +# type = "object" +# } +# "vorhandene Zählernummer ohne Gerätetausch MK1 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Messart RLM wenn Einspeisung 100 MK1 Z1", +# "Bestands RLM MK1 Z1", +# "Messart des Zähler RLM MK1 Z1", +# "Messart des Zähler MK1 Z1", +# "Gewünschte Messeinrichtung MK1 Z1", +# "Gewünschte Messeinrichtung RLM MK1 Z1", +# "Befestigungsart MK1 Z1", +# "Befestigungsart RLM MK1 Z1", +# "Zählerstand vorhandener Zähler HT MK1 Z1", +# "Zählerstand vorhandener Zähler Einspeisung MK1 Z1", +# "Datum Inbetriebnahme MK1 Z1", +# "Zählernummer des Mittelspannungszählers MK1 Z1", +# "vorhandene Zählernummer ohne Gerätetausch MK1 Z1", +# "Bestätigung RLM Zähler MK1 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Messstellenbetrieb MK26656" +# title = "Angaben zum Zähler (Messkonzept 1)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart RLM wenn Einspeisung 100 MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Sind in der Bestandsanlage(n) schon RLM (Registrierende Lastgangmessung) Zähler verbaut?" +# } +# scope = "#/properties/Bestands RLM MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler RLM MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGUAbgAgAFoA5ABoAGwAZQByACAAYQBsAHMAIABSAEwATQAgACgAUgBlAGcAaQBzAHQAcgBpAGUAcgBlAG4AZABlACAATABhAHMAdABnAGEAbgBnAG0AZQBzAHMAdQBuAGcAIABhAHUAcwBmAPwAaAByAGUAbgApACAAYQB1AHMAZgD8AGgAcgBlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Bestätigung RLM Zähler MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Drehstromzähler", +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung RLM MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = true +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Ausführung des Zähler MK1 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEEAdQBmAGcAcgB1AG4AZAAgAEkAaAByAGUAcgAgAEEAbgBnAGEAYgBlAG4AIAB3AGkAcgBkACAAZABlAHIAIABaAOQAaABsAGUAcgAgAGEAbABzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADEALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAaQBNAFMAeQBzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAYQB1AHMAZwBlAGYA/ABoAHIAdAAuACAARABlAHIAIABFAGkAbgBiAGEAdQAgAGUAcgBmAG8AbABnAHQAIABkAHUAcgBjAGgAIABkAGkAZQAgAEcAZQBsAHMAZQBuAHcAYQBzAHMAZQByACAARQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUAIABHAG0AYgBIAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBoAGUAYQBkAGkAbgBnACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHQAYQBnACIAOgAiAGgAMwAiAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = null +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart MK1 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart RLM MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAdgBvAHIAaABhAG4AZABlAG4AZQAgAFoA5ABoAGwAZQByACAAaQBzAHQAIABlAGkAbgBlACAAbQBvAGQAZQByAG4AZQAgAE0AZQBzAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAKABtAE0ARQApACAAbwBkAGUAcgAgAGkAbgB0AGUAbABsAGkAZwBlAG4AdABlACAATQBlAHMAcwBlAGkAbgByAGkAYwBoAHQAdQBuAGcAIAAoAGkATQBTAHkAcwApAC4AIABFAGkAbgAgAFcAZQBjAGgAcwBlAGwAIABpAHMAdAAgAG4AaQBjAGgAdAAgAG4AbwB0AHcAZQBuAGQAaQBnACwAIABlAGkAbgBlACAAUABhAHIAYQBtAGUAdAByAGkAZQByAHUAbgBnACAAKABGAHIAZQBpAHMAYwBoAGEAbAB0AHUAbgBnACAAdwBlAGkAdABlAHIAZQByACAAWgDkAGgAbAB3AGUAcgBrAGUAKQAgAGkAcwB0ACAAYQB1AHMAcgBlAGkAYwBoAGUAbgBkAGUALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wechsel ohne Gerätetausch" +# } +# scope = "#/properties/Wechsel ohne Gerätetausch MK1 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "HT (bei Eintarif-Zählern OBIS 1.8.0; bei Doppeltarifzählern OBIS 1.8.2)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler HT MK1 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "NT (bei Doppeltarifen OBIS 1.8.1 (Optional)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler NT MK1 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "OBIS 2.8.0 (Einspeisung, falls nicht vorhanden bitte \"0\" eintragen" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler Einspeisung MK1 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = true +# isNested = true +# label = "Bitte geben Sie hier die Zählernummer ein" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/vorhandene Zählernummer ohne Gerätetausch MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# maxQuantity = 3 +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier Foto des vorhandenen Zählers hoch. Achten Sie bitte auf die OBIS Kennzahl 1.8.0 & 2.8.0" +# tags = [ +# "Zählerfotos bestand bei MK Wechsel ohne Gerätetausch", +# ] +# } +# scope = "#/properties/Upload Zähler Wechsel ohne Gerätetausch MK1 Z1" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEoAYQAsACAAYQBuACAAZABpAGUAcwBlAG0AIABaAOQAaABsAGUAcgAgAGkAcwB0ACAAYgBlAHIAZQBpAHQAcwAgAGUAaQBuAGUAIABhAGwAdABlACAARQByAHoAZQB1AGcAdQBuAGcAcwBhAG4AbABhAGcAZQAgAGkAbgAgAEIAZQB0AHIAaQBlAGIAIAB1AG4AZAAgAGkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGEAcwAgAHYAbwByAGgAYQBuAGQAZQBuAGUAIABFAGkAbgBzAHAAZQBpAHMAZQAgAE0AZQBzAHMAawBvAG4AegBlAHAAdAAgAOQAbgBkAGUAcgBuACAAKAB6AC4AQgAuACAAdgBvAG4AIABNAEsAMgAgAGEAdQBmACAATQBLACAAMwApACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messkonzeptwechsel" +# } +# scope = "#/properties/Messkonzeptwechsel MK1 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/kein Zählerwechsel notwendig MK1 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# fields = { +# startDate = {} +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte Datum der Inbetriebnahme(n) angeben." +# title = "Inbetriebnahmedatum" +# } +# scope = "#/properties/Datum Inbetriebnahme MK1 Z1" +# type = "DatePickerControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlAHMAZQByACAAWgDkAGgAbABlAHIAIAB3AGkAcgBkACAAYQBsAHMAIABlAGkAbgBlACAAVQBuAHQAZQByAG0AZQBzAHMAdQBuAGcAIABoAGkAbgB0AGUAcgAgAGUAaQBuAGUAcgAgAE0AaQB0AHQAZQBsAHMAcABhAG4AbgB1AG4AZwBzAGgAYQB1AHAAdABtAGUAcwBzAHUAbgBnACAAaQBuACAAZQBpAG4AZQByACAA3ABiAGUAcgBnAGEAYgBlAHMAdABhAHQAaQBvAG4AIABpAG4AcwB0AGEAbABsAGkAZQByAHQALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Untermessung Mittelspannung" +# } +# scope = "#/properties/Untermessung Mittelspannung MK1 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "Zählernummer des Mittelspannungszählers" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Zählernummer des Mittelspannungszählers" +# } +# scope = "#/properties/Zählernummer des Mittelspannungszählers MK1 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# targetStepId = "Informationen Vertragsinstallateur" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK2" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK2 Z1" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Anschluss an die Steuerbox MK2 Z1" = { +# enum = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# type = "string" +# } +# "Anzahl Wohneinheiten MK2 Z1" = { +# type = "object" +# } +# "Auswahl Entgeltmodell MK2 Z1" = { +# enum = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig) ", +# ] +# type = "string" +# } +# "Auswahl Grund MK2 Z1" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK2 Z1" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK2 Z1" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK2 Z1" = { +# enum = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bestätigung Einspeisemangement MK2 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Bezugsleistung in kW MK2 Z1" = { +# type = "object" +# } +# "Einspeiseleistung MK2 Z1" = { +# type = "object" +# } +# "Energieverbrauch im Jahr MK2 Z1" = { +# type = "object" +# } +# "Hinweistext Anlagennutzung MK2 Z1" = { +# type = "object" +# } +# "Hinweistext Anschluss an die Steuerbox MK2 Z1" = { +# type = "object" +# } +# "Konkretisierung der Anlage MK2 Z1" = { +# type = "string" +# } +# "Montageort des Zählerschrankes MK2 Z1" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Steuerung der SteuVE MK2 Z1" = { +# enum = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# type = "string" +# } +# "Upload Einspeisemanagement MK2 Z1" = { +# type = "array" +# } +# "Wahl Bedarfsart Anlage MK2 Z1" = { +# type = "array" +# } +# "Wahl Einspeiser MK2 Z1" = { +# enum = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# type = "string" +# } +# "Zustimmung Beauftragung Zusatzleistung MK2 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zustimmung TAB NS MK2 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK2 Z1" = { +# enum = [ +# "Z1", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK2 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Zählernummer auszubauender Zähler MK2 Z1", +# "Zählerbezeichnung im ausgewählten Messkonzept MK2 Z1", +# "Auswahl Grund nach Einbau MK2 Z1", +# "Auswahl Grund nach Wechsel MK2 Z1", +# "Wahl Einspeiser MK2 Z1", +# "Einspeiseleistung MK2 Z1", +# "Upload Einspeisemanagement MK2 Z1", +# "Wahl Bedarfsart Anlage MK2 Z1", +# "Steuerung der SteuVE MK2 Z1", +# "Anschluss an die Steuerbox MK2 Z1", +# "Zustimmung TAB NS MK2 Z1", +# "Anzahl Wohneinheiten MK2 Z1", +# "Bezugsleistung in kW MK2 Z1", +# "Konkretisierung der Anlage MK2 Z1", +# "Energieverbrauch im Jahr MK2 Z1", +# "Montageort des Zählerschrankes MK2 Z1", +# "Zustimmung Beauftragung Zusatzleistung MK2 Z1", +# "Abfrage Spannungsebene MK2 Z1", +# "Bestätigung Einspeisemangement MK2 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK05619" +# title = "Angaben zum Zähler (Messkonzept 2)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK2 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z1", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK2 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK2 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK2 Z1" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK2 Z1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK2 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK2 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wählen Sie eine Einspeiseart aus" +# } +# scope = "#/properties/Wahl Einspeiser MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Einspeiseleistung in kVA" +# range = {} +# unit = { +# label = "kva" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Gesamteinspeiseleistung der Erzeugungsanlage(n) an." +# } +# scope = "#/properties/Einspeiseleistung MK2 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEIAaQB0AHQAZQAgAGIAZQBzAHQA5AB0AGkAZwBlAG4AIABTAGkAZQAgAHUAbgBzACAAZABlAG4AIABFAGkAbgBiAGEAdQAgAGQAZQBzACAARQBpAG4AcwBwAGUAaQBzAGUAbQBhAG4AYQBnAGUAbQBlAG4AdABzAC4AIABEAGEAcwAgAGQAYQBmAPwAcgAgAGUAcgBmAG8AcgBkAGUAcgBsAGkAYwBoAGUAIABEAG8AawB1AG0AZQBuAHQAIABlAHIAaABhAGwAdABlAG4AIABTAGkAZQAgAGgAaQBlAHIAOgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAHQAeQBwAGUAIgA6ACIAbABpAG4AZQBiAHIAZQBhAGsAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBcAHIAXABuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6AG4AdQBsAGwALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAbgB1AGwAbAAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Einspeisemanagement gemäß §9 EEG" +# } +# scope = "#/properties/Bestätigung Einspeisemangement MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 1 +# restricted = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier die ausgefüllte Bestätigung des Einspeisemanagements hoch." +# supportedTypes = "PDF" +# tags = [ +# "Bestätigung Einspeisemanagements", +# ] +# zoneLabel = "Bitte laden Sie hier die ausgefüllte Bestätigung der Inbetriebsetzung des Einspeisemanagements hoch" +# } +# scope = "#/properties/Upload Einspeisemanagement MK2 Z1" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anlagennutzung MK2 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABpAHMAdAAgAGEAdQBzAHoAdQB3AOQAaABsAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAZwBlAG4AdQB0AHoAdAAgAHcAZQByAGQAZQBuACAAcwBvAGwAbAAuACAAUwB0AGUAdQBlAHIAYgBhAHIAZQAgAEEAbgBsAGEAZwBlAG4AIABzAGkAbgBkACAAbgBhAGMAaAAgAKcAIAAxADQAYQAgAEUAbgBXAEcAIABiAGUAaQBtACAATgBlAHQAegBiAGUAdAByAGUAaQBiAGUAcgAgAGEAbgB6AHUAbQBlAGwAZABlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGgAZQBhAGQAaQBuAGcAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdABhAGcAIgA6ACIAaAAzACIAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBEAGkAZQAgAEEAbgBtAGUAbABkAHUAbgBnACAAZgD8AHIAIACnACAAMQA0AGEAIABFAG4AVwBHACAAQQBuAGwAYQBnAGUAbgAgAG8AaABuAGUAIABlAGkAZwBlAG4AZQBtACAAWgDkAGgAbABlAHIAIABrAPYAbgBuAGUAbgAgAG0AaQB0ACAAZQBpAG4AZQByACAAQgBlAHoAdQBnAHMAYQBuAGwAYQBnAGUAIAAoAHoALgAgAEIALgAgAEgAYQB1AHMAaABhAGwAdAAsACAARwBlAHcAZQByAGIAZQAsAC4ALgAuACkAIABhAG4AZwBlAG0AZQBsAGQAZQB0ACAAdQBuAGQAIABnAGUAbQBlAGkAbgBzAGEAbQAgAGcAZQBtAGUAcwBzAGUAbgAgAHcAZQByAGQAZQBuAC4AIABEAGkAZQAgAEEAbgBtAGUAbABkAHUAbgBnACAAZgD8AHIAIACnACAAMQA0AGEAIABFAG4AVwBHACAAQQBuAGwAYQBnAGUAbgAgAG0AaQB0ACAAZQBpAGcAZQBuAGUAbQAgAFoA5ABoAGwAZQByACAAdwDkAGgAbABlAG4AIABTAGkAZQAgAGIAaQB0AHQAZQAgAGQAaQBlACAAQgBlAGQAYQByAGYAcwBhAHIAdAAgAGEAdQBzAC4AIAAgACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAdAB5AHAAZQAiADoAIgBsAGkAbgBlAGIAcgBlAGEAawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlACAAcwBlAHAAYQByAGEAdABlAG4AIABBAG4AbQBlAGwAZAB1AG4AZwBlAG4AIAB2AG8AbgAgAKcAMQA0AGEAIABFAG4AVwBHACAAUwB0AGUAdQBlAHIAYgBhAHIAZQBuACAAQQBuAGwAYQBnAGUAbgAgAGYAaQBuAGQAZQBuACAAUwBpAGUAIABpAG0AIABJAG4AcwB0AGEAbABsAGEAdABlAHUAcgBwAG8AcgB0AGEAbAAgAGYA/AByACAAVwDkAHIAbQBlAHAAdQBtAHAAZQBuAC8ASwBsAGkAbQBhAGEAbgBsAGEAZwBlAG4ALAAgAEwAYQBkAGUAZQBpAG4AcgBpAGMAaAB0AHUAbgBnAGUAbgAgAHUAbgBkACAAUwBwAGUAaQBjAGgAZQByAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIATQBlAGgAcgBmAGEAYwBoAGEAdQBzAHcAYQBoAGwAIABpAHMAdAAgAG0A9gBnAGwAaQBjAGgAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# options = { +# halfWidth = false +# isNested = false +# label = false +# options = [ +# "Haushalt", +# "Gewerbe", +# "Wohn / Gewerbe", +# "Landwirtschaft", +# "Wärmepumpe inkl. Zusatzheizung", +# "private Ladeeinrichtung", +# "Klimanlagen", +# "Anlage zur Stromspeicherung", +# "öffentliche Ladeeinrichtung", +# "andere Bedarfsart", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# uiType = "button" +# } +# scope = "#/properties/Wahl Bedarfsart Anlage MK2 Z1" +# type = "MultichoiceControl" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Steuerung der SteuVE MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anschluss an die Steuerbox MK2 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABtAHUAcwBzACAAYQBuAGcAZQBnAGUAYgBlAG4AIAB3AGUAcgBkAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAKABTAHQAZQB1AGUAcgBiAGEAcgBlAG4AIABWAGUAcgBiAHIAYQB1AGMAaABzAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBWAEUAKQApACAAbQBpAHQAIABkAGUAcgAgAFMAdABlAHUAZQByAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBlAHIAYgBvAHgAKQAgAHYAZQByAGQAcgBhAGgAdABlAHQALwBhAG4AZwBlAHMAYwBoAGwAbwBzAHMAZQBuACAAdwBpAHIAZAA6AFwAcgBcAHIAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBEAGkAZwBpAHQAYQBsACAARQBFAEIAVQBTADoAIABBAG4AcwBjAGgAbAB1AHMAcwAgAGQAZQByACAAUwB0AGUAdQBWAEUAIABtAGkAdAB0AGUAbABzACAARQB0AGgAZQByAG4AZQB0ACAASwBhAGIAZQBsACAAKABOAGUAdAB6AHcAZQByAGsAawBhAGIAZQBsACkAIABhAG4AIABkAGkAZQAgAFIASgA0ADUALQBCAHUAYwBoAHMAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBsAGkAcwB0AGkAdABlAG0AIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdgBhAGwAdQBlACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIARABpAGcAaQB0AGEAbAAgAEsATgBYADoAIABBAG4AcwBjAGgAbAB1AHMAcwAgAGQAZQByACAAUwB0AGUAdQBWAEUAIABtAGkAdAB0AGUAbABzACAARQB0AGgAZQByAG4AZQB0ACAASwBhAGIAZQBsACAAKABOAGUAdAB6AHcAZQByAGsAawBhAGIAZQBsACkAIABhAG4AIABkAGkAZQAgAFIASgA0ADUALQBCAHUAYwBoAHMAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgAXAByACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdABpAHQAZQBtACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHYAYQBsAHUAZQAiADoAMgB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFAAbwB0AGUAbgB6AGkAYQBsAGYAcgBlAGkAZQByACAASwBvAG4AdABhAGsAdAA6ACAAQQBuAHMAYwBoAGwAdQBzAHMAIABkAGUAcgAgAFMAdABlAHUAVgBFACAAYQBuACAAZABpAGUAIABSAGUAbABhAGkAcwAtAEsAbwBuAHQAYQBrAHQAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgALAAgAFYAZQByAGIAaQBuAGQAdQBuAGcAIAD8AGIAZQByACAARAByAGEAaAB0ACAAKABTAHQAcgBvAG0AbABlAGkAdAB1AG4AZwBlAG4AKQAgACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBsAGkAcwB0AGkAdABlAG0AIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdgBhAGwAdQBlACIAOgAzAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgBsAGkAcwB0AFQAeQBwAGUAIgA6ACIAYgB1AGwAbABlAHQAIgAsACIAcwB0AGEAcgB0ACIAOgAxACwAIgB0AGEAZwAiADoAIgB1AGwAIgB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# type = "Label" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = true +# label = false +# options = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Anschluss an die Steuerbox MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig) ", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für die Gewährung des reduzierten Netzentgelt müssen Sie vorgeben, ob Ihr Kunde eine pauschale Reduzierung des Netzentgeltes (Modul 1) oder eine prozentuale Reduzierung des Arbeitspreises (Modul 2) wünscht. Für Modul 2 ist ein separater für die steuerbare Verbrauchseinsrichtung erforderlich." +# title = "Abrechnung des reduzierten Netzentgeltes" +# } +# scope = "#/properties/Auswahl Entgeltmodell MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAYgBlAHMAdADkAHQAaQBnAGUALAAgAGQAYQBzACAAZABpAGUAIABCAGUAcgBlAGkAdABzAHQAZQBsAGwAdQBuAGcALAAgAE0AbwBuAHQAYQBnAGUAIAB1AG4AZAAgAEIAZQB0AHIAaQBlAGIAIABkAGUAcgAgAFMAdABlAHUAZQByAHUAbgBnAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAZAB1AHIAYwBoACAAZABpAGUAIABHAGUAbABzAGUAbgB3AGEAcwBzAGUAcgAgAEUAbgBlAHIAZwBpAGUAbgBlAHQAegAgAEcAbQBiAEgAIABlAHIAZgBvAGwAZwBlAG4AIABzAG8AbABsACAAdQBuAGQAIABkAGUAbQAgAEsAdQBuAGQAZQBuACAAZABhAGQAdQByAGMAaAAgAEsAbwBzAHQAZQBuACAAZgD8AHIAIABkAGkAZQAgAFoAdQBzAGEAdAB6AGwAZQBpAHMAdAB1AG4AZwAgAG4AYQBjAGgAIACnADMANAAgAEEAYgBzAC4AIAAyACAATQBlAHMAcwBzAHQAZQBsAGwAZQBuAGIAZQB0AHIAaQBlAGIAcwBnAGUAcwBlAHQAegAgAGUAbgB0AHMAdABlAGgAZQBuAC4AIABEAGUAcgAgAEsAdQBuAGQAIABpAHMAdAAgAGkAbgBmAG8AcgBtAGkAZQByAHQAIAB1AG4AZAAgAGgAYQB0ACAAbQBpAGMAaAAgAGUAcgBtAOQAYwBoAHQAaQBnAHQAIABkAGkAZQBzAGUAIABCAGUAYQB1AGYAdAByAGEAZwB1AG4AZwAgAGEAbgAgAGQAaQBlACAARwBlAGwAcwBlAG4AdwBhAHMAcwBlAHIAIABFAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAgAEcAbQBiAEgAIAB6AHUAIAD8AGIAZQByAG0AaQB0AHQAZQBsAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung Beauftragung Zusatzleistung MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAbQBpAHQAIABiAGUAcwB0AOQAdABpAGcAZQAgAGkAYwBoACAAZABpAGUAIABFAGkAbgBoAGEAbAB0AHUAbgBnACAAZABlAHIAIABFAHIAZwDkAG4AegBlAG4AZABlACAAQgBlAGQAaQBuAGcAdQBuAGcAZQBuACAAXAByAFwAbgB1AG4AZAAgAEgAaQBuAHcAZQBpAHMAZQAgAHoAdQAgAGQAZQBuACAAXAByAFwAbgAeICIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADgALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAVABlAGMAaABuAGkAcwBjAGgAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAYgBlAGQAaQBuAGcAdQBuAGcAZQBuACAAXAByAFwAbgBmAPwAcgAgAGQAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAIABhAG4AIABkAGEAcwAgAFwAcgBcAG4ATgBpAGUAZABlAHIAcwBwAGEAbgBuAHUAbgBnAHMAbgBlAHQAegAgACgAVABBAEIAIAAyADAAMQA5ACkAHCAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGwAaQBuAGsAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAcgBlAGwAIgA6ACIAbgBvAG8AcABlAG4AZQByACIALAAiAHQAYQByAGcAZQB0ACIAOgBuAHUAbABsACwAIgB0AGkAdABsAGUAIgA6AG4AdQBsAGwALAAiAHUAcgBsACIAOgAiAGgAdAB0AHAAcwA6AC8ALwB3AHcAdwAuAGcAdwAtAGUAbgBlAHIAZwBpAGUAbgBlAHQAegBlAC4AZABlAC8AZgBpAGwAZQBhAGQAbQBpAG4ALwBnAHcALQBlAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAvADIAMABfAG4AZQB0AHoAYQBuAHMAYwBoAGwAdQBzAHMALwAyADAAMgA0AC0AMAA0AC0AMQA4AF8AZQByAGcAJQBDADMAJQBBADQAbgB6AHUAbgBnAGUAbgBfAHQAYQBiAF8AMgAwADEAOQBfAGcAdwBuAC4AcABkAGYAIgB9ACwAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgAgAFwAcgBcAG4AZABlAHIAIABHAEUATABTAEUATgBXAEEAUwBTAEUAUgAgAEUAbgBlAHIAZwBpAGUAbgBlAHQAegBlACAARwBtAGIASAAuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung TAB NS MK2 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für den Einbau und Betrieb der Steuerungseinrichtung in Verbindung mit einem intelligenten Messsystem (iMSys) ist laut Messstellenbetriebsgesetzt (MSBG) der Messstellenbetreiber verantwortlich. Der Einbau Mess- (iMSys) und Steuerungseinrichtung (z.B. FNN-Steuerbox) wird durch die Gelsenwasser Energienetze GmbH durchgeführt. . Der Betrieb der Steuerungseinrichtung hat keinen Einfluss auf die freie Wahl des Stromlieferanten." +# title = "Steuerbare Verbrauchseinrichtung" +# } +# scope = "#/properties/Steuerung nach 14a MK2 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 2 +# show = false +# validate = false +# } +# label = "Anzahl Wohneinheiten" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Wie viele Wohneinheiten befinden sich im Anschlussobjekt?" +# title = "Anzahl der Wohneinheiten" +# } +# scope = "#/properties/Anzahl Wohneinheiten MK2 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Bezugsleistung in kW" +# range = {} +# unit = { +# label = "kw" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte berücksichtigen Sie ein eventuell vorhandenes Energiemanagementsystem (EMS), beispielsweise für steuerbare Verbraucher, die sich hinter diesem Zähler befinden könnten, und geben Sie lediglich die maximale gleichzeitige Leistung an z.B. 21." +# title = "Bezugsleistung in kW" +# } +# scope = "#/properties/Bezugsleistung in kW MK2 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "z.B. EG rechts, Halle2, ..." +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Konkretisierung der Anlage (Bezeichnung)" +# } +# scope = "#/properties/Konkretisierung der Anlage MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 6 +# show = false +# validate = false +# } +# label = null +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Voraussichtlicher Jahresverbrauch" +# } +# scope = "#/properties/Energieverbrauch im Jahr MK2 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Messstellenbetrieb MK2" +# schema = jsonencode( +# { +# properties = { +# "Ausführung des Zähler MK2 Z1" = { +# type = "object" +# } +# "Befestigungsart MK2 Z1" = { +# enum = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Befestigungsart RLM MK2 Z1" = { +# enum = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Bestands RLM MK2 Z1" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Bestätigung RLM Zähler MK2 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Datum Inbetriebnahme MK2 Z1" = { +# type = "object" +# } +# "Gewünschte Messeinrichtung MK2 Z1" = { +# enum = [ +# "Drehstromzähler", +# "Doppeltarifzähler", +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Gewünschte Messeinrichtung RLM MK2 Z1" = { +# enum = [ +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Messart RLM wenn Einspeisung 100 MK2 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler MK2 Z1" = { +# enum = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler RLM MK2 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messkonzeptwechsel MK2 Z1" = { +# default = false +# type = "boolean" +# } +# Next = { +# type = "object" +# } +# "Schwachlast Regelung MK2 Z1" = { +# default = false +# type = "boolean" +# } +# "Untermessung Mittelspannung MK2 Z1" = { +# default = false +# type = "boolean" +# } +# "Upload Zähler Wechsel ohne Gerätetausch MK2 Z1" = { +# type = "array" +# } +# "Wechsel ohne Gerätetausch MK2 Z1" = { +# default = false +# type = "boolean" +# } +# "Zählerart MME MK2 Z1" = { +# default = "Moderne Messeinrichtung (MME)" +# enum = [ +# "Moderne Messeinrichtung (MME)", +# ] +# type = "string" +# } +# "Zählerart iMSys MK2 Z1" = { +# default = "Intelligentes Messsystem (iMSys)" +# enum = [ +# "Intelligentes Messsystem (iMSys)", +# ] +# type = "string" +# } +# "Zählernummer des Mittelspannungszähler" = { +# type = "object" +# } +# "Zählernummer des Mittelspannungszählers MK2 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler Einspeisung MK2 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler HT MK2 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler NT MK2 Z1" = { +# type = "object" +# } +# "vorhandene Zählernummer ohne Gerätetausch MK2 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Messart RLM wenn Einspeisung 100 MK2 Z1", +# "Bestands RLM MK2 Z1", +# "Messart des Zähler RLM MK2 Z1", +# "Messart des Zähler MK2 Z1", +# "Gewünschte Messeinrichtung MK2 Z1", +# "Gewünschte Messeinrichtung RLM MK2 Z1", +# "Befestigungsart MK2 Z1", +# "Befestigungsart RLM MK2 Z1", +# "Datum Inbetriebnahme MK2 Z1", +# "Zählerstand vorhandener Zähler HT MK2 Z1", +# "Zählerstand vorhandener Zähler Einspeisung MK2 Z1", +# "Upload Zähler Wechsel ohne Gerätetausch MK2 Z1", +# "Zählernummer des Mittelspannungszählers MK2 Z1", +# "vorhandene Zählernummer ohne Gerätetausch MK2 Z1", +# "Bestätigung RLM Zähler MK2 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Messstellenbetrieb MK02607" +# title = "Angaben zum Zähler (Messkonzept 2)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart RLM wenn Einspeisung 100 MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Sind in der Bestandsanlage(n) schon RLM (Registrierende Lastgangmessung) Zähler verbaut?" +# } +# scope = "#/properties/Bestands RLM MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler RLM MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGUAbgAgAFoA5ABoAGwAZQByACAAYQBsAHMAIABSAEwATQAgACgAUgBlAGcAaQBzAHQAcgBpAGUAcgBlAG4AZABlACAATABhAHMAdABnAGEAbgBnAG0AZQBzAHMAdQBuAGcAIABhAHUAcwBmAPwAaAByAGUAbgApACAAYQB1AHMAZgD8AGgAcgBlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Bestätigung RLM Zähler MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Intelligentes Messsystem (iMSys)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Die Zählersetzung iMSys und RLM erfolgen durch die Gelsenwasser Energienetze GmbH." +# title = "Zählerart" +# } +# scope = "#/properties/Zählerart iMSys MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Moderne Messeinrichtung (MME)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Die Zählersetzung iMSys und RLM erfolgen durch die Gelsenwasser Energienetze GmbH." +# title = "Zählerart" +# } +# scope = "#/properties/Zählerart MME MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Drehstromzähler", +# "Doppeltarifzähler", +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung RLM MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = true +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Ausführung des Zähler MK2 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEEAdQBmAGcAcgB1AG4AZAAgAEkAaAByAGUAcgAgAEEAbgBnAGEAYgBlAG4AIAB3AGkAcgBkACAAZABlAHIAIABaAOQAaABsAGUAcgAgAGEAbABzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADEALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAaQBNAFMAeQBzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAYQB1AHMAZwBlAGYA/ABoAHIAdAAuACAARABlAHIAIABFAGkAbgBiAGEAdQAgAGUAcgBmAG8AbABnAHQAIABkAHUAcgBjAGgAIABkAGkAZQAgAEcAZQBsAHMAZQBuAHcAYQBzAHMAZQByACAARQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUAIABHAG0AYgBIAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBoAGUAYQBkAGkAbgBnACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHQAYQBnACIAOgAiAGgAMwAiAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = null +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart MK2 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart RLM MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# startDate = {} +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte Datum der Inbetriebnahme(n) angeben." +# title = "Inbetriebnahmedatum" +# } +# scope = "#/properties/Datum Inbetriebnahme MK2 Z1" +# type = "DatePickerControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAQQBuAHMAYwBoAGwAdQBzAHMAbgB1AHQAegBlAHIAIAAoAEsAdQBuAGQAZQApACAAdwD8AG4AcwBjAGgAdAAgAGUAaQBuAGUAIABTAGMAaAB3AGEAYwBoAGwAYQBzAHQAcgBlAGcAZQBsAHUAbgBnAD8AXABuAEQAaQBlACAAUwBjAGgAdwBhAGMAaABsAGEAcwB0AHIAZQBnAGUAbAB1AG4AZwAgAHMAbwBsAGwAIABkAGUAbgAgAEEAbgByAGUAaQB6ACAAZwBlAGIAZQBuACwAIABlAGkAbgBlAG4AIABUAGUAaQBsACAAZABlAHMAIABTAHQAcgBvAG0AdgBlAHIAYgByAGEAdQBjAGgAcwAgAHYAbwBtACAAVABhAGcAIABpAG4AIABkAGkAZQAgAE4AYQBjAGgAdAAgAHoAdQAgAHYAZQByAGwAYQBnAGUAcgBuAC4AIABcAG4AVQBtACAAZABpAGUAIABTAGMAaAB3AGEAYwBoAGwAYQBzAHQAcgBlAGcAZQBsAHUAbgBnACAAbgB1AHQAegBlAG4AIAB6AHUAIABrAPYAbgBuAGUAbgAgACwAIABpAHMAdAAgAGUAaQBuACAARABvAHAAcABlAGwAdABhAHIAaQBmAHoA5ABoAGwAZQByACAAdQBuAGQAIABlAGkAbgAgAFMAdABlAHUAZQByAGcAZQByAOQAdAAgAGYA/AByACAAZABpAGUAIABVAG0AcwBjAGgAYQBsAHQAdQBuAGcAIAB6AHcAaQBzAGMAaABlAG4AIABkAGkAZQBzAGUAbgAgAFoA5ABoAGwAdwBlAHIAawBlAG4AIABuAG8AdAB3AGUAbgBkAGkAZwAuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Schwachlast Regelung" +# } +# scope = "#/properties/Schwachlast Regelung MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAdgBvAHIAaABhAG4AZABlAG4AZQAgAFoA5ABoAGwAZQByACAAaQBzAHQAIABlAGkAbgBlACAAbQBvAGQAZQByAG4AZQAgAE0AZQBzAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAKABtAE0ARQApACAAbwBkAGUAcgAgAGkAbgB0AGUAbABsAGkAZwBlAG4AdABlACAATQBlAHMAcwBlAGkAbgByAGkAYwBoAHQAdQBuAGcAIAAoAGkATQBTAHkAcwApAC4AIABFAGkAbgAgAFcAZQBjAGgAcwBlAGwAIABpAHMAdAAgAG4AaQBjAGgAdAAgAG4AbwB0AHcAZQBuAGQAaQBnACwAIABlAGkAbgBlACAAUABhAHIAYQBtAGUAdAByAGkAZQByAHUAbgBnACAAKABGAHIAZQBpAHMAYwBoAGEAbAB0AHUAbgBnACAAdwBlAGkAdABlAHIAZQByACAAWgDkAGgAbAB3AGUAcgBrAGUAKQAgAGkAcwB0ACAAYQB1AHMAcgBlAGkAYwBoAGUAbgBkAGUALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wechsel ohne Gerätetausch" +# } +# scope = "#/properties/Wechsel ohne Gerätetausch MK2 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "HT (bei Eintarif-Zählern OBIS 1.8.0; bei Doppeltarifzählern OBIS 1.8.2)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler HT MK2 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "NT (bei Doppeltarifen OBIS 1.8.1 (Optional)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler NT MK2 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "OBIS 2.8.0 (Einspeisung, falls nicht vorhanden bitte \"0\" eintragen" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler Einspeisung MK2 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = true +# isNested = true +# label = "Bitte geben Sie hier die Zählernummer ein" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/vorhandene Zählernummer ohne Gerätetausch MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 3 +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier Foto des vorhandenen Zählers hoch. Achten Sie bitte auf die OBIS Kennzahl 1.8.0 & 2.8.0" +# tags = [ +# "Zählerfotos bestand bei MK Wechsel ohne Gerätetausch", +# ] +# } +# scope = "#/properties/Upload Zähler Wechsel ohne Gerätetausch MK2 Z1" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEoAYQAsACAAYQBuACAAZABpAGUAcwBlAG0AIABaAOQAaABsAGUAcgAgAGkAcwB0ACAAYgBlAHIAZQBpAHQAcwAgAGUAaQBuAGUAIABhAGwAdABlACAARQByAHoAZQB1AGcAdQBuAGcAcwBhAG4AbABhAGcAZQAgAGkAbgAgAEIAZQB0AHIAaQBlAGIAIAB1AG4AZAAgAGkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGEAcwAgAHYAbwByAGgAYQBuAGQAZQBuAGUAIABFAGkAbgBzAHAAZQBpAHMAZQAgAE0AZQBzAHMAawBvAG4AegBlAHAAdAAgAOQAbgBkAGUAcgBuACAAKAB6AC4AQgAuACAAdgBvAG4AIABNAEsAMgAgAGEAdQBmACAATQBLACAAMwApACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messkonzeptwechsel" +# } +# scope = "#/properties/Messkonzeptwechsel MK2 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Kein Zählerwechsel notwendig MK2 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlAHMAZQByACAAWgDkAGgAbABlAHIAIAB3AGkAcgBkACAAYQBsAHMAIABlAGkAbgBlACAAVQBuAHQAZQByAG0AZQBzAHMAdQBuAGcAIABoAGkAbgB0AGUAcgAgAGUAaQBuAGUAcgAgAE0AaQB0AHQAZQBsAHMAcABhAG4AbgB1AG4AZwBzAGgAYQB1AHAAdABtAGUAcwBzAHUAbgBnACAAaQBuACAAZQBpAG4AZQByACAA3ABiAGUAcgBnAGEAYgBlAHMAdABhAHQAaQBvAG4AIABpAG4AcwB0AGEAbABsAGkAZQByAHQALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Untermessung Mittelspannung" +# } +# scope = "#/properties/Untermessung Mittelspannung MK2 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "Zählernummer des Mittelspannungszählers" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Zählernummer des Mittelspannungszählers" +# } +# scope = "#/properties/Zählernummer des Mittelspannungszählers MK2 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# targetStepId = "Informationen Vertragsinstallateur" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Abfrage welcher Zähler MK3" +# schema = jsonencode( +# { +# properties = { +# "Auswahl Zähler aus MK3 Z1 " = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Eigentumsnummer des bereits vorhandenen Zählers MK3 Z1" = { +# type = "string" +# } +# Next = { +# type = "object" +# } +# } +# required = [ +# "Eigentumsnummer des bereits vorhandenen Zählers MK3 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK3" +# title = "Angaben zum Zähler (Messkonzept 3)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Möchten Sie den Zähler Z1 aus dem gewählten Messkonzept beauftragen?" +# } +# scope = "#/properties/Auswahl Zähler aus MK3 Z1 " +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "Zählernummer" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Wie lautet Ihre Zählernummer? Diese ist auch auf Ihrer Energierechnung zu finden." +# title = "Eigentumsnummer des bereits vorhandenen Zählers" +# } +# scope = "#/properties/Eigentumsnummer des bereits vorhandenen Zählers MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK3 Z1" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK3 Z1" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Anschluss an die Steuerbox MK3 Z1" = { +# enum = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# type = "string" +# } +# "Anzahl Wohneinheiten MK3 Z1" = { +# type = "object" +# } +# "Auswahl Entgeltmodell MK3 Z1" = { +# enum = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig)", +# ] +# type = "string" +# } +# "Auswahl Grund MK3 Z1" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK3 Z1" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK3 Z1" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK3 Z1" = { +# enum = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bestätigung Einspeisemangement MK3 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Bezugsleistung in kW MK3 Z1" = { +# type = "object" +# } +# "Einspeiseleistung MK3 Z1" = { +# type = "object" +# } +# "Energieverbrauch im Jahr MK3 Z1" = { +# type = "object" +# } +# "Hinweistext Anlagennutzung MK3 Z1" = { +# type = "object" +# } +# "Hinweistext Anschluss an die Steuerbox MK3 Z1" = { +# type = "object" +# } +# "Konkretisierung der Anlage MK3 Z1" = { +# type = "string" +# } +# "Montageort des Zählerschrankes MK3 Z1" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Steuerung der SteuVE MK3 Z1" = { +# enum = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# type = "string" +# } +# "Upload Einspeisemanagement MK3 Z1" = { +# type = "array" +# } +# "Wahl Bedarfsart Anlage MK3 Z1" = { +# type = "array" +# } +# "Wahl Einspeiser MK3 Z1" = { +# enum = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# type = "string" +# } +# "Zustimmung Beauftragung Zusatzleistung MK3 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zustimmung TAB NS MK3 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK3 Z1" = { +# enum = [ +# "Z1", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK3 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Zählernummer auszubauender Zähler MK3 Z1", +# "Zählerbezeichnung im ausgewählten Messkonzept MK3 Z1", +# "Auswahl Grund nach Einbau MK3 Z1", +# "Auswahl Grund nach Wechsel MK3 Z1", +# "Wahl Einspeiser MK3 Z1", +# "Einspeiseleistung MK3 Z1", +# "Upload Einspeisemanagement MK3 Z1", +# "Steuerung der SteuVE MK3 Z1", +# "Anschluss an die Steuerbox MK3 Z1", +# "Zustimmung Beauftragung Zusatzleistung MK3 Z1", +# "Anzahl Wohneinheiten MK3 Z1", +# "Bezugsleistung in kW MK3 Z1", +# "Konkretisierung der Anlage MK3 Z1", +# "Energieverbrauch im Jahr MK3 Z1", +# "Montageort des Zählerschrankes MK3 Z1", +# "Abfrage Spannungsebene MK3 Z1", +# "Zustimmung TAB NS MK3 Z1", +# "Bestätigung Einspeisemangement MK3 Z1", +# "Wahl Bedarfsart Anlage MK3 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK2" +# title = "Angaben zum Zähler Z1 (Messkonzept 3)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK3 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z1", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK3 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK3 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK3 Z1" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK3 Z1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK3 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK3 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wählen Sie eine Einspeiseart aus" +# } +# scope = "#/properties/Wahl Einspeiser MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Einspeiseleistung in kVA" +# range = {} +# unit = { +# label = "kva" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Gesamteinspeiseleistung der Erzeugungsanlage(n) an." +# } +# scope = "#/properties/Einspeiseleistung MK3 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEIAaQB0AHQAZQAgAGIAZQBzAHQA5AB0AGkAZwBlAG4AIABTAGkAZQAgAHUAbgBzACAAZABlAG4AIABFAGkAbgBiAGEAdQAgAGQAZQBzACAARQBpAG4AcwBwAGUAaQBzAGUAbQBhAG4AYQBnAGUAbQBlAG4AdABzAC4AIABEAGEAcwAgAGQAYQBmAPwAcgAgAGUAcgBmAG8AcgBkAGUAcgBsAGkAYwBoAGUAIABEAG8AawB1AG0AZQBuAHQAIABlAHIAaABhAGwAdABlAG4AIABTAGkAZQAgAGgAaQBlAHIAOgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAHQAeQBwAGUAIgA6ACIAbABpAG4AZQBiAHIAZQBhAGsAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBcAHIAXABuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6AG4AdQBsAGwALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAbgB1AGwAbAAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Einspeisemanagement gemäß §9 EEG" +# } +# scope = "#/properties/Bestätigung Einspeisemangement MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 1 +# restricted = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier die ausgefüllte Bestätigung des Einspeisemanagements hoch." +# supportedTypes = "PDF" +# tags = [ +# "Bestätigung Einspeisemanagement", +# ] +# zoneLabel = "Bitte laden Sie hier die ausgefüllte Bestätigung der Inbetriebsetzung des Einspeisemanagements hoch" +# } +# scope = "#/properties/Upload Einspeisemanagement MK3 Z1" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anlagennutzung MK3 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABpAHMAdAAgAGEAdQBzAHoAdQB3AOQAaABsAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAZwBlAG4AdQB0AHoAdAAgAHcAZQByAGQAZQBuACAAcwBvAGwAbAAuACAAUwB0AGUAdQBlAHIAYgBhAHIAZQAgAEEAbgBsAGEAZwBlAG4AIABzAGkAbgBkACAAbgBhAGMAaAAgAKcAIAAxADQAYQAgAEUAbgBXAEcAIABiAGUAaQBtACAATgBlAHQAegBiAGUAdAByAGUAaQBiAGUAcgAgAGEAbgB6AHUAbQBlAGwAZABlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGgAZQBhAGQAaQBuAGcAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdABhAGcAIgA6ACIAaAAzACIAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBEAGkAZQAgAEEAbgBtAGUAbABkAHUAbgBnACAAZgD8AHIAIACnACAAMQA0AGEAIABFAG4AVwBHACAAQQBuAGwAYQBnAGUAbgAgAG8AaABuAGUAIABlAGkAZwBlAG4AZQBtACAAWgDkAGgAbABlAHIAIABrAPYAbgBuAGUAbgAgAG0AaQB0ACAAZQBpAG4AZQByACAAQgBlAHoAdQBnAHMAYQBuAGwAYQBnAGUAIAAoAHoALgAgAEIALgAgAEgAYQB1AHMAaABhAGwAdAAsACAARwBlAHcAZQByAGIAZQAsAC4ALgAuACkAIABhAG4AZwBlAG0AZQBsAGQAZQB0ACAAdQBuAGQAIABnAGUAbQBlAGkAbgBzAGEAbQAgAGcAZQBtAGUAcwBzAGUAbgAgAHcAZQByAGQAZQBuAC4AIABEAGkAZQAgAEEAbgBtAGUAbABkAHUAbgBnACAAZgD8AHIAIACnACAAMQA0AGEAIABFAG4AVwBHACAAQQBuAGwAYQBnAGUAbgAgAG0AaQB0ACAAZQBpAGcAZQBuAGUAbQAgAFoA5ABoAGwAZQByACAAdwDkAGgAbABlAG4AIABTAGkAZQAgAGIAaQB0AHQAZQAgAGQAaQBlACAAQgBlAGQAYQByAGYAcwBhAHIAdAAgAGEAdQBzAC4AIAAgACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAdAB5AHAAZQAiADoAIgBsAGkAbgBlAGIAcgBlAGEAawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlACAAcwBlAHAAYQByAGEAdABlAG4AIABBAG4AbQBlAGwAZAB1AG4AZwBlAG4AIAB2AG8AbgAgAKcAMQA0AGEAIABFAG4AVwBHACAAUwB0AGUAdQBlAHIAYgBhAHIAZQBuACAAQQBuAGwAYQBnAGUAbgAgAGYAaQBuAGQAZQBuACAAUwBpAGUAIABpAG0AIABJAG4AcwB0AGEAbABsAGEAdABlAHUAcgBwAG8AcgB0AGEAbAAgAGYA/AByACAAVwDkAHIAbQBlAHAAdQBtAHAAZQBuAC8ASwBsAGkAbQBhAGEAbgBsAGEAZwBlAG4ALAAgAEwAYQBkAGUAZQBpAG4AcgBpAGMAaAB0AHUAbgBnAGUAbgAgAHUAbgBkACAAUwBwAGUAaQBjAGgAZQByAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIATQBlAGgAcgBmAGEAYwBoAGEAdQBzAHcAYQBoAGwAIABpAHMAdAAgAG0A9gBnAGwAaQBjAGgAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# options = { +# halfWidth = false +# label = false +# options = [ +# "Haushalt", +# "Gewerbe", +# "Wohn / Gewerbe", +# "Landwirtschaft", +# "Wärmepumpe inkl. Zusatzheizung §14a EnWG", +# "private Ladeeinrichtung §14a EnWG", +# "Klimanlagen §14a EnWG", +# "Anlage zur Stromspeicherung §14a EnWG", +# "öffentliche Ladeeinrichtung", +# "andere Bedarfsart", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# uiType = "button" +# } +# scope = "#/properties/Wahl Bedarfsart Anlage MK3 Z1" +# type = "MultichoiceControl" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Steuerung der SteuVE MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anschluss an die Steuerbox MK3 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABtAHUAcwBzACAAYQBuAGcAZQBnAGUAYgBlAG4AIAB3AGUAcgBkAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAKABTAHQAZQB1AGUAcgBiAGEAcgBlAG4AIABWAGUAcgBiAHIAYQB1AGMAaABzAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBWAEUAKQApACAAbQBpAHQAIABkAGUAcgAgAFMAdABlAHUAZQByAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBlAHIAYgBvAHgAKQAgAHYAZQByAGQAcgBhAGgAdABlAHQALwBhAG4AZwBlAHMAYwBoAGwAbwBzAHMAZQBuACAAdwBpAHIAZAA6AFwAcgBcAHIAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBEAGkAZwBpAHQAYQBsACAARQBFAEIAVQBTADoAIABBAG4AcwBjAGgAbAB1AHMAcwAgAGQAZQByACAAUwB0AGUAdQBWAEUAIABtAGkAdAB0AGUAbABzACAARQB0AGgAZQByAG4AZQB0ACAASwBhAGIAZQBsACAAKABOAGUAdAB6AHcAZQByAGsAawBhAGIAZQBsACkAIABhAG4AIABkAGkAZQAgAFIASgA0ADUALQBCAHUAYwBoAHMAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBsAGkAcwB0AGkAdABlAG0AIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdgBhAGwAdQBlACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIARABpAGcAaQB0AGEAbAAgAEsATgBYADoAIABBAG4AcwBjAGgAbAB1AHMAcwAgAGQAZQByACAAUwB0AGUAdQBWAEUAIABtAGkAdAB0AGUAbABzACAARQB0AGgAZQByAG4AZQB0ACAASwBhAGIAZQBsACAAKABOAGUAdAB6AHcAZQByAGsAawBhAGIAZQBsACkAIABhAG4AIABkAGkAZQAgAFIASgA0ADUALQBCAHUAYwBoAHMAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgAXAByACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdABpAHQAZQBtACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHYAYQBsAHUAZQAiADoAMgB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFAAbwB0AGUAbgB6AGkAYQBsAGYAcgBlAGkAZQByACAASwBvAG4AdABhAGsAdAA6ACAAQQBuAHMAYwBoAGwAdQBzAHMAIABkAGUAcgAgAFMAdABlAHUAVgBFACAAYQBuACAAZABpAGUAIABSAGUAbABhAGkAcwAtAEsAbwBuAHQAYQBrAHQAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgALAAgAFYAZQByAGIAaQBuAGQAdQBuAGcAIAD8AGIAZQByACAARAByAGEAaAB0ACAAKABTAHQAcgBvAG0AbABlAGkAdAB1AG4AZwBlAG4AKQAgACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBsAGkAcwB0AGkAdABlAG0AIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdgBhAGwAdQBlACIAOgAzAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgBsAGkAcwB0AFQAeQBwAGUAIgA6ACIAYgB1AGwAbABlAHQAIgAsACIAcwB0AGEAcgB0ACIAOgAxACwAIgB0AGEAZwAiADoAIgB1AGwAIgB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# type = "Label" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = true +# label = false +# options = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Anschluss an die Steuerbox MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für die Gewährung des reduzierten Netzentgelt müssen Sie vorgeben, ob Ihr Kunde eine pauschale Reduzierung des Netzentgeltes (Modul 1) oder eine prozentuale Reduzierung des Arbeitspreises (Modul 2) wünscht. Für Modul 2 ist ein separater für die steuerbare Verbrauchseinsrichtung erforderlich." +# title = "Abrechnung des reduzierten Netzentgeltes" +# } +# scope = "#/properties/Auswahl Entgeltmodell MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAYgBlAHMAdADkAHQAaQBnAGUALAAgAGQAYQBzACAAZABpAGUAIABCAGUAcgBlAGkAdABzAHQAZQBsAGwAdQBuAGcALAAgAE0AbwBuAHQAYQBnAGUAIAB1AG4AZAAgAEIAZQB0AHIAaQBlAGIAIABkAGUAcgAgAFMAdABlAHUAZQByAHUAbgBnAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAZAB1AHIAYwBoACAAZABpAGUAIABHAGUAbABzAGUAbgB3AGEAcwBzAGUAcgAgAEUAbgBlAHIAZwBpAGUAbgBlAHQAegAgAEcAbQBiAEgAIABlAHIAZgBvAGwAZwBlAG4AIABzAG8AbABsACAAdQBuAGQAIABkAGUAbQAgAEsAdQBuAGQAZQBuACAAZABhAGQAdQByAGMAaAAgAEsAbwBzAHQAZQBuACAAZgD8AHIAIABkAGkAZQAgAFoAdQBzAGEAdAB6AGwAZQBpAHMAdAB1AG4AZwAgAG4AYQBjAGgAIACnADMANAAgAEEAYgBzAC4AIAAyACAATQBlAHMAcwBzAHQAZQBsAGwAZQBuAGIAZQB0AHIAaQBlAGIAcwBnAGUAcwBlAHQAegAgAGUAbgB0AHMAdABlAGgAZQBuAC4AIABEAGUAcgAgAEsAdQBuAGQAIABpAHMAdAAgAGkAbgBmAG8AcgBtAGkAZQByAHQAIAB1AG4AZAAgAGgAYQB0ACAAbQBpAGMAaAAgAGUAcgBtAOQAYwBoAHQAaQBnAHQAIABkAGkAZQBzAGUAIABCAGUAYQB1AGYAdAByAGEAZwB1AG4AZwAgAGEAbgAgAGQAaQBlACAARwBlAGwAcwBlAG4AdwBhAHMAcwBlAHIAIABFAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAgAEcAbQBiAEgAIAB6AHUAIAD8AGIAZQByAG0AaQB0AHQAZQBsAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung Beauftragung Zusatzleistung MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAbQBpAHQAIABiAGUAcwB0AOQAdABpAGcAZQAgAGkAYwBoACAAZABpAGUAIABFAGkAbgBoAGEAbAB0AHUAbgBnACAAZABlAHIAIAAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFQAZQBjAGgAbgBpAHMAYwBoAGUAIABBAG4AcwBjAGgAbAB1AHMAcwBiAGUAZABpAG4AZwB1AG4AZwBlAG4AIABmAPwAcgAgAGQAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAIABhAG4AIABkAGEAcwAgAE4AaQBlAGQAZQByAHMAcABhAG4AbgB1AG4AZwBzAG4AZQB0AHoAIABUAEEAQgAgAE4AUwAgAE4AbwByAGQAIAAyADAAMQA5ACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAG4AawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgByAGUAbAAiADoAIgBuAG8AbwBwAGUAbgBlAHIAIgAsACIAdABhAHIAZwBlAHQAIgA6AG4AdQBsAGwALAAiAHQAaQB0AGwAZQAiADoAbgB1AGwAbAAsACIAdQByAGwAIgA6ACIAaAB0AHQAcABzADoALwAvAHcAdwB3AC4AZwB3AC0AZQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUALgBkAGUALwBmAGkAbABlAGEAZABtAGkAbgAvAGcAdwAtAGUAbgBlAHIAZwBpAGUAbgBlAHQAegBlAC8AMgAwAF8AbgBlAHQAegBhAG4AcwBjAGgAbAB1AHMAcwAvAHQAYQBiAF8AbgBzAF8AbgBvAHIAZABfADIAMAAxADkAXwB2AF8AMgAwADEAOQAxADEAMgA3AC4AcABkAGYAIgB9ACwAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgAgAHUAbgBkACAAZABlAHIAIABFAHIAZwDkAG4AegBlAG4AZABlACAAQgBlAGQAaQBuAGcAdQBuAGcAZQBuACAAdQBuAGQAIABIAGkAbgB3AGUAaQBzAGUAIAB6AHUAIABkAGUAbgAgAB4gIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBUAGUAYwBoAG4AaQBzAGMAaABlAG4AIABBAG4AcwBjAGgAbAB1AHMAcwBiAGUAZABpAG4AZwB1AG4AZwBlAG4AIABmAPwAcgAgAGQAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAIABhAG4AIABkAGEAcwAgAE4AaQBlAGQAZQByAHMAcABhAG4AbgB1AG4AZwBzAG4AZQB0AHoAIAAoAFQAQQBCACAAMgAwADEAOQApACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAG4AawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgByAGUAbAAiADoAIgBuAG8AbwBwAGUAbgBlAHIAIgAsACIAdABhAHIAZwBlAHQAIgA6AG4AdQBsAGwALAAiAHQAaQB0AGwAZQAiADoAbgB1AGwAbAAsACIAdQByAGwAIgA6ACIAaAB0AHQAcABzADoALwAvAHcAdwB3AC4AZwB3AC0AZQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUALgBkAGUALwBmAGkAbABlAGEAZABtAGkAbgAvAGcAdwAtAGUAbgBlAHIAZwBpAGUAbgBlAHQAegBlAC8AMgAwAF8AbgBlAHQAegBhAG4AcwBjAGgAbAB1AHMAcwAvADIAMAAyADQALQAwADQALQAxADgAXwBlAHIAZwAlAEMAMwAlAEEANABuAHoAdQBuAGcAZQBuAF8AdABhAGIAXwAyADAAMQA5AF8AZwB3AG4ALgBwAGQAZgAiAH0ALAB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiABwgIABkAGUAcgAgAEcARQBMAFMARQBOAFcAQQBTAFMARQBSACAARQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUAIABHAG0AYgBIAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung TAB NS MK3 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für den Einbau und Betrieb der Steuerungseinrichtung in Verbindung mit einem intelligenten Messsystem (iMSys) ist laut Messstellenbetriebsgesetzt (MSBG) der Messstellenbetreiber verantwortlich. Der Einbau Mess- (iMSys) und Steuerungseinrichtung (z.B. FNN-Steuerbox) wird durch die Gelsenwasser Energienetze GmbH durchgeführt. . Der Betrieb der Steuerungseinrichtung hat keinen Einfluss auf die freie Wahl des Stromlieferanten." +# title = "Steuerbare Verbrauchseinrichtung" +# } +# scope = "#/properties/Steuerung nach 14a MK3 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 2 +# show = false +# validate = false +# } +# label = "Anzahl Wohneinheiten" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Wie viele Wohneinheiten befinden sich im Anschlussobjekt?" +# title = "Anzahl der Wohneinheiten" +# } +# scope = "#/properties/Anzahl Wohneinheiten MK3 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Bezugsleistung in kW" +# range = {} +# unit = { +# label = "kw" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte berücksichtigen Sie ein eventuell vorhandenes Energiemanagementsystem (EMS), beispielsweise für steuerbare Verbraucher, die sich hinter diesem Zähler befinden könnten, und geben Sie lediglich die maximale gleichzeitige Leistung an z.B. 21." +# title = "Bezugsleistung in kW" +# } +# scope = "#/properties/Bezugsleistung in kW MK3 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "z.B. EG rechts, Halle2, ..." +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Konkretisierung der Anlage (Bezeichnung)" +# } +# scope = "#/properties/Konkretisierung der Anlage MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 6 +# show = false +# validate = false +# } +# label = null +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Voraussichtlicher Jahresverbrauch" +# } +# scope = "#/properties/Energieverbrauch im Jahr MK3 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Messstellenbetrieb MK3 Z1" +# schema = jsonencode( +# { +# properties = { +# "Ausführung des Zähler MK3 Z1" = { +# type = "object" +# } +# "Befestigungsart MK3 Z1" = { +# enum = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Befestigungsart RLM MK3 Z1" = { +# enum = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Bestands RLM MK3 Z1" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Bestätigung RLM Zähler MK3 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Datum Inbetriebnahme MK3 Z1" = { +# type = "object" +# } +# "Gewünschte Messeinrichtung MK3 Z1" = { +# enum = [ +# "Drehstromzähler", +# "Doppeltarifzähler", +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Gewünschte Messeinrichtung RLM MK3 Z1" = { +# enum = [ +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Messart RLM wenn Einspeisung 100 MK3 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler MK3 Z1" = { +# enum = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler RLM MK3 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messkonzeptwechsel MK3 Z1" = { +# default = false +# type = "boolean" +# } +# Next = { +# type = "object" +# } +# "Schwachlast Regelung MK3 Z1" = { +# default = false +# type = "boolean" +# } +# "Untermessung Mittelspannung MK3 Z1" = { +# default = false +# type = "boolean" +# } +# "Upload Zähler Wechsel ohne Gerätetausch MK3 Z1" = { +# type = "array" +# } +# "Wechsel ohne Gerätetausch MK3 Z1" = { +# default = false +# type = "boolean" +# } +# "Zählernummer des Mittelspannungszähler" = { +# type = "object" +# } +# "Zählernummer des Mittelspannungszählers MK3 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler Einspeisung MK3 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler HT MK3 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler NT MK3 Z1" = { +# type = "object" +# } +# "vorhandene Zählernummer ohne Gerätetausch MK3 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Messart RLM wenn Einspeisung 100 MK3 Z1", +# "Bestands RLM MK3 Z1", +# "Messart des Zähler RLM MK3 Z1", +# "Messart des Zähler MK3 Z1", +# "Gewünschte Messeinrichtung MK3 Z1", +# "Gewünschte Messeinrichtung RLM MK3 Z1", +# "Befestigungsart MK3 Z1", +# "Befestigungsart RLM MK3 Z1", +# "Datum Inbetriebnahme MK3 Z1", +# "Zählerstand vorhandener Zähler HT MK3 Z1", +# "Zählerstand vorhandener Zähler Einspeisung MK3 Z1", +# "Upload Zähler Wechsel ohne Gerätetausch MK3 Z1", +# "Zählernummer des Mittelspannungszählers MK3 Z1", +# "vorhandene Zählernummer ohne Gerätetausch MK3 Z1", +# "Bestätigung RLM Zähler MK3 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Messstellenbetrieb MK2" +# title = "Angaben zum Zähler Z1 (Messkonzept 3)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart RLM wenn Einspeisung 100 MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Sind in der Bestandsanlage(n) schon RLM (Registrierende Lastgangmessung) Zähler verbaut?" +# } +# scope = "#/properties/Bestands RLM MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler RLM MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGUAbgAgAFoA5ABoAGwAZQByACAAYQBsAHMAIABSAEwATQAgACgAUgBlAGcAaQBzAHQAcgBpAGUAcgBlAG4AZABlACAATABhAHMAdABnAGEAbgBnAG0AZQBzAHMAdQBuAGcAIABhAHUAcwBmAPwAaAByAGUAbgApACAAYQB1AHMAZgD8AGgAcgBlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Bestätigung RLM Zähler MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Drehstromzähler", +# "Doppeltarifzähler", +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung RLM MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = true +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Ausführung des Zähler MK3 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEEAdQBmAGcAcgB1AG4AZAAgAEkAaAByAGUAcgAgAEEAbgBnAGEAYgBlAG4AIAB3AGkAcgBkACAAZABlAHIAIABaAOQAaABsAGUAcgAgAGEAbABzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADEALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAaQBNAFMAeQBzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAYQB1AHMAZwBlAGYA/ABoAHIAdAAuACAARABlAHIAIABFAGkAbgBiAGEAdQAgAGUAcgBmAG8AbABnAHQAIABkAHUAcgBjAGgAIABkAGkAZQAgAEcAZQBsAHMAZQBuAHcAYQBzAHMAZQByACAARQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUAIABHAG0AYgBIAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBoAGUAYQBkAGkAbgBnACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHQAYQBnACIAOgAiAGgAMwAiAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = null +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart MK3 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart RLM MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# startDate = {} +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte Datum der Inbetriebnahme(n) angeben." +# title = "Inbetriebnahmedatum" +# } +# scope = "#/properties/Datum Inbetriebnahme MK3 Z1" +# type = "DatePickerControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAQQBuAHMAYwBoAGwAdQBzAHMAbgB1AHQAegBlAHIAIAAoAEsAdQBuAGQAZQApACAAdwD8AG4AcwBjAGgAdAAgAGUAaQBuAGUAIABTAGMAaAB3AGEAYwBoAGwAYQBzAHQAcgBlAGcAZQBsAHUAbgBnAD8AXABuAEQAaQBlACAAUwBjAGgAdwBhAGMAaABsAGEAcwB0AHIAZQBnAGUAbAB1AG4AZwAgAHMAbwBsAGwAIABkAGUAbgAgAEEAbgByAGUAaQB6ACAAZwBlAGIAZQBuACwAIABlAGkAbgBlAG4AIABUAGUAaQBsACAAZABlAHMAIABTAHQAcgBvAG0AdgBlAHIAYgByAGEAdQBjAGgAcwAgAHYAbwBtACAAVABhAGcAIABpAG4AIABkAGkAZQAgAE4AYQBjAGgAdAAgAHoAdQAgAHYAZQByAGwAYQBnAGUAcgBuAC4AIABcAG4AVQBtACAAZABpAGUAIABTAGMAaAB3AGEAYwBoAGwAYQBzAHQAcgBlAGcAZQBsAHUAbgBnACAAbgB1AHQAegBlAG4AIAB6AHUAIABrAPYAbgBuAGUAbgAgACwAIABpAHMAdAAgAGUAaQBuACAARABvAHAAcABlAGwAdABhAHIAaQBmAHoA5ABoAGwAZQByACAAdQBuAGQAIABlAGkAbgAgAFMAdABlAHUAZQByAGcAZQByAOQAdAAgAGYA/AByACAAZABpAGUAIABVAG0AcwBjAGgAYQBsAHQAdQBuAGcAIAB6AHcAaQBzAGMAaABlAG4AIABkAGkAZQBzAGUAbgAgAFoA5ABoAGwAdwBlAHIAawBlAG4AIABuAG8AdAB3AGUAbgBkAGkAZwAuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Schwachlast Regelung" +# } +# scope = "#/properties/Schwachlast Regelung MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAdgBvAHIAaABhAG4AZABlAG4AZQAgAFoA5ABoAGwAZQByACAAaQBzAHQAIABlAGkAbgBlACAAbQBvAGQAZQByAG4AZQAgAE0AZQBzAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAKABtAE0ARQApACAAbwBkAGUAcgAgAGkAbgB0AGUAbABsAGkAZwBlAG4AdABlACAATQBlAHMAcwBlAGkAbgByAGkAYwBoAHQAdQBuAGcAIAAoAGkATQBTAHkAcwApAC4AIABFAGkAbgAgAFcAZQBjAGgAcwBlAGwAIABpAHMAdAAgAG4AaQBjAGgAdAAgAG4AbwB0AHcAZQBuAGQAaQBnACwAIABlAGkAbgBlACAAUABhAHIAYQBtAGUAdAByAGkAZQByAHUAbgBnACAAKABGAHIAZQBpAHMAYwBoAGEAbAB0AHUAbgBnACAAdwBlAGkAdABlAHIAZQByACAAWgDkAGgAbAB3AGUAcgBrAGUAKQAgAGkAcwB0ACAAYQB1AHMAcgBlAGkAYwBoAGUAbgBkAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wechsel ohne Gerätetausch" +# } +# scope = "#/properties/Wechsel ohne Gerätetausch MK3 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "HT (bei Eintarif-Zählern OBIS 1.8.0; bei Doppeltarifzählern OBIS 1.8.2)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler HT MK3 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "NT (bei Doppeltarifen OBIS 1.8.1 (Optional)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler NT MK3 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "OBIS 2.8.0 (Einspeisung, falls nicht vorhanden bitte \"0\" eintragen" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler Einspeisung MK3 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = true +# label = "Bitte geben Sie hier die Zählernummer ein" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/vorhandene Zählernummer ohne Gerätetausch MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 3 +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier Foto des vorhandenen Zählers hoch. Achten Sie bitte auf die OBIS Kennzahl 1.8.0 & 2.8.0" +# tags = [ +# "Zählerfotos bestand bei MK Wechsel ohne Gerätetausch", +# ] +# zoneLabel = "Bitte laden Sie hier die Fotos hoch." +# } +# scope = "#/properties/Upload Zähler Wechsel ohne Gerätetausch MK3 Z1" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEoAYQAsACAAYQBuACAAZABpAGUAcwBlAG0AIABaAOQAaABsAGUAcgAgAGkAcwB0ACAAYgBlAHIAZQBpAHQAcwAgAGUAaQBuAGUAIABhAGwAdABlACAARQByAHoAZQB1AGcAdQBuAGcAcwBhAG4AbABhAGcAZQAgAGkAbgAgAEIAZQB0AHIAaQBlAGIAIAB1AG4AZAAgAGkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGEAcwAgAHYAbwByAGgAYQBuAGQAZQBuAGUAIABFAGkAbgBzAHAAZQBpAHMAZQAgAE0AZQBzAHMAawBvAG4AegBlAHAAdAAgAOQAbgBkAGUAcgBuACAAKAB6AC4AQgAuACAAdgBvAG4AIABNAEsAMgAgAGEAdQBmACAATQBLACAAMwApACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messkonzeptwechsel" +# } +# scope = "#/properties/Messkonzeptwechsel MK3 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Kein Zählerwechsel notwendig MK3 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlAHMAZQByACAAWgDkAGgAbABlAHIAIAB3AGkAcgBkACAAYQBsAHMAIABlAGkAbgBlACAAVQBuAHQAZQByAG0AZQBzAHMAdQBuAGcAIABoAGkAbgB0AGUAcgAgAGUAaQBuAGUAcgAgAE0AaQB0AHQAZQBsAHMAcABhAG4AbgB1AG4AZwBzAGgAYQB1AHAAdABtAGUAcwBzAHUAbgBnACAAaQBuACAAZQBpAG4AZQByACAA3ABiAGUAcgBnAGEAYgBlAHMAdABhAHQAaQBvAG4AIABpAG4AcwB0AGEAbABsAGkAZQByAHQALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Untermessung Mittelspannung" +# } +# scope = "#/properties/Untermessung Mittelspannung MK3 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "Zählernummer des Mittelspannungszählers" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Zählernummer des Mittelspannungszählers" +# } +# scope = "#/properties/Zählernummer des Mittelspannungszählers MK3 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# targetStepId = "Informationen Vertragsinstallateur" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Abfrage welcher Zähler MK3 Z2" +# schema = jsonencode( +# { +# properties = { +# "Auswahl Zähler aus MK3 Z2" = { +# enum = [ +# "Ja", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# } +# required = [] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Abfrage welcher Zähler MK3" +# title = "Angaben zum Zähler (Messkonzept 3)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Möchten Sie den Zähler Z2 aus dem gewählten Messkonzept beauftragen?" +# } +# scope = "#/properties/Auswahl Zähler aus MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK3 Z2" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK3 Z2" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Auswahl Grund MK3 Z2" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK3 Z2" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK3 Z2" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK3 Z2" = { +# enum = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bestätigung Einspeisemangement MK3 Z2" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Einspeiseleistung MK3 Z2" = { +# type = "object" +# } +# "Konkretisierung der Anlage MK3 Z2" = { +# type = "string" +# } +# "Montageort des Zählerschrankes MK3 Z2" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Upload Einspeisemanagement MK3 Z2" = { +# type = "array" +# } +# "Wahl Einspeiser MK3 Z2" = { +# enum = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# type = "string" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK3 Z2" = { +# enum = [ +# "Z2", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK3 Z2" = { +# type = "string" +# } +# } +# required = [ +# "Zählernummer auszubauender Zähler MK3 Z2", +# "Zählerbezeichnung im ausgewählten Messkonzept MK3 Z2", +# "Auswahl Grund nach Einbau MK3 Z2", +# "Auswahl Grund nach Wechsel MK3 Z2", +# "Wahl Einspeiser MK3 Z2", +# "Einspeiseleistung MK3 Z2", +# "Upload Einspeisemanagement MK3 Z2", +# "Konkretisierung der Anlage MK3 Z2", +# "Montageort des Zählerschrankes MK3 Z2", +# "Abfrage Spannungsebene MK3 Z2", +# "Bestätigung Einspeisemangement MK3 Z2", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK3 Z1" +# title = "Angaben zum Zähler Z2 (Messkonzept 3)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK3 Z2" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z2", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK3 Z2" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK3 Z2" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK3 Z2" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK3 Z2" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK3 Z2" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK3 Z2" +# type = "GroupLayout" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wählen Sie eine Einspeiseart aus" +# } +# scope = "#/properties/Wahl Einspeiser MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Einspeiseleistung in kVA" +# range = {} +# unit = { +# label = "kva" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Gesamteinspeiseleistung der Erzeugungsanlage(n) an." +# } +# scope = "#/properties/Einspeiseleistung MK3 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEIAaQB0AHQAZQAgAGIAZQBzAHQA5AB0AGkAZwBlAG4AIABTAGkAZQAgAHUAbgBzACAAZABlAG4AIABFAGkAbgBiAGEAdQAgAGQAZQBzACAARQBpAG4AcwBwAGUAaQBzAGUAbQBhAG4AYQBnAGUAbQBlAG4AdABzAC4AIABEAGEAcwAgAGQAYQBmAPwAcgAgAGUAcgBmAG8AcgBkAGUAcgBsAGkAYwBoAGUAIABEAG8AawB1AG0AZQBuAHQAIABlAHIAaABhAGwAdABlAG4AIABTAGkAZQAgAGgAaQBlAHIAOgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAHQAeQBwAGUAIgA6ACIAbABpAG4AZQBiAHIAZQBhAGsAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBcAHIAXABuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6AG4AdQBsAGwALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAbgB1AGwAbAAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Einspeisemanagement gemäß §9 EEG" +# } +# scope = "#/properties/Bestätigung Einspeisemangement MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 1 +# restricted = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier die ausgefüllte Bestätigung des Einspeisemanagements hoch." +# supportedTypes = "PDF" +# tags = [ +# "Bestätigung Einspeisemanagement", +# ] +# zoneLabel = "Bitte laden Sie hier die ausgefüllte Bestätigung der Inbetriebsetzung des Einspeisemanagements hoch" +# } +# scope = "#/properties/Upload Einspeisemanagement MK3 Z2" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# label = "z.B. EG rechts, Halle2, ..." +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Konkretisierung der Anlage (Bezeichnung)" +# } +# scope = "#/properties/Konkretisierung der Anlage MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Messstellenbetrieb MK3 Z2" +# schema = jsonencode( +# { +# properties = { +# "Ausführung des Zähler MK3 Z2" = { +# type = "object" +# } +# "Befestigungsart MK3 Z2" = { +# enum = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Befestigungsart RLM MK3 Z2" = { +# enum = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Bestands RLM MK3 Z2" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Bestätigung RLM Zähler MK3 Z2" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Datum Inbetriebnahme MK3 Z2" = { +# type = "object" +# } +# "Gewünschte Messeinrichtung MK3 Z2" = { +# enum = [ +# "Drehstromzähler", +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Gewünschte Messeinrichtung RLM MK3 Z2" = { +# enum = [ +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Messart RLM wenn Einspeisung 100 MK3 Z2" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler MK3 Z2" = { +# enum = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler RLM MK3 Z2" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messkonzeptwechsel MK3 Z2" = { +# default = false +# type = "boolean" +# } +# Next = { +# type = "object" +# } +# "Untermessung Mittelspannung MK3 Z2" = { +# default = false +# type = "boolean" +# } +# "Upload Zähler Wechsel ohne Gerätetausch MK3 Z2" = { +# type = "array" +# } +# "Wechsel ohne Gerätetausch MK3 Z2" = { +# default = false +# type = "boolean" +# } +# "Zählernummer des Mittelspannungszähler" = { +# type = "object" +# } +# "Zählernummer des Mittelspannungszählers MK3 Z2" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler Einspeisung MK3 Z2" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler HT MK3 Z2" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler NT MK3 Z2" = { +# type = "object" +# } +# "vorhandene Zählernummer ohne Gerätetausch MK3 Z2" = { +# type = "string" +# } +# } +# required = [ +# "Messart RLM wenn Einspeisung 100 MK3 Z2", +# "Bestands RLM MK3 Z2", +# "Messart des Zähler RLM MK3 Z2", +# "Messart des Zähler MK3 Z2", +# "Gewünschte Messeinrichtung MK3 Z2", +# "Gewünschte Messeinrichtung RLM MK3 Z2", +# "Befestigungsart MK3 Z2", +# "Befestigungsart RLM MK3 Z2", +# "Datum Inbetriebnahme MK3 Z2", +# "Zählerstand vorhandener Zähler HT MK3 Z2", +# "Zählerstand vorhandener Zähler Einspeisung MK3 Z2", +# "Zählernummer des Mittelspannungszählers MK3 Z2", +# "vorhandene Zählernummer ohne Gerätetausch MK3 Z2", +# "Bestätigung RLM Zähler MK3 Z2", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Messstellenbetrieb MK3 Z1" +# title = "Angaben zum Zähler Z2 (Messkonzept 3)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart RLM wenn Einspeisung 100 MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Sind in der Bestandsanlage(n) schon RLM (Registrierende Lastgangmessung) Zähler verbaut?" +# } +# scope = "#/properties/Bestands RLM MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler RLM MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGUAbgAgAFoA5ABoAGwAZQByACAAYQBsAHMAIABSAEwATQAgACgAUgBlAGcAaQBzAHQAcgBpAGUAcgBlAG4AZABlACAATABhAHMAdABnAGEAbgBnAG0AZQBzAHMAdQBuAGcAIABhAHUAcwBmAPwAaAByAGUAbgApACAAYQB1AHMAZgD8AGgAcgBlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Bestätigung RLM Zähler MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Drehstromzähler", +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung RLM MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = true +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Ausführung des Zähler MK3 Z2" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEEAdQBmAGcAcgB1AG4AZAAgAEkAaAByAGUAcgAgAEEAbgBnAGEAYgBlAG4AIAB3AGkAcgBkACAAZABlAHIAIABaAOQAaABsAGUAcgAgAGEAbABzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADEALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAaQBNAFMAeQBzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAYQB1AHMAZwBlAGYA/ABoAHIAdAAuACAARABlAHIAIABFAGkAbgBiAGEAdQAgAGUAcgBmAG8AbABnAHQAIABkAHUAcgBjAGgAIABkAGkAZQAgAEcAZQBsAHMAZQBuAHcAYQBzAHMAZQByACAARQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUAIABHAG0AYgBIAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBoAGUAYQBkAGkAbgBnACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHQAYQBnACIAOgAiAGgAMwAiAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = null +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart MK3 Z2" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart RLM MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# fields = { +# startDate = {} +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte Datum der Inbetriebnahme(n) angeben." +# title = "Inbetriebnahmedatum" +# } +# scope = "#/properties/Datum Inbetriebnahme MK3 Z2" +# type = "DatePickerControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAdgBvAHIAaABhAG4AZABlAG4AZQAgAFoA5ABoAGwAZQByACAAaQBzAHQAIABlAGkAbgBlACAAbQBvAGQAZQByAG4AZQAgAE0AZQBzAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAKABtAE0ARQApACAAbwBkAGUAcgAgAGkAbgB0AGUAbABsAGkAZwBlAG4AdABlACAATQBlAHMAcwBlAGkAbgByAGkAYwBoAHQAdQBuAGcAIAAoAGkATQBTAHkAcwApAC4AIABFAGkAbgAgAFcAZQBjAGgAcwBlAGwAIABpAHMAdAAgAG4AaQBjAGgAdAAgAG4AbwB0AHcAZQBuAGQAaQBnACwAIABlAGkAbgBlACAAUABhAHIAYQBtAGUAdAByAGkAZQByAHUAbgBnACAAKABGAHIAZQBpAHMAYwBoAGEAbAB0AHUAbgBnACAAdwBlAGkAdABlAHIAZQByACAAWgDkAGgAbAB3AGUAcgBrAGUAKQAgAGkAcwB0ACAAYQB1AHMAcgBlAGkAYwBoAGUAbgBkAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wechsel ohne Gerätetausch" +# } +# scope = "#/properties/Wechsel ohne Gerätetausch MK3 Z2" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "HT (bei Eintarif-Zählern OBIS 1.8.0; bei Doppeltarifzählern OBIS 1.8.2)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler HT MK3 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "NT (bei Doppeltarifen OBIS 1.8.1 (Optional)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler NT MK3 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "OBIS 2.8.0 (Einspeisung, falls nicht vorhanden bitte \"0\" eintragen" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler Einspeisung MK3 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = true +# isNested = true +# label = "Bitte geben Sie hier die Zählernummer ein" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/vorhandene Zählernummer ohne Gerätetausch MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# maxQuantity = 3 +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier Foto des vorhandenen Zählers hoch. Achten Sie bitte auf die OBIS Kennzahl 1.8.0 & 2.8.0" +# tags = [ +# "Zählerfotos Bestand bei MK Wechsel ohne Gerätetausch", +# ] +# } +# scope = "#/properties/Upload Zähler Wechsel ohne Gerätetausch MK3 Z2" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEoAYQAsACAAYQBuACAAZABpAGUAcwBlAG0AIABaAOQAaABsAGUAcgAgAGkAcwB0ACAAYgBlAHIAZQBpAHQAcwAgAGUAaQBuAGUAIABhAGwAdABlACAARQByAHoAZQB1AGcAdQBuAGcAcwBhAG4AbABhAGcAZQAgAGkAbgAgAEIAZQB0AHIAaQBlAGIAIAB1AG4AZAAgAGkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGEAcwAgAHYAbwByAGgAYQBuAGQAZQBuAGUAIABFAGkAbgBzAHAAZQBpAHMAZQAgAE0AZQBzAHMAawBvAG4AegBlAHAAdAAgAOQAbgBkAGUAcgBuACAAKAB6AC4AQgAuACAAdgBvAG4AIABNAEsAMgAgAGEAdQBmACAATQBLACAAMwApACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messkonzeptwechsel" +# } +# scope = "#/properties/Messkonzeptwechsel MK3 Z2" +# type = "Control" +# }, +# ] +# options = { +# display = true +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Kein Zählerwechsel notwendig MK3 Z2" +# type = "GroupLayout" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlAHMAZQByACAAWgDkAGgAbABlAHIAIAB3AGkAcgBkACAAYQBsAHMAIABlAGkAbgBlACAAVQBuAHQAZQByAG0AZQBzAHMAdQBuAGcAIABoAGkAbgB0AGUAcgAgAGUAaQBuAGUAcgAgAE0AaQB0AHQAZQBsAHMAcABhAG4AbgB1AG4AZwBzAGgAYQB1AHAAdABtAGUAcwBzAHUAbgBnACAAaQBuACAAZQBpAG4AZQByACAA3ABiAGUAcgBnAGEAYgBlAHMAdABhAHQAaQBvAG4AIABpAG4AcwB0AGEAbABsAGkAZQByAHQALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Untermessung Mittelspannung" +# } +# scope = "#/properties/Untermessung Mittelspannung MK3 Z2" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "Zählernummer des Mittelspannungszählers" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Zählernummer des Mittelspannungszählers" +# } +# scope = "#/properties/Zählernummer des Mittelspannungszählers MK3 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# targetStepId = "Informationen Vertragsinstallateur" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Abfrage welcher Zähler MK4" +# schema = jsonencode( +# { +# properties = { +# "Auswahl Zähler aus MK4 Z1" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Eigentumsnummer des bereits vorhandenen Zählers MK4 Z1" = { +# type = "string" +# } +# Next = { +# type = "object" +# } +# } +# required = [ +# "Eigentumsnummer des bereits vorhandenen Zählers MK4 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Abfrage welcher Zähler MK36008" +# title = "Angaben zum Zähler Z1 (Messkonzept 4)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Möchten Sie den Zähler Z1 aus dem gewählten Messkonzept beauftragen?" +# } +# scope = "#/properties/Auswahl Zähler aus MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "Zählernummer" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Wie lautet Ihre Zählernummer? Diese ist auch auf Ihrer Energierechnung zu finden." +# title = "Eigentumsnummer des bereits vorhandenen Zählers" +# } +# scope = "#/properties/Eigentumsnummer des bereits vorhandenen Zählers MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK4 Z1" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK4 Z1" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Anschluss an die Steuerbox MK4 Z1" = { +# enum = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# type = "string" +# } +# "Anzahl Wohneinheiten MK4 Z1" = { +# type = "object" +# } +# "Auswahl Entgeltmodell MK4 Z1" = { +# enum = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig)", +# ] +# type = "string" +# } +# "Auswahl Grund MK4 Z1" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK4 Z1" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK4 Z1" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK4 Z1" = { +# enum = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bestätigung Einspeisemangement MK4 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Bezugsleistung in kW MK4 Z1" = { +# type = "object" +# } +# "Einspeiseleistung MK4 Z1" = { +# type = "object" +# } +# "Energieverbrauch im Jahr MK4 Z1" = { +# type = "object" +# } +# "Hinweistext Anlagennutzung MK4 Z1" = { +# type = "object" +# } +# "Hinweistext Anschluss an die Steuerbox MK4 Z1" = { +# type = "object" +# } +# "Konkretisierung der Anlage MK4 Z1" = { +# type = "string" +# } +# "Montageort des Zählerschrankes MK4 Z1" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Steuerung der SteuVE MK4 Z1" = { +# enum = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# type = "string" +# } +# "Upload Einspeisemanagement MK4 Z1" = { +# type = "array" +# } +# "Wahl Bedarfsart Anlage MK4 Z1" = { +# type = "array" +# } +# "Wahl Einspeiser MK4 Z1" = { +# enum = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# type = "string" +# } +# "Zustimmung Beauftragung Zusatzleistung MK4 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zustimmung TAB NS MK4 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK4 Z1" = { +# enum = [ +# "Z1", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK4 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Zählernummer auszubauender Zähler MK4 Z1", +# "Zählerbezeichnung im ausgewählten Messkonzept MK4 Z1", +# "Auswahl Grund nach Einbau MK4 Z1", +# "Auswahl Grund nach Wechsel MK4 Z1", +# "Wahl Einspeiser MK4 Z1", +# "Einspeiseleistung MK4 Z1", +# "Upload Einspeisemanagement MK4 Z1", +# "Steuerung der SteuVE MK4 Z1", +# "Anschluss an die Steuerbox MK4 Z1", +# "Anzahl Wohneinheiten MK4 Z1", +# "Bezugsleistung in kW MK4 Z1", +# "Konkretisierung der Anlage MK4 Z1", +# "Energieverbrauch im Jahr MK4 Z1", +# "Montageort des Zählerschrankes MK4 Z1", +# "Abfrage Spannungsebene MK4 Z1", +# "Zustimmung Beauftragung Zusatzleistung MK4 Z1", +# "Zustimmung TAB NS MK4 Z1", +# "Bestätigung Einspeisemangement MK4 Z1", +# "Wahl Bedarfsart Anlage MK4 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK26361" +# title = "Angaben zum Zähler Z1 (Messkonzept 4)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK4 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z1", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK4 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK4 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK4 Z1" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK4 Z1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK4 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK4 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wählen Sie eine Einspeiseart aus" +# } +# scope = "#/properties/Wahl Einspeiser MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Einspeiseleistung in kVA" +# range = {} +# unit = { +# label = "kva" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Gesamteinspeiseleistung der Erzeugungsanlage(n) an." +# } +# scope = "#/properties/Einspeiseleistung MK4 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEIAaQB0AHQAZQAgAGIAZQBzAHQA5AB0AGkAZwBlAG4AIABTAGkAZQAgAHUAbgBzACAAZABlAG4AIABFAGkAbgBiAGEAdQAgAGQAZQBzACAARQBpAG4AcwBwAGUAaQBzAGUAbQBhAG4AYQBnAGUAbQBlAG4AdABzAC4AIABEAGEAcwAgAGQAYQBmAPwAcgAgAGUAcgBmAG8AcgBkAGUAcgBsAGkAYwBoAGUAIABEAG8AawB1AG0AZQBuAHQAIABlAHIAaABhAGwAdABlAG4AIABTAGkAZQAgAGgAaQBlAHIAOgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAHQAeQBwAGUAIgA6ACIAbABpAG4AZQBiAHIAZQBhAGsAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBcAHIAXABuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6AG4AdQBsAGwALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAbgB1AGwAbAAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Einspeisemanagement gemäß §9 EEG" +# } +# scope = "#/properties/Bestätigung Einspeisemangement MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 1 +# restricted = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier die ausgefüllte Bestätigung des Einspeisemanagements hoch." +# supportedTypes = "PDF" +# tags = [ +# "Bestätigung Einspeisemanagement", +# ] +# zoneLabel = "Bitte laden Sie hier die ausgefüllte Bestätigung der Inbetriebsetzung des Einspeisemanagements hoch" +# } +# scope = "#/properties/Upload Einspeisemanagement MK4 Z1" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anlagennutzung MK4 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABpAHMAdAAgAGEAdQBzAHoAdQB3AOQAaABsAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAZwBlAG4AdQB0AHoAdAAgAHcAZQByAGQAZQBuACAAcwBvAGwAbAAuACAAUwB0AGUAdQBlAHIAYgBhAHIAZQAgAEEAbgBsAGEAZwBlAG4AIABzAGkAbgBkACAAbgBhAGMAaAAgAKcAIAAxADQAYQAgAEUAbgBXAEcAIABiAGUAaQBtACAATgBlAHQAegBiAGUAdAByAGUAaQBiAGUAcgAgAGEAbgB6AHUAbQBlAGwAZABlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGgAZQBhAGQAaQBuAGcAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdABhAGcAIgA6ACIAaAAzACIAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBEAGkAZQAgAEEAbgBtAGUAbABkAHUAbgBnACAAZgD8AHIAIACnACAAMQA0AGEAIABFAG4AVwBHACAAQQBuAGwAYQBnAGUAbgAgAG8AaABuAGUAIABlAGkAZwBlAG4AZQBtACAAWgDkAGgAbABlAHIAIABrAPYAbgBuAGUAbgAgAG0AaQB0ACAAZQBpAG4AZQByACAAQgBlAHoAdQBnAHMAYQBuAGwAYQBnAGUAIAAoAHoALgAgAEIALgAgAEgAYQB1AHMAaABhAGwAdAAsACAARwBlAHcAZQByAGIAZQAsAC4ALgAuACkAIABhAG4AZwBlAG0AZQBsAGQAZQB0ACAAdQBuAGQAIABnAGUAbQBlAGkAbgBzAGEAbQAgAGcAZQBtAGUAcwBzAGUAbgAgAHcAZQByAGQAZQBuAC4AIABEAGkAZQAgAEEAbgBtAGUAbABkAHUAbgBnACAAZgD8AHIAIACnACAAMQA0AGEAIABFAG4AVwBHACAAQQBuAGwAYQBnAGUAbgAgAG0AaQB0ACAAZQBpAGcAZQBuAGUAbQAgAFoA5ABoAGwAZQByACAAdwDkAGgAbABlAG4AIABTAGkAZQAgAGIAaQB0AHQAZQAgAGQAaQBlACAAQgBlAGQAYQByAGYAcwBhAHIAdAAgAGEAdQBzAC4AIAAgACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAdAB5AHAAZQAiADoAIgBsAGkAbgBlAGIAcgBlAGEAawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlACAAcwBlAHAAYQByAGEAdABlAG4AIABBAG4AbQBlAGwAZAB1AG4AZwBlAG4AIAB2AG8AbgAgAKcAMQA0AGEAIABFAG4AVwBHACAAUwB0AGUAdQBlAHIAYgBhAHIAZQBuACAAQQBuAGwAYQBnAGUAbgAgAGYAaQBuAGQAZQBuACAAUwBpAGUAIABpAG0AIABJAG4AcwB0AGEAbABsAGEAdABlAHUAcgBwAG8AcgB0AGEAbAAgAGYA/AByACAAVwDkAHIAbQBlAHAAdQBtAHAAZQBuAC8ASwBsAGkAbQBhAGEAbgBsAGEAZwBlAG4ALAAgAEwAYQBkAGUAZQBpAG4AcgBpAGMAaAB0AHUAbgBnAGUAbgAgAHUAbgBkACAAUwBwAGUAaQBjAGgAZQByAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIATQBlAGgAcgBmAGEAYwBoAGEAdQBzAHcAYQBoAGwAIABpAHMAdAAgAG0A9gBnAGwAaQBjAGgAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# options = { +# halfWidth = false +# label = false +# options = [ +# "Haushalt", +# "Gewerbe", +# "Wohn / Gewerbe", +# "Landwirtschaft", +# "Wärmepumpe inkl. Zusatzheizung §14a EnWG", +# "private Ladeeinrichtung §14a EnWG", +# "Klimanlagen §14a EnWG", +# "Anlage zur Stromspeicherung", +# "öffentliche Ladeeinrichtung", +# "andere Bedarfsart", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# uiType = "button" +# } +# scope = "#/properties/Wahl Bedarfsart Anlage MK4 Z1" +# type = "MultichoiceControl" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Steuerung der SteuVE MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anschluss an die Steuerbox MK4 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABtAHUAcwBzACAAYQBuAGcAZQBnAGUAYgBlAG4AIAB3AGUAcgBkAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAKABTAHQAZQB1AGUAcgBiAGEAcgBlAG4AIABWAGUAcgBiAHIAYQB1AGMAaABzAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBWAEUAKQApACAAbQBpAHQAIABkAGUAcgAgAFMAdABlAHUAZQByAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBlAHIAYgBvAHgAKQAgAHYAZQByAGQAcgBhAGgAdABlAHQALwBhAG4AZwBlAHMAYwBoAGwAbwBzAHMAZQBuACAAdwBpAHIAZAA6AFwAcgBcAHIAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBEAGkAZwBpAHQAYQBsACAARQBFAEIAVQBTADoAIABBAG4AcwBjAGgAbAB1AHMAcwAgAGQAZQByACAAUwB0AGUAdQBWAEUAIABtAGkAdAB0AGUAbABzACAARQB0AGgAZQByAG4AZQB0ACAASwBhAGIAZQBsACAAKABOAGUAdAB6AHcAZQByAGsAawBhAGIAZQBsACkAIABhAG4AIABkAGkAZQAgAFIASgA0ADUALQBCAHUAYwBoAHMAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBsAGkAcwB0AGkAdABlAG0AIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdgBhAGwAdQBlACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIARABpAGcAaQB0AGEAbAAgAEsATgBYADoAIABBAG4AcwBjAGgAbAB1AHMAcwAgAGQAZQByACAAUwB0AGUAdQBWAEUAIABtAGkAdAB0AGUAbABzACAARQB0AGgAZQByAG4AZQB0ACAASwBhAGIAZQBsACAAKABOAGUAdAB6AHcAZQByAGsAawBhAGIAZQBsACkAIABhAG4AIABkAGkAZQAgAFIASgA0ADUALQBCAHUAYwBoAHMAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgAXAByACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdABpAHQAZQBtACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHYAYQBsAHUAZQAiADoAMgB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFAAbwB0AGUAbgB6AGkAYQBsAGYAcgBlAGkAZQByACAASwBvAG4AdABhAGsAdAA6ACAAQQBuAHMAYwBoAGwAdQBzAHMAIABkAGUAcgAgAFMAdABlAHUAVgBFACAAYQBuACAAZABpAGUAIABSAGUAbABhAGkAcwAtAEsAbwBuAHQAYQBrAHQAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgALAAgAFYAZQByAGIAaQBuAGQAdQBuAGcAIAD8AGIAZQByACAARAByAGEAaAB0ACAAKABTAHQAcgBvAG0AbABlAGkAdAB1AG4AZwBlAG4AKQAgACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBsAGkAcwB0AGkAdABlAG0AIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdgBhAGwAdQBlACIAOgAzAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgBsAGkAcwB0AFQAeQBwAGUAIgA6ACIAYgB1AGwAbABlAHQAIgAsACIAcwB0AGEAcgB0ACIAOgAxACwAIgB0AGEAZwAiADoAIgB1AGwAIgB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# type = "Label" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = true +# label = false +# options = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Anschluss an die Steuerbox MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für die Gewährung des reduzierten Netzentgelt müssen Sie vorgeben, ob Ihr Kunde eine pauschale Reduzierung des Netzentgeltes (Modul 1) oder eine prozentuale Reduzierung des Arbeitspreises (Modul 2) wünscht. Für Modul 2 ist ein separater für die steuerbare Verbrauchseinsrichtung erforderlich." +# title = "Abrechnung des reduzierten Netzentgeltes" +# } +# scope = "#/properties/Auswahl Entgeltmodell MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAYgBlAHMAdADkAHQAaQBnAGUALAAgAGQAYQBzACAAZABpAGUAIABCAGUAcgBlAGkAdABzAHQAZQBsAGwAdQBuAGcALAAgAE0AbwBuAHQAYQBnAGUAIAB1AG4AZAAgAEIAZQB0AHIAaQBlAGIAIABkAGUAcgAgAFMAdABlAHUAZQByAHUAbgBnAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAZAB1AHIAYwBoACAAZABpAGUAIABHAGUAbABzAGUAbgB3AGEAcwBzAGUAcgAgAEUAbgBlAHIAZwBpAGUAbgBlAHQAegAgAEcAbQBiAEgAIABlAHIAZgBvAGwAZwBlAG4AIABzAG8AbABsACAAdQBuAGQAIABkAGUAbQAgAEsAdQBuAGQAZQBuACAAZABhAGQAdQByAGMAaAAgAEsAbwBzAHQAZQBuACAAZgD8AHIAIABkAGkAZQAgAFoAdQBzAGEAdAB6AGwAZQBpAHMAdAB1AG4AZwAgAG4AYQBjAGgAIACnADMANAAgAEEAYgBzAC4AIAAyACAATQBlAHMAcwBzAHQAZQBsAGwAZQBuAGIAZQB0AHIAaQBlAGIAcwBnAGUAcwBlAHQAegAgAGUAbgB0AHMAdABlAGgAZQBuAC4AIABEAGUAcgAgAEsAdQBuAGQAIABpAHMAdAAgAGkAbgBmAG8AcgBtAGkAZQByAHQAIAB1AG4AZAAgAGgAYQB0ACAAbQBpAGMAaAAgAGUAcgBtAOQAYwBoAHQAaQBnAHQAIABkAGkAZQBzAGUAIABCAGUAYQB1AGYAdAByAGEAZwB1AG4AZwAgAGEAbgAgAGQAaQBlACAARwBlAGwAcwBlAG4AdwBhAHMAcwBlAHIAIABFAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAgAEcAbQBiAEgAIAB6AHUAIAD8AGIAZQByAG0AaQB0AHQAZQBsAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung Beauftragung Zusatzleistung MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAbQBpAHQAIABiAGUAcwB0AOQAdABpAGcAZQAgAGkAYwBoACAAZABpAGUAIABFAGkAbgBoAGEAbAB0AHUAbgBnACAAZABlAHIAIABUAGUAYwBoAG4AaQBzAGMAaABlACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBBAG4AcwBjAGgAbAB1AHMAcwBiAGUAZABpAG4AZwB1AG4AZwBlAG4AIABmAPwAcgAgAGQAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAIABhAG4AIABkAGEAcwAgAE4AaQBlAGQAZQByAHMAcABhAG4AbgB1AG4AZwBzAG4AZQB0AHoAIABUAEEAQgAgAE4AUwAgAE4AbwByAGQAIAAyADAAMQA5ACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAG4AawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgByAGUAbAAiADoAIgBuAG8AbwBwAGUAbgBlAHIAIgAsACIAdABhAHIAZwBlAHQAIgA6AG4AdQBsAGwALAAiAHQAaQB0AGwAZQAiADoAbgB1AGwAbAAsACIAdQByAGwAIgA6ACIAaAB0AHQAcABzADoALwAvAHcAdwB3AC4AZwB3AC0AZQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUALgBkAGUALwBmAGkAbABlAGEAZABtAGkAbgAvAGcAdwAtAGUAbgBlAHIAZwBpAGUAbgBlAHQAegBlAC8AMgAwAF8AbgBlAHQAegBhAG4AcwBjAGgAbAB1AHMAcwAvAHQAYQBiAF8AbgBzAF8AbgBvAHIAZABfADIAMAAxADkAXwB2AF8AMgAwADEAOQAxADEAMgA3AC4AcABkAGYAIgB9ACwAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgAgAHUAbgBkACAAZABlAHIAIABFAHIAZwDkAG4AegBlAG4AZABlACAAQgBlAGQAaQBuAGcAdQBuAGcAZQBuACAAdQBuAGQAIABIAGkAbgB3AGUAaQBzAGUAIAB6AHUAIABkAGUAbgAgAB4gIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBUAGUAYwBoAG4AaQBzAGMAaABlAG4AIABBAG4AcwBjAGgAbAB1AHMAcwBiAGUAZABpAG4AZwB1AG4AZwBlAG4AIABmAPwAcgAgAGQAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAIABhAG4AIABkAGEAcwAgAE4AaQBlAGQAZQByAHMAcABhAG4AbgB1AG4AZwBzAG4AZQB0AHoAIAAoAFQAQQBCACAAMgAwADEAOQApACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAG4AawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgByAGUAbAAiADoAIgBuAG8AbwBwAGUAbgBlAHIAIgAsACIAdABhAHIAZwBlAHQAIgA6AG4AdQBsAGwALAAiAHQAaQB0AGwAZQAiADoAbgB1AGwAbAAsACIAdQByAGwAIgA6ACIAaAB0AHQAcABzADoALwAvAHcAdwB3AC4AZwB3AC0AZQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUALgBkAGUALwBmAGkAbABlAGEAZABtAGkAbgAvAGcAdwAtAGUAbgBlAHIAZwBpAGUAbgBlAHQAegBlAC8AMgAwAF8AbgBlAHQAegBhAG4AcwBjAGgAbAB1AHMAcwAvADIAMAAyADQALQAwADQALQAxADgAXwBlAHIAZwAlAEMAMwAlAEEANABuAHoAdQBuAGcAZQBuAF8AdABhAGIAXwAyADAAMQA5AF8AZwB3AG4ALgBwAGQAZgAiAH0ALAB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiABwgIABkAGUAcgAgAEcARQBMAFMARQBOAFcAQQBTAFMARQBSACAARQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUAIABHAG0AYgBIAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung TAB NS MK4 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für den Einbau und Betrieb der Steuerungseinrichtung in Verbindung mit einem intelligenten Messsystem (iMSys) ist laut Messstellenbetriebsgesetzt (MSBG) der Messstellenbetreiber verantwortlich. Der Einbau Mess- (iMSys) und Steuerungseinrichtung (z.B. FNN-Steuerbox) wird durch die Gelsenwasser Energienetze GmbH durchgeführt. . Der Betrieb der Steuerungseinrichtung hat keinen Einfluss auf die freie Wahl des Stromlieferanten." +# title = "Steuerbare Verbrauchseinrichtung" +# } +# scope = "#/properties/Steuerung nach 14a MK4 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 2 +# show = false +# validate = false +# } +# label = "Anzahl Wohneinheiten" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Wie viele Wohneinheiten befinden sich im Anschlussobjekt?" +# suggestions = [] +# title = "Anzahl der Wohneinheiten" +# } +# scope = "#/properties/Anzahl Wohneinheiten MK4 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Bezugsleistung in kW" +# range = {} +# unit = { +# label = "kw" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte berücksichtigen Sie ein eventuell vorhandenes Energiemanagementsystem (EMS), beispielsweise für steuerbare Verbraucher, die sich hinter diesem Zähler befinden könnten, und geben Sie lediglich die maximale gleichzeitige Leistung an z.B. 21." +# title = "Bezugsleistung in kW" +# } +# scope = "#/properties/Bezugsleistung in kW MK4 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "z.B. EG rechts, Halle2, ..." +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Konkretisierung der Anlage (Bezeichnung)" +# } +# scope = "#/properties/Konkretisierung der Anlage MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 6 +# show = false +# validate = false +# } +# label = null +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Voraussichtlicher Jahresverbrauch" +# } +# scope = "#/properties/Energieverbrauch im Jahr MK4 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Messstellenbetrieb MK4 Z1" +# schema = jsonencode( +# { +# properties = { +# "Ausführung des Zähler MK4 Z1" = { +# type = "object" +# } +# "Befestigungsart MK4 Z1" = { +# enum = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Befestigungsart RLM MK4 Z1" = { +# enum = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Bestands RLM MK4 Z1" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Bestätigung RLM Zähler MK4 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Datum Inbetriebnahme MK4 Z1" = { +# type = "object" +# } +# "Gewünschte Messeinrichtung MK4 Z1" = { +# enum = [ +# "Drehstromzähler", +# "Doppeltarifzähler", +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Gewünschte Messeinrichtung RLM MK4 Z1" = { +# enum = [ +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Messart RLM wenn Einspeisung 100 MK4 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler MK4 Z1" = { +# enum = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler RLM MK4 Z1" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messkonzeptwechsel MK4 Z1" = { +# default = false +# type = "boolean" +# } +# Next = { +# type = "object" +# } +# "Schwachlast Regelung MK4 Z1" = { +# default = false +# type = "boolean" +# } +# "Untermessung Mittelspannung MK4 Z1" = { +# default = false +# type = "boolean" +# } +# "Upload Zähler Wechsel ohne Gerätetausch MK4 Z1" = { +# type = "array" +# } +# "Wechsel ohne Gerätetausch MK4 Z1" = { +# default = false +# type = "boolean" +# } +# "Zählernummer des Mittelspannungszähler" = { +# type = "object" +# } +# "Zählernummer des Mittelspannungszählers MK4 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler Einspeisung MK4 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler HT MK4 Z1" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler NT MK4 Z1" = { +# type = "object" +# } +# "vorhandene Zählernummer ohne Gerätetausch MK4 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Messart RLM wenn Einspeisung 100 MK4 Z1", +# "Bestands RLM MK4 Z1", +# "Messart des Zähler RLM MK4 Z1", +# "Messart des Zähler MK4 Z1", +# "Gewünschte Messeinrichtung MK4 Z1", +# "Gewünschte Messeinrichtung RLM MK4 Z1", +# "Befestigungsart MK4 Z1", +# "Befestigungsart RLM MK4 Z1", +# "Datum Inbetriebnahme MK4 Z1", +# "Zählerstand vorhandener Zähler HT MK4 Z1", +# "Zählerstand vorhandener Zähler Einspeisung MK4 Z1", +# "Upload Zähler Wechsel ohne Gerätetausch MK4 Z1", +# "Zählernummer des Mittelspannungszählers MK4 Z1", +# "vorhandene Zählernummer ohne Gerätetausch MK4 Z1", +# "Bestätigung RLM Zähler MK4 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Messstellenbetrieb MK22064" +# title = "Angaben zum Zähler Z1 (Messkonzept 4)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart RLM wenn Einspeisung 100 MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Sind in der Bestandsanlage(n) schon RLM (Registrierende Lastgangmessung) Zähler verbaut?" +# } +# scope = "#/properties/Bestands RLM MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler RLM MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGUAbgAgAFoA5ABoAGwAZQByACAAYQBsAHMAIABSAEwATQAgACgAUgBlAGcAaQBzAHQAcgBpAGUAcgBlAG4AZABlACAATABhAHMAdABnAGEAbgBnAG0AZQBzAHMAdQBuAGcAIABhAHUAcwBmAPwAaAByAGUAbgApACAAYQB1AHMAZgD8AGgAcgBlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Bestätigung RLM Zähler MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Drehstromzähler", +# "Doppeltarifzähler", +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung RLM MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = true +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Ausführung des Zähler MK4 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEEAdQBmAGcAcgB1AG4AZAAgAEkAaAByAGUAcgAgAEEAbgBnAGEAYgBlAG4AIAB3AGkAcgBkACAAZABlAHIAIABaAOQAaABsAGUAcgAgAGEAbABzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADEALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAaQBNAFMAeQBzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAYQB1AHMAZwBlAGYA/ABoAHIAdAAuACAARABlAHIAIABFAGkAbgBiAGEAdQAgAGUAcgBmAG8AbABnAHQAIABkAHUAcgBjAGgAIABkAGkAZQAgAEcAZQBsAHMAZQBuAHcAYQBzAHMAZQByACAARQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUAIABHAG0AYgBIAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBoAGUAYQBkAGkAbgBnACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHQAYQBnACIAOgAiAGgAMwAiAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = null +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart MK4 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart RLM MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# startDate = {} +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte Datum der Inbetriebnahme(n) angeben." +# title = "Inbetriebnahmedatum" +# } +# scope = "#/properties/Datum Inbetriebnahme MK4 Z1" +# type = "DatePickerControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAQQBuAHMAYwBoAGwAdQBzAHMAbgB1AHQAegBlAHIAIAAoAEsAdQBuAGQAZQApACAAdwD8AG4AcwBjAGgAdAAgAGUAaQBuAGUAIABTAGMAaAB3AGEAYwBoAGwAYQBzAHQAcgBlAGcAZQBsAHUAbgBnAD8AXABuAEQAaQBlACAAUwBjAGgAdwBhAGMAaABsAGEAcwB0AHIAZQBnAGUAbAB1AG4AZwAgAHMAbwBsAGwAIABkAGUAbgAgAEEAbgByAGUAaQB6ACAAZwBlAGIAZQBuACwAIABlAGkAbgBlAG4AIABUAGUAaQBsACAAZABlAHMAIABTAHQAcgBvAG0AdgBlAHIAYgByAGEAdQBjAGgAcwAgAHYAbwBtACAAVABhAGcAIABpAG4AIABkAGkAZQAgAE4AYQBjAGgAdAAgAHoAdQAgAHYAZQByAGwAYQBnAGUAcgBuAC4AIABcAG4AVQBtACAAZABpAGUAIABTAGMAaAB3AGEAYwBoAGwAYQBzAHQAcgBlAGcAZQBsAHUAbgBnACAAbgB1AHQAegBlAG4AIAB6AHUAIABrAPYAbgBuAGUAbgAgACwAIABpAHMAdAAgAGUAaQBuACAARABvAHAAcABlAGwAdABhAHIAaQBmAHoA5ABoAGwAZQByACAAdQBuAGQAIABlAGkAbgAgAFMAdABlAHUAZQByAGcAZQByAOQAdAAgAGYA/AByACAAZABpAGUAIABVAG0AcwBjAGgAYQBsAHQAdQBuAGcAIAB6AHcAaQBzAGMAaABlAG4AIABkAGkAZQBzAGUAbgAgAFoA5ABoAGwAdwBlAHIAawBlAG4AIABuAG8AdAB3AGUAbgBkAGkAZwAuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Schwachlast Regelung" +# } +# scope = "#/properties/Schwachlast Regelung MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAdgBvAHIAaABhAG4AZABlAG4AZQAgAFoA5ABoAGwAZQByACAAaQBzAHQAIABlAGkAbgBlACAAbQBvAGQAZQByAG4AZQAgAE0AZQBzAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAKABtAE0ARQApACAAbwBkAGUAcgAgAGkAbgB0AGUAbABsAGkAZwBlAG4AdABlACAATQBlAHMAcwBlAGkAbgByAGkAYwBoAHQAdQBuAGcAIAAoAGkATQBTAHkAcwApAC4AIABFAGkAbgAgAFcAZQBjAGgAcwBlAGwAIABpAHMAdAAgAG4AaQBjAGgAdAAgAG4AbwB0AHcAZQBuAGQAaQBnACwAIABlAGkAbgBlACAAUABhAHIAYQBtAGUAdAByAGkAZQByAHUAbgBnACAAKABGAHIAZQBpAHMAYwBoAGEAbAB0AHUAbgBnACAAdwBlAGkAdABlAHIAZQByACAAWgDkAGgAbAB3AGUAcgBrAGUAKQAgAGkAcwB0ACAAYQB1AHMAcgBlAGkAYwBoAGUAbgBkAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wechsel ohne Gerätetausch" +# } +# scope = "#/properties/Wechsel ohne Gerätetausch MK4 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "HT (bei Eintarif-Zählern OBIS 1.8.0; bei Doppeltarifzählern OBIS 1.8.2)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler HT MK4 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "NT (bei Doppeltarifen OBIS 1.8.1 (Optional)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler NT MK4 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "OBIS 2.8.0 (Einspeisung, falls nicht vorhanden bitte \"0\" eintragen" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler Einspeisung MK4 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = true +# isNested = true +# label = "Bitte geben Sie hier die Zählernummer ein" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/vorhandene Zählernummer ohne Gerätetausch MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# maxQuantity = 3 +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier Foto des vorhandenen Zählers hoch. Achten Sie bitte auf die OBIS Kennzahl 1.8.0 & 2.8.0" +# } +# scope = "#/properties/Upload Zähler Wechsel ohne Gerätetausch MK4 Z1" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEoAYQAsACAAYQBuACAAZABpAGUAcwBlAG0AIABaAOQAaABsAGUAcgAgAGkAcwB0ACAAYgBlAHIAZQBpAHQAcwAgAGUAaQBuAGUAIABhAGwAdABlACAARQByAHoAZQB1AGcAdQBuAGcAcwBhAG4AbABhAGcAZQAgAGkAbgAgAEIAZQB0AHIAaQBlAGIAIAB1AG4AZAAgAGkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGEAcwAgAHYAbwByAGgAYQBuAGQAZQBuAGUAIABFAGkAbgBzAHAAZQBpAHMAZQAgAE0AZQBzAHMAawBvAG4AegBlAHAAdAAgAOQAbgBkAGUAcgBuACAAKAB6AC4AQgAuACAAdgBvAG4AIABNAEsAMgAgAGEAdQBmACAATQBLACAAMwApACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messkonzeptwechsel" +# } +# scope = "#/properties/Messkonzeptwechsel MK4 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Kein Zählerwechsel notwendig MK4 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlAHMAZQByACAAWgDkAGgAbABlAHIAIAB3AGkAcgBkACAAYQBsAHMAIABlAGkAbgBlACAAVQBuAHQAZQByAG0AZQBzAHMAdQBuAGcAIABoAGkAbgB0AGUAcgAgAGUAaQBuAGUAcgAgAE0AaQB0AHQAZQBsAHMAcABhAG4AbgB1AG4AZwBzAGgAYQB1AHAAdABtAGUAcwBzAHUAbgBnACAAaQBuACAAZQBpAG4AZQByACAA3ABiAGUAcgBnAGEAYgBlAHMAdABhAHQAaQBvAG4AIABpAG4AcwB0AGEAbABsAGkAZQByAHQALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Untermessung Mittelspannung" +# } +# scope = "#/properties/Untermessung Mittelspannung MK4 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "Zählernummer des Mittelspannungszählers" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Zählernummer des Mittelspannungszählers" +# } +# scope = "#/properties/Zählernummer des Mittelspannungszählers MK4 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# targetStepId = "Informationen Vertragsinstallateur" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Abfrage welcher Zähler MK4 Z2" +# schema = jsonencode( +# { +# properties = { +# "Auswahl Zähler aus MK4 Z2" = { +# enum = [ +# "Ja", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# } +# required = [] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Abfrage welcher Zähler MK3 Z2" +# title = "Angaben zum Zähler (Messkonzept 4)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Möchten Sie den Zähler Z2 aus dem gewählten Messkonzept beauftragen?" +# } +# scope = "#/properties/Auswahl Zähler aus MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK4 Z2" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK4 Z2" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Auswahl Grund MK4 Z2" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK4 Z2" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK4 Z2" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK4 Z2" = { +# enum = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bestätigung Einspeisemangement MK4 Z2" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Einspeiseleistung MK4 Z2" = { +# type = "object" +# } +# "Konkretisierung der Anlage MK4 Z2" = { +# type = "string" +# } +# "Montageort des Zählerschrankes MK4 Z2" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Upload Einspeisemanagement MK4 Z2" = { +# type = "array" +# } +# "Wahl Einspeiser MK4 Z2" = { +# enum = [ +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# ] +# type = "string" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK4 Z2" = { +# enum = [ +# "Z2", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK4 Z2" = { +# type = "string" +# } +# } +# required = [ +# "Zählernummer auszubauender Zähler MK4 Z2", +# "Zählerbezeichnung im ausgewählten Messkonzept MK4 Z2", +# "Auswahl Grund nach Einbau MK4 Z2", +# "Auswahl Grund nach Wechsel MK4 Z2", +# "Wahl Einspeiser MK4 Z2", +# "Einspeiseleistung MK4 Z2", +# "Upload Einspeisemanagement MK4 Z2", +# "Konkretisierung der Anlage MK4 Z2", +# "Montageort des Zählerschrankes MK4 Z2", +# "Abfrage Spannungsebene MK4 Z2", +# "Bestätigung Einspeisemangement MK4 Z2", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK3 Z2" +# title = "Angaben zum Zähler Z2 (Messkonzept 4)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellebetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK4 Z2" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z2", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK4 Z2" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK4 Z2" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK4 Z2" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK4 Z2" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK4 Z2" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK4 Z2" +# type = "GroupLayout" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wählen Sie eine Einspeiseart aus" +# } +# scope = "#/properties/Wahl Einspeiser MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Einspeiseleistung in kVA" +# range = {} +# unit = { +# label = "kva" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Gesamteinspeiseleistung der Erzeugungsanlage(n) an." +# } +# scope = "#/properties/Einspeiseleistung MK4 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEIAaQB0AHQAZQAgAGIAZQBzAHQA5AB0AGkAZwBlAG4AIABTAGkAZQAgAHUAbgBzACAAZABlAG4AIABFAGkAbgBiAGEAdQAgAGQAZQBzACAARQBpAG4AcwBwAGUAaQBzAGUAbQBhAG4AYQBnAGUAbQBlAG4AdABzAC4AIABEAGEAcwAgAGQAYQBmAPwAcgAgAGUAcgBmAG8AcgBkAGUAcgBsAGkAYwBoAGUAIABEAG8AawB1AG0AZQBuAHQAIABlAHIAaABhAGwAdABlAG4AIABTAGkAZQAgAGgAaQBlAHIAOgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAHQAeQBwAGUAIgA6ACIAbABpAG4AZQBiAHIAZQBhAGsAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBcAHIAXABuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6AG4AdQBsAGwALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAbgB1AGwAbAAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Einspeisemanagement gemäß §9 EEG" +# } +# scope = "#/properties/Bestätigung Einspeisemangement MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 1 +# restricted = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier die ausgefüllte Bestätigung des Einspeisemanagements hoch." +# supportedTypes = "PDF" +# tags = [ +# "Bestätigung Einspeisemanagement", +# ] +# zoneLabel = "Bitte laden Sie hier die ausgefüllte Bestätigung der Inbetriebsetzung des Einspeisemanagements hoch" +# } +# scope = "#/properties/Upload Einspeisemanagement MK4 Z2" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# label = "z.B. EG rechts, Halle2, ..." +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Konkretisierung der Anlage (Bezeichnung)" +# } +# scope = "#/properties/Konkretisierung der Anlage MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Messstellenbetrieb MK4 Z2" +# schema = jsonencode( +# { +# properties = { +# "Ausführung des Zähler MK4 Z2" = { +# type = "object" +# } +# "Befestigungsart MK4 Z2" = { +# enum = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Befestigungsart RLM MK4 Z2" = { +# enum = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Bestands RLM MK4 Z2" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Bestätigung RLM Zähler MK4 Z2" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Datum Inbetriebnahme MK4 Z2" = { +# type = "object" +# } +# "Gewünschte Messeinrichtung MK4 Z2" = { +# enum = [ +# "Drehstromzähler", +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Gewünschte Messeinrichtung RLM MK4 Z2" = { +# enum = [ +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Messart RLM wenn Einspeisung 100 MK4 Z2" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler MK4 Z2" = { +# enum = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler RLM MK4 Z2" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messkonzeptwechsel MK4 Z2" = { +# default = false +# type = "boolean" +# } +# Next = { +# type = "object" +# } +# "Untermessung Mittelspannung MK4 Z2" = { +# default = false +# type = "boolean" +# } +# "Upload Zähler Wechsel ohne Gerätetausch MK4 Z2" = { +# type = "array" +# } +# "Wechsel ohne Gerätetausch MK4 Z2" = { +# default = false +# type = "boolean" +# } +# "Zählernummer des Mittelspannungszähler" = { +# type = "object" +# } +# "Zählernummer des Mittelspannungszählers MK4 Z2" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler Einspeisung MK4 Z2" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler HT MK4 Z2" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler NT MK4 Z2" = { +# type = "object" +# } +# "vorhandene Zählernummer ohne Gerätetausch MK4 Z2" = { +# type = "string" +# } +# } +# required = [ +# "Messart RLM wenn Einspeisung 100 MK4 Z2", +# "Bestands RLM MK4 Z2", +# "Messart des Zähler RLM MK4 Z2", +# "Messart des Zähler MK4 Z2", +# "Gewünschte Messeinrichtung MK4 Z2", +# "Gewünschte Messeinrichtung RLM MK4 Z2", +# "Befestigungsart MK4 Z2", +# "Befestigungsart RLM MK4 Z2", +# "Datum Inbetriebnahme MK4 Z2", +# "Zählerstand vorhandener Zähler HT MK4 Z2", +# "Zählerstand vorhandener Zähler Einspeisung MK4 Z2", +# "Zählernummer des Mittelspannungszählers MK4 Z2", +# "vorhandene Zählernummer ohne Gerätetausch MK4 Z2", +# "Bestätigung RLM Zähler MK4 Z2", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Messstellenbetrieb MK3 Z2" +# title = "Angaben zum Zähler Z2 (Messkonzept 4)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart RLM wenn Einspeisung 100 MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Sind in der Bestandsanlage(n) schon RLM (Registrierende Lastgangmessung) Zähler verbaut?" +# } +# scope = "#/properties/Bestands RLM MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler RLM MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGUAbgAgAFoA5ABoAGwAZQByACAAYQBsAHMAIABSAEwATQAgACgAUgBlAGcAaQBzAHQAcgBpAGUAcgBlAG4AZABlACAATABhAHMAdABnAGEAbgBnAG0AZQBzAHMAdQBuAGcAIABhAHUAcwBmAPwAaAByAGUAbgApACAAYQB1AHMAZgD8AGgAcgBlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Bestätigung RLM Zähler MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Drehstromzähler", +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung RLM MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = true +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Ausführung des Zähler MK4 Z2" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEEAdQBmAGcAcgB1AG4AZAAgAEkAaAByAGUAcgAgAEEAbgBnAGEAYgBlAG4AIAB3AGkAcgBkACAAZABlAHIAIABaAOQAaABsAGUAcgAgAGEAbABzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADEALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAaQBNAFMAeQBzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAYQB1AHMAZwBlAGYA/ABoAHIAdAAuACAARABlAHIAIABFAGkAbgBiAGEAdQAgAGUAcgBmAG8AbABnAHQAIABkAHUAcgBjAGgAIABkAGkAZQAgAEcAZQBsAHMAZQBuAHcAYQBzAHMAZQByACAARQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUAIABHAG0AYgBIAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBoAGUAYQBkAGkAbgBnACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHQAYQBnACIAOgAiAGgAMwAiAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = null +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart MK4 Z2" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart RLM MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# fields = { +# startDate = {} +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte Datum der Inbetriebnahme(n) angeben." +# title = "Inbetriebnahmedatum" +# } +# scope = "#/properties/Datum Inbetriebnahme MK4 Z2" +# type = "DatePickerControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAdgBvAHIAaABhAG4AZABlAG4AZQAgAFoA5ABoAGwAZQByACAAaQBzAHQAIABlAGkAbgBlACAAbQBvAGQAZQByAG4AZQAgAE0AZQBzAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAKABtAE0ARQApACAAbwBkAGUAcgAgAGkAbgB0AGUAbABsAGkAZwBlAG4AdABlACAATQBlAHMAcwBlAGkAbgByAGkAYwBoAHQAdQBuAGcAIAAoAGkATQBTAHkAcwApAC4AIABFAGkAbgAgAFcAZQBjAGgAcwBlAGwAIABpAHMAdAAgAG4AaQBjAGgAdAAgAG4AbwB0AHcAZQBuAGQAaQBnACwAIABlAGkAbgBlACAAUABhAHIAYQBtAGUAdAByAGkAZQByAHUAbgBnACAAKABGAHIAZQBpAHMAYwBoAGEAbAB0AHUAbgBnACAAdwBlAGkAdABlAHIAZQByACAAWgDkAGgAbAB3AGUAcgBrAGUAKQAgAGkAcwB0ACAAYQB1AHMAcgBlAGkAYwBoAGUAbgBkAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wechsel ohne Gerätetausch" +# } +# scope = "#/properties/Wechsel ohne Gerätetausch MK4 Z2" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "HT (bei Eintarif-Zählern OBIS 1.8.0; bei Doppeltarifzählern OBIS 1.8.2)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler HT MK4 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "NT (bei Doppeltarifen OBIS 1.8.1 (Optional)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler NT MK4 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "OBIS 2.8.0 (Einspeisung, falls nicht vorhanden bitte \"0\" eintragen" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler Einspeisung MK4 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = true +# isNested = true +# label = "Bitte geben Sie hier die Zählernummer ein" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/vorhandene Zählernummer ohne Gerätetausch MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# maxQuantity = 3 +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier Foto des vorhandenen Zählers hoch. Achten Sie bitte auf die OBIS Kennzahl 1.8.0 & 2.8.0" +# tags = [ +# "Zählerfotos bestand bei MK Wechsel ohne Gerätetausch", +# ] +# } +# scope = "#/properties/Upload Zähler Wechsel ohne Gerätetausch MK4 Z2" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEoAYQAsACAAYQBuACAAZABpAGUAcwBlAG0AIABaAOQAaABsAGUAcgAgAGkAcwB0ACAAYgBlAHIAZQBpAHQAcwAgAGUAaQBuAGUAIABhAGwAdABlACAARQByAHoAZQB1AGcAdQBuAGcAcwBhAG4AbABhAGcAZQAgAGkAbgAgAEIAZQB0AHIAaQBlAGIAIAB1AG4AZAAgAGkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGEAcwAgAHYAbwByAGgAYQBuAGQAZQBuAGUAIABFAGkAbgBzAHAAZQBpAHMAZQAgAE0AZQBzAHMAawBvAG4AegBlAHAAdAAgAOQAbgBkAGUAcgBuACAAKAB6AC4AQgAuACAAdgBvAG4AIABNAEsAMgAgAGEAdQBmACAATQBLACAAMwApACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messkonzeptwechsel" +# } +# scope = "#/properties/Messkonzeptwechsel MK4 Z2" +# type = "Control" +# }, +# ] +# options = { +# display = true +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Kein Zählerwechsel notwendig MK4 Z2" +# type = "GroupLayout" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlAHMAZQByACAAWgDkAGgAbABlAHIAIAB3AGkAcgBkACAAYQBsAHMAIABlAGkAbgBlACAAVQBuAHQAZQByAG0AZQBzAHMAdQBuAGcAIABoAGkAbgB0AGUAcgAgAGUAaQBuAGUAcgAgAE0AaQB0AHQAZQBsAHMAcABhAG4AbgB1AG4AZwBzAGgAYQB1AHAAdABtAGUAcwBzAHUAbgBnACAAaQBuACAAZQBpAG4AZQByACAA3ABiAGUAcgBnAGEAYgBlAHMAdABhAHQAaQBvAG4AIABpAG4AcwB0AGEAbABsAGkAZQByAHQALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Untermessung Mittelspannung" +# } +# scope = "#/properties/Untermessung Mittelspannung MK4 Z2" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "Zählernummer des Mittelspannungszählers" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Zählernummer des Mittelspannungszählers" +# } +# scope = "#/properties/Zählernummer des Mittelspannungszählers MK4 Z2" +# type = "NumberInputControl" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# targetStepId = "Informationen Vertragsinstallateur" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Abfrage welcher Zähler MK5" +# schema = jsonencode( +# { +# properties = { +# "Auswahl Zähler aus MK5 Z1" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Eigentumsnummer des bereits vorhandenen Zählers MK5 Z1" = { +# type = "string" +# } +# Next = { +# type = "object" +# } +# } +# required = [ +# "Eigentumsnummer des bereits vorhandenen Zählers MK5 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Abfrage welcher Zähler MK4" +# title = "Angaben zum Zähler Z1 (Messkonzept 5)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Möchten Sie den Zähler Z1 aus dem gewählten Messkonzept beauftragen?" +# } +# scope = "#/properties/Auswahl Zähler aus MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "Zählernummer" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Wie lautet Ihre Zählernummer? Diese ist auch auf Ihrer Energierechnung zu finden." +# title = "Eigentumsnummer des bereits vorhandenen Zählers" +# } +# scope = "#/properties/Eigentumsnummer des bereits vorhandenen Zählers MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK5 Z1" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK5 Z1" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Anschluss an die Steuerbox MK5 Z1" = { +# enum = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# type = "string" +# } +# "Anzahl Wohneinheiten MK5 Z1" = { +# type = "object" +# } +# "Auswahl Entgeltmodell MK5 Z1" = { +# enum = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig)", +# ] +# type = "string" +# } +# "Auswahl Grund MK5 Z1" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK5 Z1" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK5 Z1" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK5 Z1" = { +# enum = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bestätigung Einspeisemangement MK5 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Bezugsleistung in kW MK5 Z1" = { +# type = "object" +# } +# "Einspeiseleistung MK5 Z1" = { +# type = "object" +# } +# "Energieverbrauch im Jahr MK5 Z1" = { +# type = "object" +# } +# "Hinweistext Anlagennutzung MK5 Z1" = { +# type = "object" +# } +# "Hinweistext Anschluss an die Steuerbox MK5 Z1" = { +# type = "object" +# } +# "Konkretisierung der Anlage MK5 Z1" = { +# type = "string" +# } +# "Montageort des Zählerschrankes MK5 Z1" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Steuerung der SteuVE MK5 Z1" = { +# enum = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# type = "string" +# } +# "Upload Einspeisemanagement MK5 Z1" = { +# type = "array" +# } +# "Wahl Bedarfsart Anlage MK5 Z1" = { +# type = "array" +# } +# "Wahl Einspeiser MK5 Z1" = { +# enum = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# type = "string" +# } +# "Zustimmung Beauftragung Zusatzleistung MK5 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zustimmung TAB NS MK5 Z1" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK5 Z1" = { +# enum = [ +# "Z1", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK5 Z1" = { +# type = "string" +# } +# } +# required = [ +# "Zählernummer auszubauender Zähler MK5 Z1", +# "Zählerbezeichnung im ausgewählten Messkonzept MK5 Z1", +# "Auswahl Grund nach Einbau MK5 Z1", +# "Auswahl Grund nach Wechsel MK5 Z1", +# "Wahl Einspeiser MK5 Z1", +# "Einspeiseleistung MK5 Z1", +# "Upload Einspeisemanagement MK5 Z1", +# "Steuerung der SteuVE MK5 Z1", +# "Anschluss an die Steuerbox MK5 Z1", +# "Zustimmung Beauftragung Zusatzleistung MK5 Z1", +# "Zustimmung TAB NS MK5 Z1", +# "Anzahl Wohneinheiten MK5 Z1", +# "Bezugsleistung in kW MK5 Z1", +# "Konkretisierung der Anlage MK5 Z1", +# "Energieverbrauch im Jahr MK5 Z1", +# "Montageort des Zählerschrankes MK5 Z1", +# "Abfrage Spannungsebene MK5 Z1", +# "Wahl Bedarfsart Anlage MK5 Z1", +# "Bestätigung Einspeisemangement MK5 Z1", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = true +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK25000" +# sub_title = " Z1 und Z2 müssen einheitlich als RLM-Zähler ausgeführt werden!" +# title = "Angaben zum Zähler Z1 (Messkonzept 5)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK5 Z1" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z1", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK5 Z1" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK5 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK5 Z1" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK5 Z1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK5 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK5 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wählen Sie eine Einspeiseart aus" +# } +# scope = "#/properties/Wahl Einspeiser MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Einspeiseleistung in kVA" +# range = {} +# unit = { +# label = "kva" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Gesamteinspeiseleistung der Erzeugungsanlage(n) an." +# } +# scope = "#/properties/Einspeiseleistung MK5 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEIAaQB0AHQAZQAgAGIAZQBzAHQA5AB0AGkAZwBlAG4AIABTAGkAZQAgAHUAbgBzACAAZABlAG4AIABFAGkAbgBiAGEAdQAgAGQAZQBzACAARQBpAG4AcwBwAGUAaQBzAGUAbQBhAG4AYQBnAGUAbQBlAG4AdABzAC4AIABEAGEAcwAgAGQAYQBmAPwAcgAgAGUAcgBmAG8AcgBkAGUAcgBsAGkAYwBoAGUAIABEAG8AawB1AG0AZQBuAHQAIABlAHIAaABhAGwAdABlAG4AIABTAGkAZQAgAGgAaQBlAHIAOgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAHQAeQBwAGUAIgA6ACIAbABpAG4AZQBiAHIAZQBhAGsAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBcAHIAXABuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6AG4AdQBsAGwALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAbgB1AGwAbAAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Einspeisemanagement gemäß §9 EEG" +# } +# scope = "#/properties/Bestätigung Einspeisemangement MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 1 +# restricted = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier die ausgefüllte Bestätigung des Einspeisemanagements hoch." +# supportedTypes = "PDF" +# tags = [ +# "Bestätigung Einspeisemanagement", +# ] +# zoneLabel = "Bitte laden Sie hier die ausgefüllte Bestätigung der Inbetriebsetzung des Einspeisemanagements hoch" +# } +# scope = "#/properties/Upload Einspeisemanagement MK5 Z1" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anlagennutzung MK5 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABpAHMAdAAgAGEAdQBzAHoAdQB3AOQAaABsAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAZwBlAG4AdQB0AHoAdAAgAHcAZQByAGQAZQBuACAAcwBvAGwAbAAuACAAUwB0AGUAdQBlAHIAYgBhAHIAZQAgAEEAbgBsAGEAZwBlAG4AIABzAGkAbgBkACAAbgBhAGMAaAAgAKcAIAAxADQAYQAgAEUAbgBXAEcAIABiAGUAaQBtACAATgBlAHQAegBiAGUAdAByAGUAaQBiAGUAcgAgAGEAbgB6AHUAbQBlAGwAZABlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGgAZQBhAGQAaQBuAGcAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdABhAGcAIgA6ACIAaAAzACIAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBEAGkAZQAgAEEAbgBtAGUAbABkAHUAbgBnACAAZgD8AHIAIACnACAAMQA0AGEAIABFAG4AVwBHACAAQQBuAGwAYQBnAGUAbgAgAG8AaABuAGUAIABlAGkAZwBlAG4AZQBtACAAWgDkAGgAbABlAHIAIABrAPYAbgBuAGUAbgAgAG0AaQB0ACAAZQBpAG4AZQByACAAQgBlAHoAdQBnAHMAYQBuAGwAYQBnAGUAIAAoAHoALgAgAEIALgAgAEgAYQB1AHMAaABhAGwAdAAsACAARwBlAHcAZQByAGIAZQAsAC4ALgAuACkAIABhAG4AZwBlAG0AZQBsAGQAZQB0ACAAdQBuAGQAIABnAGUAbQBlAGkAbgBzAGEAbQAgAGcAZQBtAGUAcwBzAGUAbgAgAHcAZQByAGQAZQBuAC4AIABEAGkAZQAgAEEAbgBtAGUAbABkAHUAbgBnACAAZgD8AHIAIACnACAAMQA0AGEAIABFAG4AVwBHACAAQQBuAGwAYQBnAGUAbgAgAG0AaQB0ACAAZQBpAGcAZQBuAGUAbQAgAFoA5ABoAGwAZQByACAAdwDkAGgAbABlAG4AIABTAGkAZQAgAGIAaQB0AHQAZQAgAGQAaQBlACAAQgBlAGQAYQByAGYAcwBhAHIAdAAgAGEAdQBzAC4AIAAgACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAdAB5AHAAZQAiADoAIgBsAGkAbgBlAGIAcgBlAGEAawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlACAAcwBlAHAAYQByAGEAdABlAG4AIABBAG4AbQBlAGwAZAB1AG4AZwBlAG4AIAB2AG8AbgAgAKcAMQA0AGEAIABFAG4AVwBHACAAUwB0AGUAdQBlAHIAYgBhAHIAZQBuACAAQQBuAGwAYQBnAGUAbgAgAGYAaQBuAGQAZQBuACAAUwBpAGUAIABpAG0AIABJAG4AcwB0AGEAbABsAGEAdABlAHUAcgBwAG8AcgB0AGEAbAAgAGYA/AByACAAVwDkAHIAbQBlAHAAdQBtAHAAZQBuAC8ASwBsAGkAbQBhAGEAbgBsAGEAZwBlAG4ALAAgAEwAYQBkAGUAZQBpAG4AcgBpAGMAaAB0AHUAbgBnAGUAbgAgAHUAbgBkACAAUwBwAGUAaQBjAGgAZQByAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIATQBlAGgAcgBmAGEAYwBoAGEAdQBzAHcAYQBoAGwAIABpAHMAdAAgAG0A9gBnAGwAaQBjAGgAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# options = { +# halfWidth = false +# label = false +# options = [ +# "Haushalt", +# "Gewerbe", +# "Wohn / Gewerbe", +# "Landwirtschaft", +# "Wärmepumpe inkl. Zusatzheizung §14a EnWG", +# "private Ladeeinrichtung §14a EnWG", +# "Klimanlagen §14a EnWG", +# "Anlage zur Stromspeicherung §14a EnWG", +# "öffentliche Ladeeinrichtung", +# "andere Bedarfsart", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# uiType = "button" +# } +# scope = "#/properties/Wahl Bedarfsart Anlage MK5 Z1" +# type = "MultichoiceControl" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja, eine Einzelsteuerung als SteuVE ist möglich. (Direktansteuerung)", +# "Ja, eine Steuerung über EMS (EnergieManagementSystem) ist möglich.", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Steuerung der SteuVE MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Hinweistext Anschluss an die Steuerbox MK5 Z1" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAIABtAHUAcwBzACAAYQBuAGcAZQBnAGUAYgBlAG4AIAB3AGUAcgBkAGUAbgAsACAAdwBpAGUAIABkAGkAZQAgAEEAbgBsAGEAZwBlACAAKABTAHQAZQB1AGUAcgBiAGEAcgBlAG4AIABWAGUAcgBiAHIAYQB1AGMAaABzAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBWAEUAKQApACAAbQBpAHQAIABkAGUAcgAgAFMAdABlAHUAZQByAGUAaQBuAHIAaQBjAGgAdAB1AG4AZwAgACgAUwB0AGUAdQBlAHIAYgBvAHgAKQAgAHYAZQByAGQAcgBhAGgAdABlAHQALwBhAG4AZwBlAHMAYwBoAGwAbwBzAHMAZQBuACAAdwBpAHIAZAA6AFwAcgBcAHIAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBEAGkAZwBpAHQAYQBsACAARQBFAEIAVQBTADoAIABBAG4AcwBjAGgAbAB1AHMAcwAgAGQAZQByACAAUwB0AGUAdQBWAEUAIABtAGkAdAB0AGUAbABzACAARQB0AGgAZQByAG4AZQB0ACAASwBhAGIAZQBsACAAKABOAGUAdAB6AHcAZQByAGsAawBhAGIAZQBsACkAIABhAG4AIABkAGkAZQAgAFIASgA0ADUALQBCAHUAYwBoAHMAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBsAGkAcwB0AGkAdABlAG0AIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdgBhAGwAdQBlACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIARABpAGcAaQB0AGEAbAAgAEsATgBYADoAIABBAG4AcwBjAGgAbAB1AHMAcwAgAGQAZQByACAAUwB0AGUAdQBWAEUAIABtAGkAdAB0AGUAbABzACAARQB0AGgAZQByAG4AZQB0ACAASwBhAGIAZQBsACAAKABOAGUAdAB6AHcAZQByAGsAawBhAGIAZQBsACkAIABhAG4AIABkAGkAZQAgAFIASgA0ADUALQBCAHUAYwBoAHMAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgAXAByACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdABpAHQAZQBtACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHYAYQBsAHUAZQAiADoAMgB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFAAbwB0AGUAbgB6AGkAYQBsAGYAcgBlAGkAZQByACAASwBvAG4AdABhAGsAdAA6ACAAQQBuAHMAYwBoAGwAdQBzAHMAIABkAGUAcgAgAFMAdABlAHUAVgBFACAAYQBuACAAZABpAGUAIABSAGUAbABhAGkAcwAtAEsAbwBuAHQAYQBrAHQAZQAgAGQAZQByACAAUwB0AGUAdQBlAHIAYgBvAHgALAAgAFYAZQByAGIAaQBuAGQAdQBuAGcAIAD8AGIAZQByACAARAByAGEAaAB0ACAAKABTAHQAcgBvAG0AbABlAGkAdAB1AG4AZwBlAG4AKQAgACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBsAGkAcwB0AGkAdABlAG0AIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAdgBhAGwAdQBlACIAOgAzAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAbABpAHMAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgBsAGkAcwB0AFQAeQBwAGUAIgA6ACIAYgB1AGwAbABlAHQAIgAsACIAcwB0AGEAcgB0ACIAOgAxACwAIgB0AGEAZwAiADoAIgB1AGwAIgB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# type = "Label" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = true +# label = false +# options = [ +# "EEBUS", +# "KNX", +# "Potenzialfreie(r) Kontakt(e)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Anschluss an die Steuerbox MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Modul 1 \"pauschal\"", +# "Modul 2 \"prozentual\" (separater Zähler notwendig)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für die Gewährung des reduzierten Netzentgelt müssen Sie vorgeben, ob Ihr Kunde eine pauschale Reduzierung des Netzentgeltes (Modul 1) oder eine prozentuale Reduzierung des Arbeitspreises (Modul 2) wünscht. Für Modul 2 ist ein separater für die steuerbare Verbrauchseinsrichtung erforderlich." +# title = "Abrechnung des reduzierten Netzentgeltes" +# } +# scope = "#/properties/Auswahl Entgeltmodell MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAYgBlAHMAdADkAHQAaQBnAGUALAAgAGQAYQBzACAAZABpAGUAIABCAGUAcgBlAGkAdABzAHQAZQBsAGwAdQBuAGcALAAgAE0AbwBuAHQAYQBnAGUAIAB1AG4AZAAgAEIAZQB0AHIAaQBlAGIAIABkAGUAcgAgAFMAdABlAHUAZQByAHUAbgBnAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAZAB1AHIAYwBoACAAZABpAGUAIABHAGUAbABzAGUAbgB3AGEAcwBzAGUAcgAgAEUAbgBlAHIAZwBpAGUAbgBlAHQAegAgAEcAbQBiAEgAIABlAHIAZgBvAGwAZwBlAG4AIABzAG8AbABsACAAdQBuAGQAIABkAGUAbQAgAEsAdQBuAGQAZQBuACAAZABhAGQAdQByAGMAaAAgAEsAbwBzAHQAZQBuACAAZgD8AHIAIABkAGkAZQAgAFoAdQBzAGEAdAB6AGwAZQBpAHMAdAB1AG4AZwAgAG4AYQBjAGgAIACnADMANAAgAEEAYgBzAC4AIAAyACAATQBlAHMAcwBzAHQAZQBsAGwAZQBuAGIAZQB0AHIAaQBlAGIAcwBnAGUAcwBlAHQAegAgAGUAbgB0AHMAdABlAGgAZQBuAC4AIABEAGUAcgAgAEsAdQBuAGQAIABpAHMAdAAgAGkAbgBmAG8AcgBtAGkAZQByAHQAIAB1AG4AZAAgAGgAYQB0ACAAbQBpAGMAaAAgAGUAcgBtAOQAYwBoAHQAaQBnAHQAIABkAGkAZQBzAGUAIABCAGUAYQB1AGYAdAByAGEAZwB1AG4AZwAgAGEAbgAgAGQAaQBlACAARwBlAGwAcwBlAG4AdwBhAHMAcwBlAHIAIABFAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAgAEcAbQBiAEgAIAB6AHUAIAD8AGIAZQByAG0AaQB0AHQAZQBsAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung Beauftragung Zusatzleistung MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEgAaQBlAHIAbQBpAHQAIABiAGUAcwB0AOQAdABpAGcAZQAgAGkAYwBoACAAZABpAGUAIABFAGkAbgBoAGEAbAB0AHUAbgBnACAAZABlAHIAIABFAHIAZwDkAG4AegBlAG4AZABlACAAQgBlAGQAaQBuAGcAdQBuAGcAZQBuACAAXAByAFwAbgB1AG4AZAAgAEgAaQBuAHcAZQBpAHMAZQAgAHoAdQAgAGQAZQBuACAAXAByAFwAbgAeICIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0ALAB7ACIAYwBoAGkAbABkAHIAZQBuACIAOgBbAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADgALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAVABlAGMAaABuAGkAcwBjAGgAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAYgBlAGQAaQBuAGcAdQBuAGcAZQBuACAAXAByAFwAbgBmAPwAcgAgAGQAZQBuACAAQQBuAHMAYwBoAGwAdQBzAHMAIABhAG4AIABkAGEAcwAgAFwAcgBcAG4ATgBpAGUAZABlAHIAcwBwAGEAbgBuAHUAbgBnAHMAbgBlAHQAegAgACgAVABBAEIAIAAyADAAMQA5ACkAHCAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGwAaQBuAGsAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQAsACIAcgBlAGwAIgA6ACIAbgBvAG8AcABlAG4AZQByACIALAAiAHQAYQByAGcAZQB0ACIAOgBuAHUAbABsACwAIgB0AGkAdABsAGUAIgA6AG4AdQBsAGwALAAiAHUAcgBsACIAOgAiAGgAdAB0AHAAcwA6AC8ALwB3AHcAdwAuAGcAdwAtAGUAbgBlAHIAZwBpAGUAbgBlAHQAegBlAC4AZABlAC8AZgBpAGwAZQBhAGQAbQBpAG4ALwBnAHcALQBlAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAvADIAMABfAG4AZQB0AHoAYQBuAHMAYwBoAGwAdQBzAHMALwAyADAAMgA0AC0AMAA0AC0AMQA4AF8AZQByAGcAJQBDADMAJQBBADQAbgB6AHUAbgBnAGUAbgBfAHQAYQBiAF8AMgAwADEAOQBfAGcAdwBuAC4AcABkAGYAIgB9ACwAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgAgAFwAcgBcAG4AZABlAHIAIABHAEUATABTAEUATgBXAEEAUwBTAEUAUgAgAEUAbgBlAHIAZwBpAGUAbgBlAHQAegBlACAARwBtAGIASAAuACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zustimmung TAB NS MK5 Z1" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Für den Einbau und Betrieb der Steuerungseinrichtung in Verbindung mit einem intelligenten Messsystem (iMSys) ist laut Messstellenbetriebsgesetzt (MSBG) der Messstellenbetreiber verantwortlich. Der Einbau Mess- (iMSys) und Steuerungseinrichtung (z.B. FNN-Steuerbox) wird durch die Gelsenwasser Energienetze GmbH durchgeführt. . Der Betrieb der Steuerungseinrichtung hat keinen Einfluss auf die freie Wahl des Stromlieferanten." +# title = "Steuerbare Verbrauchseinrichtung" +# } +# scope = "#/properties/Steuerung nach 14a MK5 Z1" +# type = "GroupLayout" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 2 +# show = false +# validate = false +# } +# label = "Anzahl Wohneinheiten" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Wie viele Wohneinheiten befinden sich im Anschlussobjekt?" +# title = "Anzahl der Wohneinheiten" +# } +# scope = "#/properties/Anzahl Wohneinheiten MK5 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Bezugsleistung in kW" +# range = {} +# unit = { +# label = "kw" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte berücksichtigen Sie ein eventuell vorhandenes Energiemanagementsystem (EMS), beispielsweise für steuerbare Verbraucher, die sich hinter diesem Zähler befinden könnten, und geben Sie lediglich die maximale gleichzeitige Leistung an z.B. 21." +# title = "Bezugsleistung in kW" +# } +# scope = "#/properties/Bezugsleistung in kW MK5 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "z.B. EG rechts, Halle2, ..." +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Konkretisierung der Anlage (Bezeichnung)" +# } +# scope = "#/properties/Konkretisierung der Anlage MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 6 +# show = false +# validate = false +# } +# label = null +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Voraussichtlicher Jahresverbrauch" +# } +# scope = "#/properties/Energieverbrauch im Jahr MK5 Z1" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK5 Z1" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK6 Z3" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK6 Z3" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Auswahl Grund MK6 Z3" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK6 Z3" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK6 Z3" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK6 Z3" = { +# enum = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bestätigung Einspeisemanagent MK6 Z3" = { +# default = false +# type = "boolean" +# } +# "Einspeiseleistung in kVA MK6 Z3" = { +# type = "object" +# } +# "Energieverbrauch im Jahr MK6 Z3" = { +# type = "object" +# } +# "Montageort des Zählerschrankes MK6 Z3" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Upload Einspeisemanagement MK6 Z3" = { +# type = "array" +# } +# "Wahl Einspeiser MK6 Z3" = { +# enum = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# type = "string" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK6 Z3" = { +# enum = [ +# "Z3", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK6 Z3" = { +# type = "string" +# } +# } +# required = [ +# "Zählerbezeichnung im ausgewählten Messkonzept MK6 Z3", +# "Auswahl Grund nach Einbau MK6 Z3", +# "Auswahl Grund nach Wechsel MK6 Z3", +# "Wahl Einspeiser MK6 Z3", +# "Einspeiseleistung in kVA MK6 Z3", +# "Upload Einspeisemanagement MK6 Z3", +# "Energieverbrauch im Jahr MK6 Z3", +# "Montageort des Zählerschrankes MK6 Z3", +# "Abfrage Spannungsebene MK6 Z3", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK6 Z2" +# title = "Angaben zum Zähler Z3 (Messkonzept 6)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK6 Z3" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z3", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK6 Z3" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK6 Z3" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK6 Z3" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK6 Z3" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK6 Z3" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK6 Z3" +# type = "GroupLayout" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wählen Sie eine Einspeiseart aus" +# } +# scope = "#/properties/Wahl Einspeiser MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Einspeiseleistung in kVA" +# range = {} +# unit = { +# label = "kva" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Gesamteinspeiseleistung der Erzeugungsanlage(n) an." +# } +# scope = "#/properties/Einspeiseleistung in kVA MK6 Z3" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEIAaQB0AHQAZQAgAGIAZQBzAHQA5AB0AGkAZwBlAG4AIABTAGkAZQAgAHUAbgBzACAAZABlAG4AIABFAGkAbgBiAGEAdQAgAGQAZQBzACAARQBpAG4AcwBwAGUAaQBzAGUAbQBhAG4AYQBnAGUAbQBlAG4AdABzAC4AIABEAGEAcwAgAGQAYQBmAPwAcgAgAGUAcgBmAG8AcgBkAGUAcgBsAGkAYwBoAGUAIABEAG8AawB1AG0AZQBuAHQAIABlAHIAaABhAGwAdABlAG4AIABTAGkAZQAgAGgAaQBlAHIAOgAgACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFYAZQByAGwAaQBuAGsAdQBuAGcAIABhAHUAcwAgAEcAVwBOACAASQAtAFMAZQBpAHQAZQAgAG0AdQBzAHMAIABuAG8AYwBoACAAZQByAHMAdABlAGwAbAB0ACAAdwBlAHIAZABlAG4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Einspeisemanagement gemäß §9 EEG" +# } +# scope = "#/properties/Bestätigung Einspeisemanagent MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 1 +# restricted = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier die ausgefüllte Bestätigung des Einspeisemanagements hoch" +# supportedTypes = "PDF" +# tags = [ +# "Bestätigung Einspeisemanagement", +# ] +# } +# scope = "#/properties/Upload Einspeisemanagement MK6 Z3" +# type = "UploadPanelControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 6 +# show = false +# validate = false +# } +# label = "Energieverbrauch im Jahr" +# range = {} +# unit = { +# label = "kwh" +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Voraussichtlicher Jahresverbrauch" +# } +# scope = "#/properties/Energieverbrauch im Jahr MK6 Z3" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Messstellenbetrieb MK6 Z3" +# schema = jsonencode( +# { +# properties = { +# "Ausführung des Zähler MK6 Z3" = { +# type = "object" +# } +# "Befestigungsart MK6 Z3" = { +# enum = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Befestigungsart RLM MK6 Z3" = { +# enum = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# type = "string" +# } +# "Bestands RLM MK6 Z3" = { +# enum = [ +# "Ja", +# "Nein", +# ] +# type = "string" +# } +# "Bestätigung RLM Zähler MK6 Z3" = { +# enum = [ +# null, +# true, +# ] +# type = "boolean" +# } +# "Datum Inbetriebnahme MK6 Z3" = { +# type = "object" +# } +# "Gewünschte Messeinrichtung MK6 Z3" = { +# enum = [ +# "Drehstromzähler", +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Gewünschte Messeinrichtung RLM MK6 Z3" = { +# enum = [ +# "Wandlerzähler", +# ] +# type = "string" +# } +# "Messart RLM wenn Einspeisung 100 MK6 Z3" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler MK6 Z3" = { +# enum = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messart des Zähler RLM MK6 Z3" = { +# enum = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# type = "string" +# } +# "Messkonzeptwechsel MK6 Z3" = { +# default = false +# type = "boolean" +# } +# Next = { +# type = "object" +# } +# "Untermessung Mittelspannung MK6 Z3" = { +# default = false +# type = "boolean" +# } +# "Upload Zähler Wechsel ohne Gerätetausch MK6 Z3" = { +# type = "array" +# } +# "Wechsel ohne Gerätetausch MK6 Z3" = { +# default = false +# type = "boolean" +# } +# "Zählernummer des Mittelspannungszähler" = { +# type = "object" +# } +# "Zählernummer des Mittelspannungszählers MK6 Z3" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler Einspeisung MK6 Z3" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler HT MK6 Z3" = { +# type = "object" +# } +# "Zählerstand vorhandener Zähler NT MK6 Z3" = { +# type = "object" +# } +# "vorhandene Zählernummer ohne Gerätetausch MK6 Z3" = { +# type = "string" +# } +# } +# required = [ +# "Messart RLM wenn Einspeisung 100 MK6 Z3", +# "Bestands RLM MK6 Z3", +# "Messart des Zähler RLM MK6 Z3", +# "Messart des Zähler MK6 Z3", +# "Gewünschte Messeinrichtung MK6 Z3", +# "Gewünschte Messeinrichtung RLM MK6 Z3", +# "Befestigungsart MK6 Z3", +# "Befestigungsart RLM MK6 Z3", +# "Zählerstand vorhandener Zähler HT MK6 Z3", +# "Zählerstand vorhandener Zähler Einspeisung MK6 Z3", +# "Datum Inbetriebnahme MK6 Z3", +# "Zählernummer des Mittelspannungszählers MK6 Z3", +# "vorhandene Zählernummer ohne Gerätetausch MK6 Z3", +# "Bestätigung RLM Zähler MK6 Z3", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Messstellenbetrieb MK6 Z2" +# title = "Angaben zum Zähler Z3 (Messkonzept 6)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart RLM wenn Einspeisung 100 MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# isNested = false +# label = false +# options = [ +# "Ja", +# "Nein", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Sind in der Bestandsanlage(n) schon RLM (Registrierende Lastgangmessung) Zähler verbaut?" +# } +# scope = "#/properties/Bestands RLM MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler RLM MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "SLP (Standardlastprofil)", +# "RLM (Registrierende Lastgangmessung)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messart des Zähler" +# } +# scope = "#/properties/Messart des Zähler MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGUAbgAgAFoA5ABoAGwAZQByACAAYQBsAHMAIABSAEwATQAgACgAUgBlAGcAaQBzAHQAcgBpAGUAcgBlAG4AZABlACAATABhAHMAdABnAGEAbgBnAG0AZQBzAHMAdQBuAGcAIABhAHUAcwBmAPwAaAByAGUAbgApACAAYQB1AHMAZgD8AGgAcgBlAG4ALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Bestätigung RLM Zähler MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Drehstromzähler", +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Wandlerzähler", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Hier wählen Sie die 'Grundausstattung' des Zählers aus." +# title = "Gewünschte Messeinrichtung" +# } +# scope = "#/properties/Gewünschte Messeinrichtung RLM MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# showPaper = true +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Ausführung des Zähler MK6 Z3" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEEAdQBmAGcAcgB1AG4AZAAgAEkAaAByAGUAcgAgAEEAbgBnAGEAYgBlAG4AIAB3AGkAcgBkACAAZABlAHIAIABaAOQAaABsAGUAcgAgAGEAbABzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADEALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAaQBNAFMAeQBzACAAIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBkAGUAdABhAGkAbAAiADoAMAAsACIAZgBvAHIAbQBhAHQAIgA6ADAALAAiAG0AbwBkAGUAIgA6ACIAbgBvAHIAbQBhAGwAIgAsACIAcwB0AHkAbABlACIAOgAiACIALAAiAHQAZQB4AHQAIgA6ACIAYQB1AHMAZwBlAGYA/ABoAHIAdAAuACAARABlAHIAIABFAGkAbgBiAGEAdQAgAGUAcgBmAG8AbABnAHQAIABkAHUAcgBjAGgAIABkAGkAZQAgAEcAZQBsAHMAZQBuAHcAYQBzAHMAZQByACAARQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUAIABHAG0AYgBIAC4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBoAGUAYQBkAGkAbgBnACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEALAAiAHQAYQBnACIAOgAiAGgAMwAiAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# type = "Label" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "BKE für EHZ", +# "Dreipunkt", +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = null +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart MK6 Z3" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Zählerwechseltafel (Beistellung Bauseits)", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Befestigungsart" +# } +# scope = "#/properties/Befestigungsart RLM MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAZQByACAAdgBvAHIAaABhAG4AZABlAG4AZQAgAFoA5ABoAGwAZQByACAAaQBzAHQAIABlAGkAbgBlACAAbQBvAGQAZQByAG4AZQAgAE0AZQBzAHMAZQBpAG4AcgBpAGMAaAB0AHUAbgBnACAAKABtAE0ARQApACAAbwBkAGUAcgAgAGkAbgB0AGUAbABsAGkAZwBlAG4AdABlACAATQBlAHMAcwBlAGkAbgByAGkAYwBoAHQAdQBuAGcAIAAoAGkATQBTAHkAcwApAC4AIABFAGkAbgAgAFcAZQBjAGgAcwBlAGwAIABpAHMAdAAgAG4AaQBjAGgAdAAgAG4AbwB0AHcAZQBuAGQAaQBnACwAIABlAGkAbgBlACAAUABhAHIAYQBtAGUAdAByAGkAZQByAHUAbgBnACAAKABGAHIAZQBpAHMAYwBoAGEAbAB0AHUAbgBnACAAdwBlAGkAdABlAHIAZQByACAAWgDkAGgAbAB3AGUAcgBrAGUAKQAgAGkAcwB0ACAAYQB1AHMAcgBlAGkAYwBoAGUAbgBkAGUALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wechsel ohne Gerätetausch" +# } +# scope = "#/properties/Wechsel ohne Gerätetausch MK6 Z3" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "HT (bei Eintarif-Zählern OBIS 1.8.0; bei Doppeltarifzählern OBIS 1.8.2)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler HT MK6 Z3" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "NT (bei Doppeltarifen OBIS 1.8.1 (Optional)" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler NT MK6 Z3" +# type = "NumberInputControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "OBIS 2.8.0 (Einspeisung, falls nicht vorhanden bitte \"0\" eintragen" +# range = {} +# unit = { +# label = "kwh" +# show = true +# } +# } +# } +# halfWidth = true +# isNested = true +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Zählerstand vorhandener Zähler Einspeisung MK6 Z3" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = true +# isNested = true +# label = "Bitte geben Sie hier die Zählernummer ein" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/vorhandene Zählernummer ohne Gerätetausch MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# maxQuantity = 3 +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier Foto des vorhandenen Zählers hoch. Achten Sie bitte auf die OBIS Kennzahl 1.8.0 & 2.8.0" +# tags = [ +# "Zählerfotos bestand bei MK Wechsel ohne Gerätetausch", +# ] +# } +# scope = "#/properties/Upload Zähler Wechsel ohne Gerätetausch MK6 Z3" +# type = "UploadPanelControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEoAYQAsACAAYQBuACAAZABpAGUAcwBlAG0AIABaAOQAaABsAGUAcgAgAGkAcwB0ACAAYgBlAHIAZQBpAHQAcwAgAGUAaQBuAGUAIABhAGwAdABlACAARQByAHoAZQB1AGcAdQBuAGcAcwBhAG4AbABhAGcAZQAgAGkAbgAgAEIAZQB0AHIAaQBlAGIAIAB1AG4AZAAgAGkAYwBoACAAbQD2AGMAaAB0AGUAIABkAGEAcwAgAHYAbwByAGgAYQBuAGQAZQBuAGUAIABFAGkAbgBzAHAAZQBpAHMAZQAgAE0AZQBzAHMAawBvAG4AegBlAHAAdAAgAOQAbgBkAGUAcgBuACAAKAB6AC4AQgAuACAAdgBvAG4AIABNAEsAMgAgAGEAdQBmACAATQBLACAAMwApACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHIAbwBvAHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AH0A" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Messkonzeptwechsel" +# } +# scope = "#/properties/Messkonzeptwechsel MK6 Z3" +# type = "Control" +# }, +# ] +# options = { +# display = true +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/kein Zählerwechsel notwendig MK6 Z3" +# type = "GroupLayout" +# }, +# { +# options = { +# fields = { +# startDate = {} +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte Datum der Inbetriebnahme(n) angeben." +# title = "Inbetriebnahmedatum" +# } +# scope = "#/properties/Datum Inbetriebnahme MK6 Z3" +# type = "DatePickerControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEQAaQBlAHMAZQByACAAWgDkAGgAbABlAHIAIAB3AGkAcgBkACAAYQBsAHMAIABlAGkAbgBlACAAVQBuAHQAZQByAG0AZQBzAHMAdQBuAGcAIABoAGkAbgB0AGUAcgAgAGUAaQBuAGUAcgAgAE0AaQB0AHQAZQBsAHMAcABhAG4AbgB1AG4AZwBzAGgAYQB1AHAAdABtAGUAcwBzAHUAbgBnACAAaQBuACAAZQBpAG4AZQByACAA3ABiAGUAcgBnAGEAYgBlAHMAdABhAHQAaQBvAG4AIABpAG4AcwB0AGEAbABsAGkAZQByAHQALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Untermessung Mittelspannung" +# } +# scope = "#/properties/Untermessung Mittelspannung MK6 Z3" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 1 +# show = false +# validate = false +# } +# label = "Zählernummer des Mittelspannungszählers" +# range = {} +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Zählernummer des Mittelspannungszählers" +# } +# scope = "#/properties/Zählernummer des Mittelspannungszählers MK6 Z3" +# type = "NumberInputControl" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# targetStepId = "Informationen Vertragsinstallateur" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Abfrage welcher Zähler MK6 Z4" +# schema = jsonencode( +# { +# properties = { +# "Auswahl Zähler aus MK6 Z4" = { +# enum = [ +# "Ja", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# } +# required = [] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Abfrage welcher Zähler MK6 Z3" +# title = "Angaben zum Zähler Z4 (Messkonzept 6)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Ja", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Möchten Sie den Zähler Z4 aus dem gewählten Messkonzept beauftragen?" +# } +# scope = "#/properties/Auswahl Zähler aus MK6 Z4" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Angaben zum Zähler MK6 Z4" +# schema = jsonencode( +# { +# properties = { +# "Abfrage Spannungsebene MK6 Z4" = { +# enum = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# type = "string" +# } +# "Auswahl Grund MK6 Z4" = { +# enum = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# type = "string" +# } +# "Auswahl Grund nach Einbau MK6 Z4" = { +# enum = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# type = "string" +# } +# "Auswahl Grund nach Wechsel MK6 Z4" = { +# enum = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# type = "string" +# } +# "Auswahl Messstellenbetreiber MK6 Z4" = { +# enum = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# type = "string" +# } +# "Bestätigung Einspeisemanagent MK6 Z4" = { +# default = false +# type = "boolean" +# } +# "Einspeiseleistung in kVA MK6 Z4" = { +# type = "object" +# } +# "Energieverbrauch im Jahr MK6 Z4" = { +# type = "object" +# } +# "Montageort des Zählerschrankes MK6 Z4" = { +# examples = [ +# "z.B. Keller", +# ] +# type = "string" +# } +# Next = { +# type = "object" +# } +# "Upload Einspeisemanagement MK6 Z4" = { +# type = "array" +# } +# "Wahl Einspeiser MK6 Z4" = { +# enum = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# type = "string" +# } +# "Zählerbezeichnung im ausgewählten Messkonzept MK6 Z4" = { +# enum = [ +# "Z4", +# ] +# type = "string" +# } +# "Zählernummer auszubauender Zähler MK6 Z4" = { +# type = "string" +# } +# } +# required = [ +# "Zählernummer auszubauender Zähler MK6 Z4", +# "Zählerbezeichnung im ausgewählten Messkonzept MK6 Z4", +# "Auswahl Grund nach Einbau MK6 Z4", +# "Auswahl Grund nach Wechsel MK6 Z4", +# "Wahl Einspeiser MK6 Z4", +# "Einspeiseleistung in kVA MK6 Z4", +# "Upload Einspeisemanagement MK6 Z4", +# "Energieverbrauch im Jahr MK6 Z4", +# "Montageort des Zählerschrankes MK6 Z4", +# "Abfrage Spannungsebene MK6 Z4", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Kopie von Angaben zum Zähler MK6 Z3" +# title = "Angaben zum Zähler Z4 (Messkonzept 6)" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Grundzuständiger Messstellenbetreiber Gelsenwasser Energienetze GmbH", +# "Fremder Messstellenbetreiber", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Entscheidet sich der Anschlussnehmer (-nutzer) gegen die Gelsenwasser Energienetze GmbH als grundzuständigen Messstellenbetreiber (MSB), muss hier der gewählte MSB angegeben werden. Dies erleichtert die weitere Bearbeitung, ersetzt jedoch nicht die Pflichten des Anschlussnehmers (-nutzers) in Bezug auf § 5 und § 6 Messstellenbetriebsgesetz (MsbG)." +# title = "Messstellenbetreiber" +# } +# scope = "#/properties/Auswahl Messstellenbetreiber MK6 Z4" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Niederspannung (NS)", +# "Mittelspannung (MS)", +# ] +# optionsIcons = [ +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Spannungsebene der Messeinrichtung an." +# title = "Spannungsebene" +# } +# scope = "#/properties/Abfrage Spannungsebene MK6 Z4" +# type = "Control" +# }, +# { +# label = false +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Z4", +# ] +# optionsIcons = [ +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Zählerbezeichnung im ausgewählten Messkonzept" +# } +# scope = "#/properties/Zählerbezeichnung im ausgewählten Messkonzept MK6 Z4" +# type = "Control" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einbau", +# "Wechsel", +# "Ausbau & Vertragsende", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund MK6 Z4" +# type = "Control" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Neunanlage", +# "Wiederinbetriebnahme", +# "Anlagentrennung", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Einbau MK6 Z4" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Einbau MK6 Z4" +# type = "GroupLayout" +# }, +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Anlagenerneuerung/-sanierung", +# "Leistungsänderung (Verstärkung)", +# "Vertragsänderung (Umbau Speicherheizung o.ä.)", +# "Messkonzept-Wechsel (Ein-/Umbau von Erzeugungsanlagen)", +# "Messstellenbetreiberwechsel", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Auswahl Grund nach Wechsel MK6 Z4" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# isNested = true +# label = "Zählernummer auszubauender Zähler MK6 Z4" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte geben Sie hier die Zählernummer des auszubauenden Zählers ein" +# } +# scope = "#/properties/Zählernummer auszubauender Zähler MK6 Z4" +# type = "Control" +# }, +# ] +# options = { +# display = true +# halfWidth = false +# isNested = false +# name = "Kopie von Gruppe 1" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Bitte wählen Sie den Auftragsgrund aus" +# } +# scope = "#/properties/Auftragsgrund Wechsel MK6 Z4" +# type = "GroupLayout" +# }, +# { +# options = { +# button = true +# halfWidth = false +# label = false +# options = [ +# "Einspeiser PV", +# "Einspeiser Biomasse", +# "Einspeiser KWK", +# "Einspeiser Wind", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Wählen Sie eine Einspeiseart aus" +# } +# scope = "#/properties/Wahl Einspeiser MK6 Z4" +# type = "Control" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 3 +# show = false +# validate = false +# } +# label = "Einspeiseleistung in kVA" +# range = {} +# unit = { +# label = "kva" +# show = true +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte geben Sie die Gesamteinspeiseleistung der Erzeugungsanlage(n) an." +# } +# scope = "#/properties/Einspeiseleistung in kVA MK6 Z4" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEIAaQB0AHQAZQAgAGIAZQBzAHQA5AB0AGkAZwBlAG4AIABTAGkAZQAgAHUAbgBzACAAZABlAG4AIABFAGkAbgBiAGEAdQAgAGQAZQBzACAARQBpAG4AcwBwAGUAaQBzAGUAbQBhAG4AYQBnAGUAbQBlAG4AdABzAC4AIABEAGEAcwAgAGQAYQBmAPwAcgAgAGUAcgBmAG8AcgBkAGUAcgBsAGkAYwBoAGUAIABEAG8AawB1AG0AZQBuAHQAIABlAHIAaABhAGwAdABlAG4AIABTAGkAZQAgAGgAaQBlAHIAOgAgACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFYAZQByAGwAaQBuAGsAdQBuAGcAIABhAHUAcwAgAEcAVwBOACAASQAtAFMAZQBpAHQAZQAgAG0AdQBzAHMAIABuAG8AYwBoACAAZQByAHMAdABlAGwAbAB0ACAAdwBlAHIAZABlAG4AIgAsACIAdAB5AHAAZQAiADoAIgB0AGUAeAB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgBwAGEAcgBhAGcAcgBhAHAAaAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcgBvAG8AdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AfQA=" +# plainTextLabel = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Einspeisemanagement gemäß §9 EEG" +# } +# scope = "#/properties/Bestätigung Einspeisemanagent MK6 Z4" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# maxQuantity = 1 +# restricted = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Bitte laden Sie hier die ausgefüllte Bestätigung des Einspeisemanagements hoch" +# supportedTypes = "PDF" +# tags = [ +# "Bestätigung Einspeisemanagement", +# ] +# } +# scope = "#/properties/Upload Einspeisemanagement MK6 Z4" +# type = "UploadPanelControl" +# }, +# { +# options = { +# fields = { +# numberInput = { +# format = { +# decimalPlaces = 0 +# digitsBeforeDecimalPoint = 6 +# show = false +# validate = false +# } +# label = "Energieverbrauch im Jahr" +# range = {} +# unit = { +# label = "kwh" +# } +# } +# } +# halfWidth = false +# isNested = false +# required = true +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Voraussichtlicher Jahresverbrauch" +# } +# scope = "#/properties/Energieverbrauch im Jahr MK6 Z4" +# type = "NumberInputControl" +# }, +# { +# options = { +# halfWidth = false +# label = "Montageort des Zählerschrankes" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# title = "Montageort des Zählerschrankes" +# } +# scope = "#/properties/Montageort des Zählerschrankes MK6 Z4" +# type = "Control" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Zurück" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Next" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Vielen Dank" +# schema = jsonencode( +# { +# properties = { +# Abschluss = { +# type = "object" +# } +# } +# required = [] +# type = "object" +# } +# ) +# show_step_name = false +# show_step_subtitle = false +# show_stepper = false +# show_stepper_labels = false +# step_id = "Vielen Dank" +# title = "Vielen Dank" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# closeButtonText = "Schließen" +# icon = "check-circle-fill" +# showCloseButton = false +# text = "Wir haben Ihren Antrag erhalten!" +# title = "Vielen Dank!" +# } +# scope = "#/properties/Abschluss" +# type = "ConfirmationMessageControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Nichtverfügbarkeit" +# schema = jsonencode( +# { +# properties = { +# Bild = { +# type = "object" +# } +# "Ermittlung Netzbetreiber" = { +# enum = [ +# "https://vnbdigital.de", +# ] +# } +# Example = { +# type = "object" +# } +# Schließen = { +# type = "object" +# } +# } +# required = [] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Nichtverfügbarkeit" +# title = "Leider nicht unser Versorgungsgebiet!" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# width = "100%" +# } +# scope = "#/properties/Bild" +# type = "ImageControl" +# }, +# { +# options = { +# halfWidth = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Text" +# text = "ewAiAHIAbwBvAHQAIgA6AHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAEwAZQBpAGQAZQByACAAbABpAGUAZwB0ACAAZABpAGUAIAB2AG8AbgAgAEkAaABuAGUAbgAgAGEAbgBnAGUAZwBlAGIAZQBuAGUAIABBAGQAcgBlAHMAcwBlACAAbgBpAGMAaAB0ACAAaQBuACAAdQBuAHMAZQByAGUAbQAgAE4AZQB0AHoAZwBlAGIAaQBlAHQALgAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBcAG4AQgBpAHQAdABlACAA/ABiAGUAcgBwAHIA/ABmAGUAbgAgAFMAaQBlACAASQBoAHIAZQAgAEUAaQBuAGcAYQBiAGUAbgAgAG8AZABlAHIAIABuAHUAdAB6AGUAbgAgAFMAaQBlACAAZABlAG4AIABmAG8AbABnAGUAbgBkAGUAbgAgAEIAdQB0AHQAbwBuACAAegB1AHIAIABFAHIAbQBpAHQAdABsAHUAbgBnACAASQBoAHIAZQBzACAAegB1AHMAdADkAG4AZABpAGcAZQBuACAATgBlAHQAegBiAGUAdAByAGUAaQBiAGUAcgBzAC4AXABuAEkAbgAgAGkAbgBkAGkAdgBpAGQAdQBlAGwAbABlAG4AIABGAOQAbABsAGUAbgAgAGkAbQAgAEIAZQByAGUAaQBjAGgAIABkAGUAcgAgAEcAcgBlAG4AegBlAG4AIAB1AG4AcwBlAHIAZQBzACAATgBlAHQAegBnAGUAYgBpAGUAdABlAHMALAAgAGkAcwB0ACAAZQBpAG4AZQAgAFYAZQByAGYA/ABnAGIAYQByAGsAZQBpAHQAcwBwAHIA/ABmAHUAbgBnACAAbABlAGkAZABlAHIAIABuAGkAYwBoAHQAIABtAPYAZwBsAGkAYwBoAC4AXAByAFwAbgBXAGUAbgBkAGUAbgAgAFMAaQBlACAAcwBpAGMAaAAgAGkAbgAgAGQAaQBlAHMAZQBtACAARgBhAGwAbAAgAEIAaQB0AHQAZQAgAGQAaQByAGUAawB0ACAAYQBuACAAdQBuAHMAZQByAGUAIABLAG8AbABsAGUAZwBlAG4AIABpAG0AIABqAGUAdwBlAGkAbABpAGcAZQBuACAATgBlAHQAegBnAGUAYgBpAGUAdAA6ACIALAAiAHQAeQBwAGUAIgA6ACIAdABlAHgAdAAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxAH0AXQAsACIAZABpAHIAZQBjAHQAaQBvAG4AIgA6ACIAbAB0AHIAIgAsACIAZgBvAHIAbQBhAHQAIgA6ACIAIgAsACIAaQBuAGQAZQBuAHQAIgA6ADAALAAiAHQAeQBwAGUAIgA6ACIAcABhAHIAYQBnAHIAYQBwAGgAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFwAbgBOAGUAdAB6AGcAZQBiAGkAZQB0ACAATQD8AG4AcwB0AGUAcgBsAGEAbgBkADoAIAAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAE4AZQB0AHoAcABvAHIAdABhAGwALQBCAEwAQABnAHcALQBlAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAuAGQAZQAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGEAdQB0AG8AbABpAG4AawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgByAGUAbAAiADoAbgB1AGwAbAAsACIAdABhAHIAZwBlAHQAIgA6AG4AdQBsAGwALAAiAHQAaQB0AGwAZQAiADoAbgB1AGwAbAAsACIAdQByAGwAIgA6ACIAbQBhAGkAbAB0AG8AOgBOAGUAdAB6AHAAbwByAHQAYQBsAC0AQgBMAEAAZwB3AC0AZQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUALgBkAGUAIgB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQAsAHsAIgBjAGgAaQBsAGQAcgBlAG4AIgA6AFsAewAiAGQAZQB0AGEAaQBsACIAOgAwACwAIgBmAG8AcgBtAGEAdAAiADoAMAAsACIAbQBvAGQAZQAiADoAIgBuAG8AcgBtAGEAbAAiACwAIgBzAHQAeQBsAGUAIgA6ACIAIgAsACIAdABlAHgAdAAiADoAIgBcAG4AXAByAE4AZQB0AHoAZwBlAGIAaQBlAHQAIABTAHQAbwBsAHoAZQBuAGEAdQAgAHUAbgBkACAAUgBlAGgAYgB1AHIAZwAtAEwAbwBjAGMAdQBtADoAIAAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9ACwAewAiAGMAaABpAGwAZAByAGUAbgAiADoAWwB7ACIAZABlAHQAYQBpAGwAIgA6ADAALAAiAGYAbwByAG0AYQB0ACIAOgAwACwAIgBtAG8AZABlACIAOgAiAG4AbwByAG0AYQBsACIALAAiAHMAdAB5AGwAZQAiADoAIgAiACwAIgB0AGUAeAB0ACIAOgAiAFAAbwBzAHQAZgBhAGMAaABfAEcAVwBOAF8AQQB1AGYAdAByAGEAZwAtAEIAVwAtAEsAQABnAHcALQBlAG4AZQByAGcAaQBlAG4AZQB0AHoAZQAuAGQAZQAiACwAIgB0AHkAcABlACIAOgAiAHQAZQB4AHQAIgAsACIAdgBlAHIAcwBpAG8AbgAiADoAMQB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAGEAdQB0AG8AbABpAG4AawAiACwAIgB2AGUAcgBzAGkAbwBuACIAOgAxACwAIgByAGUAbAAiADoAbgB1AGwAbAAsACIAdABhAHIAZwBlAHQAIgA6AG4AdQBsAGwALAAiAHQAaQB0AGwAZQAiADoAbgB1AGwAbAAsACIAdQByAGwAIgA6ACIAbQBhAGkAbAB0AG8AOgBQAG8AcwB0AGYAYQBjAGgAXwBHAFcATgBfAEEAdQBmAHQAcgBhAGcALQBCAFcALQBLAEAAZwB3AC0AZQBuAGUAcgBnAGkAZQBuAGUAdAB6AGUALgBkAGUAIgB9AF0ALAAiAGQAaQByAGUAYwB0AGkAbwBuACIAOgAiAGwAdAByACIALAAiAGYAbwByAG0AYQB0ACIAOgAiACIALAAiAGkAbgBkAGUAbgB0ACIAOgAwACwAIgB0AHkAcABlACIAOgAiAHAAYQByAGEAZwByAGEAcABoACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQBdACwAIgBkAGkAcgBlAGMAdABpAG8AbgAiADoAIgBsAHQAcgAiACwAIgBmAG8AcgBtAGEAdAAiADoAIgAiACwAIgBpAG4AZABlAG4AdAAiADoAMAAsACIAdAB5AHAAZQAiADoAIgByAG8AbwB0ACIALAAiAHYAZQByAHMAaQBvAG4AIgA6ADEAfQB9AA==" +# type = "Label" +# }, +# { +# label = false +# options = { +# halfWidth = false +# optionsLabels = [ +# "Ermittlung des zuständigen Netzbetreibers", +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Ermittlung Netzbetreiber" +# type = "SecondaryActionBarControl" +# }, +# { +# options = { +# consents = [ +# { +# isVisible = false +# name = "first_consent" +# }, +# { +# isVisible = false +# name = "second_consent" +# }, +# { +# isVisible = false +# name = "third_consent" +# }, +# { +# isVisible = false +# name = "fourth_consent" +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = false +# label = "Ich möchte meine Angaben korrigieren" +# } +# goBackButton = { +# actionType = "GoBack" +# isVisible = true +# label = "Ich möchte meine Angaben korrigieren" +# } +# halfWidth = false +# showPaper = false +# stickyOnMobile = true +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Schließen" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# { +# hide_next_button = true +# name = "Inbetriebnahme Erzeugungsanlage" +# schema = jsonencode( +# { +# properties = { +# "Bestätigung Blindleistungsbereitstellung" = { +# type = "object" +# } +# "Fester Verschiebungsfaktor cos phi" = { +# type = "string" +# } +# "Verfahren Blindleistungsbereitstellung" = { +# enum = [ +# "Q(U)-Standard-Kennlinie", +# "cos (P)-Standard-kennlinie", +# "fester Verschiebungsfaktor cos phi", +# ] +# type = "string" +# } +# Weiter = { +# type = "object" +# } +# } +# required = [ +# "Fester Verschiebungsfaktor cos phi", +# "Verfahren Blindleistungsbereitstellung", +# "Bestätigung Blindleistungsbereitstellung", +# ] +# type = "object" +# } +# ) +# show_step_name = true +# show_step_subtitle = false +# show_stepper = true +# show_stepper_labels = false +# step_id = "Neuer Schritt" +# title = "Blindleistungsbereitstellung" +# uischema = jsonencode( +# { +# elements = [ +# { +# options = { +# button = true +# halfWidth = false +# isNested = false +# label = false +# options = [ +# "Q(U)-Standard-Kennlinie", +# "cos (P)-Standard-kennlinie", +# "fester Verschiebungsfaktor cos phi", +# ] +# optionsIcons = [ +# null, +# null, +# null, +# ] +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# subtitle = "Welches Verfahren zur Blindleistungsbereitstellung nach Vorgabe des Netzbetreibers ist eingestellt? In der Einspeisezusage ist das Verfahren inkl. Einstellwerte zur Blindleistungsbereitstellung angegeben." +# } +# scope = "#/properties/Verfahren Blindleistungsbereitstellung" +# type = "Control" +# }, +# { +# options = { +# halfWidth = false +# label = "Fester Verschiebungsfaktor cos phi" +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Fester Verschiebungsfaktor cos phi" +# type = "Control" +# }, +# { +# options = { +# configs = [ +# { +# required = true +# textMD = "Hiermit bestätige ich als Anlagenerrichter, dass das angegebene Verfahren aus der Einspeisezusage in der Erzeugungsanlage eingestellt wurde." +# topics = [ +# "Bestätigung Blindleistungs", +# ] +# }, +# ] +# halfWidth = false +# showPaper = false +# stickyOnMobile = false +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Bestätigung Blindleistungsbereitstellung" +# type = "ConsentsControl" +# }, +# { +# options = { +# consents = [ +# { +# isRequired = false +# isVisible = false +# name = "first_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "second_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "third_consent" +# text = null +# }, +# { +# isRequired = false +# isVisible = false +# name = "fourth_consent" +# text = null +# }, +# ] +# ctaButton = { +# actionType = "GoNext" +# isVisible = true +# label = "Weiter" +# } +# showPaper = false +# stickyOnMobile = true +# stickyOnMobileIndex = 1 +# } +# scope = "#/properties/Weiter" +# type = "ActionBarControl" +# }, +# ] +# options = { +# scale = 3 +# } +# type = "MainLinearLayout" +# } +# ) +# }, +# ] +# } diff --git a/examples/data-sources/epilot-journey_journey/data-source.tf b/examples/data-sources/epilot-journey_journey/data-source.tf index 6bcc41b..3b0794d 100644 --- a/examples/data-sources/epilot-journey_journey/data-source.tf +++ b/examples/data-sources/epilot-journey_journey/data-source.tf @@ -1,3 +1,3 @@ data "epilot-journey_journey" "my_journey" { - journey_id = "509cdffe-424f-457a-95c2-9708c304ce77" + id = "509cdffe-424f-457a-95c2-9708c304ce77" } \ No newline at end of file diff --git a/examples/provider/provider.tf b/examples/provider/provider.tf index f7ff17c..034844c 100644 --- a/examples/provider/provider.tf +++ b/examples/provider/provider.tf @@ -2,7 +2,7 @@ terraform { required_providers { epilot-journey = { source = "epilot-dev/epilot-journey" - version = "0.2.7" + version = "0.3.2" } } } diff --git a/examples/resources/epilot-journey_journey/import.sh b/examples/resources/epilot-journey_journey/import.sh new file mode 100644 index 0000000..25340c9 --- /dev/null +++ b/examples/resources/epilot-journey_journey/import.sh @@ -0,0 +1 @@ +terraform import epilot-journey_journey.my_epilot-journey_journey "" diff --git a/examples/resources/epilot-journey_journey/resource.tf b/examples/resources/epilot-journey_journey/resource.tf index 5c1abe9..cf7d7a9 100644 --- a/examples/resources/epilot-journey_journey/resource.tf +++ b/examples/resources/epilot-journey_journey/resource.tf @@ -1,21 +1,21 @@ resource "epilot-journey_journey" "my_journey" { - # brand_id = "...my_brand_id..." - # journey_id = "...my_journey_id..." - # name = "Dianne Kiehn" - # skip_automation = true - # steps = [ - # { - # hide_next_button = false - # name = "Pearl Ondricka" - # schema = "{ \"see\": \"documentation\" }" - # show_step_name = true - # show_stepper = true - # show_stepper_labels = true - # show_step_subtitle = true - # step_id = "...my_step_id..." - # sub_title = "...my_sub_title..." - # title = "Ms." - # uischema = "{ \"see\": \"documentation\" }" - # }, - # ] -} \ No newline at end of file + brand_id = "...my_brand_id..." + id = "509cdffe-424f-457a-95c2-9708c304ce77" + journey_id = "...my_journey_id..." + name = "Nathaniel Von" + steps = [ + { + hide_next_button = true + name = "Devin Lehner" + schema = "{ \"see\": \"documentation\" }" + show_step_name = false + show_stepper = false + show_stepper_labels = true + show_step_subtitle = true + step_id = "...my_step_id..." + sub_title = "...my_sub_title..." + title = "Dr." + uischema = "{ \"see\": \"documentation\" }" + }, + ] +} \ No newline at end of file diff --git a/gen.yaml b/gen.yaml index c48ae08..8eaa71c 100755 --- a/gen.yaml +++ b/gen.yaml @@ -5,11 +5,20 @@ generation: optionalPropertyRendering: withExample fixes: nameResolutionDec2023: false + parameterOrderingFeb2024: false + requestResponseComponentNamesFeb2024: false + auth: + oAuth2ClientCredentialsEnabled: false sdkFlattening: true telemetryEnabled: false terraform: - version: 0.2.7 + version: 0.3.2 + additionalDataSources: [] + additionalDependencies: {} + additionalResources: [] + allowUnknownFieldsInWeakUnions: false author: epilot-dev + environmentVariables: [] imports: option: openapi paths: diff --git a/go.mod b/go.mod index 053ee95..ebaeaf9 100644 --- a/go.mod +++ b/go.mod @@ -1,13 +1,16 @@ module github.com/epilot-dev/terraform-provider-epilot-journey -go 1.18 +go 1.21 + +toolchain go1.21.6 require ( github.com/cenkalti/backoff/v4 v4.2.0 github.com/ericlagergren/decimal v0.0.0-20221120152707-495c53812d05 - github.com/hashicorp/terraform-plugin-framework v1.3.5 - github.com/hashicorp/terraform-plugin-go v0.18.0 - github.com/spyzhov/ajson v0.9.0 + github.com/hashicorp/terraform-plugin-docs v0.13.0 + github.com/hashicorp/terraform-plugin-framework v1.7.0 + github.com/hashicorp/terraform-plugin-framework-validators v0.10.0 + github.com/hashicorp/terraform-plugin-go v0.22.1 ) require ( @@ -19,21 +22,22 @@ require ( github.com/bgentry/speakeasy v0.1.0 // indirect github.com/fatih/color v1.13.0 // indirect github.com/golang/protobuf v1.5.3 // indirect - github.com/google/uuid v1.3.0 // indirect + github.com/google/uuid v1.6.0 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-checkpoint v0.5.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-hclog v1.5.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/hashicorp/go-plugin v1.4.10 // indirect + github.com/hashicorp/go-plugin v1.6.0 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect github.com/hashicorp/go-version v1.6.0 // indirect github.com/hashicorp/hc-install v0.4.0 // indirect github.com/hashicorp/terraform-exec v0.17.2 // indirect github.com/hashicorp/terraform-json v0.14.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect - github.com/hashicorp/terraform-registry-address v0.2.1 // indirect + github.com/hashicorp/terraform-registry-address v0.2.3 // indirect github.com/hashicorp/terraform-svchost v0.1.1 // indirect + github.com/hashicorp/yamux v0.1.1 // indirect github.com/huandu/xstrings v1.3.2 // indirect github.com/imdario/mergo v0.3.13 // indirect github.com/mattn/go-colorable v0.1.12 // indirect @@ -47,20 +51,14 @@ require ( github.com/russross/blackfriday v1.6.0 // indirect github.com/shopspring/decimal v1.3.1 // indirect github.com/spf13/cast v1.5.0 // indirect - github.com/vmihailenco/msgpack/v5 v5.3.5 // indirect + github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect github.com/zclconf/go-cty v1.13.1 // indirect - golang.org/x/crypto v0.10.0 // indirect - golang.org/x/net v0.11.0 // indirect - golang.org/x/sys v0.9.0 // indirect - golang.org/x/text v0.10.0 // indirect - google.golang.org/grpc v1.56.1 // indirect - google.golang.org/protobuf v1.31.0 // indirect -) - -require ( - github.com/hashicorp/terraform-plugin-docs v0.13.0 - github.com/hashicorp/terraform-plugin-framework-validators v0.10.0 - github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d // indirect - google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 // indirect + golang.org/x/crypto v0.18.0 // indirect + golang.org/x/net v0.20.0 // indirect + golang.org/x/sys v0.16.0 // indirect + golang.org/x/text v0.14.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240123012728-ef4313101c80 // indirect + google.golang.org/grpc v1.62.1 // indirect + google.golang.org/protobuf v1.33.0 // indirect ) diff --git a/go.sum b/go.sum index 853448b..417aa41 100644 --- a/go.sum +++ b/go.sum @@ -23,6 +23,8 @@ github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgI github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/bgentry/speakeasy v0.1.0 h1:ByYyxL9InA1OWqxJqqp2A5pYHUrCiAL6K3J+LKSsQkY= github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/bufbuild/protocompile v0.4.0 h1:LbFKd2XowZvQ/kajzguUp2DC9UEIQhIq77fZZlaQsNA= +github.com/bufbuild/protocompile v0.4.0/go.mod h1:3v93+mbWn/v3xzN+31nwkJfrEpAUwp+BagBSZWx+TP8= github.com/cenkalti/backoff/v4 v4.2.0 h1:HN5dHm3WBOgndBH6E8V0q2jIYIR3s9yglV8k/+MN3u4= github.com/cenkalti/backoff/v4 v4.2.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= @@ -38,6 +40,7 @@ github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc= github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE= +github.com/frankban/quicktest v1.14.3/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps= github.com/gliderlabs/ssh v0.2.2/go.mod h1:U7qILu1NlMHj9FlMhZLlkCdDnU1DBEAqr0aevW3Awn0= github.com/go-git/gcfg v1.5.0 h1:Q5ViNfGF8zFgyJWPqYwA7qGFoMTEiBmdlkcfRmpIMa4= github.com/go-git/gcfg v1.5.0/go.mod h1:5m20vg6GwYabIxaOonVkTdrILxQMpEShl1xiMF4ua+E= @@ -57,11 +60,12 @@ github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMyw github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= -github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= @@ -75,8 +79,8 @@ github.com/hashicorp/go-hclog v1.5.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVH github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= -github.com/hashicorp/go-plugin v1.4.10 h1:xUbmA4jC6Dq163/fWcp8P3JuHilrHHMLNRxzGQJ9hNk= -github.com/hashicorp/go-plugin v1.4.10/go.mod h1:6/1TEzT0eQznvI/gV2CM29DLSkAK/e58mUWKVsPaph0= +github.com/hashicorp/go-plugin v1.6.0 h1:wgd4KxHJTVGGqWBq4QPB1i5BZNEx9BR8+OFmHDmTk8A= +github.com/hashicorp/go-plugin v1.6.0/go.mod h1:lBS5MtSSBZk0SHc66KACcjjlU6WzEVP/8pwz68aMkCI= github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/Co8= github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= @@ -91,20 +95,20 @@ github.com/hashicorp/terraform-json v0.14.0 h1:sh9iZ1Y8IFJLx+xQiKHGud6/TSUCM0N8e github.com/hashicorp/terraform-json v0.14.0/go.mod h1:5A9HIWPkk4e5aeeXIBbkcOvaZbIYnAIkEyqP2pNSckM= github.com/hashicorp/terraform-plugin-docs v0.13.0 h1:6e+VIWsVGb6jYJewfzq2ok2smPzZrt1Wlm9koLeKazY= github.com/hashicorp/terraform-plugin-docs v0.13.0/go.mod h1:W0oCmHAjIlTHBbvtppWHe8fLfZ2BznQbuv8+UD8OucQ= -github.com/hashicorp/terraform-plugin-framework v1.3.5 h1:FJ6s3CVWVAxlhiF/jhy6hzs4AnPHiflsp9KgzTGl1wo= -github.com/hashicorp/terraform-plugin-framework v1.3.5/go.mod h1:2gGDpWiTI0irr9NSTLFAKlTi6KwGti3AoU19rFqU30o= +github.com/hashicorp/terraform-plugin-framework v1.7.0 h1:wOULbVmfONnJo9iq7/q+iBOBJul5vRovaYJIu2cY/Pw= +github.com/hashicorp/terraform-plugin-framework v1.7.0/go.mod h1:jY9Id+3KbZ17OMpulgnWLSfwxNVYSoYBQFTgsx044CI= github.com/hashicorp/terraform-plugin-framework-validators v0.10.0 h1:4L0tmy/8esP6OcvocVymw52lY0HyQ5OxB7VNl7k4bS0= github.com/hashicorp/terraform-plugin-framework-validators v0.10.0/go.mod h1:qdQJCdimB9JeX2YwOpItEu+IrfoJjWQ5PhLpAOMDQAE= -github.com/hashicorp/terraform-plugin-go v0.18.0 h1:IwTkOS9cOW1ehLd/rG0y+u/TGLK9y6fGoBjXVUquzpE= -github.com/hashicorp/terraform-plugin-go v0.18.0/go.mod h1:l7VK+2u5Kf2y+A+742GX0ouLut3gttudmvMgN0PA74Y= +github.com/hashicorp/terraform-plugin-go v0.22.1 h1:iTS7WHNVrn7uhe3cojtvWWn83cm2Z6ryIUDTRO0EV7w= +github.com/hashicorp/terraform-plugin-go v0.22.1/go.mod h1:qrjnqRghvQ6KnDbB12XeZ4FluclYwptntoWCr9QaXTI= github.com/hashicorp/terraform-plugin-log v0.9.0 h1:i7hOA+vdAItN1/7UrfBqBwvYPQ9TFvymaRGZED3FCV0= github.com/hashicorp/terraform-plugin-log v0.9.0/go.mod h1:rKL8egZQ/eXSyDqzLUuwUYLVdlYeamldAHSxjUFADow= -github.com/hashicorp/terraform-registry-address v0.2.1 h1:QuTf6oJ1+WSflJw6WYOHhLgwUiQ0FrROpHPYFtwTYWM= -github.com/hashicorp/terraform-registry-address v0.2.1/go.mod h1:BSE9fIFzp0qWsJUUyGquo4ldV9k2n+psif6NYkBRS3Y= +github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTVcLZRu7JseiXNRHbOAyoTI= +github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM= github.com/hashicorp/terraform-svchost v0.1.1 h1:EZZimZ1GxdqFRinZ1tpJwVxxt49xc/S52uzrw4x0jKQ= github.com/hashicorp/terraform-svchost v0.1.1/go.mod h1:mNsjQfZyf/Jhz35v6/0LWcv26+X7JPS+buii2c9/ctc= -github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d h1:kJCB4vdITiW1eC1vq2e6IsrXKrZit1bv/TDYFGMp4BQ= -github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM= +github.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE= +github.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= github.com/huandu/xstrings v1.3.1/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/huandu/xstrings v1.3.2 h1:L18LIDzqlW6xN2rEkpdV8+oL/IXWJ1APd+vsdYy4Wdw= github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= @@ -115,13 +119,15 @@ github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= github.com/jessevdk/go-flags v1.5.0/go.mod h1:Fw0T6WPc1dYxT4mKEZRfG5kJhaTDP9pj1c2EWnYs/m4= -github.com/jhump/protoreflect v1.6.0 h1:h5jfMVslIg6l29nsMs0D8Wj17RDVdNYti0vDN/PZZoE= +github.com/jhump/protoreflect v1.15.1 h1:HUMERORf3I3ZdX05WaQ6MIpd/NJ434hTp5YiKgfCL6c= +github.com/jhump/protoreflect v1.15.1/go.mod h1:jD/2GMKKE6OqX8qTjhADU1e6DShO+gavG9e0Q693nKo= github.com/kevinburke/ssh_config v0.0.0-20201106050909-4977a11b4351 h1:DowS9hvgyYSX4TO5NpyC606/Z4SxnNYbT+WX27or6Ck= github.com/kevinburke/ssh_config v0.0.0-20201106050909-4977a11b4351/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= +github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= @@ -159,11 +165,13 @@ github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndr github.com/posener/complete v1.2.3 h1:NP0eAhjcjImqslEwo/1hq7gpajME0fTLTezBKDqfXqo= github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSgv7Sy7s/s= github.com/rogpeppe/go-internal v1.6.1 h1:/FiVV8dS/e+YqF2JvO3yXRFbBLTIuSDkuC7aBOAvL+k= +github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/russross/blackfriday v1.6.0 h1:KqfZb0pUVN2lYqZUYRddxF4OR8ZMURnJIG5Y3VRLtww= github.com/russross/blackfriday v1.6.0/go.mod h1:ti0ldHuxg49ri4ksnFxlkCfN+hvslNlmVHqNRXXJNAY= github.com/sebdah/goldie v1.0.0/go.mod h1:jXP4hmWywNEwZzhMuv2ccnqTSFpuq8iyQhtQdkkZBH4= github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= +github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= @@ -171,8 +179,6 @@ github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMB github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w= github.com/spf13/cast v1.5.0/go.mod h1:SpXXQ5YoyJw6s3/6cMTQuxvgRl3PCJiyaX9p6b155UU= -github.com/spyzhov/ajson v0.9.0 h1:tF46gJGOenYVj+k9K1U1XpCxVWhmiyY5PsVCAs1+OJ0= -github.com/spyzhov/ajson v0.9.0/go.mod h1:a6oSw0MMb7Z5aD2tPoPO+jq11ETKgXUr2XktHdT8Wt8= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= @@ -185,8 +191,8 @@ github.com/stretchr/testify v1.7.2 h1:4jaiDzPyXQvSd7D0EjG45355tLlV3VOECpq10pLC+8 github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4= -github.com/vmihailenco/msgpack/v5 v5.3.5 h1:5gO0H1iULLWGhs2H5tbAHIZTV8/cYafcFOr9znI5mJU= -github.com/vmihailenco/msgpack/v5 v5.3.5/go.mod h1:7xyJ9e+0+9SaZT0Wt1RGleJXzli6Q/V5KbhBonMG9jc= +github.com/vmihailenco/msgpack/v5 v5.4.1 h1:cQriyiUvjTwOHg8QZaPihLWeRAAVoCpE00IUPn0Bjt8= +github.com/vmihailenco/msgpack/v5 v5.4.1/go.mod h1:GaZTsDaehaPpQVyxrf5mtQlH+pc21PIudVV/E3rRQok= github.com/vmihailenco/tagparser v0.1.1/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI= github.com/vmihailenco/tagparser/v2 v2.0.0 h1:y09buUbR+b5aycVFQs/g70pqKVZNBmxwAhO7/IwNM9g= github.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV6mEfg5OIWRZA9qds= @@ -204,16 +210,16 @@ golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPh golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.10.0 h1:LKqV2xt9+kDzSTfOhx4FrkEBcMrAgHSYgzywV9zcGmM= -golang.org/x/crypto v0.10.0/go.mod h1:o4eNf7Ede1fv+hwOwZsTHl9EsPFO6q6ZvYR8vYfY45I= +golang.org/x/crypto v0.18.0 h1:PGVlW0xEltQnzFZ55hkuX5+KLyrMYhHld1YHO4AKcdc= +golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210326060303-6b1517762897/go.mod h1:uSPa2vr4CLtc/ILN5odXGNXS6mhrKVzTaCXzk9m6W3k= -golang.org/x/net v0.11.0 h1:Gi2tvZIJyBtO9SDr1q9h5hEQCp/4L2RQ+ar0qjx2oNU= -golang.org/x/net v0.11.0/go.mod h1:2L/ixqYpgIVXmeoSA/4Lu7BzTG4KIyPIryS4IsOd1oQ= +golang.org/x/net v0.20.0 h1:aCL9BSgETF1k+blQaYUBx9hJ9LOGP3gAVemcZlf1Kpo= +golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -231,27 +237,27 @@ golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.9.0 h1:KS/R3tvhPqvJvwcKfnBHJwwthS11LRhmM5D59eEXa0s= -golang.org/x/sys v0.9.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.16.0 h1:xWw16ngr6ZMtmxDyKyIgsE93KNKz5HKmMa3b8ALHidU= +golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.10.0 h1:UpjohKhiEgNc0CSauXmwYftY1+LlaC75SJwh0SgCX58= -golang.org/x/text v0.10.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 h1:KpwkzHKEF7B9Zxg18WzOa7djJ+Ha5DzthMyZYQfEn2A= -google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1/go.mod h1:nKE/iIaLqn2bQwXBg8f1g2Ylh6r5MN5CmZvuzZCgsCU= -google.golang.org/grpc v1.56.1 h1:z0dNfjIl0VpaZ9iSVjA6daGatAYwPGstTjt5vkRMFkQ= -google.golang.org/grpc v1.56.1/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240123012728-ef4313101c80 h1:AjyfHzEPEFp/NpvfN5g+KDla3EMojjhRVZc1i7cj+oM= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240123012728-ef4313101c80/go.mod h1:PAREbraiVEVGVdTZsVWjSbbTtSyGbAgIIvni8a8CD5s= +google.golang.org/grpc v1.62.1 h1:B4n+nfKzOICUXMgyrNd19h/I9oH0L1pizfk1d4zSgTk= +google.golang.org/grpc v1.62.1/go.mod h1:IWTG0VlJLCh1SkC58F7np9ka9mx/WNkjl4PGJaiq+QE= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8= -google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= +google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/internal/planmodifiers/boolplanmodifier/suppress_diff.go b/internal/planmodifiers/boolplanmodifier/suppress_diff.go index 66cf032..b8f71dd 100644 --- a/internal/planmodifiers/boolplanmodifier/suppress_diff.go +++ b/internal/planmodifiers/boolplanmodifier/suppress_diff.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package boolplanmodifier diff --git a/internal/planmodifiers/float64planmodifier/suppress_diff.go b/internal/planmodifiers/float64planmodifier/suppress_diff.go index 74d4175..2cd2838 100644 --- a/internal/planmodifiers/float64planmodifier/suppress_diff.go +++ b/internal/planmodifiers/float64planmodifier/suppress_diff.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package float64planmodifier diff --git a/internal/planmodifiers/int64planmodifier/suppress_diff.go b/internal/planmodifiers/int64planmodifier/suppress_diff.go index c210a40..543263d 100644 --- a/internal/planmodifiers/int64planmodifier/suppress_diff.go +++ b/internal/planmodifiers/int64planmodifier/suppress_diff.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package int64planmodifier diff --git a/internal/planmodifiers/listplanmodifier/suppress_diff.go b/internal/planmodifiers/listplanmodifier/suppress_diff.go index 5572362..9aa72c4 100644 --- a/internal/planmodifiers/listplanmodifier/suppress_diff.go +++ b/internal/planmodifiers/listplanmodifier/suppress_diff.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package listplanmodifier diff --git a/internal/planmodifiers/mapplanmodifier/suppress_diff.go b/internal/planmodifiers/mapplanmodifier/suppress_diff.go index 7ac1bea..2a4aa78 100644 --- a/internal/planmodifiers/mapplanmodifier/suppress_diff.go +++ b/internal/planmodifiers/mapplanmodifier/suppress_diff.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package mapplanmodifier diff --git a/internal/planmodifiers/numberplanmodifier/suppress_diff.go b/internal/planmodifiers/numberplanmodifier/suppress_diff.go index ae4da62..d80b0d1 100644 --- a/internal/planmodifiers/numberplanmodifier/suppress_diff.go +++ b/internal/planmodifiers/numberplanmodifier/suppress_diff.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package numberplanmodifier diff --git a/internal/planmodifiers/objectplanmodifier/suppress_diff.go b/internal/planmodifiers/objectplanmodifier/suppress_diff.go index 91e481f..bf69282 100644 --- a/internal/planmodifiers/objectplanmodifier/suppress_diff.go +++ b/internal/planmodifiers/objectplanmodifier/suppress_diff.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package objectplanmodifier diff --git a/internal/planmodifiers/setplanmodifier/suppress_diff.go b/internal/planmodifiers/setplanmodifier/suppress_diff.go index f62823d..56b891b 100644 --- a/internal/planmodifiers/setplanmodifier/suppress_diff.go +++ b/internal/planmodifiers/setplanmodifier/suppress_diff.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package setplanmodifier diff --git a/internal/planmodifiers/stringplanmodifier/suppress_diff.go b/internal/planmodifiers/stringplanmodifier/suppress_diff.go index 67d1a43..ddda78d 100644 --- a/internal/planmodifiers/stringplanmodifier/suppress_diff.go +++ b/internal/planmodifiers/stringplanmodifier/suppress_diff.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package stringplanmodifier diff --git a/internal/planmodifiers/utils/state_check.go b/internal/planmodifiers/utils/state_check.go index 66d9150..6b126bf 100644 --- a/internal/planmodifiers/utils/state_check.go +++ b/internal/planmodifiers/utils/state_check.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils diff --git a/internal/provider/journey_data_source.go b/internal/provider/journey_data_source.go index 0339e14..e4df1da 100644 --- a/internal/provider/journey_data_source.go +++ b/internal/provider/journey_data_source.go @@ -1,12 +1,13 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package provider import ( "context" "fmt" + tfTypes "github.com/epilot-dev/terraform-provider-epilot-journey/internal/provider/types" "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/operations" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/operations" "github.com/hashicorp/terraform-plugin-framework/datasource" "github.com/hashicorp/terraform-plugin-framework/datasource/schema" "github.com/hashicorp/terraform-plugin-framework/types" @@ -28,14 +29,15 @@ type JourneyDataSource struct { // JourneyDataSourceModel describes the data model. type JourneyDataSourceModel struct { - BrandID types.String `tfsdk:"brand_id"` - Design *JourneyCreationRequestV2Design `tfsdk:"design"` - JourneyID types.String `tfsdk:"journey_id"` - Logics []JourneyCreationRequestV2Logics `tfsdk:"logics"` - Name types.String `tfsdk:"name"` - Rules []JourneyCreationRequestV2Rules `tfsdk:"rules"` - Settings *JourneyCreationRequestV2Settings `tfsdk:"settings"` - Steps []JourneyCreationRequestV2Steps `tfsdk:"steps"` + BrandID types.String `tfsdk:"brand_id"` + ContextSchema []tfTypes.JourneyCreationRequestV2ContextSchema `tfsdk:"context_schema"` + Design *tfTypes.JourneyCreationRequestV2Design `tfsdk:"design"` + JourneyID types.String `tfsdk:"journey_id"` + Logics []tfTypes.JourneyCreationRequestV2Logics `tfsdk:"logics"` + Name types.String `tfsdk:"name"` + Rules []tfTypes.JourneyCreationRequestV2Rules `tfsdk:"rules"` + Settings *tfTypes.JourneyCreationRequestV2Settings `tfsdk:"settings"` + Steps []tfTypes.JourneyCreationRequestV2Steps `tfsdk:"steps"` } // Metadata returns the data source type name. @@ -52,6 +54,22 @@ func (r *JourneyDataSource) Schema(ctx context.Context, req datasource.SchemaReq "brand_id": schema.StringAttribute{ Computed: true, }, + "context_schema": schema.ListNestedAttribute{ + Computed: true, + NestedObject: schema.NestedAttributeObject{ + Attributes: map[string]schema.Attribute{ + "is_required": schema.BoolAttribute{ + Computed: true, + }, + "param_key": schema.StringAttribute{ + Computed: true, + }, + "type": schema.StringAttribute{ + Computed: true, + }, + }, + }, + }, "design": schema.SingleNestedAttribute{ Computed: true, Attributes: map[string]schema.Attribute{ @@ -65,8 +83,7 @@ func (r *JourneyDataSource) Schema(ctx context.Context, req datasource.SchemaReq }, }, "journey_id": schema.StringAttribute{ - Required: true, - Description: `Journey ID`, + Computed: true, }, "logics": schema.ListNestedAttribute{ Computed: true, @@ -156,6 +173,9 @@ func (r *JourneyDataSource) Schema(ctx context.Context, req datasource.SchemaReq }, }, }, + "entity_id": schema.StringAttribute{ + Computed: true, + }, "entity_tags": schema.ListAttribute{ Computed: true, ElementType: types.StringType, @@ -282,12 +302,16 @@ func (r *JourneyDataSource) Read(ctx context.Context, req datasource.ReadRequest resp.Diagnostics.AddError("unexpected response from API", fmt.Sprintf("%v", res)) return } + if res.StatusCode == 404 { + resp.State.RemoveResource(ctx) + return + } if res.StatusCode != 200 { resp.Diagnostics.AddError(fmt.Sprintf("unexpected response from API. Got an unexpected response code %v", res.StatusCode), debugResponse(res.RawResponse)) return } - if res.JourneyCreationRequestV2 == nil { - resp.Diagnostics.AddError("unexpected response from API. No response body", debugResponse(res.RawResponse)) + if !(res.JourneyCreationRequestV2 != nil) { + resp.Diagnostics.AddError("unexpected response from API. Got an unexpected response body", debugResponse(res.RawResponse)) return } data.RefreshFromSharedJourneyCreationRequestV2(res.JourneyCreationRequestV2) diff --git a/internal/provider/journey_data_source_sdk.go b/internal/provider/journey_data_source_sdk.go index 220f194..8a0622f 100644 --- a/internal/provider/journey_data_source_sdk.go +++ b/internal/provider/journey_data_source_sdk.go @@ -1,155 +1,179 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package provider import ( "encoding/json" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + tfTypes "github.com/epilot-dev/terraform-provider-epilot-journey/internal/provider/types" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "github.com/hashicorp/terraform-plugin-framework/types" ) func (r *JourneyDataSourceModel) RefreshFromSharedJourneyCreationRequestV2(resp *shared.JourneyCreationRequestV2) { - r.BrandID = types.StringPointerValue(resp.BrandID) - if resp.Design == nil { - r.Design = nil - } else { - r.Design = &JourneyCreationRequestV2Design{} - r.Design.LogoURL = types.StringPointerValue(resp.Design.LogoURL) - if len(resp.Design.Theme) > 0 { - r.Design.Theme = make(map[string]types.String) - for key, value := range resp.Design.Theme { - result, _ := json.Marshal(value) - r.Design.Theme[key] = types.StringValue(string(result)) + if resp != nil { + r.BrandID = types.StringPointerValue(resp.BrandID) + r.ContextSchema = []tfTypes.JourneyCreationRequestV2ContextSchema{} + if len(r.ContextSchema) > len(resp.ContextSchema) { + r.ContextSchema = r.ContextSchema[:len(resp.ContextSchema)] + } + for contextSchemaCount, contextSchemaItem := range resp.ContextSchema { + var contextSchema1 tfTypes.JourneyCreationRequestV2ContextSchema + contextSchema1.IsRequired = types.BoolPointerValue(contextSchemaItem.IsRequired) + contextSchema1.ParamKey = types.StringValue(contextSchemaItem.ParamKey) + contextSchema1.Type = types.StringValue(contextSchemaItem.Type) + if contextSchemaCount+1 > len(r.ContextSchema) { + r.ContextSchema = append(r.ContextSchema, contextSchema1) + } else { + r.ContextSchema[contextSchemaCount].IsRequired = contextSchema1.IsRequired + r.ContextSchema[contextSchemaCount].ParamKey = contextSchema1.ParamKey + r.ContextSchema[contextSchemaCount].Type = contextSchema1.Type } } - } - r.JourneyID = types.StringPointerValue(resp.JourneyID) - if len(r.Logics) > len(resp.Logics) { - r.Logics = r.Logics[:len(resp.Logics)] - } - for logicsCount, logicsItem := range resp.Logics { - var logics1 JourneyCreationRequestV2Logics - logics1.Actions = nil - for _, v := range logicsItem.Actions { - logics1.Actions = append(logics1.Actions, types.StringValue(v)) + if resp.Design == nil { + r.Design = nil + } else { + r.Design = &tfTypes.JourneyCreationRequestV2Design{} + r.Design.LogoURL = types.StringPointerValue(resp.Design.LogoURL) + if len(resp.Design.Theme) > 0 { + r.Design.Theme = make(map[string]types.String) + for key, value := range resp.Design.Theme { + result, _ := json.Marshal(value) + r.Design.Theme[key] = types.StringValue(string(result)) + } + } } - logics1.AutoGeneratedID = types.StringPointerValue(logicsItem.AutoGeneratedID) - logics1.Conditions = nil - for _, v := range logicsItem.Conditions { - logics1.Conditions = append(logics1.Conditions, types.StringValue(v)) + r.JourneyID = types.StringPointerValue(resp.JourneyID) + r.Logics = []tfTypes.JourneyCreationRequestV2Logics{} + if len(r.Logics) > len(resp.Logics) { + r.Logics = r.Logics[:len(resp.Logics)] } - if logicsCount+1 > len(r.Logics) { - r.Logics = append(r.Logics, logics1) - } else { - r.Logics[logicsCount].Actions = logics1.Actions - r.Logics[logicsCount].AutoGeneratedID = logics1.AutoGeneratedID - r.Logics[logicsCount].Conditions = logics1.Conditions + for logicsCount, logicsItem := range resp.Logics { + var logics1 tfTypes.JourneyCreationRequestV2Logics + logics1.Actions = []types.String{} + for _, v := range logicsItem.Actions { + logics1.Actions = append(logics1.Actions, types.StringValue(v)) + } + logics1.AutoGeneratedID = types.StringPointerValue(logicsItem.AutoGeneratedID) + logics1.Conditions = []types.String{} + for _, v := range logicsItem.Conditions { + logics1.Conditions = append(logics1.Conditions, types.StringValue(v)) + } + if logicsCount+1 > len(r.Logics) { + r.Logics = append(r.Logics, logics1) + } else { + r.Logics[logicsCount].Actions = logics1.Actions + r.Logics[logicsCount].AutoGeneratedID = logics1.AutoGeneratedID + r.Logics[logicsCount].Conditions = logics1.Conditions + } } - } - r.Name = types.StringValue(resp.Name) - if len(r.Rules) > len(resp.Rules) { - r.Rules = r.Rules[:len(resp.Rules)] - } - for rulesCount, rulesItem := range resp.Rules { - var rules1 JourneyCreationRequestV2Rules - rules1.Source = types.StringValue(rulesItem.Source) - rules1.SourceType = types.StringValue(string(rulesItem.SourceType)) - rules1.Target = types.StringValue(rulesItem.Target) - rules1.Type = types.StringValue(string(rulesItem.Type)) - if rulesCount+1 > len(r.Rules) { - r.Rules = append(r.Rules, rules1) - } else { - r.Rules[rulesCount].Source = rules1.Source - r.Rules[rulesCount].SourceType = rules1.SourceType - r.Rules[rulesCount].Target = rules1.Target - r.Rules[rulesCount].Type = rules1.Type + r.Name = types.StringValue(resp.Name) + r.Rules = []tfTypes.JourneyCreationRequestV2Rules{} + if len(r.Rules) > len(resp.Rules) { + r.Rules = r.Rules[:len(resp.Rules)] } - } - if resp.Settings == nil { - r.Settings = nil - } else { - r.Settings = &JourneyCreationRequestV2Settings{} - r.Settings.AddressSuggestionsFileURL = types.StringPointerValue(resp.Settings.AddressSuggestionsFileURL) - r.Settings.Description = types.StringPointerValue(resp.Settings.Description) - r.Settings.DesignID = types.StringPointerValue(resp.Settings.DesignID) - if resp.Settings.EmbedOptions == nil { - r.Settings.EmbedOptions = nil + for rulesCount, rulesItem := range resp.Rules { + var rules1 tfTypes.JourneyCreationRequestV2Rules + rules1.Source = types.StringValue(rulesItem.Source) + rules1.SourceType = types.StringValue(string(rulesItem.SourceType)) + rules1.Target = types.StringValue(rulesItem.Target) + rules1.Type = types.StringValue(string(rulesItem.Type)) + if rulesCount+1 > len(r.Rules) { + r.Rules = append(r.Rules, rules1) + } else { + r.Rules[rulesCount].Source = rules1.Source + r.Rules[rulesCount].SourceType = rules1.SourceType + r.Rules[rulesCount].Target = rules1.Target + r.Rules[rulesCount].Type = rules1.Type + } + } + if resp.Settings == nil { + r.Settings = nil } else { - r.Settings.EmbedOptions = &JourneyCreationRequestV2EmbedOptions{} - if resp.Settings.EmbedOptions.Button == nil { - r.Settings.EmbedOptions.Button = nil + r.Settings = &tfTypes.JourneyCreationRequestV2Settings{} + r.Settings.AddressSuggestionsFileURL = types.StringPointerValue(resp.Settings.AddressSuggestionsFileURL) + r.Settings.Description = types.StringPointerValue(resp.Settings.Description) + r.Settings.DesignID = types.StringPointerValue(resp.Settings.DesignID) + if resp.Settings.EmbedOptions == nil { + r.Settings.EmbedOptions = nil } else { - r.Settings.EmbedOptions.Button = &JourneyCreationRequestV2Button{} - if resp.Settings.EmbedOptions.Button.Align != nil { - r.Settings.EmbedOptions.Button.Align = types.StringValue(string(*resp.Settings.EmbedOptions.Button.Align)) + r.Settings.EmbedOptions = &tfTypes.JourneyCreationRequestV2EmbedOptions{} + if resp.Settings.EmbedOptions.Button == nil { + r.Settings.EmbedOptions.Button = nil + } else { + r.Settings.EmbedOptions.Button = &tfTypes.JourneyCreationRequestV2Button{} + if resp.Settings.EmbedOptions.Button.Align != nil { + r.Settings.EmbedOptions.Button.Align = types.StringValue(string(*resp.Settings.EmbedOptions.Button.Align)) + } else { + r.Settings.EmbedOptions.Button.Align = types.StringNull() + } + r.Settings.EmbedOptions.Button.Text = types.StringPointerValue(resp.Settings.EmbedOptions.Button.Text) + } + if resp.Settings.EmbedOptions.Lang != nil { + r.Settings.EmbedOptions.Lang = types.StringValue(string(*resp.Settings.EmbedOptions.Lang)) } else { - r.Settings.EmbedOptions.Button.Align = types.StringNull() + r.Settings.EmbedOptions.Lang = types.StringNull() } - r.Settings.EmbedOptions.Button.Text = types.StringPointerValue(resp.Settings.EmbedOptions.Button.Text) + if resp.Settings.EmbedOptions.Mode != nil { + r.Settings.EmbedOptions.Mode = types.StringValue(string(*resp.Settings.EmbedOptions.Mode)) + } else { + r.Settings.EmbedOptions.Mode = types.StringNull() + } + r.Settings.EmbedOptions.ScrollToTop = types.BoolPointerValue(resp.Settings.EmbedOptions.ScrollToTop) + r.Settings.EmbedOptions.TopBar = types.BoolPointerValue(resp.Settings.EmbedOptions.TopBar) + r.Settings.EmbedOptions.Width = types.StringPointerValue(resp.Settings.EmbedOptions.Width) } - if resp.Settings.EmbedOptions.Lang != nil { - r.Settings.EmbedOptions.Lang = types.StringValue(string(*resp.Settings.EmbedOptions.Lang)) - } else { - r.Settings.EmbedOptions.Lang = types.StringNull() + r.Settings.EntityID = types.StringPointerValue(resp.Settings.EntityID) + r.Settings.EntityTags = []types.String{} + for _, v := range resp.Settings.EntityTags { + r.Settings.EntityTags = append(r.Settings.EntityTags, types.StringValue(v)) } - if resp.Settings.EmbedOptions.Mode != nil { - r.Settings.EmbedOptions.Mode = types.StringValue(string(*resp.Settings.EmbedOptions.Mode)) - } else { - r.Settings.EmbedOptions.Mode = types.StringNull() + r.Settings.FilePurposes = []types.String{} + for _, v := range resp.Settings.FilePurposes { + r.Settings.FilePurposes = append(r.Settings.FilePurposes, types.StringValue(v)) } - r.Settings.EmbedOptions.ScrollToTop = types.BoolPointerValue(resp.Settings.EmbedOptions.ScrollToTop) - r.Settings.EmbedOptions.TopBar = types.BoolPointerValue(resp.Settings.EmbedOptions.TopBar) - r.Settings.EmbedOptions.Width = types.StringPointerValue(resp.Settings.EmbedOptions.Width) - } - r.Settings.EntityTags = nil - for _, v := range resp.Settings.EntityTags { - r.Settings.EntityTags = append(r.Settings.EntityTags, types.StringValue(v)) - } - r.Settings.FilePurposes = nil - for _, v := range resp.Settings.FilePurposes { - r.Settings.FilePurposes = append(r.Settings.FilePurposes, types.StringValue(v)) + r.Settings.MappingsAutomationID = types.StringPointerValue(resp.Settings.MappingsAutomationID) + r.Settings.RuntimeEntities = []types.String{} + for _, v := range resp.Settings.RuntimeEntities { + r.Settings.RuntimeEntities = append(r.Settings.RuntimeEntities, types.StringValue(string(v))) + } + r.Settings.SafeModeAutomation = types.BoolPointerValue(resp.Settings.SafeModeAutomation) + r.Settings.TargetedCustomer = types.StringPointerValue(resp.Settings.TargetedCustomer) + r.Settings.TemplateID = types.StringPointerValue(resp.Settings.TemplateID) } - r.Settings.MappingsAutomationID = types.StringPointerValue(resp.Settings.MappingsAutomationID) - r.Settings.RuntimeEntities = nil - for _, v := range resp.Settings.RuntimeEntities { - r.Settings.RuntimeEntities = append(r.Settings.RuntimeEntities, types.StringValue(string(v))) + r.Steps = []tfTypes.JourneyCreationRequestV2Steps{} + if len(r.Steps) > len(resp.Steps) { + r.Steps = r.Steps[:len(resp.Steps)] } - r.Settings.SafeModeAutomation = types.BoolPointerValue(resp.Settings.SafeModeAutomation) - r.Settings.TargetedCustomer = types.StringPointerValue(resp.Settings.TargetedCustomer) - r.Settings.TemplateID = types.StringPointerValue(resp.Settings.TemplateID) - } - if len(r.Steps) > len(resp.Steps) { - r.Steps = r.Steps[:len(resp.Steps)] - } - for stepsCount, stepsItem := range resp.Steps { - var steps1 JourneyCreationRequestV2Steps - steps1.HideNextButton = types.BoolPointerValue(stepsItem.HideNextButton) - steps1.Name = types.StringValue(stepsItem.Name) - schemaResult, _ := json.Marshal(stepsItem.Schema) - steps1.Schema = types.StringValue(string(schemaResult)) - steps1.ShowStepName = types.BoolPointerValue(stepsItem.ShowStepName) - steps1.ShowStepper = types.BoolPointerValue(stepsItem.ShowStepper) - steps1.ShowStepperLabels = types.BoolPointerValue(stepsItem.ShowStepperLabels) - steps1.ShowStepSubtitle = types.BoolPointerValue(stepsItem.ShowStepSubtitle) - steps1.StepID = types.StringPointerValue(stepsItem.StepID) - steps1.SubTitle = types.StringPointerValue(stepsItem.SubTitle) - steps1.Title = types.StringPointerValue(stepsItem.Title) - uischemaResult, _ := json.Marshal(stepsItem.Uischema) - steps1.Uischema = types.StringValue(string(uischemaResult)) - if stepsCount+1 > len(r.Steps) { - r.Steps = append(r.Steps, steps1) - } else { - r.Steps[stepsCount].HideNextButton = steps1.HideNextButton - r.Steps[stepsCount].Name = steps1.Name - r.Steps[stepsCount].Schema = steps1.Schema - r.Steps[stepsCount].ShowStepName = steps1.ShowStepName - r.Steps[stepsCount].ShowStepper = steps1.ShowStepper - r.Steps[stepsCount].ShowStepperLabels = steps1.ShowStepperLabels - r.Steps[stepsCount].ShowStepSubtitle = steps1.ShowStepSubtitle - r.Steps[stepsCount].StepID = steps1.StepID - r.Steps[stepsCount].SubTitle = steps1.SubTitle - r.Steps[stepsCount].Title = steps1.Title - r.Steps[stepsCount].Uischema = steps1.Uischema + for stepsCount, stepsItem := range resp.Steps { + var steps1 tfTypes.JourneyCreationRequestV2Steps + steps1.HideNextButton = types.BoolPointerValue(stepsItem.HideNextButton) + steps1.Name = types.StringValue(stepsItem.Name) + schemaResult, _ := json.Marshal(stepsItem.Schema) + steps1.Schema = types.StringValue(string(schemaResult)) + steps1.ShowStepName = types.BoolPointerValue(stepsItem.ShowStepName) + steps1.ShowStepper = types.BoolPointerValue(stepsItem.ShowStepper) + steps1.ShowStepperLabels = types.BoolPointerValue(stepsItem.ShowStepperLabels) + steps1.ShowStepSubtitle = types.BoolPointerValue(stepsItem.ShowStepSubtitle) + steps1.StepID = types.StringPointerValue(stepsItem.StepID) + steps1.SubTitle = types.StringPointerValue(stepsItem.SubTitle) + steps1.Title = types.StringPointerValue(stepsItem.Title) + uischemaResult, _ := json.Marshal(stepsItem.Uischema) + steps1.Uischema = types.StringValue(string(uischemaResult)) + if stepsCount+1 > len(r.Steps) { + r.Steps = append(r.Steps, steps1) + } else { + r.Steps[stepsCount].HideNextButton = steps1.HideNextButton + r.Steps[stepsCount].Name = steps1.Name + r.Steps[stepsCount].Schema = steps1.Schema + r.Steps[stepsCount].ShowStepName = steps1.ShowStepName + r.Steps[stepsCount].ShowStepper = steps1.ShowStepper + r.Steps[stepsCount].ShowStepperLabels = steps1.ShowStepperLabels + r.Steps[stepsCount].ShowStepSubtitle = steps1.ShowStepSubtitle + r.Steps[stepsCount].StepID = steps1.StepID + r.Steps[stepsCount].SubTitle = steps1.SubTitle + r.Steps[stepsCount].Title = steps1.Title + r.Steps[stepsCount].Uischema = steps1.Uischema + } } } } diff --git a/internal/provider/journey_resource.go b/internal/provider/journey_resource.go index a280f9a..175f797 100644 --- a/internal/provider/journey_resource.go +++ b/internal/provider/journey_resource.go @@ -1,12 +1,13 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package provider import ( "context" "fmt" + tfTypes "github.com/epilot-dev/terraform-provider-epilot-journey/internal/provider/types" "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/operations" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/operations" "github.com/epilot-dev/terraform-provider-epilot-journey/internal/validators" speakeasy_listvalidators "github.com/epilot-dev/terraform-provider-epilot-journey/internal/validators/listvalidators" speakeasy_stringvalidators "github.com/epilot-dev/terraform-provider-epilot-journey/internal/validators/stringvalidators" @@ -35,14 +36,15 @@ type JourneyResource struct { // JourneyResourceModel describes the resource data model. type JourneyResourceModel struct { - BrandID types.String `tfsdk:"brand_id"` - Design *JourneyCreationRequestV2Design `tfsdk:"design"` - JourneyID types.String `tfsdk:"journey_id"` - Logics []JourneyCreationRequestV2Logics `tfsdk:"logics"` - Name types.String `tfsdk:"name"` - Rules []JourneyCreationRequestV2Rules `tfsdk:"rules"` - Settings *JourneyCreationRequestV2Settings `tfsdk:"settings"` - Steps []JourneyCreationRequestV2Steps `tfsdk:"steps"` + BrandID types.String `tfsdk:"brand_id"` + ContextSchema []tfTypes.JourneyCreationRequestV2ContextSchema `tfsdk:"context_schema"` + Design *tfTypes.JourneyCreationRequestV2Design `tfsdk:"design"` + JourneyID types.String `tfsdk:"journey_id"` + Logics []tfTypes.JourneyCreationRequestV2Logics `tfsdk:"logics"` + Name types.String `tfsdk:"name"` + Rules []tfTypes.JourneyCreationRequestV2Rules `tfsdk:"rules"` + Settings *tfTypes.JourneyCreationRequestV2Settings `tfsdk:"settings"` + Steps []tfTypes.JourneyCreationRequestV2Steps `tfsdk:"steps"` } func (r *JourneyResource) Metadata(ctx context.Context, req resource.MetadataRequest, resp *resource.MetadataResponse) { @@ -52,12 +54,39 @@ func (r *JourneyResource) Metadata(ctx context.Context, req resource.MetadataReq func (r *JourneyResource) Schema(ctx context.Context, req resource.SchemaRequest, resp *resource.SchemaResponse) { resp.Schema = schema.Schema{ MarkdownDescription: "Journey Resource", - Attributes: map[string]schema.Attribute{ "brand_id": schema.StringAttribute{ Computed: true, Optional: true, }, + "context_schema": schema.ListNestedAttribute{ + Computed: true, + Optional: true, + NestedObject: schema.NestedAttributeObject{ + Attributes: map[string]schema.Attribute{ + "is_required": schema.BoolAttribute{ + Computed: true, + Optional: true, + }, + "param_key": schema.StringAttribute{ + Computed: true, + Optional: true, + Description: `Not Null`, + Validators: []validator.String{ + speakeasy_stringvalidators.NotNull(), + }, + }, + "type": schema.StringAttribute{ + Computed: true, + Optional: true, + Description: `Not Null`, + Validators: []validator.String{ + speakeasy_stringvalidators.NotNull(), + }, + }, + }, + }, + }, "design": schema.SingleNestedAttribute{ Computed: true, Optional: true, @@ -77,9 +106,8 @@ func (r *JourneyResource) Schema(ctx context.Context, req resource.SchemaRequest }, }, "journey_id": schema.StringAttribute{ - Computed: true, - Optional: true, - Description: `Journey ID`, + Computed: true, + Optional: true, }, "logics": schema.ListNestedAttribute{ Computed: true, @@ -242,6 +270,10 @@ func (r *JourneyResource) Schema(ctx context.Context, req resource.SchemaRequest }, }, }, + "entity_id": schema.StringAttribute{ + Computed: true, + Optional: true, + }, "entity_tags": schema.ListAttribute{ Computed: true, Optional: true, @@ -399,8 +431,8 @@ func (r *JourneyResource) Create(ctx context.Context, req resource.CreateRequest resp.Diagnostics.AddError(fmt.Sprintf("unexpected response from API. Got an unexpected response code %v", res.StatusCode), debugResponse(res.RawResponse)) return } - if res.JourneyCreationRequestV2 == nil { - resp.Diagnostics.AddError("unexpected response from API. No response body", debugResponse(res.RawResponse)) + if !(res.JourneyCreationRequestV2 != nil) { + resp.Diagnostics.AddError("unexpected response from API. Got an unexpected response body", debugResponse(res.RawResponse)) return } data.RefreshFromSharedJourneyCreationRequestV2(res.JourneyCreationRequestV2) @@ -444,12 +476,16 @@ func (r *JourneyResource) Read(ctx context.Context, req resource.ReadRequest, re resp.Diagnostics.AddError("unexpected response from API", fmt.Sprintf("%v", res)) return } + if res.StatusCode == 404 { + resp.State.RemoveResource(ctx) + return + } if res.StatusCode != 200 { resp.Diagnostics.AddError(fmt.Sprintf("unexpected response from API. Got an unexpected response code %v", res.StatusCode), debugResponse(res.RawResponse)) return } - if res.JourneyCreationRequestV2 == nil { - resp.Diagnostics.AddError("unexpected response from API. No response body", debugResponse(res.RawResponse)) + if !(res.JourneyCreationRequestV2 != nil) { + resp.Diagnostics.AddError("unexpected response from API. Got an unexpected response body", debugResponse(res.RawResponse)) return } data.RefreshFromSharedJourneyCreationRequestV2(res.JourneyCreationRequestV2) @@ -489,8 +525,8 @@ func (r *JourneyResource) Update(ctx context.Context, req resource.UpdateRequest resp.Diagnostics.AddError(fmt.Sprintf("unexpected response from API. Got an unexpected response code %v", res.StatusCode), debugResponse(res.RawResponse)) return } - if res.JourneyCreationRequestV2 == nil { - resp.Diagnostics.AddError("unexpected response from API. No response body", debugResponse(res.RawResponse)) + if !(res.JourneyCreationRequestV2 != nil) { + resp.Diagnostics.AddError("unexpected response from API. Got an unexpected response body", debugResponse(res.RawResponse)) return } data.RefreshFromSharedJourneyCreationRequestV2(res.JourneyCreationRequestV2) diff --git a/internal/provider/journey_resource_sdk.go b/internal/provider/journey_resource_sdk.go index 1caa9ff..56ad3ca 100644 --- a/internal/provider/journey_resource_sdk.go +++ b/internal/provider/journey_resource_sdk.go @@ -1,10 +1,11 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package provider import ( "encoding/json" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + tfTypes "github.com/epilot-dev/terraform-provider-epilot-journey/internal/provider/types" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "github.com/hashicorp/terraform-plugin-framework/types" ) @@ -15,6 +16,22 @@ func (r *JourneyResourceModel) ToSharedJourneyCreationRequestV2() *shared.Journe } else { brandID = nil } + var contextSchema []shared.JourneyCreationRequestV2ContextSchema = []shared.JourneyCreationRequestV2ContextSchema{} + for _, contextSchemaItem := range r.ContextSchema { + isRequired := new(bool) + if !contextSchemaItem.IsRequired.IsUnknown() && !contextSchemaItem.IsRequired.IsNull() { + *isRequired = contextSchemaItem.IsRequired.ValueBool() + } else { + isRequired = nil + } + paramKey := contextSchemaItem.ParamKey.ValueString() + typeVar := contextSchemaItem.Type.ValueString() + contextSchema = append(contextSchema, shared.JourneyCreationRequestV2ContextSchema{ + IsRequired: isRequired, + ParamKey: paramKey, + Type: typeVar, + }) + } var design *shared.JourneyCreationRequestV2Design if r.Design != nil { logoURL := new(string) @@ -40,9 +57,9 @@ func (r *JourneyResourceModel) ToSharedJourneyCreationRequestV2() *shared.Journe } else { journeyID = nil } - var logics []shared.JourneyCreationRequestV2Logics = nil + var logics []shared.JourneyCreationRequestV2Logics = []shared.JourneyCreationRequestV2Logics{} for _, logicsItem := range r.Logics { - var actions []string = nil + var actions []string = []string{} for _, actionsItem := range logicsItem.Actions { actions = append(actions, actionsItem.ValueString()) } @@ -52,7 +69,7 @@ func (r *JourneyResourceModel) ToSharedJourneyCreationRequestV2() *shared.Journe } else { autoGeneratedID = nil } - var conditions []string = nil + var conditions []string = []string{} for _, conditionsItem := range logicsItem.Conditions { conditions = append(conditions, conditionsItem.ValueString()) } @@ -63,17 +80,17 @@ func (r *JourneyResourceModel) ToSharedJourneyCreationRequestV2() *shared.Journe }) } name := r.Name.ValueString() - var rules []shared.JourneyCreationRequestV2Rules = nil + var rules []shared.JourneyCreationRequestV2Rules = []shared.JourneyCreationRequestV2Rules{} for _, rulesItem := range r.Rules { source := rulesItem.Source.ValueString() sourceType := shared.JourneyCreationRequestV2SourceType(rulesItem.SourceType.ValueString()) target := rulesItem.Target.ValueString() - typeVar := shared.JourneyCreationRequestV2Type(rulesItem.Type.ValueString()) + type1 := shared.JourneyCreationRequestV2Type(rulesItem.Type.ValueString()) rules = append(rules, shared.JourneyCreationRequestV2Rules{ Source: source, SourceType: sourceType, Target: target, - Type: typeVar, + Type: type1, }) } var settings *shared.JourneyCreationRequestV2Settings @@ -156,11 +173,17 @@ func (r *JourneyResourceModel) ToSharedJourneyCreationRequestV2() *shared.Journe Width: width, } } - var entityTags []string = nil + entityID := new(string) + if !r.Settings.EntityID.IsUnknown() && !r.Settings.EntityID.IsNull() { + *entityID = r.Settings.EntityID.ValueString() + } else { + entityID = nil + } + var entityTags []string = []string{} for _, entityTagsItem := range r.Settings.EntityTags { entityTags = append(entityTags, entityTagsItem.ValueString()) } - var filePurposes []string = nil + var filePurposes []string = []string{} for _, filePurposesItem := range r.Settings.FilePurposes { filePurposes = append(filePurposes, filePurposesItem.ValueString()) } @@ -170,7 +193,7 @@ func (r *JourneyResourceModel) ToSharedJourneyCreationRequestV2() *shared.Journe } else { mappingsAutomationID = nil } - var runtimeEntities []shared.JourneyCreationRequestV2RuntimeEntities = nil + var runtimeEntities []shared.JourneyCreationRequestV2RuntimeEntities = []shared.JourneyCreationRequestV2RuntimeEntities{} for _, runtimeEntitiesItem := range r.Settings.RuntimeEntities { runtimeEntities = append(runtimeEntities, shared.JourneyCreationRequestV2RuntimeEntities(runtimeEntitiesItem.ValueString())) } @@ -197,6 +220,7 @@ func (r *JourneyResourceModel) ToSharedJourneyCreationRequestV2() *shared.Journe Description: description, DesignID: designID, EmbedOptions: embedOptions, + EntityID: entityID, EntityTags: entityTags, FilePurposes: filePurposes, MappingsAutomationID: mappingsAutomationID, @@ -206,7 +230,7 @@ func (r *JourneyResourceModel) ToSharedJourneyCreationRequestV2() *shared.Journe TemplateID: templateID, } } - var steps []shared.JourneyCreationRequestV2Steps = nil + var steps []shared.JourneyCreationRequestV2Steps = []shared.JourneyCreationRequestV2Steps{} for _, stepsItem := range r.Steps { hideNextButton := new(bool) if !stepsItem.HideNextButton.IsUnknown() && !stepsItem.HideNextButton.IsNull() { @@ -276,160 +300,184 @@ func (r *JourneyResourceModel) ToSharedJourneyCreationRequestV2() *shared.Journe }) } out := shared.JourneyCreationRequestV2{ - BrandID: brandID, - Design: design, - JourneyID: journeyID, - Logics: logics, - Name: name, - Rules: rules, - Settings: settings, - Steps: steps, + BrandID: brandID, + ContextSchema: contextSchema, + Design: design, + JourneyID: journeyID, + Logics: logics, + Name: name, + Rules: rules, + Settings: settings, + Steps: steps, } return &out } func (r *JourneyResourceModel) RefreshFromSharedJourneyCreationRequestV2(resp *shared.JourneyCreationRequestV2) { - r.BrandID = types.StringPointerValue(resp.BrandID) - if resp.Design == nil { - r.Design = nil - } else { - r.Design = &JourneyCreationRequestV2Design{} - r.Design.LogoURL = types.StringPointerValue(resp.Design.LogoURL) - if len(resp.Design.Theme) > 0 { - r.Design.Theme = make(map[string]types.String) - for key, value := range resp.Design.Theme { - result, _ := json.Marshal(value) - r.Design.Theme[key] = types.StringValue(string(result)) + if resp != nil { + r.BrandID = types.StringPointerValue(resp.BrandID) + r.ContextSchema = []tfTypes.JourneyCreationRequestV2ContextSchema{} + if len(r.ContextSchema) > len(resp.ContextSchema) { + r.ContextSchema = r.ContextSchema[:len(resp.ContextSchema)] + } + for contextSchemaCount, contextSchemaItem := range resp.ContextSchema { + var contextSchema1 tfTypes.JourneyCreationRequestV2ContextSchema + contextSchema1.IsRequired = types.BoolPointerValue(contextSchemaItem.IsRequired) + contextSchema1.ParamKey = types.StringValue(contextSchemaItem.ParamKey) + contextSchema1.Type = types.StringValue(contextSchemaItem.Type) + if contextSchemaCount+1 > len(r.ContextSchema) { + r.ContextSchema = append(r.ContextSchema, contextSchema1) + } else { + r.ContextSchema[contextSchemaCount].IsRequired = contextSchema1.IsRequired + r.ContextSchema[contextSchemaCount].ParamKey = contextSchema1.ParamKey + r.ContextSchema[contextSchemaCount].Type = contextSchema1.Type } } - } - r.JourneyID = types.StringPointerValue(resp.JourneyID) - if len(r.Logics) > len(resp.Logics) { - r.Logics = r.Logics[:len(resp.Logics)] - } - for logicsCount, logicsItem := range resp.Logics { - var logics1 JourneyCreationRequestV2Logics - logics1.Actions = nil - for _, v := range logicsItem.Actions { - logics1.Actions = append(logics1.Actions, types.StringValue(v)) - } - logics1.AutoGeneratedID = types.StringPointerValue(logicsItem.AutoGeneratedID) - logics1.Conditions = nil - for _, v := range logicsItem.Conditions { - logics1.Conditions = append(logics1.Conditions, types.StringValue(v)) - } - if logicsCount+1 > len(r.Logics) { - r.Logics = append(r.Logics, logics1) + if resp.Design == nil { + r.Design = nil } else { - r.Logics[logicsCount].Actions = logics1.Actions - r.Logics[logicsCount].AutoGeneratedID = logics1.AutoGeneratedID - r.Logics[logicsCount].Conditions = logics1.Conditions + r.Design = &tfTypes.JourneyCreationRequestV2Design{} + r.Design.LogoURL = types.StringPointerValue(resp.Design.LogoURL) + if len(resp.Design.Theme) > 0 { + r.Design.Theme = make(map[string]types.String) + for key, value := range resp.Design.Theme { + result, _ := json.Marshal(value) + r.Design.Theme[key] = types.StringValue(string(result)) + } + } } - } - r.Name = types.StringValue(resp.Name) - if len(r.Rules) > len(resp.Rules) { - r.Rules = r.Rules[:len(resp.Rules)] - } - for rulesCount, rulesItem := range resp.Rules { - var rules1 JourneyCreationRequestV2Rules - rules1.Source = types.StringValue(rulesItem.Source) - rules1.SourceType = types.StringValue(string(rulesItem.SourceType)) - rules1.Target = types.StringValue(rulesItem.Target) - rules1.Type = types.StringValue(string(rulesItem.Type)) - if rulesCount+1 > len(r.Rules) { - r.Rules = append(r.Rules, rules1) - } else { - r.Rules[rulesCount].Source = rules1.Source - r.Rules[rulesCount].SourceType = rules1.SourceType - r.Rules[rulesCount].Target = rules1.Target - r.Rules[rulesCount].Type = rules1.Type + r.JourneyID = types.StringPointerValue(resp.JourneyID) + r.Logics = []tfTypes.JourneyCreationRequestV2Logics{} + if len(r.Logics) > len(resp.Logics) { + r.Logics = r.Logics[:len(resp.Logics)] } - } - if resp.Settings == nil { - r.Settings = nil - } else { - r.Settings = &JourneyCreationRequestV2Settings{} - r.Settings.AddressSuggestionsFileURL = types.StringPointerValue(resp.Settings.AddressSuggestionsFileURL) - r.Settings.Description = types.StringPointerValue(resp.Settings.Description) - r.Settings.DesignID = types.StringPointerValue(resp.Settings.DesignID) - if resp.Settings.EmbedOptions == nil { - r.Settings.EmbedOptions = nil + for logicsCount, logicsItem := range resp.Logics { + var logics1 tfTypes.JourneyCreationRequestV2Logics + logics1.Actions = []types.String{} + for _, v := range logicsItem.Actions { + logics1.Actions = append(logics1.Actions, types.StringValue(v)) + } + logics1.AutoGeneratedID = types.StringPointerValue(logicsItem.AutoGeneratedID) + logics1.Conditions = []types.String{} + for _, v := range logicsItem.Conditions { + logics1.Conditions = append(logics1.Conditions, types.StringValue(v)) + } + if logicsCount+1 > len(r.Logics) { + r.Logics = append(r.Logics, logics1) + } else { + r.Logics[logicsCount].Actions = logics1.Actions + r.Logics[logicsCount].AutoGeneratedID = logics1.AutoGeneratedID + r.Logics[logicsCount].Conditions = logics1.Conditions + } + } + r.Name = types.StringValue(resp.Name) + r.Rules = []tfTypes.JourneyCreationRequestV2Rules{} + if len(r.Rules) > len(resp.Rules) { + r.Rules = r.Rules[:len(resp.Rules)] + } + for rulesCount, rulesItem := range resp.Rules { + var rules1 tfTypes.JourneyCreationRequestV2Rules + rules1.Source = types.StringValue(rulesItem.Source) + rules1.SourceType = types.StringValue(string(rulesItem.SourceType)) + rules1.Target = types.StringValue(rulesItem.Target) + rules1.Type = types.StringValue(string(rulesItem.Type)) + if rulesCount+1 > len(r.Rules) { + r.Rules = append(r.Rules, rules1) + } else { + r.Rules[rulesCount].Source = rules1.Source + r.Rules[rulesCount].SourceType = rules1.SourceType + r.Rules[rulesCount].Target = rules1.Target + r.Rules[rulesCount].Type = rules1.Type + } + } + if resp.Settings == nil { + r.Settings = nil } else { - r.Settings.EmbedOptions = &JourneyCreationRequestV2EmbedOptions{} - if resp.Settings.EmbedOptions.Button == nil { - r.Settings.EmbedOptions.Button = nil + r.Settings = &tfTypes.JourneyCreationRequestV2Settings{} + r.Settings.AddressSuggestionsFileURL = types.StringPointerValue(resp.Settings.AddressSuggestionsFileURL) + r.Settings.Description = types.StringPointerValue(resp.Settings.Description) + r.Settings.DesignID = types.StringPointerValue(resp.Settings.DesignID) + if resp.Settings.EmbedOptions == nil { + r.Settings.EmbedOptions = nil } else { - r.Settings.EmbedOptions.Button = &JourneyCreationRequestV2Button{} - if resp.Settings.EmbedOptions.Button.Align != nil { - r.Settings.EmbedOptions.Button.Align = types.StringValue(string(*resp.Settings.EmbedOptions.Button.Align)) + r.Settings.EmbedOptions = &tfTypes.JourneyCreationRequestV2EmbedOptions{} + if resp.Settings.EmbedOptions.Button == nil { + r.Settings.EmbedOptions.Button = nil + } else { + r.Settings.EmbedOptions.Button = &tfTypes.JourneyCreationRequestV2Button{} + if resp.Settings.EmbedOptions.Button.Align != nil { + r.Settings.EmbedOptions.Button.Align = types.StringValue(string(*resp.Settings.EmbedOptions.Button.Align)) + } else { + r.Settings.EmbedOptions.Button.Align = types.StringNull() + } + r.Settings.EmbedOptions.Button.Text = types.StringPointerValue(resp.Settings.EmbedOptions.Button.Text) + } + if resp.Settings.EmbedOptions.Lang != nil { + r.Settings.EmbedOptions.Lang = types.StringValue(string(*resp.Settings.EmbedOptions.Lang)) + } else { + r.Settings.EmbedOptions.Lang = types.StringNull() + } + if resp.Settings.EmbedOptions.Mode != nil { + r.Settings.EmbedOptions.Mode = types.StringValue(string(*resp.Settings.EmbedOptions.Mode)) } else { - r.Settings.EmbedOptions.Button.Align = types.StringNull() + r.Settings.EmbedOptions.Mode = types.StringNull() } - r.Settings.EmbedOptions.Button.Text = types.StringPointerValue(resp.Settings.EmbedOptions.Button.Text) + r.Settings.EmbedOptions.ScrollToTop = types.BoolPointerValue(resp.Settings.EmbedOptions.ScrollToTop) + r.Settings.EmbedOptions.TopBar = types.BoolPointerValue(resp.Settings.EmbedOptions.TopBar) + r.Settings.EmbedOptions.Width = types.StringPointerValue(resp.Settings.EmbedOptions.Width) } - if resp.Settings.EmbedOptions.Lang != nil { - r.Settings.EmbedOptions.Lang = types.StringValue(string(*resp.Settings.EmbedOptions.Lang)) - } else { - r.Settings.EmbedOptions.Lang = types.StringNull() + r.Settings.EntityID = types.StringPointerValue(resp.Settings.EntityID) + r.Settings.EntityTags = []types.String{} + for _, v := range resp.Settings.EntityTags { + r.Settings.EntityTags = append(r.Settings.EntityTags, types.StringValue(v)) + } + r.Settings.FilePurposes = []types.String{} + for _, v := range resp.Settings.FilePurposes { + r.Settings.FilePurposes = append(r.Settings.FilePurposes, types.StringValue(v)) } - if resp.Settings.EmbedOptions.Mode != nil { - r.Settings.EmbedOptions.Mode = types.StringValue(string(*resp.Settings.EmbedOptions.Mode)) + r.Settings.MappingsAutomationID = types.StringPointerValue(resp.Settings.MappingsAutomationID) + r.Settings.RuntimeEntities = []types.String{} + for _, v := range resp.Settings.RuntimeEntities { + r.Settings.RuntimeEntities = append(r.Settings.RuntimeEntities, types.StringValue(string(v))) + } + r.Settings.SafeModeAutomation = types.BoolPointerValue(resp.Settings.SafeModeAutomation) + r.Settings.TargetedCustomer = types.StringPointerValue(resp.Settings.TargetedCustomer) + r.Settings.TemplateID = types.StringPointerValue(resp.Settings.TemplateID) + } + r.Steps = []tfTypes.JourneyCreationRequestV2Steps{} + if len(r.Steps) > len(resp.Steps) { + r.Steps = r.Steps[:len(resp.Steps)] + } + for stepsCount, stepsItem := range resp.Steps { + var steps1 tfTypes.JourneyCreationRequestV2Steps + steps1.HideNextButton = types.BoolPointerValue(stepsItem.HideNextButton) + steps1.Name = types.StringValue(stepsItem.Name) + schemaResult, _ := json.Marshal(stepsItem.Schema) + steps1.Schema = types.StringValue(string(schemaResult)) + steps1.ShowStepName = types.BoolPointerValue(stepsItem.ShowStepName) + steps1.ShowStepper = types.BoolPointerValue(stepsItem.ShowStepper) + steps1.ShowStepperLabels = types.BoolPointerValue(stepsItem.ShowStepperLabels) + steps1.ShowStepSubtitle = types.BoolPointerValue(stepsItem.ShowStepSubtitle) + steps1.StepID = types.StringPointerValue(stepsItem.StepID) + steps1.SubTitle = types.StringPointerValue(stepsItem.SubTitle) + steps1.Title = types.StringPointerValue(stepsItem.Title) + uischemaResult, _ := json.Marshal(stepsItem.Uischema) + steps1.Uischema = types.StringValue(string(uischemaResult)) + if stepsCount+1 > len(r.Steps) { + r.Steps = append(r.Steps, steps1) } else { - r.Settings.EmbedOptions.Mode = types.StringNull() + r.Steps[stepsCount].HideNextButton = steps1.HideNextButton + r.Steps[stepsCount].Name = steps1.Name + r.Steps[stepsCount].Schema = steps1.Schema + r.Steps[stepsCount].ShowStepName = steps1.ShowStepName + r.Steps[stepsCount].ShowStepper = steps1.ShowStepper + r.Steps[stepsCount].ShowStepperLabels = steps1.ShowStepperLabels + r.Steps[stepsCount].ShowStepSubtitle = steps1.ShowStepSubtitle + r.Steps[stepsCount].StepID = steps1.StepID + r.Steps[stepsCount].SubTitle = steps1.SubTitle + r.Steps[stepsCount].Title = steps1.Title + r.Steps[stepsCount].Uischema = steps1.Uischema } - r.Settings.EmbedOptions.ScrollToTop = types.BoolPointerValue(resp.Settings.EmbedOptions.ScrollToTop) - r.Settings.EmbedOptions.TopBar = types.BoolPointerValue(resp.Settings.EmbedOptions.TopBar) - r.Settings.EmbedOptions.Width = types.StringPointerValue(resp.Settings.EmbedOptions.Width) - } - r.Settings.EntityTags = nil - for _, v := range resp.Settings.EntityTags { - r.Settings.EntityTags = append(r.Settings.EntityTags, types.StringValue(v)) - } - r.Settings.FilePurposes = nil - for _, v := range resp.Settings.FilePurposes { - r.Settings.FilePurposes = append(r.Settings.FilePurposes, types.StringValue(v)) - } - r.Settings.MappingsAutomationID = types.StringPointerValue(resp.Settings.MappingsAutomationID) - r.Settings.RuntimeEntities = nil - for _, v := range resp.Settings.RuntimeEntities { - r.Settings.RuntimeEntities = append(r.Settings.RuntimeEntities, types.StringValue(string(v))) - } - r.Settings.SafeModeAutomation = types.BoolPointerValue(resp.Settings.SafeModeAutomation) - r.Settings.TargetedCustomer = types.StringPointerValue(resp.Settings.TargetedCustomer) - r.Settings.TemplateID = types.StringPointerValue(resp.Settings.TemplateID) - } - if len(r.Steps) > len(resp.Steps) { - r.Steps = r.Steps[:len(resp.Steps)] - } - for stepsCount, stepsItem := range resp.Steps { - var steps1 JourneyCreationRequestV2Steps - steps1.HideNextButton = types.BoolPointerValue(stepsItem.HideNextButton) - steps1.Name = types.StringValue(stepsItem.Name) - schemaResult, _ := json.Marshal(stepsItem.Schema) - steps1.Schema = types.StringValue(string(schemaResult)) - steps1.ShowStepName = types.BoolPointerValue(stepsItem.ShowStepName) - steps1.ShowStepper = types.BoolPointerValue(stepsItem.ShowStepper) - steps1.ShowStepperLabels = types.BoolPointerValue(stepsItem.ShowStepperLabels) - steps1.ShowStepSubtitle = types.BoolPointerValue(stepsItem.ShowStepSubtitle) - steps1.StepID = types.StringPointerValue(stepsItem.StepID) - steps1.SubTitle = types.StringPointerValue(stepsItem.SubTitle) - steps1.Title = types.StringPointerValue(stepsItem.Title) - uischemaResult, _ := json.Marshal(stepsItem.Uischema) - steps1.Uischema = types.StringValue(string(uischemaResult)) - if stepsCount+1 > len(r.Steps) { - r.Steps = append(r.Steps, steps1) - } else { - r.Steps[stepsCount].HideNextButton = steps1.HideNextButton - r.Steps[stepsCount].Name = steps1.Name - r.Steps[stepsCount].Schema = steps1.Schema - r.Steps[stepsCount].ShowStepName = steps1.ShowStepName - r.Steps[stepsCount].ShowStepper = steps1.ShowStepper - r.Steps[stepsCount].ShowStepperLabels = steps1.ShowStepperLabels - r.Steps[stepsCount].ShowStepSubtitle = steps1.ShowStepSubtitle - r.Steps[stepsCount].StepID = steps1.StepID - r.Steps[stepsCount].SubTitle = steps1.SubTitle - r.Steps[stepsCount].Title = steps1.Title - r.Steps[stepsCount].Uischema = steps1.Uischema } } } diff --git a/internal/provider/provider.go b/internal/provider/provider.go index e9fcbf1..95e9ec7 100644 --- a/internal/provider/provider.go +++ b/internal/provider/provider.go @@ -1,16 +1,17 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package provider import ( "context" "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "github.com/hashicorp/terraform-plugin-framework/datasource" "github.com/hashicorp/terraform-plugin-framework/provider" "github.com/hashicorp/terraform-plugin-framework/provider/schema" "github.com/hashicorp/terraform-plugin-framework/resource" "github.com/hashicorp/terraform-plugin-framework/types" + "net/http" ) var _ provider.Provider = &EpilotJourneyProvider{} @@ -73,6 +74,7 @@ func (p *EpilotJourneyProvider) Configure(ctx context.Context, req provider.Conf opts := []sdk.SDKOption{ sdk.WithServerURL(ServerURL), sdk.WithSecurity(security), + sdk.WithClient(http.DefaultClient), } client := sdk.New(opts...) diff --git a/internal/provider/reflect/diags.go b/internal/provider/reflect/diags.go index a91bba9..ce8aa51 100644 --- a/internal/provider/reflect/diags.go +++ b/internal/provider/reflect/diags.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/doc.go b/internal/provider/reflect/doc.go index ec91111..2978edc 100644 --- a/internal/provider/reflect/doc.go +++ b/internal/provider/reflect/doc.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. // Package reflect is a forked version of https://github.com/hashicorp/terraform-plugin-framework/tree/main/internal/reflect // that has been modified to support speakeasy's terraform generator. diff --git a/internal/provider/reflect/generic_attr_value.go b/internal/provider/reflect/generic_attr_value.go index 430ce2f..39454f5 100644 --- a/internal/provider/reflect/generic_attr_value.go +++ b/internal/provider/reflect/generic_attr_value.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/helpers.go b/internal/provider/reflect/helpers.go index 82b9515..398049d 100644 --- a/internal/provider/reflect/helpers.go +++ b/internal/provider/reflect/helpers.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect @@ -46,7 +46,7 @@ func commaSeparatedString(in []string) string { // getStructTags returns a map of Terraform field names to their position in // the tags of the struct `in`. `in` must be a struct. -func getStructTags(_ context.Context, in reflect.Value, path path.Path) (map[string]int, error) { +func getStructTags(_ context.Context, in reflect.Value, path path.Path, opts Options) (map[string]int, error) { tags := map[string]int{} typ := trueReflectValue(in).Type() if typ.Kind() != reflect.Struct { diff --git a/internal/provider/reflect/interfaces.go b/internal/provider/reflect/interfaces.go index 364ff86..f5bd513 100644 --- a/internal/provider/reflect/interfaces.go +++ b/internal/provider/reflect/interfaces.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/into.go b/internal/provider/reflect/into.go index c53d1be..45b15ef 100644 --- a/internal/provider/reflect/into.go +++ b/internal/provider/reflect/into.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/map.go b/internal/provider/reflect/map.go index 3310d42..affbabe 100644 --- a/internal/provider/reflect/map.go +++ b/internal/provider/reflect/map.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/number.go b/internal/provider/reflect/number.go index 37eef21..e0021c3 100644 --- a/internal/provider/reflect/number.go +++ b/internal/provider/reflect/number.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/options.go b/internal/provider/reflect/options.go index 490c5f1..c6d7b44 100644 --- a/internal/provider/reflect/options.go +++ b/internal/provider/reflect/options.go @@ -1,7 +1,12 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect +const ( + SourceTypeState = iota + SourceTypePlan +) + // Options provides configuration settings for how the reflection behavior // works, letting callers tweak different behaviors based on their needs. type Options struct { @@ -19,4 +24,8 @@ type Options struct { // perfectly in the types they're being stored in, rather than // returning errors. Numbers will always be rounded towards 0. AllowRoundingNumbers bool + // SourceType informs the reflection system what the source is + // such that it can make decisions based on the tfPlanOnly annotation + // The default is SourceTypeState + SourceType int } diff --git a/internal/provider/reflect/outof.go b/internal/provider/reflect/outof.go index 7852781..4fc5d24 100644 --- a/internal/provider/reflect/outof.go +++ b/internal/provider/reflect/outof.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/pointer.go b/internal/provider/reflect/pointer.go index e02c9eb..0ac5ebb 100644 --- a/internal/provider/reflect/pointer.go +++ b/internal/provider/reflect/pointer.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/primitive.go b/internal/provider/reflect/primitive.go index 3113c39..fc6b0e6 100644 --- a/internal/provider/reflect/primitive.go +++ b/internal/provider/reflect/primitive.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/slice.go b/internal/provider/reflect/slice.go index b91f729..7eea860 100644 --- a/internal/provider/reflect/slice.go +++ b/internal/provider/reflect/slice.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect diff --git a/internal/provider/reflect/struct.go b/internal/provider/reflect/struct.go index b670228..01ceb7b 100644 --- a/internal/provider/reflect/struct.go +++ b/internal/provider/reflect/struct.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package reflect @@ -73,7 +73,7 @@ func Struct(ctx context.Context, typ attr.Type, object tftypes.Value, target ref // collect a map of fields that are defined in the tags of the struct // passed in - targetFields, err := getStructTags(ctx, target, path) + targetFields, err := getStructTags(ctx, target, path, opts) if err != nil { diags.Append(diag.WithPath(path, DiagIntoIncompatibleType{ Val: object, @@ -125,7 +125,8 @@ func Struct(ctx context.Context, typ attr.Type, object tftypes.Value, target ref } else { result = reflect.New(target.Type()).Elem() } - // Fork End + structType := trueReflectValue(target).Type() + for field, structFieldPos := range targetFields { attrType, ok := attrTypes[field] if !ok { @@ -136,6 +137,13 @@ func Struct(ctx context.Context, typ attr.Type, object tftypes.Value, target ref })) return target, diags } + + fieldReflected := structType.Field(structFieldPos) + if opts.SourceType == SourceTypeState && fieldReflected.Tag.Get(`tfPlanOnly`) == "true" { + // skip explicitly excluded fields + continue + } + // Fork End structField := result.Field(structFieldPos) fieldVal, fieldValDiags := BuildValue(ctx, attrType, objectFields[field], structField, opts, path.AtName(field)) diags.Append(fieldValDiags...) @@ -162,7 +170,7 @@ func FromStruct(ctx context.Context, typ attr.TypeWithAttributeTypes, val reflec // collect a map of fields that are defined in the tags of the struct // passed in - targetFields, err := getStructTags(ctx, val, path) + targetFields, err := getStructTags(ctx, val, path, Options{}) if err != nil { err = fmt.Errorf("error retrieving field names from struct tags: %w", err) diags.AddAttributeError( diff --git a/internal/provider/type_journey_creation_request_v2_button.go b/internal/provider/types/journey_creation_request_v2_button.go similarity index 70% rename from internal/provider/type_journey_creation_request_v2_button.go rename to internal/provider/types/journey_creation_request_v2_button.go index e763cce..7a69772 100644 --- a/internal/provider/type_journey_creation_request_v2_button.go +++ b/internal/provider/types/journey_creation_request_v2_button.go @@ -1,6 +1,6 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. -package provider +package types import "github.com/hashicorp/terraform-plugin-framework/types" diff --git a/internal/provider/types/journey_creation_request_v2_context_schema.go b/internal/provider/types/journey_creation_request_v2_context_schema.go new file mode 100644 index 0000000..5d6611a --- /dev/null +++ b/internal/provider/types/journey_creation_request_v2_context_schema.go @@ -0,0 +1,11 @@ +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. + +package types + +import "github.com/hashicorp/terraform-plugin-framework/types" + +type JourneyCreationRequestV2ContextSchema struct { + IsRequired types.Bool `tfsdk:"is_required"` + ParamKey types.String `tfsdk:"param_key"` + Type types.String `tfsdk:"type"` +} diff --git a/internal/provider/type_journey_creation_request_v2_design.go b/internal/provider/types/journey_creation_request_v2_design.go similarity index 73% rename from internal/provider/type_journey_creation_request_v2_design.go rename to internal/provider/types/journey_creation_request_v2_design.go index 54e82c3..12ac10f 100644 --- a/internal/provider/type_journey_creation_request_v2_design.go +++ b/internal/provider/types/journey_creation_request_v2_design.go @@ -1,6 +1,6 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. -package provider +package types import "github.com/hashicorp/terraform-plugin-framework/types" diff --git a/internal/provider/type_journey_creation_request_v2_embed_options.go b/internal/provider/types/journey_creation_request_v2_embed_options.go similarity index 86% rename from internal/provider/type_journey_creation_request_v2_embed_options.go rename to internal/provider/types/journey_creation_request_v2_embed_options.go index 6353bdf..5ab635c 100644 --- a/internal/provider/type_journey_creation_request_v2_embed_options.go +++ b/internal/provider/types/journey_creation_request_v2_embed_options.go @@ -1,6 +1,6 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. -package provider +package types import "github.com/hashicorp/terraform-plugin-framework/types" diff --git a/internal/provider/type_journey_creation_request_v2_logics.go b/internal/provider/types/journey_creation_request_v2_logics.go similarity index 77% rename from internal/provider/type_journey_creation_request_v2_logics.go rename to internal/provider/types/journey_creation_request_v2_logics.go index f88fb60..55bb9d6 100644 --- a/internal/provider/type_journey_creation_request_v2_logics.go +++ b/internal/provider/types/journey_creation_request_v2_logics.go @@ -1,6 +1,6 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. -package provider +package types import "github.com/hashicorp/terraform-plugin-framework/types" diff --git a/internal/provider/type_journey_creation_request_v2_rules.go b/internal/provider/types/journey_creation_request_v2_rules.go similarity index 78% rename from internal/provider/type_journey_creation_request_v2_rules.go rename to internal/provider/types/journey_creation_request_v2_rules.go index cae4b06..fe510fa 100644 --- a/internal/provider/type_journey_creation_request_v2_rules.go +++ b/internal/provider/types/journey_creation_request_v2_rules.go @@ -1,6 +1,6 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. -package provider +package types import "github.com/hashicorp/terraform-plugin-framework/types" diff --git a/internal/provider/type_journey_creation_request_v2_settings.go b/internal/provider/types/journey_creation_request_v2_settings.go similarity index 87% rename from internal/provider/type_journey_creation_request_v2_settings.go rename to internal/provider/types/journey_creation_request_v2_settings.go index f2c643b..5c5c5ab 100644 --- a/internal/provider/type_journey_creation_request_v2_settings.go +++ b/internal/provider/types/journey_creation_request_v2_settings.go @@ -1,6 +1,6 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. -package provider +package types import "github.com/hashicorp/terraform-plugin-framework/types" @@ -9,6 +9,7 @@ type JourneyCreationRequestV2Settings struct { Description types.String `tfsdk:"description"` DesignID types.String `tfsdk:"design_id"` EmbedOptions *JourneyCreationRequestV2EmbedOptions `tfsdk:"embed_options"` + EntityID types.String `tfsdk:"entity_id"` EntityTags []types.String `tfsdk:"entity_tags"` FilePurposes []types.String `tfsdk:"file_purposes"` MappingsAutomationID types.String `tfsdk:"mappings_automation_id"` diff --git a/internal/provider/type_journey_creation_request_v2_steps.go b/internal/provider/types/journey_creation_request_v2_steps.go similarity index 89% rename from internal/provider/type_journey_creation_request_v2_steps.go rename to internal/provider/types/journey_creation_request_v2_steps.go index f5952e6..dac8181 100644 --- a/internal/provider/type_journey_creation_request_v2_steps.go +++ b/internal/provider/types/journey_creation_request_v2_steps.go @@ -1,6 +1,6 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. -package provider +package types import "github.com/hashicorp/terraform-plugin-framework/types" diff --git a/internal/provider/utils.go b/internal/provider/utils.go index 6d6b609..d8f7878 100644 --- a/internal/provider/utils.go +++ b/internal/provider/utils.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package provider @@ -11,13 +11,15 @@ import ( "github.com/hashicorp/terraform-plugin-framework/path" "github.com/hashicorp/terraform-plugin-framework/resource" "github.com/hashicorp/terraform-plugin-framework/types" - "github.com/hashicorp/terraform-plugin-framework/types/basetypes" "net/http" "net/http/httputil" "reflect" ) func debugResponse(response *http.Response) string { + if v := response.Request.Header.Get("Authorization"); v != "" { + response.Request.Header.Set("Authorization", "(sensitive)") + } dumpReq, err := httputil.DumpRequest(response.Request, true) if err != nil { dumpReq, err = httputil.DumpRequest(response.Request, false) @@ -60,11 +62,15 @@ func merge(ctx context.Context, req resource.UpdateRequest, resp *resource.Updat if resp.Diagnostics.HasError() { return } - - resp.Diagnostics.Append(state.As(ctx, target, basetypes.ObjectAsOptions{ + val, err := state.ToTerraformValue(ctx) + if err != nil { + resp.Diagnostics.Append(diag.NewErrorDiagnostic("Object Conversion Error", "An unexpected error was encountered trying to convert object. This is always an error in the provider. Please report the following to the provider developer:\n\n"+err.Error())) + return + } + resp.Diagnostics.Append(tfReflect.Into(ctx, types.ObjectType{AttrTypes: state.AttributeTypes(ctx)}, val, target, tfReflect.Options{ UnhandledNullAsEmpty: true, UnhandledUnknownAsEmpty: true, - })...) + }, path.Empty())...) if resp.Diagnostics.HasError() { return } @@ -82,5 +88,6 @@ func refreshPlan(ctx context.Context, plan types.Object, target interface{}, dia diagnostics.Append(tfReflect.Into(ctx, obj, val, target, tfReflect.Options{ UnhandledNullAsEmpty: true, UnhandledUnknownAsEmpty: true, + SourceType: tfReflect.SourceTypePlan, }, path.Empty())...) } diff --git a/internal/sdk/.gitattributes b/internal/sdk/.gitattributes new file mode 100644 index 0000000..e6a9944 --- /dev/null +++ b/internal/sdk/.gitattributes @@ -0,0 +1,2 @@ +# This allows generated code to be indexed correctly +*.go linguist-generated=false \ No newline at end of file diff --git a/internal/sdk/.gitignore b/internal/sdk/.gitignore new file mode 100644 index 0000000..d3c2f59 --- /dev/null +++ b/internal/sdk/.gitignore @@ -0,0 +1 @@ +# .gitignore diff --git a/internal/sdk/CONTRIBUTING.md b/internal/sdk/CONTRIBUTING.md new file mode 100644 index 0000000..d585717 --- /dev/null +++ b/internal/sdk/CONTRIBUTING.md @@ -0,0 +1,26 @@ +# Contributing to This Repository + +Thank you for your interest in contributing to this repository. Please note that this repository contains generated code. As such, we do not accept direct changes or pull requests. Instead, we encourage you to follow the guidelines below to report issues and suggest improvements. + +## How to Report Issues + +If you encounter any bugs or have suggestions for improvements, please open an issue on GitHub. When reporting an issue, please provide as much detail as possible to help us reproduce the problem. This includes: + +- A clear and descriptive title +- Steps to reproduce the issue +- Expected and actual behavior +- Any relevant logs, screenshots, or error messages +- Information about your environment (e.g., operating system, software versions) + - For example can be collected using the `npx envinfo` command from your terminal if you have Node.js installed + +## Issue Triage and Upstream Fixes + +We will review and triage issues as quickly as possible. Our goal is to address bugs and incorporate improvements in the upstream source code. Fixes will be included in the next generation of the generated code. + +## Contact + +If you have any questions or need further assistance, please feel free to reach out by opening an issue. + +Thank you for your understanding and cooperation! + +The Maintainers diff --git a/internal/sdk/internal/hooks/hooks.go b/internal/sdk/internal/hooks/hooks.go new file mode 100644 index 0000000..b978f6b --- /dev/null +++ b/internal/sdk/internal/hooks/hooks.go @@ -0,0 +1,144 @@ +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. + +package hooks + +import ( + "context" + "errors" + "net/http" +) + +type FailEarly struct { + Cause error +} + +var _ error = (*FailEarly)(nil) + +func (f *FailEarly) Error() string { + return f.Cause.Error() +} + +// HTTPClient provides an interface for supplying the SDK with a custom HTTP client +type HTTPClient interface { + Do(req *http.Request) (*http.Response, error) +} + +type HookContext struct { + Context context.Context + OperationID string + OAuth2Scopes []string + SecuritySource func(context.Context) (interface{}, error) +} + +type BeforeRequestContext struct { + HookContext +} + +type AfterSuccessContext struct { + HookContext +} + +type AfterErrorContext struct { + HookContext +} + +// sdkInitHook is called when the SDK is initializing. The hook can modify and return a new baseURL and HTTP client to be used by the SDK. +type sdkInitHook interface { + SDKInit(baseURL string, client HTTPClient) (string, HTTPClient) +} + +// beforeRequestHook is called before the SDK sends a request. The hook can modify the request before it is sent or return an error to stop the request from being sent. +type beforeRequestHook interface { + BeforeRequest(hookCtx BeforeRequestContext, req *http.Request) (*http.Request, error) +} + +// afterSuccessHook is called after the SDK receives a response. The hook can modify the response before it is handled or return an error to stop the response from being handled. +type afterSuccessHook interface { + AfterSuccess(hookCtx AfterSuccessContext, res *http.Response) (*http.Response, error) +} + +// afterErrorHook is called after the SDK encounters an error, or a non-successful response. The hook can modify the response if available otherwise modify the error. +// All afterErrorHook hooks are called and returning an error won't stop the other hooks from being called. But if you want to stop the other hooks from being called, you can return a FailEarly error wrapping your error. +type afterErrorHook interface { + AfterError(hookCtx AfterErrorContext, res *http.Response, err error) (*http.Response, error) +} + +type Hooks struct { + sdkInitHooks []sdkInitHook + beforeRequestHook []beforeRequestHook + afterSuccessHook []afterSuccessHook + afterErrorHook []afterErrorHook +} + +func New() *Hooks { + h := &Hooks{ + sdkInitHooks: []sdkInitHook{}, + beforeRequestHook: []beforeRequestHook{}, + afterSuccessHook: []afterSuccessHook{}, + afterErrorHook: []afterErrorHook{}, + } + + initHooks(h) + + return h +} + +// registerSDKInitHook registers a hook to be used by the SDK for the initialization event. +func (h *Hooks) registerSDKInitHook(hook sdkInitHook) { + h.sdkInitHooks = append(h.sdkInitHooks, hook) +} + +// registerBeforeRequestHook registers a hook to be used by the SDK for the before request event. +func (h *Hooks) registerBeforeRequestHook(hook beforeRequestHook) { + h.beforeRequestHook = append(h.beforeRequestHook, hook) +} + +// registerAfterSuccessHook registers a hook to be used by the SDK for the after success event. +func (h *Hooks) registerAfterSuccessHook(hook afterSuccessHook) { + h.afterSuccessHook = append(h.afterSuccessHook, hook) +} + +// registerAfterErrorHook registers a hook to be used by the SDK for the after error event. +func (h *Hooks) registerAfterErrorHook(hook afterErrorHook) { + h.afterErrorHook = append(h.afterErrorHook, hook) +} + +func (h *Hooks) SDKInit(baseURL string, client HTTPClient) (string, HTTPClient) { + for _, hook := range h.sdkInitHooks { + baseURL, client = hook.SDKInit(baseURL, client) + } + return baseURL, client +} + +func (h *Hooks) BeforeRequest(hookCtx BeforeRequestContext, req *http.Request) (*http.Request, error) { + for _, hook := range h.beforeRequestHook { + var err error + req, err = hook.BeforeRequest(hookCtx, req) + if err != nil { + return req, err + } + } + return req, nil +} + +func (h *Hooks) AfterSuccess(hookCtx AfterSuccessContext, res *http.Response) (*http.Response, error) { + for _, hook := range h.afterSuccessHook { + var err error + res, err = hook.AfterSuccess(hookCtx, res) + if err != nil { + return res, err + } + } + return res, nil +} + +func (h *Hooks) AfterError(hookCtx AfterErrorContext, res *http.Response, err error) (*http.Response, error) { + for _, hook := range h.afterErrorHook { + res, err = hook.AfterError(hookCtx, res, err) + var fe *FailEarly + if errors.As(err, &fe) { + return nil, fe.Cause + } + } + return res, err +} diff --git a/internal/sdk/internal/hooks/registration.go b/internal/sdk/internal/hooks/registration.go new file mode 100644 index 0000000..99a3606 --- /dev/null +++ b/internal/sdk/internal/hooks/registration.go @@ -0,0 +1,15 @@ +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. + +package hooks + +/* + * This file is only ever generated once on the first generation and then is free to be modified. + * Any hooks you wish to add should be registered in the InitHooks function. Feel free to define them + * in this file or in separate files in the hooks package. + */ + +func initHooks(h *Hooks) { + // Add hooks by calling h.register{SDKInit/BeforeRequest/AfterSuccess/AfterError}Hook + // with an instance of a hook that implements that specific Hook interface + // Hooks are registered per SDK instance, and are valid for the lifetime of the SDK instance +} diff --git a/internal/sdk/pkg/utils/contenttype.go b/internal/sdk/internal/utils/contenttype.go similarity index 80% rename from internal/sdk/pkg/utils/contenttype.go rename to internal/sdk/internal/utils/contenttype.go index 8ed13e2..81e669d 100644 --- a/internal/sdk/pkg/utils/contenttype.go +++ b/internal/sdk/internal/utils/contenttype.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils @@ -9,6 +9,10 @@ import ( ) func MatchContentType(contentType string, pattern string) bool { + if contentType == "" { + contentType = "application/octet-stream" + } + if contentType == pattern || pattern == "*" || pattern == "*/*" { return true } diff --git a/internal/sdk/pkg/utils/form.go b/internal/sdk/internal/utils/form.go similarity index 97% rename from internal/sdk/pkg/utils/form.go rename to internal/sdk/internal/utils/form.go index 36cf249..02119ac 100644 --- a/internal/sdk/pkg/utils/form.go +++ b/internal/sdk/internal/utils/form.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils @@ -12,7 +12,7 @@ import ( "github.com/ericlagergren/decimal" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/types" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/types" ) func populateForm(paramName string, explode bool, objType reflect.Type, objValue reflect.Value, delimiter string, getFieldName func(reflect.StructField) string) url.Values { diff --git a/internal/sdk/pkg/utils/headers.go b/internal/sdk/internal/utils/headers.go similarity index 66% rename from internal/sdk/pkg/utils/headers.go rename to internal/sdk/internal/utils/headers.go index 0837022..7af15f9 100644 --- a/internal/sdk/pkg/utils/headers.go +++ b/internal/sdk/internal/utils/headers.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils @@ -10,14 +10,34 @@ import ( "strings" ) -func PopulateHeaders(ctx context.Context, req *http.Request, headers interface{}) { - headerParamsStructType := reflect.TypeOf(headers) - headerParamsValType := reflect.ValueOf(headers) +func PopulateHeaders(_ context.Context, req *http.Request, headers interface{}, globals interface{}) { + globalsAlreadyPopulated := populateHeaders(headers, globals, req.Header, []string{}) + if globals != nil { + _ = populateHeaders(globals, nil, req.Header, globalsAlreadyPopulated) + } +} + +func populateHeaders(headers interface{}, globals interface{}, reqHeaders http.Header, skipFields []string) []string { + headerParamsStructType, headerParamsValType := dereferencePointers(reflect.TypeOf(headers), reflect.ValueOf(headers)) + + globalsAlreadyPopulated := []string{} for i := 0; i < headerParamsStructType.NumField(); i++ { fieldType := headerParamsStructType.Field(i) valType := headerParamsValType.Field(i) + if contains(skipFields, fieldType.Name) { + continue + } + + if globals != nil { + var globalFound bool + fieldType, valType, globalFound = populateFromGlobals(fieldType, valType, headerParamTagKey, globals) + if globalFound { + globalsAlreadyPopulated = append(globalsAlreadyPopulated, fieldType.Name) + } + } + tag := parseParamTag(headerParamTagKey, fieldType, "simple", false) if tag == nil { continue @@ -25,9 +45,11 @@ func PopulateHeaders(ctx context.Context, req *http.Request, headers interface{} value := serializeHeader(fieldType.Type, valType, tag.Explode) if value != "" { - req.Header.Add(tag.ParamName, value) + reqHeaders.Add(tag.ParamName, value) } } + + return globalsAlreadyPopulated } func serializeHeader(objType reflect.Type, objValue reflect.Value, explode bool) string { diff --git a/internal/sdk/pkg/utils/json.go b/internal/sdk/internal/utils/json.go similarity index 88% rename from internal/sdk/pkg/utils/json.go rename to internal/sdk/internal/utils/json.go index e3fb2fe..87f27b7 100644 --- a/internal/sdk/pkg/utils/json.go +++ b/internal/sdk/internal/utils/json.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils @@ -8,11 +8,12 @@ import ( "fmt" "math/big" "reflect" + "strconv" "strings" "time" "unsafe" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/types" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/types" "github.com/ericlagergren/decimal" ) @@ -260,6 +261,18 @@ func marshalValue(v interface{}, tag reflect.StructTag) (json.RawMessage, error) typ, val := dereferencePointers(reflect.TypeOf(v), reflect.ValueOf(v)) switch typ.Kind() { + case reflect.Int64: + format := tag.Get("integer") + if format == "string" { + b := val.Interface().(int64) + return []byte(fmt.Sprintf(`"%d"`, b)), nil + } + case reflect.Float64: + format := tag.Get("number") + if format == "string" { + b := val.Interface().(float64) + return []byte(fmt.Sprintf(`"%g"`, b)), nil + } case reflect.Map: if isNil(typ, val) { return []byte("null"), nil @@ -349,6 +362,16 @@ func handleDefaultConstValue(tagValue string, val interface{}, tag reflect.Struc if bigIntTag == "string" { return []byte(fmt.Sprintf(`"%s"`, tagValue)) } + case reflect.TypeOf(int64(0)): + format := tag.Get("integer") + if format == "string" { + return []byte(fmt.Sprintf(`"%s"`, tagValue)) + } + case reflect.TypeOf(float64(0)): + format := tag.Get("number") + if format == "string" { + return []byte(fmt.Sprintf(`"%s"`, tagValue)) + } case reflect.TypeOf(decimal.Big{}): decimalTag := tag.Get("decimal") if decimalTag != "number" { @@ -358,7 +381,7 @@ func handleDefaultConstValue(tagValue string, val interface{}, tag reflect.Struc return []byte(fmt.Sprintf(`"%s"`, tagValue)) default: if typ.Kind() == reflect.String { - return []byte(fmt.Sprintf(`"%s"`, tagValue)) + return []byte(fmt.Sprintf("%q", tagValue)) } } @@ -377,6 +400,57 @@ func unmarshalValue(value json.RawMessage, v reflect.Value, tag reflect.StructTa typ := dereferenceTypePointer(v.Type()) switch typ.Kind() { + case reflect.Int64: + var b int64 + + format := tag.Get("integer") + if format == "string" { + var s string + if err := json.Unmarshal(value, &s); err != nil { + return err + } + + var err error + b, err = strconv.ParseInt(s, 10, 64) + if err != nil { + return fmt.Errorf("failed to parse string as int64: %w", err) + } + if v.Kind() == reflect.Ptr { + if v.IsNil() { + v.Set(reflect.New(typ)) + } + v = v.Elem() + } + + v.Set(reflect.ValueOf(b)) + return nil + } + case reflect.Float64: + var b float64 + + format := tag.Get("number") + if format == "string" { + var s string + if err := json.Unmarshal(value, &s); err != nil { + return err + } + + var err error + b, err = strconv.ParseFloat(s, 64) + if err != nil { + return fmt.Errorf("failed to parse string as float64: %w", err) + } + + if v.Kind() == reflect.Ptr { + if v.IsNil() { + v.Set(reflect.New(typ)) + } + v = v.Elem() + } + + v.Set(reflect.ValueOf(b)) + return nil + } case reflect.Map: if bytes.Equal(value, []byte("null")) || !isComplexValueType(dereferenceTypePointer(typ.Elem())) { if v.CanAddr() { diff --git a/internal/sdk/pkg/utils/pathparams.go b/internal/sdk/internal/utils/pathparams.go similarity index 69% rename from internal/sdk/pkg/utils/pathparams.go rename to internal/sdk/internal/utils/pathparams.go index b0c5eca..75b10d9 100644 --- a/internal/sdk/pkg/utils/pathparams.go +++ b/internal/sdk/internal/utils/pathparams.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils @@ -13,21 +13,43 @@ import ( "github.com/ericlagergren/decimal" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/types" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/types" ) -func GenerateURL(ctx context.Context, serverURL, path string, pathParams interface{}, globals map[string]map[string]map[string]interface{}) (string, error) { +func GenerateURL(_ context.Context, serverURL, path string, pathParams interface{}, globals interface{}) (string, error) { uri := strings.TrimSuffix(serverURL, "/") + path - pathParamsStructType := reflect.TypeOf(pathParams) - pathParamsValType := reflect.ValueOf(pathParams) - parsedParameters := map[string]string{} + globalsAlreadyPopulated, err := populateParsedParameters(pathParams, globals, parsedParameters, []string{}) + if err != nil { + return "", err + } + + if globals != nil { + _, err = populateParsedParameters(globals, nil, parsedParameters, globalsAlreadyPopulated) + if err != nil { + return "", err + } + } + + // TODO should we handle the case where there are no matching path params? + return ReplaceParameters(uri, parsedParameters), nil +} + +func populateParsedParameters(pathParams interface{}, globals interface{}, parsedParameters map[string]string, skipFields []string) ([]string, error) { + pathParamsStructType, pathParamsValType := dereferencePointers(reflect.TypeOf(pathParams), reflect.ValueOf(pathParams)) + + globalsAlreadyPopulated := []string{} + for i := 0; i < pathParamsStructType.NumField(); i++ { fieldType := pathParamsStructType.Field(i) valType := pathParamsValType.Field(i) + if contains(skipFields, fieldType.Name) { + continue + } + requestTag := getRequestTag(fieldType) if requestTag != nil { continue @@ -38,12 +60,18 @@ func GenerateURL(ctx context.Context, serverURL, path string, pathParams interfa continue } - valType = populateFromGlobals(fieldType, valType, "pathParam", globals) + if globals != nil { + var globalFound bool + fieldType, valType, globalFound = populateFromGlobals(fieldType, valType, pathParamTagKey, globals) + if globalFound { + globalsAlreadyPopulated = append(globalsAlreadyPopulated, fieldType.Name) + } + } if ppTag.Serialization != "" { vals, err := populateSerializedParams(ppTag, fieldType.Type, valType) if err != nil { - return "", err + return nil, err } for k, v := range vals { parsedParameters[k] = url.PathEscape(v) @@ -52,7 +80,7 @@ func GenerateURL(ctx context.Context, serverURL, path string, pathParams interfa // TODO: support other styles switch ppTag.Style { case "simple": - simpleParams := getSimplePathParams(ctx, ppTag.ParamName, fieldType.Type, valType, ppTag.Explode) + simpleParams := getSimplePathParams(ppTag.ParamName, fieldType.Type, valType, ppTag.Explode) for k, v := range simpleParams { parsedParameters[k] = v } @@ -60,11 +88,10 @@ func GenerateURL(ctx context.Context, serverURL, path string, pathParams interfa } } - // TODO should we handle the case where there are no matching path params? - return ReplaceParameters(uri, parsedParameters), nil + return globalsAlreadyPopulated, nil } -func getSimplePathParams(ctx context.Context, parentName string, objType reflect.Type, objValue reflect.Value, explode bool) map[string]string { +func getSimplePathParams(parentName string, objType reflect.Type, objValue reflect.Value, explode bool) map[string]string { pathParams := make(map[string]string) if isNil(objType, objValue) { diff --git a/internal/sdk/internal/utils/queryparams.go b/internal/sdk/internal/utils/queryparams.go new file mode 100644 index 0000000..1a6179e --- /dev/null +++ b/internal/sdk/internal/utils/queryparams.go @@ -0,0 +1,259 @@ +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. + +package utils + +import ( + "context" + "encoding/json" + "fmt" + "math/big" + "net/http" + "net/url" + "reflect" + "time" + + "github.com/ericlagergren/decimal" + + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/types" +) + +func PopulateQueryParams(_ context.Context, req *http.Request, queryParams interface{}, globals interface{}) error { + // Query parameters may already be present from overriding URL + if req.URL.RawQuery != "" { + return nil + } + + values := url.Values{} + + globalsAlreadyPopulated, err := populateQueryParams(queryParams, globals, values, []string{}) + if err != nil { + return err + } + + if globals != nil { + _, err = populateQueryParams(globals, nil, values, globalsAlreadyPopulated) + if err != nil { + return err + } + } + + req.URL.RawQuery = values.Encode() + + return nil +} + +func populateQueryParams(queryParams interface{}, globals interface{}, values url.Values, skipFields []string) ([]string, error) { + queryParamsStructType, queryParamsValType := dereferencePointers(reflect.TypeOf(queryParams), reflect.ValueOf(queryParams)) + + globalsAlreadyPopulated := []string{} + + for i := 0; i < queryParamsStructType.NumField(); i++ { + fieldType := queryParamsStructType.Field(i) + valType := queryParamsValType.Field(i) + + if contains(skipFields, fieldType.Name) { + continue + } + + requestTag := getRequestTag(fieldType) + if requestTag != nil { + continue + } + + qpTag := parseQueryParamTag(fieldType) + if qpTag == nil { + continue + } + + if globals != nil { + var globalFound bool + fieldType, valType, globalFound = populateFromGlobals(fieldType, valType, queryParamTagKey, globals) + if globalFound { + globalsAlreadyPopulated = append(globalsAlreadyPopulated, fieldType.Name) + } + } + + if qpTag.Serialization != "" { + vals, err := populateSerializedParams(qpTag, fieldType.Type, valType) + if err != nil { + return nil, err + } + for k, v := range vals { + values.Add(k, v) + } + } else { + switch qpTag.Style { + case "deepObject": + vals := populateDeepObjectParams(qpTag, fieldType.Type, valType) + for k, v := range vals { + for _, vv := range v { + values.Add(k, vv) + } + } + case "form": + vals := populateFormParams(qpTag, fieldType.Type, valType, ",") + for k, v := range vals { + for _, vv := range v { + values.Add(k, vv) + } + } + case "pipeDelimited": + vals := populateFormParams(qpTag, fieldType.Type, valType, "|") + for k, v := range vals { + for _, vv := range v { + values.Add(k, vv) + } + } + default: + return nil, fmt.Errorf("unsupported style: %s", qpTag.Style) + } + } + } + + return globalsAlreadyPopulated, nil +} + +func populateSerializedParams(tag *paramTag, objType reflect.Type, objValue reflect.Value) (map[string]string, error) { + if isNil(objType, objValue) { + return nil, nil + } + + if objType.Kind() == reflect.Pointer { + objValue = objValue.Elem() + } + + values := map[string]string{} + + switch tag.Serialization { + case "json": + data, err := json.Marshal(objValue.Interface()) + if err != nil { + return nil, fmt.Errorf("error marshaling json: %v", err) + } + values[tag.ParamName] = string(data) + } + + return values, nil +} + +func populateDeepObjectParams(tag *paramTag, objType reflect.Type, objValue reflect.Value) url.Values { + values := url.Values{} + + if isNil(objType, objValue) { + return values + } + + if objValue.Kind() == reflect.Pointer { + objValue = objValue.Elem() + } + + switch objValue.Kind() { + case reflect.Map: + populateDeepObjectParamsMap(values, tag.ParamName, objValue) + case reflect.Struct: + populateDeepObjectParamsStruct(values, tag.ParamName, objValue) + } + + return values +} + +func populateDeepObjectParamsArray(qsValues url.Values, priorScope string, value reflect.Value) { + if value.Kind() != reflect.Array && value.Kind() != reflect.Slice { + return + } + + for i := 0; i < value.Len(); i++ { + qsValues.Add(priorScope, valToString(value.Index(i).Interface())) + } +} + +func populateDeepObjectParamsMap(qsValues url.Values, priorScope string, mapValue reflect.Value) { + if mapValue.Kind() != reflect.Map { + return + } + + iter := mapValue.MapRange() + + for iter.Next() { + scope := priorScope + "[" + iter.Key().String() + "]" + iterValue := iter.Value() + + switch iterValue.Kind() { + case reflect.Array, reflect.Slice: + populateDeepObjectParamsArray(qsValues, scope, iterValue) + case reflect.Map: + populateDeepObjectParamsMap(qsValues, scope, iterValue) + default: + qsValues.Add(scope, valToString(iterValue.Interface())) + } + } +} + +func populateDeepObjectParamsStruct(qsValues url.Values, priorScope string, structValue reflect.Value) { + if structValue.Kind() != reflect.Struct { + return + } + + structType := structValue.Type() + + for i := 0; i < structType.NumField(); i++ { + field := structType.Field(i) + fieldValue := structValue.Field(i) + + if isNil(field.Type, fieldValue) { + continue + } + + if fieldValue.Kind() == reflect.Pointer { + fieldValue = fieldValue.Elem() + } + + qpTag := parseQueryParamTag(field) + + if qpTag == nil { + continue + } + + scope := priorScope + "[" + qpTag.ParamName + "]" + + switch fieldValue.Kind() { + case reflect.Array, reflect.Slice: + populateDeepObjectParamsArray(qsValues, scope, fieldValue) + case reflect.Map: + populateDeepObjectParamsMap(qsValues, scope, fieldValue) + case reflect.Struct: + switch fieldValue.Type() { + case reflect.TypeOf(big.Int{}), reflect.TypeOf(decimal.Big{}), reflect.TypeOf(time.Time{}), reflect.TypeOf(types.Date{}): + qsValues.Add(scope, valToString(fieldValue.Interface())) + + continue + } + + populateDeepObjectParamsStruct(qsValues, scope, fieldValue) + default: + qsValues.Add(scope, valToString(fieldValue.Interface())) + } + } +} + +func populateFormParams(tag *paramTag, objType reflect.Type, objValue reflect.Value, delimiter string) url.Values { + return populateForm(tag.ParamName, tag.Explode, objType, objValue, delimiter, func(fieldType reflect.StructField) string { + qpTag := parseQueryParamTag(fieldType) + if qpTag == nil { + return "" + } + + return qpTag.ParamName + }) +} + +type paramTag struct { + Style string + Explode bool + ParamName string + Serialization string +} + +func parseQueryParamTag(field reflect.StructField) *paramTag { + return parseParamTag(queryParamTagKey, field, "form", true) +} diff --git a/internal/sdk/pkg/utils/requestbody.go b/internal/sdk/internal/utils/requestbody.go similarity index 92% rename from internal/sdk/pkg/utils/requestbody.go rename to internal/sdk/internal/utils/requestbody.go index 950f39a..b4e2b8b 100644 --- a/internal/sdk/pkg/utils/requestbody.go +++ b/internal/sdk/internal/utils/requestbody.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils @@ -25,7 +25,20 @@ var ( urlEncodedEncodingRegex = regexp.MustCompile(`application\/x-www-form-urlencoded.*`) ) -func SerializeRequestBody(ctx context.Context, request interface{}, nullable, optional bool, requestFieldName, serializationMethod, tag string) (io.Reader, string, error) { +func SerializeRequestBody(_ context.Context, request interface{}, nullable, optional bool, requestFieldName, serializationMethod, tag string) (io.Reader, string, error) { + bodyReader, contentType, err := serializeRequestBody(request, nullable, optional, requestFieldName, serializationMethod, tag) + if err != nil { + return nil, "", fmt.Errorf("error serializing request body: %w", err) + } + + if bodyReader == nil && !optional { + return nil, "", fmt.Errorf("request body is required") + } + + return bodyReader, contentType, nil +} + +func serializeRequestBody(request interface{}, nullable, optional bool, requestFieldName, serializationMethod, tag string) (io.Reader, string, error) { requestStructType := reflect.TypeOf(request) requestValType := reflect.ValueOf(request) diff --git a/internal/sdk/pkg/utils/retries.go b/internal/sdk/internal/utils/retries.go similarity index 85% rename from internal/sdk/pkg/utils/retries.go rename to internal/sdk/internal/utils/retries.go index ff39d0d..af49fed 100644 --- a/internal/sdk/pkg/utils/retries.go +++ b/internal/sdk/internal/utils/retries.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils @@ -6,32 +6,25 @@ import ( "context" "errors" "fmt" + "github.com/cenkalti/backoff/v4" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/retry" "net/http" "net/url" "strconv" "strings" "time" - - "github.com/cenkalti/backoff/v4" ) var errRequestFailed = errors.New("request failed") -type BackoffStrategy struct { - InitialInterval int - MaxInterval int - Exponent float64 - MaxElapsedTime int -} +// Deprecated: Use retry.BackoffStrategy instead. +type BackoffStrategy = retry.BackoffStrategy -type RetryConfig struct { - Strategy string - Backoff *BackoffStrategy - RetryConnectionErrors bool -} +// Deprecated: Use retry.Config instead. +type RetryConfig = retry.Config type Retries struct { - Config *RetryConfig + Config *retry.Config StatusCodes []string } diff --git a/internal/sdk/pkg/utils/security.go b/internal/sdk/internal/utils/security.go similarity index 63% rename from internal/sdk/pkg/utils/security.go rename to internal/sdk/internal/utils/security.go index fa5eff7..ace81f7 100644 --- a/internal/sdk/pkg/utils/security.go +++ b/internal/sdk/internal/utils/security.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils @@ -11,10 +11,6 @@ import ( "strings" ) -type HTTPClient interface { - Do(req *http.Request) (*http.Response, error) -} - const ( securityTagKey = "security" ) @@ -27,73 +23,24 @@ type securityTag struct { SubType string } -type securityConfig struct { - headers map[string]string - queryParams map[string]string -} - -type SecurityClient struct { - HTTPClient - security func(ctx context.Context) (interface{}, error) -} - -func newSecurityClient(client HTTPClient, security func(ctx context.Context) (interface{}, error)) *SecurityClient { - return &SecurityClient{ - HTTPClient: client, - security: security, +func PopulateSecurity(ctx context.Context, req *http.Request, securitySource func(context.Context) (interface{}, error)) error { + if securitySource == nil { + return nil } -} -func (c *SecurityClient) Do(req *http.Request) (*http.Response, error) { - securityCtx, err := c.security(req.Context()) + security, err := securitySource(ctx) if err != nil { - return nil, err - } - - ctx := securityConfig{ - headers: make(map[string]string), - queryParams: make(map[string]string), - } - parseSecurityStruct(&ctx, securityCtx) - - for k, v := range ctx.headers { - req.Header.Set(k, v) - } - - queryParams := req.URL.Query() - - for k, v := range ctx.queryParams { - queryParams.Add(k, v) + return err } - req.URL.RawQuery = queryParams.Encode() - - return c.HTTPClient.Do(req) -} - -func ConfigureSecurityClient(c HTTPClient, security func(ctx context.Context) (interface{}, error)) *SecurityClient { - return newSecurityClient(c, security) -} - -func trueReflectValue(val reflect.Value) reflect.Value { - kind := val.Type().Kind() - for kind == reflect.Interface || kind == reflect.Ptr { - innerVal := val.Elem() - if !innerVal.IsValid() { - break - } - val = innerVal - kind = val.Type().Kind() - } - return val -} + headers := make(map[string]string) + queryParams := make(map[string]string) -func parseSecurityStruct(c *securityConfig, security interface{}) { securityValType := trueReflectValue(reflect.ValueOf(security)) securityStructType := securityValType.Type() if isNil(securityStructType, securityValType) { - return + return nil } if securityStructType.Kind() == reflect.Ptr { @@ -118,25 +65,37 @@ func parseSecurityStruct(c *securityConfig, security interface{}) { secTag := parseSecurityTag(fieldType) if secTag != nil { if secTag.Option { - handleSecurityOption(c, valType.Interface()) + handleSecurityOption(headers, queryParams, valType.Interface()) } else if secTag.Scheme { // Special case for basic auth which could be a flattened struct if secTag.SubType == "basic" && kind != reflect.Struct { - parseSecurityScheme(c, secTag, security) + parseSecurityScheme(headers, queryParams, secTag, security) } else { - parseSecurityScheme(c, secTag, valType.Interface()) + parseSecurityScheme(headers, queryParams, secTag, valType.Interface()) } } } } + + for key, value := range headers { + req.Header.Add(key, value) + } + + query := req.URL.Query() + for key, value := range queryParams { + query.Add(key, value) + } + req.URL.RawQuery = query.Encode() + + return nil } -func handleSecurityOption(c *securityConfig, option interface{}) error { +func handleSecurityOption(headers, queryParams map[string]string, option interface{}) { optionValType := trueReflectValue(reflect.ValueOf(option)) optionStructType := optionValType.Type() if isNil(optionStructType, optionValType) { - return nil + return } for i := 0; i < optionStructType.NumField(); i++ { @@ -145,14 +104,12 @@ func handleSecurityOption(c *securityConfig, option interface{}) error { secTag := parseSecurityTag(fieldType) if secTag != nil && secTag.Scheme { - parseSecurityScheme(c, secTag, valType.Interface()) + parseSecurityScheme(headers, queryParams, secTag, valType.Interface()) } } - - return nil } -func parseSecurityScheme(client *securityConfig, schemeTag *securityTag, scheme interface{}) { +func parseSecurityScheme(headers, queryParams map[string]string, schemeTag *securityTag, scheme interface{}) { schemeVal := trueReflectValue(reflect.ValueOf(scheme)) schemeType := schemeVal.Type() @@ -162,7 +119,7 @@ func parseSecurityScheme(client *securityConfig, schemeTag *securityTag, scheme if schemeType.Kind() == reflect.Struct { if schemeTag.Type == "http" && schemeTag.SubType == "basic" { - handleBasicAuthScheme(client, schemeVal.Interface()) + handleBasicAuthScheme(headers, schemeVal.Interface()) return } @@ -183,34 +140,36 @@ func parseSecurityScheme(client *securityConfig, schemeTag *securityTag, scheme return } - parseSecuritySchemeValue(client, schemeTag, secTag, valType.Interface()) + parseSecuritySchemeValue(headers, queryParams, schemeTag, secTag, valType.Interface()) } } else { - parseSecuritySchemeValue(client, schemeTag, schemeTag, schemeVal.Interface()) + parseSecuritySchemeValue(headers, queryParams, schemeTag, schemeTag, schemeVal.Interface()) } } -func parseSecuritySchemeValue(client *securityConfig, schemeTag *securityTag, secTag *securityTag, val interface{}) { +func parseSecuritySchemeValue(headers, queryParams map[string]string, schemeTag *securityTag, secTag *securityTag, val interface{}) { switch schemeTag.Type { case "apiKey": switch schemeTag.SubType { case "header": - client.headers[secTag.Name] = valToString(val) + headers[secTag.Name] = valToString(val) case "query": - client.queryParams[secTag.Name] = valToString(val) + queryParams[secTag.Name] = valToString(val) case "cookie": - client.headers["Cookie"] = fmt.Sprintf("%s=%s", secTag.Name, valToString(val)) + headers["Cookie"] = fmt.Sprintf("%s=%s", secTag.Name, valToString(val)) default: panic("not supported") } case "openIdConnect": - client.headers[secTag.Name] = valToString(val) + headers[secTag.Name] = prefixBearer(valToString(val)) case "oauth2": - client.headers[secTag.Name] = valToString(val) + if schemeTag.SubType != "client_credentials" { + headers[secTag.Name] = prefixBearer(valToString(val)) + } case "http": switch schemeTag.SubType { case "bearer": - client.headers[secTag.Name] = prefixBearer(valToString(val)) + headers[secTag.Name] = prefixBearer(valToString(val)) default: panic("not supported") } @@ -227,7 +186,7 @@ func prefixBearer(authHeaderValue string) string { return fmt.Sprintf("Bearer %s", authHeaderValue) } -func handleBasicAuthScheme(client *securityConfig, scheme interface{}) { +func handleBasicAuthScheme(headers map[string]string, scheme interface{}) { schemeStructType := reflect.TypeOf(scheme) schemeValType := reflect.ValueOf(scheme) @@ -237,6 +196,10 @@ func handleBasicAuthScheme(client *securityConfig, scheme interface{}) { fieldType := schemeStructType.Field(i) valType := schemeValType.Field(i) + if fieldType.Type.Kind() == reflect.Ptr { + valType = valType.Elem() + } + secTag := parseSecurityTag(fieldType) if secTag == nil || secTag.Name == "" { continue @@ -250,7 +213,7 @@ func handleBasicAuthScheme(client *securityConfig, scheme interface{}) { } } - client.headers["Authorization"] = fmt.Sprintf("Basic %s", base64.StdEncoding.EncodeToString([]byte(fmt.Sprintf("%s:%s", username, password)))) + headers["Authorization"] = fmt.Sprintf("Basic %s", base64.StdEncoding.EncodeToString([]byte(fmt.Sprintf("%s:%s", username, password)))) } func parseSecurityTag(field reflect.StructField) *securityTag { @@ -296,3 +259,16 @@ func parseSecurityTag(field reflect.StructField) *securityTag { SubType: securitySubType, } } + +func trueReflectValue(val reflect.Value) reflect.Value { + kind := val.Type().Kind() + for kind == reflect.Interface || kind == reflect.Ptr { + innerVal := val.Elem() + if !innerVal.IsValid() { + break + } + val = innerVal + kind = val.Type().Kind() + } + return val +} diff --git a/internal/sdk/pkg/utils/utils.go b/internal/sdk/internal/utils/utils.go similarity index 60% rename from internal/sdk/pkg/utils/utils.go rename to internal/sdk/internal/utils/utils.go index 8c8161a..50482f2 100644 --- a/internal/sdk/pkg/utils/utils.go +++ b/internal/sdk/internal/utils/utils.go @@ -1,13 +1,15 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package utils import ( + "context" "fmt" "io" "math/big" "reflect" "regexp" + "strconv" "strings" "time" @@ -63,6 +65,35 @@ func Contains(slice []string, item string) bool { return false } +func MatchStatusCodes(expectedCodes []string, statusCode int) bool { + for _, codeStr := range expectedCodes { + code, err := strconv.Atoi(codeStr) + if err == nil { + if code == statusCode { + return true + } + continue + } + + codeRange, err := strconv.Atoi(string(codeStr[0])) + if err != nil { + continue + } + + if statusCode >= (codeRange*100) && statusCode < ((codeRange+1)*100) { + return true + } + } + + return false +} + +func AsSecuritySource(security interface{}) func(context.Context) (interface{}, error) { + return func(context.Context) (interface{}, error) { + return security, nil + } +} + func parseStructTag(tagKey string, field reflect.StructField) map[string]string { tag := field.Tag.Get(tagKey) if tag == "" { @@ -134,29 +165,66 @@ func valToString(val interface{}) string { } } -func populateFromGlobals(fieldType reflect.StructField, valType reflect.Value, paramType string, globals map[string]map[string]map[string]interface{}) reflect.Value { - if globals != nil && fieldType.Type.Kind() == reflect.Ptr { - parameters, ok := globals["parameters"] - if ok { - paramsOfType, ok := parameters[paramType] - if ok { - globalVal, ok := paramsOfType[fieldType.Name] - if ok { - if reflect.TypeOf(globalVal).Kind() == fieldType.Type.Elem().Kind() && valType.IsNil() { - valType = reflect.ValueOf(&globalVal) - } - } - } +func populateFromGlobals(fieldType reflect.StructField, valType reflect.Value, paramType string, globals interface{}) (reflect.StructField, reflect.Value, bool) { + if globals == nil { + return fieldType, valType, false + } + + globalsStruct := reflect.TypeOf(globals) + globalsStructVal := reflect.ValueOf(globals) + + globalsField, found := globalsStruct.FieldByName(fieldType.Name) + if !found { + return fieldType, valType, false + } + + if fieldType.Type.Kind() != reflect.Ptr || !valType.IsNil() { + return fieldType, valType, true + } + + globalsVal := globalsStructVal.FieldByName(fieldType.Name) + + if !globalsVal.IsValid() { + return fieldType, valType, false + } + + switch paramType { + case queryParamTagKey: + qpTag := parseQueryParamTag(globalsField) + if qpTag == nil { + return fieldType, valType, false + } + default: + tag := parseParamTag(paramType, fieldType, "simple", false) + if tag == nil { + return fieldType, valType, false } } - return valType + return globalsField, globalsVal, true } func isNil(typ reflect.Type, val reflect.Value) bool { + // `reflect.TypeOf(nil) == nil` so calling typ.Kind() will cause a nil pointer + // dereference panic. Catch it and return early. + // https://github.com/golang/go/issues/51649 + // https://github.com/golang/go/issues/54208 + if typ == nil { + return true + } + if typ.Kind() == reflect.Ptr || typ.Kind() == reflect.Map || typ.Kind() == reflect.Slice || typ.Kind() == reflect.Interface { return val.IsNil() } return false } + +func contains(arr []string, str string) bool { + for _, a := range arr { + if a == str { + return true + } + } + return false +} diff --git a/internal/sdk/journeys.go b/internal/sdk/journeys.go index b25ccb6..1ad976d 100644 --- a/internal/sdk/journeys.go +++ b/internal/sdk/journeys.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package sdk @@ -6,13 +6,16 @@ import ( "bytes" "context" "fmt" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/operations" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/sdkerrors" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/utils" + "github.com/cenkalti/backoff/v4" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/hooks" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/errors" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/operations" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/retry" "io" "net/http" - "strings" + "net/url" ) type Journeys struct { @@ -28,9 +31,17 @@ func newJourneys(sdkConfig sdkConfiguration) *Journeys { // CreateJourney - createJourney // Create a Journey func (s *Journeys) CreateJourney(ctx context.Context, request operations.CreateJourneyRequest, opts ...operations.Option) (*operations.CreateJourneyResponse, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "createJourney", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -38,38 +49,53 @@ func (s *Journeys) CreateJourney(ctx context.Context, request operations.CreateJ return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url := strings.TrimSuffix(baseURL, "/") + "/v1/journey/configuration" + opURL, err := url.JoinPath(baseURL, "/v1/journey/configuration") + if err != nil { + return nil, fmt.Errorf("error generating URL: %w", err) + } bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, true, "JourneyCreationRequest", "json", `request:"mediaType=application/json"`) if err != nil { - return nil, fmt.Errorf("error serializing request body: %w", err) + return nil, err } - debugBody := bytes.NewBuffer([]byte{}) - debugReader := io.TeeReader(bodyReader, debugBody) - req, err := http.NewRequestWithContext(ctx, "POST", url, debugReader) + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "POST", opURL, bodyReader) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) - + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) req.Header.Set("Content-Type", reqContentType) if err := utils.PopulateQueryParams(ctx, req, request, nil); err != nil { return nil, fmt.Errorf("error populating query params: %w", err) } - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -77,45 +103,99 @@ func (s *Journeys) CreateJourney(ctx context.Context, request operations.CreateJ }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.CreateJourneyResponse{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) if err != nil { return nil, fmt.Errorf("error reading response body: %w", err) } - httpRes.Request.Body = io.NopCloser(debugBody) httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.CreateJourneyResponse{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 201: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.Journey if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -123,19 +203,30 @@ func (s *Journeys) CreateJourney(ctx context.Context, request operations.CreateJ res.Journey = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // GetJourney - getJourney // Get journey by id func (s *Journeys) GetJourney(ctx context.Context, request operations.GetJourneyRequest, opts ...operations.Option) (*operations.GetJourneyResponse, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "getJourney", + OAuth2Scopes: []string{}, + SecuritySource: nil, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -143,32 +234,43 @@ func (s *Journeys) GetJourney(ctx context.Context, request operations.GetJourney return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url, err := utils.GenerateURL(ctx, baseURL, "/v1/journey/configuration/{id}", request, nil) + opURL, err := utils.GenerateURL(ctx, baseURL, "/v1/journey/configuration/{id}", request, nil) if err != nil { return nil, fmt.Errorf("error generating URL: %w", err) } - req, err := http.NewRequestWithContext(ctx, "GET", url, nil) + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) if err := utils.PopulateQueryParams(ctx, req, request, nil); err != nil { return nil, fmt.Errorf("error populating query params: %w", err) } - client := s.sdkConfiguration.SecurityClient - globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -176,24 +278,86 @@ func (s *Journeys) GetJourney(ctx context.Context, request operations.GetJourney }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.GetJourneyResponse{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) @@ -203,17 +367,10 @@ func (s *Journeys) GetJourney(ctx context.Context, request operations.GetJourney httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.GetJourneyResponse{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.Journey if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -221,19 +378,30 @@ func (s *Journeys) GetJourney(ctx context.Context, request operations.GetJourney res.Journey = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // GetJourneyProducts - getJourneyProducts // Get products available in the journey by id func (s *Journeys) GetJourneyProducts(ctx context.Context, request operations.GetJourneyProductsRequest, opts ...operations.Option) (*operations.GetJourneyProductsResponse, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "getJourneyProducts", + OAuth2Scopes: []string{}, + SecuritySource: nil, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -241,32 +409,43 @@ func (s *Journeys) GetJourneyProducts(ctx context.Context, request operations.Ge return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url, err := utils.GenerateURL(ctx, baseURL, "/v1/journey/products/{id}", request, nil) + opURL, err := utils.GenerateURL(ctx, baseURL, "/v1/journey/products/{id}", request, nil) if err != nil { return nil, fmt.Errorf("error generating URL: %w", err) } - req, err := http.NewRequestWithContext(ctx, "GET", url, nil) + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) if err := utils.PopulateQueryParams(ctx, req, request, nil); err != nil { return nil, fmt.Errorf("error populating query params: %w", err) } - client := s.sdkConfiguration.SecurityClient - globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -274,24 +453,86 @@ func (s *Journeys) GetJourneyProducts(ctx context.Context, request operations.Ge }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.GetJourneyProductsResponse{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) @@ -301,17 +542,10 @@ func (s *Journeys) GetJourneyProducts(ctx context.Context, request operations.Ge httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.GetJourneyProductsResponse{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out []shared.JourneyProductsResponse if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -319,19 +553,30 @@ func (s *Journeys) GetJourneyProducts(ctx context.Context, request operations.Ge res.JourneyProductsResponse = out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // GetJourneysByOrgID - getJourneysByOrgId // Get all journeys by organization id func (s *Journeys) GetJourneysByOrgID(ctx context.Context, request operations.GetJourneysByOrgIDRequest, opts ...operations.Option) (*operations.GetJourneysByOrgIDResponse, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "getJourneysByOrgId", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -339,32 +584,47 @@ func (s *Journeys) GetJourneysByOrgID(ctx context.Context, request operations.Ge return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url, err := utils.GenerateURL(ctx, baseURL, "/v1/journey/organization/{id}", request, nil) + opURL, err := utils.GenerateURL(ctx, baseURL, "/v1/journey/organization/{id}", request, nil) if err != nil { return nil, fmt.Errorf("error generating URL: %w", err) } - req, err := http.NewRequestWithContext(ctx, "GET", url, nil) + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) if err := utils.PopulateQueryParams(ctx, req, request, nil); err != nil { return nil, fmt.Errorf("error populating query params: %w", err) } - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -372,24 +632,86 @@ func (s *Journeys) GetJourneysByOrgID(ctx context.Context, request operations.Ge }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.GetJourneysByOrgIDResponse{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) @@ -399,17 +721,10 @@ func (s *Journeys) GetJourneysByOrgID(ctx context.Context, request operations.Ge httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.GetJourneysByOrgIDResponse{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.GetJourneysResponse if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -417,19 +732,30 @@ func (s *Journeys) GetJourneysByOrgID(ctx context.Context, request operations.Ge res.GetJourneysResponse = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // PatchUpdateJourney - patchUpdateJourney // Update a Journey (partially / patch). Support for nested properties updates (e.g. "property[0].name"). func (s *Journeys) PatchUpdateJourney(ctx context.Context, request *shared.PatchUpdateJourneyRequest, opts ...operations.Option) (*operations.PatchUpdateJourneyResponse, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "patchUpdateJourney", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -437,34 +763,49 @@ func (s *Journeys) PatchUpdateJourney(ctx context.Context, request *shared.Patch return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url := strings.TrimSuffix(baseURL, "/") + "/v1/journey/configuration" + opURL, err := url.JoinPath(baseURL, "/v1/journey/configuration") + if err != nil { + return nil, fmt.Errorf("error generating URL: %w", err) + } bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, true, "Request", "json", `request:"mediaType=application/json"`) if err != nil { - return nil, fmt.Errorf("error serializing request body: %w", err) + return nil, err + } + + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() } - debugBody := bytes.NewBuffer([]byte{}) - debugReader := io.TeeReader(bodyReader, debugBody) - req, err := http.NewRequestWithContext(ctx, "PATCH", url, debugReader) + req, err := http.NewRequestWithContext(ctx, "PATCH", opURL, bodyReader) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) - + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) req.Header.Set("Content-Type", reqContentType) - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -472,45 +813,99 @@ func (s *Journeys) PatchUpdateJourney(ctx context.Context, request *shared.Patch }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.PatchUpdateJourneyResponse{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) if err != nil { return nil, fmt.Errorf("error reading response body: %w", err) } - httpRes.Request.Body = io.NopCloser(debugBody) httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.PatchUpdateJourneyResponse{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.JourneyResponse if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -518,19 +913,30 @@ func (s *Journeys) PatchUpdateJourney(ctx context.Context, request *shared.Patch res.JourneyResponse = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // RemoveJourney - removeJourney // Remove journey by id func (s *Journeys) RemoveJourney(ctx context.Context, request operations.RemoveJourneyRequest, opts ...operations.Option) (*operations.RemoveJourneyResponse, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "removeJourney", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -538,28 +944,43 @@ func (s *Journeys) RemoveJourney(ctx context.Context, request operations.RemoveJ return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url, err := utils.GenerateURL(ctx, baseURL, "/v1/journey/configuration/{id}", request, nil) + opURL, err := utils.GenerateURL(ctx, baseURL, "/v1/journey/configuration/{id}", request, nil) if err != nil { return nil, fmt.Errorf("error generating URL: %w", err) } - req, err := http.NewRequestWithContext(ctx, "DELETE", url, nil) + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "DELETE", opURL, nil) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "*/*") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -567,24 +988,86 @@ func (s *Journeys) RemoveJourney(ctx context.Context, request operations.RemoveJ }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.RemoveJourneyResponse{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) @@ -594,26 +1077,30 @@ func (s *Journeys) RemoveJourney(ctx context.Context, request operations.RemoveJ httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.RemoveJourneyResponse{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // SearchJourneys - searchJourneys // Search Journeys func (s *Journeys) SearchJourneys(ctx context.Context, request *shared.SearchJourneysQueryRequest, opts ...operations.Option) (*operations.SearchJourneysResponse, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "searchJourneys", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -621,34 +1108,49 @@ func (s *Journeys) SearchJourneys(ctx context.Context, request *shared.SearchJou return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url := strings.TrimSuffix(baseURL, "/") + "/v1/journey/configuration/search" + opURL, err := url.JoinPath(baseURL, "/v1/journey/configuration/search") + if err != nil { + return nil, fmt.Errorf("error generating URL: %w", err) + } bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, true, "Request", "json", `request:"mediaType=application/json"`) if err != nil { - return nil, fmt.Errorf("error serializing request body: %w", err) + return nil, err + } + + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() } - debugBody := bytes.NewBuffer([]byte{}) - debugReader := io.TeeReader(bodyReader, debugBody) - req, err := http.NewRequestWithContext(ctx, "POST", url, debugReader) + req, err := http.NewRequestWithContext(ctx, "POST", opURL, bodyReader) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) - + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) req.Header.Set("Content-Type", reqContentType) - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -656,45 +1158,99 @@ func (s *Journeys) SearchJourneys(ctx context.Context, request *shared.SearchJou }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.SearchJourneysResponse{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) if err != nil { return nil, fmt.Errorf("error reading response body: %w", err) } - httpRes.Request.Body = io.NopCloser(debugBody) httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.SearchJourneysResponse{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.SearchJourneysResponse if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -702,19 +1258,30 @@ func (s *Journeys) SearchJourneys(ctx context.Context, request *shared.SearchJou res.SearchJourneysResponse = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // UpdateJourney - updateJourney // Update a Journey func (s *Journeys) UpdateJourney(ctx context.Context, request *shared.JourneyCreationRequest, opts ...operations.Option) (*operations.UpdateJourneyResponse, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "updateJourney", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -722,34 +1289,49 @@ func (s *Journeys) UpdateJourney(ctx context.Context, request *shared.JourneyCre return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url := strings.TrimSuffix(baseURL, "/") + "/v1/journey/configuration" + opURL, err := url.JoinPath(baseURL, "/v1/journey/configuration") + if err != nil { + return nil, fmt.Errorf("error generating URL: %w", err) + } bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, true, "Request", "json", `request:"mediaType=application/json"`) if err != nil { - return nil, fmt.Errorf("error serializing request body: %w", err) + return nil, err + } + + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout } - debugBody := bytes.NewBuffer([]byte{}) - debugReader := io.TeeReader(bodyReader, debugBody) - req, err := http.NewRequestWithContext(ctx, "PUT", url, debugReader) + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "PUT", opURL, bodyReader) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) - + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) req.Header.Set("Content-Type", reqContentType) - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -757,45 +1339,99 @@ func (s *Journeys) UpdateJourney(ctx context.Context, request *shared.JourneyCre }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.UpdateJourneyResponse{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) if err != nil { return nil, fmt.Errorf("error reading response body: %w", err) } - httpRes.Request.Body = io.NopCloser(debugBody) httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.UpdateJourneyResponse{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.JourneyResponse if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -803,9 +1439,12 @@ func (s *Journeys) UpdateJourney(ctx context.Context, request *shared.JourneyCre res.JourneyResponse = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } diff --git a/internal/sdk/journeysv2.go b/internal/sdk/journeysv2.go index e548212..320f579 100644 --- a/internal/sdk/journeysv2.go +++ b/internal/sdk/journeysv2.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package sdk @@ -6,13 +6,16 @@ import ( "bytes" "context" "fmt" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/operations" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/sdkerrors" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/utils" + "github.com/cenkalti/backoff/v4" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/hooks" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/errors" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/operations" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/retry" "io" "net/http" - "strings" + "net/url" ) type JourneysV2 struct { @@ -28,9 +31,17 @@ func newJourneysV2(sdkConfig sdkConfiguration) *JourneysV2 { // CreateJourneyV2 - createJourneyV2 // Create a Journey func (s *JourneysV2) CreateJourneyV2(ctx context.Context, request *shared.JourneyCreationRequestV2, opts ...operations.Option) (*operations.CreateJourneyV2Response, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "createJourneyV2", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -38,34 +49,49 @@ func (s *JourneysV2) CreateJourneyV2(ctx context.Context, request *shared.Journe return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url := strings.TrimSuffix(baseURL, "/") + "/v2/journey/configuration" + opURL, err := url.JoinPath(baseURL, "/v2/journey/configuration") + if err != nil { + return nil, fmt.Errorf("error generating URL: %w", err) + } bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, true, "Request", "json", `request:"mediaType=application/json"`) if err != nil { - return nil, fmt.Errorf("error serializing request body: %w", err) + return nil, err + } + + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout } - debugBody := bytes.NewBuffer([]byte{}) - debugReader := io.TeeReader(bodyReader, debugBody) - req, err := http.NewRequestWithContext(ctx, "POST", url, debugReader) + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "POST", opURL, bodyReader) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) - + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) req.Header.Set("Content-Type", reqContentType) - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -73,45 +99,99 @@ func (s *JourneysV2) CreateJourneyV2(ctx context.Context, request *shared.Journe }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.CreateJourneyV2Response{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) if err != nil { return nil, fmt.Errorf("error reading response body: %w", err) } - httpRes.Request.Body = io.NopCloser(debugBody) httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.CreateJourneyV2Response{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 201: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.JourneyCreationRequestV2 if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -119,19 +199,30 @@ func (s *JourneysV2) CreateJourneyV2(ctx context.Context, request *shared.Journe res.JourneyCreationRequestV2 = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // GetJourneyV2 - getJourneyV2 // Get journey by id func (s *JourneysV2) GetJourneyV2(ctx context.Context, request operations.GetJourneyV2Request, opts ...operations.Option) (*operations.GetJourneyV2Response, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "getJourneyV2", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -139,28 +230,43 @@ func (s *JourneysV2) GetJourneyV2(ctx context.Context, request operations.GetJou return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url, err := utils.GenerateURL(ctx, baseURL, "/v2/journey/configuration/{id}", request, nil) + opURL, err := utils.GenerateURL(ctx, baseURL, "/v2/journey/configuration/{id}", request, nil) if err != nil { return nil, fmt.Errorf("error generating URL: %w", err) } - req, err := http.NewRequestWithContext(ctx, "GET", url, nil) + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -168,24 +274,86 @@ func (s *JourneysV2) GetJourneyV2(ctx context.Context, request operations.GetJou }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.GetJourneyV2Response{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) @@ -195,17 +363,10 @@ func (s *JourneysV2) GetJourneyV2(ctx context.Context, request operations.GetJou httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.GetJourneyV2Response{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.JourneyCreationRequestV2 if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -213,19 +374,30 @@ func (s *JourneysV2) GetJourneyV2(ctx context.Context, request operations.GetJou res.JourneyCreationRequestV2 = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // PatchUpdateJourneyV2 - patchUpdateJourneyV2 // Update a Journey (partially / patch). Support for nested properties updates (e.g. "property[0].name"). func (s *JourneysV2) PatchUpdateJourneyV2(ctx context.Context, request *shared.PatchUpdateJourneyRequest, opts ...operations.Option) (*operations.PatchUpdateJourneyV2Response, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "patchUpdateJourneyV2", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -233,34 +405,49 @@ func (s *JourneysV2) PatchUpdateJourneyV2(ctx context.Context, request *shared.P return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url := strings.TrimSuffix(baseURL, "/") + "/v2/journey/configuration" + opURL, err := url.JoinPath(baseURL, "/v2/journey/configuration") + if err != nil { + return nil, fmt.Errorf("error generating URL: %w", err) + } bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, true, "Request", "json", `request:"mediaType=application/json"`) if err != nil { - return nil, fmt.Errorf("error serializing request body: %w", err) + return nil, err + } + + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() } - debugBody := bytes.NewBuffer([]byte{}) - debugReader := io.TeeReader(bodyReader, debugBody) - req, err := http.NewRequestWithContext(ctx, "PATCH", url, debugReader) + req, err := http.NewRequestWithContext(ctx, "PATCH", opURL, bodyReader) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) - + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) req.Header.Set("Content-Type", reqContentType) - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -268,45 +455,99 @@ func (s *JourneysV2) PatchUpdateJourneyV2(ctx context.Context, request *shared.P }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.PatchUpdateJourneyV2Response{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) if err != nil { return nil, fmt.Errorf("error reading response body: %w", err) } - httpRes.Request.Body = io.NopCloser(debugBody) httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.PatchUpdateJourneyV2Response{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.JourneyCreationRequestV2 if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -314,19 +555,30 @@ func (s *JourneysV2) PatchUpdateJourneyV2(ctx context.Context, request *shared.P res.JourneyCreationRequestV2 = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // RemoveJourneyV2 - removeJourneyV2 // Remove journey by id func (s *JourneysV2) RemoveJourneyV2(ctx context.Context, request operations.RemoveJourneyV2Request, opts ...operations.Option) (*operations.RemoveJourneyV2Response, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "removeJourneyV2", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -334,28 +586,43 @@ func (s *JourneysV2) RemoveJourneyV2(ctx context.Context, request operations.Rem return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url, err := utils.GenerateURL(ctx, baseURL, "/v2/journey/configuration/{id}", request, nil) + opURL, err := utils.GenerateURL(ctx, baseURL, "/v2/journey/configuration/{id}", request, nil) if err != nil { return nil, fmt.Errorf("error generating URL: %w", err) } - req, err := http.NewRequestWithContext(ctx, "DELETE", url, nil) + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout + } + + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "DELETE", opURL, nil) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "*/*") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -363,24 +630,86 @@ func (s *JourneysV2) RemoveJourneyV2(ctx context.Context, request operations.Rem }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.RemoveJourneyV2Response{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) @@ -390,26 +719,30 @@ func (s *JourneysV2) RemoveJourneyV2(ctx context.Context, request operations.Rem httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.RemoveJourneyV2Response{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } // UpdateJourneyV2 - updateJourneyV2 // Update a Journey func (s *JourneysV2) UpdateJourneyV2(ctx context.Context, request *shared.JourneyCreationRequestV2, opts ...operations.Option) (*operations.UpdateJourneyV2Response, error) { + hookCtx := hooks.HookContext{ + Context: ctx, + OperationID: "updateJourneyV2", + OAuth2Scopes: []string{}, + SecuritySource: s.sdkConfiguration.Security, + } + o := operations.Options{} supportedOptions := []string{ operations.SupportedOptionRetries, + operations.SupportedOptionTimeout, } for _, opt := range opts { @@ -417,34 +750,49 @@ func (s *JourneysV2) UpdateJourneyV2(ctx context.Context, request *shared.Journe return nil, fmt.Errorf("error applying option: %w", err) } } + baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - url := strings.TrimSuffix(baseURL, "/") + "/v2/journey/configuration" + opURL, err := url.JoinPath(baseURL, "/v2/journey/configuration") + if err != nil { + return nil, fmt.Errorf("error generating URL: %w", err) + } bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, true, "Request", "json", `request:"mediaType=application/json"`) if err != nil { - return nil, fmt.Errorf("error serializing request body: %w", err) + return nil, err + } + + timeout := o.Timeout + if timeout == nil { + timeout = s.sdkConfiguration.Timeout } - debugBody := bytes.NewBuffer([]byte{}) - debugReader := io.TeeReader(bodyReader, debugBody) - req, err := http.NewRequestWithContext(ctx, "PUT", url, debugReader) + if timeout != nil { + var cancel context.CancelFunc + ctx, cancel = context.WithTimeout(ctx, *timeout) + defer cancel() + } + + req, err := http.NewRequestWithContext(ctx, "PUT", opURL, bodyReader) if err != nil { return nil, fmt.Errorf("error creating request: %w", err) } req.Header.Set("Accept", "application/json") - req.Header.Set("user-agent", s.sdkConfiguration.UserAgent) - + req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) req.Header.Set("Content-Type", reqContentType) - client := s.sdkConfiguration.SecurityClient + if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security); err != nil { + return nil, err + } globalRetryConfig := s.sdkConfiguration.RetryConfig retryConfig := o.Retries if retryConfig == nil { - if globalRetryConfig == nil { - retryConfig = &utils.RetryConfig{ - Strategy: "backoff", - Backoff: &utils.BackoffStrategy{ + if globalRetryConfig != nil { + retryConfig = globalRetryConfig + } else { + retryConfig = &retry.Config{ + Strategy: "backoff", Backoff: &retry.BackoffStrategy{ InitialInterval: 5000, MaxInterval: 60000, Exponent: 1.5, @@ -452,45 +800,99 @@ func (s *JourneysV2) UpdateJourneyV2(ctx context.Context, request *shared.Journe }, RetryConnectionErrors: true, } - } else { - retryConfig = globalRetryConfig } } - httpRes, err := utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - return client.Do(req) - }) - if err != nil { - return nil, fmt.Errorf("error sending request: %w", err) + var httpRes *http.Response + if retryConfig != nil { + httpRes, err = utils.Retry(ctx, utils.Retries{ + Config: retryConfig, + StatusCodes: []string{ + "5XX", + }, + }, func() (*http.Response, error) { + if req.Body != nil { + copyBody, err := req.GetBody() + if err != nil { + return nil, err + } + req.Body = copyBody + } + + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, backoff.Permanent(err) + } + + httpRes, err := s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + } + return httpRes, err + }) + + if err != nil { + return nil, err + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } + } else { + req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) + if err != nil { + return nil, err + } + + httpRes, err = s.sdkConfiguration.Client.Do(req) + if err != nil || httpRes == nil { + if err != nil { + err = fmt.Errorf("error sending request: %w", err) + } else { + err = fmt.Errorf("error sending request: no response") + } + + _, err = s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) + return nil, err + } else if utils.MatchStatusCodes([]string{}, httpRes.StatusCode) { + _httpRes, err := s.sdkConfiguration.Hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) + if err != nil { + return nil, err + } else if _httpRes != nil { + httpRes = _httpRes + } + } else { + httpRes, err = s.sdkConfiguration.Hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) + if err != nil { + return nil, err + } + } } - if httpRes == nil { - return nil, fmt.Errorf("error sending request: no response") + + res := &operations.UpdateJourneyV2Response{ + StatusCode: httpRes.StatusCode, + ContentType: httpRes.Header.Get("Content-Type"), + RawResponse: httpRes, } rawBody, err := io.ReadAll(httpRes.Body) if err != nil { return nil, fmt.Errorf("error reading response body: %w", err) } - httpRes.Request.Body = io.NopCloser(debugBody) httpRes.Body.Close() httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody)) - contentType := httpRes.Header.Get("Content-Type") - - res := &operations.UpdateJourneyV2Response{ - StatusCode: httpRes.StatusCode, - ContentType: contentType, - RawResponse: httpRes, - } switch { case httpRes.StatusCode == 200: switch { - case utils.MatchContentType(contentType, `application/json`): + case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): var out shared.JourneyCreationRequestV2 if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { return nil, err @@ -498,9 +900,12 @@ func (s *JourneysV2) UpdateJourneyV2(ctx context.Context, request *shared.Journe res.JourneyCreationRequestV2 = &out default: - return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", contentType), httpRes.StatusCode, string(rawBody), httpRes) + return nil, errors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) } + default: + return nil, errors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) } return res, nil + } diff --git a/internal/sdk/pkg/models/sdkerrors/sdkerror.go b/internal/sdk/models/errors/sdkerror.go similarity index 87% rename from internal/sdk/pkg/models/sdkerrors/sdkerror.go rename to internal/sdk/models/errors/sdkerror.go index 5c1affd..ff3fad6 100644 --- a/internal/sdk/pkg/models/sdkerrors/sdkerror.go +++ b/internal/sdk/models/errors/sdkerror.go @@ -1,6 +1,6 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. -package sdkerrors +package errors import ( "fmt" diff --git a/internal/sdk/pkg/models/operations/createjourney.go b/internal/sdk/models/operations/createjourney.go similarity index 94% rename from internal/sdk/pkg/models/operations/createjourney.go rename to internal/sdk/models/operations/createjourney.go index 4794981..3a6dd42 100644 --- a/internal/sdk/pkg/models/operations/createjourney.go +++ b/internal/sdk/models/operations/createjourney.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/createjourneyv2.go b/internal/sdk/models/operations/createjourneyv2.go similarity index 91% rename from internal/sdk/pkg/models/operations/createjourneyv2.go rename to internal/sdk/models/operations/createjourneyv2.go index 0f64795..a70ea02 100644 --- a/internal/sdk/pkg/models/operations/createjourneyv2.go +++ b/internal/sdk/models/operations/createjourneyv2.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/getjourney.go b/internal/sdk/models/operations/getjourney.go similarity index 94% rename from internal/sdk/pkg/models/operations/getjourney.go rename to internal/sdk/models/operations/getjourney.go index 3db210a..2327fb5 100644 --- a/internal/sdk/pkg/models/operations/getjourney.go +++ b/internal/sdk/models/operations/getjourney.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/getjourneyproducts.go b/internal/sdk/models/operations/getjourneyproducts.go similarity index 96% rename from internal/sdk/pkg/models/operations/getjourneyproducts.go rename to internal/sdk/models/operations/getjourneyproducts.go index 7d4c5ed..bfaaea9 100644 --- a/internal/sdk/pkg/models/operations/getjourneyproducts.go +++ b/internal/sdk/models/operations/getjourneyproducts.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/getjourneysbyorgid.go b/internal/sdk/models/operations/getjourneysbyorgid.go similarity index 93% rename from internal/sdk/pkg/models/operations/getjourneysbyorgid.go rename to internal/sdk/models/operations/getjourneysbyorgid.go index b811349..e5f7d49 100644 --- a/internal/sdk/pkg/models/operations/getjourneysbyorgid.go +++ b/internal/sdk/models/operations/getjourneysbyorgid.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/getjourneyv2.go b/internal/sdk/models/operations/getjourneyv2.go similarity index 92% rename from internal/sdk/pkg/models/operations/getjourneyv2.go rename to internal/sdk/models/operations/getjourneyv2.go index 4c67be0..960235d 100644 --- a/internal/sdk/pkg/models/operations/getjourneyv2.go +++ b/internal/sdk/models/operations/getjourneyv2.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/options.go b/internal/sdk/models/operations/options.go similarity index 66% rename from internal/sdk/pkg/models/operations/options.go rename to internal/sdk/models/operations/options.go index 6ecbd47..7686c7a 100644 --- a/internal/sdk/pkg/models/operations/options.go +++ b/internal/sdk/models/operations/options.go @@ -1,10 +1,12 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( "errors" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/retry" + "time" ) var ErrUnsupportedOption = errors.New("unsupported option") @@ -12,7 +14,9 @@ var ErrUnsupportedOption = errors.New("unsupported option") const ( SupportedOptionServerURL = "serverURL" SupportedOptionRetries = "retries" + SupportedOptionTimeout = "timeout" SupportedOptionAcceptHeaderOverride = "acceptHeaderOverride" + SupportedOptionURLOverride = "urlOverride" ) type AcceptHeaderEnum string @@ -28,8 +32,10 @@ func (e AcceptHeaderEnum) ToPointer() *AcceptHeaderEnum { type Options struct { ServerURL *string - Retries *utils.RetryConfig + Retries *retry.Config + Timeout *time.Duration AcceptHeaderOverride *AcceptHeaderEnum + URLOverride *string } type Option func(*Options, ...string) error @@ -63,7 +69,7 @@ func WithTemplatedServerURL(serverURL string, params map[string]string) Option { } // WithRetries allows customizing the default retry configuration. -func WithRetries(config utils.RetryConfig) Option { +func WithRetries(config retry.Config) Option { return func(opts *Options, supportedOptions ...string) error { if !utils.Contains(supportedOptions, SupportedOptionRetries) { return ErrUnsupportedOption @@ -74,6 +80,18 @@ func WithRetries(config utils.RetryConfig) Option { } } +// WithOperationTimeout allows setting the request timeout applied for an operation. +func WithOperationTimeout(timeout time.Duration) Option { + return func(opts *Options, supportedOptions ...string) error { + if !utils.Contains(supportedOptions, SupportedOptionRetries) { + return ErrUnsupportedOption + } + + opts.Timeout = &timeout + return nil + } +} + func WithAcceptHeaderOverride(acceptHeaderOverride AcceptHeaderEnum) Option { return func(opts *Options, supportedOptions ...string) error { if !utils.Contains(supportedOptions, SupportedOptionAcceptHeaderOverride) { @@ -84,3 +102,15 @@ func WithAcceptHeaderOverride(acceptHeaderOverride AcceptHeaderEnum) Option { return nil } } + +// WithURLOverride allows overriding the URL. +func WithURLOverride(urlOverride string) Option { + return func(opts *Options, supportedOptions ...string) error { + if !utils.Contains(supportedOptions, SupportedOptionURLOverride) { + return ErrUnsupportedOption + } + + opts.URLOverride = &urlOverride + return nil + } +} diff --git a/internal/sdk/pkg/models/operations/patchupdatejourney.go b/internal/sdk/models/operations/patchupdatejourney.go similarity index 91% rename from internal/sdk/pkg/models/operations/patchupdatejourney.go rename to internal/sdk/models/operations/patchupdatejourney.go index f74b6f8..43d4bd3 100644 --- a/internal/sdk/pkg/models/operations/patchupdatejourney.go +++ b/internal/sdk/models/operations/patchupdatejourney.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/patchupdatejourneyv2.go b/internal/sdk/models/operations/patchupdatejourneyv2.go similarity index 91% rename from internal/sdk/pkg/models/operations/patchupdatejourneyv2.go rename to internal/sdk/models/operations/patchupdatejourneyv2.go index 2acd444..98739be 100644 --- a/internal/sdk/pkg/models/operations/patchupdatejourneyv2.go +++ b/internal/sdk/models/operations/patchupdatejourneyv2.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/removejourney.go b/internal/sdk/models/operations/removejourney.go similarity index 93% rename from internal/sdk/pkg/models/operations/removejourney.go rename to internal/sdk/models/operations/removejourney.go index cffeea9..d93b397 100644 --- a/internal/sdk/pkg/models/operations/removejourney.go +++ b/internal/sdk/models/operations/removejourney.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations diff --git a/internal/sdk/pkg/models/operations/removejourneyv2.go b/internal/sdk/models/operations/removejourneyv2.go similarity index 93% rename from internal/sdk/pkg/models/operations/removejourneyv2.go rename to internal/sdk/models/operations/removejourneyv2.go index b330ce6..cc28bb5 100644 --- a/internal/sdk/pkg/models/operations/removejourneyv2.go +++ b/internal/sdk/models/operations/removejourneyv2.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations diff --git a/internal/sdk/pkg/models/operations/searchjourneys.go b/internal/sdk/models/operations/searchjourneys.go similarity index 91% rename from internal/sdk/pkg/models/operations/searchjourneys.go rename to internal/sdk/models/operations/searchjourneys.go index 796d5d0..9e568c9 100644 --- a/internal/sdk/pkg/models/operations/searchjourneys.go +++ b/internal/sdk/models/operations/searchjourneys.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/updatejourney.go b/internal/sdk/models/operations/updatejourney.go similarity index 91% rename from internal/sdk/pkg/models/operations/updatejourney.go rename to internal/sdk/models/operations/updatejourney.go index d3f062c..a5d016a 100644 --- a/internal/sdk/pkg/models/operations/updatejourney.go +++ b/internal/sdk/models/operations/updatejourney.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/pkg/models/operations/updatejourneyv2.go b/internal/sdk/models/operations/updatejourneyv2.go similarity index 91% rename from internal/sdk/pkg/models/operations/updatejourneyv2.go rename to internal/sdk/models/operations/updatejourneyv2.go index d72aa2c..7f97c41 100644 --- a/internal/sdk/pkg/models/operations/updatejourneyv2.go +++ b/internal/sdk/models/operations/updatejourneyv2.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package operations import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" "net/http" ) diff --git a/internal/sdk/models/shared/getjourneysresponse.go b/internal/sdk/models/shared/getjourneysresponse.go new file mode 100644 index 0000000..cfa0de5 --- /dev/null +++ b/internal/sdk/models/shared/getjourneysresponse.go @@ -0,0 +1,6 @@ +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. + +package shared + +type GetJourneysResponse struct { +} diff --git a/internal/sdk/pkg/models/shared/journey.go b/internal/sdk/models/shared/journey.go similarity index 73% rename from internal/sdk/pkg/models/shared/journey.go rename to internal/sdk/models/shared/journey.go index 00cc97f..a9be84b 100644 --- a/internal/sdk/pkg/models/shared/journey.go +++ b/internal/sdk/models/shared/journey.go @@ -1,16 +1,43 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package shared import ( "encoding/json" "fmt" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/utils" ) +type ContextSchema struct { + IsRequired *bool `json:"isRequired,omitempty"` + ParamKey string `json:"paramKey"` + Type string `json:"type"` +} + +func (o *ContextSchema) GetIsRequired() *bool { + if o == nil { + return nil + } + return o.IsRequired +} + +func (o *ContextSchema) GetParamKey() string { + if o == nil { + return "" + } + return o.ParamKey +} + +func (o *ContextSchema) GetType() string { + if o == nil { + return "" + } + return o.Type +} + type Design struct { - LogoURL *string `json:"logoUrl,omitempty"` - Theme map[string]interface{} `json:"theme"` + LogoURL *string `json:"logoUrl,omitempty"` + Theme map[string]any `json:"theme"` } func (o *Design) GetLogoURL() *string { @@ -20,9 +47,9 @@ func (o *Design) GetLogoURL() *string { return o.LogoURL } -func (o *Design) GetTheme() map[string]interface{} { +func (o *Design) GetTheme() map[string]any { if o == nil { - return map[string]interface{}{} + return map[string]any{} } return o.Theme } @@ -65,7 +92,6 @@ const ( func (e SourceType) ToPointer() *SourceType { return &e } - func (e *SourceType) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -94,7 +120,6 @@ const ( func (e Type) ToPointer() *Type { return &e } - func (e *Type) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -146,6 +171,32 @@ func (o *Rules) GetType() Type { return o.Type } +type AccessMode string + +const ( + AccessModePublic AccessMode = "PUBLIC" + AccessModePrivate AccessMode = "PRIVATE" +) + +func (e AccessMode) ToPointer() *AccessMode { + return &e +} +func (e *AccessMode) UnmarshalJSON(data []byte) error { + var v string + if err := json.Unmarshal(data, &v); err != nil { + return err + } + switch v { + case "PUBLIC": + fallthrough + case "PRIVATE": + *e = AccessMode(v) + return nil + default: + return fmt.Errorf("invalid value for AccessMode: %v", v) + } +} + type Align string const ( @@ -157,7 +208,6 @@ const ( func (e Align) ToPointer() *Align { return &e } - func (e *Align) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -206,7 +256,6 @@ const ( func (e Lang) ToPointer() *Lang { return &e } - func (e *Lang) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -235,7 +284,6 @@ const ( func (e Mode) ToPointer() *Mode { return &e } - func (e *Mode) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -313,7 +361,6 @@ const ( func (e RuntimeEntities) ToPointer() *RuntimeEntities { return &e } - func (e *RuntimeEntities) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -331,6 +378,7 @@ func (e *RuntimeEntities) UnmarshalJSON(data []byte) error { } type Settings struct { + AccessMode *AccessMode `json:"accessMode,omitempty"` AddressSuggestionsFileURL *string `json:"addressSuggestionsFileUrl,omitempty"` Description *string `json:"description,omitempty"` DesignID string `json:"designId"` @@ -345,6 +393,14 @@ type Settings struct { SafeModeAutomation *bool `json:"safeModeAutomation,omitempty"` TargetedCustomer *string `json:"targetedCustomer,omitempty"` TemplateID *string `json:"templateId,omitempty"` + UseNewDesign *bool `json:"useNewDesign,omitempty"` +} + +func (o *Settings) GetAccessMode() *AccessMode { + if o == nil { + return nil + } + return o.AccessMode } func (o *Settings) GetAddressSuggestionsFileURL() *string { @@ -445,18 +501,25 @@ func (o *Settings) GetTemplateID() *string { return o.TemplateID } +func (o *Settings) GetUseNewDesign() *bool { + if o == nil { + return nil + } + return o.UseNewDesign +} + type Steps struct { - HideNextButton *bool `json:"hideNextButton,omitempty"` - Name string `json:"name"` - Schema interface{} `json:"schema"` - ShowStepName *bool `json:"showStepName,omitempty"` - ShowStepSubtitle *bool `json:"showStepSubtitle,omitempty"` - ShowStepper *bool `json:"showStepper,omitempty"` - ShowStepperLabels *bool `json:"showStepperLabels,omitempty"` - StepID *string `json:"stepId,omitempty"` - SubTitle *string `json:"subTitle,omitempty"` - Title *string `json:"title,omitempty"` - Uischema interface{} `json:"uischema"` + HideNextButton *bool `json:"hideNextButton,omitempty"` + Name string `json:"name"` + Schema any `json:"schema"` + ShowStepName *bool `json:"showStepName,omitempty"` + ShowStepSubtitle *bool `json:"showStepSubtitle,omitempty"` + ShowStepper *bool `json:"showStepper,omitempty"` + ShowStepperLabels *bool `json:"showStepperLabels,omitempty"` + StepID *string `json:"stepId,omitempty"` + SubTitle *string `json:"subTitle,omitempty"` + Title *string `json:"title,omitempty"` + Uischema any `json:"uischema"` } func (o *Steps) GetHideNextButton() *bool { @@ -473,7 +536,7 @@ func (o *Steps) GetName() string { return o.Name } -func (o *Steps) GetSchema() interface{} { +func (o *Steps) GetSchema() any { if o == nil { return nil } @@ -529,7 +592,7 @@ func (o *Steps) GetTitle() *string { return o.Title } -func (o *Steps) GetUischema() interface{} { +func (o *Steps) GetUischema() any { if o == nil { return nil } @@ -537,21 +600,25 @@ func (o *Steps) GetUischema() interface{} { } type Journey struct { - AdditionalProperties interface{} `additionalProperties:"true" json:"-"` - BrandID *string `json:"brandId,omitempty"` - CreatedAt string `json:"createdAt"` - CreatedBy *string `json:"createdBy,omitempty"` - Design *Design `json:"design,omitempty"` - JourneyID *string `json:"journeyId,omitempty"` - LastModifiedAt string `json:"lastModifiedAt"` - Logics []Logics `json:"logics,omitempty"` - Name string `json:"name"` - OrganizationID string `json:"organizationId"` - Revisions float64 `json:"revisions"` - Rules []Rules `json:"rules,omitempty"` - Settings *Settings `json:"settings,omitempty"` - Steps []Steps `json:"steps"` - Version float64 `json:"version"` + AdditionalProperties any `additionalProperties:"true" json:"-"` + // If passed with value of null, the API won't modify the lastModifiedAt field on updating the journey + LastModifiedAt *string `json:"__lastModifiedAt,omitempty"` + BrandID *string `json:"brandId,omitempty"` + ContextSchema []ContextSchema `json:"contextSchema,omitempty"` + CreatedAt string `json:"createdAt"` + CreatedBy *string `json:"createdBy,omitempty"` + Design *Design `json:"design,omitempty"` + FeatureFlags map[string]any `json:"featureFlags,omitempty"` + JourneyID *string `json:"journeyId,omitempty"` + LastModifiedAt1 string `json:"lastModifiedAt"` + Logics []Logics `json:"logics,omitempty"` + Name string `json:"name"` + OrganizationID string `json:"organizationId"` + Revisions float64 `json:"revisions"` + Rules []Rules `json:"rules,omitempty"` + Settings *Settings `json:"settings,omitempty"` + Steps []Steps `json:"steps"` + Version float64 `json:"version"` } func (j Journey) MarshalJSON() ([]byte, error) { @@ -565,13 +632,20 @@ func (j *Journey) UnmarshalJSON(data []byte) error { return nil } -func (o *Journey) GetAdditionalProperties() interface{} { +func (o *Journey) GetAdditionalProperties() any { if o == nil { return nil } return o.AdditionalProperties } +func (o *Journey) GetLastModifiedAt() *string { + if o == nil { + return nil + } + return o.LastModifiedAt +} + func (o *Journey) GetBrandID() *string { if o == nil { return nil @@ -579,6 +653,13 @@ func (o *Journey) GetBrandID() *string { return o.BrandID } +func (o *Journey) GetContextSchema() []ContextSchema { + if o == nil { + return nil + } + return o.ContextSchema +} + func (o *Journey) GetCreatedAt() string { if o == nil { return "" @@ -600,6 +681,13 @@ func (o *Journey) GetDesign() *Design { return o.Design } +func (o *Journey) GetFeatureFlags() map[string]any { + if o == nil { + return nil + } + return o.FeatureFlags +} + func (o *Journey) GetJourneyID() *string { if o == nil { return nil @@ -607,11 +695,11 @@ func (o *Journey) GetJourneyID() *string { return o.JourneyID } -func (o *Journey) GetLastModifiedAt() string { +func (o *Journey) GetLastModifiedAt1() string { if o == nil { return "" } - return o.LastModifiedAt + return o.LastModifiedAt1 } func (o *Journey) GetLogics() []Logics { diff --git a/internal/sdk/pkg/models/shared/journeycreationrequest.go b/internal/sdk/models/shared/journeycreationrequest.go similarity index 77% rename from internal/sdk/pkg/models/shared/journeycreationrequest.go rename to internal/sdk/models/shared/journeycreationrequest.go index 48ffc33..b9d3ff4 100644 --- a/internal/sdk/pkg/models/shared/journeycreationrequest.go +++ b/internal/sdk/models/shared/journeycreationrequest.go @@ -1,16 +1,43 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package shared import ( "encoding/json" "fmt" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/utils" ) +type JourneyCreationRequestContextSchema struct { + IsRequired *bool `json:"isRequired,omitempty"` + ParamKey string `json:"paramKey"` + Type string `json:"type"` +} + +func (o *JourneyCreationRequestContextSchema) GetIsRequired() *bool { + if o == nil { + return nil + } + return o.IsRequired +} + +func (o *JourneyCreationRequestContextSchema) GetParamKey() string { + if o == nil { + return "" + } + return o.ParamKey +} + +func (o *JourneyCreationRequestContextSchema) GetType() string { + if o == nil { + return "" + } + return o.Type +} + type JourneyCreationRequestDesign struct { - LogoURL *string `json:"logoUrl,omitempty"` - Theme map[string]interface{} `json:"theme"` + LogoURL *string `json:"logoUrl,omitempty"` + Theme map[string]any `json:"theme"` } func (o *JourneyCreationRequestDesign) GetLogoURL() *string { @@ -20,9 +47,9 @@ func (o *JourneyCreationRequestDesign) GetLogoURL() *string { return o.LogoURL } -func (o *JourneyCreationRequestDesign) GetTheme() map[string]interface{} { +func (o *JourneyCreationRequestDesign) GetTheme() map[string]any { if o == nil { - return map[string]interface{}{} + return map[string]any{} } return o.Theme } @@ -65,7 +92,6 @@ const ( func (e JourneyCreationRequestSourceType) ToPointer() *JourneyCreationRequestSourceType { return &e } - func (e *JourneyCreationRequestSourceType) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -94,7 +120,6 @@ const ( func (e JourneyCreationRequestType) ToPointer() *JourneyCreationRequestType { return &e } - func (e *JourneyCreationRequestType) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -146,6 +171,32 @@ func (o *JourneyCreationRequestRules) GetType() JourneyCreationRequestType { return o.Type } +type JourneyCreationRequestAccessMode string + +const ( + JourneyCreationRequestAccessModePublic JourneyCreationRequestAccessMode = "PUBLIC" + JourneyCreationRequestAccessModePrivate JourneyCreationRequestAccessMode = "PRIVATE" +) + +func (e JourneyCreationRequestAccessMode) ToPointer() *JourneyCreationRequestAccessMode { + return &e +} +func (e *JourneyCreationRequestAccessMode) UnmarshalJSON(data []byte) error { + var v string + if err := json.Unmarshal(data, &v); err != nil { + return err + } + switch v { + case "PUBLIC": + fallthrough + case "PRIVATE": + *e = JourneyCreationRequestAccessMode(v) + return nil + default: + return fmt.Errorf("invalid value for JourneyCreationRequestAccessMode: %v", v) + } +} + type JourneyCreationRequestAlign string const ( @@ -157,7 +208,6 @@ const ( func (e JourneyCreationRequestAlign) ToPointer() *JourneyCreationRequestAlign { return &e } - func (e *JourneyCreationRequestAlign) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -206,7 +256,6 @@ const ( func (e JourneyCreationRequestLang) ToPointer() *JourneyCreationRequestLang { return &e } - func (e *JourneyCreationRequestLang) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -235,7 +284,6 @@ const ( func (e JourneyCreationRequestMode) ToPointer() *JourneyCreationRequestMode { return &e } - func (e *JourneyCreationRequestMode) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -313,7 +361,6 @@ const ( func (e JourneyCreationRequestRuntimeEntities) ToPointer() *JourneyCreationRequestRuntimeEntities { return &e } - func (e *JourneyCreationRequestRuntimeEntities) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -331,6 +378,7 @@ func (e *JourneyCreationRequestRuntimeEntities) UnmarshalJSON(data []byte) error } type JourneyCreationRequestSettings struct { + AccessMode *JourneyCreationRequestAccessMode `json:"accessMode,omitempty"` AddressSuggestionsFileURL *string `json:"addressSuggestionsFileUrl,omitempty"` Description *string `json:"description,omitempty"` DesignID string `json:"designId"` @@ -345,6 +393,14 @@ type JourneyCreationRequestSettings struct { SafeModeAutomation *bool `json:"safeModeAutomation,omitempty"` TargetedCustomer *string `json:"targetedCustomer,omitempty"` TemplateID *string `json:"templateId,omitempty"` + UseNewDesign *bool `json:"useNewDesign,omitempty"` +} + +func (o *JourneyCreationRequestSettings) GetAccessMode() *JourneyCreationRequestAccessMode { + if o == nil { + return nil + } + return o.AccessMode } func (o *JourneyCreationRequestSettings) GetAddressSuggestionsFileURL() *string { @@ -445,18 +501,25 @@ func (o *JourneyCreationRequestSettings) GetTemplateID() *string { return o.TemplateID } +func (o *JourneyCreationRequestSettings) GetUseNewDesign() *bool { + if o == nil { + return nil + } + return o.UseNewDesign +} + type JourneyCreationRequestSteps struct { - HideNextButton *bool `json:"hideNextButton,omitempty"` - Name string `json:"name"` - Schema interface{} `json:"schema"` - ShowStepName *bool `json:"showStepName,omitempty"` - ShowStepSubtitle *bool `json:"showStepSubtitle,omitempty"` - ShowStepper *bool `json:"showStepper,omitempty"` - ShowStepperLabels *bool `json:"showStepperLabels,omitempty"` - StepID *string `json:"stepId,omitempty"` - SubTitle *string `json:"subTitle,omitempty"` - Title *string `json:"title,omitempty"` - Uischema interface{} `json:"uischema"` + HideNextButton *bool `json:"hideNextButton,omitempty"` + Name string `json:"name"` + Schema any `json:"schema"` + ShowStepName *bool `json:"showStepName,omitempty"` + ShowStepSubtitle *bool `json:"showStepSubtitle,omitempty"` + ShowStepper *bool `json:"showStepper,omitempty"` + ShowStepperLabels *bool `json:"showStepperLabels,omitempty"` + StepID *string `json:"stepId,omitempty"` + SubTitle *string `json:"subTitle,omitempty"` + Title *string `json:"title,omitempty"` + Uischema any `json:"uischema"` } func (o *JourneyCreationRequestSteps) GetHideNextButton() *bool { @@ -473,7 +536,7 @@ func (o *JourneyCreationRequestSteps) GetName() string { return o.Name } -func (o *JourneyCreationRequestSteps) GetSchema() interface{} { +func (o *JourneyCreationRequestSteps) GetSchema() any { if o == nil { return nil } @@ -529,7 +592,7 @@ func (o *JourneyCreationRequestSteps) GetTitle() *string { return o.Title } -func (o *JourneyCreationRequestSteps) GetUischema() interface{} { +func (o *JourneyCreationRequestSteps) GetUischema() any { if o == nil { return nil } @@ -537,17 +600,20 @@ func (o *JourneyCreationRequestSteps) GetUischema() interface{} { } type JourneyCreationRequest struct { - AdditionalProperties interface{} `additionalProperties:"true" json:"-"` - BrandID *string `json:"brandId,omitempty"` - CreatedBy *string `json:"createdBy,omitempty"` - Design *JourneyCreationRequestDesign `json:"design,omitempty"` - JourneyID *string `json:"journeyId,omitempty"` - Logics []JourneyCreationRequestLogics `json:"logics,omitempty"` - Name string `json:"name"` - OrganizationID string `json:"organizationId"` - Rules []JourneyCreationRequestRules `json:"rules,omitempty"` - Settings *JourneyCreationRequestSettings `json:"settings,omitempty"` - Steps []JourneyCreationRequestSteps `json:"steps"` + AdditionalProperties any `additionalProperties:"true" json:"-"` + // If passed with value of null, the API won't modify the lastModifiedAt field on updating the journey + LastModifiedAt *string `json:"__lastModifiedAt,omitempty"` + BrandID *string `json:"brandId,omitempty"` + ContextSchema []JourneyCreationRequestContextSchema `json:"contextSchema,omitempty"` + CreatedBy *string `json:"createdBy,omitempty"` + Design *JourneyCreationRequestDesign `json:"design,omitempty"` + JourneyID *string `json:"journeyId,omitempty"` + Logics []JourneyCreationRequestLogics `json:"logics,omitempty"` + Name string `json:"name"` + OrganizationID string `json:"organizationId"` + Rules []JourneyCreationRequestRules `json:"rules,omitempty"` + Settings *JourneyCreationRequestSettings `json:"settings,omitempty"` + Steps []JourneyCreationRequestSteps `json:"steps"` } func (j JourneyCreationRequest) MarshalJSON() ([]byte, error) { @@ -561,13 +627,20 @@ func (j *JourneyCreationRequest) UnmarshalJSON(data []byte) error { return nil } -func (o *JourneyCreationRequest) GetAdditionalProperties() interface{} { +func (o *JourneyCreationRequest) GetAdditionalProperties() any { if o == nil { return nil } return o.AdditionalProperties } +func (o *JourneyCreationRequest) GetLastModifiedAt() *string { + if o == nil { + return nil + } + return o.LastModifiedAt +} + func (o *JourneyCreationRequest) GetBrandID() *string { if o == nil { return nil @@ -575,6 +648,13 @@ func (o *JourneyCreationRequest) GetBrandID() *string { return o.BrandID } +func (o *JourneyCreationRequest) GetContextSchema() []JourneyCreationRequestContextSchema { + if o == nil { + return nil + } + return o.ContextSchema +} + func (o *JourneyCreationRequest) GetCreatedBy() *string { if o == nil { return nil diff --git a/internal/sdk/pkg/models/shared/journeycreationrequestv2.go b/internal/sdk/models/shared/journeycreationrequestv2.go similarity index 83% rename from internal/sdk/pkg/models/shared/journeycreationrequestv2.go rename to internal/sdk/models/shared/journeycreationrequestv2.go index 9e606bb..2514122 100644 --- a/internal/sdk/pkg/models/shared/journeycreationrequestv2.go +++ b/internal/sdk/models/shared/journeycreationrequestv2.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package shared @@ -7,9 +7,36 @@ import ( "fmt" ) +type JourneyCreationRequestV2ContextSchema struct { + IsRequired *bool `json:"isRequired,omitempty"` + ParamKey string `json:"paramKey"` + Type string `json:"type"` +} + +func (o *JourneyCreationRequestV2ContextSchema) GetIsRequired() *bool { + if o == nil { + return nil + } + return o.IsRequired +} + +func (o *JourneyCreationRequestV2ContextSchema) GetParamKey() string { + if o == nil { + return "" + } + return o.ParamKey +} + +func (o *JourneyCreationRequestV2ContextSchema) GetType() string { + if o == nil { + return "" + } + return o.Type +} + type JourneyCreationRequestV2Design struct { - LogoURL *string `json:"logoUrl,omitempty"` - Theme map[string]interface{} `json:"theme,omitempty"` + LogoURL *string `json:"logoUrl,omitempty"` + Theme map[string]any `json:"theme,omitempty"` } func (o *JourneyCreationRequestV2Design) GetLogoURL() *string { @@ -19,7 +46,7 @@ func (o *JourneyCreationRequestV2Design) GetLogoURL() *string { return o.LogoURL } -func (o *JourneyCreationRequestV2Design) GetTheme() map[string]interface{} { +func (o *JourneyCreationRequestV2Design) GetTheme() map[string]any { if o == nil { return nil } @@ -64,7 +91,6 @@ const ( func (e JourneyCreationRequestV2SourceType) ToPointer() *JourneyCreationRequestV2SourceType { return &e } - func (e *JourneyCreationRequestV2SourceType) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -93,7 +119,6 @@ const ( func (e JourneyCreationRequestV2Type) ToPointer() *JourneyCreationRequestV2Type { return &e } - func (e *JourneyCreationRequestV2Type) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -156,7 +181,6 @@ const ( func (e JourneyCreationRequestV2Align) ToPointer() *JourneyCreationRequestV2Align { return &e } - func (e *JourneyCreationRequestV2Align) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -205,7 +229,6 @@ const ( func (e JourneyCreationRequestV2Lang) ToPointer() *JourneyCreationRequestV2Lang { return &e } - func (e *JourneyCreationRequestV2Lang) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -234,7 +257,6 @@ const ( func (e JourneyCreationRequestV2Mode) ToPointer() *JourneyCreationRequestV2Mode { return &e } - func (e *JourneyCreationRequestV2Mode) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -312,7 +334,6 @@ const ( func (e JourneyCreationRequestV2RuntimeEntities) ToPointer() *JourneyCreationRequestV2RuntimeEntities { return &e } - func (e *JourneyCreationRequestV2RuntimeEntities) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { @@ -334,6 +355,7 @@ type JourneyCreationRequestV2Settings struct { Description *string `json:"description,omitempty"` DesignID *string `json:"designId,omitempty"` EmbedOptions *JourneyCreationRequestV2EmbedOptions `json:"embedOptions,omitempty"` + EntityID *string `json:"entityId,omitempty"` EntityTags []string `json:"entityTags,omitempty"` FilePurposes []string `json:"filePurposes,omitempty"` MappingsAutomationID *string `json:"mappingsAutomationId,omitempty"` @@ -371,6 +393,13 @@ func (o *JourneyCreationRequestV2Settings) GetEmbedOptions() *JourneyCreationReq return o.EmbedOptions } +func (o *JourneyCreationRequestV2Settings) GetEntityID() *string { + if o == nil { + return nil + } + return o.EntityID +} + func (o *JourneyCreationRequestV2Settings) GetEntityTags() []string { if o == nil { return nil @@ -421,17 +450,17 @@ func (o *JourneyCreationRequestV2Settings) GetTemplateID() *string { } type JourneyCreationRequestV2Steps struct { - HideNextButton *bool `json:"hideNextButton,omitempty"` - Name string `json:"name"` - Schema interface{} `json:"schema"` - ShowStepName *bool `json:"showStepName,omitempty"` - ShowStepSubtitle *bool `json:"showStepSubtitle,omitempty"` - ShowStepper *bool `json:"showStepper,omitempty"` - ShowStepperLabels *bool `json:"showStepperLabels,omitempty"` - StepID *string `json:"stepId,omitempty"` - SubTitle *string `json:"subTitle,omitempty"` - Title *string `json:"title,omitempty"` - Uischema interface{} `json:"uischema"` + HideNextButton *bool `json:"hideNextButton,omitempty"` + Name string `json:"name"` + Schema any `json:"schema"` + ShowStepName *bool `json:"showStepName,omitempty"` + ShowStepSubtitle *bool `json:"showStepSubtitle,omitempty"` + ShowStepper *bool `json:"showStepper,omitempty"` + ShowStepperLabels *bool `json:"showStepperLabels,omitempty"` + StepID *string `json:"stepId,omitempty"` + SubTitle *string `json:"subTitle,omitempty"` + Title *string `json:"title,omitempty"` + Uischema any `json:"uischema"` } func (o *JourneyCreationRequestV2Steps) GetHideNextButton() *bool { @@ -448,7 +477,7 @@ func (o *JourneyCreationRequestV2Steps) GetName() string { return o.Name } -func (o *JourneyCreationRequestV2Steps) GetSchema() interface{} { +func (o *JourneyCreationRequestV2Steps) GetSchema() any { if o == nil { return nil } @@ -504,7 +533,7 @@ func (o *JourneyCreationRequestV2Steps) GetTitle() *string { return o.Title } -func (o *JourneyCreationRequestV2Steps) GetUischema() interface{} { +func (o *JourneyCreationRequestV2Steps) GetUischema() any { if o == nil { return nil } @@ -512,14 +541,15 @@ func (o *JourneyCreationRequestV2Steps) GetUischema() interface{} { } type JourneyCreationRequestV2 struct { - BrandID *string `json:"brandId,omitempty"` - Design *JourneyCreationRequestV2Design `json:"design,omitempty"` - JourneyID *string `json:"journeyId,omitempty"` - Logics []JourneyCreationRequestV2Logics `json:"logics,omitempty"` - Name string `json:"name"` - Rules []JourneyCreationRequestV2Rules `json:"rules,omitempty"` - Settings *JourneyCreationRequestV2Settings `json:"settings,omitempty"` - Steps []JourneyCreationRequestV2Steps `json:"steps"` + BrandID *string `json:"brandId,omitempty"` + ContextSchema []JourneyCreationRequestV2ContextSchema `json:"contextSchema,omitempty"` + Design *JourneyCreationRequestV2Design `json:"design,omitempty"` + JourneyID *string `json:"journeyId,omitempty"` + Logics []JourneyCreationRequestV2Logics `json:"logics,omitempty"` + Name string `json:"name"` + Rules []JourneyCreationRequestV2Rules `json:"rules,omitempty"` + Settings *JourneyCreationRequestV2Settings `json:"settings,omitempty"` + Steps []JourneyCreationRequestV2Steps `json:"steps"` } func (o *JourneyCreationRequestV2) GetBrandID() *string { @@ -529,6 +559,13 @@ func (o *JourneyCreationRequestV2) GetBrandID() *string { return o.BrandID } +func (o *JourneyCreationRequestV2) GetContextSchema() []JourneyCreationRequestV2ContextSchema { + if o == nil { + return nil + } + return o.ContextSchema +} + func (o *JourneyCreationRequestV2) GetDesign() *JourneyCreationRequestV2Design { if o == nil { return nil diff --git a/internal/sdk/pkg/models/shared/journeyproductsresponse.go b/internal/sdk/models/shared/journeyproductsresponse.go similarity index 55% rename from internal/sdk/pkg/models/shared/journeyproductsresponse.go rename to internal/sdk/models/shared/journeyproductsresponse.go index faf2006..bf28bd8 100644 --- a/internal/sdk/pkg/models/shared/journeyproductsresponse.go +++ b/internal/sdk/models/shared/journeyproductsresponse.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package shared @@ -6,19 +6,19 @@ type Price struct { } type JourneyProductsResponse struct { - ID *string `json:"_id,omitempty"` - Org *string `json:"_org,omitempty"` - Schema *string `json:"_schema,omitempty"` - Title *string `json:"_title,omitempty"` - Code *string `json:"code,omitempty"` - Description *string `json:"description,omitempty"` - Feature []interface{} `json:"feature,omitempty"` - LegalFootnote *string `json:"legal_footnote,omitempty"` - Name *string `json:"name,omitempty"` - Price *Price `json:"price,omitempty"` - ProductDownloads []interface{} `json:"product_downloads,omitempty"` - ProductImages []interface{} `json:"product_images,omitempty"` - Type *string `json:"type,omitempty"` + ID *string `json:"_id,omitempty"` + Org *string `json:"_org,omitempty"` + Schema *string `json:"_schema,omitempty"` + Title *string `json:"_title,omitempty"` + Code *string `json:"code,omitempty"` + Description *string `json:"description,omitempty"` + Feature []any `json:"feature,omitempty"` + LegalFootnote *string `json:"legal_footnote,omitempty"` + Name *string `json:"name,omitempty"` + Price *Price `json:"price,omitempty"` + ProductDownloads []any `json:"product_downloads,omitempty"` + ProductImages []any `json:"product_images,omitempty"` + Type *string `json:"type,omitempty"` } func (o *JourneyProductsResponse) GetID() *string { @@ -63,7 +63,7 @@ func (o *JourneyProductsResponse) GetDescription() *string { return o.Description } -func (o *JourneyProductsResponse) GetFeature() []interface{} { +func (o *JourneyProductsResponse) GetFeature() []any { if o == nil { return nil } @@ -91,14 +91,14 @@ func (o *JourneyProductsResponse) GetPrice() *Price { return o.Price } -func (o *JourneyProductsResponse) GetProductDownloads() []interface{} { +func (o *JourneyProductsResponse) GetProductDownloads() []any { if o == nil { return nil } return o.ProductDownloads } -func (o *JourneyProductsResponse) GetProductImages() []interface{} { +func (o *JourneyProductsResponse) GetProductImages() []any { if o == nil { return nil } diff --git a/internal/sdk/pkg/models/shared/journeyresponse.go b/internal/sdk/models/shared/journeyresponse.go similarity index 78% rename from internal/sdk/pkg/models/shared/journeyresponse.go rename to internal/sdk/models/shared/journeyresponse.go index e83be32..ba40ed1 100644 --- a/internal/sdk/pkg/models/shared/journeyresponse.go +++ b/internal/sdk/models/shared/journeyresponse.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package shared diff --git a/internal/sdk/pkg/models/shared/patchupdatejourneyrequest.go b/internal/sdk/models/shared/patchupdatejourneyrequest.go similarity index 58% rename from internal/sdk/pkg/models/shared/patchupdatejourneyrequest.go rename to internal/sdk/models/shared/patchupdatejourneyrequest.go index 54ee9c4..ae847f4 100644 --- a/internal/sdk/pkg/models/shared/patchupdatejourneyrequest.go +++ b/internal/sdk/models/shared/patchupdatejourneyrequest.go @@ -1,15 +1,17 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package shared import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/utils" ) // PatchUpdateJourneyRequest - Patch request to update a journey (journey id is required) Support for nested properties (e.g. steps[0].uischema.elements[0].products) is supported. type PatchUpdateJourneyRequest struct { - AdditionalProperties interface{} `additionalProperties:"true" json:"-"` - JourneyID string `json:"journeyId"` + AdditionalProperties any `additionalProperties:"true" json:"-"` + // If passed with value of null, the API won't modify the lastModifiedAt field on updating the journey + LastModifiedAt *string `json:"__lastModifiedAt,omitempty"` + JourneyID string `json:"journeyId"` } func (p PatchUpdateJourneyRequest) MarshalJSON() ([]byte, error) { @@ -23,13 +25,20 @@ func (p *PatchUpdateJourneyRequest) UnmarshalJSON(data []byte) error { return nil } -func (o *PatchUpdateJourneyRequest) GetAdditionalProperties() interface{} { +func (o *PatchUpdateJourneyRequest) GetAdditionalProperties() any { if o == nil { return nil } return o.AdditionalProperties } +func (o *PatchUpdateJourneyRequest) GetLastModifiedAt() *string { + if o == nil { + return nil + } + return o.LastModifiedAt +} + func (o *PatchUpdateJourneyRequest) GetJourneyID() string { if o == nil { return "" diff --git a/internal/sdk/pkg/models/shared/searchjourneysqueryrequest.go b/internal/sdk/models/shared/searchjourneysqueryrequest.go similarity index 94% rename from internal/sdk/pkg/models/shared/searchjourneysqueryrequest.go rename to internal/sdk/models/shared/searchjourneysqueryrequest.go index 7297e73..21a132f 100644 --- a/internal/sdk/pkg/models/shared/searchjourneysqueryrequest.go +++ b/internal/sdk/models/shared/searchjourneysqueryrequest.go @@ -1,9 +1,9 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package shared import ( - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/utils" ) type SearchJourneysQueryRequest struct { diff --git a/internal/sdk/pkg/models/shared/searchjourneysresponse.go b/internal/sdk/models/shared/searchjourneysresponse.go similarity index 97% rename from internal/sdk/pkg/models/shared/searchjourneysresponse.go rename to internal/sdk/models/shared/searchjourneysresponse.go index 76f09db..5c5bfe0 100644 --- a/internal/sdk/pkg/models/shared/searchjourneysresponse.go +++ b/internal/sdk/models/shared/searchjourneysresponse.go @@ -1,11 +1,11 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package shared import ( "encoding/json" "fmt" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/utils" "time" ) @@ -32,7 +32,6 @@ const ( func (e JourneyVersion) ToPointer() *JourneyVersion { return &e } - func (e *JourneyVersion) UnmarshalJSON(data []byte) error { var v string if err := json.Unmarshal(data, &v); err != nil { diff --git a/internal/sdk/pkg/models/shared/security.go b/internal/sdk/models/shared/security.go similarity index 78% rename from internal/sdk/pkg/models/shared/security.go rename to internal/sdk/models/shared/security.go index 6c7ba4d..5543507 100644 --- a/internal/sdk/pkg/models/shared/security.go +++ b/internal/sdk/models/shared/security.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package shared diff --git a/internal/sdk/pkg/models/shared/getjourneysresponse.go b/internal/sdk/pkg/models/shared/getjourneysresponse.go deleted file mode 100644 index 14bab78..0000000 --- a/internal/sdk/pkg/models/shared/getjourneysresponse.go +++ /dev/null @@ -1,6 +0,0 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. - -package shared - -type GetJourneysResponse struct { -} diff --git a/internal/sdk/pkg/utils/queryparams.go b/internal/sdk/pkg/utils/queryparams.go deleted file mode 100644 index 0e94bce..0000000 --- a/internal/sdk/pkg/utils/queryparams.go +++ /dev/null @@ -1,178 +0,0 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. - -package utils - -import ( - "context" - "encoding/json" - "fmt" - "net/http" - "net/url" - "reflect" -) - -func PopulateQueryParams(ctx context.Context, req *http.Request, queryParams interface{}, globals map[string]map[string]map[string]interface{}) error { - queryParamsStructType := reflect.TypeOf(queryParams) - queryParamsValType := reflect.ValueOf(queryParams) - - values := url.Values{} - - for i := 0; i < queryParamsStructType.NumField(); i++ { - fieldType := queryParamsStructType.Field(i) - valType := queryParamsValType.Field(i) - - requestTag := getRequestTag(fieldType) - if requestTag != nil { - continue - } - - qpTag := parseQueryParamTag(fieldType) - if qpTag == nil { - continue - } - - valType = populateFromGlobals(fieldType, valType, "queryParam", globals) - - if qpTag.Serialization != "" { - vals, err := populateSerializedParams(qpTag, fieldType.Type, valType) - if err != nil { - return err - } - for k, v := range vals { - values.Add(k, v) - } - } else { - switch qpTag.Style { - case "deepObject": - vals := populateDeepObjectParams(req, qpTag, fieldType.Type, valType) - for k, v := range vals { - for _, vv := range v { - values.Add(k, vv) - } - } - case "form": - vals := populateFormParams(req, qpTag, fieldType.Type, valType, ",") - for k, v := range vals { - for _, vv := range v { - values.Add(k, vv) - } - } - case "pipeDelimited": - vals := populateFormParams(req, qpTag, fieldType.Type, valType, "|") - for k, v := range vals { - for _, vv := range v { - values.Add(k, vv) - } - } - default: - return fmt.Errorf("unsupported style: %s", qpTag.Style) - } - } - } - - req.URL.RawQuery = values.Encode() - - return nil -} - -func populateSerializedParams(tag *paramTag, objType reflect.Type, objValue reflect.Value) (map[string]string, error) { - if isNil(objType, objValue) { - return nil, nil - } - - if objType.Kind() == reflect.Pointer { - objValue = objValue.Elem() - } - - values := map[string]string{} - - switch tag.Serialization { - case "json": - data, err := json.Marshal(objValue.Interface()) - if err != nil { - return nil, fmt.Errorf("error marshaling json: %v", err) - } - values[tag.ParamName] = string(data) - } - - return values, nil -} - -func populateDeepObjectParams(req *http.Request, tag *paramTag, objType reflect.Type, objValue reflect.Value) url.Values { - values := url.Values{} - - if isNil(objType, objValue) { - return values - } - - if objType.Kind() == reflect.Pointer { - objType = objType.Elem() - objValue = objValue.Elem() - } - - switch objType.Kind() { - case reflect.Struct: - for i := 0; i < objType.NumField(); i++ { - fieldType := objType.Field(i) - valType := objValue.Field(i) - - if isNil(fieldType.Type, valType) { - continue - } - - if fieldType.Type.Kind() == reflect.Pointer { - valType = valType.Elem() - } - - qpTag := parseQueryParamTag(fieldType) - if qpTag == nil { - continue - } - - switch valType.Kind() { - case reflect.Array, reflect.Slice: - for i := 0; i < valType.Len(); i++ { - values.Add(fmt.Sprintf("%s[%s]", tag.ParamName, qpTag.ParamName), valToString(valType.Index(i).Interface())) - } - default: - values.Add(fmt.Sprintf("%s[%s]", tag.ParamName, qpTag.ParamName), valToString(valType.Interface())) - } - } - case reflect.Map: - iter := objValue.MapRange() - for iter.Next() { - switch iter.Value().Kind() { - case reflect.Array, reflect.Slice: - for i := 0; i < iter.Value().Len(); i++ { - values.Add(fmt.Sprintf("%s[%s]", tag.ParamName, iter.Key().String()), valToString(iter.Value().Index(i).Interface())) - } - default: - values.Add(fmt.Sprintf("%s[%s]", tag.ParamName, iter.Key().String()), valToString(iter.Value().Interface())) - } - } - } - - return values -} - -func populateFormParams(req *http.Request, tag *paramTag, objType reflect.Type, objValue reflect.Value, delimiter string) url.Values { - return populateForm(tag.ParamName, tag.Explode, objType, objValue, delimiter, func(fieldType reflect.StructField) string { - qpTag := parseQueryParamTag(fieldType) - if qpTag == nil { - return "" - } - - return qpTag.ParamName - }) -} - -type paramTag struct { - Style string - Explode bool - ParamName string - Serialization string -} - -func parseQueryParamTag(field reflect.StructField) *paramTag { - return parseParamTag(queryParamTagKey, field, "form", true) -} diff --git a/internal/sdk/retry/config.go b/internal/sdk/retry/config.go new file mode 100644 index 0000000..a9b559b --- /dev/null +++ b/internal/sdk/retry/config.go @@ -0,0 +1,16 @@ +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. + +package retry + +type BackoffStrategy struct { + InitialInterval int + MaxInterval int + Exponent float64 + MaxElapsedTime int +} + +type Config struct { + Strategy string + Backoff *BackoffStrategy + RetryConnectionErrors bool +} diff --git a/internal/sdk/sdk.go b/internal/sdk/sdk.go index 0fd7f5b..ef1c57f 100644 --- a/internal/sdk/sdk.go +++ b/internal/sdk/sdk.go @@ -1,12 +1,14 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package sdk import ( "context" "fmt" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/models/shared" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/hooks" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/internal/utils" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/models/shared" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/retry" "net/http" "time" ) @@ -40,8 +42,7 @@ func Float32(f float32) *float32 { return &f } func Float64(f float64) *float64 { return &f } type sdkConfiguration struct { - DefaultClient HTTPClient - SecurityClient HTTPClient + Client HTTPClient Security func(context.Context) (interface{}, error) ServerURL string ServerIndex int @@ -50,7 +51,9 @@ type sdkConfiguration struct { SDKVersion string GenVersion string UserAgent string - RetryConfig *utils.RetryConfig + RetryConfig *retry.Config + Hooks *hooks.Hooks + Timeout *time.Duration } func (c *sdkConfiguration) GetServerDetails() (string, map[string]string) { @@ -103,20 +106,14 @@ func WithServerIndex(serverIndex int) SDKOption { // WithClient allows the overriding of the default HTTP client used by the SDK func WithClient(client HTTPClient) SDKOption { return func(sdk *SDK) { - sdk.sdkConfiguration.DefaultClient = client - } -} - -func withSecurity(security interface{}) func(context.Context) (interface{}, error) { - return func(context.Context) (interface{}, error) { - return &security, nil + sdk.sdkConfiguration.Client = client } } // WithSecurity configures the SDK to use the provided security details func WithSecurity(security shared.Security) SDKOption { return func(sdk *SDK) { - sdk.sdkConfiguration.Security = withSecurity(security) + sdk.sdkConfiguration.Security = utils.AsSecuritySource(security) } } @@ -129,21 +126,29 @@ func WithSecuritySource(security func(context.Context) (shared.Security, error)) } } -func WithRetryConfig(retryConfig utils.RetryConfig) SDKOption { +func WithRetryConfig(retryConfig retry.Config) SDKOption { return func(sdk *SDK) { sdk.sdkConfiguration.RetryConfig = &retryConfig } } +// WithTimeout Optional request timeout applied to each operation +func WithTimeout(timeout time.Duration) SDKOption { + return func(sdk *SDK) { + sdk.sdkConfiguration.Timeout = &timeout + } +} + // New creates a new instance of the SDK with the provided options func New(opts ...SDKOption) *SDK { sdk := &SDK{ sdkConfiguration: sdkConfiguration{ Language: "go", OpenAPIDocVersion: "1.0.0", - SDKVersion: "0.2.7", - GenVersion: "2.230.1", - UserAgent: "speakeasy-sdk/go 0.2.7 2.230.1 1.0.0 epilot-journey", + SDKVersion: "0.0.1", + GenVersion: "2.379.3", + UserAgent: "speakeasy-sdk/go 0.0.1 2.379.3 1.0.0 github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk", + Hooks: hooks.New(), }, } for _, opt := range opts { @@ -151,15 +156,15 @@ func New(opts ...SDKOption) *SDK { } // Use WithClient to override the default client if you would like to customize the timeout - if sdk.sdkConfiguration.DefaultClient == nil { - sdk.sdkConfiguration.DefaultClient = &http.Client{Timeout: 60 * time.Second} + if sdk.sdkConfiguration.Client == nil { + sdk.sdkConfiguration.Client = &http.Client{Timeout: 60 * time.Second} } - if sdk.sdkConfiguration.SecurityClient == nil { - if sdk.sdkConfiguration.Security != nil { - sdk.sdkConfiguration.SecurityClient = utils.ConfigureSecurityClient(sdk.sdkConfiguration.DefaultClient, sdk.sdkConfiguration.Security) - } else { - sdk.sdkConfiguration.SecurityClient = sdk.sdkConfiguration.DefaultClient - } + + currentServerURL, _ := sdk.sdkConfiguration.GetServerDetails() + serverURL := currentServerURL + serverURL, sdk.sdkConfiguration.Client = sdk.sdkConfiguration.Hooks.SDKInit(currentServerURL, sdk.sdkConfiguration.Client) + if serverURL != currentServerURL { + sdk.sdkConfiguration.ServerURL = serverURL } sdk.Journeys = newJourneys(sdk.sdkConfiguration) diff --git a/internal/sdk/pkg/types/bigint.go b/internal/sdk/types/bigint.go similarity index 87% rename from internal/sdk/pkg/types/bigint.go rename to internal/sdk/types/bigint.go index afd0cd2..4765ef2 100644 --- a/internal/sdk/pkg/types/bigint.go +++ b/internal/sdk/types/bigint.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package types diff --git a/internal/sdk/pkg/types/date.go b/internal/sdk/types/date.go similarity index 96% rename from internal/sdk/pkg/types/date.go rename to internal/sdk/types/date.go index c4648fa..131f364 100644 --- a/internal/sdk/pkg/types/date.go +++ b/internal/sdk/types/date.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package types diff --git a/internal/sdk/pkg/types/datetime.go b/internal/sdk/types/datetime.go similarity index 90% rename from internal/sdk/pkg/types/datetime.go rename to internal/sdk/types/datetime.go index 0529b25..c07ddcd 100644 --- a/internal/sdk/pkg/types/datetime.go +++ b/internal/sdk/types/datetime.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package types diff --git a/internal/sdk/pkg/types/decimal.go b/internal/sdk/types/decimal.go similarity index 85% rename from internal/sdk/pkg/types/decimal.go rename to internal/sdk/types/decimal.go index a42284b..f7def72 100644 --- a/internal/sdk/pkg/types/decimal.go +++ b/internal/sdk/types/decimal.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package types diff --git a/internal/sdk/pkg/types/pointers.go b/internal/sdk/types/pointers.go similarity index 82% rename from internal/sdk/pkg/types/pointers.go rename to internal/sdk/types/pointers.go index 4f15e99..1ed80cf 100644 --- a/internal/sdk/pkg/types/pointers.go +++ b/internal/sdk/types/pointers.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package types diff --git a/internal/validators/DateValidator.go b/internal/validators/DateValidator.go index 76420e3..efd8520 100644 --- a/internal/validators/DateValidator.go +++ b/internal/validators/DateValidator.go @@ -1,10 +1,10 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package validators import ( "context" - "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/pkg/types" + "github.com/epilot-dev/terraform-provider-epilot-journey/internal/sdk/types" "github.com/hashicorp/terraform-plugin-framework-validators/helpers/validatordiag" "github.com/hashicorp/terraform-plugin-framework/schema/validator" ) diff --git a/internal/validators/ExactlyOneChild.go b/internal/validators/ExactlyOneChild.go index 5741558..dc9cd6a 100644 --- a/internal/validators/ExactlyOneChild.go +++ b/internal/validators/ExactlyOneChild.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package validators diff --git a/internal/validators/JSONParseValidator.go b/internal/validators/JSONParseValidator.go index 3a341e1..cb680b9 100644 --- a/internal/validators/JSONParseValidator.go +++ b/internal/validators/JSONParseValidator.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package validators diff --git a/internal/validators/RFC3339Validator.go b/internal/validators/RFC3339Validator.go index ad3d715..888f85c 100644 --- a/internal/validators/RFC3339Validator.go +++ b/internal/validators/RFC3339Validator.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package validators diff --git a/internal/validators/boolvalidators/not_null.go b/internal/validators/boolvalidators/not_null.go index 45e2e97..de7f756 100644 --- a/internal/validators/boolvalidators/not_null.go +++ b/internal/validators/boolvalidators/not_null.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package boolvalidators diff --git a/internal/validators/float64validators/not_null.go b/internal/validators/float64validators/not_null.go index 75099c2..fed2c05 100644 --- a/internal/validators/float64validators/not_null.go +++ b/internal/validators/float64validators/not_null.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package float64validators diff --git a/internal/validators/int64validators/not_null.go b/internal/validators/int64validators/not_null.go index 32192d8..c07e1de 100644 --- a/internal/validators/int64validators/not_null.go +++ b/internal/validators/int64validators/not_null.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package int64validators diff --git a/internal/validators/listvalidators/not_null.go b/internal/validators/listvalidators/not_null.go index c7bfa6e..f39d6fa 100644 --- a/internal/validators/listvalidators/not_null.go +++ b/internal/validators/listvalidators/not_null.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package listvalidators diff --git a/internal/validators/mapvalidators/not_null.go b/internal/validators/mapvalidators/not_null.go index 7d22172..9cdf99e 100644 --- a/internal/validators/mapvalidators/not_null.go +++ b/internal/validators/mapvalidators/not_null.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package mapvalidators diff --git a/internal/validators/numbervalidators/not_null.go b/internal/validators/numbervalidators/not_null.go index b085170..e2baffe 100644 --- a/internal/validators/numbervalidators/not_null.go +++ b/internal/validators/numbervalidators/not_null.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package numbervalidators diff --git a/internal/validators/objectvalidators/not_null.go b/internal/validators/objectvalidators/not_null.go index c45ca8d..480ec23 100644 --- a/internal/validators/objectvalidators/not_null.go +++ b/internal/validators/objectvalidators/not_null.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package objectvalidators diff --git a/internal/validators/setvalidators/not_null.go b/internal/validators/setvalidators/not_null.go index 23d6c16..45369e3 100644 --- a/internal/validators/setvalidators/not_null.go +++ b/internal/validators/setvalidators/not_null.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package setvalidators diff --git a/internal/validators/stringvalidators/not_null.go b/internal/validators/stringvalidators/not_null.go index f15f8ae..ce5f808 100644 --- a/internal/validators/stringvalidators/not_null.go +++ b/internal/validators/stringvalidators/not_null.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package stringvalidators diff --git a/main.go b/main.go index eeef494..7477352 100644 --- a/main.go +++ b/main.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. package main @@ -15,7 +15,7 @@ import ( // Run the docs generation tool, check its repository for more information on how it works and how docs // can be customized. -//go:generate go run github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs generate --rendered-provider-name terraform-provider-epilot-journey +//go:generate go run github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs generate --provider-name terraform-provider-epilot-journey --rendered-provider-name terraform-provider-epilot-journey var ( // these will be set by the goreleaser configuration diff --git a/openapi.yml b/openapi.yml new file mode 100644 index 0000000..42ae381 --- /dev/null +++ b/openapi.yml @@ -0,0 +1,972 @@ +openapi: 3.0.0 +info: + title: Journey API + description: API to configure journeys + version: 1.0.0 +security: +- EpilotAuth: [] +paths: + /v1/journey/organization/{id}: + get: + operationId: getJourneysByOrgId + summary: getJourneysByOrgId + description: Get all journeys by organization id + tags: + - Journeys + parameters: + - name: id + in: path + description: Organization ID + required: true + schema: + type: string + example: '123' + - name: hydrate + in: query + description: Hydrate + required: false + schema: + type: string + example: 'true' + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/GetJourneysResponse' + /v1/journey/configuration/{id}: + get: + operationId: getJourney + summary: getJourney + description: Get journey by id + security: [] + tags: + - Journeys + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + - name: source + in: query + description: What source ID. Journey or Entity ID + required: false + schema: + type: string + - name: orgId + in: query + description: Organization ID + required: false + schema: + type: string + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/Journey' + delete: + operationId: removeJourney + summary: removeJourney + description: Remove journey by id + tags: + - Journeys + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + responses: + '200': + description: Success + content: {} + /v1/journey/products/{id}: + get: + operationId: getJourneyProducts + summary: getJourneyProducts + description: Get products available in the journey by id + security: [] + tags: + - Journeys + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + - name: source + in: query + description: What source ID. Journey or Entity ID + required: false + schema: + type: string + - name: orgId + in: query + description: Organization ID + required: false + schema: + type: string + - name: postal_code + in: query + description: Zip Code for availibility + required: false + schema: + type: string + - name: city + in: query + description: city for availibility + required: false + schema: + type: string + - name: street + in: query + description: street name for availibility + required: false + schema: + type: string + - name: street_number + in: query + description: street number for availibility + required: false + schema: + type: string + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyProductsResponse' + /v1/journey/configuration: + post: + operationId: createJourney + summary: createJourney + description: Create a Journey + tags: + - Journeys + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequest' + description: Payload + parameters: + - name: skipAutomation + in: query + description: skip creating an Automation (it takes Yn format "true, yes, 1, y") + required: false + schema: + type: string + format: Yn + example: true + responses: + '201': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/Journey' + put: + operationId: updateJourney + summary: updateJourney + description: Update a Journey + tags: + - Journeys + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequest' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyResponse' + patch: + operationId: patchUpdateJourney + summary: patchUpdateJourney + description: Update a Journey (partially / patch). Support for nested properties updates (e.g. "property[0].name"). + tags: + - Journeys + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PatchUpdateJourneyRequest' + example: + journeyId: 509cdffe-424f-457a-95c2-9708c304ce77 + name: New Journey Name + steps[0].uischema.elements[0].products: + - '123456' + - '654321' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyResponse' + /v1/journey/configuration/search: + post: + operationId: searchJourneys + summary: searchJourneys + description: Search Journeys + tags: + - Journeys + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SearchJourneysQueryRequest' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/SearchJourneysResponse' + /v2/journey/configuration: + post: + operationId: createJourneyV2 + summary: createJourneyV2 + description: Create a Journey + tags: + - Journeys V2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + description: Payload + parameters: + - name: skipAutomation + in: query + description: skip creating an Automation (it takes Yn format "true, yes, 1, y") + required: false + schema: + type: string + format: Yn + example: true + responses: + '201': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + put: + operationId: updateJourneyV2 + summary: updateJourneyV2 + description: Update a Journey + tags: + - Journeys V2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + patch: + operationId: patchUpdateJourneyV2 + summary: patchUpdateJourneyV2 + description: Update a Journey (partially / patch). Support for nested properties updates (e.g. "property[0].name"). + tags: + - Journeys V2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PatchUpdateJourneyRequest' + example: + journeyId: 509cdffe-424f-457a-95c2-9708c304ce77 + name: New Journey Name + steps[0].uischema.elements[0].products: + - '123456' + - '654321' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + /v2/journey/configuration/{id}: + get: + operationId: getJourneyV2 + summary: getJourneyV2 + description: Get journey by id + security: [] + tags: + - Journeys V2 + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + delete: + operationId: removeJourneyV2 + summary: removeJourneyV2 + description: Remove journey by id + tags: + - Journeys V2 + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + responses: + '200': + description: Success + content: {} +components: + schemas: + GetJourneysResponse: + type: object + JourneyResponse: + type: object + properties: + createdJourney: + $ref: '#/components/schemas/Journey' + JourneyProductsResponse: + type: array + items: + type: object + properties: + type: + type: string + _schema: + type: string + _title: + type: string + name: + type: string + _id: + type: string + _org: + type: string + code: + type: string + description: + type: string + feature: + type: array + product_images: + type: array + legal_footnote: + type: string + product_downloads: + type: array + price: + type: object + PatchUpdateJourneyRequest: + type: object + properties: + journeyId: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + __lastModifiedAt: + type: string + description: If passed with value of null, the API won't modify the lastModifiedAt field on updating the journey + nullable: true + additionalProperties: true + description: | + Patch request to update a journey (journey id is required) Support for nested properties (e.g. steps[0].uischema.elements[0].products) is supported. + required: + - journeyId + JourneyCreationRequest: + type: object + properties: + journeyId: + type: string + organizationId: + type: string + brandId: + type: string + name: + type: string + steps: + type: array + items: + type: object + additionalProperties: false + properties: + showStepName: + type: boolean + nullable: true + title: + type: string + nullable: true + subTitle: + type: string + nullable: true + showStepSubtitle: + type: boolean + nullable: true + showStepper: + type: boolean + nullable: true + showStepperLabels: + type: boolean + nullable: true + hideNextButton: + type: boolean + nullable: true + name: + type: string + stepId: + type: string + schema: {} + uischema: {} + required: + - name + - schema + - uischema + design: + type: object + properties: + logoUrl: + type: string + nullable: true + theme: + type: object + additionalProperties: {} + required: + - theme + additionalProperties: false + rules: + type: array + items: + type: object + properties: + type: + type: string + enum: + - inject + - injectWithKey + sourceType: + type: string + enum: + - journey + - step + - block + source: + type: string + target: + type: string + required: + - type + - sourceType + - source + - target + additionalProperties: false + logics: + type: array + items: + type: object + properties: + autoGeneratedId: + type: string + conditions: + type: array + items: + type: string + actions: + type: array + items: + type: string + required: + - conditions + - actions + additionalProperties: false + contextSchema: + type: array + items: + type: object + properties: + type: + type: string + paramKey: + type: string + isRequired: + type: boolean + required: + - paramKey + - type + additionalProperties: false + settings: + type: object + properties: + embedOptions: + type: object + properties: + mode: + type: string + enum: + - full-screen + - inline + lang: + type: string + enum: + - de + - en + - fr + width: + type: string + topBar: + type: boolean + scrollToTop: + type: boolean + button: + type: object + properties: + text: + type: string + nullable: true + align: + type: string + enum: + - left + - center + - right + safeModeAutomation: + type: boolean + designId: + type: string + templateId: + type: string + entityId: + type: string + nullable: true + mappingsAutomationId: + type: string + targetedCustomer: + type: string + description: + type: string + nullable: true + organizationSettings: + type: object + additionalProperties: + type: boolean + nullable: true + publicToken: + type: string + nullable: true + runtimeEntities: + type: array + items: + type: string + enum: + - ORDER + - OPPORTUNITY + filePurposes: + type: array + items: + type: string + entityTags: + type: array + items: + type: string + addressSuggestionsFileUrl: + type: string + nullable: true + useNewDesign: + type: boolean + accessMode: + type: string + enum: + - PUBLIC + - PRIVATE + required: + - designId + additionalProperties: false + createdBy: + type: string + __lastModifiedAt: + type: string + description: If passed with value of null, the API won't modify the lastModifiedAt field on updating the journey + nullable: true + required: + - organizationId + - name + - steps + additionalProperties: true + JourneyCreationRequestV2: + type: object + properties: + journeyId: + type: string + brandId: + type: string + name: + type: string + steps: + type: array + items: + type: object + additionalProperties: false + properties: + showStepName: + type: boolean + nullable: true + title: + type: string + nullable: true + subTitle: + type: string + nullable: true + showStepSubtitle: + type: boolean + nullable: true + showStepper: + type: boolean + nullable: true + showStepperLabels: + type: boolean + nullable: true + hideNextButton: + type: boolean + nullable: true + name: + type: string + stepId: + type: string + schema: {} + uischema: {} + required: + - name + - schema + - uischema + design: + type: object + properties: + logoUrl: + type: string + nullable: true + theme: + type: object + additionalProperties: {} + additionalProperties: false + rules: + type: array + items: + type: object + properties: + type: + type: string + enum: + - inject + - injectWithKey + sourceType: + type: string + enum: + - journey + - step + - block + source: + type: string + target: + type: string + required: + - type + - sourceType + - source + - target + additionalProperties: false + logics: + type: array + items: + type: object + properties: + autoGeneratedId: + type: string + conditions: + type: array + items: + type: string + actions: + type: array + items: + type: string + required: + - conditions + - actions + additionalProperties: false + contextSchema: + type: array + items: + type: object + properties: + type: + type: string + paramKey: + type: string + isRequired: + type: boolean + required: + - paramKey + - type + additionalProperties: false + settings: + type: object + properties: + embedOptions: + type: object + properties: + mode: + type: string + enum: + - full-screen + - inline + lang: + type: string + enum: + - de + - en + - fr + width: + type: string + topBar: + type: boolean + scrollToTop: + type: boolean + button: + type: object + properties: + text: + type: string + nullable: true + align: + type: string + enum: + - left + - center + - right + safeModeAutomation: + type: boolean + designId: + type: string + entityId: + type: string + nullable: true + mappingsAutomationId: + type: string + templateId: + type: string + targetedCustomer: + type: string + description: + type: string + nullable: true + runtimeEntities: + type: array + items: + type: string + enum: + - ORDER + - OPPORTUNITY + filePurposes: + type: array + items: + type: string + entityTags: + type: array + items: + type: string + addressSuggestionsFileUrl: + type: string + nullable: true + additionalProperties: false + required: + - name + - steps + SearchJourneysQueryRequest: + type: object + properties: + q: + type: string + description: | + Lucene query syntax + See https://lucene.apache.org/core/2_9_4/queryparsersyntax.html ; https://www.elastic.co/guide/en/kibana/current/lucene-query.html + example: _tags:*Flex* + default: '*' + from: + type: integer + description: | + The offset of the first result to return. + See https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-from-size.html + example: 0 + default: 0 + size: + type: integer + description: | + The maximum number of results to return. + See https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-from-size.html + example: 25 + default: 25 + sort: + type: string + description: | + The sort order. Follows Lucene syntax. + example: _created_at:desc + default: _created_at:desc + SearchJourneysResponse: + type: object + properties: + hits: + type: number + description: | + The total number of hits. + example: 1 + results: + type: array + description: | + The results. + items: + type: object + properties: + _id: + type: string + description: Journey Entity ID + format: uuid + example: e0f8f8f8-f8f8-f8f8-f8f8-f8f8f8f8f8f8 + _schema: + type: string + description: Entity Schema (journey always in this case) + example: journey + _title: + type: string + description: Journey Entity Title + example: Journey Entity Title + _org: + type: string + description: Organization ID + example: '739224' + _created_at: + type: string + format: date-time + example: '2020-01-01T00:00:00.000Z' + _updated_at: + type: string + format: date-time + example: '2020-01-01T00:00:00.000Z' + _tags: + type: array + items: + type: string + example: Flex + journey_name: + type: string + description: Journey Name + example: Journey Name + journey_id: + type: string + format: uuid + description: Journey config ID + example: de7df470-253e-11ed-9174-116b8a718c0a + journey_type: + type: string + description: Journey Template + example: Sales template + design: + type: string + description: Journey Design Name + example: Design EPILOT + created_by: + type: array + items: + type: object + properties: + id: + type: string + description: User ID + example: '12345' + journey_version: + type: string + description: Journey Version + enum: + - Flex + - Widget + Journey: + allOf: + - $ref: '#/components/schemas/JourneyCreationRequest' + - $ref: '#/components/schemas/JourneyAuditInfo' + - $ref: '#/components/schemas/JourneyFeatureFlags' + JourneyFeatureFlags: + type: object + properties: + featureFlags: + type: object + additionalProperties: true + JourneyAuditInfo: + type: object + properties: + createdAt: + type: string + lastModifiedAt: + type: string + version: + type: number + revisions: + type: number + required: + - createdAt + - lastModifiedAt + - version + - revisions + securitySchemes: + EpilotAuth: + type: http + scheme: bearer + description: Authorization header with epilot OAuth2 bearer token + bearerFormat: JWT +servers: +- url: https://journey-config.sls.epilot.io + diff --git a/original_modified.yaml b/original_modified.yaml new file mode 100644 index 0000000..db2e38a --- /dev/null +++ b/original_modified.yaml @@ -0,0 +1,981 @@ +openapi: 3.0.0 +info: + title: Journey API + description: API to configure journeys + version: 1.0.0 +security: + - EpilotAuth: [] +paths: + /v1/journey/organization/{id}: + get: + operationId: getJourneysByOrgId + summary: getJourneysByOrgId + description: Get all journeys by organization id + tags: + - Journeys + parameters: + - name: id + in: path + description: Organization ID + required: true + schema: + type: string + example: '123' + - name: hydrate + in: query + description: Hydrate + required: false + schema: + type: string + example: 'true' + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/GetJourneysResponse' + /v1/journey/configuration/{id}: + get: + operationId: getJourney + summary: getJourney + description: Get journey by id + security: [] + tags: + - Journeys + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + - name: source + in: query + description: What source ID. Journey or Entity ID + required: false + schema: + type: string + - name: orgId + in: query + description: Organization ID + required: false + schema: + type: string + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/Journey' + delete: + operationId: removeJourney + summary: removeJourney + description: Remove journey by id + tags: + - Journeys + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + responses: + '200': + description: Success + content: {} + /v1/journey/products/{id}: + get: + operationId: getJourneyProducts + summary: getJourneyProducts + description: Get products available in the journey by id + security: [] + tags: + - Journeys + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + - name: source + in: query + description: What source ID. Journey or Entity ID + required: false + schema: + type: string + - name: orgId + in: query + description: Organization ID + required: false + schema: + type: string + - name: postal_code + in: query + description: Zip Code for availibility + required: false + schema: + type: string + - name: city + in: query + description: city for availibility + required: false + schema: + type: string + - name: street + in: query + description: street name for availibility + required: false + schema: + type: string + - name: street_number + in: query + description: street number for availibility + required: false + schema: + type: string + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyProductsResponse' + /v1/journey/configuration: + post: + operationId: createJourney + summary: createJourney + description: Create a Journey + tags: + - Journeys + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequest' + description: Payload + parameters: + - name: skipAutomation + in: query + description: skip creating an Automation (it takes Yn format "true, yes, 1, y") + required: false + schema: + type: string + format: Yn + example: true + responses: + '201': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/Journey' + put: + operationId: updateJourney + summary: updateJourney + description: Update a Journey + tags: + - Journeys + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequest' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyResponse' + patch: + operationId: patchUpdateJourney + summary: patchUpdateJourney + description: Update a Journey (partially / patch). Support for nested properties updates (e.g. "property[0].name"). + tags: + - Journeys + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PatchUpdateJourneyRequest' + example: + journeyId: 509cdffe-424f-457a-95c2-9708c304ce77 + name: New Journey Name + steps[0].uischema.elements[0].products: + - '123456' + - '654321' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyResponse' + /v1/journey/configuration/search: + post: + operationId: searchJourneys + summary: searchJourneys + description: Search Journeys + tags: + - Journeys + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SearchJourneysQueryRequest' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/SearchJourneysResponse' + /v2/journey/configuration: + post: + operationId: createJourneyV2 + summary: createJourneyV2 + description: Create a Journey + tags: + - Journeys V2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + description: Payload + responses: + '201': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + x-speakeasy-entity-operation: Journey#create + put: + operationId: updateJourneyV2 + summary: updateJourneyV2 + description: Update a Journey + tags: + - Journeys V2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + x-speakeasy-entity-operation: Journey#update + patch: + operationId: patchUpdateJourneyV2 + summary: patchUpdateJourneyV2 + description: Update a Journey (partially / patch). Support for nested properties updates (e.g. "property[0].name"). + tags: + - Journeys V2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PatchUpdateJourneyRequest' + example: + journeyId: 509cdffe-424f-457a-95c2-9708c304ce77 + name: New Journey Name + steps[0].uischema.elements[0].products: + - '123456' + - '654321' + description: Payload + parameters: [] + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + /v2/journey/configuration/{id}: + get: + operationId: getJourneyV2 + summary: getJourneyV2 + description: Get journey by id + tags: + - Journeys V2 + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + x-speakeasy-match: journeyId + responses: + '200': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/JourneyCreationRequestV2' + x-speakeasy-entity-operation: Journey#get + delete: + operationId: removeJourneyV2 + summary: removeJourneyV2 + description: Remove journey by id + tags: + - Journeys V2 + parameters: + - name: id + in: path + description: Journey ID + required: true + schema: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + x-speakeasy-match: journeyId + responses: + '200': + description: Success + content: {} + x-speakeasy-entity-operation: Journey#delete +components: + schemas: + GetJourneysResponse: + type: object + JourneyResponse: + type: object + properties: + createdJourney: + $ref: '#/components/schemas/Journey' + JourneyProductsResponse: + type: array + items: + type: object + properties: + type: + type: string + _schema: + type: string + _title: + type: string + name: + type: string + _id: + type: string + _org: + type: string + code: + type: string + description: + type: string + feature: + type: array + items: {} + product_images: + type: array + items: {} + legal_footnote: + type: string + product_downloads: + type: array + items: {} + price: + type: object + PatchUpdateJourneyRequest: + type: object + properties: + journeyId: + type: string + format: uuid + example: 509cdffe-424f-457a-95c2-9708c304ce77 + __lastModifiedAt: + type: string + description: If passed with value of null, the API won't modify the lastModifiedAt field on updating the journey + nullable: true + additionalProperties: true + description: | + Patch request to update a journey (journey id is required) Support for nested properties (e.g. steps[0].uischema.elements[0].products) is supported. + required: + - journeyId + JourneyCreationRequest: + type: object + properties: + journeyId: + type: string + organizationId: + type: string + brandId: + type: string + name: + type: string + steps: + type: array + items: + type: object + additionalProperties: false + properties: + showStepName: + type: boolean + nullable: true + title: + type: string + nullable: true + subTitle: + type: string + nullable: true + showStepSubtitle: + type: boolean + nullable: true + showStepper: + type: boolean + nullable: true + showStepperLabels: + type: boolean + nullable: true + hideNextButton: + type: boolean + nullable: true + name: + type: string + stepId: + type: string + schema: {} + uischema: {} + required: + - name + - schema + - uischema + design: + type: object + properties: + logoUrl: + type: string + nullable: true + theme: + type: object + additionalProperties: {} + required: + - theme + additionalProperties: false + rules: + type: array + items: + type: object + properties: + type: + type: string + enum: + - inject + - injectWithKey + sourceType: + type: string + enum: + - journey + - step + - block + source: + type: string + target: + type: string + required: + - type + - sourceType + - source + - target + additionalProperties: false + logics: + type: array + items: + type: object + properties: + autoGeneratedId: + type: string + conditions: + type: array + items: + type: string + actions: + type: array + items: + type: string + required: + - conditions + - actions + additionalProperties: false + contextSchema: + type: array + items: + type: object + properties: + type: + type: string + paramKey: + type: string + isRequired: + type: boolean + required: + - paramKey + - type + additionalProperties: false + settings: + type: object + properties: + embedOptions: + type: object + properties: + mode: + type: string + enum: + - full-screen + - inline + lang: + type: string + enum: + - de + - en + - fr + width: + type: string + topBar: + type: boolean + scrollToTop: + type: boolean + button: + type: object + properties: + text: + type: string + nullable: true + align: + type: string + enum: + - left + - center + - right + safeModeAutomation: + type: boolean + designId: + type: string + templateId: + type: string + entityId: + type: string + nullable: true + mappingsAutomationId: + type: string + targetedCustomer: + type: string + description: + type: string + nullable: true + organizationSettings: + type: object + additionalProperties: + type: boolean + nullable: true + publicToken: + type: string + nullable: true + runtimeEntities: + type: array + items: + type: string + enum: + - ORDER + - OPPORTUNITY + filePurposes: + type: array + items: + type: string + entityTags: + type: array + items: + type: string + addressSuggestionsFileUrl: + type: string + nullable: true + useNewDesign: + type: boolean + accessMode: + type: string + enum: + - PUBLIC + - PRIVATE + required: + - designId + additionalProperties: false + createdBy: + type: string + __lastModifiedAt: + type: string + description: If passed with value of null, the API won't modify the lastModifiedAt field on updating the journey + nullable: true + required: + - organizationId + - name + - steps + additionalProperties: true + JourneyCreationRequestV2: + type: object + properties: + journeyId: + type: string + brandId: + type: string + name: + type: string + steps: + type: array + items: + type: object + additionalProperties: false + properties: + showStepName: + type: boolean + nullable: true + title: + type: string + nullable: true + subTitle: + type: string + nullable: true + showStepSubtitle: + type: boolean + nullable: true + showStepper: + type: boolean + nullable: true + showStepperLabels: + type: boolean + nullable: true + hideNextButton: + type: boolean + nullable: true + name: + type: string + stepId: + type: string + schema: {} + uischema: {} + required: + - name + - schema + - uischema + design: + type: object + properties: + logoUrl: + type: string + nullable: true + theme: + type: object + additionalProperties: {} + additionalProperties: false + rules: + type: array + items: + type: object + properties: + type: + type: string + enum: + - inject + - injectWithKey + sourceType: + type: string + enum: + - journey + - step + - block + source: + type: string + target: + type: string + required: + - type + - sourceType + - source + - target + additionalProperties: false + logics: + type: array + items: + type: object + properties: + autoGeneratedId: + type: string + conditions: + type: array + items: + type: string + actions: + type: array + items: + type: string + required: + - conditions + - actions + additionalProperties: false + contextSchema: + type: array + items: + type: object + properties: + type: + type: string + paramKey: + type: string + isRequired: + type: boolean + required: + - paramKey + - type + additionalProperties: false + settings: + type: object + properties: + embedOptions: + type: object + properties: + mode: + type: string + enum: + - full-screen + - inline + lang: + type: string + enum: + - de + - en + - fr + width: + type: string + topBar: + type: boolean + scrollToTop: + type: boolean + button: + type: object + properties: + text: + type: string + nullable: true + align: + type: string + enum: + - left + - center + - right + safeModeAutomation: + type: boolean + designId: + type: string + entityId: + type: string + nullable: true + mappingsAutomationId: + type: string + templateId: + type: string + targetedCustomer: + type: string + description: + type: string + nullable: true + runtimeEntities: + type: array + items: + type: string + enum: + - ORDER + - OPPORTUNITY + filePurposes: + type: array + items: + type: string + entityTags: + type: array + items: + type: string + addressSuggestionsFileUrl: + type: string + nullable: true + additionalProperties: false + required: + - name + - steps + x-speakeasy-entity: Journey + SearchJourneysQueryRequest: + type: object + properties: + q: + type: string + description: | + Lucene query syntax + See https://lucene.apache.org/core/2_9_4/queryparsersyntax.html ; https://www.elastic.co/guide/en/kibana/current/lucene-query.html + example: _tags:*Flex* + default: '*' + from: + type: integer + description: | + The offset of the first result to return. + See https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-from-size.html + example: 0 + default: 0 + size: + type: integer + description: | + The maximum number of results to return. + See https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-from-size.html + example: 25 + default: 25 + sort: + type: string + description: | + The sort order. Follows Lucene syntax. + example: _created_at:desc + default: _created_at:desc + SearchJourneysResponse: + type: object + properties: + hits: + type: number + description: | + The total number of hits. + example: 1 + results: + type: array + description: | + The results. + items: + type: object + properties: + _id: + type: string + description: Journey Entity ID + format: uuid + example: e0f8f8f8-f8f8-f8f8-f8f8-f8f8f8f8f8f8 + _schema: + type: string + description: Entity Schema (journey always in this case) + example: journey + _title: + type: string + description: Journey Entity Title + example: Journey Entity Title + _org: + type: string + description: Organization ID + example: '739224' + _created_at: + type: string + format: date-time + example: '2020-01-01T00:00:00.000Z' + _updated_at: + type: string + format: date-time + example: '2020-01-01T00:00:00.000Z' + _tags: + type: array + items: + type: string + example: Flex + journey_name: + type: string + description: Journey Name + example: Journey Name + journey_id: + type: string + format: uuid + description: Journey config ID + example: de7df470-253e-11ed-9174-116b8a718c0a + journey_type: + type: string + description: Journey Template + example: Sales template + design: + type: string + description: Journey Design Name + example: Design EPILOT + created_by: + type: array + items: + type: object + properties: + id: + type: string + description: User ID + example: '12345' + journey_version: + type: string + description: Journey Version + enum: + - Flex + - Widget + Journey: + allOf: + - $ref: '#/components/schemas/JourneyCreationRequest' + - $ref: '#/components/schemas/JourneyAuditInfo' + - $ref: '#/components/schemas/JourneyFeatureFlags' + JourneyFeatureFlags: + type: object + properties: + featureFlags: + type: object + additionalProperties: true + JourneyAuditInfo: + type: object + properties: + createdAt: + type: string + lastModifiedAt: + type: string + version: + type: number + revisions: + type: number + required: + - createdAt + - lastModifiedAt + - version + - revisions + securitySchemes: + EpilotAuth: + type: http + scheme: bearer + description: Authorization header with epilot OAuth2 bearer token + bearerFormat: JWT +servers: + - url: https://journey-config.sls.epilot.io +x-speakeasy-retries: + strategy: backoff + backoff: + initialInterval: 5000 # 5 seconds + maxInterval: 60000 # 60 seconds + maxElapsedTime: 3600000 # 5 minutes + exponent: 1.5 + statusCodes: + - 5XX + retryConnectionErrors: true diff --git a/overlay.yaml b/overlay.yaml index 8cd8fb1..1975d22 100644 --- a/overlay.yaml +++ b/overlay.yaml @@ -60,7 +60,9 @@ actions: remove: true - target: $["components"]["schemas"]["JourneyCreationRequestV2"]["properties"]["revisions"] remove: true - - target: $["components"]["schemas"]["JourneyCreationRequestV2"]["properties"]["settings"]["properties"]["entityId"] - remove: true + # - target: $["components"]["schemas"]["JourneyCreationRequestV2"]["properties"]["settings"]["properties"]["entityId"] + # remove: true - target: $["paths"]["/v2/journey/configuration"]["post"]["parameters"] remove: true + - target: $["paths"]["/v2/journey/configuration/{id}"]["get"]["security"] + remove: true diff --git a/tools/tools.go b/tools/tools.go index 4f42a8c..08da0fd 100644 --- a/tools/tools.go +++ b/tools/tools.go @@ -1,4 +1,4 @@ -// Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. +// Code generated by Speakeasy (https://speakeasyapi.com). DO NOT EDIT. //go:build tools