Как настроить запись в журнале изменений пользователя в Dynamics Nav 2016

Я написал некоторый код для запроса конечной точки ODATA в Dynamics Nav 2016. Я сделал это, создав службу, подключенную к ODATA. Я написал следующий код, чтобы добавить запись:

var navision = new Navision(
    new Uri("http://navision:7048/navision/OData/Company('Company1')"))
{
    Credentials = new NetworkCredential("MyUser@example.com", "password")
};
navision.AddToFoo(new Foo() { Name = "Bar" });
navision.SaveChangesAsync();

Я включил "Изменить записи журнала" для Foo Таблица. Однако, когда вышеуказанный код выполняется, пользователь, отображаемый в записях журнала изменений, MyUser@example.com, Можно ли самому явно настроить этого пользователя?

1 ответ

Решение

Не существует стандартного способа сделать такую ​​замену. Запись в журнале изменений создается следующим образом. USERID это системная функция, которая будет возвращать зарегистрированное имя пользователя.

ChangeLogEntry."User ID" := USERID;

Если у вас может быть разработка в вашей системе, то вам нужно изменить navision.AddToFoo(new Foo() { Name = "Bar" }); что-то вроде navision.AddToFoo(new Foo() { Name = "Bar", ChangedBy = "RealUserName"}); и добавить это поле в таблицу Foo. Это по крайней мере позволит вам увидеть последнего пользователя, который изменил запись.

Другие вопросы по тегам