Часто задаваемые вопросы сервиса документа:
Вопросы для совместного использования

  1. Как открыть документ с включенным режимом «отслеживание изменений»?

Для открытия документа с включенным режимом отслеживания изменений используется параметр document.permissions (полную структуру объекта конфигурации Сервера документов см. здесь).

Существует три основных варианта открытия документа с включенным режимом отслеживания изменений:

Включено как рецензирование, так и редактирование: если для обоих параметров document.permission.edit и document.permission.review установлено значение true, пользователь сможет редактировать документ, принимать/отклонять внесенные изменения и переключаться в режим рецензирования him-/herself. Конфигурация в этом случае будет выглядеть так:

 

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "edit": true,
            "review": true
        },
        ...
    },
    "editorConfig": {
        "mode": "edit",
        ...
    },
    ...
});
  • Включен только пересмотр: если для параметра document.permission.edit установлено значение false, а для document.permission.review установлено значение true, пользователь сможет открыть документ только в режиме пересмотра. Конфигурация в этом случае будет выглядеть так:
    var docEditor = new DocsAPI.DocEditor("placeholder", {
        "document": {
            "permissions": {
                "edit": false,
                "review": true
            },
            ...
        },
        "editorConfig": {
            "mode": "edit",
            ...
        },
        ...
    });

Включены персмотр и комментирование: если для параметра document.permission.edit установлено значение false, а для document.permission.review и document.permission.comment установлено значение true, пользователь сможет открыть документ в режиме персмотра с возможностью прокомментировать его, но не сможете его редактировать. Конфигурация в этом случае будет выглядеть так:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "edit": false,
            "comment": true,
            "review": true
        },
        ...
    },
    "editorConfig": {
        "mode": "edit",
        ...
    },
    ...
});

Дополнительную информацию о разрешениях можно найти на этой страницу.

Как открыть документ с включенным режимом «комментирования»?
Для открытия документа с включенным режимом комментирования используется параметр document.permissions (полную структуру объекта конфигурации Сервера документов см. здесь).

Существуют следующие основные варианты открытия документа с включенным режимом комментирования:

  1.  Включены как комментирование, так и редактирование: если для обоих параметров document.permission.edit и document.permission.comment установлено значение true, пользователь сможет редактировать документ и комментировать. Конфигурация в этом случае будет выглядеть так:
var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "edit": true,
            "comment": true
        },
        ...
    },
    "editorConfig": {
        "mode": "edit",
        ...
    },
    ...
});
2. Включено только комментирование: если для параметра document.permission.edit установлено значение false, а для document.permission.comment установлено значение true, документ будет доступен только для комментирования. Конфигурация в этом случае будет выглядеть так:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "edit": false,
            "comment": true
        },
        ...
    },
    "editorConfig": {
        "mode": "edit",
        ...
    },
    ...
});

3. Включены пересмотр и комментирование: если для параметра document.permission.edit установлено значение false, а для document.permission.review и document.permission.comment установлено значение true, пользователь сможет открыть документ в режиме пересмотра с возможностью прокомментировать его, но не сможете его редактировать. Конфигурация в этом случае будет выглядеть так:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "edit": false,
            "comment": true,
            "review": true
        },
        ...
    },
    "editorConfig": {
        "mode": "edit",
        ...
    },
    ...
});

4. Комментарии доступны только для просмотра: если для параметра document.permission.edit установлено значение true, а для document.permission.comment установлено значение false, пользователь сможет только редактировать, соответствующий функционал комментирования будет доступен только для просмотра, добавление и редактирование комментариев будет недоступно. Конфигурация в этом случае будет выглядеть так:

 var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "edit": true,
            "comment": false
        },
        ...
    },
    "editorConfig": {
        "mode": "edit",
        ...
    },
    ...
});

Дополнительную информацию о разрешениях можно найти на этой странице.

Как можно использовать параметр fillForms?
Начиная с версии 5.2, в Сервере документов реализована возможность заполнения специальных форм без необходимости предоставления пользователю прав на редактирование. Это может быть использовано, например, в случае, если у вас есть какая-то форма документа и вы хотите предоставить пользователям доступ к этой форме, чтобы они могли заполнять ее, но не могли редактировать другие поля документа (например, заполнять имена в договоре, но не изменять условия договора, или заполнить переменные поля в каком-либо другом документе, но оставить другие части документа нетронутыми).

