Все ноды/Integrations/Files
Запись файла
Записывает или заменяет строки в файле в файловом хранилище.
Тип в графе: file_write
Exec
Можно включить ветку ошибки (expose_error_output) и обработать сбой отдельным путём.
Порты можно разделить на исполнение и данные (split ports).
Как попробовать
Минимальный рабочий воркфлоу
- Исполнение
- Исполнение + данные
Запускается сразу
Как применять
Нода сохраняет текст в файл: целиком либо заменяя один диапазон строк. Для таблиц берите
Записать CSV или Записать XLSX — они
пишут DataFrame в нужном формате. Если файлы создаёт модель по ходу разговора, это
Инструмент файлов с включённым fs_write.
Как это работает
Куда писать, решает «Источник подключения». По умолчанию — «Из контекста рана», то есть
собственное хранилище воркспейса: записанное сразу видно во вкладке «Файлы» и учитывается в
квоте на файлы. В режиме «Внешнее подключение» появляется порт file_store, и корень задаёт
подключённая конфиг-нода; квота воркспейса на такую запись не распространяется.
Режим «Перезаписать файл целиком» пишет содержимое поля поверх всего файла. Режим «Заменить диапазон строк» читает файл, подставляет текст замены вместо строк с первой по последнюю (нумерация с единицы, границы включительно) и записывает результат обратно.
На выходе — фактический путь и bytes_written. Это размер файла после записи, а не длина
того, что вы подставили. Потолок записи — 4 МиБ, выше него нода отказывает с кодом
SIZE_LIMIT. Флага «успешно» в выводе нет намеренно: запись, которой не произошло, — это
отказ ноды, а не успех с полем false.
Частые ошибки
- Замена строк в несуществующем файле. Режим
replace_linesне создаёт файл и не дописывает его: диапазон должен существовать целиком, иначе нода отказывает. Первую версию файла создавайте перезаписью. - Ожидание дозаписи. Режима append нет. Чтобы дописать строку в журнал, прочитайте файл Чтением файла, склейте текст и перезапишите.
- Пустое содержимое. Шаблон, отрендерившийся в пустоту, перезапишет файл пустым — это корректная запись нуля байт, а не ошибка.
- Папки на WebDAV. Недостающие родительские папки создаются в хранилище воркспейса, но не на WebDAV-диске: там папку нужно завести заранее, иначе сервер отвечает отказом.
- Две ветки пишут в один путь. Блокировок нет, побеждает та, что закончила последней. Разводите параллельные ветки по разным файлам — например, подставляя в путь идентификатор сессии.
Входы
| Порт | Провод | Данные | Примечания |
|---|---|---|---|
File storefile_store | Данныеdata | — | показывается, когда connection_source ≠ "auto" |
Выходы
| Порт | Провод | Данные | Примечания |
|---|---|---|---|
Successoutput | Исполнение + данныеexecute_data | object | |
Erroron_error | Исполнение + данныеexecute_data | — | показывается, когда expose_error_output = true |
Настройки
| Поле | Тип | По умолчанию | Описание |
|---|---|---|---|
Путь к файлуpath | string | "" | Относительно корня хранилища; родительские папки создаются при необходимости. поддерживает шаблоны |
Режим записиmode | string | overwrite | overwrite перезаписывает файл целиком; replace_lines правит один диапазон строк (нумерация с 1, границы включительно). Варианты: |
Содержимоеcontent | string | "" | Полное содержимое файла в режиме overwrite. поддерживает шаблоны показывается при mode = overwrite |
Начальная строкаstart_line | integer | 1 | Первая строка заменяемого диапазона (нумерация с 1, включительно). показывается при mode = replace_lines |
Конечная строкаend_line | integer | 1 | Последняя строка заменяемого диапазона (нумерация с 1, включительно). показывается при mode = replace_lines |
Текст заменыreplacement | string | "" | Текст, который записывается поверх выбранного диапазона строк. поддерживает шаблоны показывается при mode = replace_lines |
Источник подключенияconnection_source | string | auto | Откуда нода берёт подключение. «Из контекста рана» использует то, что платформа уже знает (Telegram-бот, в который задеплоен этот воркфлоу / собственное файловое хранилище этого воркспейса), и не требует проводов. «Внешнее подключение» показывает ресурсный порт, чтобы в него можно было подключить конфиг-ноду. Варианты: |
Подпапкаstore_subfolder | string | "" | Необязательная папка внутри хранилища этого воркспейса, которую считать корнем, напр. `reports` или `sessions/{{ variables.session_id }}`. Пусто = корень хранилища. поддерживает шаблоны показывается при connection_source = auto |
Общие поля
Эти три поля есть у каждой ноды: платформа добавляет их сама, а не автор ноды.
expose_error_output— Если включено, показывает выход выполнения для подключения нод, которые запускаются при сбое этого шага.split_ports_in— Показывать отдельные порты входа для выполнения и данных вместо одного объединённого.split_ports_out— Показывать отдельные порты выхода для выполнения и данных вместо одного объединённого.