Коллеги, добрый день.
Вопрос: как происходит (должна происходить) инициализация нового раздела?
Почему возник вопрос:
Террасофт не запущен, в прошлом сеансе был открыт раздел "Документы", деталь "Контакты".
Запускаем Террасофт.
В детали в ActionMenuItem есть пункт "Контакт" (т.е. перейти к контакту).
Переходим к контакту. При этом профайлером отслеживаем, что происходит...
А происходит вот что:
-Достаются из БД сервисы раздела - все ОК
при этом вызываются методы (Call Stack):
	ShowGroupWorkspace
 	ShowWorkspace
 	GotoWorkspace
 	GotoWorkspaceByReferenceInfo
 	GotoWorkspaceByActionMenuItem
 	GotoReference	
Приведу как выглядит последний метод:
	var WorkspaceWindow = PrepareWorkspace(GroupCode, WorkspaceUSI, AddHistory,
		ActivateMainPage);
	if (IsEmptyValue(IDDataFieldValue)
			|| (Assigned(IDDataFieldValue) && IsEmptyArray(IDDataFieldValue))) {
		return;
	}
	System.BeginProcessing();
	try {
		FilterWorkspace(WorkspaceWindow, IDDataFieldValue)
	} finally {
		System.EndProcessing();
	}
Что происходит с запросами к базе:
1) PrepareWorkspace - выбирает ПРОИЗВОЛЬНЫЕ контакты (в соответствии с настройкой сортировки + настройкой числа строк), которые мне в общем то НЕ НУЖНЫ. (в моем случае 40 записей)
2) Происходит запрос с выборкой НУЖНОГО мне 1 контакта в FilterWorkspace(WorkspaceWindow, IDDataFieldValue)
Не кажется что это слегка не логично?
Возможно я что-то не доглядел и нужно копать глубже, в методы обработки событий Workspace
Но зачем вытаскивать из базы 40 "левых" записей перед тем, как показать 1 нужную... вот это мне непонятно...
Возможно это ошибка кастомизации, пожэтому хотелось бы узнать, как это происходит в коробке...
Спасибо!