Для включения этого режима используется параметр document.permissions.fillForms:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "edit": false,
            "review": false,
            "fillForms": true,
            "comment": false
        },
        ...
    },
    "editorConfig": {
        "mode": "edit",
        ...
    },
    ...
});
Поле комментария является необязательным, поскольку комментирование в любом случае отключено при включенном параметре fillForms и отключенных параметрах редактирования и просмотра.

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

Затем вам решать, что делать дальше: либо изменения в редактируемых полях будут сохранены в том же документе, либо новый документ будет создаваться каждый раз, когда новый пользователь обращается к исходному документу и изменяет его.

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

Чаще используется второй сценарий, когда у вас есть шаблон документа с незаполненными полями и вы хотите предоставить к нему доступ большему количеству пользователей (разместите его на своем сайте, например, чтобы пользователи заполняли его тут же без необходимости каждый раз скачивать, заполнять и закачивать обратно). В этом случае будет разумнее иметь этот документ в качестве шаблона для будущих изменений и, как только пользователи с доступом fillForms отредактируют поля, сохранить его под другим именем.

Дополнительную информацию о разрешениях можно найти на этой странице.

Как включить режим редактирования и комментирования документа?
Для открытия документа с включенным режимом редактирования и комментирования используется параметр document.permissions (полную структуру объекта конфигурации Сервера документов см. здесь).Вам нужно будет установить для обоих параметров document.permission.edit и document.permission.comment значение true, чтобы пользователь мог редактировать документ и комментировать. Конфигурация в этом случае будет выглядеть так:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "edit": true,
            "comment": true
        },
        ...
    },
    "editorConfig": {
        "mode": "edit",
        ...
    },
    ...
});

Дополнительную информацию о разрешениях можно найти на этой странице.

  • Влияют ли параметры разрешения друг на друга?

Большинство параметров разрешений являются независимыми и активируются, только если их значение равно true, и отключаются, если установлено значение false. Однако есть несколько комбинаций, когда разрешение будет либо включено, либо отключено вне зависимости от значения соответствующего параметра:

  • Разрешение на заполнение формы включено (даже если для параметра fillForm установлено значение false), если для параметра редактирования или обзора установлено значение true.
  • Разрешение на заполнение формы отключено (даже если для параметра fillForm установлено значение true), если для параметров редактирования и просмотра установлено значение false, а для комментария установлено значение true.
  • Разрешение на комментирование отключено (даже если для параметра comment установлено значение true), если для параметров редактирования и обзора установлено значение false, а для fillForms установлено значение true.
    Вы должны иметь ввиду это, когда устанавливаете необходимые разрешения и комбинируете разные разрешения для одного и того же документа.

См. интерактивную таблицу ниже, чтобы узнать, как различные параметры и комбинации параметров влияют друг на друга и на результирующие разрешения документа:

Результирующие разрешения
Действие документаРазрешениеЗапись
просмотрразрешено
редактированиеразрешеноРедактирование документа разрешено.
пересмотрразрешеноВключен режим просмотра (также доступно заполнение форм).
заполнение формразрешеноДопускается заполнение бланков в документе
комментированиеразрешеноКомментирование документа включено.
скачиваниеразрешеноЗагрузка документа разрешена, и кнопка «Загрузить» видна.
печатьразрешеноПечать документа разрешена, и кнопка «Печать» видна.

Дополнительную информацию о разрешениях можно найти на этой странице

Как открыть документ в просмотрщике без возможности редактирования?
Для открытия документа с включенным режимом просмотра используется параметр document.permissions (полную структуру объекта конфигурации Сервера документов см. здесь).Вам нужно будет установить для параметров document.permission.edit, document.permission.review и document.permission.fillForms значение false, чтобы пользователь не смог ни редактировать, ни просматривать документ, ни изменять поля формы в нем. Если вы хотите дополнительно отключить функцию комментирования документа, установите для параметра comment также значение false (при этом существующие комментарии будут доступны для просмотра).В случае, если вы отключите все разрешения на редактирование, мы предлагаем вам также установить для document.permissions.chat значение false, чтобы пользователи, имеющие доступ к документу, не могли спамить во встроенном чате документа.
Конфигурация в этом случае будет выглядеть так:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "chat": false,
            "edit": false,
            "review": false,
            "fillForms": false,
            "comment": false
        },
        ...
    },
    ...
});

