Tools4Progress Logo Viper Logo
Latest Version: 3.2
OS: Win95/98/ME and Windows NT/2000/XP
PROGRESS versions: V8.2 to V10.x
Version History

What's new in Viper 3.2?
Changes from 3.11 to 3.2

  • Updated GNU Ghostscript to version 8.50
  • The printer name for vpr_SelectPrinter isn't case-sensitive anymore.
  • new command vpr_SetCellCodePage allowing to choose the code page Viper uses. Most notably this allows support of UTF8.
  • new commands vpr_GetCellTextHeight and vpr_GetCellTextWidth that calculate the height and width the text of a cell actually needs. (There are also vpr_Fetch... counterparts, as well)
  • new command vpr_SetPageVPos to set the current vertical position on the page (for example this allows to restart on the top of a page and print another column independently of what has already been printed).
  • new command vpr_SetDocAttrib. Currently two attributes exist: "createmode" and "papersize". See its documentation for details.
  • new commands vpr_SetGraphObj and vpr_SetGraphObjAttr allow to add and maintain graphical objects that are connected to groups. You should read the documentation.
  • new command vpr_SetGroupAttrib. Currently one attribute "fixed". Allows to fixate the position of group on the page. Such a group will not be considered when calculating and updating the current vertical position.
  • Viper can work without registering in the registry, if exe and dll reside in the same directory.
  • Fixed blank char width: The blank character has the same width as digits, now. This makes tabulating easier.
  • A PrintToPDF Button has been added to the preview. This should only be available, if GhostScript and a PS-Printer are installed.
  • Some additions to Designer OCX, allowing you to build your own custom Viper Designer.
  • Some documentation for the Designer OCX's API, helping you in building customized versions of the Designer.
  • More robust reading of keyfile: Occasionally problems with reading the Viper.key from a network drive where reported. Viper now tries opening the fail more than once before it fails. This looks like a problem either with SMB-network drives or with MS implementation of the fopen call.
  • Fix some problems with fixed fonts
  • Saving a .vpr (or .pdf) to doesn't change the working directory anymore. This sometimes lead to crashes and was not intended anyway.
  • Don't display the PDF icon when no GhostScript is available (hopefully :)
  • The paper orientation and size should now be set properly after a vpr_ResetDoc.
  • vpr_ResetDoc hides the preview. It's not sensible to preview a *non-existing* document, is it?

What's new in Viper 3.11?
Changes from 3.0 to 3.1.1

  • new command vpr_ShowDoc (persistent preview)
  • new command vpr_ExportDoc(XSL-FO)
  • new command vpr_GetPreviewStatus() (wait for close of preview)
  • new function vpr_ToRTF
  • Viper Designer enhancements
  • BugFix: greyscale JPGs don't crash Viper anymore (instead Viper shows and prints them ;-)
  • BugFix: If the first line centered or right aligned, the cell was not printed correctly.
  • BugFix: Under W2K Viper sometimes crashed if started too often in a short period of time. (very strange problem with a printer handle)

What's new in Viper 3.0?
Changes from 2.44 to 3.0
  • faster processing due to dll only version
  • new Application Programming Interface (API, vpr_XXX)
  • added Functions
  • additional changes in Viper API calls
  • single (configurable) interface procedure (viper.p)
  • new Viper Designer (using special OCX for grahical stuff)
  • Viper Reader included (VprRead.exe)
  • Assistent for deployment included
  • new licence key necessary
  • skipped 16bit support

What's new in Viper 2.4.4?
Changes from 2.43 to 2.4.4
  • New command: SetDocTitle sets the title of the document. This is shown in the windows printer queue.
  • Bugfix: Right aligned text is now printed correctly in standard (non-RTF) cells.
  • Several other small bugfixes. For example a memory leak has been fixed.
  • Decreased the line height for standard cells a little bit, to avoid problems with some reports designed for older Viper versions.
  • Backwards browsing through a document now uses the page properties correctly.
  • There are new examples in the Demo application.
  • There are provided new .bat files for converting any Windows PS-printouts of any application into pdf or jpg (see Demo, context menu of ps-files).

