DOWNLOADS and Update History

Just the App - Only for testing purposes - no source code

FoxyPreviewer v300_246      Alternative link
application, 8171, uploaded Nov 26, 2023
FoxyPreviewer      Alternative link
application, 7584, uploaded May 11, 2023
FoxyPreviewer Locs.dbf  Localizations table with all strings used in dialogs, forms and captions. Update and send it to vfpimaging at hotmail dot com
VFP table, 245kb, uploaded Nov 22
, 2023 - 00932 downloads


FoxyPreviewer documentation
documentation, 3203K, uploaded May 15, 2013 - 11917 downloads
 MSKB 968409 - Latest Hotfix for VFP9 SP2 - Updates VFP to v9.0.0.7423
application, 11140K, uploaded May 20, 2014 - 9981 downloads
compiled by Chuanbing Chen. Library , Uploaded Nov 26,2023


application, 3182K, uploaded Feb 27, 2021 - 00454 downloads

application, 3708K, uploaded Feb 06, 2021 - 03699 downloads
application, 3707K, uploaded Nov 28, 2020 - 03961 downloads
application, 5182K, uploaded Jan 20, 2017 - 22204 downloads

Donate to support this project
Donate to support this project

Here you will find the most recent versions of FoxyPreviewer.
The recommended download will always be a stable version, tested by many users.

To get the most power for your previews, please TRY the most recent versions, that will bring new possibilities, fixes and improvements, but still need some testing. It is important to know how the testing version is running in order to continue developing new possibilities, and improve the product.


Just update the "FoxyPreviewer.App" file.


v3.00.246 - 2023-11-24
- Use your own Localizations table adapted to your needed CodePage. Just store the FoxyPreviewer_Locs.Dbf file at the same locations of FoxyPreviewer.App and FP3 will use it instead of the embedded table. More information at FAQS#26
- Included support for LibHpdf64.dll for the Haru Pdf Library to work under VFPA64

v3.00.245 - 2023-11-23
- Polish language updated
- Updated the FoxyPreviewer_Locs localization table

v3.00.243 - 2023-11-16
- Duplex manual printing implemented

v3.00.242 - 2023-11-14
- Fix: After printing a report that had the "Printing Environment" saved in the FRX the current printer will not be changed any more - the previous and default printer will keep as default
- New Property: 'lKeepOriginalPrinter' - Logical, determines if the default printer will be changed if the user changes the printer in the preview combobox.

v3.00.240 - 2023-10-31
- Enhancement: After printing in "Odd/Even" mode the report preview will keep opened
- Fix: ".nRenderMode = 3" was not printing images stored in "General" fields
- Fix: Error when switching from "nPreviewMode" 1 to 2 interactively

v3.00.239 - 2023-10-04
- Fix: Odd/Even page printing was not working under the "PrintingPreferences" page
- Fix: OBJECTTYPE 10 was not respecting the page orientation

v3.00.238 - 2023-09-27
- NewProperty: "cEmailToolTip" - Character, allows you to customize the tooltip to be used for the 'e-mail' button. This was intended to be used when the properties 'cEmailMode = 4' and 'cEmailPrg' are set for a custom procedure to export the output files. There is a new sample - 'Customizing export button' in the samples folder showing how to play with this feature.
Usage sample:
_Screen.oFoxyPreviewer.cImgEmail  = "WhatsApp16.bmp"
_Screen.oFoxyPreviewer.nEmailMode = 4 && Custom procedure
_Screen.oFoxyPreviewer.cEmailPRG  = "TESTWHATSAPP"
_Screen.oFoxyPreviewer.cEmailTooltip = "My custom button tooltip"
Generic Email settings
nEmailMode - numeric, the email type (1 = MAPI, 2 = CDOSYS HTML, 3 = CDOSYS TEXT, 4 = Custom procedure)
lEmailAuto - logical, Automatically generates the report output file
cEmailType - character, the file type to be used in Emails (PDF, RTF, HTML or XLS)
cEmailPRG - character, the name of a PRG that will fire your custom email. In this PRG, you need to receive one parameter, tcFiIle, that is the temporary output file that you'll send by email. A complete sample, "MYSENDMAIL.PRG" is available, showing you how you can send your emails. To use it, you need to set the value of this property, for instance: .cEmilPrg = "MySendMail.Prg"
cSaveDefName - character, the default name of the save file. Available in the SAVE AS dialog OR automatically used if lEmailAuto

