Часто задаваемые вопросы о Сервере документов:
Сохранение вопросов

Свернуть все

Как принудительно сохранить документ в хранилище при его редактировании?
Обычно окончательная версия документа компилируется после того, как все пользователи, редактирующие его, закроют документ и пройдет время задержки (около 10 секунд). Но это поведение можно переопределить. Для этого доступна опция ForceSave.

Есть несколько способов инициировать принудительное сохранение:

Отправка запроса в командный сервис документов с использованием значения forcesave для параметра c:

 

{
    "c": "forcesave",
    "key": "Khirz6zTPdfd7",
    "userdata": "sample userdata"
}
  • Включение параметра editorConfig.customization.forcesave со значением true в настройке инициализации редактора:
var docEditor = new DocsAPI.DocEditor("placeholder", {
    "editorConfig": {
        "customization": {
            "forcesave": false,
            ...
        },
        ...
    },
    ...
});
  • Включение повторяющегося запуска forcesave в файле конфигурации Сервера документов default.json:
{
    "services": {
        "CoAuthoring": {
            "autoAssembly": {
                "enable": true,
                "interval": "5m"
            }
        }
    }
}

В зависимости от того, какой тип принудительного сохранения вам нужен, вы можете выбрать правильную реализацию. Подробнее об этом можно узнать на этой странице

Как сохранить созданный документ?
См. раздел «Сохранение файла», чтобы узнать, как работает сохранение файла на Сервере документов и что необходимо для сохранения этого созданного документа.
Как сохранить открытый документ в другой тип файла документа?
Если открывается документ формата, отличного от OOXML (.txt или .ods), формат OOXML будет сохранен по умолчанию.

Чтобы сохранить открытый документ в формате, отличном от формата Office Open XML по умолчанию, необходимо отправить запрос POST в службу конвертации документов.

Подробно о том, как работает конвертация и зачем она нужна, можно узнать в этом разделе. Параметры POST-запроса и доступные ответы на него можно посмотреть здесь.

Как включить или отключить опцию «Автосохранение»?
Опция автосохранения включена по умолчанию. Чтобы ее отключить, нужно установить для параметра editorConfig.customization.autosave в конфигурации документа значение false:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "editorConfig": {
        "customization": {
            "autosave": false,
            ...
        },
        ...
    },
    ...
});

Обратите внимание, что отключение автосохранения также отключит режим быстрого совместного редактирования, который работает только при включенном автоматическом сохранении документа.
Дополнительную информацию об автосохранении можно найти на этой странице.

Что такое время задержки начала конвертации и как его можно изменить?
Обычно документ физически не сохраняется на жесткий диск компьютера в скомпилированном виде при его редактировании. Когда редактирование завершено и все пользователи, работающие с документом, закрывают его, файл преобразуется в формат Office Open XML и сохраняется на диск.

После этого служба редактирования документов информирует службу хранения документов о том, что файл готов и может быть загружен.

Время между окончанием редактирования и началом конвертации задается в конфигурационном файле default.json параметром services.CoAuthoring.server.savetimeoutdelay (5000 миллисекунд или 5 секунд по умолчанию) и может быть изменено:

{
    "services": {
        "CoAuthoring": {
            "server": {
                "savetimeoutdelay": 5000
            }
        }
    }
}

Дополнительную информацию о задержке начала преобразования можно найти на этой странице.

Как указать тип кодировки при конвертации из форматов csv или txt?
Чтобы сохранить удобочитаемость файла txt или csv, вам может потребоваться установить кодировку, в которой он был первоначально сохранен. Это может быть полезно, если в файле используются символы, отличные от основных латинских букв (умляуты типа ä, ö, ü, буквы с ударением, буквы кириллицы и т. д.).

Для этого в сервис конвертации документов отправляется POST-запрос с параметрами, указанными в теле запроса:

{
    "codePage": 65001,
    "filetype": "txt",
    "key": "Khirz6zTPdfd7",
    "outputtype": "docx",
    "title": "Example Document Title.docx",
    "url": "https://example.com/url-to-example-document.txt"
}

Дополнительную информацию об использовании кодовой страницы во время конвертации можно найти на этой странице.