Help  |   Contact Us  |   About Us  |   News and Events
Books, conferences, and other information about... Moving to Linux Switching to OOo Building Linux Apps Using Visual FoxPro
Buy      Download      Your Account      Catalog      Support      Conferences      Resources      Fun

Making Sense of Sedna and SP2
Table of Contents


Chapter 1 Installing VFP 9 Service Pack 2 and Sedna 1

Chapter 2 Reporting 7

Chapter 3 Reporting with FFC Classes 21

Chapter 4 Advanced Reporting 55

Chapter 5 VFP 9 and Windows Vista 111

Chapter 6 Data Explorer Changes 125

Chapter 7 The My Namespace 147

Chapter 8 SQL Server Upsizing Wizard 157

Chapter 9 Working with .NET 179

Chapter 10 Introduction to the DBI Controls in VFP 9.0 SP2 201

Appendix A What's in Service Pack 2? 233


Acknowledgments XIII

Author Profiles XV

How to download the fles XVIII

Introduction XIX

What's in Sedna? XX
Vista Dialogs for COM XX
The Data Explorer XX
My for VFP XX
The Upsizing Wizard XX
NET4COM XXI
DDEX Provider XXI
What's in Service Pack 2? XXI
What else is covered in this book? XXI
What's next for Visual FoxPro? XXII


Chapter 1 Installing VFP 9 Service Pack 2 and Sedna 1

The problem 1
The solution 3
Running SP1 and SP2 in parallel 4
Preserve VFP 9 SP1 4
Install VFP 9 SP2 4
Copy the SP2 runtime fles and merge modules 4
Set up start-up programs to keep things separate 5
Installing Sedna 6
Summary 6

Chapter 2 Reporting 7

The Visual FoxPro 9.0 reporting puzzle 7
The report pieces 8
The Report Builder 8
The Report Engine 8
The Report Listener object 8
The Preview Container object 9
The Extension Handler object 9
The Report Output application 9
The FFC classes 11
Backwards compatibility 11
Report-related commands 11
Base ReportListener class 11
AdjustObjectSize and EvaluateContents 12
AdjustObjectSize 12
CallAdjustObjectSize and CallEvaluateContents properties 12
CommandClauses object 13
PrintCachedPages method 13
Dynamics tab 14
Field objects 16
Rectangle and Image objects 17
Running reports with dynamics 18
Summary 19

Chapter 3 Reporting with FFC Classes 21

MemberData 22
The .h fles 22
The _FRXCursor class library 23
The FRXCursor class 23
Modifed properties 23
Modifed methods (datasessions) 23
Modifed methods 24
New methods 24
The _ReportListener class library (existing classes) 25
The _ReportListener class 25
Modifed properties 25
Modifed methods 26
New properties 26
New methods 27
The UpdateListener class 28
New property 28
The UtilityReportListener class 28
Removed properties & methods 29
Modifed methods 29
New properties 30
New methods 30
The DebugListener class 31
Modifed methods 31
The XMLListener class 31
Modifed methods 31
New properties 33
New methods 34
The XMLDisplayListener class 35
Removed property 35
Modifed methods 35
New properties 35
The HTMLListener class 36
Modifed properties 36
Modifed methods 36
New properties 37
New methods 37
The _ReportListener class library (new classes) 38
The fxListener class 39
Setting the stage 40
FXs and GFXs properties 40
Init 40
CreateHelperObjects 40
EnsureCollection 41
LoadReport 41
CheckCollectionMembers 41
GetFeedbackFXObject 41
GetMemberDataScriptFXObject 42
GetNoRenderGFXObject 42
GetRotateGFXObject 42
BeforeReport 42
CreateMemberDataCursor 43
Creating the FXs and GFXs collections 43
AddCollectionMember 43
CheckCollectionForSpecifedMember 44
GetObjectInstance 44
GetPathForExternals 44
Processing the FXs and GFXs collections 44
SendFX 44
NeedGFXs 45
UpperMethodName 45
Cleaning up 45
UnloadReport 45
RemoveCollectionMember 46
Future thinking 46
EvaluateUserExpression 46
GetFRXRecNo 46
The fxAbstract class 46
ApplyFX 46
The fxMemberDataScript class 46
ApplyFX called by BeforeReport 47
GatherScripts 47
FindParametersStatement 47
AdjustDynamicCalls 47
UseMemberData 48
ApplyFX called by AdjustObjectSize or EvaluateContents 48
ProcessDynamicMethodScript 48
ApplyFX called by all methods 48
ProcessMemberDataScript 48
The gfxNoRender class 49
ApplyFX called by LoadReport 49
ApplyFX called by BeforeReport 50
ApplyFX called by Render 50
ApplyFX called by UnloadReport 50
The gfxRotate class 50
ApplyFX called by Render 50
The fxResetPageTotal class 51
ApplyFX called by BeforeReport 51
DoBeforeReport 51
ApplyFX called by BeforeBand 51
DoBeforeBand 51
Using the fxResetPageTotal class 51
The gfxExample class 52
ApplyFX called from BeforeReport 52
ApplyFX called from BeforeBand 53
ApplyFX called from AfterReport 53
The fxTherm class 53
The gfxOutputClip class 53
ApplyFX called from BeforeReport 54
Setup 54
OutputPageClip 54
ApplyFX called from Render 54
SetupImageClip 54
GetImageExt 54
ApplyFX called from AfterReport 54
ListenerSupportsSaveClip
SaveImageClips
Cleanup
Outside of ApplyFX
GetCurrentClipFileName
Summary

