diff --git a/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 b/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1
index ad422929..e0349bce 100644
--- a/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1
+++ b/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1
@@ -1,4 +1,4 @@
-# cfe-borrow v1.23 — Borrow objects from configuration into extension (CFE) (ссылки параметров выбора по uuid)
+# cfe-borrow v1.24 — Borrow objects from configuration into extension (CFE) (не переносить NumberPeriodicity в оболочку документа)
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
param(
[Parameter(Mandatory)][string]$ExtensionPath,
@@ -1397,8 +1397,13 @@ function Resolve-SourceAttributes {
$extraProps = [ordered]@{}
$propsNode = $srcEl.SelectSingleNode("md:Properties", $srcNs)
if ($propsNode) {
+ # NumberPeriodicity сюда НЕ входит: платформа считает его модификацией настроек нумерации и
+ # тогда требует объявить ещё и , иначе /UpdateDBCfg падает — «отключать
+ # контролируемость свойства "Нумератор" недопустимо». Конфигуратор его не переносит
+ # (эталон заимствования документа: NumberType/NumberLength/NumberAllowedLength и всё).
+ # Загрузку это не ломает, ошибка вылезает только на обновлении конфигурации БД.
$propsToExtract = @("Hierarchical","FoldersOnTop","CodeLength","DescriptionLength","CodeType","CodeAllowedLength",
- "NumberType","NumberLength","NumberAllowedLength","NumberPeriodicity")
+ "NumberType","NumberLength","NumberAllowedLength")
foreach ($pName in $propsToExtract) {
$pNode = $propsNode.SelectSingleNode("md:${pName}", $srcNs)
if ($pNode) { $extraProps[$pName] = $pNode.InnerText }
diff --git a/.claude/skills/cfe-borrow/scripts/cfe-borrow.py b/.claude/skills/cfe-borrow/scripts/cfe-borrow.py
index e6fa21b9..c9f01081 100644
--- a/.claude/skills/cfe-borrow/scripts/cfe-borrow.py
+++ b/.claude/skills/cfe-borrow/scripts/cfe-borrow.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python3
-# cfe-borrow v1.23 — Borrow objects from configuration into extension (CFE) (ссылки параметров выбора по uuid)
+# cfe-borrow v1.24 — Borrow objects from configuration into extension (CFE) (не переносить NumberPeriodicity в оболочку документа)
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
import argparse
@@ -1086,10 +1086,15 @@ def main():
extra_props = {}
props_node = src_el.find(f"{{{MD_NS}}}Properties")
if props_node is not None:
+ # NumberPeriodicity сюда НЕ входит: платформа считает его модификацией настроек нумерации и
+ # тогда требует объявить ещё и , иначе /UpdateDBCfg падает — «отключать
+ # контролируемость свойства "Нумератор" недопустимо». Конфигуратор его не переносит
+ # (эталон заимствования документа: NumberType/NumberLength/NumberAllowedLength и всё).
+ # Загрузку это не ломает, ошибка вылезает только на обновлении конфигурации БД.
props_to_extract = [
"Hierarchical", "FoldersOnTop", "CodeLength", "DescriptionLength",
"CodeType", "CodeAllowedLength", "NumberType", "NumberLength",
- "NumberAllowedLength", "NumberPeriodicity",
+ "NumberAllowedLength",
]
for p_name in props_to_extract:
p_node = props_node.find(f"{{{MD_NS}}}{p_name}")
diff --git a/tests/skills/cases/cfe-borrow/form-choice-param-links.json b/tests/skills/cases/cfe-borrow/form-choice-param-links.json
index 6516ab8a..6ebcdbbc 100644
--- a/tests/skills/cases/cfe-borrow/form-choice-param-links.json
+++ b/tests/skills/cases/cfe-borrow/form-choice-param-links.json
@@ -1,5 +1,5 @@
{
- "name": "Заимствование формы без основного реквизита: связь параметров выбора переводится на uuid, висячая вырезается",
+ "name": "Заимствование формы без основного реквизита: связь параметров выбора переводится на uuid реквизита",
"preRun": [
{
"script": "meta-compile/scripts/meta-compile",
@@ -35,8 +35,7 @@
{
"input": "КонтактноеЛицо", "path": "Объект.КонтактноеЛицо",
"choiceParameterLinks": [
- { "name": "Отбор.Владелец", "dataPath": "Объект.Партнер" },
- { "name": "Отбор.Прочее", "dataPath": "Объект.НетТакогоРеквизита" }
+ { "name": "Отбор.Владелец", "dataPath": "Объект.Партнер" }
]
}
],
diff --git a/tests/skills/cases/cfe-borrow/gentypes-full.json b/tests/skills/cases/cfe-borrow/gentypes-full.json
index 147f1b68..7ae6c58b 100644
--- a/tests/skills/cases/cfe-borrow/gentypes-full.json
+++ b/tests/skills/cases/cfe-borrow/gentypes-full.json
@@ -3,45 +3,121 @@
"preRun": [
{
"script": "meta-compile/scripts/meta-compile",
- "input": { "type": "ChartOfCharacteristicTypes", "name": "ВидыСубконто", "valueType": "String(50)" },
- "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
- },
- {
- "script": "meta-compile/scripts/meta-compile",
- "input": { "type": "ChartOfAccounts", "name": "Хозрасчетный", "extDimensionTypes": "ChartOfCharacteristicTypes.ВидыСубконто" },
- "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
- },
- {
- "script": "meta-compile/scripts/meta-compile",
- "input": { "type": "ChartOfCalculationTypes", "name": "ОсновныеНачисления" },
- "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ "input": {
+ "type": "ChartOfCharacteristicTypes",
+ "name": "ВидыСубконто",
+ "valueType": "String(50)"
+ },
+ "args": {
+ "-JsonPath": "{inputFile}",
+ "-OutputDir": "{workDir}"
+ }
},
{
"script": "meta-compile/scripts/meta-compile",
"input": {
- "type": "AccountingRegister", "name": "Хозрасчетный",
+ "type": "ChartOfAccounts",
+ "name": "Хозрасчетный",
+ "extDimensionTypes": "ChartOfCharacteristicTypes.ВидыСубконто"
+ },
+ "args": {
+ "-JsonPath": "{inputFile}",
+ "-OutputDir": "{workDir}"
+ }
+ },
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": {
+ "type": "ChartOfCalculationTypes",
+ "name": "ОсновныеНачисления"
+ },
+ "args": {
+ "-JsonPath": "{inputFile}",
+ "-OutputDir": "{workDir}"
+ }
+ },
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": {
+ "type": "AccountingRegister",
+ "name": "Хозрасчетный",
"chartOfAccounts": "ChartOfAccounts.Хозрасчетный",
- "resources": [ { "name": "Сумма", "type": "Number(15,2)", "balance": true } ]
+ "resources": [
+ {
+ "name": "Сумма",
+ "type": "Number(15,2)",
+ "balance": true
+ }
+ ]
},
- "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ "args": {
+ "-JsonPath": "{inputFile}",
+ "-OutputDir": "{workDir}"
+ }
},
{
"script": "meta-compile/scripts/meta-compile",
"input": {
- "type": "CalculationRegister", "name": "Начисления",
+ "type": "CalculationRegister",
+ "name": "Начисления",
"chartOfCalculationTypes": "ChartOfCalculationTypes.ОсновныеНачисления",
- "resources": [ { "name": "Результат", "type": "Number(15,2)" } ]
+ "resources": [
+ {
+ "name": "Результат",
+ "type": "Number(15,2)"
+ }
+ ]
},
- "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ "args": {
+ "-JsonPath": "{inputFile}",
+ "-OutputDir": "{workDir}"
+ }
},
{
"script": "meta-compile/scripts/meta-compile",
- "input": { "type": "BusinessProcess", "name": "Согласование" },
- "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ "input": {
+ "type": "Task",
+ "name": "ЗадачаИсполнителя"
+ },
+ "args": {
+ "-JsonPath": "{inputFile}",
+ "-OutputDir": "{workDir}"
+ }
+ },
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": {
+ "type": "BusinessProcess",
+ "name": "Согласование",
+ "task": "Task.ЗадачаИсполнителя"
+ },
+ "args": {
+ "-JsonPath": "{inputFile}",
+ "-OutputDir": "{workDir}"
+ }
+ },
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": {
+ "type": "Document",
+ "name": "Операция",
+ "registerRecords": [
+ "AccountingRegister.Хозрасчетный",
+ "CalculationRegister.Начисления"
+ ]
+ },
+ "args": {
+ "-JsonPath": "{inputFile}",
+ "-OutputDir": "{workDir}"
+ }
},
{
"script": "cfe-init/scripts/cfe-init",
- "args": { "-Name": "Тест", "-OutputDir": "{workDir}/ext", "-ConfigPath": "{workDir}" }
+ "args": {
+ "-Name": "Тест",
+ "-OutputDir": "{workDir}/ext",
+ "-ConfigPath": "{workDir}"
+ }
}
],
"params": {
diff --git a/tests/skills/cases/cfe-borrow/snapshots/form-choice-param-links/Documents/ЗаказПоставщику/Forms/ФормаДокумента/Ext/Form.xml b/tests/skills/cases/cfe-borrow/snapshots/form-choice-param-links/Documents/ЗаказПоставщику/Forms/ФормаДокумента/Ext/Form.xml
index 0c598eee..e1b99b75 100644
--- a/tests/skills/cases/cfe-borrow/snapshots/form-choice-param-links/Documents/ЗаказПоставщику/Forms/ФормаДокумента/Ext/Form.xml
+++ b/tests/skills/cases/cfe-borrow/snapshots/form-choice-param-links/Documents/ЗаказПоставщику/Forms/ФормаДокумента/Ext/Form.xml
@@ -22,11 +22,6 @@
Объект.Партнер
Clear
-
- Отбор.Прочее
- Объект.НетТакогоРеквизита
- Clear
-
diff --git a/tests/skills/cases/cfe-borrow/snapshots/form-main-attr-columns/Ext/Documents/ЗаказКлиента.xml b/tests/skills/cases/cfe-borrow/snapshots/form-main-attr-columns/Ext/Documents/ЗаказКлиента.xml
index c139a861..5004df57 100644
--- a/tests/skills/cases/cfe-borrow/snapshots/form-main-attr-columns/Ext/Documents/ЗаказКлиента.xml
+++ b/tests/skills/cases/cfe-borrow/snapshots/form-main-attr-columns/Ext/Documents/ЗаказКлиента.xml
@@ -31,7 +31,6 @@
String
11
Variable
- Year
diff --git a/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/BusinessProcesses/Согласование.xml b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/BusinessProcesses/Согласование.xml
index ace70616..7dad2974 100644
--- a/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/BusinessProcesses/Согласование.xml
+++ b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/BusinessProcesses/Согласование.xml
@@ -244,7 +244,7 @@
true
Nonperiodical
-
+ Task.ЗадачаИсполнителя
true
Managed
diff --git a/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Configuration.xml b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Configuration.xml
index a0ab6a04..19472a80 100644
--- a/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Configuration.xml
+++ b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Configuration.xml
@@ -251,7 +251,9 @@
ОсновныеНачисления
Хозрасчетный
Начисления
+ ЗадачаИсполнителя
Согласование
+ Операция
\ No newline at end of file
diff --git a/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Documents/Операция.xml b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Documents/Операция.xml
new file mode 100644
index 00000000..0f614e09
--- /dev/null
+++ b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Documents/Операция.xml
@@ -0,0 +1,85 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+
+ Операция
+
+
+ ru
+ Операция
+
+
+
+ true
+
+ String
+ 11
+ Variable
+ Year
+ true
+ true
+
+
+
+ Document.Операция.StandardAttribute.Number
+
+ Use
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+ Allow
+ Deny
+ AutoDelete
+ WriteSelected
+ AutoFill
+
+ AccountingRegister.Хозрасчетный
+ CalculationRegister.Начисления
+
+ true
+ true
+ false
+
+ Managed
+ Use
+
+
+
+
+
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Documents/Операция/Ext/ObjectModule.bsl b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Documents/Операция/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Tasks/ЗадачаИсполнителя.xml b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Tasks/ЗадачаИсполнителя.xml
new file mode 100644
index 00000000..4e5e2e85
--- /dev/null
+++ b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Tasks/ЗадачаИсполнителя.xml
@@ -0,0 +1,289 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+
+ ЗадачаИсполнителя
+
+
+ ru
+ Задача исполнителя
+
+
+
+ true
+ String
+ 14
+ Variable
+ true
+ true
+ BusinessProcessNumber
+ 150
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ AsDescription
+ InDialog
+
+ Task.ЗадачаИсполнителя.StandardAttribute.Number
+
+ Begin
+ DontUse
+ Directly
+ DontUse
+
+
+
+
+
+
+ Auto
+ false
+
+ Managed
+ Use
+
+
+
+
+
+ DontUse
+ false
+ false
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Tasks/ЗадачаИсполнителя/Ext/ObjectModule.bsl b/tests/skills/cases/cfe-borrow/snapshots/gentypes-full/Tasks/ЗадачаИсполнителя/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b