-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modification of forms #69
Conversation
Warning Rate Limit Exceeded@denisushakov has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 20 minutes and 14 seconds before requesting another review. How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. WalkthroughThis update enhances form modification functionality in 1C:Enterprise 8 by introducing functions to verify and handle event handlers across forms. It also includes the addition of new common modules for configuration modification, streamlining form operations and event handling. Changes
Possibly related issues
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 10
Out of diff range and nitpick comments (1)
docs/МодификацияФорм.md (1)
22-49
: Replace hard tabs with spaces for consistency.Consider replacing hard tabs with spaces in the code examples to maintain consistency with the rest of the document's formatting.
Review Details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (8)
- docs/МодификацияФорм.md (2 hunks)
- src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп.xml (1 hunks)
- src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп.xml (1 hunks)
- src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl (1 hunks)
- src/cf/Configuration.xml (1 hunks)
Files skipped from review due to trivial changes (2)
- src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп.xml
- src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп.xml
Additional Context Used
LanguageTool (1)
docs/МодификацияФорм.md (1)
Near line 5: Прилагательное не согласуется с существительным по падежу.
Context: .... Также использовать в случае изменения типовых форма. - Общий модуль **__МодификацияКонфигу...
GitHub Check Runs (1)
1C: Project SubSystems Library Sonarqube Results success (15)
src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl: [warning] 64-64: src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl#L64
Переместите неэкспортный метод "СуществуетОбработчикСобытия" из области "ПрограммныйИнтерфейс"
src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl: [warning] 72-72: src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl#L72
Синтаксическая конструкция вида "Если...Тогда...ИначеЕсли..." должна содержать ветвь "Иначе".
src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl: [warning] 64-64: src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl#L64
Метод "СуществуетОбработчикСобытия" не вызывается в теле модуля
src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl: [warning] 21-21: src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl#L21
Переместите методы в Служебный Программный интерфейс
src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl: [notice] 23-23: src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl#L23
Добавьте описание метода программного интерфейса
src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl: [notice] 35-35: src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl#L35
Добавьте описание метода программного интерфейса
src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl: [notice] 47-47: src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl#L47
Добавьте описание метода программного интерфейса
src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl: [warning] 540-540: src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl#L540
Переместите неэкспортный метод "СуществуетОбработчикСобытия" из области "ПрограммныйИнтерфейс"
src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl: [warning] 551-551: src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl#L551
Синтаксическая конструкция вида "Если...Тогда...ИначеЕсли..." должна содержать ветвь "Иначе".
src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl: [warning] 540-540: src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl#L540
Метод "СуществуетОбработчикСобытия" не вызывается в теле модуля
src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl: [warning] 21-21: src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl#L21
Переместите методы в Служебный Программный интерфейс
src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl: [notice] 23-23: src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl#L23
Добавьте описание метода программного интерфейса
src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl: [notice] 35-35: src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl#L35
Добавьте описание метода программного интерфейса
src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl: [notice] 48-48: src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl#L48
Добавьте описание метода программного интерфейса
src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl: [notice] 60-60: src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl#L60
Добавьте описание метода программного интерфейса
Additional comments not posted (4)
src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl (1)
35-45
: Proper implementation ofСписокФормПриСозданииНаСервере
.This function correctly adds specific forms to the list, aligning with its intended functionality.
src/cf/Configuration.xml (2)
283-283
: Ensure the newly added module__МодификацияКонфигурацииКлиентПовтИсп
is correctly integrated and referenced in other parts of the system.Verification successful
The verification process aimed to ensure that the newly added module
__МодификацияКонфигурацииКлиентПовтИсп
is correctly integrated and referenced in other parts of the system. The search results from the executed script show that this module is referenced in two places:
- In the
Configuration.xml
file itself, which was expected as per the PR changes.- In a separate XML file named
__МодификацияКонфигурацииКлиентПовтИсп.xml
, which suggests that a dedicated module file exists for this new module.These findings confirm that the module is not only declared but also has a dedicated file, indicating proper integration within the system's configuration. Therefore, the integration of the module
__МодификацияКонфигурацииКлиентПовтИсп
appears to be correctly implemented.
src/cf/Configuration.xml
: Module declaration.src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп.xml
: Dedicated module file.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that the new module is referenced in other configuration files or scripts. # Test: Search for the module name in other XML and script files. Expect: At least one occurrence outside this file. rg --type xml --type sh '__МодификацияКонфигурацииКлиентПовтИсп'Length of output: 534
288-288
: Ensure the newly added module__МодификацияКонфигурацииПовтИсп
is correctly integrated and referenced in other parts of the system.Verification successful
The module
__МодификацияКонфигурацииПовтИсп
appears to be correctly integrated into the system. It is referenced in the following locations:
src/cf/Configuration.xml
src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп.xml
This confirms that the module is not only added but also utilized in another part of the system, which aligns with the requirements specified in the review comment.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that the new module is referenced in other configuration files or scripts. # Test: Search for the module name in other XML and script files. Expect: At least one occurrence outside this file. rg --type xml --type sh '__МодификацияКонфигурацииПовтИсп'Length of output: 468
src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl (1)
540-540
: Verify if the functionСуществуетОбработчикСобытия
is used within the module or elsewhere in the project. If it is unused, consider removing it or ensuring it is utilized appropriately.Verification successful
The function
СуществуетОбработчикСобытия
is indeed used within the project. It is defined in two modules and referenced in the documentation, where it is used in example code to check the existence of event handlers. This confirms that the function is actively utilized and should not be removed.
- Usage in Modules: The function is defined in both
__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl
and__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl
.- References in Documentation: The function is mentioned in
docs/МодификацияФорм.md
as part of the guidelines and examples for modifying forms, indicating its importance in the project's documentation and usage.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify if the function `СуществуетОбработчикСобытия` is called within the project. # Test: Search for the function usage. Expect: At least one occurrence. rg --type bsl $'СуществуетОбработчикСобытия'Length of output: 263
Script:
#!/bin/bash # Description: Verify if the function `СуществуетОбработчикСобытия` is called within the project. # Test: Search for the function usage. Expect: At least one occurrence. rg 'СуществуетОбработчикСобытия'Length of output: 1094
// Возвращаемое значение: | ||
// Булево - Возвращает истину, если в списке форм найдена форма | ||
// | ||
Функция СуществуетОбработчикСобытия(ИмяФормы, Обработчик = "") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider marking the function СуществуетОбработчикСобытия
as exported or moving it out of the "ПрограммныйИнтерфейс" region.
Функция СписокФормПриОткрытии() Экспорт | ||
|
||
СписокФорм = Новый Соответствие; | ||
|
||
// Добавление | ||
|
||
// КонецДобавления | ||
|
||
Возврат Новый ФиксированноеСоответствие(СписокФорм); | ||
|
||
КонецФункции |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incomplete implementation of СписокФормПриОткрытии
.
Consider adding functionality or documenting this function as a placeholder if no immediate implementation is planned.
Функция СписокФормПередЗаписью() Экспорт | ||
|
||
СписокФорм = Новый Соответствие; | ||
|
||
// Добавление | ||
|
||
// КонецДобавления | ||
|
||
Возврат Новый ФиксированноеСоответствие(СписокФорм); | ||
|
||
КонецФункции |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incomplete implementation of СписокФормПередЗаписью
.
Consider adding functionality or documenting this function as a placeholder if no immediate implementation is planned.
Функция СписокФормПослеЗаписи() Экспорт | ||
|
||
СписокФорм = Новый Соответствие; | ||
|
||
// Добавление | ||
|
||
// КонецДобавления | ||
|
||
Возврат Новый ФиксированноеСоответствие(СписокФорм); | ||
|
||
КонецФункции |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incomplete implementation of СписокФормПослеЗаписи
.
Consider adding functionality or documenting this function as a placeholder if no immediate implementation is planned.
Функция СписокФормПриЧтенииНаСервере() Экспорт | ||
|
||
СписокФорм = Новый Соответствие; | ||
|
||
// Добавление | ||
|
||
// КонецДобавления | ||
|
||
Возврат Новый ФиксированноеСоответствие(СписокФорм); | ||
|
||
КонецФункции |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incomplete implementation of СписокФормПриЧтенииНаСервере
.
Consider adding functionality or documenting this function as a placeholder if no immediate implementation is planned.
Функция СписокФормПередЗаписьюНаСервере() Экспорт | ||
|
||
СписокФорм = Новый Соответствие; | ||
|
||
// Добавление | ||
|
||
// КонецДобавления | ||
|
||
Возврат Новый ФиксированноеСоответствие(СписокФорм); | ||
|
||
КонецФункции |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incomplete implementation of СписокФормПередЗаписьюНаСервере
.
Consider adding functionality or documenting this function as a placeholder if no immediate implementation is planned.
Функция СписокФормПослеЗаписиНаСервере() Экспорт | ||
|
||
СписокФорм = Новый Соответствие; | ||
|
||
// Добавление | ||
|
||
// КонецДобавления | ||
|
||
Возврат Новый ФиксированноеСоответствие(СписокФорм); | ||
|
||
КонецФункции |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incomplete implementation of СписокФормПослеЗаписиНаСервере
.
Consider adding functionality or documenting this function as a placeholder if no immediate implementation is planned.
Функция СуществуетОбработчикСобытия(ИмяФормы, Обработчик = "") | ||
|
||
Если Обработчик = "ПриОткрытии" Тогда | ||
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПриОткрытии(); | ||
ИначеЕсли Обработчик = "ПередЗаписью" Тогда | ||
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПередЗаписью(); | ||
ИначеЕсли Обработчик = "ПослеЗаписи" Тогда | ||
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПослеЗаписи(); | ||
КонецЕсли; | ||
|
||
Возврат Список.Получить(ИмяФормы) <> Неопределено; | ||
|
||
КонецФункции |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add an 'else' branch to handle unknown handlers in СуществуетОбработчикСобытия
.
+ Иначе
+ Список = Новый Соответствие;
This change ensures that the function handles cases where the handler is not recognized, preventing potential runtime errors.
Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.
Функция СуществуетОбработчикСобытия(ИмяФормы, Обработчик = "") | |
Если Обработчик = "ПриОткрытии" Тогда | |
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПриОткрытии(); | |
ИначеЕсли Обработчик = "ПередЗаписью" Тогда | |
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПередЗаписью(); | |
ИначеЕсли Обработчик = "ПослеЗаписи" Тогда | |
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПослеЗаписи(); | |
КонецЕсли; | |
Возврат Список.Получить(ИмяФормы) <> Неопределено; | |
КонецФункции | |
Функция СуществуетОбработчикСобытия(ИмяФормы, Обработчик = "") | |
Если Обработчик = "ПриОткрытии" Тогда | |
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПриОткрытии(); | |
ИначеЕсли Обработчик = "ПередЗаписью" Тогда | |
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПередЗаписью(); | |
ИначеЕсли Обработчик = "ПослеЗаписи" Тогда | |
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПослеЗаписи(); | |
Иначе | |
Список = Новый Соответствие; | |
КонецЕсли; | |
Возврат Список.Получить(ИмяФормы) <> Неопределено; | |
КонецФункции |
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
Review Details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (4)
- src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl (1 hunks)
Files skipped from review as they are similar to previous changes (2)
- src/cf/CommonModules/__МодификацияКонфигурацииКлиентПовтИсп/Ext/Module.bsl
- src/cf/CommonModules/__МодификацияКонфигурацииПовтИсп/Ext/Module.bsl
Additional Context Used
GitHub Check Runs (1)
1C: Project SubSystems Library Sonarqube Results success (2)
src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl: [warning] 72-72: src/cf/CommonModules/__МодификацияКонфигурацииКлиентПереопределяемый/Ext/Module.bsl#L72
Синтаксическая конструкция вида "Если...Тогда...ИначеЕсли..." должна содержать ветвь "Иначе".
src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl: [warning] 551-551: src/cf/CommonModules/__МодификацияКонфигурацииПереопределяемый/Ext/Module.bsl#L551
Синтаксическая конструкция вида "Если...Тогда...ИначеЕсли..." должна содержать ветвь "Иначе".
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПередЗаписью(); | ||
ИначеЕсли Обработчик = "ПослеЗаписи" Тогда | ||
Список = __МодификацияКонфигурацииКлиентПовтИсп.СписокФормПослеЗаписи(); | ||
КонецЕсли; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add an 'else' branch to handle cases where none of the conditions in the СуществуетОбработчикСобытия
function are met.
+ Иначе
+ Список = Неопределено;
Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.
КонецЕсли; | |
КонецЕсли; | |
Иначе | |
Список = Неопределено; |
Список = __МодификацияКонфигурацииПовтИсп.СписокФормПередЗаписьюНаСервере(); | ||
ИначеЕсли Обработчик = "ПослеЗаписиНаСервере" Тогда | ||
Список = __МодификацияКонфигурацииПовтИсп.СписокФормПослеЗаписиНаСервере(); | ||
КонецЕсли; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add an 'else' branch to handle cases where none of the conditions in the СуществуетОбработчикСобытия
function are met.
+ Иначе
+ Список = Неопределено;
Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.
КонецЕсли; | |
КонецЕсли; | |
Иначе | |
Список = Неопределено; |
This comment has been minimized.
This comment has been minimized.
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Summary by CodeRabbit
New Features
Documentation
Refactor