Skip to content

Переработана модель содержимого формы - #674

Merged
theshadowco merged 2 commits into
developfrom
feature/readFormData_v3
Jul 31, 2026
Merged

Переработана модель содержимого формы#674
theshadowco merged 2 commits into
developfrom
feature/readFormData_v3

Conversation

@theshadowco

@theshadowco theshadowco commented Jul 30, 2026

Copy link
Copy Markdown
Member

Описание

Переработана модуль содержимого формы (formData)

  • новая иерархия визуальных элементов форм
  • переработаны комнады, атрибуты и параметры формы
  • переименован класс обработчиков
  • доработано чтение
  • добавлены новые методы в модель formData
  • исправлены ошибки чтения

Связанные задачи

Closes #648
Closes #649
Closes #650
Closes #651
Closes #657 - кроме контекстного меню
Closes #665
Closes #666

Чеклист

Общие

  • Ветка PR обновлена из develop
  • Отладочные, закомментированные и прочие, не имеющие смысла участки кода удалены
  • Изменения покрыты тестами
  • Обязательные действия перед коммитом выполнены (запускал команду gradlew precommit)

Дополнительно

Summary by CodeRabbit

  • New Features

    • Added richer form support, including fields, groups, tables, buttons, decorations, commands, parameters, and event handlers.
    • Added recursive element access and flattened attribute and event-handler lookups.
    • Improved Designer and EDT form parsing, including additional standard attributes and value types.
    • Added support for command display modes and field fill-checking options.
  • Bug Fixes

    • Improved handling of repeated reader values and form attribute conversion.
    • Updated dependency support and recognized additional value-type aliases.

- новая иерархия визуальных элементов форм
- переработаны комнады, атрибуты и параметры формы
- переименован класс обработчиков
- доработано чтение
- добавлены новые методы в модель formData
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The form storage API now models typed elements, nested attributes, event handlers, commands, and parameters. Designer and EDT readers resolve these models through remapped XML conversion, while flattening utilities and tests were updated for the new structure.

Changes

Form model overhaul