Дополнительную информацию о разрешениях можно найти на этой странице.

Как отключить/включить возможность скачивания файла?
Для открытия документа с отключенной возможностью скачивания используется параметр document.permissions (полную структуру объекта конфигурации Сервера документов см. здесь).

Вам нужно будет установить для document.permission.download значение false, чтобы опция Download as… была удалена из меню File (в случае, если для параметра document.permission.edit установлено значение true) или с верхней панели инструментов (в случае, если для document.permission.edit установлено значение false и файл доступен только для просмотра) и пользователь не смог загрузить документ из редактора. Конфигурация разрешений в этом случае будет выглядеть так:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "download": false
        },
        ...
    },
    ...
});

Дополнительную информацию о разрешениях можно найти на этой странице.

Как запретить печать документа?
 

Для открытия документа с отключенной возможностью печати используется параметр document.permissions (полную структуру объекта конфигурации Сервера документов см. здесь).

Вам нужно будет установить для document.permission.print значение false, чтобы опция «Печать» была удалена из меню «Файл» документа (в случае, если для параметра document.permission.edit установлено значение «true») или из верхней панели инструментов (в случае, если document.permission.edit имеет значение false и файл доступен только для просмотра), и пользователь не мог распечатать документ из редактора. Конфигурация разрешений в этом случае будет выглядеть так:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "print": false
        },
        ...
    },
    ...
});

Дополнительную информацию о разрешениях можно найти на этой странице.

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "info": {
            "sharingSettings": [
                {
                    "permissions": "Full Access",
                    "user": "John Smith"
                },
                {
                    "isLink": true,
                    "permissions": "Read Only",
                    "user": "External link"
                },
                ...
            ]
        },
        ...
    },
    ...
});

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

Как ограничить комментирование?
 Комментарии включены по умолчанию. Если вы хотите ограничить комментирование и разрешить авторам редактировать и/или удалять только свои комментарии, вам потребуется изменить параметры document.permissions.editCommentsAuthorOnly и/или document.permissions.deleteCommentsAuthorOnly:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "permissions": {
            "comment": true,
            "editCommentsAuthorOnly": true,
            "deleteCommentsAuthorOnly": true,
        },
        ...
    },
    ...
});
Не забудьте установить для editorConfig.mode для редактирования, иначе любые функции комментирования будут отключены.
Как просмотреть и изменить настройки общего доступа для определенного документа?
Настройки общего доступа хранятся в службе хранения документов и должны определяться самими интеграторами программного обеспечения. Сервер документов может отображать эти настройки с помощью параметра document.info.sharingSettings, информация из которого будет отображаться в окне документа Файл -> Права доступа….

Этот параметр представляет собой массив объектов, представляющих список имен пользователей (document.info.sharingSettings.user) с их правами доступа к текущему документу (document.info.sharingSettings.permissions).

document.info.sharingSettings.user — это строковый параметр, который может отображать любое имя пользователя, переданное из службы хранения документов на Сервер документов.

Параметр document.info.sharingSettings.permissions также является строковым параметром, который отображает название прав доступа, соответствующих набору правил, определяющих доступ пользователя к текущему документу.

Обратите внимание, что изначально не существует предопределенного набора правил доступа к документам. В случае, если вы используете Р7 Community Server, определено несколько правил прав доступа (Полный доступ, Только чтение, Запретить доступ), которые будут использоваться и отображаться. Если вы настроите собственную службу хранения документов, вам придется определить собственный набор правил и их имена (например, доступ только для чтения с параметрами document.permission.edit, document.permission.review, document.permission.fillForms, установленными на false; или Download only со всеми параметрами document.permission, установленными в false, и только параметром document.permission.download, установленными в true и т. д.) и отправьте их в службу редактирования документов, чтобы пользователь мог получить доступ к документу и отображались эти настройки в окне документа Права доступа….
Конфигурация sharingSettings может выглядеть следующим образом:

var docEditor = new DocsAPI.DocEditor("placeholder", {
    "document": {
        "info": {
            "sharingSettings": [
                {
                    "permissions": "Full Access",
                    "user": "John Smith"
                },
                {
                    "isLink": true,
                    "permissions": "Read Only",
                    "user": "External link"
                },
                ...
            ]
        },
        ...
    },
    ...
});

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