mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-27 07:01:02 +03:00
feat: role-compile OutputDir accepts config root (like meta-compile)
- OutputDir now accepts config root dir — creates Roles/ subdirectory - Back-compat: if OutputDir ends with "Roles", uses it as-is - Configuration.xml lookup adjusted accordingly - Updated SKILL.md, PS1, PY scripts (v1.3) - Updated test cases and snapshots for new Roles/ path Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
bc6bc01047
commit
0d116863ec
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
name: role-compile
|
name: role-compile
|
||||||
description: Создание роли 1С из описания прав. Используй когда нужно создать новую роль с набором прав на объекты
|
description: Создание роли 1С из описания прав. Используй когда нужно создать новую роль с набором прав на объекты
|
||||||
argument-hint: <JsonPath> <RolesDir>
|
argument-hint: <JsonPath> <OutputDir>
|
||||||
allowed-tools:
|
allowed-tools:
|
||||||
- Bash
|
- Bash
|
||||||
- Read
|
- Read
|
||||||
@@ -18,13 +18,13 @@ allowed-tools:
|
|||||||
| Параметр | Описание |
|
| Параметр | Описание |
|
||||||
|----------|----------|
|
|----------|----------|
|
||||||
| `JsonPath` | Путь к JSON-определению роли |
|
| `JsonPath` | Путь к JSON-определению роли |
|
||||||
| `RolesDir` | Каталог `Roles/` в исходниках конфигурации |
|
| `OutputDir` | Корень выгрузки конфигурации (где `Configuration.xml`, `Roles/` и т.д.) |
|
||||||
|
|
||||||
```powershell
|
```powershell
|
||||||
powershell.exe -NoProfile -File .claude/skills/role-compile/scripts/role-compile.ps1 -JsonPath "<json>" -OutputDir "<RolesDir>"
|
powershell.exe -NoProfile -File .claude/skills/role-compile/scripts/role-compile.ps1 -JsonPath "<json>" -OutputDir "<ConfigDir>"
|
||||||
```
|
```
|
||||||
|
|
||||||
`<Role>ИмяРоли</Role>` автоматически добавляется в `<ChildObjects>` файла `Configuration.xml` (ожидается в parent от `RolesDir`).
|
Создаёт `{OutputDir}/Roles/Имя.xml` и `{OutputDir}/Roles/Имя/Ext/Rights.xml`. Регистрирует `<Role>` в `Configuration.xml`.
|
||||||
|
|
||||||
## JSON DSL
|
## JSON DSL
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# role-compile v1.2 — Compile 1C role from JSON
|
# role-compile v1.3 — Compile 1C role from JSON
|
||||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||||
param(
|
param(
|
||||||
[Parameter(Mandatory)]
|
[Parameter(Mandatory)]
|
||||||
@@ -615,14 +615,25 @@ $outDir = if ([System.IO.Path]::IsPathRooted($OutputDir)) {
|
|||||||
Join-Path (Get-Location) $OutputDir
|
Join-Path (Get-Location) $OutputDir
|
||||||
}
|
}
|
||||||
|
|
||||||
# Metadata: OutputDir/RoleName.xml
|
# Determine Roles dir and config root
|
||||||
$metadataPath = Join-Path $outDir "$roleName.xml"
|
# Back-compat: if OutputDir leaf is "Roles", use as-is; otherwise treat as config root
|
||||||
if (-not (Test-Path $outDir)) {
|
$leaf = Split-Path $outDir -Leaf
|
||||||
New-Item -ItemType Directory -Path $outDir -Force | Out-Null
|
if ($leaf -eq "Roles") {
|
||||||
|
$rolesDir = $outDir
|
||||||
|
$configDir = Split-Path $outDir -Parent
|
||||||
|
} else {
|
||||||
|
$rolesDir = Join-Path $outDir "Roles"
|
||||||
|
$configDir = $outDir
|
||||||
}
|
}
|
||||||
|
|
||||||
# Rights: OutputDir/RoleName/Ext/Rights.xml
|
# Metadata: Roles/RoleName.xml
|
||||||
$roleSubDir = Join-Path $outDir $roleName
|
$metadataPath = Join-Path $rolesDir "$roleName.xml"
|
||||||
|
if (-not (Test-Path $rolesDir)) {
|
||||||
|
New-Item -ItemType Directory -Path $rolesDir -Force | Out-Null
|
||||||
|
}
|
||||||
|
|
||||||
|
# Rights: Roles/RoleName/Ext/Rights.xml
|
||||||
|
$roleSubDir = Join-Path $rolesDir $roleName
|
||||||
$extDir = Join-Path $roleSubDir "Ext"
|
$extDir = Join-Path $roleSubDir "Ext"
|
||||||
$rightsPath = Join-Path $extDir "Rights.xml"
|
$rightsPath = Join-Path $extDir "Rights.xml"
|
||||||
if (-not (Test-Path $extDir)) {
|
if (-not (Test-Path $extDir)) {
|
||||||
@@ -635,7 +646,6 @@ $enc = New-Object System.Text.UTF8Encoding($true)
|
|||||||
|
|
||||||
# --- 12. Register in Configuration.xml ---
|
# --- 12. Register in Configuration.xml ---
|
||||||
|
|
||||||
$configDir = Split-Path $outDir -Parent
|
|
||||||
$configXmlPath = Join-Path $configDir "Configuration.xml"
|
$configXmlPath = Join-Path $configDir "Configuration.xml"
|
||||||
$regResult = $null
|
$regResult = $null
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# role-compile v1.2 — Compile 1C role from JSON
|
# role-compile v1.3 — Compile 1C role from JSON
|
||||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||||
import argparse
|
import argparse
|
||||||
import json
|
import json
|
||||||
@@ -563,12 +563,22 @@ def main():
|
|||||||
if not os.path.isabs(out_dir):
|
if not os.path.isabs(out_dir):
|
||||||
out_dir = os.path.join(os.getcwd(), out_dir)
|
out_dir = os.path.join(os.getcwd(), out_dir)
|
||||||
|
|
||||||
# Metadata: OutputDir/RoleName.xml
|
# Determine Roles dir and config root
|
||||||
metadata_path = os.path.join(out_dir, f'{role_name}.xml')
|
# Back-compat: if OutputDir leaf is "Roles", use as-is; otherwise treat as config root
|
||||||
os.makedirs(out_dir, exist_ok=True)
|
leaf = os.path.basename(out_dir.rstrip(os.sep).rstrip('/'))
|
||||||
|
if leaf == 'Roles':
|
||||||
|
roles_dir = out_dir
|
||||||
|
config_dir = os.path.dirname(out_dir)
|
||||||
|
else:
|
||||||
|
roles_dir = os.path.join(out_dir, 'Roles')
|
||||||
|
config_dir = out_dir
|
||||||
|
|
||||||
# Rights: OutputDir/RoleName/Ext/Rights.xml
|
# Metadata: Roles/RoleName.xml
|
||||||
role_sub_dir = os.path.join(out_dir, role_name)
|
metadata_path = os.path.join(roles_dir, f'{role_name}.xml')
|
||||||
|
os.makedirs(roles_dir, exist_ok=True)
|
||||||
|
|
||||||
|
# Rights: Roles/RoleName/Ext/Rights.xml
|
||||||
|
role_sub_dir = os.path.join(roles_dir, role_name)
|
||||||
ext_dir = os.path.join(role_sub_dir, 'Ext')
|
ext_dir = os.path.join(role_sub_dir, 'Ext')
|
||||||
rights_path = os.path.join(ext_dir, 'Rights.xml')
|
rights_path = os.path.join(ext_dir, 'Rights.xml')
|
||||||
os.makedirs(ext_dir, exist_ok=True)
|
os.makedirs(ext_dir, exist_ok=True)
|
||||||
@@ -577,7 +587,6 @@ def main():
|
|||||||
write_utf8_bom(rights_path, rights_xml)
|
write_utf8_bom(rights_path, rights_xml)
|
||||||
|
|
||||||
# --- 7. Register in Configuration.xml ---
|
# --- 7. Register in Configuration.xml ---
|
||||||
config_dir = os.path.dirname(out_dir)
|
|
||||||
config_xml_path = os.path.join(config_dir, 'Configuration.xml')
|
config_xml_path = os.path.join(config_dir, 'Configuration.xml')
|
||||||
reg_result = None
|
reg_result = None
|
||||||
|
|
||||||
|
|||||||
@@ -3,8 +3,14 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Товары" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Товары"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"input": {
|
"input": {
|
||||||
@@ -14,6 +20,9 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"expect": {
|
"expect": {
|
||||||
"files": ["Кладовщик.xml", "Кладовщик/Ext/Rights.xml"]
|
"files": [
|
||||||
|
"Roles/Кладовщик.xml",
|
||||||
|
"Roles/Кладовщик/Ext/Rights.xml"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,8 +3,14 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Document", "name": "РеализацияТоваров" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Document",
|
||||||
|
"name": "РеализацияТоваров"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"input": {
|
"input": {
|
||||||
@@ -15,6 +21,9 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"expect": {
|
"expect": {
|
||||||
"files": ["РедакторДокументов.xml", "РедакторДокументов/Ext/Rights.xml"]
|
"files": [
|
||||||
|
"Roles/РедакторДокументов.xml",
|
||||||
|
"Roles/РедакторДокументов/Ext/Rights.xml"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,8 +3,14 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "InformationRegister", "name": "Цены" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "InformationRegister",
|
||||||
|
"name": "Цены"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"input": {
|
"input": {
|
||||||
@@ -15,6 +21,9 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"expect": {
|
"expect": {
|
||||||
"files": ["ПравоЦен.xml", "ПравоЦен/Ext/Rights.xml"]
|
"files": [
|
||||||
|
"Roles/ПравоЦен.xml",
|
||||||
|
"Roles/ПравоЦен/Ext/Rights.xml"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,9 @@
|
|||||||
"name": "Пустая"
|
"name": "Пустая"
|
||||||
},
|
},
|
||||||
"expect": {
|
"expect": {
|
||||||
"files": ["Пустая.xml", "Пустая/Ext/Rights.xml"]
|
"files": [
|
||||||
|
"Roles/Пустая.xml",
|
||||||
|
"Roles/Пустая/Ext/Rights.xml"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,8 +3,14 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Контрагенты" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Контрагенты"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"input": {
|
"input": {
|
||||||
@@ -15,6 +21,9 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"expect": {
|
"expect": {
|
||||||
"files": ["ЧтениеКонтрагентов.xml", "ЧтениеКонтрагентов/Ext/Rights.xml"]
|
"files": [
|
||||||
|
"Roles/ЧтениеКонтрагентов.xml",
|
||||||
|
"Roles/ЧтениеКонтрагентов/Ext/Rights.xml"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -247,6 +247,7 @@
|
|||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Catalog>Товары</Catalog>
|
<Catalog>Товары</Catalog>
|
||||||
|
<Role>Кладовщик</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -247,6 +247,7 @@
|
|||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Document>РеализацияТоваров</Document>
|
<Document>РеализацияТоваров</Document>
|
||||||
|
<Role>РедакторДокументов</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -247,6 +247,7 @@
|
|||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<InformationRegister>Цены</InformationRegister>
|
<InformationRegister>Цены</InformationRegister>
|
||||||
|
<Role>ПравоЦен</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?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">
|
<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">
|
<Configuration uuid="UUID-001">
|
||||||
<InternalInfo>
|
<InternalInfo>
|
||||||
@@ -39,40 +39,40 @@
|
|||||||
<v8:content>TestConfig</v8:content>
|
<v8:content>TestConfig</v8:content>
|
||||||
</v8:item>
|
</v8:item>
|
||||||
</Synonym>
|
</Synonym>
|
||||||
<Comment/>
|
<Comment />
|
||||||
<NamePrefix/>
|
<NamePrefix />
|
||||||
<ConfigurationExtensionCompatibilityMode>Version8_3_24</ConfigurationExtensionCompatibilityMode>
|
<ConfigurationExtensionCompatibilityMode>Version8_3_24</ConfigurationExtensionCompatibilityMode>
|
||||||
<DefaultRunMode>ManagedApplication</DefaultRunMode>
|
<DefaultRunMode>ManagedApplication</DefaultRunMode>
|
||||||
<UsePurposes>
|
<UsePurposes>
|
||||||
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
|
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
|
||||||
</UsePurposes>
|
</UsePurposes>
|
||||||
<ScriptVariant>Russian</ScriptVariant>
|
<ScriptVariant>Russian</ScriptVariant>
|
||||||
<DefaultRoles/>
|
<DefaultRoles />
|
||||||
<Vendor></Vendor>
|
<Vendor></Vendor>
|
||||||
<Version></Version>
|
<Version></Version>
|
||||||
<UpdateCatalogAddress/>
|
<UpdateCatalogAddress />
|
||||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
<IncludeHelpInContents>false</IncludeHelpInContents>
|
||||||
<UseManagedFormInOrdinaryApplication>false</UseManagedFormInOrdinaryApplication>
|
<UseManagedFormInOrdinaryApplication>false</UseManagedFormInOrdinaryApplication>
|
||||||
<UseOrdinaryFormInManagedApplication>false</UseOrdinaryFormInManagedApplication>
|
<UseOrdinaryFormInManagedApplication>false</UseOrdinaryFormInManagedApplication>
|
||||||
<AdditionalFullTextSearchDictionaries/>
|
<AdditionalFullTextSearchDictionaries />
|
||||||
<CommonSettingsStorage/>
|
<CommonSettingsStorage />
|
||||||
<ReportsUserSettingsStorage/>
|
<ReportsUserSettingsStorage />
|
||||||
<ReportsVariantsStorage/>
|
<ReportsVariantsStorage />
|
||||||
<FormDataSettingsStorage/>
|
<FormDataSettingsStorage />
|
||||||
<DynamicListsUserSettingsStorage/>
|
<DynamicListsUserSettingsStorage />
|
||||||
<URLExternalDataStorage/>
|
<URLExternalDataStorage />
|
||||||
<Content/>
|
<Content />
|
||||||
<DefaultReportForm/>
|
<DefaultReportForm />
|
||||||
<DefaultReportVariantForm/>
|
<DefaultReportVariantForm />
|
||||||
<DefaultReportSettingsForm/>
|
<DefaultReportSettingsForm />
|
||||||
<DefaultReportAppearanceTemplate/>
|
<DefaultReportAppearanceTemplate />
|
||||||
<DefaultDynamicListSettingsForm/>
|
<DefaultDynamicListSettingsForm />
|
||||||
<DefaultSearchForm/>
|
<DefaultSearchForm />
|
||||||
<DefaultDataHistoryChangeHistoryForm/>
|
<DefaultDataHistoryChangeHistoryForm />
|
||||||
<DefaultDataHistoryVersionDataForm/>
|
<DefaultDataHistoryVersionDataForm />
|
||||||
<DefaultDataHistoryVersionDifferencesForm/>
|
<DefaultDataHistoryVersionDifferencesForm />
|
||||||
<DefaultCollaborationSystemUsersChoiceForm/>
|
<DefaultCollaborationSystemUsersChoiceForm />
|
||||||
<RequiredMobileApplicationPermissions/>
|
<RequiredMobileApplicationPermissions />
|
||||||
<UsedMobileApplicationFunctionalities>
|
<UsedMobileApplicationFunctionalities>
|
||||||
<app:functionality>
|
<app:functionality>
|
||||||
<app:functionality>Biometrics</app:functionality>
|
<app:functionality>Biometrics</app:functionality>
|
||||||
@@ -223,18 +223,18 @@
|
|||||||
<app:use>false</app:use>
|
<app:use>false</app:use>
|
||||||
</app:functionality>
|
</app:functionality>
|
||||||
</UsedMobileApplicationFunctionalities>
|
</UsedMobileApplicationFunctionalities>
|
||||||
<StandaloneConfigurationRestrictionRoles/>
|
<StandaloneConfigurationRestrictionRoles />
|
||||||
<MobileApplicationURLs/>
|
<MobileApplicationURLs />
|
||||||
<AllowedIncomingShareRequestTypes/>
|
<AllowedIncomingShareRequestTypes />
|
||||||
<MainClientApplicationWindowMode>Normal</MainClientApplicationWindowMode>
|
<MainClientApplicationWindowMode>Normal</MainClientApplicationWindowMode>
|
||||||
<DefaultInterface/>
|
<DefaultInterface />
|
||||||
<DefaultStyle/>
|
<DefaultStyle />
|
||||||
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
||||||
<BriefInformation/>
|
<BriefInformation />
|
||||||
<DetailedInformation/>
|
<DetailedInformation />
|
||||||
<Copyright/>
|
<Copyright />
|
||||||
<VendorInformationAddress/>
|
<VendorInformationAddress />
|
||||||
<ConfigurationInformationAddress/>
|
<ConfigurationInformationAddress />
|
||||||
<DataLockControlMode>Managed</DataLockControlMode>
|
<DataLockControlMode>Managed</DataLockControlMode>
|
||||||
<ObjectAutonumerationMode>NotAutoFree</ObjectAutonumerationMode>
|
<ObjectAutonumerationMode>NotAutoFree</ObjectAutonumerationMode>
|
||||||
<ModalityUseMode>DontUse</ModalityUseMode>
|
<ModalityUseMode>DontUse</ModalityUseMode>
|
||||||
@@ -242,10 +242,11 @@
|
|||||||
<InterfaceCompatibilityMode>Taxi</InterfaceCompatibilityMode>
|
<InterfaceCompatibilityMode>Taxi</InterfaceCompatibilityMode>
|
||||||
<DatabaseTablespacesUseMode>DontUse</DatabaseTablespacesUseMode>
|
<DatabaseTablespacesUseMode>DontUse</DatabaseTablespacesUseMode>
|
||||||
<CompatibilityMode>Version8_3_24</CompatibilityMode>
|
<CompatibilityMode>Version8_3_24</CompatibilityMode>
|
||||||
<DefaultConstantsForm/>
|
<DefaultConstantsForm />
|
||||||
</Properties>
|
</Properties>
|
||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
|
<Role>Пустая</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -247,6 +247,7 @@
|
|||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Catalog>Контрагенты</Catalog>
|
<Catalog>Контрагенты</Catalog>
|
||||||
|
<Role>ЧтениеКонтрагентов</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -247,6 +247,7 @@
|
|||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Catalog>Товары</Catalog>
|
<Catalog>Товары</Catalog>
|
||||||
|
<Role>Кладовщик</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -248,6 +248,7 @@
|
|||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Catalog>Номенклатура</Catalog>
|
<Catalog>Номенклатура</Catalog>
|
||||||
<DataProcessor>Загрузка</DataProcessor>
|
<DataProcessor>Загрузка</DataProcessor>
|
||||||
|
<Role>ЧтениеНоменклатуры</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -248,6 +248,7 @@
|
|||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Catalog>Организации</Catalog>
|
<Catalog>Организации</Catalog>
|
||||||
<Document>РеализацияТоваровУслуг</Document>
|
<Document>РеализацияТоваровУслуг</Document>
|
||||||
|
<Role>ЧтениеДокументовПоОрганизации</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -3,8 +3,14 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Товары" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Товары"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"input": {
|
"input": {
|
||||||
@@ -14,6 +20,9 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"expect": {
|
"expect": {
|
||||||
"files": ["Кладовщик.xml", "Кладовщик/Ext/Rights.xml"]
|
"files": [
|
||||||
|
"Roles/Кладовщик.xml",
|
||||||
|
"Roles/Кладовщик/Ext/Rights.xml"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,13 +3,25 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Номенклатура" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Номенклатура"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "DataProcessor", "name": "Загрузка" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "DataProcessor",
|
||||||
|
"name": "Загрузка"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"input": {
|
"input": {
|
||||||
@@ -21,6 +33,9 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"expect": {
|
"expect": {
|
||||||
"files": ["ЧтениеНоменклатуры.xml", "ЧтениеНоменклатуры/Ext/Rights.xml"]
|
"files": [
|
||||||
|
"Roles/ЧтениеНоменклатуры.xml",
|
||||||
|
"Roles/ЧтениеНоменклатуры/Ext/Rights.xml"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,13 +3,25 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Организации" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Организации"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Document", "name": "РеализацияТоваровУслуг" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Document",
|
||||||
|
"name": "РеализацияТоваровУслуг"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"input": {
|
"input": {
|
||||||
@@ -17,13 +29,25 @@
|
|||||||
"synonym": "Чтение документов (ограничение по организации)",
|
"synonym": "Чтение документов (ограничение по организации)",
|
||||||
"objects": [
|
"objects": [
|
||||||
"Catalog.Организации: @view",
|
"Catalog.Организации: @view",
|
||||||
{ "name": "Document.РеализацияТоваровУслуг", "preset": "view", "rls": { "Read": "#ДляОбъекта(\"\")" } }
|
{
|
||||||
|
"name": "Document.РеализацияТоваровУслуг",
|
||||||
|
"preset": "view",
|
||||||
|
"rls": {
|
||||||
|
"Read": "#ДляОбъекта(\"\")"
|
||||||
|
}
|
||||||
|
}
|
||||||
],
|
],
|
||||||
"templates": [
|
"templates": [
|
||||||
{ "name": "ДляОбъекта(Модификатор)", "condition": "ГДЕ Организация = &ТекущаяОрганизация" }
|
{
|
||||||
|
"name": "ДляОбъекта(Модификатор)",
|
||||||
|
"condition": "ГДЕ Организация = &ТекущаяОрганизация"
|
||||||
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"expect": {
|
"expect": {
|
||||||
"files": ["ЧтениеДокументовПоОрганизации.xml", "ЧтениеДокументовПоОрганизации/Ext/Rights.xml"]
|
"files": [
|
||||||
|
"Roles/ЧтениеДокументовПоОрганизации.xml",
|
||||||
|
"Roles/ЧтениеДокументовПоОрганизации/Ext/Rights.xml"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,18 +3,36 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Товары" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Товары"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Document", "name": "Продажа" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Document",
|
||||||
|
"name": "Продажа"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "InformationRegister", "name": "Цены" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "InformationRegister",
|
||||||
|
"name": "Цены"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "role-compile/scripts/role-compile",
|
"script": "role-compile/scripts/role-compile",
|
||||||
@@ -26,9 +44,16 @@
|
|||||||
"InformationRegister.Цены: Read, Update"
|
"InformationRegister.Цены: Read, Update"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"params": { "rightsPath": "Комплексная/Ext/Rights.xml" },
|
"params": {
|
||||||
"expect": { "stdoutContains": "Catalog" }
|
"rightsPath": "Roles/Комплексная/Ext/Rights.xml"
|
||||||
|
},
|
||||||
|
"expect": {
|
||||||
|
"stdoutContains": "Catalog"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,14 +3,35 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Товары" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Товары"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "role-compile/scripts/role-compile",
|
"script": "role-compile/scripts/role-compile",
|
||||||
"input": { "name": "Тест", "rights": [{ "object": "Catalog.Товары", "rights": ["Read"] }] },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"name": "Тест",
|
||||||
|
"rights": [
|
||||||
|
{
|
||||||
|
"object": "Catalog.Товары",
|
||||||
|
"rights": [
|
||||||
|
"Read"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"params": { "rightsPath": "Тест/Ext/Rights.xml" }
|
"params": {
|
||||||
|
"rightsPath": "Roles/Тест/Ext/Rights.xml"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -249,6 +249,7 @@
|
|||||||
<Catalog>Товары</Catalog>
|
<Catalog>Товары</Catalog>
|
||||||
<Document>Продажа</Document>
|
<Document>Продажа</Document>
|
||||||
<InformationRegister>Цены</InformationRegister>
|
<InformationRegister>Цены</InformationRegister>
|
||||||
|
<Role>Комплексная</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -247,6 +247,7 @@
|
|||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Catalog>Товары</Catalog>
|
<Catalog>Товары</Catalog>
|
||||||
|
<Role>Тест</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -248,6 +248,7 @@
|
|||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Catalog>Организации</Catalog>
|
<Catalog>Организации</Catalog>
|
||||||
<Document>Реализация</Document>
|
<Document>Реализация</Document>
|
||||||
|
<Role>ОграниченноеЧтение</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -3,13 +3,25 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Организации" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Организации"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Document", "name": "Реализация" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Document",
|
||||||
|
"name": "Реализация"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "role-compile/scripts/role-compile",
|
"script": "role-compile/scripts/role-compile",
|
||||||
@@ -18,15 +30,31 @@
|
|||||||
"synonym": "Ограниченное чтение",
|
"synonym": "Ограниченное чтение",
|
||||||
"objects": [
|
"objects": [
|
||||||
"Catalog.Организации: @view",
|
"Catalog.Организации: @view",
|
||||||
{ "name": "Document.Реализация", "preset": "view", "rls": { "Read": "#ПоОрганизации(\"\")" } }
|
{
|
||||||
|
"name": "Document.Реализация",
|
||||||
|
"preset": "view",
|
||||||
|
"rls": {
|
||||||
|
"Read": "#ПоОрганизации(\"\")"
|
||||||
|
}
|
||||||
|
}
|
||||||
],
|
],
|
||||||
"templates": [
|
"templates": [
|
||||||
{ "name": "ПоОрганизации(Мод)", "condition": "ГДЕ Организация = &Орг" }
|
{
|
||||||
|
"name": "ПоОрганизации(Мод)",
|
||||||
|
"condition": "ГДЕ Организация = &Орг"
|
||||||
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"params": { "rightsPath": "ОграниченноеЧтение/Ext/Rights.xml" },
|
"params": {
|
||||||
"expect": { "stdoutContains": "RLS" }
|
"rightsPath": "Roles/ОграниченноеЧтение/Ext/Rights.xml"
|
||||||
|
},
|
||||||
|
"expect": {
|
||||||
|
"stdoutContains": "RLS"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
{
|
{
|
||||||
"name": "Ошибка валидации: неверный корневой элемент роли",
|
"name": "Ошибка валидации: неверный корневой элемент роли",
|
||||||
"setup": "fixture:bad-root",
|
"setup": "fixture:bad-root",
|
||||||
"params": { "rightsPath": "BadRole/Ext/Rights.xml" },
|
"params": {
|
||||||
|
"rightsPath": "Roles/BadRole/Ext/Rights.xml"
|
||||||
|
},
|
||||||
"expectError": true
|
"expectError": true
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,13 +3,25 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Товары" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Товары"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Document", "name": "Заказ" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Document",
|
||||||
|
"name": "Заказ"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "role-compile/scripts/role-compile",
|
"script": "role-compile/scripts/role-compile",
|
||||||
@@ -20,8 +32,13 @@
|
|||||||
"Document.Заказ: @edit"
|
"Document.Заказ: @edit"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"params": { "rightsPath": "Менеджер/Ext/Rights.xml" }
|
"params": {
|
||||||
|
"rightsPath": "Roles/Менеджер/Ext/Rights.xml"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -248,6 +248,7 @@
|
|||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Catalog>Товары</Catalog>
|
<Catalog>Товары</Catalog>
|
||||||
<Document>Заказ</Document>
|
<Document>Заказ</Document>
|
||||||
|
<Role>Менеджер</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -247,6 +247,7 @@
|
|||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Catalog>Товары</Catalog>
|
<Catalog>Товары</Catalog>
|
||||||
|
<Role>Тест</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -247,6 +247,7 @@
|
|||||||
<ChildObjects>
|
<ChildObjects>
|
||||||
<Language>Русский</Language>
|
<Language>Русский</Language>
|
||||||
<Document>Продажа</Document>
|
<Document>Продажа</Document>
|
||||||
|
<Role>СОграничениями</Role>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
||||||
@@ -3,14 +3,35 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Catalog", "name": "Товары" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Catalog",
|
||||||
|
"name": "Товары"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "role-compile/scripts/role-compile",
|
"script": "role-compile/scripts/role-compile",
|
||||||
"input": { "name": "Тест", "rights": [{ "object": "Catalog.Товары", "rights": ["Read"] }] },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"name": "Тест",
|
||||||
|
"rights": [
|
||||||
|
{
|
||||||
|
"object": "Catalog.Товары",
|
||||||
|
"rights": [
|
||||||
|
"Read"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"params": { "rightsPath": "Тест/Ext/Rights.xml" }
|
"params": {
|
||||||
|
"rightsPath": "Roles/Тест/Ext/Rights.xml"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,22 +3,42 @@
|
|||||||
"preRun": [
|
"preRun": [
|
||||||
{
|
{
|
||||||
"script": "meta-compile/scripts/meta-compile",
|
"script": "meta-compile/scripts/meta-compile",
|
||||||
"input": { "type": "Document", "name": "Продажа" },
|
"input": {
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"type": "Document",
|
||||||
|
"name": "Продажа"
|
||||||
|
},
|
||||||
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"script": "role-compile/scripts/role-compile",
|
"script": "role-compile/scripts/role-compile",
|
||||||
"input": {
|
"input": {
|
||||||
"name": "СОграничениями",
|
"name": "СОграничениями",
|
||||||
"objects": [
|
"objects": [
|
||||||
{ "name": "Document.Продажа", "preset": "view", "rls": { "Read": "#Шаблон(\"\")" } }
|
{
|
||||||
|
"name": "Document.Продажа",
|
||||||
|
"preset": "view",
|
||||||
|
"rls": {
|
||||||
|
"Read": "#Шаблон(\"\")"
|
||||||
|
}
|
||||||
|
}
|
||||||
],
|
],
|
||||||
"templates": [
|
"templates": [
|
||||||
{ "name": "Шаблон(Мод)", "condition": "ГДЕ Поле = &Параметр" }
|
{
|
||||||
|
"name": "Шаблон(Мод)",
|
||||||
|
"condition": "ГДЕ Поле = &Параметр"
|
||||||
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
"args": {
|
||||||
|
"-JsonPath": "{inputFile}",
|
||||||
|
"-OutputDir": "{workDir}"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"params": { "rightsPath": "СОграничениями/Ext/Rights.xml" }
|
"params": {
|
||||||
|
"rightsPath": "Roles/СОграничениями/Ext/Rights.xml"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user