Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Печать pdf документов в цикле / 11 сообщений из 11, страница 1 из 1
31.05.2016, 23:48
    #39247625
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
Коллеги!
У меня странно работает вот такая конструкция:

SELECT ...

SCAN

programm = ...

lcDir = ...

lcFileName = ...

PRINTJOB

bzSettings = CreateObject("Bullzip.PDFPrinterSettings")
WITH bzSettings
.RemoveSettings(.t.)
.SetValue("Output", lcDir + lcFileName )
.SetValue("ShowPdf","no")
.SetValue("ShowSettings","never")
.SetValue("ShowProgress","no")
.SetValue("ShowProgressFinished","no")
.WriteSettings(.t.)
ENDWITH

SET PRINTER TO NAME "Bullzip PDF Printer"

DO &programm && Внутри процедуры &programm есть команда типа - REPORT FORM *.frx TO PRINTER

SET PRINTER TO DEFAULT

RELEASE bzSettings

ENDPRINTJOB

ENDSCAN


Может быть правильно было бы писать так - в каждой процедуре &programm оформить фрагмент


lcDir = ...

lcFileName = ...

PRINTJOB

bzSettings = CreateObject("Bullzip.PDFPrinterSettings")
WITH bzSettings
.RemoveSettings(.t.)
.SetValue("Output", lcDir + lcFileName )
.SetValue("ShowPdf","no")
.SetValue("ShowSettings","never")
.SetValue("ShowProgress","no")
.SetValue("ShowProgressFinished","no")
.WriteSettings(.t.)
ENDWITH

SET PRINTER TO NAME "Bullzip PDF Printer"

REPORT FORM *.frx TO PRINTER

SET PRINTER TO DEFAULT

RELEASE bzSettings

ENDPRINTJOB


И тогда вызов был бы таким:


SELECT ...

SCAN

programm = ...

DO &programm

ENDSCAN
...
Рейтинг: 0 / 0
01.06.2016, 08:24
    #39247726
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
Дополню...

Попытки использовать DOEVENTS перед ENDSCAN не приводят к четкому последовательному вызову программ печати.

У меня есть подозрение, что первый вариант это рекурсивный вызов задания на печать, что приводит к вложенности пары PRINTJOB...ENDPRINTJOB, что не разрешено.
...
Рейтинг: 0 / 0
03.06.2016, 07:41
    #39249708
Pulsar_p
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
А в чем именно проблема?
У меня (по сути) такая же конструкция работает нормально.
...
Рейтинг: 0 / 0
07.06.2016, 13:47
    #39251930
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
Pulsar_p,

УБЕДИТЕЛЬНЕЙШАЯ ПРОСЬБА !!!

Выложите пожалуйста ваш фрагмент, который работает нормально.
Я их сравню посимвольно, по порядку следования команд, всеми доступными способами...

ОЧЕНЬ НУЖНО !!!
...
Рейтинг: 0 / 0
08.06.2016, 09:37
    #39252498
Pulsar_p
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
UAP,
Вот процедура. Я предварительно формирую курсор с данными, а затем ее вызываю.

Печать в pdf-формат
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
PROCEDURE SBROSVFORMATPDF(PRIEMREPORT,PRIEMFILESBROS,priem_file_kuda1)
    *Вывод отчетов в формат PDF (справки)
    *PRIEMREPORT - Файл отчета
    *PRIEMFILESBROS - имя файла, в который печатаем
    *priem_file_kuda1 - Путь для файла (если путь отличается от пути по умолчанию (по умолчанию putpdf))
    IF VARTYPE(priem_file_kuda1)='C'
        PRIEMFILESBROS=priem_file_kuda1+PRIEMFILESBROS+'.pdf'
    ELSE
        PRIEMFILESBROS=putpdf+PRIEMFILESBROS+'.pdf'
    ENDIF
    PRINTJOB
        BZSETTINGS = CREATEOBJECT("Bullzip.PDFPrinterSettings")
        WITH BZSETTINGS
            .REMOVESETTINGS(.T.)
            .SETVALUE("Output", PRIEMFILESBROS )
            .SETVALUE("ShowPdf","no")
            .SETVALUE("ShowSettings","never")
            .SETVALUE("ShowProgress","no")
            .SETVALUE("ShowProgressFinished","no")
            .WRITESETTINGS(.T.)
        ENDWITH
        SET PRINTER TO NAME "Bullzip PDF Printer"
        REPORT FORM &PRIEMREPORT TO PRINTER

        SET PRINTER TO DEFAULT
        RELEASE BZSETTINGS
    ENDPRINTJOB


...
Рейтинг: 0 / 0
08.06.2016, 13:24
    #39252753
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
Pulsar_p,

Большое спасибо!

Приступил к изучению...
...
Рейтинг: 0 / 0
08.06.2016, 14:05
    #39252793
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
Pulsar_p,

Направил вам по почте снимок того, что наблюдается на экране при появлении ошибки
...
Рейтинг: 0 / 0
08.06.2016, 14:37
    #39252848
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
Pulsar_p,

Я сравнил вашу и мою программы.

Они идентичны.

Прилагаю изображение на экране при отправке на печать - "распахивание".

Пока у меня не получается найти причину проблемы.
...
Рейтинг: 0 / 0
08.06.2016, 14:43
    #39252855
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
Pulsar_p,

То, что вы видите в прикрепленном файле должно быть ПДФ документом.
ПДФ документ действительно формируется.
Но на экране появляется "это", похожее на ПРЕВЬЮ.
Через пару секунд оно исчезает и все продолжается нормально.
Напоминаю, у меня идет печать ПДФ документов в цикле.
Ошибка появляется чаще всего на первом документе.
Если первый документ формировать отдельно, самостоятельно, а не в цикле, то все нормально.
...
Рейтинг: 0 / 0
08.06.2016, 15:54
    #39252972
UAP
UAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
Pulsar_p,

Похоже, что параметр NOCONSOLE решает проблему.

REPORT FORM *.frx TO PRINTER NOCONSOLE

Но нужно проверить еще многократно...
...
Рейтинг: 0 / 0
08.06.2016, 16:06
    #39252984
Pulsar_p
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Печать pdf документов в цикле
UAP,
Может и NOCONSOLE. У меня таких проблем не возникает(ло).
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Печать pdf документов в цикле / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]