Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / REPORT FORM.....PREVIEW / 5 сообщений из 5, страница 1 из 1
12.03.2007, 12:08
    #34383822
REPORT FORM.....PREVIEW
Можно ли узнать какую кнопку нажал пользователь в стандартном окне предварительного просмотра отчёта: Печать или Отмена? Ну т.е. узнать распечатал ли он отчёт или только просмотрел?

REPORT FORM отчёт NOCONSOLE TO PRINTER PROMPT PREVIEW
...
Рейтинг: 0 / 0
12.03.2007, 13:49
    #34384282
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
REPORT FORM.....PREVIEW
Стандартным образом нельзя.
Но насколько я помню - в обсужениях то-ли тут , то-ли в фидошной конфе было решение.
Подробностей не помню , но основывалось на проверке было-ли окно с заголовком "Print" или "Печать" .
или вот еще - нарыл у себя в архивах - принцип тот-же "отлов" окошка с соответствующим заголовком

Код: 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.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
From:    Игорь Целищев <I.Tselischev@intech.ru>;
To:      Vladimir Y.Ivanov <fido7.ru.visual.foxpro@talk.ru>;
Date:    Tuesday, September  16 ,  2003 ,  4 : 43 : 13  PM
Subject: Как узнать был ли отпечатан отчет или нет? - fido7.ru.visual.foxpro
Files:   <none>
--====----====----====----====----====----====----====----====----====----===--
В отчете заводишь поле в котором пишешь ClosePrint()

PROCEDURE ClosePrint
 IF WEXIST('Standard')
*  HIDE WINDOW 'Standard'
  release window 'Standard'
   ENDIF
 IF WEXIST('Print Preview')
*  HIDE WINDOW 'Print Preview'
  release window "Print Preview"
   ENDIF
 IF WEXIST('Предварительный просмотр печати')
*  HIDE WINDOW 'Предварительный просмотр печати'
  release window 'Предварительный просмотр печати'
   ENDIF
RETURN ''

т.е. пользователь из привью ничего напечетать не сможет,
а потом спрашивешь messagebox-ом или формой "печатать ?"


"Vladimir Y. Ivanov" <consulate@mail.natm.ru>; wrote in message
news:bk54j6$1n0v$ 1 @ddt.demos.su...
> Привет, Всем!
> Как узнать был ли отпечатан отчет или нет?
>
> т.е нужно выполнить действие ипенно когда отчет был напечатан из Preview.
>
> А не просто открыт и просмотрен, как?
>
>
>
...
Рейтинг: 0 / 0
12.03.2007, 15:37
    #34384724
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
REPORT FORM.....PREVIEW
Начиная с версии VFP8 есть такая функция

SYS(2040)

Она возвращает число, соответсвующее текущему статусу отчета. Что с отчетом делают в данный момент.

Т.е. ДО начала выполнения отчета создаешь глобальную переменную или PRIVATE переменную, но так, чтобы ее было "видно" в отчете.

А затем в любой полосе отчета, которая наверняка будет распечатана в полосе On Entry или On Exit пишешь нечто вроде

Код: plaintext
_VFP.SetVar("MyVar",SYS( 2040 ))

MyVar - это как раз имя твоей переменной. По окончании работы с отчетом она будет содержать последний использованный статус. 2 - отчет был распечатан.
...
Рейтинг: 0 / 0
12.03.2007, 16:17
    #34384859
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
REPORT FORM.....PREVIEW
Очень интересно , отчетами почти не пользуюсь - но буду знать .
Кстати что хорошо с опцией PROMPT - статус 2 устанавливаеться только если нажата кнопка принт в диалоге выбора принтера.
...
Рейтинг: 0 / 0
13.03.2007, 11:29
    #34386470
REPORT FORM.....PREVIEW
пошёл своим путём.....сделал так.....

создал свой тулбар с кнопкой Печать и два абсолютно одинаковых отчёта отчёт.frx и отчёт1.frx
вызываю след образом:
Код: plaintext
1.
2.
3.
4.
5.
oTbrPrint = NewObject("tbr2","mytoolbar.vcx")
oTbrPrint.reportname = "отчёт1.frx"
oTbrPrint.Dock( 0 ) 
oTbrPrint.Show()
REPORT FORM отчёт PREVIEW

а в методе Click() кнопки Печать тулбара

Код: plaintext
1.
2.
REPORT FORM (THIS.Parent.reportname) NOCONSOLE TO PRINTER
&& т.е. здесь фактически получаецца REPORT FORM отчёт1.frx NOCONSOLE TO PRINTER

и получаю ошибку: "Ошибка вложенности отчёта"
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / REPORT FORM.....PREVIEW / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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