Chapter 4 Advanced Reporting 55

Advanced attribute properties 55
Rendering-related attribute properties 57
Rotation attribute property 59
HTML-related attribute properties 60
Document attribute properties (in the report’s Doc. Prop. tab) 60
Object attribute properties (in an object’s Advanced tab) 60
Using the HTML-related attribute properties 61
Link, Anchor, Alt-Title and PrintablePageLink example 61
HTML.CSSFile, HTML.CSSClass.OverrideFRX, and
HTML.CSSClass.ExtendFRX attribute properties 63
HTML.Metatag.HTTP-EQUIV attribute property 66
HTML.TextAreasOff attribute property 66
Document-related attribute properties 66
Implementing individual attribute properties 68
Add the attribute property 69
Create the fxHighlightEmpty class 69
Run the report 72
The Report Builder’s confguration table 72
Implementing global attribute properties 77
Setting the stage 77
Subclassing fxAbstract 77
Data-driving the special effect features 81
Subclassing fxListener 81
Adding attribute properties 83
Implementing the Reduce Font feature via global attribute properties 84
Customizing the Report Builder 87
Creating the page 87
Implementing the Reduce Font feature via a new page 93
Implementing a Watermark feature 95
Using text as a watermark 95
Create the user interface for Text Watermarks 96
Create the special effect class for Text Watermarks 98
Using a graphic fle as a watermark 103
Create the user interface for Graphic Watermarks 104
Create the special effect class for Graphic Watermarks 107
Summary 110

Chapter 5 VFP 9 and Windows Vista 111

Vista visual issues 111
Sedna and Vista dialogs 115
Vista Resources 122
Summary 124

Chapter 6 Data Explorer Changes 125

Implementation details 125
Where should DataExplorer.APP go? 125
Updating to the new features 129
Options dialog 130
Data Explorer main form 132
Shortcut menu 133
Database Documenter 134
Customizing the Database Documenter’s output 137
Upsizing Wizard 138
Run GenDBC 139
SQL showplan 140
Run Query dialog 141
Browse dialog 144
Extensibility dialogs 144
Bug fxes 145
Wrap up 146

Chapter 7 The My Namespace 147

Using My 148
Examples 149
Extending My 151
Generalizing My 156
Summary 156

Chapter 8 SQL Server Upsizing Wizard 157

Where is the Upsizing Wizard installed? 158
Running the Upsizing Wizard 158
Upsizing Wizard user interface 160
Select local (VFP) database 160
Select destination 161
Target database 163
Choosing tables and mapping feld data types 163
Upsizing options 165
Finish 166
General improvements 168
General issues 169
Upsizing engine 170
Wrap up 177

Chapter 9 Working with .NET 179

The VFP DDEX Provider 179
Installation issues 182
NET4COM 183
Audio 184
Clipboard 185
Compression 186
Crypto 187
EventLog 188
FileSystem 189
Mouse 191
Network 191
PowerStatus 193
Printer 194
Process 194
RegEx 194
Registry 196
SpecialDirectories 197
WindowsServices 198
Summary 199

Chapter 10 Introduction to the DBI Controls in VFP 9.0 SP2 201

Installation and Setup 202
Playing Nice with Other Controls 202
DBI Control Basics 203
Controlling the Controls 204
Fonts 205
Images 207
Digging in… Using the DBI Controls 208
Using ctTray 208
Using ctDropMenu 210
A Good Combination, ctTray and ctDropMenu 212
Using ctDEdit 214
Using ctListBar 216
Using ctContact 220
Using ctDays 222
Control Setup 222
Loading Data 224
Working with Data 226
Reporting 226
Using ctToolbar 227
Using ctFrame 230
Modernize your Visual FoxPro Application 231

Appendix A What's in Service Pack 2? 233

What’s fxed? 233
Fixes available for Service Pack 2 234
What’s broken? 235
The Help File 235
Reporting problems 236
Group header wrong record 236
Toolbar in Report Preview not working correctly 237
Changes in the FFC\_ReportListener class library can break existing reports 237
Print When logic is evaluated at the wrong time in VFP Reports 238
IDE issue 240
Grid issues 240
Web service registration 241
SELECT from Table Buffered data 241
Should you use Service Pack 2? 241
What’s next? 242