7.7 Печать чеков

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Niharoshka, 12 апр 2018.

  1. TopicStarter Overlay
    Niharoshka
    Offline

    Niharoshka

    Регистрация:
    24 фев 2018
    Сообщения:
    23
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте. Возникла такая проблема. Есть два принтера, чековый(по умолчанию на серевере у пользователя) и этикетковый. В реализации есть кнопка чек, по ее нажатию вылетает чек из чекового.Все гуд. Но вот после печати этикеток, через другой принтер, когда снова нужно напечатать чек, печатает через этикетковый принтер.
    Пробовал и в реестре копаться, и в обработке, принтер назначать, все бестолку.
    Как, по кнопке Чек, выводит именно на нужный принтер?
    Может я что то не так сделал?
    Код:
    Процедура Печать(Докум, Устройство=0, КолвоКопий=1)
        Перем НачПовт, КонПовт;
       
        ИсхТабл = СоздатьОбъект("Таблица");
       
        НомЧека = Докум.НомерДок;
        Если ПустоеЗначение(Докум.Контрагент) = 0 Тогда
            Покупатель = СокрЛП(Докум.Контрагент.ЮрФизЛицо.ПолнНаименование);
        Иначе
            Покупатель = "";
        КонецЕсли;
        ИсхТабл.ВывестиСекцию("Шапка");
       
        НомСтроки = 0;
        Докум.ВыбратьСтроки();
        Пока Докум.ПолучитьСтроку() = 1 Цикл
            НомСтроки = НомСтроки + 1;
            ИсхТабл.ВывестиСекцию("Строка");
        КонецЦикла;
        ИсхТабл.ВывестиСекцию("Итого");
    
        Если Устройство = 0 Тогда
            ИсхТабл.Опции(0,0,0,0);//"Posiflex PP6800 Partial Cut v3.01"
            ИсхТабл.ПараметрыСтраницы(1,,,0,0,0,0,0,0,1,,"Posiflex");
            //Если глПолучитьПолномочие("РазрешитьРедактированиеТаблиц") = 0 Тогда
            //    ИсхТабл.ТолькоПросмотр(1);
            //Иначе
            //    ИсхТабл.ТолькоПросмотр(0);
            //КонецЕсли;
            Если НазваниеНабораправ()="Администратор" Тогда
                ИсхТабл.Показать(глНазваниеДокументаВжурнале(Докум),"");
            Иначе
                ИсхТабл.Напечатать(0);
            КонецЕсли;
        Иначе    
            ИсхТабл.ПараметрыСтраницы(,,,,,,,,,1,,);
            ИсхТабл.КоличествоЭкземпляров(КолвоКопий);
            ИсхТабл.Напечатать(0);
        КонецЕсли;
       
    КонецПроцедуры // Печать()
    
    
    //******************************************************************************
    // ПоКнопкеПечать()
    //
    // Параметры:
    //  Нет
    //
    // Возвращаемое значение:
    //  Нет
    //
    // Описание:
    //
    Процедура ПоКнопкеПечать()
       
        Печать(Док);
       
    КонецПроцедуры // ПоКнопкеПечать()
    
    //******************************************************************************
    // Предопределенная процедура
    //
    Процедура ПриОткрытии()
       
        Если ПустоеЗначение(Форма.Параметр) = 0 Тогда
           
            Докум      = Форма.Параметр.Получить("Контекст");
            Устройство = Форма.Параметр.Получить("Устройство");
            КолвоКопий = Форма.Параметр.Получить("КоличествоКопий");
       
            Печать(Докум, Устройство, КолвоКопий);
            Статусвозврата(0);
            Возврат;
        КонецЕсли;
       
       
    КонецПроцедуры // ПриОткрытии()
    
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    22.473
    Симпатии:
    525
    Баллы:
    204
    Явно указывать имя принтера в параметрах
  3. TopicStarter Overlay
    Niharoshka
    Offline

    Niharoshka

    Регистрация:
    24 фев 2018
    Сообщения:
    23
    Симпатии:
    0
    Баллы:
    1
    Я, как видите, указал принтер в параметрах страницы, работает до тех пор пока не напечатаешь на другом принтере, потом запоминается второй, и печатает чеоез него. Пробовал указывать имя и через \\server\принтер. Вообще не работает. Может как то при открытии обработки делается сброс устройства, но как?
  4. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    1.246
    Симпатии:
    95
    Баллы:
    54
    У вас в коде идёт условие
    Код:
    Если Устройство = 0 Тогда
    .....
    ИсхТабл.ПараметрыСтраницы(1,,,0,0,0,0,0,0,1,,"Posiflex");
    ....
    Иначе
    ИсхТабл.ПараметрыСтраницы(,,,,,,,,,1,,);
    .....
    КонецЕсли;
    Так вот 90% что условие то отрабатывает то нет. При условии Ложь идёт в ветку где указан принтер, при Истина в тут ветку где не указано. Проверьте.
  5. TopicStarter Overlay
    Niharoshka
    Offline

    Niharoshka

    Регистрация:
    24 фев 2018
    Сообщения:
    23
    Симпатии:
    0
    Баллы:
    1
    Проверил, он почему то в любом случае уходит в первую ветку Устройство = 0;
    Такое чувство, что он в упор не видит эту строчку:ИсхТабл.ПараметрыСтраницы(1,,,0,0,0,0,0,0,1,,"Posiflex");
    Последнее редактирование: 13 апр 2018
  6. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    1.246
    Симпатии:
    95
    Баллы:
    54
    Попробуйте как и предыдущий оратор предлагал, явно указать принтер

    ИсхТабл.ИмяПринтера="Posiflex";

    Второй момент, у вас вызывается печать
    ИсхТабл.Напечатать(0);

    Параметр 0=Ложь говорит о том что не сразу выводить на принтер. Вам нужен просмотр? может там и срабатывает последний принтер, если первое не поможет, попробуйте тут поставить 1.
  7. TopicStarter Overlay
    Niharoshka
    Offline

    Niharoshka

    Регистрация:
    24 фев 2018
    Сообщения:
    23
    Симпатии:
    0
    Баллы:
    1
    Выводит Поле агрегатного объекта не обнаружено (ИмяПринтера)
    Выводит выбор принтера на печать, как бы исправляет положение, но нужно чтобы пользователь ничего не выбирал.
    Самое забавное, что, даже если в параметрахСтраницы месть имени принтера написать белеберду, все равно печатает.
    Последнее редактирование: 13 апр 2018
  8. TopicStarter Overlay
    Niharoshka
    Offline

    Niharoshka

    Регистрация:
    24 фев 2018
    Сообщения:
    23
    Симпатии:
    0
    Баллы:
    1
    Может быть такое, что сервер запрещает счтение и запись реестра, и из-за этого такое и творится. Попробовал на другом компе, с обычной десяткой, все работает как часы, какой принтер указан, на тот и шлет печать?!
  9. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    22.473
    Симпатии:
    525
    Баллы:
    204
    1) Поменяйте местами метод Опции и ПараметрыСтраницы...
    2) Вы уверены, что у вас принтер так и объявлен (Posiflex)
  10. TopicStarter Overlay
    Niharoshka
    Offline

    Niharoshka

    Регистрация:
    24 фев 2018
    Сообщения:
    23
    Симпатии:
    0
    Баллы:
    1
    Да, уверен, уже имя поменял везде, везде он как посифлекс. Еще интересное наблюдение, на другой машине, где стоит другой принтер и 7 винда все работает замечательно, с указанием принтера \\comp\printer,а вот там где посифлекс стоит, стоит xp, может причина в этом? 1с стоит на 2012 сервере.
  11. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    22.473
    Симпатии:
    525
    Баллы:
    204
    Вы работаете под терминалом или локально по сети?
  12. TopicStarter Overlay
    Niharoshka
    Offline

    Niharoshka

    Регистрация:
    24 фев 2018
    Сообщения:
    23
    Симпатии:
    0
    Баллы:
    1
    Под терминалом, локально.
  13. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    22.473
    Симпатии:
    525
    Баллы:
    204
    Это понимать так: сесть, встать... Где-то в воздухе зависнуть...
    На сервере принтер имеет имя собственное? скрин покажите
  14. TopicStarter Overlay
    Niharoshka
    Offline

    Niharoshka

    Регистрация:
    24 фев 2018
    Сообщения:
    23
    Симпатии:
    0
    Баллы:
    1
  15. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    22.473
    Симпатии:
    525
    Баллы:
    204
    удаленка через ТВ есть?
  16. TopicStarter Overlay
    Niharoshka
    Offline

    Niharoshka

    Регистрация:
    24 фев 2018
    Сообщения:
    23
    Симпатии:
    0
    Баллы:
    1
    Нету.
  17. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    22.473
    Симпатии:
    525
    Баллы:
    204
    Сожалею... То тогда мои варианты кончились... Какая-то магия 5го уровня у вас
Похожие темы
  1. TrueCryer
    Ответов:
    4
    Просмотров:
    2.654
  2. Prosvet
    Ответов:
    12
    Просмотров:
    3.830
  3. Андрей-S
    Ответов:
    24
    Просмотров:
    14.469
Загрузка...

Поделиться этой страницей