What's new in Viper 2.43?
Changes from 2.4 to 2.43
  • Viper now has got a new more beautiful buttonbar. In the 32 Bit version Viper got flat buttons now.
  • Two new buttons in the preview for saving and loading of reports ( *.vpr Files).
  • In the preview a statusline has been added. It shows the current page number and the number of currently created pages.
  • New command: SetPaperSize (int width, int height) sets the size of the paper used for the document.
  • RTF cells now support changing the font within an document. It must be pointed out that at the moment no font information out of paragraph styles is used. In some RTF documents ( for example from Star Office ) the font settings may not be considered. After our tests, text from WordPad or other editors which use the Windows RTF widget will be utilized correctly. But nevertheless a reasonable default font for the cells should always be set (using SetCellFont). The standard default font for the cells is "Times New Roman" with 12pts height.

    The font parsing can be deactivated in the Viper(32).ini file, which can be found in the Windows directory, by setting the rtf_level key in the [RTF Level] section to 0. A Viper RTF with a preset for the rtf_level will be generated at the first run of the new Viper version.
  • Removed errors in LoadDoc and SaveDoc. Reports now are reloaded correctly. PageProperties are saved and reloaded with the reports. Because of this the usage of a new file format is introduced. Viper continues reading the old format but new generated *.vpr files cannot be read by older Viper versions.
  • Introducing two new PageProperties: Paperheight and Paperwidth.
    How to use:

    /* setting the pageheight to 100 mm */
    RUN SetCurrentPageProperties in h-viper ("Pageheight", "1000").
    /* setting the pagewidth to 100 mm */
    RUN SetCurrentPageProperties in h-viper ("Pagewidth", "1000").


    The width and height must be specified in 1/10 mm and can be set within the limits of the printer-driver. When these limits are exceeded the default-papersize of the printer will be set.
  • Removed error in ResetDoc. New documents are now processed correctly.
  • If available viper.cfg is read at runtime.

What's new in Viper 2.4?
Changes from 2.31 to 2.4
  • New demo application included.
  • Usage of Windows (HTML) Helpsystem.
  • JPEG graphics format support.
  • Viper(32).exe can be used as a viewer for Viper (*.vpr) documents, by running Viper(32).exe with the document as argument or by double-clicking the document in the Windows Explorer (or something similar) (v2.32)
  • Some memory leaks have been fixed(v2.32)
  • Bugfix for LoadDoc: Under Windows NT/2000 BMPs have not been loaded correctly. (v2.321)
  • Fixed bug in ShowPreview: Sometimes the main application window has not been redrawn.(v2.33)
  • Fixed some bugs in documentation: SetPreviewMode, Known Bugs, PrintPDF
  • New command: GetCellWidth
  • Ghostscript is now started from within the DLL because of ressource/environment problems with OS-COMMAND or batch files.
  • PDF conversion now also supports landscape format (as before: A4 papersize only - needs changed gs_statd.ps as supplied by Viper).
  • Fixed bug SetPrinterAttrib, enlarged a buffer
  • Standard cells are now handled in the same way as RTF cells (except for the RTF parsing of course) and can therefore be used with the cell split functionality
  • Fixed some bugs in the rtf handling (esp. TABs should work much better)
  • Fixed bug in the documentation for SetPrinterAttrib. The qualifier "FileTo" should have been "FileName". Now both work, as well as "name".
  • New command: SetCellHeight sets the height of a cell.

What's new in Viper 2.31?
Changes from 2.3 (version on our demo-CD) to 2.31
  • Bug removed: In cell "split" mode the last line was ignored, if it contained only a single word.
  • Allow blnaks in filenames/pathnames for PDF file creation.
  • Fixed two bugs in the docs: Asc2RTF und SetCellSplit
  • The viper.key work again with the 16 bit version.
  • 16 bit version now deletes its temporary directory, too.
  • SelectPrinter should work again in the 16 bit version.

What's new in Viper 2.3?
This section describes the changes in this release in comparison to the previous one. Viper 2.21 to 2.3
  • Bug in SetCurrentPageProperties fixed, that could lead to a GPF in Windows NT.
  • PrintPDF and WebPrintDoc offer you away to save documents in the PDF format and some support for releasing documents in the www (using Webspeed)

