Имя: Пароль:
1C
1С v8
Как при открыти док-та открыть необходимую страницу в Панели
,
0 NewMishutka
 
24.10.14
11:48
Собственно, есть документ.
У него есть несколько страниц- Страница1 и Страница2.
При открытии:
Если ...
     ЭтаФорма.Панель.ТекущаяСтраница = ЭтаФорма.Панель.Страницы.Страница2;
Иначе
     ЭтаФорма.Панель.ТекущаяСтраница = ЭтаФорма.Панель.Страницы.Страница2;
КонецЕсли;

Не работает.
Интуитивно понимаю, что делаю что-то не то...
Поэтому прошу помощи...
1 anatoly
 
24.10.14
11:51
может ЭлементыФормы ?
2 NewMishutka
 
24.10.14
12:01
(1) Да нет, в ЭлементыФормы не нашел Панель...
3 Fish
 
24.10.14
12:10
(2) Значит, там её нет.
4 anatoly
 
24.10.14
12:15
(2) а какое имя у этой панели? может Панель1 ?

вообще, в типовых документах же:

Процедура УстановитьТекущуюСтраницуОсновнойПанели()
    Если ВидОперации = Перечисления.ВидыОперацийПоступлениеТоваровУслуг.ПокупкаКомиссия
     Или ВидОперации = Перечисления.ВидыОперацийПоступлениеТоваровУслуг.ВПереработку Тогда
    ЭлементыФормы.ОсновнаяПанель.ТекущаяСтраница = ЭлементыФормы.ОсновнаяПанель.Страницы.Товары;
...

все же очевидно, что мешает посмотреть?...
5 NewMishutka
 
24.10.14
12:24
В том то и ситуация - "ОсновнаяПанель" - или "Панель" в ЭлементахФрормы то нет...
А закладок 4 штуки.
6 Надо работать
 
24.10.14
12:27
(5) посмотри Список элементов управления формы в меню Форма
7 NewMishutka
 
24.10.14
12:42
(6) Есть все 4 элемента - все страницы.
8 del123
 
24.10.14
12:46
а отладчиком если пройти, до этого места доходит вообще? и какое-либо условие выполняется?
9 NewMishutka
 
24.10.14
12:48
(8) доходит, проходит и не ругается.
Но активной остается закладка - та, которую пользователь выбрал.
10 NewMishutka
 
24.10.14
12:50
Вообще в перечню страниц можно подобраться только через "ЭтаФорма.Панель.Страницы."... но как "открыть" какую-то программно?
11 Chameleon1980
 
24.10.14
12:52
уф или простые ептить?
12 NewMishutka
 
24.10.14
12:54
(11) Простые.
13 del123
 
24.10.14
12:56
(12) Попробовал у себя в базе, все отлично переключает по коду что у тебя
14 NewMishutka
 
24.10.14
12:57
(13) мда... странно.
может коцнуть временные файлы 1С-ки? вдруг поможет...
15 NewMishutka
 
24.10.14
13:06
Да, посмотрел - в открытой форме - переключает между страницами.
А вот при открытии, перед открытием - нет, не получается переключиться...
16 Fish
 
24.10.14
13:09
(15) ПередОткрытием и не должно переключать - формы ещё нет.
17 anatoly
 
24.10.14
13:39
(5) открой уже в меню Форма - Список элементов управления, и найди свою панель...
18 Chameleon1980
 
24.10.14
13:41
форма то и правда тютю еще
19 del123
 
24.10.14
13:59
(16)(18) Не поверите, в ПередОткрытием() тоже работает)
20 del123
 
24.10.14
14:02
(17) Как я понял, у него страницы на самой форме, а не на панеле.
(15) у тебя список элементов так же выглядит
https://www.dropbox.com/s/2fikhlg5785sblz/Скриншот%202014-10-24%2014.01.36.png?dl=0
или вначале панель идет, а потом уже страницы?
21 NewMishutka
 
24.10.14
14:13
(20) Да. Так же.
22 NewMishutka
 
