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
Обновление версии конфигурации поставщика на 3.1.9.238 #1
Conversation
Страница релиза: https://releases.1c.ru/version_files?nick=SSL31&ver=3.1.9.238 Версии для обновления:
WalkthroughThe updates encompass a broad shift towards asynchronous operations, enhanced error handling, and the introduction of new functionalities across various modules. Changes include the addition of new procedures, modification of existing ones, and refinements in the logic for handling electronic signatures, certificate properties, and data encryption. The adjustments suggest a focus on improving performance, security, and user experience in handling digital certificates and data processing. Changes
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 X ? TipsChat with CodeRabbit Bot (
|
@coderabbitai review |
1 similar comment
@coderabbitai review |
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.
Review Status
Actionable comments generated: 22
Configuration used: CodeRabbit UI
Files ignored due to filter (69)
- description.json
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Ext/Form.xml
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Ext/Form.xml
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатовДляШифрования/Ext/Form.xml
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/УстановкаСертификата/Ext/Form.xml
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Ext/Form.xml
- src/cf/CommonForms/ПоддерживаемыеКлиентскиеПриложения/Ext/Help.xml
- src/cf/CommonForms/Сертификат/Ext/Form.xml
- src/cf/CommonTemplates/КомпонентаСканированияДокументов_3_0_1_1021/Ext/Template.bin
- src/cf/CommonTemplates/КомпонентаСканированияДокументов_3_0_1_1027.xml
- src/cf/CommonTemplates/КомпонентаСканированияДокументов_3_0_1_1027/Ext/Template.bin
- src/cf/Configuration.xml
- src/cf/DataProcessors/Сканирование/Forms/НастройкаСканирования/Ext/Form.xml
- src/cf/Ext/ParentConfigurations.bin
- src/cf/InformationRegisters/ДополнительныеАдресныеСведения.xml
- src/cf/Roles/АдминистраторСистемы/Ext/Rights.xml
- src/cf/Roles/БазовыеПраваБСП/Ext/Rights.xml
- src/cf/Roles/БазовыеПраваВнешнихПользователейБСП/Ext/Rights.xml
- src/cf/Roles/ВыполнениеСинхронизацииДанных/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеАдресныхСведений/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеАктовОбУничтоженииПерсональныхДанных/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеБанков/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеВариантовОтчетов/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеВзаимодействий/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеВнешнихПользователей/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеДатЗапретаЗагрузки/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеДатЗапретаИзменения/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеДополнительныхОтчетовИОбработок/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеДополнительныхРеквизитовИСведений/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеЗаданий/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеЗаметок/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеКалендарныхГрафиков/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеЛичныхВариантовОтчетов/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеМашиночитаемыхДоверенностей/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеОтветовНаВопросыАнкет/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеПапокИФайлов/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеПапокИФайловВнешнимиПользователями/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеРассылокОтчетов/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеРолейИсполнителей/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеУчетныхЗаписейСерверовDSS/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеУчетныхЗаписейЭлектроннойПочты/Ext/Rights.xml
- src/cf/Roles/ДобавлениеИзменениеШаблоновАнкет/Ext/Rights.xml
- src/cf/Roles/ИзменениеВыполнениеЗадач/Ext/Rights.xml
- src/cf/Roles/ИзменениеДополнительныхСведений/Ext/Rights.xml
- src/cf/Roles/ИзменениеМакетовПечатныхФорм/Ext/Rights.xml
- src/cf/Roles/ИзменениеСостоянийОригиналовПервичныхДокументов/Ext/Rights.xml
- src/cf/Roles/ИзменениеУчастниковГруппДоступа/Ext/Rights.xml
- src/cf/Roles/ИспользованиеОбработкиТекущиеДела/Ext/Rights.xml
- src/cf/Roles/НастройкаИОценкаПроизводительности/Ext/Rights.xml
- src/cf/Roles/ПолныеПрава/Ext/Rights.xml
- src/cf/Roles/ПросмотрЖурналаРегистрации/Ext/Rights.xml
- src/cf/Roles/ПросмотрОписанияИзмененийПрограммы/Ext/Rights.xml
- src/cf/Roles/УдаленныйДоступOData/Ext/Rights.xml
- src/cf/Roles/УдаленныйДоступОбменДаннымиВМоделиСервиса/Ext/Rights.xml
- src/cf/Roles/ЧтениеАктовОбУничтоженииПерсональныхДанных/Ext/Rights.xml
- src/cf/Roles/ЧтениеВариантовОтчетов/Ext/Rights.xml
- src/cf/Roles/ЧтениеВнешнихПользователей/Ext/Rights.xml
- src/cf/Roles/ЧтениеДанныхСервисаDSS/Ext/Rights.xml
- src/cf/Roles/ЧтениеДатЗапретаЗагрузки/Ext/Rights.xml
- src/cf/Roles/ЧтениеДатЗапретаИзменения/Ext/Rights.xml
- src/cf/Roles/ЧтениеДополнительныхОтчетовИОбработок/Ext/Rights.xml
- src/cf/Roles/ЧтениеДополнительныхСведений/Ext/Rights.xml
- src/cf/Roles/ЧтениеЗаданий/Ext/Rights.xml
- src/cf/Roles/ЧтениеЗадач/Ext/Rights.xml
- src/cf/Roles/ЧтениеМашиночитаемыхДоверенностей/Ext/Rights.xml
- src/cf/Roles/ЧтениеОтветовНаВопросыАнкет/Ext/Rights.xml
- src/cf/Roles/ЧтениеРассылокОтчетов/Ext/Rights.xml
- src/cf/Roles/ЧтениеУчетныхЗаписейЭлектроннойПочты/Ext/Rights.xml
- src/cf/Subsystems/СтандартныеПодсистемы/Subsystems/РаботаСФайлами.xml
Files selected for processing (57)
- src/cf/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаВводаПолномочий/Ext/Form/Module.bsl (2 hunks)
- src/cf/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаСписка/Ext/Form/Module.bsl (1 hunks)
- src/cf/Catalogs/ПрофилиГруппДоступа/Ext/ManagerModule.bsl (14 hunks)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Ext/ManagerModule.bsl (6 hunks)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Ext/Form/Module.bsl (1 hunks)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Ext/Form/Module.bsl (1 hunks)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатовДляШифрования/Ext/Form/Module.bsl (1 hunks)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Ext/Form/Module.bsl (1 hunks)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Ext/Help/ru.html (2 hunks)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Ext/Form/Module.bsl (8 hunks)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Ext/Form/Module.bsl (1 hunks)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ШифрованиеДанных/Ext/Form/Module.bsl (1 hunks)
- src/cf/Catalogs/СостоянияОригиналовПервичныхДокументов/Forms/ФормаВыбораСостояния/Ext/Form/Module.bsl (1 hunks)
- src/cf/Catalogs/Файлы/Forms/Файлы/Ext/Help/ru.html (1 hunks)
- src/cf/CommonForms/ДобавлениеЭлектроннойПодписиИзФайла/Ext/Form/Module.bsl (3 hunks)
- src/cf/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Ext/Help/ru.html (2 hunks)
- src/cf/CommonForms/ПоддерживаемыеКлиентскиеПриложения/Ext/Help/ru.html (1 hunks)
- src/cf/CommonForms/Сертификат/Ext/Form/Module.bsl (4 hunks)
- src/cf/CommonForms/ЭлектроннаяПодпись/Ext/Form/Module.bsl (2 hunks)
- src/cf/CommonModules/GoogleПереводчик/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)
- src/cf/CommonModules/ОбновлениеИнформационнойБазыБСП/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/ОбщегоНазначенияКлиентСервер/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/ОбщегоНазначенияСлужебныйКлиент/Ext/Module.bsl (3 hunks)
- src/cf/CommonModules/ОтчетОДвиженияхДокументаСлужебныйКлиент/Ext/Module.bsl (2 hunks)
- src/cf/CommonModules/РаботаСФайламиКлиент/Ext/Module.bsl (2 hunks)
- src/cf/CommonModules/РаботаСФайламиСлужебныйВызовСервера/Ext/Module.bsl (3 hunks)
- src/cf/CommonModules/РаботаСФайламиСлужебныйКлиент/Ext/Module.bsl (4 hunks)
- src/cf/CommonModules/РассылкаОтчетов/Ext/Module.bsl (3 hunks)
- src/cf/CommonModules/УправлениеДоступомСлужебный/Ext/Module.bsl (21 hunks)
- src/cf/CommonModules/УправлениеДоступомСлужебныйПовтИсп/Ext/Module.bsl (5 hunks)
- src/cf/CommonModules/УправлениеКонтактнойИнформацией/Ext/Module.bsl (2 hunks)
- src/cf/CommonModules/УправлениеПечатью/Ext/Module.bsl (3 hunks)
- src/cf/CommonModules/УправлениеПечатьюКлиент/Ext/Module.bsl (2 hunks)
- src/cf/CommonModules/УчетОригиналовПервичныхДокументов/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/УчетОригиналовПервичныхДокументовВызовСервера/Ext/Module.bsl (1 hunks)
- src/cf/CommonModules/ЭлектроннаяПодпись/Ext/Module.bsl (6 hunks)
- src/cf/CommonModules/ЭлектроннаяПодписьКлиент/Ext/Module.bsl (2 hunks)
- src/cf/CommonModules/ЭлектроннаяПодписьКлиентСерверЛокализация/Ext/Module.bsl (5 hunks)
- src/cf/CommonModules/ЭлектроннаяПодписьСлужебный/Ext/Module.bsl (19 hunks)
- src/cf/CommonModules/ЭлектроннаяПодписьСлужебныйВызовСервера/Ext/Module.bsl (2 hunks)
- src/cf/CommonModules/ЭлектроннаяПодписьСлужебныйКлиент/Ext/Module.bsl (22 hunks)
- src/cf/CommonModules/ЭлектроннаяПодписьСлужебныйКлиентСервер/Ext/Module.bsl (12 hunks)
- src/cf/DataProcessors/ЗагрузкаДанныхИзФайла/Ext/ManagerModule.bsl (2 hunks)
- src/cf/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Ext/Form/Module.bsl (9 hunks)
- src/cf/DataProcessors/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Ext/ManagerModule.bsl (4 hunks)
- src/cf/DataProcessors/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Forms/Форма/Ext/Form/Module.bsl (1 hunks)
- src/cf/DataProcessors/РаботаСФайлами/Forms/ПрисоединенныеФайлы/Ext/Help/ru.html (1 hunks)
- src/cf/DataProcessors/РасширенныйВводКонтактнойИнформации/Ext/ManagerModule.bsl (1 hunks)
- src/cf/DataProcessors/Сканирование/Forms/НастройкаСканирования/Ext/Form/Module.bsl (2 hunks)
- src/cf/DataProcessors/Сканирование/Forms/РезультатСканирования/Ext/Form/Module.bsl (1 hunks)
- src/cf/InformationRegisters/НастройкиПравОбъектов/Ext/ManagerModule.bsl (8 hunks)
- src/cf/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписи/Ext/Form/Module.bsl (1 hunks)
- src/cf/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Ext/Form/Module.bsl (2 hunks)
- src/cf/Reports/УниверсальныйОтчет/Ext/ManagerModule.bsl (6 hunks)
Files not processed due to max files limit (1)
- src/cf/Reports/УниверсальныйОтчет/Ext/ObjectModule.bsl
Files skipped from review due to trivial changes (5)
- src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ШифрованиеДанных/Ext/Form/Module.bsl
- src/cf/Catalogs/СостоянияОригиналовПервичныхДокументов/Forms/ФормаВыбораСостояния/Ext/Form/Module.bsl
- src/cf/CommonModules/ОбновлениеИнформационнойБазыБСП/Ext/Module.bsl
- src/cf/CommonModules/УчетОригиналовПервичныхДокументовВызовСервера/Ext/Module.bsl
- src/cf/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Ext/Form/Module.bsl
Additional comments: 180
src/cf/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаВводаПолномочий/Ext/Form/Module.bsl (1)
- 315-321: > Note: This review was outside the patches, and no patch overlapping with it was found. Original lines [573-576]
The modification of
СертификатОкончаниеВыбора
to an asynchronous procedure is correct. The use ofЖдать
to wait for the certificate properties ensures that the UI thread is not blocked. However, ensure that theЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата
method is designed to be called asynchronously and that theСертификат
variable is handled correctly after the await.src/cf/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаСписка/Ext/Form/Module.bsl (1)
- 573-576: The conversion of
СертификатОкончаниеВыбора
to an asynchronous procedure is appropriate for operations that may take time, such as retrieving certificate properties. Ensure that all calls to this procedure have been updated to handle the asynchronous nature, and that theСертификат
andСертификатПредставителя
variables are correctly assigned after the asynchronous call.src/cf/Catalogs/ПрофилиГруппДоступа/Ext/ManagerModule.bsl (11)
1485-1493: The addition of the
ХешСумма
parameter and the new lists and mapping structureВсеРоли
align with the changes described in the summary. Ensure that these new data structures are populated and used as intended throughout the system.1505-1507: The logic for populating
ОбщиеПрава
,ДополнительныеРолиАдминистратора
, andВсеРоли
based on role names appears to be correct. Ensure that the role names used here are consistent with the rest of the system.1946-1946: The introduction of the
ПроверенныеПоставляемыеПрофилиСеанса
function with theХешСумма
parameter is consistent with the summary. Verify that theХешСумма
is being calculated and used correctly within the function.1981-1985: The creation of new mappings and lists for profile descriptions aligns with the refactoring efforts described in the summary. Ensure that these new structures are used correctly in the subsequent logic.
2010-2014: The setting of profile properties such as "Родитель", "Идентификатор", and "Наименование" appears to be correct. Ensure that these properties are consistent with the system's data model.
2023-2023: The addition of profiles to
СписокПрофилей
and the subsequent error handling logic seem to be correct. Ensure that the error messages are informative and that the name mappings are accurate.2118-2180: The implementation of version description and hashing logic in
ОписаниеВерсии
andХешСумма
is consistent with the changes described in the summary. Verify that the versioning and hashing are implemented correctly and used consistently across the system.2234-2246: > Note: This review was outside the patches, so it was mapped to the patch with the greatest overlap. Original lines [2205-2243]
The logic for assigning profile purposes and types in
СписокНазначений
andСвойстваПрофиля
appears to be correct. Ensure that the types and assignments are consistent with the system's data model.
2291-2295: The creation and sorting of the role list in
СписокРолей
and its storage inСвойстваПрофиля
seem to be implemented correctly. Ensure that the roles are sorted and stored in a manner consistent with the system's requirements.2367-2367: The assignment of access types to profiles using
СвойстваПрофиля
andВидыДоступа
is consistent with the system's functionality. Ensure that the access types are assigned correctly and that the data structure used is appropriate.2480-2482: The addition of fixed structures to the list of access values in
ЗначенияДоступа
appears to be correct. Ensure that these structures are used appropriately within the system and that the error handling is robust.src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Ext/ManagerModule.bsl (7)
109-112: The addition of the condition
СертификатыКлючейЭлектроннойПодписиИШифрования.ДействителенДо > &ТекущаяДата
in the SQL query ensures that only certificates that are still valid (not expired) are considered. This seems like a logical and necessary check when dealing with certificate validity in the context of an information system.128-129: The parameter
ТекущаяДата
is set usingТекущаяДатаСеанса()
, which is the standard way to get the current session date in 1C:Enterprise language. This parameter is then used in the SQL query condition added in the previous hunk, which is a correct implementation.142-142: The function call has been updated from
ProcessRequestsAndNotifyCertificates
toProcessRequestsNotifyAndValidityPeriodCertificates
. This change in the function name suggests that the function now also handles the validity period of certificates, which aligns with the changes seen in the SQL query conditions. It is important to ensure that this renamed function is implemented elsewhere in the codebase and that all references to it have been updated accordingly.155-155: The renaming of the function
ProcessRequestsAndNotifyCertificates
toProcessRequestsNotifyAndValidityPeriodCertificates
is consistent with the previous hunk. This renaming reflects the new functionality of handling the validity period of certificates, which is a logical change given the context of the updates.181-181: The introduction of the
WriteObject
flag is a good practice for controlling the conditional writing of an object. It is used to determine whether the certificate object needs to be written back to the database after processing, which is a common pattern in batch processing scenarios.212-212: The condition
СертификатОбъект.УдалитьПользовательОповещенОСрокеДействия = Ложь
followed by settingЗаписатьОбъект = Истина
indicates that if the user has been notified about the certificate's expiration, the certificate object should be updated. This is a sensible addition to ensure that the state of the certificate is correctly maintained.253-257: The use of the
WriteObject
flag to conditionally write the certificate object to the database is correctly implemented. The object is only written if the flag is set toИстина
(true), otherwise, the processing of the certificate is marked as complete without writing. This ensures that unnecessary writes are avoided, which is a good practice for performance.src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатовДляШифрования/Ext/Form/Module.bsl (1)
- 406-406: The modification to use
Ждать
beforeЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата
aligns with the PR's objective to update asynchronous programming patterns. Verify that all calling code has been adapted to handle the new asynchronous call, including proper await patterns and exception handling where necessary.src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Ext/Form/Module.bsl (1)
- 684-701: It's important to verify that the server-side logic correctly handles the case when a certificate or private key is expired. The client-side error handling seems to be in place, but ensure that the server-side also has appropriate checks and that any error messages are properly propagated to the client.
src/cf/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Ext/Form/Module.bsl (8)
911-911: The procedure
ПроверитьНаСторонеКлиентаПослеСозданияМенеджераКриптографии
has been correctly updated to an asynchronous version. Ensure that all calls to this procedure are updated to handle the asynchronous nature.934-934: The use of
Ждать
beforeДополнительнаяПроверкаНаВозможностьПодписания
is correct for asynchronous calls. Verify that the calling code is adapted to handle the asynchronous operation and that the error handling is robust.950-950: The procedure
ПроверитьНаСторонеКлиентаВМоделиСервиса
has been correctly updated to an asynchronous version. Ensure that all calls to this procedure are updated to handle the asynchronous nature.969-969: The use of
Ждать
beforeДополнительнаяПроверкаНаВозможностьПодписания
is correct for asynchronous calls. Verify that the calling code is adapted to handle the asynchronous operation and that the error handling is robust.1402-1402: The procedure
ПроверитьНаСторонеКлиентаОблачнаяПодпись
has been correctly updated to an asynchronous version. Ensure that all calls to this procedure are updated to handle the asynchronous nature.1423-1423: The use of
Ждать
beforeДополнительнаяПроверкаНаВозможностьПодписания
is correct for asynchronous calls. Verify that the calling code is adapted to handle the asynchronous operation and that the error handling is robust.2231-2231: The function
ДополнительнаяПроверкаНаВозможностьПодписания
has been changed to an asynchronous function. Ensure that all calls to this function are updated to handle the asynchronous nature and that the error handling is robust.2256-2256: The return statement for the asynchronous function
ДополнительнаяПроверкаНаВозможностьПодписания
is correctly implemented. Ensure that the calling code correctly handles the returned error description.src/cf/Catalogs/Файлы/Forms/Файлы/Ext/Help/ru.html (6)
2-2: The introduction of the term "приложении" (application) instead of "программе" (program) at line 2 is a semantic change that should be verified for accuracy. Ensure that this change is consistent with the terminology used throughout the application's documentation and user interface.
6-6: The change at line 6, which mentions the use of specific applications for file handling on the device, should be checked for consistency with the actual functionality provided by the application. Confirm that the application indeed allows for such interactions with files using external applications.
8-8: The update at line 8, which describes the color-coding of files based on their editing status, is a useful addition for user clarity. Ensure that the application's user interface reflects these color codes accurately.
33-33: At line 33, the instructions for attaching a file from the device include specifying the file path and using an "Open" button. Verify that the interface provides this button and that the instructions are clear and accurate for the user.
47-47: The addition at line 47 regarding the availability of the "Scan from scanner" option should be checked for accuracy. Confirm that the application supports this feature and that the instructions are clear for users with connected scanners.
96-96: The explanation of electronic signature and encryption commands at line 96 is crucial for users. Ensure that the commands listed are available in the application and that the help text accurately describes their effects.
src/cf/CommonForms/ДобавлениеЭлектроннойПодписиИзФайла/Ext/Form/Module.bsl (3)
359-366: The conversion of
ВыбратьФайлПослеПолученияКонтейнераПодписи
to an asynchronous procedure and the use ofЖдать
to callЭлектроннаяПодписьСлужебныйКлиент.ПараметрыПодписиКриптографии
are correct. Ensure that all calls to this procedure are updated to handle the asynchronous nature.435-440: The conversion of
ВыбратьФайлПослеВыгрузкиСертификата
to an asynchronous procedure and the use ofЖдать
to callЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата
are correct. Ensure that all calls to this procedure are updated to handle the asynchronous nature.547-553: The server-side function
ДобавитьСтрокуНаСервере
correctly callsЭлектроннаяПодписьСлужебный.ПараметрыПодписиКриптографии
synchronously, which is appropriate for server-side code.src/cf/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Ext/Help/ru.html (3)
5-5: The update in terminology from "программе" to "приложении" and "компьютере" to "устройстве" is consistent with modern usage and device diversity.
8-8: The addition of the component
ExtraCryptoAPI
for automatic detection of the application for certificate work is a useful update for users. Ensure that the instructions for installation are clear and accessible.16-17: The addition of new sections "Машиночитаемые доверенности (единый формат)" and "Легенда" suggests new features or legal requirements have been incorporated. Verify that these sections are properly linked and contain relevant information.
src/cf/CommonForms/ПоддерживаемыеКлиентскиеПриложения/Ext/Help/ru.html (1)
- 3-11: The detailed information about the compatibility of external components with various operating systems, browsers, and architectures is valuable for users to understand the application's requirements.
src/cf/CommonForms/Сертификат/Ext/Form/Module.bsl (6)
52-53: The addition of
ДополнительныеСвойстваСертификата
function call is noted. Ensure that the implementation of this function properly handles the retrieval of additional certificate properties and that these properties are used consistently throughout the application.61-63: The assignment of
ДатаОкончания
andДатаОкончанияЗакрытогоКлюча
fromСвойстваСертификата
and the subsequent visibility setting for the UI elementЭлементы.ДатаОкончанияЗакрытогоКлюча.Видимость
are correctly implemented. Ensure that the visibility logic is consistent with the application's UI requirements.71-71: The visibility of the
ГруппаЛицензияКриптоПро
UI element is now controlled by theСодержитВстроеннуюЛицензиюКриптоПро
property. Verify that this property is correctly determined and reflects the actual state of the CryptoPro license.94-95: The retrieval of certificate properties within the certificate chain processing loop has been updated. Confirm that the
СвойстваСертификата
function correctly handles the properties of each certificate in the chain and that the UI elementПредставление
is assigned appropriately.394-400: The addition of conditional logic to add properties
ДатаНачалаЗакрытогоКлюча
andДатаОкончанияЗакрытогоКлюча
based on their availability is noted. Ensure that these properties are correctly populated and that theДобавитьСвойство
procedure is capable of handling these new fields.543-545: The use of asynchronous operations with
Ждать
to retrieve certificate properties is correctly implemented. Confirm that theЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата
function supports asynchronous calls and that theПредставление
property is correctly assigned to the UI element.src/cf/CommonForms/ЭлектроннаяПодпись/Ext/Form/Module.bsl (2)
248-250: The changes to use asynchronous operations with
Ждать
for initializing the cryptographic certificate and retrieving its properties are correctly implemented. Confirm that theЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата
function supports asynchronous calls and that theКомуВыдан
property is correctly assigned.264-266: Similar to the previous comment, the use of asynchronous operations with
Ждать
for initializing the cryptographic certificate and retrieving its properties is correctly implemented. Confirm that theЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата
function supports asynchronous calls and that theКомуВыдан
property is correctly assigned.src/cf/CommonModules/GoogleПереводчик/Ext/Module.bsl (1)
- 187-187: The logging of translation errors has been updated to use Google Translate as the service. Confirm that this change is consistent with the application's requirements and that the
Перечисления.СервисыПереводаТекста.GoogleПереводчик
enumeration value is correctly used throughout the application.src/cf/CommonModules/ОбщегоНазначенияКлиентСервер/Ext/Module.bsl (1)
- 2564-2564: Verify the necessity and correctness of the application version check (
СравнитьВерсии
). If this version-specific logic is required, ensure that the version number "8.3.24.1305" is the correct threshold for the changes being made.src/cf/CommonModules/ОбщегоНазначенияСлужебныйКлиент/Ext/Module.bsl (3)
909-918: The new conditional block correctly handles the case when
Контекст.ПредложитьУстановить
is false by assigning an error message and executing a notification function. Ensure thatСтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку
andВыполнитьОбработкуОповещения
are properly handling the error scenario.1195-1198: The addition of a version check and asynchronous pause based on the application version is a good practice for ensuring compatibility with different versions. However, ensure that the version "8.3.24.0" is the correct threshold for introducing the pause and that the
ПаузаАсинх
function is available in the context where it's used.1231-1240: The conditional block added here is similar to the one in hunk 1, handling the case when
Контекст.ПредложитьУстановить
is false. It's important to ensure that the error handling is consistent across different parts of the code and that theРезультатПодключенияКомпоненты
function is correctly implemented to handle this scenario.src/cf/CommonModules/ОтчетОДвиженияхДокументаСлужебныйКлиент/Ext/Module.bsl (2)
119-132: The introduction of
ИдСуществующейПользовательскойНастройки
and the loop to find an existing user setting by comparingЛевоеЗначение
withНовоеПоле
seems correct. However, ensure that the identifierИдСуществующейПользовательскойНастройки
is used appropriately downstream, as it is set within a conditional block and may not be set if the condition is not met.162-173: The logic to update an existing user setting's filter properties based on
ИдСуществующейПользовательскойНастройки
is clear. However, consider the implications of modifying shared settings concurrently, which could lead to data races. If this code is executed in a multi-user environment, ensure proper synchronization mechanisms are in place.src/cf/CommonModules/РаботаСФайламиКлиент/Ext/Module.bsl (1)
- 812-817: The changes to the
ДоступнаКомандаСканировать
function introduce conditional initialization of the scanner component based on its availability. This is a logical improvement, as it avoids unnecessary operations when the scanner is not available. Ensure that the callbackДоступнаКомандаСканироватьЗавершение
is properly handling the result of the initialization.src/cf/CommonModules/РаботаСФайламиСлужебныйВызовСервера/Ext/Module.bsl (2)
3225-3225: The updated comment clarifies the purpose of the
ИмяЛогФайла
field. This change improves the readability and understanding of the code.3277-3279: A new exported procedure
ОчиститьРабочийКаталог
has been added. Ensure that there is sufficient documentation for this procedure and that its impact on existing functionality has been considered.src/cf/CommonModules/РаботаСФайламиСлужебныйКлиент/Ext/Module.bsl (4)
4656-4660: The new condition
РабочийКаталогДоступен
is used to check the availability of a working directory before proceeding. Ensure that the functionРабочийКаталогДоступен
is thoroughly tested to handle all edge cases, especially since file system operations can be prone to errors due to permissions, network issues, etc.10671-10673: The function
ПолучитьУстройства
correctly returns the result ofПодключенныеУстройства
. Ensure that the called function handles all possible exceptions and edge cases since it interacts with external modules.11039-11043: The device retrieval logic in
ПодключенныеУстройства
splits the devices string into an array. Ensure that the delimiter used (Символы.ПС
) is consistent with the format provided by theПолучитьУстройства
method of the external module.11045-11045: The error handling in
ПодключенныеУстройства
creates a new array in case of an exception. This is a good fallback, but ensure that the error message and logging are clear and provide enough information for troubleshooting.src/cf/CommonModules/РассылкаОтчетов/Ext/Module.bsl (3)
719-719: The change to
ПараметрыДоставки.КаталогВременныхФайлов
now appends a server path separator to the temporary file directory. Ensure that theНомерСеансаИнформационнойБазы()
function andПолучитьРазделительПутиСервера()
method return values that correctly form a valid path on the server.2768-2768: The modification to
СтрокаФайл.Настройки.ПолноеИмяКаталога
includes appending a server path separator. Verify that theПолучитьРазделительПутиСервера()
method is consistent across the application and that it correctly handles path concatenation on the server's operating system.4734-4739: The logging level has been changed from
УровеньЖурналаРегистрации.Предупреждение
toУровеньЖурналаРегистрации.Информация
, and a setting is being saved to disable the log hint after it's been logged once. Confirm that this change in logging behavior is intentional and that the settingЗаписыватьВЖурналПодсказкуУскоренияРассылкиОтчетов
is appropriately documented and understood by the users or administrators.src/cf/CommonModules/УправлениеДоступомСлужебный/Ext/Module.bsl (5)
- 3897-3904: > Note: This review was outside the patches, and no patch overlapping with it was found. Original lines [34-45]
The addition of
ХешСуммы
in the functionОписаниеСвойствВидовДоступаСеанса
seems correctly initialized and used in subsequent function calls. Ensure that the changes in the handling ofХешСуммы
are consistent with the rest of the codebase where this function is used.
- 3897-3904: > Note: This review was outside the patches, and no patch overlapping with it was found. Original lines [70-74]
The initialization of
ХешСумма
to an empty string inОписаниеВозможныхПравСеансаДляНастройкиПравОбъектов
may be intentional, but it's worth double-checking the logic to ensure it aligns with the intended behavior of the function and the handling of hash sums in the system.
- 3897-3904: > Note: This review was outside the patches, and no patch overlapping with it was found. Original lines [100-104]
The initialization of
ХешСумма
to an empty string inОписаниеПоставляемыхПрофилейСеанса
should be verified for correctness, as it may affect the function's outcome if the hash sum is a critical part of the logic.
- 3897-3904: > Note: This review was outside the patches, and no patch overlapping with it was found. Original lines [123-127]
The pattern of initializing
ХешСумма
to an empty string is also present inОписаниеСтандартныхРолейРасширенийСеанса
. It's important to verify that this is the intended behavior across all similar functions.
- 3897-3904: > Note: This review was outside the patches, and no patch overlapping with it was found. Original lines [158-161]
In
ИдентификаторыРолейСеанса
, ensure that theСписок.ВыгрузитьЗначения()
method returns the expected data type and values for the hash sum calculation to be correct.src/cf/CommonModules/УправлениеКонтактнойИнформацией/Ext/Module.bsl (1)
- 4785-4787: The change ensures that
МногострочныйРежим
is only set toИстина
for input fields (ПолеВвода
). This is a good practice to avoid applying properties to incompatible control types. Ensure that all control types that requireМногострочныйРежим
are covered by this condition.src/cf/CommonModules/УправлениеПечатью/Ext/Module.bsl (2)
2122-2122: The addition of the "ВыполнятьВФоновомЗадании" parameter to the list of parameters is noted. Ensure that all relevant parts of the application that use this list are updated to handle the new parameter appropriately.
3817-3820: The logic to set a default value for "ВыполнятьВФоновомЗадании" if it is undefined appears correct, using a case-insensitive comparison to determine the default. Ensure that the function
ИнформационнаяБазаФайловая()
is defined and behaves as expected in the context of this module.src/cf/CommonModules/УправлениеПечатьюКлиент/Ext/Module.bsl (2)
36-43: The logic to determine whether to execute the print command in the background seems correct. It checks if
ПараметрыПечати
is a structure and contains the propertyВыполнятьВФоновомЗадании
. If these conditions are met, it calls the new procedureВыполнитьКомандуПечатиВФоне
. Ensure that the propertyВыполнятьВФоновомЗадании
is properly documented and that its usage here is consistent with its intended purpose.1083-1098: The new procedure
ВыполнитьКомандуПечатиВФоне
correctly initiates a long-running operation to generate print forms and handles the operation asynchronously. However, ensure that there is proper error handling on the server-side operationНачатьФормированиеПечатныхФорм
. Also, verify that the callbackОткрытьФормуПечатьДокументов
is correctly implemented to handle the results of the long operation and thatПараметрыОжидания
is set up correctly to manage the client's expectations during the wait.src/cf/CommonModules/УчетОригиналовПервичныхДокументов/Ext/Module.bsl (1)
- 839-849: The logic within the
УстановитьНовоеСостояниеОригиналаДокумента
function has been altered. Ensure that the changes in the logic correctly handle the new state of the document's original and that the conditions for setting theИзменено
flag are correct. Also, verify that theРегистрыСведений.СостоянияОригиналовПервичныхДокументов.ЗаписатьОбщееСостояниеОригиналаДокумента
method is called with the correct parameters and that it behaves as expected when the document state is updated.src/cf/CommonModules/ЭлектроннаяПодпись/Ext/Module.bsl (5)
808-816: Ensure that the function
СвойстваСертификата
is properly defined and that the properties being assigned toСертификатОбъект
are valid and expected. IfСвойстваСертификата
is a new addition, verify that it is being used correctly in all places whereСертификатКриптографии
is handled.842-849: The conditional logic to check for the "Наименование" property before setting it using
СвойстваСертификата
seems appropriate. Verify that theСвойстваСертификата
function is being used consistently and that the "Наименование" property is correctly handled in all relevant parts of the code.1160-1192: The
СвойстваСертификата
function definition appears to handle different input types for theСертификат
parameter and returns a structured set of properties. Ensure that the returned structure matches the expected properties and that the function is robust against invalid input types.1311-1311: The assignment using
ЭлектроннаяПодписьСлужебный.ПараметрыПодписиКриптографии
appears correct. Verify that the function is defined as expected and that the parameters passed to it are being handled properly in the function's implementation.1881-1886: The conditional check to ensure
РезультатСтруктура
is not undefined before callingЗаполнитьЗначенияСвойств
is good practice. Verify that theЗаполнитьЗначенияСвойств
function is consistently used and that theСвойстваПодписи
structure is correctly populated in all instances.src/cf/CommonModules/ЭлектроннаяПодписьКлиент/Ext/Module.bsl (2)
1131-1133: The comments have been updated to reflect the structure returned by the
СвойстваСертификата
function. Ensure that the actual implementation in the code matches these comments, especially the new fields mentioned.1198-1198: The function
СвойстваСертификата
now includes an additional, undefined parameter in its call toЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата
. Confirm that this change is intentional and that all calls to this function have been updated accordingly. Additionally, ensure that the documentation is updated to reflect this change.src/cf/CommonModules/ЭлектроннаяПодписьКлиентСерверЛокализация/Ext/Module.bsl (5)
11-24: The updated logic in
ПриПолученииПредставленияСертификата
now handles a case whereСертификат
is a structure. Ensure that all calling code is aware of this new expected structure and that it is constructed correctly before being passed to this procedure.205-217: The function
АдресСпискаОтзываВнутренний
now retrieves additional certificate properties instead of just the identifier. Confirm that the newДополнительныеСвойстваСертификата
structure contains all necessary information and is used correctly in all places whereИдентификаторКлючаУдостоверяющегоЦентра
was previously used.514-520: The addition of
СвойстваСертификата
to the context structure inКонтекстПроверкиУдостоверяющегоЦентраСертификата
suggests that there is a new dependency on certificate properties within the verification context. Ensure that this new context property is populated and utilized correctly wherever this context is used.574-580: The function
РезультатПроверкиУдостоверяющегоЦентраСертификата
now includes logic related toЭтоОбезличенныйСертификат
. Verify that the implementation of this logic correctly identifies anonymized certificates and that the rest of the verification process accounts for this new type of certificate.649-667: The changes in
РезультатПроверкиУдостоверяющегоЦентраСертификата
introduce additional handling for anonymized certificates. Ensure that the conditions for these certificates are correctly implemented and that they are consistent with the intended business logic, especially regarding the state of the certificate and its issuing authority.src/cf/CommonModules/ЭлектроннаяПодписьСлужебный/Ext/Module.bsl (18)
134-149: The introduction of
СвойстваСертификата
and its usage in error handling for certificate expiration (ОшибкаПросрочки
) seems correct. Ensure that theСвойстваСертификата
is properly populated and that the error handling logic for certificate expiration is consistent with the rest of the application.517-517: The addition of the
СвойстваСертификата
parameter to theРезультатПроверкиУдостоверяющегоЦентраСертификата
function requires verification to ensure that all calls to this function have been updated accordingly.Verification successful
The previous script failed because the file type
bsl
is not recognized by ripgrep. I will adjust the script to search for the.bsl
files explicitly.
The search results indicate that the function
РезультатПроверкиУдостоверяющегоЦентраСертификата
is used in various places within the codebase. To ensure that the new parameterСвойстваСертификата
is being passed correctly, I will generate a script to extract the specific lines of code where the function is called. This will allow us to analyze if the new parameter is being used consistently.
The output indicates that the function
РезультатПроверкиУдостоверяющегоЦентраСертификата
is called with different numbers of parameters in various places. To determine whether this is due to function overloading or an inconsistency, I will generate a script to check if there are multiple definitions of the function with different parameter lists.
The verification process has confirmed that the function
РезультатПроверкиУдостоверяющегоЦентраСертификата
is overloaded with different parameter lists. Therefore, the presence of calls to this function without theСвойстваСертификата
parameter is consistent with the overloaded definitions and does not indicate an issue.* 550-555: The conditional logic for assigning `СвойстваСертификата` within the `РезультатПроверкиУдостоверяющегоЦентраСертификата` function appears to be correctly implemented, ensuring that the properties are either computed or passed as a parameter.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Search for the function usage across the codebase to verify the parameter addition. rg --type bsl "РезультатПроверкиУдостоверяющегоЦентраСертификата"Length of output: 439
Script:
#!/bin/bash # Search for the function usage across the codebase without specifying the file type. rg "РезультатПроверкиУдостоверяющегоЦентраСертификата" -g "*.bsl"Length of output: 5628
Script:
#!/bin/bash # Extract the lines of code where the function is called to analyze the usage of the new parameter. rg "РезультатПроверкиУдостоверяющегоЦентраСертификата\(" -g "*.bsl" -C 3Length of output: 11222
Script:
#!/bin/bash # Check for multiple definitions of the function with different parameter lists. rg "Функция РезультатПроверкиУдостоверяющегоЦентраСертификата" -g "*.bsl" -C 1Length of output: 1502
967-972: The version number "3.1.6.20" set in the handler configuration may need to be updated to match the new supplier configuration version "3.1.9.238" as mentioned in the PR title. Please verify that this version number is correct and intended.
1017-1040: The handler properties are updated with a new version "3.1.9.234" and additional configuration settings. Ensure that the version number is correct and that the new properties align with the intended functionality of the handler.
Verification successful
The previous script failed because
ripgrep
does not recognize the file typebsl
. To correct this, I will generate a new script that searches for the version string "3.1.9.234" without specifying a file type.
The search for the version "3.1.9.234" within the codebase returned a single occurrence, which is located in the file
src/cf/CommonModules/ЭлектроннаяПодписьСлужебный/Ext/Module.bsl
. This confirms that the version update to "3.1.9.234" is indeed present in the code and is applied to the handler as intended in the pull request.* 1363-1377: The new function `ПараметрыПодписиКриптографии` is added for handling cryptographic signature parameters. Confirm that the implementation is secure and that it adheres to best practices for cryptographic operations.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Check if the version "3.1.9.234" is consistent with the intended update and used correctly. rg --type bsl "3.1.9.234"Length of output: 53
Script:
#!/bin/bash # Search for the version "3.1.9.234" in all files, as the file type 'bsl' is not recognized by ripgrep. rg "3.1.9.234"Length of output: 112
1464-1464: The usage of the
ПараметрыПодписиКриптографии
function to set theТипПодписи
property is correct. Ensure that the property is used consistently throughout the application.1952-1952: The addition of the
ДействителенДо
property toСвойстваСертификата
is noted. Verify that this new property is used correctly in the context of certificate validation and expiration checks.Verification successful
The search results indicate that the property
ДействителенДо
is widely used throughout the codebase, particularly in modules related to certificate handling and validation. The property appears in various contexts, such as sorting, comparison, and conditional checks, which suggests that it is an established part of the system's logic for managing certificate expiration.Given the extensive use of
ДействителенДо
across different modules and forms, and considering that the addition of this property in theЭлектроннаяПодписьСлужебный
module is consistent with its usage elsewhere, it can be inferred that the new property is used correctly in the context of certificate validation and expiration checks.* 2844-2847: The assignment of `Наименование` from `СвойстваСертификата` appears to be correct. Ensure that the `Наименование` property is used consistently with the updated certificate properties.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Search for the usage of the new property "ДействителенДо" to ensure it's handled correctly. rg --type bsl "ДействителенДо"Length of output: 159
Script:
#!/bin/bash # Search for the usage of the new property "ДействителенДо" across all files without specifying file type. rg "ДействителенДо"Length of output: 14187
- 3273-3283: The logic for setting
СрокДействияПоследнейМеткиВремени
based on the certificate's validity (ДействителенДо
) and handling certificate expiration errors is noted. Verify that this logic is consistent with the application's requirements for certificate expiration handling.Verification successful
The previous script did not execute as expected due to an unrecognized file type. I will generate a new script without the
--type
flag to search for the string "ДействителенДо" in the codebase.
The search results indicate that the handling of certificate expiration, as denoted by the property "ДействителенДо", is a common pattern used consistently across various modules in the codebase. The specific logic in the snippet provided aligns with this pattern, suggesting that it is consistent with the application's requirements for certificate expiration handling.
* 4080-4080: The error handling for the `C14N` method in the cryptographic component is consistent with the pattern observed in other parts of the code. Ensure that this error handling approach is standardized across the application.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Search for the handling of certificate expiration to ensure consistency. rg --type bsl "ДействителенДо"Length of output: 159
Script:
#!/bin/bash # Search for the handling of certificate expiration to ensure consistency. rg "ДействителенДо"Length of output: 14187
4144-4144: The error handling for the
C14N_body
method in the cryptographic component follows the established pattern. Confirm that this error handling is appropriate for the context in which it is used.4164-4164: The error handling for the
TransformSMEV
method in the cryptographic component is consistent with the pattern observed in other parts of the code. Ensure that this error handling approach is standardized across the application.4187-4187: The error handling for the
Hash
method in the cryptographic component follows the established pattern. Confirm that this error handling is appropriate for the context in which it is used.4214-4214: The error handling for the
Sign
method in the cryptographic component is consistent with the pattern observed in other parts of the code. Ensure that this error handling approach is standardized across the application.4239-4239: The error handling for the
VerifySign
method in the cryptographic component follows the established pattern. Confirm that this error handling is appropriate for the context in which it is used.4270-4270: The error handling for the
CMSSign
method in the cryptographic component is consistent with the pattern observed in other parts of the code. Ensure that this error handling approach is standardized across the application.4292-4292: The error handling for the
CMSVerifySign
method in the cryptographic component follows the established pattern. Confirm that this error handling is appropriate for the context in which it is used.src/cf/CommonModules/ЭлектроннаяПодписьСлужебныйВызовСервера/Ext/Module.bsl (2)
432-435: The changes made to the handling of binary certificate data seem to be an optimization to avoid calling
СертификатКриптографии.Выгрузить()
multiple times by storing the result inДвоичныеДанныеСертификата
. This is a good practice as it reduces the number of calls to potentially expensive operations. Ensure that theДвоичныеДанныеСертификата
variable is used consistently throughout the module for similar operations.978-979: The refactoring to use
СвойстваСертификата
for obtaining the certificate presentation instead of directly callingЭлектроннаяПодпись.ПредставлениеСертификата(СертификатКриптографии)
is a good practice as it centralizes the retrieval of certificate properties. However, ensure thatСвойстваСертификата
is properly initialized before this change and that all its usages reflect the new structure.src/cf/CommonModules/ЭлектроннаяПодписьСлужебныйКлиент/Ext/Module.bsl (22)
329-343: The addition of the asynchronous function
СвойстваСертификата
is correctly implemented with proper handling of different certificate types and appropriate usage ofЖдать
for asynchronous calls.1642-1642: The change to use
Ждать СвойстваСертификата(Сертификат)
aligns with the PR's objective to enhance asynchronous operations and is correctly implemented.1662-1667: The assignment of
СвойстваПодписи.Сертификат
and the subsequent logic are correctly implemented with no issues detected.1830-1830: The insertion of
СвойстваСертификата
intoКонтекст
is consistent with the asynchronous pattern used in the module and is correctly implemented.2129-2147: The changes in the
ПроверитьСертификатНаКлиентеПослеПроверки
procedure, including the use ofЖдать
for theСвойстваСертификата
call, are correctly implemented and align with the asynchronous programming model.2155-2160: The changes in the
ДополнительнаяПроверкаСертификата
procedure, including the use ofЖдать
for theРезультатПроверкиУдостоверяющегоЦентраСертификата
call, are correctly implemented and align with the asynchronous programming model.2209-2209: The conversion of the
РезультатПроверкиУдостоверяющегоЦентраСертификата
function to an asynchronous function is correctly implemented and aligns with the PR's objectives.5115-5117: The logic in the
ВыполнитьНаСторонеПослеВыгрузкиСертификата
procedure correctly updates the context with the certificate properties using the new asynchronous pattern.6299-6303: The logic in the
УсовершенствоватьНаСторонеПослеПолученияКонтейнераПодписи
procedure correctly usesЖдать
to obtain the signature parameters asynchronously.6414-6418: The logic in the
ВыполнитьПослеПолученияКонтейнераУсовершенствованнойПодписи
procedure correctly usesЖдать
to obtain the signature parameters asynchronously.7240-7240: The error handling logic correctly uses
Ждать
to retrieve errors from asynchronous operations, which is consistent with the asynchronous programming model.7271-7271: The error handling logic correctly uses
Ждать
to retrieve errors from asynchronous operations, which is consistent with the asynchronous programming model.7405-7405: The error handling logic correctly uses
Ждать
to retrieve errors from asynchronous operations, which is consistent with the asynchronous programming model.7442-7442: The error handling logic correctly uses
Ждать
to retrieve errors from asynchronous operations, which is consistent with the asynchronous programming model.7509-7509: The error handling logic correctly uses
Ждать
to retrieve errors from asynchronous operations, which is consistent with the asynchronous programming model.7531-7531: The error handling logic correctly uses
Ждать
to retrieve errors from asynchronous operations, which is consistent with the asynchronous programming model.7546-7569: The error handling logic in the
ПослеВыполненияПолучитьОшибку
and related procedures is consistent with the asynchronous error handling pattern used throughout the module.7917-7917: The logic in the
ВыполнитьНаСторонеПослеВыгрузкиСертификатаВМоделиСервиса
procedure is consistent with the asynchronous programming model, although the full logic is not visible.7933-7933: The logic in the
ВыполнитьНаСторонеПослеВыгрузкиСертификатаВМоделиСервиса
procedure is consistent with the asynchronous programming model, although the full logic is not visible.10717-10717: The logic in the
ПараметрыПодписиКриптографии
function correctly usesЖдать
to obtain the signature parameters asynchronously.10797-10797: The logic in the
ПараметрыПодписиКриптографии
function correctly usesЖдать
to obtain the signature parameters asynchronously.10891-10924: The internal
ПараметрыПодписиКриптографии
function is correctly implemented with the use ofЖдать
to obtain certificate properties asynchronously, and it is properly designated for internal use only.src/cf/CommonModules/ЭлектроннаяПодписьСлужебныйКлиентСервер/Ext/Module.bsl (9)
2455-2472: The function
ПредставлениеСертификата
handles different types of certificate data correctly. It's good to see that it delegates to another module for obtaining the certificate representation and has a fallback for empty results.2538-2573: The function
СвойстваСертификата
is well-structured and handles the conditional logic for additional certificate properties effectively. The use ofМин
function to determine theДействителенДо
property is a good practice to ensure the earliest date is used.2602-2607: The conditional formatting of the certificate's validity date in the table is correctly implemented. It ensures that the appropriate message is displayed based on whether the certificate's validity matches the private key's expiration.
3173-3173: The formatting of the
ДействителенДо
property for display is consistent with the rest of the module's approach to handling dates.3681-3691: The function
ДополнительныеСвойстваСертификата
is set up with a clear structure and default values for additional certificate properties. This is a good practice for initializing structures to avoid null reference errors.3711-3711: The error handling in the certificate data analysis is clear and informative, providing a specific message when the data does not represent a certificate.
3736-3737: The error handling for certificate data analysis is consistent and provides a clear message when an error in the certificate data is detected.
3746-3778: The functions for analyzing certificate data, such as
ЗаполнитьПериодДействияЗакрытогоКлюча
andЗаполнитьИдентификаторКлючаУдостоверяющегоЦентра
, are well-structured and include appropriate error handling. The use of hex strings for identifying specific certificate extensions is a common practice in certificate parsing.4491-4491: The procedure
ПриОшибкеСтруктурыДанных
correctly sets flags to indicate an error in the data structure, which is a good practice for error signaling in complex data parsing operations.src/cf/DataProcessors/ЗагрузкаДанныхИзФайла/Ext/ManagerModule.bsl (2)
344-344: The change from "СтатусНесопоставлен" to "СтатусНеСопоставлен" aligns with the PR objectives and the AI-generated summary, which indicates an update to data comparison statuses.
482-482: The renaming of the status constant here is consistent with the changes in the first hunk and the overall objectives of the PR.
src/cf/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Ext/Form/Module.bsl (9)
- 272-272: The change from "СтатусНесопоставлен" to "СтатусНеСопоставлен" is consistent with the PR's objective to update data comparison statuses. Ensure that all references to the old status are updated across the codebase to maintain consistency.
Verification successful
The shell script executed to search for occurrences of 'СтатусНесопоставлен' did not produce any output. This suggests that there are no instances of the old status in the codebase, which aligns with the changes made in the pull request.
* 283-283: The conditional logic for status assignment based on error description presence is clear and follows the intended logic changes.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Search for the old status usage to ensure it's been fully replaced. rg --type bsl 'СтатусНесопоставлен'Length of output: 199
Script:
#!/bin/bash # Search for the old status usage to ensure it's been fully replaced, without specifying file type. rg 'СтатусНесопоставлен'Length of output: 160
491-491: The filter setup for non-matched data rows is consistent with the changes made in other parts of the code.
528-528: The logic to assign the comparison result based on the length of the error description is consistent and clear.
538-538: The status assignment for non-ambiguous cases is handled correctly, ensuring that the status is set to non-matched when it is not ambiguous.
579-579: The filter and count for non-matched rows are set up correctly, and the calculation for the number of ambiguous rows is logical.
1191-1193: The check to determine if all rows are matched by looking for non-matched and ambiguous statuses is implemented correctly.
1853-1853: The assignment of the comparison result based on the completion of all required columns is consistent with the intended logic changes.
2693-2693: The reset of the comparison object and related attributes for each row in the table is consistent with the intended logic changes.
src/cf/DataProcessors/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Ext/ManagerModule.bsl (4)
63-63: The change correctly sets the visibility of the element to true when the condition is met, aligning with the control flow changes mentioned in the summary.
1215-1215: The property
Наименование
is now being assigned fromСвойстваСертификата.Представление
. Confirm thatСвойстваСертификата
has the expected structure and values to prevent any assignment issues.1494-1494: The introduction of a new parameter
ЗаписатьОбъект
in the exported procedureОбработатьДанныеДляПереходаНаНовуюВерсию
requires verification that all calls to this procedure have been updated accordingly.1532-1532: The assignment
ЗаписатьОбъект = Истина;
at the end of the procedure suggests that the object should be written. Ensure that this flag is handled correctly wherever the procedure is called.src/cf/DataProcessors/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Forms/Форма/Ext/Form/Module.bsl (1)
- 1403-1405: The change from direct certificate representation to accessing certificate properties through a new method seems correct. Ensure that the new method
СвойстваСертификата
is properly tested, especially in cases whereТекущийОбъект.ДанныеСертификата.Получить()
might return null or invalid data, which could lead to a runtime error when trying to access.Представление
.src/cf/DataProcessors/РаботаСФайлами/Forms/ПрисоединенныеФайлы/Ext/Help/ru.html (7)
2-3: The terminology change from "программа" to "приложение" is consistent with modern usage and is a good update for clarity.
7-7: Ensure that the description provided next to the file name is clear and informative for the user.
27-27: Verify that the link provided for the scanning window opens the correct help page and that the instructions are clear for the user.
31-31: The information about file storage in a special directory and separate folders for each application object should be clear and accurate. Confirm that this reflects the actual implementation.
54-54: Ensure that the description of the "Edit" command and the file capture process in the application is clear and corresponds to the actual functionality.
83-83: Confirm that the instructions for signing files and the process of selecting a signature certificate are clear to the user and that the link to choose a certificate is functioning correctly.
98-98: The description of service files and their visibility only to users with full rights should be clear. Confirm that this accurately reflects the application's permissions model.
src/cf/DataProcessors/Сканирование/Forms/НастройкаСканирования/Ext/Form/Module.bsl (2)
127-141: The removal of the procedure
ИмяУстройстваНачалоВыбораЗавершение
could potentially lead to issues if it is referenced elsewhere. Verify that this procedure is not called from any other part of the codebase.383-384: The procedure
ОКЗавершение
appears to be unchanged semantically. It's good practice to ensure that the saving of settings is handled correctly and that any potential exceptions are managed.src/cf/InformationRegisters/НастройкиПравОбъектов/Ext/ManagerModule.bsl (7)
19-23: The initialization of
НовоеЗначение
as an empty string and its subsequent use as an additional parameter in the call toПроверенныеВозможныеПраваСеанса
is a significant change. Ensure that the new logic correctly handles the empty string and that the called function is designed to accept and process this new parameter appropriately.799-799: The addition of the
ХешСумма
parameter to the functionПроверенныеВозможныеПраваСеанса
requires verification that all calls to this function have been updated accordingly. Also, ensure that the function's logic correctly utilizes this new parameter.811-814: The introduction of new data structures such as
СвойстваВладельцев
,ТипыВладельцев
,ОтдельныеТаблицы
, andИерархическиеТаблицы
suggests a significant change in how rights and their properties are managed. Ensure that these structures are correctly populated and used throughout the module, and that any dependent logic is updated to reflect these changes.854-857: The logic within
ПроверенныеВозможныеПраваСеанса
now conditionally retrieves or initializesПраваВладельца
. Ensure that this conditional logic is correct and that theПраваВладельца
structure is properly initialized in all cases to prevent runtime errors.974-976: The function
СвойстваВозможногоПрава
is now being called with anИндексПрава
parameter. Verify that the logic inside this function correctly handles the index and that the index is being used appropriately throughout the module.985-991: The addition of version information management with
ОписаниеВерсии
and related logic is a significant change. Ensure that the versioning logic is consistent and that the version information is correctly generated and used where necessary.1097-1097: The function
СвойстваВозможногоПрава
has been modified to include anИндексПрава
parameter. Ensure that the index is correctly used within the function and that any logic depending on the order of rights is updated to accommodate this change.src/cf/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписи/Ext/Form/Module.bsl (1)
- 60-62: The change from
ЗначениеРеквизитаОбъекта
toЗначенияРеквизитовОбъекта
indicates a shift from retrieving a single property value to multiple values. Ensure that the rest of the code correctly handles the returned structure, especially sinceСвойстваВладельца.ЗначениеПустойСсылки
is used later, which implies that the new method returns a structure with named properties.src/cf/Reports/УниверсальныйОтчет/Ext/ManagerModule.bsl (5)
66-66: The function signature for
ФиксированныеПараметры
has been updated to include a new parameterКонтекст
. Ensure that all calls to this function have been updated to pass the new parameter where required.78-78: The new parameter
Контекст
is being used correctly in the function call.113-113: The procedure signature for
УстановитьФиксированныйПараметр
has been updated to include a new optional parameterКонтекст
. Ensure that all calls to this procedure have been updated to pass the new parameter where required.159-159: The new parameter
Контекст
is being used correctly in the function call.1317-1340: The function signature for
МетаданныеИсточникаДанных
has been updated to include a new parameterКонтекст
, and error handling logic has been added. The error handling includes user notifications and logging, which is a good practice for debugging and user experience.
ПредставлениеУровня = УправлениеКонтактнойИнформациейКлиентСервер.СоединитьНаименованиеИТипАдресногоОбъекта(НаименованиеУровня, | ||
ОбъектАдреса[ИмяПоля + "Type"], ЭтоУровеньРегиона); | ||
КонецЕсли; | ||
|
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.
The assignment to ПредставлениеУровня
outside the conditional block seems redundant and could potentially overwrite the value set inside the conditional block. Please verify if this line is necessary or if it should be removed to prevent logical errors.
- ПредставлениеУровня = УправлениеКонтактнойИнформациейКлиентСервер.СоединитьНаименованиеИТипАдресногоОбъекта(НаименованиеУровня,
- ОбъектАдреса[ИмяПоля + "Type"], СтрСравнить(ИмяПоля, "area") = 0);
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.
@@ -790,7 +790,7 @@ | |||
|
|||
КонецПроцедуры | |||
|
|||
// Проверяет, ограничения клиента для работы со сканером. | |||
// Проверяет ограничения клиента для работы со сканером. |
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.
The comment block appears to be describing a function that checks client restrictions for scanner operation, but the actual function definition is not present in this hunk. Ensure that the function ДоступнаКомандаСканировать
is correctly defined and follows this comment block.
Асинх Процедура ДалееПослеВыгрузкиСертификата(ВыгруженныеДанные, СертификатКриптографии) Экспорт | ||
|
||
ПоказатьСтраницуУточнениеСвойствСертификата(ЭтотОбъект, | ||
СертификатКриптографии, | ||
ВыгруженныеДанные, | ||
ЭлектроннаяПодписьКлиент.СвойстваСертификата(СертификатКриптографии)); | ||
Ждать ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата(СертификатКриптографии)); | ||
|
||
КонецПроцедуры |
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.
The change to an asynchronous procedure with the Асинх
keyword and the use of Ждать
before the method call ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата
is consistent with the shift towards asynchronous programming. Ensure that all dependent code and event handlers are updated to handle the asynchronous nature of this procedure, including proper error handling and user feedback mechanisms.
СозданныйЭлемент = ?(Не СтрокаКИ.ЭтоИсторическаяКонтактнаяИнформация, | ||
СозданныеЭлементы.Получить(СтрокаКИ.Вид), Неопределено); | ||
|
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.
The assignment to СозданныйЭлемент
is done twice, which may be redundant. If the condition on line 1969 evaluates to false, the subsequent assignment on line 1971 will overwrite the Неопределено
value. Consider removing the second assignment if it's not necessary.
- СозданныйЭлемент = СозданныеЭлементы.Получить(СтрокаКИ.Вид);
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.
СозданныйЭлемент = ?(Не СтрокаКИ.ЭтоИсторическаяКонтактнаяИнформация, | |
СозданныеЭлементы.Получить(СтрокаКИ.Вид), Неопределено); | |
СозданныйЭлемент = ?(Не СтрокаКИ.ЭтоИсторическаяКонтактнаяИнформация, | |
СозданныеЭлементы.Получить(СтрокаКИ.Вид), Неопределено); | |
Если СравнитьВерсии(СистемнаяИнформация.ВерсияПриложения, "8.3.24.1305") >= 0 Тогда | ||
Если СертификатыУдостоверяющихЦентров = Неопределено Тогда | ||
СертификатыУдостоверяющихЦентров = Новый СертификатыУдостоверяющихЦентровОС(); | ||
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда | ||
ЭтоОСWindows = ОбщегоНазначения.ЭтоWindowsСервер(); | ||
ЭтоОСLinux = ОбщегоНазначения.ЭтоLinuxСервер(); | ||
#Иначе | ||
ЭтоОСWindows = ОбщегоНазначенияКлиент.ЭтоWindowsКлиент(); | ||
ЭтоОСLinux = ОбщегоНазначенияКлиент.ЭтоLinuxКлиент(); | ||
#КонецЕсли | ||
Если ЭтоОСWindows Тогда | ||
СертификатыУдостоверяющихЦентров = Новый СертификатыУдостоверяющихЦентровWindows(); | ||
ИначеЕсли ЭтоОСLinux Тогда | ||
СертификатыУдостоверяющихЦентров = Новый СертификатыУдостоверяющихЦентровLinux(); | ||
Иначе | ||
СертификатыУдостоверяющихЦентров = Новый СертификатыУдостоверяющихЦентровОС(); | ||
КонецЕсли; |
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.
The logic for instantiating different certificate classes based on the OS type appears to be correct. However, consider the following points:
- Ensure that the
СертификатыУдостоверяющихЦентровWindows
andСертификатыУдостоверяющихЦентровLinux
classes are fully implemented and tested on their respective platforms. - Verify that the
СертификатыУдостоверяющихЦентровОС
class is a suitable default for operating systems other than Windows and Linux. - The use of preprocessor directives (
#Если
,#Иначе
,#КонецЕсли
) increases code complexity. If this pattern is common in the codebase, it's acceptable, but if not, consider refactoring to a more maintainable approach. - The check for the application version (
СравнитьВерсии
) is tightly coupled with the logic for certificate instantiation. Ensure that this coupling is intentional and documented.
Функция НовыеПараметрыПодписиКриптографии() Экспорт | ||
|
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.
The function НовыеПараметрыПодписиКриптографии
appears to be incomplete, as it only initializes a structure without populating it with any data. Please ensure that the implementation is finished or mark it as a work in progress if it's not ready for production.
// Структура - параметры подписи криптографии: | ||
// * ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии | ||
// * СрокДействияПоследнейМеткиВремени - Дата, Неопределено - заполняется только с помощью менеджера криптографии. | ||
// * ДатаПодписиИзМетки - Дата, Неопределено - самый ранний штамп времени. | ||
// * НеподтвержденнаяДатаПодписи - Дата - неподтвержденная дата подписи. | ||
// - Неопределено - неподтвержденная дата подписи отсутствует в данных подписи. | ||
// * ДатаПоследнейМеткиВремени - Дата - дата последней метки времени. | ||
// * Сертификат - СертификатКриптографии - сертификат подписанта. | ||
// * ОписаниеСертификата - см. ЭлектроннаяПодписьКлиент.СвойстваСертификата. |
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.
The variable ДатаПодписиИзМетки
is initialized but not used within the visible scope of the hunk. If it's not used later in the function, consider removing it to avoid confusion and maintain clean code.
Если СертификатДействителенДо < ОбщегоНазначенияКлиент.ДатаСеанса() Тогда | ||
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки", | ||
НСтр("ru = 'У выбранного сертификата истек срок действия. | ||
|Выберите другой сертификат.'")); | ||
|
||
ДополнительныеСвойстваСертификата = ЭлектроннаяПодписьСлужебныйКлиентСервер.ДополнительныеСвойстваСертификата(СертификатАдрес); | ||
Если ЗначениеЗаполнено(ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча) | ||
И ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча < ОбщегоНазначенияКлиент.ДатаСеанса() Тогда | ||
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки", | ||
НСтр("ru = 'У выбранного сертификата истек срок действия закрытого ключа. | ||
|Выберите другой сертификат.'")); | ||
Иначе | ||
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки", | ||
НСтр("ru = 'У выбранного сертификата истек срок действия. | ||
|Выберите другой сертификат.'")); | ||
КонецЕсли; | ||
ОбработатьОшибку(Контекст.Оповещение, Контекст.ОшибкаНаКлиенте, Контекст.ОшибкаНаСервере); | ||
Возврат; | ||
КонецЕсли; |
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.
The updated error handling logic now checks both the certificate and the private key associated with it for expiration. If either is expired, an appropriate error message is displayed to the user. Ensure that the error messages are consistent with the rest of the application and that they are localized correctly for the end-user.
- НСтр("ru = 'У выбранного сертификата истек срок действия закрытого ключа.
+ НСтр("ru = 'Срок действия закрытого ключа выбранного сертификата истек.
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.
Если СертификатДействителенДо < ОбщегоНазначенияКлиент.ДатаСеанса() Тогда | |
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки", | |
НСтр("ru = 'У выбранного сертификата истек срок действия. | |
|Выберите другой сертификат.'")); | |
ДополнительныеСвойстваСертификата = ЭлектроннаяПодписьСлужебныйКлиентСервер.ДополнительныеСвойстваСертификата(СертификатАдрес); | |
Если ЗначениеЗаполнено(ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча) | |
И ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча < ОбщегоНазначенияКлиент.ДатаСеанса() Тогда | |
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки", | |
НСтр("ru = 'У выбранного сертификата истек срок действия закрытого ключа. | |
|Выберите другой сертификат.'")); | |
Иначе | |
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки", | |
НСтр("ru = 'У выбранного сертификата истек срок действия. | |
|Выберите другой сертификат.'")); | |
КонецЕсли; | |
ОбработатьОшибку(Контекст.Оповещение, Контекст.ОшибкаНаКлиенте, Контекст.ОшибкаНаСервере); | |
Возврат; | |
КонецЕсли; | |
Если СертификатДействителенДо < ОбщегоНазначенияКлиент.ДатаСеанса() Тогда | |
ДополнительныеСвойстваСертификата = ЭлектроннаяПодписьСлужебныйКлиентСервер.ДополнительныеСвойстваСертификата(СертификатАдрес); | |
Если ЗначениеЗаполнено(ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча) | |
И ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча < ОбщегоНазначенияКлиент.ДатаСеанса() Тогда | |
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки", | |
НСтр("ru = 'Срок действия закрытого ключа выбранного сертификата истек. | |
|Выберите другой сертификат.'")); | |
Иначе | |
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки", | |
НСтр("ru = 'У выбранного сертификата истек срок действия. | |
|Выберите другой сертификат.'")); | |
КонецЕсли; | |
ОбработатьОшибку(Контекст.Оповещение, Контекст.ОшибкаНаКлиенте, Контекст.ОшибкаНаСервере); | |
Возврат; | |
КонецЕсли; |
Возврат; | ||
КонецЕсли; | ||
ПодключаемыйМодуль = РезультатПроверкиИнициализации.ПодключаемыйМодуль; | ||
РаботаСФайламиСлужебныйКлиент.ВключитьЛогированиеКомпоненты(ПодключаемыйМодуль); | ||
РаботаСФайламиСлужебныйКлиент.ВключитьЛогированиеКомпоненты(ПодключаемыйМодуль, Истина); | ||
|
||
ПараметрыОткрытия.ТекущийШаг = 2; | ||
|
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.
💡 NOTE
Codebase verification is a beta feature.
The search results indicate that the method ВключитьЛогированиеКомпоненты
is called in multiple places within the codebase. Specifically, it is found in:
src/cf/DataProcessors/Сканирование/Forms/РезультатСканирования/Ext/Form/Module.bsl
with the new boolean parameterИстина
.- Two occurrences in
src/cf/CommonModules/РаботаСФайламиКлиент/Ext/Module.bsl
without the boolean parameter. - The method definition in
src/cf/CommonModules/РаботаСФайламиСлужебныйКлиент/Ext/Module.bsl
which shows that the second parameter has a default value (Перезапуск = Ложь
).
Given that the method definition includes a default value for the second parameter, it is not strictly necessary to update all calls to include the new parameter, as they will work with the default value if the second argument is omitted. However, it is still a good practice to review these calls to ensure that the intended behavior is achieved, especially if the default behavior has changed or if explicitness is desired for clarity.
- Calls to
ВключитьЛогированиеКомпоненты
insrc/cf/CommonModules/РаботаСФайламиКлиент/Ext/Module.bsl
should be reviewed to determine if the new boolean parameterИстина
should be passed explicitly.
Analysis chain
The addition of the Истина
parameter to the ВключитьЛогированиеКомпоненты
method call at line 461 is noted. Ensure that all other calls to this method across the codebase, if any, are updated accordingly to include this new parameter. This is important to maintain consistency and avoid runtime errors due to method signature mismatches.
The previous script failed because the file type 'bsl' is not recognized by ripgrep. I will adjust the script to search without specifying a file type.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Search for other occurrences of the method call to ensure they are updated.
rg --type bsl "ВключитьЛогированиеКомпоненты\("
Length of output: 77
Script:
#!/bin/bash
# Search for other occurrences of the method call to ensure they are updated.
rg "ВключитьЛогированиеКомпоненты\("
Length of output: 841
НовоеЗначение = ""; | ||
ПроверенныеПоставляемыеПрофилиСеанса(СвойстваСеанса, НовоеЗначение); |
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 starting the transaction before calling ПроверенныеПоставляемыеПрофилиСеанса
to ensure that any changes made by the function are included within the transaction scope.
Страница релиза:
https://releases.1c.ru/version_files?nick=SSL31&ver=3.1.9.238 Версии для обновления:
Summary by CodeRabbit
New Features
Improvements
Bug Fixes
Documentation
Refactor
Style
Chores
Tests