mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-17 00:30:23 +03:00
Неизвестный тип объекта обрабатывался веткой «warning» и всё равно попадал в Rights.xml: и генератор, и валидатор рапортовали успех. Блок прав на тип, который прав не имеет, платформа не отвергает — конфигурация с правами на перечисление не загружается в информационную базу, конфигуратор зависает без сообщений. Белый список — дерево редактора ролей: 27 типов (добавлен ExternalDataSource, которого не было ни в одной таблице) плюс таблица видов вложенности с наборами прав и привязкой вида к типу-родителю. Значения сняты с корпуса (acc/erp/ut/unf, ~2750 ролей) и с выгрузок роли со всеми проставленными правами — для внешнего источника данных и перерасчёта регистра расчёта, которых в корпусе нет. - role-compile: отказ ДО записи файлов, все причины разом, exit 1; ни файлов роли, ни записи в Configuration.xml. Русские алиасы для типов без прав — ради внятного отказа, а не ради генерации. - role-validate: те же случаи — ошибка вместо предупреждения. - Побочно снято 424 ложных предупреждения на корпусе: права Use у операций веб-сервисов и методов HTTP-сервисов считались недопустимыми для вложенных объектов. - Проверка имён прав и вложенных путей больше не пропускает мусор: неизвестное право и путь вида Enum.Х.Attribute.Y раньше не проверялись вовсе. - docs/1c-role-spec.md: ExternalDataSource ошибочно числился типом без прав. - dsl-reference.md переписан под «что можно написать» (тип → права, виды вложенности) вместо таблиц прощающего ввода. Тесты: expect.filesAbsent в раннере; новые кейсы на отказ и на вложенные объекты. Починены кейсы, которые ничего не проверяли: три задавали права одной строкой "Read View" (навык писал в эталон несуществующее право), valid-role собирал роль неизвестным ключом и валидировал пустую, bad-root проходил на «файл не найден». Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
252 lines
9.4 KiB
XML
252 lines
9.4 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.17">
|
|
<Configuration uuid="UUID-001">
|
|
<InternalInfo>
|
|
<xr:ContainedObject>
|
|
<xr:ClassId>UUID-002</xr:ClassId>
|
|
<xr:ObjectId>UUID-003</xr:ObjectId>
|
|
</xr:ContainedObject>
|
|
<xr:ContainedObject>
|
|
<xr:ClassId>UUID-004</xr:ClassId>
|
|
<xr:ObjectId>UUID-005</xr:ObjectId>
|
|
</xr:ContainedObject>
|
|
<xr:ContainedObject>
|
|
<xr:ClassId>UUID-006</xr:ClassId>
|
|
<xr:ObjectId>UUID-007</xr:ObjectId>
|
|
</xr:ContainedObject>
|
|
<xr:ContainedObject>
|
|
<xr:ClassId>UUID-008</xr:ClassId>
|
|
<xr:ObjectId>UUID-009</xr:ObjectId>
|
|
</xr:ContainedObject>
|
|
<xr:ContainedObject>
|
|
<xr:ClassId>UUID-010</xr:ClassId>
|
|
<xr:ObjectId>UUID-011</xr:ObjectId>
|
|
</xr:ContainedObject>
|
|
<xr:ContainedObject>
|
|
<xr:ClassId>UUID-012</xr:ClassId>
|
|
<xr:ObjectId>UUID-013</xr:ObjectId>
|
|
</xr:ContainedObject>
|
|
<xr:ContainedObject>
|
|
<xr:ClassId>UUID-014</xr:ClassId>
|
|
<xr:ObjectId>UUID-015</xr:ObjectId>
|
|
</xr:ContainedObject>
|
|
</InternalInfo>
|
|
<Properties>
|
|
<Name>TestConfig</Name>
|
|
<Synonym>
|
|
<v8:item>
|
|
<v8:lang>ru</v8:lang>
|
|
<v8:content>TestConfig</v8:content>
|
|
</v8:item>
|
|
</Synonym>
|
|
<Comment/>
|
|
<NamePrefix/>
|
|
<ConfigurationExtensionCompatibilityMode>Version8_3_24</ConfigurationExtensionCompatibilityMode>
|
|
<DefaultRunMode>ManagedApplication</DefaultRunMode>
|
|
<UsePurposes>
|
|
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
|
|
</UsePurposes>
|
|
<ScriptVariant>Russian</ScriptVariant>
|
|
<DefaultRoles/>
|
|
<Vendor/>
|
|
<Version/>
|
|
<UpdateCatalogAddress/>
|
|
<IncludeHelpInContents>false</IncludeHelpInContents>
|
|
<UseManagedFormInOrdinaryApplication>false</UseManagedFormInOrdinaryApplication>
|
|
<UseOrdinaryFormInManagedApplication>false</UseOrdinaryFormInManagedApplication>
|
|
<AdditionalFullTextSearchDictionaries/>
|
|
<CommonSettingsStorage/>
|
|
<ReportsUserSettingsStorage/>
|
|
<ReportsVariantsStorage/>
|
|
<FormDataSettingsStorage/>
|
|
<DynamicListsUserSettingsStorage/>
|
|
<URLExternalDataStorage/>
|
|
<Content/>
|
|
<DefaultReportForm/>
|
|
<DefaultReportVariantForm/>
|
|
<DefaultReportSettingsForm/>
|
|
<DefaultReportAppearanceTemplate/>
|
|
<DefaultDynamicListSettingsForm/>
|
|
<DefaultSearchForm/>
|
|
<DefaultDataHistoryChangeHistoryForm/>
|
|
<DefaultDataHistoryVersionDataForm/>
|
|
<DefaultDataHistoryVersionDifferencesForm/>
|
|
<DefaultCollaborationSystemUsersChoiceForm/>
|
|
<RequiredMobileApplicationPermissions/>
|
|
<UsedMobileApplicationFunctionalities>
|
|
<app:functionality>
|
|
<app:functionality>Biometrics</app:functionality>
|
|
<app:use>true</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>Location</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>BackgroundLocation</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>BluetoothPrinters</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>WiFiPrinters</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>Contacts</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>Calendars</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>PushNotifications</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>LocalNotifications</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>InAppPurchases</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>PersonalComputerFileExchange</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>Ads</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>NumberDialing</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>CallProcessing</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>CallLog</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>AutoSendSMS</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>ReceiveSMS</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>SMSLog</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>Camera</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>Microphone</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>MusicLibrary</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>PictureAndVideoLibraries</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>AudioPlaybackAndVibration</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>BackgroundAudioPlaybackAndVibration</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>InstallPackages</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>OSBackup</app:functionality>
|
|
<app:use>true</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>ApplicationUsageStatistics</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>BarcodeScanning</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>BackgroundAudioRecording</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>AllFilesAccess</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>Videoconferences</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>NFC</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>DocumentScanning</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>SpeechToText</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>Geofences</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>IncomingShareRequests</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
<app:functionality>
|
|
<app:functionality>AllIncomingShareRequestsTypesProcessing</app:functionality>
|
|
<app:use>false</app:use>
|
|
</app:functionality>
|
|
</UsedMobileApplicationFunctionalities>
|
|
<StandaloneConfigurationRestrictionRoles/>
|
|
<MobileApplicationURLs/>
|
|
<AllowedIncomingShareRequestTypes/>
|
|
<MainClientApplicationWindowMode>Normal</MainClientApplicationWindowMode>
|
|
<DefaultInterface/>
|
|
<DefaultStyle/>
|
|
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
|
<BriefInformation/>
|
|
<DetailedInformation/>
|
|
<Copyright/>
|
|
<VendorInformationAddress/>
|
|
<ConfigurationInformationAddress/>
|
|
<DataLockControlMode>Managed</DataLockControlMode>
|
|
<ObjectAutonumerationMode>NotAutoFree</ObjectAutonumerationMode>
|
|
<ModalityUseMode>DontUse</ModalityUseMode>
|
|
<SynchronousPlatformExtensionAndAddInCallUseMode>DontUse</SynchronousPlatformExtensionAndAddInCallUseMode>
|
|
<InterfaceCompatibilityMode>TaxiEnableVersion8_2</InterfaceCompatibilityMode>
|
|
<DatabaseTablespacesUseMode>DontUse</DatabaseTablespacesUseMode>
|
|
<CompatibilityMode>Version8_3_24</CompatibilityMode>
|
|
<DefaultConstantsForm/>
|
|
</Properties>
|
|
<ChildObjects>
|
|
<Language>Русский</Language>
|
|
<Role>Интеграция</Role>
|
|
</ChildObjects>
|
|
</Configuration>
|
|
</MetaDataObject> |