К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Как при открытии формы списка подчиненного спр. перейти в последнюю строку?

Гость
0 - 28.02.2013 - 14:35
7.7
При открытии подчиненного справочника из справочника владельца, фокус устанавливается на первой строке формы списка. Как сделать так, чтобы активной становилась последняя строка?

Молочь, конечно, но шефу будет приятно.



Гость
1 - 28.02.2013 - 14:46
АктивизироватьОбъект(<?>);
Синтаксис:
АктивизироватьОбъект(<Объект>)
Гость
2 - 28.02.2013 - 14:48
ОбратныйПорядок(<?>)
Синтаксис:
ОбратныйПорядок(<Режим>)
----
ВыбратьЭлементы(<?>)
Синтаксис:
ВыбратьЭлементы(<Режим>)
--
прервать
3 - 28.02.2013 - 15:14
Пойду сделаю... осталось понять какого владельца взять при открытии формы чтобы обратной выборко
4 - 28.02.2013 - 15:15
й получить последний элемент.. не забыть еще определить порядок какого реквизита установлен при открытии формы... и если установлен порядок не колда/не наименования - будет ли работать ОбратныйПорядок для ВыбратьПоРеквизиту?
Гость
5 - 28.02.2013 - 15:16
101 Сам пробовал?

ВыбратьЭлементы(1);
{Справочник.Серии.ФормаСписка.ФормаСписка.Модуль(4 1)**: Объект не может быть перепозиционирован!
6 - 28.02.2013 - 15:17
//************************************************** ****************************
Процедура ПослеОткрытия()
//спозиционируемся на последнем элементе справочника
глАктивизироватьПоследний(Контекст);
КонецПроцедуры // ПослеОткрытия
7 - 28.02.2013 - 15:17
//************************************************** ****************************
//позиционирование на последнем элементе списка справочника
Процедура глАктивизироватьПоследний(Знач Конт) Экспорт
Перем Спр;

Если глВернутьТипКонтекста(Конт)<>"Справочник.ФормаСпис ка"
Тогда //только для справочников!
Возврат;
КонецЕсли;

//спозиционируемся на последнем элементе справочника
Спр = СоздатьОбъект("Справочник."+Конт.Вид());

Реквизит = Конт.Сортировка();
Если Реквизит = "Код" Тогда Спр.ПорядокКодов();
ИначеЕсли Реквизит = "Наименование" Тогда Спр.ПорядокНаименований();
Иначе Спр.ПорядокРеквизита(Реквизит);
КонецЕсли;

Спр.ОбратныйПорядок(1);
Спр.ВыбратьЭлементы(0);
Спр.ПолучитьЭлемент();

Если Спр.Выбран()=0
Тогда //нет на чем позиционироваться!
Возврат;
КонецЕсли;

Конт.АктивизироватьОбъект(Спр.ТекущийЭлемент());
Спр = "";
КонецПроцедуры //глАктивизироватьПоследний()
8 - 28.02.2013 - 15:18
правда чего-то нифига этот код у меня не позиционирует...
9 - 28.02.2013 - 15:19
а проще наверное после прорисовки формы послать принудительный END
10 - 28.02.2013 - 15:20
наверное забыл определить перед выборкой владьца...
Гость
11 - 28.02.2013 - 15:24
Да, еще же владельца нужно учесть
Гость
12 - 28.02.2013 - 15:25
(5) чо там пробовать то ...
Гость
13 - 28.02.2013 - 15:26
(5) Читаем синтаксис
--
ВыбратьЭлементы(<?>)
Синтаксис:
ВыбратьЭлементы(<Режим>)
Назначение:
Открыть выборку элементов справочника.
Возвращает: 1 - если действие выполнено и в выборке есть хотя бы один элемент;
0 - если действие не выполнено или в выборке нет ни одного элемента.
Параметры:
<Режим> - как выбирать:
1 - выбирать элементы с учетом иерархии,
0 - выбирать элементы без учета иерархии (необязателен, по умолчанию - 1).
Замечание:
Метод можно использовать только для объектов, созданных функцией СоздатьОбъект.
Гость
14 - 28.02.2013 - 15:30
и вообще - при открытии справочника - обработка - нахождение элемента позиционирования - передача через список значений в параметр - приоткрытии получение параметра - и активизироватьобъект
ЗЫ открыть любую типовую с подбором той же номенклатуры
Гость
15 - 28.02.2013 - 16:04
После открытия подчиненного справочника так не проще будет?
Попытка
глWSH=СоздатьОбъект("WScript.Shell");
глWSH.SendKeys("{END**");
Исключение
КонецПопытки;
Гость
16 - 28.02.2013 - 16:08
(15) кмк вопрос а если под вайном ? :)))
17 - 28.02.2013 - 16:50
(15) угу, см(9)
18 - 28.02.2013 - 16:51
(16) "Бросай сноуборд, вставай на лыжи!"


К списку вопросов






Copyright ©, Все права защищены