пятница, 4 сентября 2020 г.

Добавление обработчика MainFileAdded (обработчик на событие после добавления основного файла)

 FilesViewWithPreview filesViewWithPreview = documentCardControl.FilesViewWithPreview;

filesViewWithPreview.MainFileAdded+= new EventHandler<DocsVision.BackOffice.ObjectModel.Services.Entities.DocumentMainFileEventArgs> (AfterMainFileAdded);

Сам обработчик:

private void AfterMainFileAdded(object sender, DocumentMainFileEventArgs e)

{

.......

}

вторник, 14 апреля 2020 г.

Как заполнить поле Сотрудник (Employee) текущим пользователем в javascript

/*
Данная функция получает текущего пользователя и заполняет им поле employee1
Этот скрипт необходимо положить в папку с решением
employee1 - наименование элемента управления в web разметке
Дополнения к УД - наименование решения
*/

var genController = require("@docsvision/webclient/Generated/DocsVision.WebClient.Controllers").GenControllers; //EmployeeController;
var app = require("@docsvision/webclient/Application").Application;
var extensionManager = require("@docsvision/webclient/System/ExtensionManager").extensionManager;

function setCurrentEmployee(sender, args) {
 let layout = sender.layout;
 let employee1 = layout.controls.employee1;
 let emplval = employee1.params.value;

var appobj = new app();
var emplc = new genController.EmployeeController();
var emplobj = emplc.getEmployee(appobj.CurrentEmployeeId);

emplobj.done(function(value) {
employee1.params.value=value;
});

}

// Регистрируем расширение и все его обработчики
extensionManager.registerExtension({
    name: "Дополнения к УД",
    version: "5.5.14",
    globalEventHandlers: [{ setCurrentEmployee: setCurrentEmployee }]
});

Как в Web клиенте заполнить поле пользователь в javascript

//Скрипт записывает пользователя, жестко заданного в скрипте в виде json, в поле employee1

var extensionManager = require("@docsvision/webclient/System/ExtensionManager").extensionManager;

function validateOnStateChanging(sender, args) {
 let layout = sender.layout;
 let employee1 = layout.controls.employee1;

var toempl={id: "64dcbcb8-a503-40ba-a0a5-a9919c759843", isCurrent: false, displayName: "Администратор К. О.", firstName: "Крас", lastName: "Администратор", middleName: "Офис", position: null, fieldPath: null, unitId: "c51f9dd1-5058-4f69-ae3d-9c3fc24e97c6", pathInDirectory: null,
dataType: 64};

let jsonstr = JSON.stringify(toempl)
employee1.params.value=JSON.parse(jsonstr);
    MessageBox.ShowWarning(jsonstr);
}

// Регистрируем расширение и все его обработчики
extensionManager.registerExtension({
    name: "Дополнения к УД",
    version: "5.5.14",
    globalEventHandlers: [{ validateOnStateChanging: validateOnStateChanging }]
});

пятница, 24 января 2020 г.

Ошибки в консоли настройки Docsvision 5.4. Решения

При открытии вкладки Модули расширения\Управление процессами возникает ошибка доступа и вкладка становится неактивной.
Решение: При добавлении пользователя под которым запускается консоль настройки в пользователи SQL сервера ошибка не исчезает, но вкладка остается активной  с доступной кнопкой Настройка почты. При добавлении пользователю SQL сервера роли sysadmin ошибки при открытии вкладки не возникает.
Так же решается ошибка доступа при открытии настройки  базы данных по кнопке Настройка на вкладке Базы данных