-
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
Feature/predefined id unique check 92 #118
Changes from 12 commits
d33632f
5b45f7d
a5569b1
00a86f6
86f9662
9f9300d
2bb7d32
4583ef8
675c1eb
dc2601e
223e7fe
7330b5b
3c8f9b0
020550e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -20,19 +20,23 @@ | |
|
||
#Область ОбработчикиСобытийФормы | ||
|
||
&НаКлиенте | ||
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) | ||
|
||
Если ИмяСобытия = "ОбновитьСписокПредопределенных" Тогда | ||
Элементы.Список.Обновить(); | ||
КонецЕсли; | ||
|
||
КонецПроцедуры | ||
|
||
#КонецОбласти | ||
|
||
#Область ОбработчикиКомандФормы | ||
|
||
&НаСервереБезКонтекста | ||
Процедура ЗаполнитьПредопределенныеНаСервере() | ||
пбп_ПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначения(Справочники.пбп_ИнтеграционныеПотоки); | ||
КонецПроцедуры | ||
|
||
&НаКлиенте | ||
Процедура ЗаполнитьПредопределенные(Команда) | ||
|
||
ЗаполнитьПредопределенныеНаСервере(); | ||
пбп_ПредопределенныеЗначенияКлиент.СоздатьОбновитьПредопределенныеЗначения(ЭтотОбъект); | ||
|
||
Элементы.Список.Обновить(); | ||
|
||
Comment on lines
+39
to
42
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 💡 Codebase verification Incomplete refactoring detected: Old server-side method still referenced. The method
🔗 Analysis chainVerify the completeness and security of the client-side implementation. The change from server-side to client-side processing of predefined values is a significant alteration. While this can improve performance by reducing server calls, it's crucial to ensure that all scenarios are properly handled and that there are no security implications. Please address the following points:
To assist in verifying the changes, you can run the following script to check for any remaining references to the old server-side method and to locate the implementation of the new client-side method: 🏁 Scripts executedThe following scripts were executed for the analysis: Script: #!/bin/bash
# Description: Check for references to old method and locate new method implementation
# Search for any remaining references to ЗаполнитьПредопределенныеНаСервере
echo "Checking for references to ЗаполнитьПредопределенныеНаСервере:"
rg --type bsl "ЗаполнитьПредопределенныеНаСервере"
# Locate the implementation of СоздатьОбновитьПредопределенныеЗначения
echo "Locating implementation of СоздатьОбновитьПредопределенныеЗначения:"
rg --type bsl "Процедура СоздатьОбновитьПредопределенныеЗначения"
Length of output: 695 Script: #!/bin/bash
# Description: Check for references to ЗаполнитьПредопределенныеНаСервере and locate implementation of СоздатьОбновитьПредопределенныеЗначения in .bsl files
# Search for any remaining references to ЗаполнитьПредопределенныеНаСервере in .bsl files
echo "Checking for references to ЗаполнитьПредопределенныеНаСервере in .bsl files:"
rg --glob '*.bsl' "ЗаполнитьПредопределенныеНаСервере"
# Locate the implementation of СоздатьОбновитьПредопределенныеЗначения in .bsl files
echo "Locating implementation of СоздатьОбновитьПредопределенныеЗначения in .bsl files:"
rg --glob '*.bsl' "Процедура СоздатьОбновитьПредопределенныеЗначения"
Length of output: 1138 |
||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда | ||
|
||
#Область ОбработчикиСобытий | ||
|
||
Процедура ПередЗаписью(Отказ) | ||
|
||
Если ОбменДанными.Загрузка Тогда | ||
Возврат; | ||
КонецЕсли; | ||
|
||
ДополнительныеСвойства.Вставить("ЭтоНовый", ЭтоНовый()); | ||
|
||
КонецПроцедуры | ||
|
||
Процедура ПриЗаписи(Отказ) | ||
|
||
Если ОбменДанными.Загрузка Тогда | ||
Возврат; | ||
КонецЕсли; | ||
|
||
Если Не пбп_ОбщегоНазначенияСлужебныйКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Suggestion: Use 'СуществуетСвойство' method for clarity For better readability and to directly check the existence of the Если Не ДополнительныеСвойства.СуществуетСвойство("ЭтоНовый") Тогда This makes the code more intuitive and eliminates the need for the external utility function. Apply this diff to implement the suggestion: - Если Не пбп_ОбщегоНазначенияСлужебныйКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда
+ Если Не ДополнительныеСвойства.СуществуетСвойство("ЭтоНовый") Тогда |
||
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект); | ||
КонецЕсли; | ||
|
||
КонецПроцедуры | ||
|
||
#КонецОбласти | ||
|
||
#КонецЕсли |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -20,19 +20,23 @@ | |
|
||
#Область ОбработчикиСобытийФормы | ||
|
||
&НаКлиенте | ||
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) | ||
|
||
Если ИмяСобытия = "ОбновитьСписокПредопределенных" Тогда | ||
Элементы.Список.Обновить(); | ||
КонецЕсли; | ||
|
||
КонецПроцедуры | ||
Comment on lines
+24
to
+30
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Use constants for event names to improve maintainability In the procedure You can define the event name as a constant at the module level: Перем ИмяСобытияОбновитьСписокПредопределенных;
&НаКлиенте
Процедура ПриОткрытии()
ИмяСобытияОбновитьСписокПредопределенных = "ОбновитьСписокПредопределенных";
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = ИмяСобытияОбновитьСписокПредопределенных Тогда
Элементы.Список.Обновить();
КонецЕсли;
КонецПроцедуры This approach improves readability and makes it easier to manage event names throughout the codebase. |
||
|
||
#КонецОбласти | ||
|
||
#Область ОбработчикиКомандФормы | ||
|
||
&НаСервереБезКонтекста | ||
Процедура ЗаполнитьПредопределенныеНаСервере() | ||
пбп_ПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначения(Справочники.пбп_ИнтегрируемыеСистемы); | ||
КонецПроцедуры | ||
|
||
&НаКлиенте | ||
Процедура ЗаполнитьПредопределенные(Команда) | ||
|
||
ЗаполнитьПредопределенныеНаСервере(); | ||
пбп_ПредопределенныеЗначенияКлиент.СоздатьОбновитьПредопределенныеЗначения(ЭтотОбъект); | ||
|
||
Элементы.Список.Обновить(); | ||
|
||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
| ||
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда | ||
|
||
#Область ОбработчикиСобытий | ||
|
||
Процедура ПередЗаписью(Отказ) | ||
|
||
Если ОбменДанными.Загрузка Тогда | ||
Возврат; | ||
КонецЕсли; | ||
|
||
ДополнительныеСвойства.Вставить("ЭтоНовый", ЭтоНовый()); | ||
|
||
КонецПроцедуры | ||
|
||
Процедура ПриЗаписи(Отказ) | ||
|
||
Если ОбменДанными.Загрузка Тогда | ||
Возврат; | ||
КонецЕсли; | ||
|
||
Если Не пбп_ОбщегоНазначенияСлужебныйКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда | ||
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект); | ||
КонецЕсли; | ||
|
||
КонецПроцедуры | ||
|
||
#КонецОбласти | ||
|
||
#КонецЕсли |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,30 @@ | ||
| ||
| ||
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда | ||
|
||
#Область ОбработчикиСобытий | ||
|
||
Процедура ПередЗаписью(Отказ) | ||
|
||
Если ОбменДанными.Загрузка Тогда | ||
Возврат; | ||
КонецЕсли; | ||
|
||
ДополнительныеСвойства.Вставить("ЭтоНовый", ЭтоНовый()); | ||
|
||
КонецПроцедуры | ||
|
||
Процедура ПриЗаписи(Отказ) | ||
|
||
Если ОбменДанными.Загрузка Тогда | ||
Возврат; | ||
КонецЕсли; | ||
|
||
Если Не пбп_ОбщегоНазначенияСлужебныйКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда | ||
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект); | ||
КонецЕсли; | ||
|
||
КонецПроцедуры | ||
|
||
#КонецОбласти | ||
|
||
#КонецЕсли |
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.
🛠️ Refactor suggestion
Consider adding error handling for the list update
While updating the list with
Элементы.Список.Обновить();
, it's advisable to include error handling to manage potential exceptions that may occur during the update process. This ensures robustness and improves user experience in case of unexpected issues.Apply this diff to add basic error handling:
📝 Committable suggestion