What's new in Viper 2.21?
This section describes the changes in this release in comparison to the previous one. Viper 2.2 to 2.21
  • Fixed bug in ResetDoc command
  • Fixed bug in RTF code with umlauts under WinNT (still not perfect, though)

What's new in Viper 2.2?
Changes from 2.1 to 2.2
  • Fixed bug in the RTF parser: The blanks used by RTF as delimiters are not printed anymore.
  • Print to file, without user interaction.
    New attributes for SetPrinterAttrib:
    • ToFile=TRUE/FALSE
    • FileName=filename.xxx
  • Corrected documentation on SetPrinterAttrib.
  • Select papertray on a per page basis. Paper orientation per page selectable.
    New command:
    RUN SetCurrentPageProperties IN h-viper ("Papertray", "No. of bin").
    und
    RUN SetCurrentPageProperties IN h-viper ("PaperOrientation", "portrait/landscape").

    New utility: "TrayList", Lists the paperbins.supported by the printer driver.
    Call: traylist "Printername" "Printerport"
    For network printers the network path has to be given. The program is started in a DOS-box and lists the tray names and numbers. The printer driver may list more trays then the printer actually has installed.
  • Bug in GetGroupHeight fixed, it returns the correct height, now.

What's new in Viper 2.1?
Changes from 2.01 to 2.1
  • Viper now uses a swapping mechanism if more than 200 pages are processed. Thus huge reports can be printed without a ressource shortage. IMPORTANT: You need writing permissions for the temporary directories. (Viper uses the directory given in the environment variables TMP or TEMP or it uses the current working directory.)
  • The documentation for SetCellRTF has been fixed. Oooops. Viper.p has been changed in order to work as good as possible with the wrong syntax, too. (The correct syntax is of course recommended.)
  • Some ressources are freed a bit earlier now, trying to address a problem with Win3.1(1). Umlauts in RTF should now be handled properly (I hope ;-)

New in VIPER Frame Designer
V1.02 - 19 jul 99
  • Removed "New Report Bug": The ugly bug coming up when you choose "new/report" from the menu "No Vreport Record available" is now removed
  • Removed "Font Setup Sensitive Bug": The "report options / font setup" option had been always enabled and gives an error, when no report is opened.
  • Text cells are no longer editable: Removed the ability to change something in the text cells. They are now read only (editors). The reason was the fact that the possebility to edit brings the idea in mind to change the name.
  • Now 16 Font sets per report available: Activated the other 8 font sets in the font dialog
  • Decision made to use V8.2x: Progress changed the default font from V8.1 to 8.2. That was made to make Progress programs look more like W95 programs. When you start a V8.2 program with V8.1 the Windows/Frames/Widgets are much bigger. The only easy way to change that is to change the DefaultFont/DefaultFixedFont-Settings in the "progress.ini". But I think that is not what you want. And V8.2 give also some good stuff like functions. So I decided to not make the Frame Designer V7.x and 8.1x compatible. But the loader will be run under those versions, so you are only bound in development to V8.x or higher.

What's new in Viper 2.01?
Changes from 2.0 (distributed at the Users Conference in Boston) to 2.01
  • Picturesare correctly stretched, if you want the aspect ratio to be retained.
  • SaveDocand OpenDoc work with RTF, too. And they are properly documented now.
  • Bug in SetPreviewMode("PageByPage") fixed. It now works :-)
  • The cell position is now correctly reset after a NewPage, even if it has never been set by SetCellPos (to 0,0,0,0).
  • Occasionaly in wrap mode cells went a little beyond there boundaries. This is fixed.
  • Bug in cellsplit-code removed, that broke the word-wrapping in RTF mode unless you used cellsplit mode.

