Доброго всем вечера. Мне необходимо добавить массово пользователей в таблицу User. Есть другая таблицы в которой есть только ФИО и вот по фио мне нужно будет отобрать тех, кого INSERT INTO [user] ([status], username, [password], firstname, middleName,lastname, fullname, Lang,issystemlocal,workplace) values (0,'TEST_2208_02_20','e10adc3949ba59abbe56e057f20f883e','Тестович','Тест','Тестовый','Тестовый Тест Тестович','ru-RU',1,1) Добавляется. Но ID =0 и Uid = 00000000-0000-0000-0000-000000000000 есть ли вариант , как корректно добавить пользователя? Спасибо.
Я бы не рекомендовал добавлять пользователей ELMA напрямую через SQL, лучше это сделать через сценарий в ELMA используя готовый API, в этом случае ELMA сама пропишет все необходимые связи и идентификаторы, для корректной работы. В базе знаний есть пример импорта пользователей из текстового файла, вы можете его адаптировать под свою задачу: https://www.elma-bpm.ru/KB/article-5804.html
Алексей , спасибо . Указано "Необходимо учитывать, что количество загружаемых пользователей не должно превышать число пользователей, указанное в лицензии." Почему? Как это влияет на лицензии, ведь есть лицензии на вход, на количество Юзеров не влияет. Или просто есть лицензирование по кол-ву пользователей?
Подскажите, куда нужно выкладывать файл. Выдает ошибку. System.InvalidOperationException: Не удалось возобновить или запустить экземпляр процесса ---> EleWise.ELMA.Exceptions.ScriptExecuteException: Ошибка исполнения сценария в процессе "Из справочника ОК в Users" (ID экземпляра: 257568): Устройство не готово. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.IO.IOException: Устройство не готово.
Кидаю в корень диска С, диска Д нет. В Итоге System.InvalidOperationException: Не удалось возобновить или запустить экземпляр процесса ---> EleWise.ELMA.Exceptions.ScriptExecuteException: Ошибка исполнения сценария в процессе "Из справочника ОК в Users" (ID экземпляра: 258375): Index was outside the bounds of the array. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.IndexOutOfRangeException: Index was outside the bounds of the array. at EleWise.ELMA.Model.Scripts.P_IzSpravochnikaOKVUsers_Scripts.Add_Users(P_IzSpravochnikaOKVUsers context) in c:\Windows\Temp\ELMA\ProcessScripts_d9f1503ff3f64eb4a8e513f5f0d3e8d4.cs:line 72
Я понимаю, что ошибка в том, что массив вышел за диапазон. Но. Файл с базы знаний скачал, код вставил в процесс один в один. Ошибка вылезает все равно.Index was outside the bounds of the array.
вот это 72 строка UserNew.MiddleName= stfio[2]; // Отчество Нашел пример из Экселя в базе знаний. Там все нормально. Все работает корректно.
аа, ну тогда можно по экселевскому примеру делать. А по поводу ограничения числа пользователей, есть 2 модели лицензирования: конкурентные и именные. Второй вариант лицензирования ограничивает количество активных (не заблокированных) пользователей в системе. А по умолчанию пользователи заводятся активными, поэтому и пишут про такое ограничение. Заблокированных может быть сколько угодно.