powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / проблема с печатью отчетов
18 сообщений из 18, страница 1 из 1
проблема с печатью отчетов
    #36999450
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день всем, проблема с печатью отчетов.
У одной из пользователей документы уходят на принтер не по умолчанию, хотя в программе стоит

SET PRINTER TO default
REPORT FORM &report_name PREVIEW &&на экран

Электронщик утверждает что принтер у нее настроен, тот который у нее на столе стоит, а у ходит все-таки к соседям.

Вроде в файле win.ini должно быть прописано имя принтера по умолчанию, но я что-то не вижу.

А можно как-то узнать имя компьютера к которому подключен принтер, на который уходит документ?
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37000515
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сравните два значения

Код: plaintext
?SET("Printer", 2 ) == SET("Printer", 3 )

2 - это какой принтер установлен как принтер по умолчанию в системе Windows
3 - это какой принтер установлен как принтер по умолчанию в среде FoxPro

Обычно принтер в среде FoxPro может быть изменен если используется опция PROMPT в команде REPORT или вызван диалог SYS(1037).

Также, теоретически, может влиять "Printer Environment", если оно сохранено в настройках отчета. Проверьте, не совпадает ли тот принтер куда идет печать с тем принтером, который был настроен как принтер по умолчанию в момент сохранения отчета после модификации. Точнее, конечно, драйвер принтера.

Информацию о том, какой принтер к какому порту подключен можно получить через функцию APrinters(). "Родной" порт - это обычно "LPT1:"
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37001776
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

Вот загвоздка то и заключается в "Printer Environment". ставится галочка "Seva printer environment" в свойствах отчета и все тут. Если ее забыли снять, то печать идет на наш принтер, поднадоело уже.
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37001928
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно принудительно вычищать эти настройки перед сборкой проекта из всех отчетов. Класс ProjectHook событие BeforeBuild
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37001962
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадеждаМВладимирМ,

Вот загвоздка то и заключается в "Printer Environment". ставится галочка "Seva printer environment" в свойствах отчета и все тут. Если ее забыли снять, то печать идет на наш принтер, поднадоело уже.
Надо поступит как сказал ВладимирМ. А вот пример кода события BeforeBuild моего ProjectHook:
Код: plaintext
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.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
*-- Определение функций в Win32API для управления атрибутами файлов
DECLARE INTEGER SetFileAttributes IN Win32API STRING FileName, INTEGER Attributes
DECLARE INTEGER GetFileAttributes IN Win32API STRING FileName
#DEFINE FILE_ATTRIBUTE_NORMAL	 128 

LOCAL m.oFile AS Object, m.lnFileAttributeDBF AS Integer, m.RetVal AS Integer, m.lcFileName
#DEFINE FILE_ATTRIBUTE_NORMAL	 128 
#DEFINE CRLF					CHR( 13 ) + CHR( 10 )

LOCAL lnFileAttributeFRX AS Integer, lnFileAttributeFRT AS Integer, RetVal AS Integer, m.lnLineORIENT AS Integer, ;
	m.lnLinePAPERSIZE AS Integer, m.lnLineCOLOR AS Integer, m.lcNewStr AS Character

WITH THIS
	IF TYPE("Application.ActiveProject") == "O"
		FOR EACH m.oFile IN Application.ActiveProject.Files
			IF m.oFile.Type == "R"
				WAIT WINDOW "Обработка отчета: " + m.oFile.Name NOWAIT
				*-- у отчета удаляем окружение
				m.lnFileAttributeFRX = GetFileAttributes(m.oFile.Name)
				m.lnFileAttributeFRT = GetFileAttributes(FORCEEXT(m.oFile.Name, "FRT"))
				*-- Устанавливаем атрибуты в "нормальный" у файла FRX
				m.RetVal = SetFileAttributes(m.oFile.Name, FILE_ATTRIBUTE_NORMAL)
				*-- Устанавливаем атрибуты в "нормальный" у файла FRT
				m.RetVal = SetFileAttributes(FORCEEXT(m.oFile.Name, "FRT"), FILE_ATTRIBUTE_NORMAL)
				*-- Открываем отчет, как DBF - файл
				USE (m.oFile.Name) IN  0  ALIAS temp_report
				SELECT temp_report
				LOCATE FOR Objtype =  1  AND Objcode =  53 
				IF FOUND()
					REPLACE Tag  WITH ""
					REPLACE Tag2 WITH ""
					m.lnLineORIENT = ATCLINE("ORIENTATION", Expr)
					m.lnLinePAPERSIZE = ATCLINE("PAPERSIZE", Expr)
					m.lnLineCOLOR = ATCLINE("COLOR", Expr)
					m.lcNewStr = MLINE(Expr, m.lnLineORIENT) + CRLF + MLINE(Expr, m.lnLinePAPERSIZE) + CRLF + MLINE(Expr, m.lnLineCOLOR)
					REPLACE Expr WITH m.lcNewStr
				ENDIF
				*-- Закрываем отчет, как DBF - файл
				USE
				*-- Восстанавливаем атрибуты у файлов
				m.RetVal = SetFileAttributes(m.oFile.Name, m.lnFileAttributeFRX)
				m.RetVal = SetFileAttributes(FORCEEXT(m.oFile.Name, "FRT"), m.lnFileAttributeFRT)
			ENDIF
		ENDFOR
		WAIT CLEAR
	ENDIF
ENDWITH
С уважением, Алексей
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37002269
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

Куда мне этот класс прицепить?
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37002305
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правой кнопкой мыши по окну проекта \ в открывшемся меню выбрать пункт "Project info" \ перейти на закладку "Project" \ Поставить галку в пункте "Project Class" и выбрать собственный класс на базе класса ProjectHook
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37002336
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

Спасибо, сейчас попробую.
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37002428
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то галочка не снимается.
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37002451
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадеждаМ,

Точнее с этим классом не получилось, а в prg перенесла, и галочка снялась.
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37002677
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
почему с классом не получается, не поняла...
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37002696
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надеюсь, библиотека классов, в которую входит класс ProjectHook не включен в тот проект, события которого он и обрабатывает?
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37003573
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

нет, не включен (Exclude)
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37003863
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадеждаМВладимирМ,

нет, не включен (Exclude)
Его вообще не должно быть внутри PJX. Не должно быть в списке файлов. Ведь чтобы "собрать" проект он должен получить доступ к файлу. А для этого класс должен быть выгружен из памяти. Как следствие, он не сможет "отработать"
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37003897
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

Нету его у меня в списке файлов.
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37003958
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В принципе, все есть в справке

ProjectHook, Объект

Загрузка экземпляра класса выполняется (должна выполняться) в момент открытия окна проекта. Если настройка была изменена, когда проект был открыт, то для вступления ее в силу надо переоткрыть проект.

Кстати, факт наличия класса VCX внутри проекта, как оказалось, на работу не влияет. Инициализация (загрузка) ProjectHook выполняется в момент открытия окна проекта.
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37006535
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

класс отработал, но slfk вот такую ошибку:
Дата и время: 10/12/2010 10:14:43;Номер ошибки: 1238;Сообщение: No PARAMETER statement is found.;Строка с ошибкой: DECLARE INTEGER SetFileAttributes IN Win32API STRING FileName, INTEGER Attributes;Номер строки с ошибкой: 2;Название программы с ошибкой: PH.BEFOREBUILD
...
Рейтинг: 0 / 0
проблема с печатью отчетов
    #37006633
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А сейчас не выдает ошибок.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / проблема с печатью отчетов
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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