Макеты 1С

1. MikeGorshkov 12.01.17 01:10 Сейчас в теме
Здравствуйте!
В Макете Документа создали две области "Обл1" и "Обл2"
В форме документа добавлен переключатель (тумблер) "числовой" Выставлены параметры переключателя. (Локалка = 1, Сетевая = 2).
Необходимо чтоб при выборе переключателя "Локалка" в печатной форме макета выходило поле "Обл1" Иначе (Если переключатель выбран другой) должна выходить "Обл2". но что-то никак не пойму как это выставить в Модуле Менеджера Печати..

Платформа 8.3.9 Управляемые форма, конфа самописная
+
По теме из базы знаний
Найденные решения
16. yaroslav.artem 12.01.17 11:54 Сейчас в теме
Поле объекта не обнаружено. Наверное реквизит ЛокальнаяСетевая в запрос добавить нужно в Модуле менеджера, в Процедуре Печать.

Дальше как в 7 комментарии

Если Выборка.ЛокальнаяСетевая = 1
Тогда 
Макет.ПолучитьОбласть("1");
ИначеЕсли
Макет.ПолучитьОбласть("2");
КонецЕсли;

Либо в макете у вас параметра нет.
MikeGorshkov; +1
18. MikeGorshkov 12.01.17 12:32 Сейчас в теме
(16)
Если Выборка.ЛокальнаяСетевая = 1
Тогда
Макет.ПолучитьОбласть("1");
ИначеЕсли
Макет.ПолучитьОбласть("2");
КонецЕсли;


Чуть подправить все так пришлось

Если Выборка.ЛокальнаяСетевая = 1 Тогда
ТабДок.Вывести(Обл1,Выборка.Уровень());
Иначе
ТабДок.Вывести(Обл2,Выборка.Уровень());
КонецЕсли;
+
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Alexey_ 26 12.01.17 08:54 Сейчас в теме
(1)
не пойму как это выставить

выставляй вот так:
Область = ТабДок.ПолучитьОбласть("Обл" + ЗначениеТумблера);
MikeGorshkov; +1
3. MikeGorshkov 12.01.17 08:59 Сейчас в теме
(2)
Область = ТабДок.ПолучитьОбласть("Обл" + ЗначениеТумблера);


Ругается на ЗначениеТумблера
+
4. Alexey_ 26 12.01.17 09:02 Сейчас в теме
(3)естественно, ведь это придуманная мной переменная
Denis_CFO; ice-net; MikeGorshkov; +3
5. YNik 12.01.17 09:02 Сейчас в теме
(3), так вместо ЗначениеТумблера поставьте свое значение тумблера, как он у вас называется в программе.
MikeGorshkov; +1
6. MikeGorshkov 12.01.17 09:32 Сейчас в теме
А зачем "+"?
Мне ведь нужно чтоб при определенном выборе Переключателя выходила та или иная Область

В семерке так было

Если Переключатель=1 Тогда
	Таб.ВывестиСекцию("Обл1");   
	Иначе
	Таб.ВывестиСекцию("Обл2");   
	КонецЕсли;
yaroslav.artem; +1
7. Alexey_ 26 12.01.17 09:58 Сейчас в теме
(6)выбирай:
Если Переключатель=1 Тогда
	Таб.ВывестиСекцию("Обл1");   
ИначеЕсли Переключатель=2 Тогда
	Таб.ВывестиСекцию("Обл2"); 
ИначеЕсли Переключатель=3 Тогда
	Таб.ВывестиСекцию("Обл3");
ИначеЕсли Переключатель=4 Тогда
	Таб.ВывестиСекцию("Обл4");
ИначеЕсли ...
КонецЕсли;
Показать

или
Таб.ВывестиСекцию("Обл" + Переключатель);
yaroslav.artem; MikeGorshkov; +2
8. MikeGorshkov 12.01.17 10:27 Сейчас в теме
Не определяет Мой переключатель ругается на него.

Пишу так:

Если ЛокальнаяСетевая= 1 тогда
Обл1 = Макет.ПолучитьОбласть("Обл1");
Иначе
обл2 = Макет.ПолучитьОбласть("Обл2");
КонецЕсли;


Ошибка Переменная не определена.
Переключатель = ЛокальнаяСетевая если что

Прикрепленные файлы:
+
9. Alexey_ 26 12.01.17 10:32 Сейчас в теме
(8)это, видимо, потому что
В форме документа добавлен переключатель (тумблер) "числовой"
, а код в
Модуле Менеджера
+
11. spacecraft 12.01.17 10:47 Сейчас в теме
(8)
Если Ссылка.ЛокальнаяСетевая= 1 тогда 
Обл1 = Макет.ПолучитьОбласть("Обл1"); 
Иначе 
обл2 = Макет.ПолучитьОбласть("Обл2"); 
КонецЕсли; 

Ну или какой там тип у реквизита объекта ЛокальнаяСетевая
MikeGorshkov; +1
12. DrBlack 23 12.01.17 11:01 Сейчас в теме
(8) Обл1 = Макет.ПолучитьОбласть("Обл"+ЭтотОбъект.ЛокальнаяСетевая);
MikeGorshkov; +1
13. spacecraft 12.01.17 11:04 Сейчас в теме
(12) ЭтотОбъект не существует в модуле менеджера.
MikeGorshkov; +1
10. MikeGorshkov 12.01.17 10:42 Сейчас в теме
В Модуле менеджера прописаны параметры печати макета.
А куда еще писать?

В самом документе есть реквизит "ЛокальнаяСетевая" тип число
В Форме документа настроен как "переключатель" в виде "тумблера" В свойствах значений выставлены параметры 1 Локальная; 2 Сетевая; 3 и тд.

И как быть?
+
14. MikeGorshkov 12.01.17 11:40 Сейчас в теме
При печати ошибка Поле объекта не обнаружено ЛокальнаяСетевая.
+
15. Alexey_ 26 12.01.17 11:48 Сейчас в теме
(14)учебники почитал бы...
MikeGorshkov; +1
17. MikeGorshkov 12.01.17 12:31 Сейчас в теме
16. yaroslav.artem 12.01.17 11:54 Сейчас в теме
Поле объекта не обнаружено. Наверное реквизит ЛокальнаяСетевая в запрос добавить нужно в Модуле менеджера, в Процедуре Печать.

Дальше как в 7 комментарии

Если Выборка.ЛокальнаяСетевая = 1
Тогда 
Макет.ПолучитьОбласть("1");
ИначеЕсли
Макет.ПолучитьОбласть("2");
КонецЕсли;

Либо в макете у вас параметра нет.
MikeGorshkov; +1
18. MikeGorshkov 12.01.17 12:32 Сейчас в теме
(16)
Если Выборка.ЛокальнаяСетевая = 1
Тогда
Макет.ПолучитьОбласть("1");
ИначеЕсли
Макет.ПолучитьОбласть("2");
КонецЕсли;


Чуть подправить все так пришлось

Если Выборка.ЛокальнаяСетевая = 1 Тогда
ТабДок.Вывести(Обл1,Выборка.Уровень());
Иначе
ТабДок.Вывести(Обл2,Выборка.Уровень());
КонецЕсли;
+
19. yaroslav.artem 18.01.17 05:53 Сейчас в теме
Вам видней детали, это само собой.
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот