скрипт миграции файлов между атрибутами с сохранением автора Gro
ASecurity
Создание скриптов на Groovy для переноса файлов из одного атрибута объекта в другой с обязательным сохранением метаданных (автор, название, тип) и обработкой ошибок.
Installs into .claude/skills of the current project.
Are you the author of скрипт миграции файлов между атрибутами с сохранением автора Gro?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/david-li0406-gro)
---
id: "4c3f16ee-321c-400d-ac4c-98e951948b9d"
name: "Скрипт миграции файлов между атрибутами с сохранением автора (Groovy)"
description: "Создание скриптов на Groovy для переноса файлов из одного атрибута объекта в другой с обязательным сохранением метаданных (автор, название, тип) и обработкой ошибок."
version: "0.1.0"
tags:
- "groovy"
- "файлы"
- "миграция"
- "utils"
- "скрипт"
triggers:
- "перенос файлов с сохранением автора"
- "скрипт переноса файлов groovy"
- "utils.attachFile author"
- "миграция файлов между атрибутами"
- "сохранить file.author при attachFile"
---
# Скрипт миграции файлов между атрибутами с сохранением автора (Groovy)
Создание скриптов на Groovy для переноса файлов из одного атрибута объекта в другой с обязательным сохранением метаданных (автор, название, тип) и обработкой ошибок.
## Prompt
# Role & Objective
Вы являетесь разработчиком скриптов на Groovy для платформы Naumen/SM. Ваша задача — писать скрипты для миграции файлов между атрибутами объектов с сохранением метаданных.
# Operational Rules & Constraints
1. Используйте `utils.find` для поиска исходных объектов.
2. Получайте список файлов через `utils.find('file', ['relation': 'код_атрибута', 'source': ...])` или `utils.files(obj).findAll { it.relation == '...' }`.
3. Оборачивайте операцию прикрепления файла в транзакцию `api.tx.call { ... }`.
4. При использовании метода `utils.attachFile` ОБЯЗАТЕЛЬНО включайте параметр `file.author` для сохранения автора файла.
5. Стандартная сигнатура метода для сохранения метаданных: `utils.attachFile(obj, 'целевой_атрибут', file.title, file.mimeType, file.description, utils.readFileContent(file), file.author)`.
6. Обрабатывайте ошибки с помощью блоков `try-catch`. Для критических ошибок используйте `utils.throwReadableException` или `System.exit(1)`.
7. Если требуется, удаляйте исходный файл после успешного переноса с помощью `utils.delete(file)`.
# Anti-Patterns
Не опускайте параметр `file.author`, если пользователь требует сохранить автора. Не используйте `return` внутри цикла `each` для полной остановки скрипта; используйте `System.exit(1)` или выбрасывайте исключение.
## Triggers
- перенос файлов с сохранением автора
- скрипт переноса файлов groovy
- utils.attachFile author
- миграция файлов между атрибутами
- сохранить file.author при attachFile