v3.00.237 - 2023-09-26
- Fix: OBJECT TYPE 10 sometimes generating an unreadable PDF

v3.00.236 - 2023-09-23
- Fix: OBJECT TYPE 10 now will try to get page dimensions information directly from the FRX, instead from the current printer. Before, when some selected printers had a small paper size the PSD document became small as well. Anyway, it is important that your report is saving the page dimensions information in the "EXPR" field of your reports, so that the Report Engine will be able to follow the needed report directives disregarding the printer, and generate the desired PDF document.
- Fix: Capture button removed from nPreviewMode = 1 due to form paint issues
New property: ".cErrorCaptureFile" - Character, the captured screen file name immediately before an error message is fired. If left empty, this step is ignored.

v3.00.235b - 2023-09-17
- Enhanced Search mode for nRenderMode = 1
- Fix: "Property 'nCurrenPreviewMode' not available when accessing the reportListeners directly.

v3.00.234 - 2023-09-14
- Fix Context Menu showing wrong items
- Hotkeys available according to the buttons available.
- Fix Unicode buttons sample

v3.00.233 - 2023-09-07
- Fix Search error when the Preview Toolbar was closed
- New Keyboard Shortcuts available for the Print button in the Printing Preferences form

v3.00.232 - 2023-09-06 - Special thanks to MK Sharma for his valuable feedback
- Fix Vertical Scrollbar always shown after context menu
- Fix 4 Pages View not working in RenderMode = 1
- Search engine rebuilt, several small fixes
- New Keyboard Shortcuts available for nPreviewMode = 2, 3:
            "F" - Calls the text Find or Search form
            "P" - Calls the Printing Preferences form
            "S" - Calls the Save As context menu
            "F11" - Switches the Preview to Full Screen mode
            "F12" - Calls the Settings form            

v3.00.230b - 2023-08-12
- Fix in Context menu for PreviewMode = 1
- Fix scrollbar reset on page change

v3.00.229 - 2023-08-10
- Fix in Ribbon error while printing
- Updated Printers Combo backcolor

v3.00.228 - 2023-08-08
- Fix in Ribbon context menu that was freezing the PreviewForm. Replaced the original Ribbon Menu with VFP's original for safety.
- Fix: On switching pages the vertical Scrollbar goes to top

v3.00.227 - 2023-07-30
- Fix in Ribbon context menu
- New tweaks for frozen screen after Whole page visualization in Ribbon
- Several icons transparencies were fixed

v3.00.226 - 2023-07-30
- Tweaks for PDF rendering in Chinese - Make sure to use .cCodePage = "CP936"
- Several tweaks and enhancements for the Ribbon Preview mode
- Context menu selected items now follow the Ribbon color scheme 
- Enhanced Full page mode, with new options in the Right click Context menu - Capture and printing options. Dbl-click the image to switch between full page to PageWidth or vice versa. <ESC> leaves the screen
- Fix: Screen was getting frozen after using the WholePage form

v3.00.222b - 2023-07-24
- Fix in VFPRender mode for new previews
- Fix _goFP global variable not available

v3.00.222 - 2023-07-24
- New Preview mode - .nPreviewMode = 3 && Ribbon, bringing a new user experience
- New "scrollable Side panel", available for .nPreviewMode = 2, 3
- New "Whole Screen" preview, available for .nPreviewMode = 2, 3
- Better support for searchable PDFs in nPdfType = 20
- Several tweaks to make .nPreviewMode = 2, 3 work faster

*** TO BE UPDATED *** there is really MUCH MORE to be documented

.nPreviewMode = 3 && Ribbon, with Side Panel visible

.nPreviewMode = 2 && Scrollable container, with Side Panel visible

