PDA

Просмотр полной версии : Вывести на печать определенную область макета при реквизите булево



Sergeyfit
25.02.2014, 13:42
Добрый день!
Есть вопрос - легкий, но не как не могу допетрить....

на ФормаДокумента есть реквизит (Булево)
Сделал запрос, где выбираю этот реквизит с документа
На Макете есть определенные поля которые хочу выводить при значении (Булево ИСТИНА/ЛОЖЬ) то или иное поле.
Как это правильно сделать? Я думал так, но оказывается нет((


// Текст проживання та проїзду
ВыборкаДляШапки = СформироватьЗапросДляПеча ти("ПоРеквизитамДокумента").Выбрать();
Проезд = ВыборкаДляШапки.Проезд;
Если Проезд = Тип("Булево") Тогда
ОбластьПроёзд_1 = Макет.ПолучитьОбласть("Проёзд_1");
ТабДокумент.Вывести(Област ьПроёзд_1);
Иначе ОбластьПроёзд_2 = Макет.ПолучитьОбласть("Проёзд_2");
ТабДокумент.Вывести(Област ьПроёзд_2);
КонецЕсли;
или так


// Текст проживання та проїзду
ВыборкаДляШапки = СформироватьЗапросДляПеча ти("ПоРеквизитамДокумента").Выбрать();

Если ВыборкаДляШапки.Проезд = ИСТИНА Тогда
ОбластьПроёзд_1 = Макет.ПолучитьОбласть("Проёзд_1");
ТабДокумент.Вывести(Област ьПроёзд_1);
Иначе ОбластьПроёзд_2 = Макет.ПолучитьОбласть("Проёзд_2");
ТабДокумент.Вывести(Област ьПроёзд_2);
КонецЕсли;

arccos6pi
25.02.2014, 14:31
Добрый день!
Есть вопрос - легкий, но не как не могу допетрить....

на ФормаДокумента есть реквизит (Булево)
Сделал запрос, где выбираю этот реквизит с документа
На Макете есть определенные поля которые хочу выводить при значении (Булево ИСТИНА/ЛОЖЬ) то или иное поле.
Как это правильно сделать? Я думал так, но оказывается нет((


// Текст проживання та проїзду
ВыборкаДляШапки = СформироватьЗапросДляПеча ти("ПоРеквизитамДокумента").Выбрать();
Проезд = ВыборкаДляШапки.Проезд;
Если Проезд = Тип("Булево") Тогда
ОбластьПроёзд_1 = Макет.ПолучитьОбласть("Проёзд_1");
ТабДокумент.Вывести(Област ьПроёзд_1);
Иначе ОбластьПроёзд_2 = Макет.ПолучитьОбласть("Проёзд_2");
ТабДокумент.Вывести(Област ьПроёзд_2);
КонецЕсли;
или так


// Текст проживання та проїзду
ВыборкаДляШапки = СформироватьЗапросДляПеча ти("ПоРеквизитамДокумента").Выбрать();

Если ВыборкаДляШапки.Проезд = ИСТИНА Тогда
ОбластьПроёзд_1 = Макет.ПолучитьОбласть("Проёзд_1");
ТабДокумент.Вывести(Област ьПроёзд_1);
Иначе ОбластьПроёзд_2 = Макет.ПолучитьОбласть("Проёзд_2");
ТабДокумент.Вывести(Област ьПроёзд_2);
КонецЕсли;первый будет ложь
второй тоже
как вы из формы реквизит запросом вытянули?

---------- Post added at 14:31 ---------- Previous post was at 14:23 ----------

это ВНП?или в модуле документа?
а лучше покажите запрос?

Sergeyfit
25.02.2014, 14:52
Обычный выбор реквизита....
упростил, убрал отбор по ответЛицам и оставил как для примера...


ВЫБРАТЬ
СлужебныеПоездки.Дата КАК ДатаДок,
СлужебныеПоездки.Номер КАК НомерДок,
СлужебныеПоездки.Основани� �Командировки,
СлужебныеПоездки.ДатаНача� �а,
СлужебныеПоездки.ДатаОкон� �ания,
СлужебныеПоездки.ЦельСлуж� �бнойПоездки,
СлужебныеПоездки.Приказ КАК Приказ,
СлужебныеПоездки.Подразде� �ениеОрганизации КАК ПодразделениеОрганизации,
СлужебныеПоездки.Проезд
ИЗ
Документ.СлужебныеПоездки КАК СлужебныеПоездки
ГДЕ
СлужебныеПоездки.Ссылка = &ДокументСсылка

arccos6pi
25.02.2014, 15:05
ВыборкаДляШапки = СформироватьЗапросДляПеча ти("ПоРеквизитамДокумента").Выбрать();
ВыборкаДляШапки.Следующий( );
Если ВыборкаДляШапки.Проезд = ИСТИНА Тогда
ОбластьПроёзд_1 = Макет.ПолучитьОбласть("Проёзд_1");
ТабДокумент.Вывести(Област ьПроёзд_1);
Иначе ОбластьПроёзд_2 = Макет.ПолучитьОбласть("Проёзд_2");
ТабДокумент.Вывести(Област ьПроёзд_2);
КонецЕсли;

Sergeyfit
25.02.2014, 15:36
Все супер, спасибо большое))

arccos6pi
25.02.2014, 16:12
Все супер, спасибо большое))пожалуйста:)