В файле конфигурации appsettings.json в секции Custom вы можете определить следующие настройки импорта объектов и участников (параметры поддерживают переопределение):
- ImportTemplateFileValueSeparator — формат разделителя значений в файле шаблона импорта дел:
- По умолчанию — запятая
- При изменении параметра в уже сгенерированных шаблонах импорта значение не будет пересчитано — для перегенерации шаблона необходимо пересохранить тип объекта
- ImportObjectsRepeatableValuesSeparatorInImportFile — формат разделителя значений из мультистрок и мультиблоков (по умолчанию — точка с запятой)
- ImportObjectsTimeout— таймаут импорта (по умолчанию не задан)
- ImportObjectsBatchSize— максимальное количество строк, подготавливаемых к импорту, за один раз:
- Значение параметра также используется для конфигурации с MS SQL для отправки данных на SQL-сервер
- По умолчанию — 1 000
- ImportObjectsMaxRowsInImportFile — максимальное количество строк в файле импорта:
- По умолчанию — 10 000
- Доступно отключить ограничение, указав значение 0
{
"Custom": {
// ... other settings
"ImportTemplateFileValueSeparator": ",", // символ разделителя значений для шаблона импорта. По умолчанию ','
"ImportObjectsTimeout": "00:00:00", // таймаут импорта данных из CSV файла. По умолчанию нет.
"ImportObjectsBatchSize": 1000, // Количество строк в каждой партии. В конце каждой партии строки в партии отправляются на SQL сервер. Используется в конфигурации с MS SQL. По умолчанию 1000. Так же этот параметр используется для выборки импортированных данных по пачкам, для дальнейшей публикации их в брокере
"ImportObjectsMaxRowsInImportFile": 10000, // Допустимое максимально количество строк в CSV файле с данными. Если в файле больше заданного количества, импорт не производиться. 0 - выключает ограничение. По умолчанию 10000
"ImportObjectsRepeatableValuesSeparatorInImportFile": ";" // символ разделителя значений для значений мультистрок/ мультиблоков. По умолчанию ';'
}
}
Логирование при импорте
Поскольку при импорте записываются выполняемые операции, для успешного формирования итогового файла логов в конфигурационном файле nlog.config обязательно должна быть объявлена переменная baseLogDirectory в секции nlog:
<nlog <!-- .... --> >
<variable name="baseLogDirectory" value="${basedir}logs/${hostRender}" />
Принудительное завершение сессии импорта
В секции Custom файла настройки конфигурации доступен параметр ImportObjectsScheduledStopDelay, где вы можете указать время, по истечении которого сессия импорта будет автоматически завершена:
- Время указывается в формате hh:mm:ss и отсчитывается с момента запуска импорта.
- По умолчанию значение не установлено — автоматическое завершение импорта не выполняется.
При автоматическом завершении сессии импорта:
- Статус импорта будет изменен на Остановлен.
- Уведомление в Case.one не отображается.
Если в результате автоматического завершения сессии импорта произошла ошибка, информация об ошибке будет записана в общем логе приложения:
"Custom": {
"ImportObjectsScheduledStopDelay": "01:00:00" //По умолчанию параметр не задан, автоматическое завершение отключено.
}