|
|
|
REPORT в окне
|
|||
|---|---|---|---|
|
#18+
Добрый день. Запутался я с REPORT'oм. Сам отчет я нарисовал. Источник данных (курсор) подготовил. Далее хочу 1. Показать отчет предварительно в отдельном окне. 2. По нажатии кнопки сохранить в файл. 2а. Вызывать диалог печати на принтер (может объединить возможности?) 3. Закрыть отчет Написал так: Код: plaintext 1. 2. 3. 4. ЗЫ. VFP6SP5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 13:41 |
|
||
|
REPORT в окне
|
|||
|---|---|---|---|
|
#18+
2a. REPORT FORM detout to print promp ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 13:58 |
|
||
|
REPORT в окне
|
|||
|---|---|---|---|
|
#18+
В VFP 9.0 можно, а в VFP 6.0 думаю, что нет. С уважением, Алексей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 14:22 |
|
||
|
REPORT в окне
|
|||
|---|---|---|---|
|
#18+
Кузнецов ИгорьДобрый день. Запутался я с REPORT'oм. Сам отчет я нарисовал. Источник данных (курсор) подготовил. Далее хочу 1. Показать отчет предварительно в отдельном окне. 2. По нажатии кнопки сохранить в файл. 2а. Вызывать диалог печати на принтер (может объединить возможности?) 3. Закрыть отчет Написал так: Код: plaintext 1. 2. 3. 4. ЗЫ. VFP6SP5 Для пунктов 1 и 2а и 3 команда Код: plaintext Пункт 2 немного непонятен. REPORT это графика. Ты хочешь сохранить что??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 14:24 |
|
||
|
REPORT в окне
|
|||
|---|---|---|---|
|
#18+
Хорошо, забудем пока про принтер. Как вывести на предпросмотр в отдельном окне и по дополнительному подтверждению в файл. Или это тоже по силам только девятке? Кстати каков формат получемого файла без опции ASCII? Чем его потом открывать? Важное замечание: программа работает при SCREEN=OFF. ---------------------------------------------- Кто в армии служил - тот в цирке не смеется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 14:29 |
|
||
|
REPORT в окне
|
|||
|---|---|---|---|
|
#18+
Сделать-то все это можно, хотя и муторно. 1) На Preview открываешь отчет в своем окне, но обязательно должен отображаться стандартный ToolBar с иконкой принтера. В синтаксисе 2) В момент нажатия на иконку принтера откроется стандартное системное окно "Печать" с кнопкой "Отмена". Надо организовать симуляцию нажатия на эту кнопку с тем, чтобы произошла отмена печати. Там же, в методе нажатия на эту кнопку "взводишь" флаг (изменяешь значение переменной), по значению которой и определяешь тот факт, что пользователь желает послать отчет на печать 3) После нажатия на иконку принтера отчет автоматически закрывается. Выполнение приложения продолжается после команды REPORT FORM. В этом месте анализируешь значение флага, определяющего тот факт, что пользователь нажал иконку принтера. Если этот флаг "взведен", то даешь команду REPORT FORM еще раз для выгрузки данных в файл, а затем еще раз с опциями TO PRINTER. Не уверен, что для As Top-Level форм удастся отобразить стандартный диалог выбора принтера. Поэтому такой 3-х кратный прогон отчета. Тут уж сам ищи как выкрутится со способом выбора принтера. Как организовать "перехват" отправки на печать и "взведение" флага. Код: 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. Вызов функции StopPrinting() делается в полосе Title-отчета (если такой полосы нет, то в той полосе, которая физически стоит самой первой в отчете). В режиме дизайна отчета дважды щелкнуть левой клавишей мыши по самой этой полосе (где написано слово "Title") и в открывшемся окне вставить в окошко "On Entry" вызов функции StopPrinting() Разумеется, сама функция должна быть "видна" при выполнении отчета. Да, если в команде REPORT FORM ... TO FILE не указана опция ASCII, то формируется файл принтерных кодов. Другими словами, это набор кодов принтера, которые собственно и осуществляют печать. Визуально это "добро" просмотреть невозможно. Можно только послать на принтер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 15:34 |
|
||
|
REPORT в окне
|
|||
|---|---|---|---|
|
#18+
Возвращаясь к пункту №1. Проблема в следующем: Все вроде делаю правильно, по синтаксису, но окно предварительного просмотра открывается внутри моей формы. Как избавиться от этого. Хотелось бы в отдельном окне. Что-то не допонимаю. Подскажите, пожалуйста. P.S. VFP7 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2006, 05:22 |
|
||
|
REPORT в окне
|
|||
|---|---|---|---|
|
#18+
startFOXВозвращаясь к пункту №1. Проблема в следующем: Все вроде делаю правильно, по синтаксису, но окно предварительного просмотра открывается внутри моей формы. Как избавиться от этого. Хотелось бы в отдельном окне. Что-то не допонимаю. Подскажите, пожалуйста. P.S. VFP7 Приведи команду REPORT. Как именно пишешь? IN WINDOW - внутри какого окна будет открыто окно предварительного просмотра. Само окно должно быть активно на момент открытия отчета. WINDOW (без IN) - реквизиты какого окна будут использованы как образец (шаблон) для окна предаврительного просмотра. Само окно - образец не обязательно должно быть открыто, но обязательно должно быть определено. Это две разные опции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2006, 10:55 |
|
||
|
REPORT в окне
|
|||
|---|---|---|---|
|
#18+
Лично я пошел по пути использования альтернативных генераторов отчета. Первый же попавшийся вполне меня устроил, так как позволяет выводить отчет в окно MsWord или как RTF. К тому же написан на VFP. Дальнейшие возможности открыты: хоть печатать, хоть сохранить. И основная AsTopLevel Form уже не играет роли. --------------------------------------------- Кто в армии служил - тот в цирке не смеется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2006, 15:07 |
|
||
|
|

start [/forum/search_topic.php?author=Normann&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
get settings: |
7ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 632ms |
| total: | 798ms |

| 0 / 0 |
