3.3.4.13. Добавление информации о доверенности в исходящие документы

Для добавления информации о МЧД в исходящие документы в SDK предусмотрено три способа:
  • Автоподстановка МЧД в случае передачи параметра <AdditionalParameter Name="WarrantMetaID" в card.xml.  При указании  этого параметра признак (флаг) "МЧД по умолчанию" для зарегистрированных МЧД игнорируется.
  •  Использование признака "МЧД по умолчанию".
  • Указание метаинформации МЧД или ее файла с подписью при помощи метода SetWarrantParameters.
Подробнее о способах 2 и 3:

Использование признака "МЧД по умолчанию"

При отправке  исходящих контейнеров (кроме ИоП) любыми методами отправки (Send, SendfromFile, SendServiceDocument)  SDK выполняет проверку наличия информации о МЧД  (warrant.xml или AdditionalParameter Name="WarrantMetaID" в card.xml) в ТКТ для каждого указанного подписанта.
При импорте контейнера, в котором нет сведений о МЧД (нет warrant.xml или AdditionalParameter Name="WarrantMetaID"), SDK выполняет проверку признака принадлежности ключа ЭП лицу, имеющему право действовать от имени организации без доверенности. 
Если результат проверки указывает на необходимость доверенности, то происходит поиск МЧД с признаком "МЧД по умолчанию" для этого подписанта  и её добавление в ТКТ в виде warrant.xml.
Необходимо учесть,  если признак "МЧД по умолчанию" отсутствует и/или не удалось найти пользователя с указанным ключом ЭП, то при отсутствии других ошибок произойдёт отправка документа  без доверенности.

Метод SetWarrantParameters для указания метаинформации МЧД или ее файла с подписью

Если при формировании транспортного контейнета Такском (ТКТ) использование признака "МЧД по умолчанию" и автоподстановка МЧД не подходят, то можно добавить в ТКТ информацию МЧД с помощью метода SetWarrantParameters в классе TaxcomContainer путём указания метаинформации МЧД или ее файла с подписью.
Метод вызывается после добавления документа в ТКТ и указания способа подписания.
Для добавления в контейнер метаинформации МЧД в методе указываются: 
  •  warrantRegNum (тип string) – 36-значный guid доверенности;  
  •  issuerInn (тип string) – ИНН доверителя (10 или 12 цифр);
  •  DateTime:
  •  dateStart – дата начала действия мчд;
  •  dateEnd  – дата окончания действия МЧД.
Пример вызова метода в виде метаинформации:
 
Для добавления  МЧД в виде файла с подписью в классе WarrantFile требуется указать:
  •  файл xml мчд;
  •  подпись к МЧД.
Пример вызова метода при передаче МЧД в виде файла с подписью:
void SetWarrantParameters(WarrantFile warrant, WarrantFile[] signs, DateTime? dateStart = null, DateTime? dateEnd = null);
public class WarrantFile
{
    public string Name { get; set; }
    public byte[] Image { get; set; }
}