Layer / File(s) Summary
Typed form model contracts
src/main/java/com/github/_1c_syntax/bsl/mdo/storage/FormData.java, src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/*, src/main/java/com/github/_1c_syntax/bsl/mdo/support/*
Introduces typed form elements, event handlers, commands, parameters, nested attributes, supporting interfaces, and new enum values.
Managed form storage and flattening
src/main/java/com/github/_1c_syntax/bsl/mdo/storage/ManagedFormData.java, src/main/java/com/github/_1c_syntax/bsl/mdo/storage/EmptyFormData.java, src/main/java/com/github/_1c_syntax/bsl/mdo/utils/LazyLoader.java
Replaces item collections with element collections and adds flattened element, attribute, and event-handler views.
Form reader resolution and conversion
src/main/java/com/github/_1c_syntax/bsl/reader/common/context/*, src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/*, src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/*
Updates class resolution, XML node remapping, column merging, and converters for typed form elements, commands, parameters, attributes, and event handlers.
Reader type and converter support
src/main/java/com/github/_1c_syntax/bsl/reader/common/context/std_attributes/*, src/main/java/com/github/_1c_syntax/bsl/reader/common/converter/*, src/main/java/com/github/_1c_syntax/bsl/reader/common/xstream/*
Adds standard attributes, a value-type alias, and XStream enum conversion support.
Fixtures, tests, and build alignment
src/test/java/com/github/_1c_syntax/bsl/mdo/storage/form/*, src/test/java/com/github/_1c_syntax/bsl/test_utils/Fixtures.java, build.gradle.kts
Adds form parsing coverage, updates fixture omissions and existing assertions, and upgrades bsl-common-library to 0.12.4.

Estimated code review effort: 5 (Critical) | ~120 minutes

Sequence Diagram(s)

sequenceDiagram
  participant XML
  participant FormElementConverter
  participant FormElementReaderContext
  participant Unmarshaller
  participant ManagedFormData
  XML->>FormElementConverter: provide form element node
  FormElementConverter->>FormElementReaderContext: resolve element type
  FormElementConverter->>Unmarshaller: unmarshal child nodes
  Unmarshaller->>FormElementReaderContext: apply remapped fields
  FormElementReaderContext->>ManagedFormData: build typed element data
Loading

Possibly related PRs

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Out of Scope Changes check ⚠️ Warning The PR also changes accounting-register standard attributes and a value-type alias, which are unrelated to the form-model objectives. Split the accounting-register and converter tweaks into a separate PR, or link them to an issue that explicitly requires them.
Docstring Coverage ⚠️ Warning Docstring coverage is 21.43% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title is concise and accurately summarizes the main change: a redesign of the form content model.
Linked Issues check ✅ Passed The form model rewrite covers events, commands, parameters, main attributes, element hierarchy, dendrogram fields, and nested columns as requested.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/readFormData_v3

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sonarqubecloud

Copy link
Copy Markdown

@github-actions

github-actions Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Test Results

  540 files  + 12    540 suites  +12   13m 5s ⏱️ + 1m 17s
1 365 tests + 82  1 362 ✅ + 82   3 💤 ±0  0 ❌ ±0 
7 878 runs  +156  7 860 ✅ +156  18 💤 ±0  0 ❌ ±0 

Results for commit 433bd5a. ± Comparison against base commit 0152f2b.

♻️ This comment has been updated with latest results.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
src/main/java/com/github/_1c_syntax/bsl/reader/common/context/AbstractReaderContext.java (1)

157-183: 🚀 Performance & Scalability | 🟠 Major | ⚡ Quick win

Unconditional list copy on every accumulation — quadratic-time hot path.

Once existing becomes a List (after first promotion via List.of(existing)), every subsequent call still does new ArrayList<>((List<Object>) existingList) before appending, instead of mutating the already-mutable list in place. Since setValue is invoked for every XML field on the hot read path (elements, attributes, columns, event handlers, etc.), accumulating n values under one key becomes O(n) per call / O(n²) total, versus the prior direct-cast-and-mutate approach.

⚡ Proposed fix: copy only on first promotion, mutate afterwards
       cache.compute(key, (String k, Object existing) -> {
-        if(existing != null && !(existing instanceof List<?>) && !existing.equals(value)) {
-          existing = List.of(existing);
-        }
-
-        if (existing instanceof List<?> existingList) {
-          `@SuppressWarnings`("unchecked")
-          var list = new ArrayList<>((List<Object>) existingList);
+        if (existing != null && !(existing instanceof List<?>) && !existing.equals(value)) {
+          var list = new ArrayList<>();
+          list.add(existing);
+          existing = list;
+        }
+
+        if (existing instanceof List<?> existingList) {
+          `@SuppressWarnings`("unchecked")
+          var list = (List<Object>) existingList;
           if (value instanceof List<?> valueList) {
             list.addAll(valueList);
           } else {
             list.add(value);
           }
           return list;

The correctness fix itself (promoting a differing scalar into a list instead of silently overwriting it) looks like a legitimate improvement over the prior behavior.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@src/main/java/com/github/_1c_syntax/bsl/reader/common/context/AbstractReaderContext.java`
around lines 157 - 183, Update setValue’s cache.compute accumulation so existing
mutable lists are appended to in place instead of copied on every call. Only
create a new mutable list when promoting an existing scalar or when the incoming
value is itself a list, while preserving the differing-scalar promotion behavior
and list accumulation semantics.
🧹 Nitpick comments (4)
src/test/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormElementTest.java (1)

211-318: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

Consider a lighter-weight fixture format for the count matrices.

The custom CLASS_MATRIX_TXT/TYPE_MATRIX_TXT text blocks plus hand-rolled parseCsvColumn add a fair amount of custom parsing logic for what is essentially tabular test data. A @MethodSource returning explicit Map.of(...) per file, or an external CSV/JSON resource loaded via existing test utilities, would reduce the bespoke parsing surface and be easier to maintain as rows are added.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@src/test/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormElementTest.java`
around lines 211 - 318, Replace the custom CLASS_MATRIX_TXT and TYPE_MATRIX_TXT
text blocks and parseCsvColumn helper with a lighter-weight fixture
representation, preferably explicit per-file Map.of(...) values in the
formFileProvider MethodSource or an existing CSV/JSON test resource utility.
Preserve the current per-file class/type counts and both EDT/Designer argument
variants.
src/test/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormItemsTest.java (1)

140-148: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

No positive-path coverage for the new key-parameter flag.

All three asserted parameters have isKeyParameter() == false. The PR explicitly introduces the "признак ключевого параметра" (key-parameter flag), but no test in this file (or FormElementTest) verifies the true case, leaving this new API surface unverified.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/test/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormItemsTest.java`
around lines 140 - 148, The parameter assertions in FormItemsTest only cover
false for isKeyParameter(), so add positive-path coverage for a parameter marked
as a key parameter. Extend the relevant form fixture or test setup to include a
key parameter, then assert its name and that isKeyParameter() returns true; also
add equivalent coverage in FormElementTest if that is where the new flag is
exercised.
src/main/java/com/github/_1c_syntax/bsl/reader/common/context/FormElementReaderContext.java (1)

156-197: 🎯 Functional Correctness | 🔵 Trivial | 💤 Low value

Handle unmatched additional columns explicitly.

The current logic drops dotted columns when no exact suffix match is found. That may be intentional, but add a diagnostic/log branch when an additional column is not merged so the absence is not silent.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@src/main/java/com/github/_1c_syntax/bsl/reader/common/context/FormElementReaderContext.java`
around lines 156 - 197, Update mergeAdditionalColumns to detect when each addCol
has no matching regular column and emit a diagnostic/log message for that
unmatched additional column. Preserve the existing merge behavior for exact
suffix matches and ensure unmatched dotted columns are reported rather than
silently ignored.
src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormParameterCommandConverter.java (1)

32-34: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Document the new public converter types.

  • src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormParameterCommandConverter.java#L32-L34: add class Javadoc describing Designer command/parameter conversion.
  • src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/FormParameterCommandConverter.java#L31-L32: add corresponding EDT converter Javadoc.

As per coding guidelines, update Javadoc documentation when changing public API.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormParameterCommandConverter.java`
around lines 32 - 34, Add class-level Javadoc to FormParameterCommandConverter
in
src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormParameterCommandConverter.java
covering Designer command/parameter conversion, and add corresponding
class-level Javadoc to FormParameterCommandConverter in
src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/FormParameterCommandConverter.java.
Make no other changes.

Source: Coding guidelines

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormCommand.java`:
- Around line 80-84: Update CommandRepresentation.valueByName so each recognized
branch returns the resolved result after the null check instead of
unconditionally returning AUTO, preserving AUTO only for unknown or absent
names.

In
`@src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormDataPathOwner.java`:
- Around line 27-31: Update the getDataPath() declaration in FormDataPathOwner
to return `@NonNull` String, importing org.jspecify.annotations.NonNull, so the
public API explicitly declares that data paths are never null.

In
`@src/main/java/com/github/_1c_syntax/bsl/mdo/support/CommandRepresentation.java`:
- Around line 61-67: Update CommandRepresentation.valueByName in
src/main/java/com/github/_1c_syntax/bsl/mdo/support/CommandRepresentation.java:61-67
to return the resolved result when present and AUTO only when the lookup is
null; apply the same result-preserving fallback in FillChecking.valueByName at
src/main/java/com/github/_1c_syntax/bsl/mdo/support/FillChecking.java:59-65,
returning DONT_CHECK only for unknown values.

In
`@src/main/java/com/github/_1c_syntax/bsl/reader/common/context/FormElementReaderContext.java`:
- Around line 57-62: The raw-node constructor FormElementReaderContext(String,
HierarchicalStreamReader) must not pass a null class to
TransformationUtils.builder. Resolve the lowercased element name with
CLASSES.getOrDefault(..., DEFAULT_CLASS_FORM_ELEMENT) before assigning realClass
and creating the builder; only add a singular additionalcolumns mapping if that
key specifically requires unmarshalling without a parent type.

In
`@src/main/java/com/github/_1c_syntax/bsl/reader/common/context/std_attributes/StdAtrInfo.java`:
- Around line 110-132: Update the extended-dimension constants in StdAtrInfo so
EXT_DIMENSION_TYPE, EXT_DIMENSION_1 through EXT_DIMENSION_3, and their TYPE
variants no longer reuse computeValueType or the shared "type" cache key;
register each with distinct typed computation or explicit placeholder behavior.
Remove EXT_DIMENSION_4, EXT_DIMENSION_TYPE_4, EXT_DIMENSION_5, and
EXT_DIMENSION_TYPE_5 if they are not valid accounting-register attributes.

In
`@src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormElementConverter.java`:
- Around line 49-77: The form-element conversion currently lets Integer.parseInt
in the element conversion flow throw for malformed id attributes, aborting the
whole XML document. Update the converter method containing
FormElementReaderContext creation and id assignment to safely handle non-numeric
ids using the established FormAttributeConverter behavior, while preserving
valid numeric id handling; alternatively enforce and document a numeric-id
contract consistently for every FormElement type.

---

Outside diff comments:
In
`@src/main/java/com/github/_1c_syntax/bsl/reader/common/context/AbstractReaderContext.java`:
- Around line 157-183: Update setValue’s cache.compute accumulation so existing
mutable lists are appended to in place instead of copied on every call. Only
create a new mutable list when promoting an existing scalar or when the incoming
value is itself a list, while preserving the differing-scalar promotion behavior
and list accumulation semantics.

---

Nitpick comments:
In
`@src/main/java/com/github/_1c_syntax/bsl/reader/common/context/FormElementReaderContext.java`:
- Around line 156-197: Update mergeAdditionalColumns to detect when each addCol
has no matching regular column and emit a diagnostic/log message for that
unmatched additional column. Preserve the existing merge behavior for exact
suffix matches and ensure unmatched dotted columns are reported rather than
silently ignored.

In
`@src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormParameterCommandConverter.java`:
- Around line 32-34: Add class-level Javadoc to FormParameterCommandConverter in
src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormParameterCommandConverter.java
covering Designer command/parameter conversion, and add corresponding
class-level Javadoc to FormParameterCommandConverter in
src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/FormParameterCommandConverter.java.
Make no other changes.

In
`@src/test/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormElementTest.java`:
- Around line 211-318: Replace the custom CLASS_MATRIX_TXT and TYPE_MATRIX_TXT
text blocks and parseCsvColumn helper with a lighter-weight fixture
representation, preferably explicit per-file Map.of(...) values in the
formFileProvider MethodSource or an existing CSV/JSON test resource utility.
Preserve the current per-file class/type counts and both EDT/Designer argument
variants.

In `@src/test/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormItemsTest.java`:
- Around line 140-148: The parameter assertions in FormItemsTest only cover
false for isKeyParameter(), so add positive-path coverage for a parameter marked
as a key parameter. Extend the relevant form fixture or test setup to include a
key parameter, then assert its name and that isKeyParameter() returns true; also
add equivalent coverage in FormElementTest if that is where the new flag is
exercised.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 7fbd08b6-b011-4922-a7f5-a276b2dc7441

📥 Commits

Reviewing files that changed from the base of the PR and between 0152f2b and 433bd5a.

⛔ Files ignored due to path filters (60)
  • src/test/resources/fixtures/mdclasses/AccountingRegisters.РегистрБухгалтерии1.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/Configuration.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/Catalog.Справочник1.Form.ФормаВыбора.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/Catalog.Справочник1.Form.ФормаСписка.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/Catalog.Справочник1.Form.ФормаЭлемента.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/CommonForm.Форма.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/DataProcessor.Обработка1.Form.ЖурналРегистрации.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/DataProcessor.Обработка1.Form.Форма.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/Document.Документ1.Form.ФормаВыбора.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/Document.Документ1.Form.ФормаДокумента.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/Document.Документ1.Form.ФормаСписка.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/ExternalDataSource.ТекущаяСУБД.Table.ИнформацияОбОшибках.Form.ListForm.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses/formdata/ExternalDataSource.ТекущаяСУБД.Table.ИнформацияОбОшибках.Form.RecordForm.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses_3_25/Configuration.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/mdclasses_3_27/Configuration.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Catalog.ВерсииФайлов.Form.ВерсииФайла.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Catalog.ВерсииФайлов.Form.ФормаВыбора.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Catalog.ВерсииФайлов.Form.ФормаСписка.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Catalog.Заметки.Form.ВсеЗаметки.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Catalog.Заметки.Form.ЗаметкиПоПредмету.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Catalog.Заметки.Form.МоиЗаметки.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Catalog.Заметки.Form.ФормаГруппы.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Catalog.Заметки.Form.ФормаЭлемента.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/CommonForm.Вопрос.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Document.Анкета.Form.ФормаДокумента.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/Document.Анкета.Form.ФормаСписка.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/InformationRegister.СклоненияПредставленийОбъектов.Form.ФормаЗаписи.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_1/formdata/InformationRegister.ЭлектронныеПодписи.Form.ОбоснованиеДостоверностиПодписи.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.ВерсииФайлов.Form.ВерсииФайла.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.ВерсииФайлов.Form.ФормаВыбора.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.ВерсииФайлов.Form.ФормаСписка.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.Заметки.Form.ВсеЗаметки.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.Заметки.Form.ЗаметкиПоПредмету.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.Заметки.Form.МоиЗаметки.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.Заметки.Form.ФормаГруппы.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.Заметки.Form.ФормаЭлемента.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.SMSРассылкаПаролей.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.ПараметрыFTP.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.ПаролиШифрование.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.ПовторнаяРассылкаОтчетов.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.ПолучателиРассылки.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.ПредварительныйПросмотрПисьма.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.Предупреждение.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.ФормаВыбораГруппы.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.ФормаГруппы.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.ФормаСписка.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Catalog.РассылкиОтчетов.Form.ФормаЭлемента.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/CommonForm.Вопрос.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/CommonForm.ФормаНастроекОтчета.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/CommonForm.ФормаОтчета.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Document.Анкета.Form.ФормаДокумента.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/Document.Анкета.Form.ФормаСписка.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/DocumentJournal.Взаимодействия.Form.ВыборТипаПредмета.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/DocumentJournal.Взаимодействия.Form.НастройкиРаботыСПочтой.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/DocumentJournal.Взаимодействия.Form.ПараметрыЭлектронногоПисьма.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/DocumentJournal.Взаимодействия.Form.ПечатьЭлектронногоПисьма.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/DocumentJournal.Взаимодействия.Form.ФормаСписка.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/DocumentJournal.Взаимодействия.Form.ФормаСпискаПараметрическая.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/InformationRegister.СклоненияПредставленийОбъектов.Form.ФормаЗаписи.json is excluded by !src/test/resources/**
  • src/test/resources/fixtures/ssl_3_2/formdata/InformationRegister.ЭлектронныеПодписи.Form.ОбоснованиеДостоверностиПодписи.json is excluded by !src/test/resources/**
📒 Files selected for processing (49)
  • build.gradle.kts
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/EmptyFormData.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/FormData.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/ManagedFormData.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormAddition.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormAttribute.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormButton.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormCommand.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormDataPathOwner.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormDecoration.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormElement.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormElementOwner.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormElementType.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormEventHandler.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormEventHandlerOwner.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormField.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormGroup.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormItem.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormParameter.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormTable.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormUnknown.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/support/CommandRepresentation.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/support/FillChecking.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/support/UseMode.java
  • src/main/java/com/github/_1c_syntax/bsl/mdo/utils/LazyLoader.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/common/context/AbstractReaderContext.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/common/context/FormElementReaderContext.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/common/context/std_attributes/StdAtrInfo.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/common/context/std_attributes/StdAttributeFiller.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/common/converter/ValueTypeConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/common/xstream/ExtendXStream.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormAttributeConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormElementConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormEventHandlerConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/FormParameterCommandConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/Unmarshaller.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/FormAttributeConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/FormElementConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/FormEventHandlerConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/FormParameterCommandConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/ManagedFormDataConverter.java
  • src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/Unmarshaller.java
  • src/test/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationTest.java
  • src/test/java/com/github/_1c_syntax/bsl/mdclasses/ExternalReportTest.java
  • src/test/java/com/github/_1c_syntax/bsl/mdo/CommonFormTest.java
  • src/test/java/com/github/_1c_syntax/bsl/mdo/children/ObjectFormTest.java
  • src/test/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormElementTest.java
  • src/test/java/com/github/_1c_syntax/bsl/mdo/storage/form/FormItemsTest.java
  • src/test/java/com/github/_1c_syntax/bsl/test_utils/Fixtures.java

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment