If is less than the number of decimal digits required for the decimal portion of the returned string, CA-Clipper rounds the number to the available number of decimal places. If is specified but is omitted (no decimal places), the return value is rounded to an integer.


Step
>it is my understanding that you still have to manually convert any
>TBrowses and a number of other window-types - if that is true, perhaps
>this 'easiest and best' claim needs to be qualified somewhat.
First of, Xbase++ is as close to 100% Clipper 5 compatible as you can get.
I can't think of anything 'easier' than being able to recompile your
existing 16bit Clipper app to transform it into a 32bit Windows app. Sure
it will look the same, but once the app is 32bit you have access to the
full Windows environment. What does this buy you?

1. Mouse support

2. No more limits to string and array size

3. You can call any 32bit DLL

4. You can start to convert bits and pieces of the app to GUI. This is
important, think about it.. you don't have to wait for the entire app to
be converted for it to be usable! In fact, you may not wish to convert
everything to GUI.

Egx 30 engraver. 5. Full SQL support using SQLExpress (you can download SQLExpress from:
ftp://afaonline.com/sqlexpress/ file name SQLXPP02-1.ZIP).

Second point, Xbase++ includes 3 browse classes: TBrowse (100% Clipper
compatible), XbpBrowse (GUI version of TBrowse), and XbpQuickBrowse.
Converting a TBrowse to a full GUI XbpBrowse is (IMHO <g>) trivial since
XbpBrowse has many of the same methods including a :skipBlock. Below is an
example (taken from the online help).

Best regards,
Boris Borzic

-------------------------------------------------------------------------
#include 'Appevent.ch'
#include 'Common.ch'

#pragma Library( 'XppUi2.lib' )

PROCEDURE AppSys
// Desktop remains application window
RETURN

PROCEDURE Main
LOCAL nEvent, mp1, mp2, oXbp, oBrowse, cField, i

USE Customer NEW

// Create a hidden dialog window
oXbp := GuiStdDialog( 'Standard GUI Browser for DBF' )

// Create browser in the window
oBrowse := GuiBrowseDb( oXbp:drawingArea )

// Add columns for all fields of the database
FOR i:=1 TO FCount()
cField := FieldName( i )
oBrowse:addColumn( FieldBlock(cField), , cField )
NEXT

// The browser always fills the entire window after :resize()
oXbp:drawingArea:resize := ;
{ mp1,mp2,obj obj:childList()[1]:setSize(mp2) }

oXbp:show()
oBrowse:show()
SetAppFocus( oBrowse )

DO WHILE nEvent <> xbeP_Close
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN

******************************************************************
* Create a GUI browser with navigation code blocks for a database
******************************************************************
FUNCTION GuiBrowseDB( oParent, aPos, aSize )
LOCAL oBrowse

oBrowse := XbpBrowse():new( oParent, aPos, aSize ):create()

// Navigation code blocks for the browser
oBrowse:skipBlock := { n DbSkipper(n) }
oBrowse:goTopBlock := { DbGoTop() }
oBrowse:goBottomBlock := { DbGoBottom() }
oBrowse:phyPosBlock := { Recno() }

// Navigation code blocks for the vertical scroll bar
oBrowse:posBlock := { OrdKeyNo() }
oBrowse:lastPosBlock := { LastRec() }
oBrowse:firstPosBlock := { 1 }

RETURN oBrowse

******************************************************************
* Create a hidden dialog window
******************************************************************
FUNCTION GuiStdDialog( cTitle )
LOCAL oDlg

DEFAULT cTitle TO 'Standard Dialog Window'

oDlg := XbpDialog():new( ,{10,10}, {600,400}, .F. )
oDlg:icon := 1
oDlg:taskList := .T.
oDlg:title := cTitle
oDlg:create()
oDlg:drawingArea:setFontCompoundName( '8.Helv' )

RETURN oDlg

Hello everyone! Please help, I am going crazy over this!! I am VERY new to Clipper. I do not normally program with this language but was asked to make a change in a very old system. I am using Clipper 5.2. I have outfile letters that are already created and stored in my working directory. When the user selects a specific letter, the letter is created in another directory with all the output information.
Here is the problem....the user would like the letter to print a logo at the top so she does not have to change plain paper with paper that has the logo. How can I do this? I researched and found this Ferns Graphics Library but I cannot get it to work. I found a GBMPLOAD() and GBMPDISP() function but it seems that only works for Clipper 5.3. Is there any other way???
CalculatorThanks in advance!!

Popular Posts