24.10.14
14:19
(19) Не получается в Перед открытием, чего-то.
Заметил следующее.
В конце "ПриОткрытии" устанавливаю текущую страницу на нужную.
Попадаю в "ПриСменестраницы" - да, текущая страница - та, которую выбрал.
Далее, завершается "ПриОткрытии" - и снова попадаю в "ПриСменестраницы" - а ТекущаяСтраница - уже снова первая - не та, которая была назначена.
23 Fish
 
24.10.14
14:33
(19) Да, был неправ. В ПередОткрытием() тоже работает.
24 NewMishutka
 
24.10.14
14:39
(23) Это если есть Пнель - а  в ней страницы.
Создали документ - а в нем сразу страницы - нет панели.
Думаю, просто придется переделывать форму.
25 del123
 
24.10.14
14:41
(22) Когда второй раз попадаешь в ПриСменеСтраницы(), посмотри стек вызовов.
26 Fish
 
24.10.14
14:42
(24) Нет, как раз проверял на страницах прямо на форме, т.е. без панели. Всё работает.
27 NewMishutka
 
24.10.14
14:45
(26) Да, продублировали ситуацию.
Таки работает.
Буду разбирать работу документа.
28 NewMishutka
 
24.10.14
14:46
(25) Такс, так глубоко не знаю 1С... Ща буду искать где этот стек вызовов.
29 del123
 
24.10.14
14:48
(28) во время отладки, когда в процедуре будешь, нажми Ctrl+Alt+C
30 NewMishutka
 
24.10.14
15:05
(29) Спасибо.
При 2-м заходе в ПриСменеСтраницы -параметры уже установлены так: Документ.<>.Форма.ФормаДокумента.Форма.ПриСменеСтраницы(Элемент = Панель, ТекущаяСтраница = 0) - Уже есть ТекСтраница установлена в "0"
31 NewMishutka
 
24.10.14
15:06
На чистом документе - все отлично работает.
32 del123
 
24.10.14
15:16
(30) а откуда вызывается? в стеке должно быть видно какие процедуры из каких последовательно вызываются.
33 del123
 
24.10.14
15:19
у меня, например, видно, что из процедуры ПередОткрытием()
https://www.dropbox.com/s/btarz4kbtfkjuix/стек.jpg?dl=0
Посмотри у себя.
34 NewMishutka
 
24.10.14
17:38
(33) У меня нет.
После выхода из ПриОткрытии() вот так:
http://fs61.www.ex.ua/get/163915427081/133450248/Стек.PNG
35 NewMishutka
 
24.10.14
17:39
Думаю, все-таки, нужно переделывать документ...
36 GreatOne
 
24.10.14
17:43
Не читал, но есть такое:

Обычные формы (КА 1.1).
        ИмяВкладки = ?(ВидОперации = Перечисления.ВидыОперацийЗаявкаНаСклад.НаРеализацию, "ВкладкаРеализация", "ВкладкаПеремещение");
        РаботаСДиалогами.УстановитьТекущуюСтраницу(ИмяВкладки,ЭлементыФормы.ПанельШапки);


а внутри этой процедуры делается нечто подобное:
    Панель.ТекущаяСтраница=ЭлементыФормы.ПанельШапки.Страницы[ИмяСтраницы];
37 GreatOne
 
24.10.14
17:44
+(36) точнее   ЭлементыФормы.ПанельШапки.ТекущаяСтраница=ЭлементыФормы.ПанельШапки.Страницы[ИмяСтраницы];
38 NewMishutka
 
24.10.14
17:47
(37) У меня закладки на форме - там панели нет.
Но в документе что-то не корректно не работает, так как в новом документе описанный выше механизм работает на ура...
39 NewMishutka
 
24.10.14
17:47
Вот и ищу - где и что некорректно работает...
40 Chameleon1980
 
24.10.14
17:52
ну посмотри все эл формы через отладчик и свойства. руки в ноги и вперед. вы шо как маленькие
41 NewMishutka
 
24.10.14
17:55
От то и делаю...