Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
18 Дек 2017, 08:16
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Создание "Мастера ввода" управляемое приложение  (Прочитано 2875 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн saxon

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-04-01
  • Сайт: 
  • Профессия: Ученик 1С
Доброе время суток! При разработке мастера ввода данных в управляемой форме у меня возникли сложности. Необходимо чтобы при нажатии на кнопку "Далее" в элементе "Группа - Страницы" перелистывались элементы "Группа - страница". Сами страницы я получил (Элементы.Стр.ПодчиненныеЭлементы[0]), а вот как нужную страницу показать? Можно ли это как нибудь реализовать? Буду благодарен если пришлете какой нибудь исходник. Заранее спасибо


Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2857
  • РЕПУТАЦИЯ: 546
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Как пример
&НаКлиенте
Процедура Далее(Команда)

МассивСтраниц = Новый Массив;
Для Каждого Эл Из Элементы Цикл
Если Эл.Вид = ВидГруппыФормы.Страница Тогда
МассивСтраниц.Добавить(Эл);
КонецЕсли;
КонецЦикла;

ИндексЭлемента = НайтиТекущуюСтраницу(ТекущийЭлемент,МассивСтраниц);

Если НЕ ИндексЭлемента = Неопределено Тогда
Если ИндексЭлемента<МассивСтраниц.ВГраница() Тогда
ТекущийЭлемент = МассивСтраниц.Получить(ИндексЭлемента+1);
КонецЕсли;
КонецЕсли;

КонецПроцедуры

&НаКлиенте
Функция НайтиТекущуюСтраницу(ТекЭлемент,МассивСтраниц)

Если ТекЭлемент = Неопределено Тогда
Возврат Неопределено;
КонецЕсли;
Если ТекЭлемент.Вид = ВидГруппыФормы.Страница Тогда
Возврат МассивСтраниц.Найти(ТекЭлемент);
Иначе
Возврат НайтиТекущуюСтраницу(ТекЭлемент.Родитель,МассивСтраниц);
КонецЕсли;

КонецФункции
Добавлено: 12 Апр 2013, 15:43

Единственно, для нескольких групп страниц будет двигать и страницы других групп
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Последний раз редактировалось: Dethmontt; 12 Апр 2013, 15:43. Причина: Объединение сообщений

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2857
  • РЕПУТАЦИЯ: 546
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Вот более правильный код:
&НаКлиенте
Процедура Далее(Команда)

мСменитьСтраницу(1);

КонецПроцедуры

&НаКлиенте
Процедура Назад(Команда)

мСменитьСтраницу(-1);

КонецПроцедуры

&НаКлиенте
Функция НайтиТекущуюСтраницу(ТекЭлемент,МассивСтраниц)

Если ТекЭлемент = Неопределено Тогда
Возврат ТекЭлемент;
КонецЕсли;
Если ТекЭлемент.Вид = ВидГруппыФормы.Страница Тогда
Возврат МассивСтраниц.Найти(ТекЭлемент);
Иначе
Возврат НайтиТекущуюСтраницу(ТекЭлемент.Родитель,МассивСтраниц);
КонецЕсли;

КонецФункции

&НаКлиенте
Функция НайтиТекущуюГруппуСтраниц(ТекЭлемент)

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

КонецФункции

&НаКлиенте
Процедура мСменитьСтраницу(Направление=1)

ТекГруппаСтраниц = НайтиТекущуюГруппуСтраниц(ТекущийЭлемент);

Если ТекГруппаСтраниц = Неопределено Тогда
Возврат;
КонецЕсли;

МассивСтраниц = Новый Массив;
Для Каждого Эл Из Элементы Цикл
Если Эл.Вид = ВидГруппыФормы.Страница и Эл.Родитель = ТекГруппаСтраниц Тогда
МассивСтраниц.Добавить(Эл);
КонецЕсли;
КонецЦикла;

ИндексЭлемента = НайтиТекущуюСтраницу(ТекущийЭлемент,МассивСтраниц);

Если НЕ ИндексЭлемента = Неопределено Тогда
Если ИндексЭлемента<МассивСтраниц.ВГраница() и Направление>0 Тогда
ТекущийЭлемент = МассивСтраниц.Получить(ИндексЭлемента+Направление);
ИначеЕсли ИндексЭлемента>0 и Направление<0 Тогда
ТекущийЭлемент = МассивСтраниц.Получить(ИндексЭлемента+Направление);
КонецЕсли;
КонецЕсли;

КонецПроцедуры

Добавлено: 12 Апр 2013, 15:45

обработкаТест
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!


Теги:
 

Программное создание документа на основании документа

Автор GolickoffРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 4510
Последний ответ 23 Апр 2015, 08:45
от Golickoff
Создание заказаов на производство на основании заказа на производство.

Автор Елена1986Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 20
Просмотров: 7889
Последний ответ 09 Сен 2015, 13:01
от Елена1986
Создание плана закупок с использованием плана продаж

Автор NataVlРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 1193
Последний ответ 26 Сен 2016, 16:25
от NataVl
Создание/обновление документа на основании другого документа

Автор РиммаРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 396
Последний ответ 28 Авг 2017, 16:02
от Vladimkir
Создание отбора отдельным элементом на форме внешнего отчета через настройки скд без программирования.

Автор MeatCrashРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 752
Последний ответ 14 Янв 2017, 10:14
от MeatCrash

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
135 Сообщений
AIFrame
63 Сообщений
ilyay ilyay
63 Сообщений
alex0402
50 Сообщений
andron81_81
44 Сообщений
oleg-x
41 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
27 Сообщений
alexandr_ll
23 Сообщений

* Кто онлайн

  • Точка Гостей: 371
  • Точка Скрытых: 0
  • Точка Пользователей: 12
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal