Помогите с выводом на печать из 1С !

Тема в разделе "1C и всё что с ней связано", создана пользователем chernysh, 7 авг 2008.

  1. chernysh

    chernysh Гость

    Доброго времени суток ! такая проблема при формировании расчётных листов,формируется временный файлик с названием tmpprn.txt, так вот, при выводе на печать печатуются цифры нормально, а вместо русского шрифта иероглифы ! В коде программы стоит КодоваяСтраница(0) при изменении параметра с 0 на 1 тоже самое ! сам принтер матричный Epson fx-880. Кодовая страница настроена правильно, из каких либо других приложений печатает отлично ! Ещё один ньюанс, при отправке расчетных листов на лезерный принтер все ОК ! ребята помогите ! ! ![codebox]Перем Папка,Файл,Буфер;
    //-----------------------------------------------------------
    Процедура Выполнить()
    Перем Прн;
    Если фПросмотр = 1 Тогда
    Буфер.Показать("Файл для печати",фФайл);
    Иначе
    Буфер.Записать(фФайл);
    Прн = СписПрн.ПолучитьЗначение(СписПрн.ТекущаяСтрока());
    ФС.КопироватьФайл(фФайл,Прн,0);
    Если Найти(Файл,"tmpprn.txt") <> 0 Тогда
    ФС.УдалитьФайл(фФайл);
    КонецЕсли;
    КонецЕсли;
    Форма.Закрыть();
    КонецПроцедуры
    //-----------------------------------------------------------
    Функция ПолучитьПутьПринтера()
    Если СписПрн.ТекущаяСтрока() = 0 Тогда
    Возврат("");
    КонецЕсли;
    Возврат(СписПрн.ПолучитьЗначение(СписПрн.ТекущаяСтрока()));
    КонецФункции
    //-----------------------------------------------------------
    Процедура ПриОткрытии()
    СпрПрн = СоздатьОбъект("Справочник.Принтеры");
    СпрПрн.ПорядокКодов();
    СпрПрн.ВыбратьЭлементы();
    Сч = 0;
    ПоУм = 0;
    Пока СпрПрн.ПолучитьЭлемент() = 1 Цикл
    Сч = Сч + 1;
    СписПрн.ДобавитьЗначение(СокрЛП(СпрПрн.Путь),СпрПрн.Наименование);
    Если СпрПрн.ПоУмолчанию = Перечисление.ДаНет.Да Тогда
    ПоУм = Сч;
    КонецЕсли;
    КонецЦикла;
    Если СписПрн.РазмерСписка() > 0 Тогда
    Если ПоУм <> 0 Тогда
    СписПрн.ТекущаяСтрока(ПоУм);
    Иначе
    СписПрн.ТекущаяСтрока(1);
    КонецЕсли;
    КонецЕсли;
    Если ПустоеЗначение(Форма.Параметр) = 0 Тогда
    Буфер = Форма.Параметр.ПолучитьЗначение(1);
    Папка = Форма.Параметр.ПолучитьЗначение(2);
    Если ПустоеЗначение(Папка) = 1 Тогда
    Папка = КаталогВременныхФайлов();
    КонецЕсли;
    Файл = Форма.Параметр.ПолучитьЗначение(3);
    Если ПустоеЗначение(фФайл) = 1 Тогда
    Файл = "tmpprn.txt";
    КонецЕсли;
    фФайл = Папка + Файл;
    Иначе
    Буфер = СоздатьОбъект("Текст");
    Буфер.КодоваяСтраница(1);
    Папка = КаталогВременныхФайлов();
    Файл = "tmpprn.txt";
    фФайл = Папка + Файл;
    КонецЕсли;
    КонецПроцедуры
    //-----------------------------------------------------------
    Процедура ПриНачалеВыбораЗначения(Элем,ФСО)
    Если Элем = "фФайл" Тогда
    ФСО = 0;
    Если ФС.ВыбратьФайл(0,Файл,Папка,"Выберите файл", "Текст (*.txt) |*.txt","txt") = 1 Тогда
    фФайл = Папка + Файл;
    Буфер.Открыть(фФайл);
    КонецЕсли;
    КонецЕсли;
    КонецПроцедуры[/codebox]
     
  2. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    Дровишки эпсоновские походу. как вариант поправить кодовые страницы в регистре - может поможет. Через regedit ищешь c_1251.nls, сохраняешь ветку реестра и меняешь от 1250 до 1258 все ссылки на файлы кодировки на c_1251.nls. Перезагружаешся. Если есть косяк - восстанавливаешь ветку реестра из сделаной раньше копии. Если не поможет - тогда только дрова!
    З.Ы. По умолчанию очень часто ХР считает что россия это вьетнам.
     
  3. chernysh

    chernysh Гость

    самое интересное что дрова стоят родные с диска, я скачивал ещё с инета, такая же херня ! а на счёт реестра я попробую, позже отпишу ! А так спасибо !
     
  4. vitfil

    vitfil IT-интегратор

    Регистрация:
    2 апр 2004
    Сообщения:
    2.070
    Симпатии:
    0
    Если мне не изменяет склероз, матричные принтеры настраиваются для печати кириллицы из ДОСа переключателями на принтере. Из винды все печатается графикой.
     
Загрузка...

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