What's new in Viper 2.0?
This section describes the changes in this release in comparison to the previous one.
  • Print to File in the Printerdialog now works
  • If the printerdriver supports it multiple copies of a document can now beprinted using the printer dialog or a new command:

    RUN SetPrinterAttrib in h-viper ("copies=xxx,from=xxx,to=xxx").
  • SetCellAttrib now works if blanks are in the attribs
  • A bug SetGroupVPos that was "introduced" in version 1.5b is removed. (Sometimes cells were positioned in the wrong place after a NewPage)
  • GetGroupVPos now gives a meaningful value even before the first FlushGroup.
  • Save and load of Viper reports using
    RUN SaveDoc in h-viper ("FileName")
    and
    RUN OpenDoc in h-viper("FileName").
    NOTE: Only reports without embedded format can be printed
  • Bug under NT removed: linewidth and -style now works.
  • New function to query the papersize:
    RUN GetPrinterAttrib in h-viper ("Paperwidth, OUTPUT value).
    and
    RUN GetPrinterAttrib in h-viper ("Paperheight", OUTPUT value).
    return the corresponding values in value
  • You can switch off the printing-status window, in order to print withoutany user interaction:
    RUN PrintOptions in h-viper("SHOWPRINTSTATUS","Off/On/NoCancel","","","").
    with
    On : status window active.
    Off: status window inactive.
    NoCancel: status windw without cancel button
  • The preview window comes to the foreground any time ShowWindow is called(problem under NT)
  • Cells only containig blanks now print blank lines in RTF mode, too.
  • Cells using enbedded formats now use RTF. Supported format attributes:blod, underline, strike, and italic. TABs are supported, too. Tabwidth is 1,5 cm.
  • Two new command for working with screen copys:
    SaveWindowToFile (Input HWND, Input AreaType, Input FileIn, OutputFileOut)- saves the given window as DIB
    - HWND: Windowhandle of the window that should be saved.
    - AreaType: Save all of HWND or only clientarea? values: "ALL" or"WINDOW": save whole window (including menu, etc);"CLIENT": Save only the client area
    - FileIn: Filename to save the data to. if no FileIn is given (i.e. an emptystring) a temporary file with a unique filename is chosen.
    - FileOut: returns the filename. empty if the procedure fails.

    SaveClipboardToFile(Input Type, Input FileIn, OUTPUT FileOut)- saves theclipboard contents
    - Type: defines the datatype to be saved. so far only bitmap ("BMP")and Device Independent Bitmap ("DIB") is supported
    - FileIn: Filename to save the data to. if no FileIn is given (i.e. an emptystring) a temporary file with a unique filename is chosen.
    - FileOut: returns the filename. empty if the procedure fails.
  • It is now possible to change the way the cells are positioned on aFlushGroup. The default sets all cells to one horizontal line (the new positionof the group). The other positioning style retains the relative position of thecells in the group
    command:
    RUN SetGroupCellPositioning IN h-viper ("Groupname", 0) sets the default mode
    RUN SetGroupCellPositioning IN h-viper ("Groupname", 1)enables retaining of relative group positions
  • SetCellSplit: You can "tell" RTF mode cells to keep thepart of the text that does not fit in the cells rectangle and print it with thenext FlushGroup. The command GetCellLineCount can query theremaining lines in the cell.
  • ShowDLLVersion: Shows a window telling you the compilation date of the DLL.(Helpful if you seem to have a version conflict)
  • SetCellBuffer, AddToCellBuffer, DeleteCellBuffer, andSubmitCellBuffer: A additional and independend (text-)buffer has been addedto the cells. This buffer is not changed by any FlushGroup or NewPagecommands and you can append text to it. This enables you to use texts evenlonger than Progress internal buffer size (default 32k AFAIK) by appendingtexts in chunks not bigger than the Progress buffer.
  • setWindowPos: sets the position of the preview window.
  • Viper now waits for the end of a printing process if you do a APPLY CLOSETO HANDLE h-viper.
  • The internal size of the buffer used for printer names is enlarged andshould be big enough for even *a lot* of printers (well, dynamic allocationwould still be nicer, ok)
  • A bug in SetGroupVPos that occured if it was called several times,should be removed.



Tools4Progress Home Page
Latest news
PCase
Viper
- What
- Prices
- Documentation
- Download
- Webspeed demo
Skin-Client
Order
Partner
Contact
IAP Homepage
 © 1996 - 2008 IAP GmbH · Mörkenstraße 9 · 22767 Hamburg · Germany