Типичные вопросы [отчёты] |
На этой станице помещены ответы на вопросы, которые я сам мучительно (или легко) находил, я не думаю, что ответы исчерпывающие, и если Вы найдёте, что что-нибудь дисанирует с Вашими представлениями, давайте обсудим и найдём лучшие решения... Кроме того, часто ответ может зависеть от версии как OS так и Visual FoxPro, проверить всё на всех версиях и платформах для меня просто непосильно. Изначально этот список был исключительно для VFP 5.0, в то время как сейчас это только VFP 7.0/8.0, я мог где-нибудь и пропустить упоминание о версии, и если Вы найдёте несоответствия, сообщите пожалуйста мне. |
Вопрос: Можно ли из отчёта, полученного средствами создания отчёта в Visual FoxPro получить "полнофункциональный текстовый документ" (шрифты, и т.д.)?
Вопрос: Имеется ли возможность автоматически максимизировать окно предварительного просмотра отчёта?
#DEFINE WND_PRVREP "Report" IF WEXIST(WND_PRVREP) ZOOM WINDOW (WND_PRVREP) MAX ENDIFгде-нибудь в событии MyReport.DataEnvironment.Init(). Обратите внимание, что это не будет работать в приложении, построенном средствами Application Wizard в VFP 6.0, однако там и нет этих проблем.
Вопрос: Желаю из VFP напечатать текстовый файл, но у меня чего-то не получается :-( Это можно как-нибудь сделать?
#DEFINE C_FILENAME "D:\MyApp\Vfp\Picture.prg" #DEFINE C_OUT_PORT "\\Server\Printer1" * ******************* Or: *#DEFINE C_OUT_PORT "PRN:" &&<- default *#DEFINE C_OUT_PORT "LPT1:" &&<- LPT1 ******************* * DECLARE INTEGER CopyFile IN KERNEL32.DLL ; STRING lpExistingFileName,; && name of an existing file STRING lpNewFileName,; && name of new file INTEGER bFailIfExists && operation if file exists LOCAL lbRetVal IF CopyFile(C_FILENAME, C_OUT_PORT, 0) = 0 ACTIVATE SCREEN ?CHR(7) =MessageBox('Can not print file', 16, _SCREEN.Caption) ELSE lbRetVal = .T. WAIT WINDOW 'Ok!' NOWAIT ENDIF CLEAR DLLS RETURN lbRetVal
Вопрос: При REPORT FORM ... TO PRINTER получаю ошибку: 1958 Error loading printer driver. Как побороть?
USE Myreport.frx && Open the FRX as a table LOCATE FOR Objtype = 1 AND Objcode = 53 && find the record that holds ** the printer information. For more information on the Table Structure ** of an .FRX file, see 'Table Structures of Table Files' in Help. REPLACE Tag WITH "" && Remove any Printer codes that may be stored in ** the Tag memo REPLACE Tag2 WITH "" && Remove any Printer codes that may be stored in ** the Tag2 memo
Вопрос: Есть желание выводить на печать линии из VFP но не могу понять, как это можно сделать. Возможно ли такое?
Вопрос: Не получается завершить сеанс после предварительного просмотра отчёта. Как побороть?
Вопрос: Можно ли выбрать принтер при печати отчёта?