v3.00.210 - 2023-06-22
- Fix: File "Automatic opening" not working in very big reports for PDF outputs due to file not ready
- Fix: Property '.cDestFile' was not returning the last saved filename
- Enhancement: Introduced a new value for ".nEmailMode". Now ".nEmailMode = 7" will use the  PowerShell SendMailMessage method, that allows us to Send e-mails Authenticated, using any SMTP server, Gmail and Outlook included, using port 567. It is required that your system is allowed to run "Wscript.Shell"
Before you go:
On Windows 10, to run a script file with the PowerShell console, you have to change the execution policy. To change the execution policy to run PowerShell scripts on Windows 10, use these steps:
  • Open Start.
  • Search for PowerShell, right-click the top result, and select the Run as administrator option.
  • Type the following command to allow scripts to run and press Enter: Set-ExecutionPolicy RemoteSigned
  • Type A and press Enter (if applicable).
v3.00.208 - 2023-06-18
- Fix: Compiler error 'cFormClass' not found

v3.00.207 - 2023-06-18
- Fix: Previews were not respecting previous form positions, WindowState and Dock
- Several tweaks in '.nPreviewMode = 2'

v3.00.206 - 2023-06-17
- Several fixes for Hebrew and Arabic languages to export in PDF
- mDotted the whole library for more safety in code
- Enhanced the Preview speed in '.PreviewMode = 2'
- Several tweaks and code cleanup

v3.00.200 - 2023-06-05
- Tweaks in error messages
- Fix: "PreviewHelper class not available" when Settings form called

v3.00.199 - 2023-05-18
- Fix in PdfX - processing images

v3.00.198 - 2023-05-16
- Updated the Greek locs table
- Enhancement - property "lNoFlicker" under ".nPreviewMode=2" will produce a better preview image and mouse control

v3.00.196 - 2023-05-14
- Fix - Original alias was being changed when a report was exported from the "Save as..." button
- Enhancement - User can choose whether to save as XLS or XLSX in the "Save as..." PUTFILE

v3.00.195 - 2023-05-14
- Fix - Excel was ignoring transparent backgrounds
- Enhancement - Excel Labels alignment
- Fix - nPdfType=2 new drawing method to avoid "PdfAsImage" documents

v3.00.193 - 2023-05-11
- Fix - Excel was exporting some negative values as Character
- Fix - HaruPdf or Object type 10 PDF outputs now accept characters from different codepages. Set the property _Screen.oFoxyPreviewer.cCodePage = "1253" && Greek

v3.00.191 - 2023-05-08
- Fix - HaruPdf or Object type 10 PDF outputs were generating non searchable documents when created in a sequence

v3.00.190 - 2023-05-07
- *IMPORTANT FIX* the report engine could change the selected alias during the report run

v3.00.187 - 2023-05-03
- Enhancement in Capture Screen portions for ".nPreviewMode = 1 and .nRenderMode = 1" - toolbar / original render (not High DPI friendly) - still far from desired, but now the selected area is being shown before the menu selection
- New language: Latvian, updated Portuguese and Spanish localizations table

v3.00.186 - 2023-05-02
- Fix in Capture Screen portions

v3.00.185 - 2023-05-01
- Updated the Greek localizations table
- New localization strings - If you are interested in having the strings translated to any other language than English, please return the file FoxyPreviewer Locs.dbf with your language to vfpimaging at hotmail dot com

