Доброго времени суток, коллеги.
Есть такой кейс:
В разделе "Договоры" добавить Действие "Печать", которое соответственно будет генерировать документ на печать, из шаблона. Шаблоны документов могут быть разные, для каждого из них сделана соответствующая страница.
В код страницы добавил:
* Печать договора
*/
printContract: function() {
...
},
/**
* Возвращает коллекцию действий карточки.
* @protected
* @overridden
* @return {Terrasoft.BaseViewModelCollection} Возвращает коллекцию действий карточки
*/
getActions: function() {
var actionMenuItems = this.callParent(arguments);
actionMenuItems.addItem(this.getActionsMenuItem({
Type: "Terrasoft.MenuSeparator",
Caption: ""
}));
actionMenuItems.addItem(this.getActionsMenuItem({
"Caption": {bindTo: "Resources.Strings.PrintActionCaption"},
"Tag": printContract,
"Enabled": {"bindTo": "canEntityBeOperated"}
}));
return actionMenuItems;
}
И есть такая штука Terrasoft.configuration.mixins.PrintReportUtilities
, как ее прилепить к распечатке соответствующего документа?
Нравится
Евгений, есть вопрос, чем Вас не устраивает реализация ПФ WORD в системе?
Воспользуйтесь готовым решением:
Илья, когда настраиваешь Печатную Форму, на возможность печати из рееста, то при выбранном документе и нажатии на появившуюся кнопку "Печать" он выводит все 4 типа документа, а не конкретно нужный тип. Мало того, что в задаче стоит привязка печати именно к списку "Действие".
Евгений, для реализации данной задачи, Вам необходимо видимость определенной печатной формы привязать к Id типа документа. Id текущего документа хранится в аттрибуте "ActiveRow" (this.get("ActiveRow")). Далее строите запрос к бд используя entitySchmaQuery. Id типа документа хранится в колонке "TypeId" в таблице документов. И затем на основании типа документа делаете нужную печатную форму активной или видимой.
Илья, спасибо. Но я сделал несколько по другому.
У меня эти шаблоны документов должны выбираться и по типу документа и по стране.
В общем, задачу решил путем создания промежуточного справочника.