IDocumentService.AddSignature — метод (Document, X509Certificate2, Boolean, ICollection<CardFieldSetting>)
Добавляет новую подпись в список подписей карточки и устанавливает ЭП на поля, основные и дополнительные файлы документа.
-
Пространство имён:
DocsVision.BackOffice.ObjectModel.Services -
Сборка:
DocsVision.BackOffice.ObjectModel.dll
Синтаксис
BaseCardSignature AddSignature(Document document, X509Certificate2 cert, bool signAttachments, ICollection<CardFieldSetting> fields)
- Параметры
-
- document
-
Тип:
DocumentДокумент
- cert
-
Тип:
System.Security.Cryptography.X509Certificates.X509Certificate2Сертификат, которым будет выполнено подписание
- signAttachments
-
Тип:
System.Booleantrue— подписывать дополнительные файлы, иначе —false - fields
-
Тип:
System.Collections.Generic.ICollection<CardFieldSetting>Коллекция подписываемых полей типа
CardFieldSetting, определённых для карточки в Справочнике видов карточек
- Возвращаемое значение
-
Тип:
BaseCardSignatureПодпись
Заметки
Сертификат сотрудника может быть получен из карточки Настроек пользователя. Данный метод инициализирует новую подпись в виде объекта типа BaseCardSignature, которую использует при непосредственном подписании данных карточки Документ.
Примеры
Ниже приведён пример подписания документа, осуществляемое из скрипта самой карточки
using DocsVision.BackOffice.ObjectModel;
using DocsVision.BackOffice.ObjectModel.Services;
using DocsVision.BackOffice.WinForms.Controls;
namespace BackOffice
{
public class CardDocumentПримерScript : CardDocumentДокументУДScript
{
private void addSignature_ItemClick(System.Object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
IDocumentService documentService = base.CardControl.ObjectContext.GetService<IDocumentService>(); (1)
bool cancel = false;
var certificate = SelectCertificateForm.SelectCertificate(ref cancel, base.CardControl.ObjectContext); (2)
if(cancel) return;
var fields = documentService.GetKindSettings(base.BaseObject.SystemInfo.CardKind).DocumentSignature.Fields; (3)
documentService.AddSignature((base.BaseObject as Document), certificate, false, fields); (4)
}
}
}
| 1 | Получение сервиса для работы с карточкой Документ. |
| 2 | Отображение окна выбора сертификата. Простой сертификат может быть установлен, если присвоить certificate значение null. |
| 3 | Получение из параметров вида карточки полей, для которых предусмотрено подписание. |
| 4 | Осуществление подписания. |