- New feature - Capture report preview screen portions - Works very well under .nPreviewMode = 2
Under .nPreviewMode = 1 (Default with toolbars the captured screen portion will not be shown as desired due to a VFP9 issue dealing with Screen repaint for EMFs. Because of that, this feature is OFF by default.
 New property: ".lShowCaptureBtn" - Shows / hides the Share button in the toolbar
 New property: ".cImgCapture" - The FullPath of the image file to replace the image of the "Capture" button in the preview toolbar.
 New property: ".cImgCaptureBig" - The FullPath of the 32x32 pixels image file to replace the image of the "Capture" button in the preview toolbar. Applicable when the property 'nButtonSize = 2' && big 

- Fix in Share form, was showing out of the screen bounds when the toolbar was docked at the bottom

- Fix: Miniatures not working when .nRenderMode = 1

 New property: ".lExcelDisplayGridLines" - Logical, determines if the gray lines will be displayed between cells. Applicable only in .nExcelType = 2 (XLSX)
 New property: ".lExcelAutoHeight"- Logical, sets the row heights to allow all contents to be shown. For huge reports, this may slow down a little the export process. Applicable only in .nExcelType = 2 (XLSX)

v3.00.184 - 2023-04-17
- Updated the Greek localizations table

v3.00.183 - 2023-04-03
- Enhancement - Method "GetFoxyScript" can receive 2 parameters: tlSilent (does not open the generated file for editing), tcFolder (the destination folder of the script). Returns the generated fileName of the script
 New property: ".lExcelForceTextVisible" - Logical, forces text to black if background and foreground colors are white

v3.00.182 - 2023-03-30
- Fix in <TF> when direct printing, without previewing

v3.00.181 - 2023-03-29
- Improvements and several tweaks in the XLSX output
- Export directly to XLSX without preview using:
   REPORT FORM YourReport TO FILE YourFile.XLSX - FP3 will export based on the file extension
- Special thanks to Greg Green and his fantastic VFPX project XLSXWorkBook

v3.00.179 - 2023-03-19
- New property: ".nExcelType" - Numeric, the Excel type to generate - 1=XLS (default), 2=XLSX
- Fix - Removed a SET STEP while generating the XLS
- Introduced a warning message explaining the PreviewHelper class can't be accessed directly.

v3.00.178 - 2023-03-15
- Fix - Numbers were being exported as text in Excel
- Fix - <FJ> Full Justified now handles CodePage specific characters. Before, characters were being all converted to CP1252.

v3.00.176 - 2023-03-10
- Fix - Search module was not moving the PreviewForm ViewPort to show the searched string
- Fix - Miniatures were not showing in ".nRenderMode - 2"
- Fix - Attachments were being duplicated in the CDO-HTML mode
- the search form in ".nPreviewMode=2" (scrollable container) is now semi transparent for not hiding completely the Preview Form
- New warning message if the changed printer (in preview combo) is configured to print in a different page size, probably cutting some of the report contents
- New property: ".lNoFlicker" - logical, default - .F. , Workaround to avoid using EMFs to render the report preview in the new "Scrollable container preview mode" (.nPreviewMode=2). The report image is converted to a BMP, avoiding flickering issues, but the extra processing slows down a little the preview.
- Fix - Tagged formatting now handles CodePage specific characters. Before, characters were being all converted to CP1252.
- Fix - the CDOSYS-HTML form was not showing the new buttons correctly
- Enhanced initialization:
You can determine exactly where FP3 will store all its files
* Option 1

* Option 2:
DO FOXYPREVIEWER WITH "d:\Users\Steve" && Path
DO FOXYPREVIEWER WITH "CLEAN", "d:\Users\Steve" && Path
DO FOXYPREVIEWER WITH "CLEAN", "d:\Users\Steve", "Steve" && Path and User - 3 parameters

* Option 3 - Tagged Parameters
DO FOXYPREVIEWER.APP WITH "<CLEAN/><PATH>d:\Users\Steve</Path><USER>Steve</USER><IMAGESPATH></IMAGESPATH>" && Using tags for all possibilities, with room for new options in the future

If you set the "User" tag, the images folder will be in a subfolder of it unless you define the tag <IMAGESFOLDER>!

Here's an initialization sample available with the new options:

LOCAL lcLocalUserPath, lcFoxyPath, lcImgPath
m.lcLocalUserPath = GETENV("UserProfile")
m.lcFoxyPath = m.lcLocalUserPath + "\FOXYPREVIEWER"
m.lcImgPath = m.lcFoxyPath + "\FP_IMAGES"
MKDIR (m.lcFoxyPath)
MKDIR (m.lcImgPath)
DO FoxyPreviewer.APP WITH "<IMAGESPATH>" + m.lcImgPath + "</IMAGESPATH>"

v3.00.172 - 2023-02-27
- Fix - Dates were not being exported to Excel.

v3.00.171 - 2023-02-26
- Fix - Mouse cursor was jumping on Left docked toolbar
- Fix - <TF> Tagged formatting issue during rendering
- New property: 'lLockPrinters' - Logical, default = .F. - Enables / disables the available printers combo in the toolbar. Users will be able to see the current printer, but will not be able to change it.
- New property: 'nShareTimeOut' - Numeric, Determines the time in seconds the "Share" form will be available after the user clicked on the Share button. Although this is a Desktop and Modal type, this form could be sent to back of other forms if the user selected an item from the menu. Default = 90 (seconds)

v3.00.167 - 2023-02-20
- Added more information for the Method "_Screen.oFoxyPreviewer.GetFoxyScript()" - will provide some additional information about the printer used to ease bug reporting or asking for enhancements.

v3.00.166 - 2023-02-14
- New property: 'lCheckFonts' - Logical, default = .F. - checks if all fonts used in the report are installed in the local machine. If it finds any not installed, a warning message will pop informing about the missing fonts.

v3.00.165 - 2023-02-05
- Fix in the scrollable preview form. When reached the bottom of page the cursor was junping to the top.
- Fix in the settings form when switching from BtnMode 2 to 1 the Mouse over image was not being updated correctly.
- Fix in the settings form when switching from Small (16x16) to Big (32x32) buttons.

v3.00.160 - 2022-12-17
- Tweaks in Haru PdfListener (nPdfType=1), drawing bar codes as images when the font is not available

v3.00.159 - 2022-12-11
- Rebuilt the ExcelListener engine, now even faster
- Fix: Excel was storing numeric values as Strings when Set("Point") = ","
- Fix: Excel was not respecting Dynamics

v3.00.157 - 2022-12-06
- Updated the German / Deutch strings localization table.
- Enlarged the Share folder in some pixels, and made it resizable
- New property: 'lAutoSave' - Ignore PUTFILE() when cTempDestFile is set when 'SaveAs' button clicked from the toolbar. That means the user will not be allowed to choose the filename he desires.
- Few tweaks in the Samples form.

v3.00.156 - 2022-11-29
- Fix: Few tweaks for the page margins when "lRepeatInPage"

v3.00.155 - 2022-11-28
- New property: 'cAfterSavePrg' - Character, The name of a PRG that will fire after the user pressed the save button from the toolbar. In this PRG, you need to receive one parameter, tcFiIle, that is the output file just created.
- Fix - the file to be shared will not be opened when ".lOpenViewer=.T."

- Fix: Error in MultiReports

- Fix: Field format was not being respected when the field values did not fit to the width

- Fix: PDF Issue when Dynamics was selected in nPdfType = 1
- Fix: SET CENTURY ON after FP3 initialization
- Fix: Margins were incorrect when nRenderMode = 2 or 3
- Fix: Margins fix when Page printed twice
- Fix: Report miniature not shown in the Printer properties screen
- Updated localization table - now we have English, Portuguese, Spanish, Italian, Turkish, Slovak and Kroatian available

- New Method: CallSettingsForm()
Calls the settings form directly without the need to call the Report Preview, allowing your users to change FP3 settings whenever you like.

- New Method: ResetToDefault()
Resets the "FoxyPreviewer_Settings.dbf" table to the default settings of FoxyPreviewer, ignoring any changes that were set by the current user
eg.: _Screen.oFoxyPreviewer.ResetToDefault()

- New method: Release()
Releases FoxyPreviewer from memory, resetting all the Printing environment
eg.: _Screen.oFoxyPreviewer.Release()

v3.00.46 - 141
- New Method: GetFoxyScript()
Retrieves several FP3 settings to a TXT file that users can send to the developer if they find any issue or need assistance. This will help me to reproduce your environment and see your issue.
eg.: _Screen.oFoxyPreviewer.GetFoxyScript()

v3.00.45 - 2021-03-23
- New property: nImageResolutionQuality - Numeric, (1-10), the scale factor to be applied to the image. 1=Default (low quality), 10=Super high quality
- New property: nBtnStyle - Numeric, 0=Default (image file icons 16x16 or 32x32), 1=Custom monochrome icons, 2=Custom Grayscale buttons, better for color transformation
- New property: nBtnForeColor - Numeric, RGB value of the buttons Forecolor
- New property: nBtnBackColor - Numeric, RGB value of the buttons BackColor
- New property: nBtnDisabledColor - Numeric, RGB value of the buttons DisabledForecolor
- New property: nBtnMouseOverColor - Numeric, RGB value of the buttons Forecolor when mouse is over them
- New property: lExcelClearEmptyRows - Numeric, eliminates empty rows from the generated XLS document
- New property: nRenderMode, nPdfType
- New property: cTempFolder
- New feature in Printer Preferences form - Allows setting the RepeatInPage property on the fly, when the report uses half a page
- Fix for RepeatReportInPage when called by the PrintingPreferences form
- Fix in FoxyXLS - exceeding the previous limit of 32767 cells. Rows limit is 32767
- Scrollable container changes page if the bottom or top of the page reached
- No need to use OBJECT TYPE

v3.00.44 - 2021-02-27
- Fix - lRepeatPage now works on Direct Printing

v3.00.43 - 2021-02-06
- Updated the languages table -
- Fix for merged reports in PDF (OBJECT TYPE 10)

v3.00.41 - 2020-12-31
- Allow recoloring of button images as desired

v3.00.40 - 2020-12-27
- Unicodes in PDF will be rendered as image, keeping the visual aspect
- Unicodes in RTF, HTML and TXT now fully supported
- Introduced "Export as TXT" in simplified mode
- Fix: Property "lExcelRepeatHeaders" that was not working
- Fix: Property "cPrinterName" was not returning the correct printer

V3.00.30 - 2020-10-21
- New property: nPreviewMode - Numeric, determines if the Preview mode
        1 - default preview with toolbars
        2 - Enhanced preview, with a scrollable container and all the buttons on the top
- New property: nBtnSpecialEffect  = 0 && 0-3D  1-Plain  2-Hot tracking
- New properties:
cImgFirst          = ""
cImgFirstBig       = ""
cImgPrev           = ""
cImgPrevBig        = ""
cImgNext           = ""
cImgNextBig        = ""
cImgLast           = ""
cImgLastBig        = ""
cImgGotoPg         = ""
cImgGotoPgBig      = ""
cImgZoomIn         = ""
cImgZoomInBig      = ""
cImgZoomOut        = ""
cImgZoomOutBig     = ""

- New feature: Mouse Drag and drop in image for nPreviewMode = 2
- New feature: Dbl click switches Between Zoom, FullPage, PageWidth for nPreviewMode = 2

V3.00.23 - 2020-03-22
- New feature: The printer Preferences dialog allows switching report to GrayScale

V3.00.22 - 2020-03-10
- Fix: Added redundant code to make sure that there are no printers installed

V3.00.20 - 2020-03-08
- New property
cTempDestFile - Character, the temporary destination file (image, htm, pdf, etc).
its contents will be wiped after the 1st report run
- Fix: "PR_FXLISTENER was not found"

V3.00.16 - 2019-04-30
- New properties used for debugging purposes, that can be used in your programs to ensure you're running the right Foxy version
? loFP._cSettingsFile
? loFP._cSys16        = The SYS(16) of FoxyPreviewer, allows you to know exactly what file was started

V3.00.15 - 2019-04-28
- Fixed Dynamics issue

V3.00.13 - 2019-03-08
- Fixed SET CLASSLIB in development mode that was bringing issues with some builders

V3.00.12 - 2018-09-07
- Updates in Settings page

V3.00.11 - 2018-05-16
- Several small fixes in ExcelListener (wrong cell backgrounds, PageNumber not being omitted)

V3.00.10 - 2018-04-04
- Fix in <TF>, Internal error that was asking to open a table during execution

V3.00 - 2017-08-07
- Fix in <TF>, now drawing the background colors
- Introduced a new <TAG> in TF, <BACKCOLOR=255,255,255></BACKCOLOR>
- Fix in HEADING clause
- Fix in report saving, allowing pressing the "save" button several times

V3.00 - 2016-05-25
- New Property: nPrinterPropType - numeric, determines the type of Custom Printing Screen
  1 = PRINTER PROMPT Printer dialog     
2 = Current printer properties
3 = New Printer dialog (default)

- New Printer settings screen, that brings several options like the most modern Printing dialogs available in other applications.
This screen is accessed by clicking at the "Printing Preferences", or "Printer Prompt" icon in the Report Preview Toolbar
All functions are self explained
- Pure Excel output much faster, now using FoxyXLS. This way, FoxyPreviewer does not need Excel or OpenOffice to generate the Excel files
- New tag '<DY>' - Dynamic formatting to be used in the "OTHER" - "USER DATA" - "EDIT USER DATA"
Available subtags:
Sample1: <DY><FORECOLOR>ICASE(nAmount<1000, RGB(255,0,0), BETWEEN(nAmount,1000.001,2000), RGB(0,255,0), nAmount>2000, RGB(0,0,255))</FORECOLOR></DY>
Sample2: <DY><BACKCOLOR>ICASE(orders.order_amt<1000,RGB(255,0,0),RGB(0,0,255))</BACKCOLOR><DY>
If the result of the condition is FALSE - .F., then the default behavior will be applied
You can add more than one type of Dynamic style at a time for the same control
Sample3: <DY><BACKCOLOR>ICASE(orders.order_amt<1000,RGB(255,0,0),RGB(0,0,255))<TEXT>IIF(orders.order_amt=0,"ZERO", .F.)</TEXT></BACKCOLOR><DY>
See more usages in the report sample PERCENTDY.FRX 
- Zipping before sending email
- Several small tweaks

v2.99z41 - 2021-02-27
- Property "lRepeatInPage" works When "ListenerType = 0 or in direct printing mode (REPORT FORM ... TO PRINTER)

v2.99z38 - 2021-02-06
- Updated the languages table -
- Fix for merged reports in PDF (OBJ TYPE 10) -

v2.99z37 - 2020-11-27
- Fix for PROPERTY "lExcelRepeatHeaders" that was not working
- Unicodes in PDF will be rendered as image, keeping the visual aspect

v2.99z36 - 2017-03-30
- Fix for "FR_FXListener NOT FOUND" after a CLEAR ALL or "DEBUGGER Cancel / Fix" in Development mode

v2.99z35 - 2016-06-11
- Fix in the Watermarks engine that was failing when the _PAGETOTAL variable was used.

v2.99z32 - 2016-05-30
- Fix in PR_PDFX, allowing to trap more errors due to a typo. Thanks to Oleg Dimuhametov

v2.99z31 - 2016-04-11
- Fix to allow "Tagged Formatting - <TF>" in Private Data Session forms

v2.99z30 - 2013-09-12
- Fix to ignore empty records in "FoxyPreviewer_Settings.dbf" - Thanks to Rahul Moudgill

v2.99z29 - 2013-09-02
- New Property: "lRepeatWhenFree", logical will print a second copy of the report in the 2nd lower part of the same paper sheet. Thanks to Tore Bleken for the suggestion.

v2.99z28 - 2013-09-02
- New tweaks in the property "lRepeatInPage"
IMPORTANT: The page repetition will be applied only if you select a quantity of copies > 1
You can leave the property "lRepeatInPage = .T." all the time on, to make FoxyPreviewer to print your report twice in the same page if the user wants more than one copy and if the report does not occupy more than half the page. This is a cool feature, allowing your users to save paper sheets!
If the report contains more than one page, even if the contents do not use more than half the page, this property will not be considered. If you select "nCopies = 3" and "lRepeatInPage = .T.", having the needed space in the sheet of paper, FoxyPreviewer will print the report twice in the 1st paper, and another single time in the next sheet. This feature works only when you click the "Print" button from the "PrintPreview" toolbar.
- Fix by Hernan Cano:

v2.99z26 - 2013-08-28
New feature: "lRepeatInPage" was enhanced, now it will duplicate the report in the same page only if there is space, otherwise, a copy will be printed in another page
Fix when selecting more than 1 copy in the toolbar spinner, the 2nd page was being reduced
Fix when the printer margin is non zero

v2.99z25 - 2013-08-26
Fix when selecting more than 1 copy in the toolbar spinner, was printing only one page in all times - DataType property for field 'eDevice' is invalid (Error 1544)

v2.99z24 - 2013-08-11
Fix in TO PRINTER mode - Thanks to Vilhelm-Ion Praisach
Tweak in RTF Listener, to allow RTF documents to be opened by LibreOffice and OpenOffice - Thanks to Vilhelm-Ion Praisach

v2.99z23 - 2013-08-01
Fix in HTML DOCTYPE declaration - Thanks to Iuliu Nedelcu
Fix in initial Language settings
Fix in Settings form, was not applying the changes

v2.99z22 - 2013-07-31
Introduced new OBJECTTYPE #20
Renders all FoxyPreviewer available file types in one single ReportListener. Just pass the File name and file extension in the "TO FILE" clause, and FOxyPreviewer will render the output according to the file extension passed. Extensions allowed: PDF, RTF, DOC, XLS, XML, HTM, HTML, MHT, "BMP", "BITMAP", "GIF", "JPG", "JPEG", "TIF", "TIFF", "PNG", "EMF"

Several small fixes in HTML formatting - Thanks to Iuliu Nedelcu
Fix in HTML tag showing just the file name, without the path
Update in HTML rendering, now using UTF-8 encoding

Fix for error of missing table - Special thanks to Bennet Eze
Fix in XPUTFILE() by Oleg Dimuhametov -
Fix in Merged reports in Object Type 10 - ,
Fix - not working in OBJECT TYPE mode -
Fixed Landscape printing when using "Copies > 1" or changing printer in the combobox from the toolbar

v2.99z19 - 2013-04-29
Introduced new OBJECT TYPE 20
Fixed Landscape printing when using "Copies > 1" or changing printer in the combobox from the toolbar

v2.99z9 - 2012-12-12
New property: "nPreviewBackColor" - numeric, RGB value, allows changing the back color of the report preview form
New property: "lDoubleByteLanguage" - logical, allows to manually determine that the system is using a DOubleByte language. This is primarily to make the context menu for the Save button in the report preview toolbar work in these languages.
Updated: Localization table for Polish language

v2.99z8 - 2012-12-02
Fix: Excel values were ignoring the SET POINT if Set("Currency") had "." dots
Fix: Negative values expressed between "()" are now correclty converted in Excel

v2.99z7 - 2012-11-25
Fix: Excel values were ignoring the SET POINT if Set("Point") was equal to SET("Separator")
Fix: ExcelListener was raising the error "Table not found"
Updated: Localization table for Russian language

v2.99z6 - 2012-11-15
Fix: Passwords were not being decrypted when sending emails, if previously FoxyPreviewer worked in complete mode

v2.99z5 - 2012-11-08
Fix: OBJTYPE 15 asking for choosing a table
Fix: OBJTYPE 12 was keeping the Private Report DataSession opened

v2.99z4 - 1012-10-18
Fix: PDFs were ignoring leading spaces in strings - by Tushar
Fix: Dates in Excel were not respecting the original SET DATE settings in OBJTYPE 13 mode -
Fix: Terminal server \\tsclient\c can't be used as ".cOutputPath" - - Special thanks to Marcio Gomes Gonçalves
Fix: Certain CodePages in RTFListener were not working - Thanks to J.F.Sant

v2.99z3 - 2012-10-17
Fix: PDFs were not respecting the CodePage In OBJTYPE mode - by Martin Krivka
Fix: SMTP password was not being sent correctly in simplified mode
Fix: Removed remaining SET STEP command
Fix: PDF different password but still cannot encrypt - by "HermanHo"