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

Автор Тема: Условия вывода на печать  (Прочитано 2194 раз)

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

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
Добрый день!
Запутался с условием вывода на печать Табличного документа
В модуле команды выполняю заполнение


&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)

ТабДокумент = Заполнялка(ПараметрКоманды);

//Если НЕ ДокСсылка.ТребуетсяПереместитьВСторСЦ Тогда
//Сообщить("Установите признак документа в 'Требуется переместить в сторонний СЦ' на закладке документа 'Перемещения'");
// Возврат;
//КонецЕсли ;

//Если НЕ ЗначениеЗаполнено(ДокСсылка.ПартнерСЦ) Тогда
// Сообщить("Заполните поле 'Партнер СЦ'");
// Возврат;
//КонецЕсли ;

ТабДокумент.Показать("Перемещение в сторонний СЦ");
КонецПроцедуры

&НаСервере
Функция Заполнялка(ДокСсылка) Экспорт

ТабДокумент = Новый ТабличныйДокумент;
и.т.д....
КонецФункции

Как мне закоментированное условие выполнить?
Выдает ошибку на ДокСсылка ,а док ссылка это Форма документа из которой выполняется эта команда печати..


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Выше напишите
ДокСсылка = ПараметрКоманды;

ДокСсылка - это не форма, а ссылка на документ
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
Выше напишите
ДокСсылка = ПараметрКоманды;

ДокСсылка - это не форма, а ссылка на документ
Так уже пытался...ошибка
{Документ.пмДокументСервиса.Команда.ПередачаВССЦ.МодульКоманды(9)}: Поле объекта не обнаружено (ТребуетсяПереместитьВСторСЦ)
Если НЕ ДокСсылка.ТребуетсяПереместитьВСторСЦ Тогда

Если переместить условия в функцию то ругается на ТабДокумент.Показать

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Если "ТребуетсяПереместитьВСторСЦ" - это экспортная переменная или реквизит формы, то их не "видно" на сервере при печати.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
Если "ТребуетсяПереместитьВСторСЦ" - это экспортная переменная или реквизит формы, то их не "видно" на сервере при печати.
Это реквизит формы..
Как тогда быть?
Добавлено: 02 Окт 2015, 10:30

Все отрабатывает если переместить условие в функцию,но ошибка
{Документ.пмДокументСервиса.Команда.ПередачаВССЦ.МодульКоманды(5)}: Значение не является значением объектного типа (Показать)
   ТабДокумент.Показать("Перемещение в сторонний СЦ");

Последний раз редактировалось: SkyNetYar; 02 Окт 2015, 10:30. Причина: Объединение сообщений

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
внутри процедуры ДокСсылка - это тот же ПараметрКоманды!

Показать() - не работает на сервере
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
Вот полный текст
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ТабДокумент = Заполнялка(ПараметрКоманды);
ТабДокумент.Показать("Перемещение в сторонний СЦ");
КонецПроцедуры

&НаСервере
Функция Заполнялка(ДокСсылка) Экспорт

ТабДокумент = Новый ТабличныйДокумент;

Если НЕ ДокСсылка.ТребуетсяПереместитьВСторСЦ Тогда
Сообщить("Установите признак документа в 'Требуется переместить в сторонний СЦ' на закладке документа 'Перемещения'");
Возврат Неопределено;
КонецЕсли ;

Если НЕ ЗначениеЗаполнено(ДокСсылка.ПартнерСЦ) Тогда
Сообщить("Заполните поле 'Партнер СЦ'");
Возврат Неопределено;
КонецЕсли ;


Макет = ДокСсылка.ПолучитьОбъект().ПолучитьМакет("ПФ_MXL_ПередачаВСтороннийСервисныйЦентр");
ОбластьМакета = Макет.ПолучитьОбласть("Шапка");

ОбластьМакета.Параметры.ТекстЗаголовка = "Перемещение в сторонний СЦ №: "+СокрЛП(ДокСсылка.Номер)+" от "+Формат(ДокСсылка.Дата,"ДЛФ=Д");

ТабДокумент.Вывести(ОбластьМакета);

Возврат ТабДокумент;
КонецФункции
Но тогда ругается на Показать()
Как вообще прервать выполнение функции...выдать сообщение и дело с концом..

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
на Показать() в таком варианте не должен ругаться... :dfbsdfbsdf:
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Может,может. Если реквизит = Ложь

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
Прервать бы выполнение функции полностью не было бы проблем или вернуть что то..
Возврат Неопределено; все равно продолжает выполнение процедуры ОбработкаКоманды

Видимо придется отказаться от выполнение кода в модуле команды и переносить все в модуль формы,но уж больно не нравится размазывание кода по всем модулям ,команду печать надо вставить в стандартные процедуры печати...,если бы в отдельную кнопку на форме было бы проще,но не хочется 100500 кнопок на форме :fdbsdfbsd:


Теги:
 


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

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

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


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

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

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

* Реклама

* Последние вакансии

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
163 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
56 Сообщений
alex0402
46 Сообщений
andron81_81
44 Сообщений
AIFrame
35 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
Golickoff Golickoff
28 Сообщений
BuhRust
27 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal