|   |   | 
| 
 | Уменьшить табличный документ | ☑ | ||
|---|---|---|---|---|
| 0
    
        wladimir90 05.03.13✎ 10:47 | 
        Делаю внешнюю печатную форму. В коде пытаюсь установить масштаб = 51%, однако на печать выводиться в 100%. Что я делаю не так? 
  Функция Печать() Экспорт Таб = Новый ТабличныйДокумент; Макет = ПолучитьМакет("Форма22"); ОбластьМакета = Макет.ПолучитьОбласть("Форма22"); Если СсылкаНаОбъект.Товары.Количество() > 0 Тогда ОбластьМакета.Параметры.Описание = СсылкаНаОбъект.Товары[0].Номенклатура.Наименование; ОбластьМакета.Параметры.Страна = СсылкаНаОбъект.Товары[0].Номенклатура.СтранаПроисхождения.Наименование; ОбластьМакета.Параметры.Цена = СсылкаНаОбъект.Товары[0].Сумма; ОбластьМакета.Параметры.Сумма = СсылкаНаОбъект.Товары[0].Сумма; КонецЕсли; Таб.ИмяПараметровПечати = "Форма22"; Таб.ОтображатьСетку = Ложь; Таб.Защита = Ложь; Таб.АвтоМасштаб = Ложь; Таб.МасштабПечати = 51; Таб.ТолькоПросмотр = Ложь; Таб.КлючПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Форма22"; Таб.Вывести(ОбластьМакета); Возврат Таб; КонецФункции | |||
| 1
    
        Defender aka LINN 05.03.13✎ 10:47 | 
        Дык у тебя параметры загружаются в конце     | |||
| 2
    
        Тролль главный 05.03.13✎ 10:48 | 
        КлючПараметровПечати все перетирает сохраненными     | |||
| 3
    
        wladimir90 05.03.13✎ 10:52 | 
        (2) Закомментировал. Ничего не поменялось.
  (1) Всмысле, Вывод области макета должен быть перед изменением параметров? Местами менял, не прокатывает. | |||
| 4
    
        Галахад гуру 05.03.13✎ 10:54 | 
        //Таб.ИмяПараметровПечати = "Форма22";     | |||
| 5
    
        Defender aka LINN 05.03.13✎ 10:55 | 
        (3) КлючПараметровПечати. И не надо рассказывать сказки     | |||
| 6
    
        wladimir90 05.03.13✎ 11:23 | 
        (4) (5) Убрал и КлючПараметровПечати и ИмяПараметровПечати. В параметрах страницы все равно стоит 100% масшаб. 
  Если важно, использую 8.2.17, обычное приложение. Что б не быть голословным, еще раз, измененный код: Функция Печать() Экспорт Таб = Новый ТабличныйДокумент; Макет = ПолучитьМакет("Форма22"); ОбластьМакета = Макет.ПолучитьОбласть("Форма22"); Если СсылкаНаОбъект.Товары.Количество() > 0 Тогда ОбластьМакета.Параметры.Описание = СсылкаНаОбъект.Товары[0].Номенклатура.Наименование; ОбластьМакета.Параметры.Страна = СсылкаНаОбъект.Товары[0].Номенклатура.СтранаПроисхождения.Наименование; ОбластьМакета.Параметры.Цена = СсылкаНаОбъект.Товары[0].Сумма; ОбластьМакета.Параметры.Сумма = СсылкаНаОбъект.Товары[0].Сумма; КонецЕсли; Таб.Вывести(ОбластьМакета); Таб.ОтображатьСетку = Ложь; Таб.Защита = Ложь; Таб.АвтоМасштаб = Ложь; Таб.МасштабПечати = 51; Таб.ТолькоПросмотр = Ложь; Возврат Таб; КонецФункции | |||
| 7
    
        Тролль главный 05.03.13✎ 11:24 | 
        (6) значит параметры устанавливаются после этой процедуры     | |||
| 8
    
        wladimir90 05.03.13✎ 11:35 | 
        (7) Так и есть. Отладил, нашел типовой код который выставляет автомасштаб в истину. Требует имя принтера (!?)
  УниверсальныеМеханизмы - НапечататьДокумент. Если НЕ ПечДокумент.АвтоМасштаб И НЕ ЗначениеЗаполнено(ПечДокумент.ИмяПринтера) Тогда ПечДокумент.АвтоМасштаб = Истина; КонецЕсли; | |||
| 9
    
        wladimir90 05.03.13✎ 11:51 | 
        Заполнил имя принтера, не помогает.
  Вот тут, в последнем типовом участке кода перед выводом в форму печати: ФормаПечати.ПечатныйДокумент = ПечДокумент; В переменной ПечДокумент АвтоМасштаб = Ложь, Масштаб = 51, т.е. все как я задал. Однако это никак не влияет на пераметры печати. Может есть еще какие то неочевидные необходимые параметры? | |||
| 10
    
        Галахад гуру 05.03.13✎ 11:57 | 
        ОбщаяФорма ПечатьДокументов
  ПриОткрытии | |||
| 11
    
        wladimir90 05.03.13✎ 12:04 | 
        (10) Там смотрел, нигде не модифицируется масштаб или автомасштаб, данные табличного документа так же к концу "ПриОткрытии" остаются такими как заданы     | |||
| 12
    
        hhhh 05.03.13✎ 12:17 | 
        (11) ну пользователь пусть вручную поставит 51%, не? Ведь в любом случае приоритет у пользователя. Что он выставил, то и будет.     | |||
| 13
    
        wladimir90 05.03.13✎ 12:20 | 
        (12) Можно и так конечно, каждый раз лазить в настройки и ставить 51. Но черт побери почему соответствующий параметр есть и не работает. 
  Кто сталкивался с масштабом, у вас нормально выводится на печать аналогичный код? | |||
| 14
    
        hhhh 05.03.13✎ 12:44 | 
        (13) если пользователь один раз поставит - это будет на века.     | |||
| 15
    
        wladimir90 05.03.13✎ 14:16 | 
        (14) Благодарю. Не совсем то что хотел, но сохранение введенных параметров тоже работает.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |