Сортировка записей в детали

Подскажите пожалуйста, как отсортировать записи в детали по умолчанию? То есть если не выбрана сортировка ни по одной из выбранных колонок, то записи должны быть отсортированы по одному из полей?

В частности: версия 3.2., в разделе Документы, деталь Продукты, если нет сортировки ни по одной из видимых колонок, то записи продуктов будут расположены по моему в порядке их добавления в документ. А нужно их отсортировать по коду продукта, по полю Code.

В запрос sq_OfferingInDocument, который расположен в Documents - Details - Offerings, я добавил поле Code, и включил сортировку. Почему то не работает. Должно работать?

Нравится

3 комментария

Укажите свойство OrderType колонки Code соответствующего грида, но обратите внимание, что данный грид используется в нескольких разделах.

Можно следующим образом: попробуйте в обработчик события dlDataOnDatasetBeforeOpen окна детали продуктов (скрипт wnd_OfferingsDetailTreeAreaScript) вставить такой код:

function dlDataOnDatasetBeforeOpen(Dataset, DoOpen) {
	var IsOrdered = false;
	for (var i = 0; i < grdData.ActiveView.Count; i++) {
		if (grdData.ActiveView.Items(i).OrderType != 0) {
			IsOrdered = true;
			break;
		}
	}
	if (!IsOrdered) {
		Dataset.DataFields.ItemsByName('Code').OrderType = otAsc;
		Dataset.DataFields.ItemsByName('Code').OrderPosition = 1;
	}
}

Таким образом, если сортировки в реестре нет ни по одному из полей, автоматически включится сортировка по полю Code.

Спасибо! Все получилось! Решил сделать через OrderType, правда там не было этой колонки, я ее добавил, и теперь она конечно видна в гриде )))

Показать все комментарии