2015-08-17

TOC May 2014 - Number 38

Deep Dive: Unit Testing Visual FoxPro Applications, Part 3

Doug Hennig

In the previous two articles in this series, I discussed what unit testing is and why its important. I created some simple unit tests to show how they work and then introduced the Fox Unit unit testing framework and discussed how it makes creating and running unit tests a lot easier. In this, the last article in this series, well look at how to simplify unit testing using mock objects and wind up with some final thoughts on unit testing.

VFPX: ExcelXML

Rick Schummer

In the last issue of Fox RockX we discussed how Microsoft Excel is the centerpiece of Microsoft Office with respect to analyzing data in the corporate world, large and small businesses alike and how Foxy XLS is a terrific way to create Excel files without having Excel installed. ExcelXML is another such tool from VFPX to help Visual FoxPro developers create Excel files, but takes a different approach using the XML format Excel can open as a spreadsheet. ExcelXML also creates the output to mimic the look and feel of your Visual FoxPro grid found on a
form in your application.

Know How: Getting the Top N for each Group

Tamar E. Granor, Ph.D.

In my previous articles in this series, Ive explored several features in SQL Server that dont have analogues in VFP. These features make it much ­easier to solve certain problems. This article introduces another such feature that simplifies another common problem.

Future: Integrating Visual FoxPro and MailChimp

Whil Hentzen

We've all written our own email applications. I finally decided to use an outside service to handle my emailing needs. Here's how I used VFP to integrate with the mailing service.

TOC March 2014 - Number 37

Deep Dive: Unit Testing Visual FoxPro Applications, Part 2

Doug Hennig

In the previous issue, I discussed what unit testing is and why its important, and created some simple unit tests to show how they work. In this article, Ill introduce the Fox Unit unit testing framework and discuss how it makes creating and running unit tests a lot easier.

VFPX: Foxy XLS

Rick Schummer

Microsoft Excel is the centerpiece of Microsoft Office with respect to analyzing data in the corporate world, large and small businesses alike. So naturally applications written for these organizations are going to export data to Excel files so users can graph and analyze the data to their needs. There are many ways Visual FoxPro applications can work with Excel including exporting to XLS files directly or through automation code. But there are situations where the customer does not want to ­license Excel for the application use or more likely, Microsoft might not allow licensing of Excel in certain situations. Foxy XLS is one project from VFPX to help Visual FoxPro developers with the creation of Excel files.

Know How: Handling hierarchical data

Tamar E. Granor, Ph.D.

In my last article, I showed how SQL Server makes combining data into a single field much easier than in VFP. This time, Ill show how handling hierarchical data that doesnt fit the standard parent-child-grandchild model is easier in SQL Server.

Future: Data Munging with Python, Part 2/2

Whil Hentzen

Last issue, I introduced Python and showed you how to create and run the traditional Hello World script in several environments. This month, we're going to start building scripts that handle files.

Future: Data Munging with Python, Part 3

Whil Hentzen

Last issue, I showed you how to build scripts that handled text files in a variety of ways. Being able to manipulate them is in and of itself not very useful unless you're doing basic statistical gathering. This time around, we're going to write the results of our manipulations back to disk, creating both text files as well as .DBFs.

TOC January 2014 - Number 36

Deep Dive: Unit Testing Visual FoxPro Applications, Part 1

Doug Hennig

Unit testing is a very important part of application development and yet it seems that few VFP developers use this important technique. Unit testing allows you to confirm that code has the functionality expected of it, and is especially important when refactoring or making other changes to your code. This three-part series introduces you to unit testing and the VFX Fox Unit project so you can be confident in your applications success before you deploy it.

VFPX: Thors Finder

Rick Schummer

Finding files is something developers find themselves doing from time-to-time. You can search using Windows Explorer and hope the Windows file index locates for the elusive source code file name. What happens when you find the file in Windows Explorer and double-click it? It opens the file in a new instance of Visual FoxPro, not the current one you are using with the project open. Wouldnt it be nice if the file opened in the editor in the same instance? What happens when you are looking for a class name inside a VCX-based class library? This month Rick explains how Thors new Finder tool from Jim Nelson helps you, and has developed into a potential replacement for the Visual FoxPro Project Manager.

Know How: Consolidate data from a field into a list

Tamar E. Granor, Ph.D.

Some SQL commands were added to FoxPro 2.0 and I fell in love with them as soon as I started playing around. Over the years, Visual FoxPros SQL subset has grown, but there are still some tasks that are hard or impossible to do in VFP, but a lot easier in other SQL dialects. In this series of articles, Ill take a look at some of these tasks, showing you how VFP requires a blend of SQL and Xbase code, but SQL Server allows them to be done with SQL code only.

Future: Data Munging with Python, Part 2/1

Whil Hentzen

Last issue, I introduced Python and showed you how to create and run the traditional Hello World script in several environments. This month, we're going to start building scripts that handle files.

TOC November 2013 - Number 35

Deep Dive: Introduction to C# for VFP Developers, Part 5

Doug Hennig

This article is the last in a five-part series on the C# language.

VFP: Ideal for Tools, Part 3

Tamar E. Granor, Ph.D.

The first two parts of this series looked at Visual FoxPro language elements for exploring data, and for working with classes and forms. This article looks at parts of VFP that let you work with programs and projects.

Basics: A Bevy of Timers

Whil Hentzen

In this article, I'll explore several ways to have VFP time out an application as well as to time out a single form.

Future: Data Munging with Python, Part 1

Whil Hentzen

In a previous article, I discussed the situation where an incoming data file exceeded VFP's 2 GB/.DBF ­capacity. We used SQLite to import a multi-gigabyte table. In this article, I'll introduce another tool that should be in your toolkit, and in subsequent articles, show you how to attack this type of problem.

TOC September 2013 - Number 34

Deep Dive: Introduction to C# for VFP Developers, Part 4

Doug Hennig

This article is the fourth in a five-part series on the C# language.

VFP: Ideal for Tools, Part 2

Tamar E. Granor, Ph.D.

In my last article, I wrote about VFP language elements related to data that are useful for building developer tools. This time, Ill focus on language related to classes and forms.

VFPX: FoxyPreviewer

Rick Schummer

The VFP 9 Report Writer preview screen was vastly improved in VFP 9, yet today there is an open source project called the FoxyPreviewer that ­improves upon it in many ways. In this article Rick addresses the advantages of the open source replacement and the functionality included that you do not get with the core VFP technology when previewing reports on the screen.

TOC July 2013 - Number 33

Deep Dive: Introduction to C# for VFP Developers, Part 3

Doug Hennig

This article is the third in a five-part series on the C# language.

Case Study: Using SQLite to break the 2GB Barrier

Whil Hentzen

In previous articles, I've helped you dip your toe into the SQLite pool, in preparation for using it as an application backend. In this article, I'm going to take a different direction and show you how I used SQLite to help a customer deal with an external data source that, in its latest release, had become too big to import into a VFP table.

VFP: Ideal for Tools, Part 1

Tamar E. Granor, Ph.D.

In my last few articles, I focused on Thor, a VFPX tool for managing developer tools. Thor and VFPX generally are part of a long history of developer tools for FoxPro written in FoxPro. In this series of articles, Ill look at the language elements that enable writing developer tools.

VFP: Application Updater

Rick Schummer

Most modern applications come with a way to check if there is a newer version available and for it to optionally download and install the update. Writing code to do this is not all that complex, but if you are looking for something that is both powerful and flexible, and already written and tested, you can check out Craig Boyds App Updater tool. This month Rick explains how this tool works and what it takes to incorporate it into your application and the users environment so you look like a hero.

TOC May 2013 - Number 32

Deep Dive: Introduction to C# for VFP Developers, Part 2

Doug Hennig

This article is the second in a five-part series on the C# language.

Know How: Give Thor Tools Options

Tamar E. Granor, Ph.D.

In my last article, I showed how to add your own tools to Thor. This time, I look at how you can provide options for Thor Tools, so that users can customize them.

VFPX: Dynamic Forms

Rick Schummer

How many times in your career have you created a form as a one-time display of some details, collect some criteria, or message your users? How many times have you cheated and used the INPUTBOX() function to prompt the user to enter in some information to conditionally control the remaining code in the program because a full-fledged form seemed like overkill? This is a perfect situation for the new Dynamic Forms project available on VFPX.

Basics: Setting up VFP 9

Whil Hentzen

Inertia is a powerful thing. I regularly hear from ­developers who haven't gotten around to upgrading to VFP 9, or haven't kept their VFP 9 installation up to date. Given that all the activity from Microsoft in the last 5 ot 6 years has come in the form streamed updates, it can be time-consuming as well as confusing to figure out how to get VFP 9 set up in tip-top shape. This article will provide a quick cookbook to get your copy of VFP up to date.

TOC March 2013 - Number 31

Deep Dive: Introduction to C# for VFP Developers, Part 1

Doug Hennig

Even if you're planning to continue development in VFP, learning another language like C# can be very useful. There are some things that are a lot easier and faster to do in .Net than in VFP (the reverse is also true). This article, the first in a five-part series, introduces the C# language, comparing it to constructs and syntax in VFP to shorten the learning curve.

Know How: Make Thor Your Own

Tamar E. Granor, Ph.D.

In my last two articles, I wrote about some of the tools that come with the VFPX project, Thor. This month, I show you how to add existing tools to Thor, and how to take advantage of the code thats included with Thor.

Future: The Business Case for Moving *Some* Applications to VFP in 2013, Part 2

Whil Hentzen

In the fall of 2012, I wrote a 4 page article outlining the business case for VFP in 2013, dispelling a few myths that are commonly trotted out when VFP is brought up, and reinforcing several benefits that we take for granted, but that others aren't aware of, have forgotten, or dismiss until they're explained. The response to that article was overwhelmingly good, and I've received many requests for more details. Since then, I've fleshed the business case to a in-depth 20 page discussion of the pros and cons of using Visual FoxPro in 2013 and beyond.

VFPX: FoxBarcodeQR

Rick Schummer

In the May 2012 issue of Fox RockX, Ricks VFPX column focused on the Fox Barcode project. This month he expands it to a next dimension with coverage of the FoxBarCodeQR project. QR barcodes are two-dimensional, and just like barcode creation with Fox Barcode, very easy to use.

TOC January 2013 - Number 30

Deep Dive: Call .NET Code from VFP the Easy Way

Doug Hennig

Calling .NET components from VFP applications can be tricky or even impossible. A new open source project from Rick Strahl named wwDotNetBridge makes this easy.

Know How: Try Thors Terrific Tools, Part 2

Tamar E. Granor, Ph.D.

In my last article, I showed a few of the tools that are included with Thor. This time, Ill look at some more of them, including a number that simplify refactoring.

Deep Dive: Another Boring Article About Regular Expressions

Whil Hentzen

Regular expressions might be that tool that will allow you to fit 36 hours of work into a 24 hour day some time. So bear with me; in this article, I'll explain why you MIGHT want to have the ability to use regular expressions in your toolkit, and how to get started.

Future: The Business Case for Moving *Some* Applications to VFP in 2013, Part 1

Whil Hentzen

In the fall of 2012, I wrote a 4 page article outlining the business case for VFP in 2013, dispelling a few myths that are commonly trotted out when VFP is brought up, and reinforcing several benefits that we take for granted, but that others aren't aware of, have forgotten, or dismiss until they're explained. The response to that article was overwhelmingly good, and I've received many requests for more details. Since then, I've fleshed the business case to a in-depth 20 page discussion of the pros and cons of using Visual FoxPro in 2013 and beyond.

TOC November 2012 - Number 29

Know How: Try Thors Terrific Tools, Part 1

Tamar E. Granor, Ph.D.

Thor provides dozens of great tools to make developing in VFP easier. In this series, Tamar takes a look at her favorites.

Deep Dive: Creating ActiveX Controls for VFP using .Net, Part 4

Doug Hennig

Doug concludes his series on creating ActiveX controls using .Net by looking at another way to create ActiveX controls and how to deploy them to your users system.

VFPX: Intellisense X

Rick Schummer

IntelliSense was introduced in Visual FoxPro 7. Many developers have extended it by creating scripts that are stored in the FoxCode.DBF table. Christof Wollenhaupt (with the help of many others) created a tool named ISX to extend IntelliSense without modification to the FoxCode table. Jim Nelson extends this excellent public domain utility, makes some of his own enhancements, and integrates it into Thor on VFPX.

SQLite: Vive La Difference How SQLite varies from VFP SQL

Whil Hentzen

In this article, I'll alert you to some of the differences between SQLite and VFP's SQL implementation.

TOC September 2012 - Number 28

Editorial: The Business Case for Upgrading Apps to Visual FoxPro in 2013

Whil Hentzen

So 2013 is getting ready to stare us in the face, and it seems every week we're getting calls from customers who have FoxPro 1.x, 2.x or Visual FoxPro applications in production, wondering what to do with them. These customers have thousands, perhaps tens of thousands of hours invested in their applications, systems that in some cases run their entire company, but they're looking at potential problems as Windows goes through its 5th or 6th new release since their application was initially written.

Know How: Using Assign methods

Tamar E. Granor, Ph.D.

In my last article, I introduced Access and Assign methods and showed some examples of Access methods. This time, Ill explore Assign methods, which fire when the corresponding property changes, essentially giving you a "property changed" event.

Deep Dive: Creating ActiveX Controls for VFP using .Net, Part 3

Doug Hennig

Doug continues his series on creating ActiveX controls using .Net by adding additional classes to the library of controls hes been building.

VFPX: Data Explorer 3

Rick Schummer

The release of Visual FoxPro 9 introduced a new Xbase tool called the Data Explorer. Microsoft released a new version in the Sedna release to correct the known bugs and introduce a handful of new features. This article explores some of the newest features added to the Data Explorer past the Sedna release and released on VFPX in a project known as Data Explorer 3.

New Ways: OS Based Invisible Data Compression in VFP

Pradip Acharya

Data compression with external zipping utilities in VFP applications has been featured in more than one article in this forum over the past quarter century. XP onward, Windows has offered OS managed, behind the scene compression of data in folders and files via a single FILE_ATTRIBUTE control bit.

TOC July 2012 - Number 27

Editorial: Learn, Network, Be inspired

Rick Schummer

This editorial is for those who have not attended a conference, and for the leadership who consider sending people to conferences. My hope is that by the end of this article, you will commit to register yourself and/or the people who work for you for a conference each year.

Know How: Put Access methods to work

Tamar E. Granor, Ph.D.

In my last two articles, I demonstrated BINDEVENT(), the VFP function that lets you set up a method to respond when an event fires. In this article and the next, I'll take a look at Access and Assign methods, another VFP approach to provide automatic behavior.

Deep Dive: Creating ActiveX Controls for VFP using .Net, Part 2

Doug Hennig

Last issue, Doug showed how to create ActiveX controls from .Net components so we can take advantage of these controls without having to convert our applications to .Net. This month, he continues the discussion to show how to handle events.

SQLite: Inserting Large Amounts of Data into SQLite

Whil Hentzen

In this article, I'll show you how to work with SQLite directly in order to quickly insert large amounts of data into a SQLite database, and then how to export data from SQLite into other data file formats.

VFPX: VFP 9 SP2 Help File

Rick Schummer

Microsoft released two different Help files for VFP 9 Service Pack 2 (SP2) and both were flawed and considered unusable. I am not sure exactly what happened or how it transpired, but the cold hard fact is no one checked the final Help file Microsoft released during an update of VFP 9 SP2. Fortunately several people in the Fox Community took it upon themselves to attempt to fix it, but only Francis Faure was able to reassemble all the missing pieces and put it all together again. Microsoft Legal gave the final blessing and released it to the Fox Community on VFPX using a Creative Commons license.

Silverlight: Creating Dependency Properties and Understanding DP-concepts

Patrick Schä²¥r

Anyone who has done some Silverlight or WPF has stumbled over the term Dependency Property and if he has done some research on it, he has probably found out that nearly all properties of visual ­objects shaped through XAML code are Dependency Properties, and that for them to work the containing object (such as UserControl or Window) must inherit from DependencyObject. He also might have discovered that this is the mechanism used to allow properties to depend on (or be determined by) the typical XAML-like mechanisms like styles, animations and Xaml-Bindings.

Tips & Tricks: Cool tool for reporting problems

Tamar E. Granor, Ph.D.

Windows 7 introduced a cool tool that can help you understand your customers bug reports.

TOC May 2012 - Number 26

Know How: Put Event Binding to Work, Part 2

Tamar E. Granor, Ph.D.

In my last article, I gave an overview of the BINDEVENT() function and showed some of the ways I use it to improve my applications. In this article, we'll see some additional examples, including one that binds to a Windows event.

Deep Dive: Creating ActiveX Controls for VFP using .Net, Part 1

Doug Hennig

ActiveX controls provide a way to add both functionality and a modern appearance to your VFP applications. Unfortunately, there are few new ActiveX controls these days. On the other hand, the .Net framework comes with many attractive looking controls, and theres an entire industry devoted to providing even more. This is the first in a series of articles discussing techniques for creating ActiveX controls from .Net components so we can take advantage of these controls without having to convert our applications to .Net.

SQLite: SQLite Connection: Error Handling and Verification

Whil Hentzen

We need to get away from DBFs is a refrain I hear regularly from fellow developers. Be it due to perceived instability of the file format, the need for tables larger than 2 GB, or the result of political machinations, the result is the same a desire to move to a SQL database back-end. SQLite can be an excellent intermediate step and possibly the final word - in the process of restructuring your application to talk to a SQL back-end. In this article, I discuss how to deal with the usual spate of errors that can occur when connecting to SQLite from VFP, and then how to verify that the connection actually is working.

VFPX: Fox Barcode

Rick Schummer

Barcoding data has been around for decades, and has become simpler over time. Yet developers struggle when they are first approached to include barcodes in their applications. The challenges include finding the appropriate barcode fonts, finding compatible ActiveX controls, and getting barcode readers to read the generated barcodes. This month, in our ongoing series on VFPX, Rick covers how barcoding is simplified for Visual FoxPro developers using Fox Barcode.

TOC March 2012 - Number 25

Know How: Put Event Binding to Work, Part 1

Tamar E. Granor, Ph.D.

At fi rst glance, the BINDEVENT() function may seem unnecessary. After all, why bind to an event when you can just write code in the event's method?

Deep Dive: Make Your Menus Pop

Doug Hennig

Last issue, Doug discussed ctl32_ContextMenu, an object-oriented menu class thats part of the ctl32 library. This month, he looks at another OOP menu class, this time the VFPX PopMenu project.

VFPX: Go Fish 4

Rick Schummer

Go Fish is a tool originally released in March 2001 by Peter Diotte and resurrected by Matt Slay in 2010. Go Fish revolutionizes search performance and gives Visual FoxPro developers a solid source code search and replace process. If you are a fan of Microsofts Code References tool or the enhanced VFPX version you certainly should take a look at the new and improved Go Fish. This month Rick shows you how this tool surpasses Code References in so many ways and points out a couple of the features where it is still a step behind.

SQLite: Getting started with Client - Server with SQLite

Whil Hentzen

We need to get away from DBFs is a refrain I hear regularly from fellow developers. Be it due to perceived instability of the file format, the need for tables larger than 2 GB, or the result of political machinations, the result is the same a desire to move to a SQL database back-end. SQLite can be an excellent intermediate step and possibly the final word - in the process of restructuring your application to talk to a SQL back-end.

TOC January 2012 - Number 24

New Ways: Managing Properties as Virtual Table Fields

Pradip Acharya

In a distributed multi user application with a central shared database, its not easy to add new fields to a table or modify table structures at will. This may not even be practical. For example, when the Product table must support inventory for a several Business Models, there may be thousands of individual Product properties.

Deep Dive: The ctl32 Library, Part 3

Doug Hennig

Carlos Alloatti has created an incredible library of controls you can use to give your applications a more modern interface. Doug finishes his look at the library with the last set of controls.

Know How: Speed Up Your SQL Code

Tamar E. Granor, Ph.D.

In my last article, I talked about the two functionsin VFP that allow you to measure the optimization of SQL commands. This month, Ill look at what you can do to improve performance once you know that a query is sub-optimal.

VFPX: Parallel Fox

Rick Schummer

Parallel processing is defined as the performance by a computer of two or more simultaneous operations divided among multiple processors. Parallel programming is spawning processes on two separate processors either on different computers or the same computer. This is becoming more and more important based on the engineering fact it is getting harder to get silicone-based processors to run faster with the reliability and stability we expect and require. So how do Visual FoxPro developers take advantage of this approach? Well thanks to Joel Leach and the Parallel Fox project on VFPX, it actually is quite straightforward.

TOC November 2011 - Number 23

New Ways: Foxparse C Library for Handling Strings, Properties and Windows

Pradip Acharya

A limited version of the Foxparse.fll C library was introduced in an earlier recent issue. This issue covers the full version featuring the complete set of advanced functions. The C API was created to expand the limited choices for string handling, formatting and parsing offered by VFP9.

TOC September 2011 - Number 22

Editorial: Totally Marshmallowed? Join us at SWFox DevCon for a refresher!

Rainer Becker

You should not miss the SWFox DevCon. It covers a lot of great topics, treated by great speakers! But maybe economics are harsh again in your region and maybe there is a problem with the funding concerning not only the money to spend, but also the time? Time of not being available at your desk for the perennially urgent development work, support and maintenance tasks?. Here come a few more reasons why you should circumnavigate all these obstacles somehow or why your boss should be won over, too.

Deep Dive: The ctl32 Library, Part 2

Doug Hennig

Carlos Alloatti has created an incredible library of controls you can use to give your applications amore modern interface. Doug continues his look at the library withthe next set of controls.

Know How: Make Your Queries Fly

Tamar E. Granor, Ph.D.

In the January, 2010 issue, I wrote about changes in VFP's SQL commands in VFP 8 and 9. But one of the key elements in using SQL commands is that they can be very fast. When they're not, you need to figure out why. Fortunately, VFP includes a couple of functions that help you do so.

VFPX: Thor Adding Tools

Rick Schummer

Thor is designed to be the ultimate IDE extension and tool manager and is quickly maturing on VFPX. Last issue Rick briefly introduced you to the installation process and provided a brief overview of Thors user interface. This month Rick dives in to the core reason this tool was created in the first place by detailing how you can use Thor to manage various add-ons and tools you want integrated into the Visual FoxPro 9 IDE.

Tips & Tricks: Schummer Tips and Tricks

Rick Schummer

ActiveX/IntelliSense tip Dragging the ActiveX controls from the Visual FoxPro Toolbox to an editor provides the syntax for CREATEOBJECT() code. The following code was created when I dropped the Adobe PDF Reader ActiveX Control in the program editor:

Tips & Tricks: Report Writer

Cathy Knight

The VFP Report Writer has some very useful features hidden away. The first hidden feature is very helpful for concatenating data in a single field object on a report. The second hidden feature is helpful for browsing or hacking the FRX.

Internationalization: Internationalize Your App, Part 1 Entering international characters

Rainer Becker

Numerous articles and publications describe how to use Unicode and such in Visual FoxPro applications to enable the input and display of international character sets. Visual FoxPro cannot process double byte character sets and a workaround is needed in all cases. The simple approach discussed here might be the quickest solution to internationalize the data input capabilities of your application, at least to some degree.

TOC July 2011 - Number 21

Editorial: It's show time again

Rainer Becker

Mark the date: October 26 - 29, 2011. The Southwest Fox 2011 will take place at the Legado Hotel, Gilbert, Arizona, USA and you should not miss this great event! All details including very interesting session descriptions and the speakers' biographies are available on-line at www.swfox.net. Registration is already open.

Deep Dive: The ctl32 Library, Part 1

Doug Hennig

Want to add fresher, more modern-looking controls to your applications? Want to avoid ActiveX issues? Take a look at the ctl32 library.

Know How: Talking to Microsoft Office

Tamar E. Granor, Ph.D.

While most Office Automation code moves smoothly from older versions to the latest, some changes in recent versions do have an impact on the process of automating the Office apps. One change in Office 2010 has major implications for applications that need to use Office's applications programmatically.

Customerizing: Customizing Your Vertical Market Application, Part IV

Cathy Pountney

In the previous three installments of this four-part series, I introduced you to a customization methodology you can implement in your vertical market application to keep your standard code independent from your custom code, yet have the two code bases play nice together. I showed you how to lay the foundation and add hooks in your application. I showed you how to build the custom application and add basic functionality. I explained how to customize menus, forms, processes and even offer customized data. In this last article of the series, I show you how to customize my favorite part of an application; Reports.

Silverlight: Applications and the local System

Michael Niethammer

As You saw this headline You might be wondering why it is necessary to write an article in Fox RockX about SL-applications and the system they are running on. But please remember: Silverlight is a web-technology, applications written this way are running on the local system in a sandbox, hosted by a web browser, without any access to the local machine. Thinking about business- applications it becomes very important to talk about ways to use the local file system, automate applications like Office or using the local hardware.

VFPX: Thor Introduction

Rick Schummer

Thor is designed to be the ultimate IDE extension and tool manager and is relatively new to VFPX. Thor helps you manage hotkeys as shortcuts to your add-ons, allows you to create and manage a developer menu, and positions itself as a facilitator to add-ons and the ability to more easily share tools you create with other Visual FoxPro developers. This month Rick is going to give you a short introduction to this fluid project in hopes you will help test it out and provide some of your own add-ons to share with the Fox Community, and then next time dig deeper into some extensions samples.

TOC May 2011 - Number 20

Deep Dive: Email and File Transfer the Fast (and Cheap!) Way

Doug Hennig

In the previous two issues, Doug discusses free libraries generously provided by Craig Boyd to compress and decompress files and encrypt and decrypt strings and files. In this issue, he discussed two more libraries that add MAPI email and file upload and download capabilities to your applications.

Know How: Build Your Own Project Tools

Tamar E. Granor, Ph.D.

While Visual FoxPro's Project Manager doesn't offer much in the way of tools to audit or manage projects, the ability to address the project as an object more than makes up for this deficiency.

Customerizing: Customizing Your Vertical Market Application, Part III

Cathy Pountney

In the previous two installments of this four-part series, I introduced you to a customization methodology you can implement in your vertical market application to keep your standard code independent from your custom code, yet have the two code bases play nice together. I showed you how to lay the foundation and add hooks in your application. I showed you how to build the custom application, add basic functionality, and explained how to customize menus. In this article, Part 3, I take it a step further and show you how to customize forms, processes, and offer customized data to your clients.

Tools: dFPUG.fll Version 3 - Zip, Scan and more

Venelina Jordanova and Uwe Habermann and Erich Todt

The dFPUG.fll has grown up. The little FLL with functions for compressing and decompressing files has become an ample collection of functions indispensable for many purposes. FoxPro developers are offered capabilites hitherto unknown.

TOC March 2011 - Number 19

Deep Dive: Encryption the Fast (and Cheap!) Way

Doug Hennig

In the previous issue, Doug discussed a free library generously provided by Craig Boyd to compress and decompress files using the ubiquitous ZIP format. This time, he examines another free library from Craig, one that encrypts and decrypts strings and files.

Know How: Inside the Object Inspector

Tamar E. Granor, Ph.D.

In my last article, I demonstrated the Object and Collection Inspector, a new tool I built to overcome the VFP Debugger's weaknesses in working with collections. This time, I'll open the hood and cover some of the issues I encountered in building the tool.

Customerizing: Customizing Your Vertical Market Application, Part II

Cathy Pountney

Part 1 of this four-part series introduced you to a customization methodology you can implement in your vertical market application to keep your standard code independent from your custom code, yet have the two code bases play nice together. This article, Part 2, dives into the code showing you how to lay the foundation and start building the custom application as well as how to add some customization to menus in your application.

VFPX: Vista (and Windows 7) Dialogs via COMtool

Rick Schummer

Sedna was released on January 25, 2008, which is more than three years ago. Yet Rick still finds Visual FoxPro developers asking questions about Sedna, where to go get it, what is included, and how to install it. Microsoft open sourced the Sedna release package and source code, and made it so they could be available on VFPX. Now developers can extend them and have the ability to re-release them to the Fox Community. This month Rick is going to show you the VistaDialogs4COM, which is one of the components available in the Sedna package.

TOC January 2011 - Number 18

Deep Dive: Compression the Fast (and Cheap!) Way

Doug Hennig

Need a way to compress and decompress files in your applications? VFP guru Craig Boyd has created a free library to zip and unzip files quickly and easily.

Know How: Introducing the Object and Collection Inspector

Tamar E. Granor, Ph.D.

For the last four years, I've been working on a project that has grown to include a complex object hierarchy with many embedded collections. While VFP's collection class is quite useful, the debugging tools for collections are weak. In particular, there's no support for drilling down into collections. So I finally created my own tool.

Customerizing: Customizing Your Vertical Market Application, Part I

Cathy Pountney

Writing a vertical market application can be very rewarding. You write one application, sell it numerous times, and sit back while the money rolls in. Well,that's the theory anyway. The reality is often times new clients want to buy your software as long as you can change this one little thing. Managing custom code for various clients within your application can easily turn into a nightmare as your client base expands. This article, part 1 of a four-part series, introduces you to a customization methodology you can implement in your vertical market application to keep your standard code independent from your custom code, yet have the two code bases play nice together.

Silverlight: Lightswitch - a first look at the Beta of the new RAD tool

Michael Niethammer

End of August this year Microsoft published the first Beta of their new product called Lightswitch (former internal name: KittyHawk). This product should fill a gap in the Visual Studio toolset for professional developers as well as for home users to create database applications as easy as possible. Without writing a line of code, Lightswitch enables the user to create CRUD applications for different datasources (locally or anywhere else) easily. Even though its somewhat a model-based application generator there are enough ways for enhancing the generated application to make the toolset a valuable thing for professionals. In this article I will give a brief overview of Lightswitch and its architecture.

Tools: Application String Handling Made Easy with Foxparse C library

Pradip Acharya

In business applications (and in general), we are faced with complex string handling and parsing issues every day. Fulfilling this requirement with the rudimentary VFP functions SUBSTR, ATC and ALINES is a tedious task involving lengthy ad hoc coding with numerous chained function calls within VFP loops, slowing down development not to mention execution. In this introductory article, Pradip Acharya presents the broad outlines of the new Foxparse C library, its advantages, how its used and a few core functions with examples. In a forthcoming issue, the complete set of functions and the advanced options will be unveiled. Foxparse.fll included in this download is the curtailed version of the library.

TOC November 2010 - Number 17

Silverlight: Silverlight Business Applications

Venelina Jordanova and Uwe Habermann

You can create Silverlight 4 applications with any version of Visual Studio 2010. We are using the version Visual Web Developer 2010 Express which is available for download free of charge. Basically all Silverlight 4 applications can be developed with this free version of Visual Studio 2010. But the various commercial versions of Visual Studio offer an extended debugging, automatized testing capabilities, and the possibility of integrating them in a source code management system. However, the free Visual Web Developer 2010 Express is the right choice for beginners. And in many cases it will suffice for doing professional development work.

Deep Dive: A More Flexible Report Designer

Doug Hennig

This month, Doug presents a way to make the VFP Report Designer more flexible, such as customizing the pages of the properties dialogs without having to change ReportDesigner.APP.

Know How: Understanding Business Objects, Part III

Tamar E. Granor, Ph.D.

Once you have business objects, you need to connect them to the user interface. Plus changing the application is easier than when business logic and UI code are mingled

TOC September 2010 - Number 16

Editorial: Rescue in sight with Silverlight

Rainer Becker

Dear Fox RockX reader,the publisher of Fox RockX magazine, the FoxPro User group of German Language Inc., is happy to report good news: Our plans to offer a migration path for Visual FoxPro developers have taken big steps forward!

Complete article available at http://www.foxrockx.com.

VFPX: zProc IntelliSense

Rick Schummer

IntelliSense in Visual FoxPro is highly extensible and this is proven by the number of developers who create scripts over the years to assist themselves and other developers in writing source code quicker. This month Rick is going to dive into the relatively new "zProc, zVFP, and zCOM IntelliSense Scripts" project headed up by Jijo Pappachan to show you three new scripts which may or may not be useful for your development, and potentially can save you time.

Deep Dive: Practical Uses for GDIPlusX, Part III

Doug Hennig

GDIPlusX is a VFPX project that exposes GDI+ to VFP applications as a set of VFP class libraries. GDIPlusX makes it easy to add new graphical abilities to your applications, allowing you to provide a fresher and more powerful user interface. This article is the last in a series that examines some practical uses for GDIPlusX.

Know How: Understanding Business Objects, Part II

Tamar E. Granor, Ph.D.

In my last article, I explained what business objects are and why I had a hard time learning to use them. Then, I looked at a client application (called NMS) that brought the ideas home to me. In this issue, I'll begin to look at the details of using business objects.

Silverlight: SL Data-Binding and Data-Validation

Michael Niethammer

Developing Silverlight applications is totally different from the way FoxPro developers did things for a long time. Most of them don't like to switch over to Visual Studio because of the DataBinding in old style Winforms Applications. Microsoft has released the Windows Presentation Foundation and Silverlight with a totally rewritten User-Interface. So let's take a closer look at it.

TOC July 2010 - Number 15

SilverLight: SilverLight for VFP Developers

Venelina Jordanova and Uwe Habermann

In the past most of VFP developers were in search of new development tools. Some of us switched to other development platforms like Java or .NET, but most VFP developers still looked for a development platform.

Complete article available at http://www.foxrockx.com.

VFPX: Code References

Rick Schummer

The Code Reference developer tool is one of those tools some developers find indispensible and other developers find less useful. Regardless of your opinion all Visual FoxPro developers have the need to do global searching of the different source code files included in their projects. Jim Nelson decided he wanted a few of his enhancements ideas implemented to make his searching more productive and is making Code References a little more powerful. This month Rick digs into the beta release of this product to show you what is new, and maybe even shed some light on some gotchas with the latest release.

Deep Dive: Practical Uses for GDIPlusX, Part II

Doug Hennig

GDIPlusX is a VFPX project that exposes GDI+ to VFP applications as a set of VFP class libraries. GDIPlusX makes it easy to add new graphical abilities to your applications, allowing you to provide a fresher and more powerful user interface. This article is the second in a series that examines some practical uses for GDIPlusX.

Know How: Understanding Business Objects, Part I

Tamar E. Granor, Ph.D.

I've been hearing about business objects since some time in the mid-1990's. Not long after VFP added object-orientation, people started recommending that business logic be encapsulated into a set of separate objects. Intellectually, I understood the idea, but the examples I saw never really seemed to deliver on the promise. The standard example involved a customer object with the customer data entry form calling on that business object to do things like calculate sales tax. While I could see how to build that kind of object, it didn't seem all that important.

TOC May 2010 - Number 14

Editorial: The Visual FoxPro Roadshow 2010

Rainer Becker

Dear Subscribers, thank you for your ongoing support of Fox RockX! And here comes our gift to you for supporting us: You are herewith invited to a free one-day workhop right after the South West DevCon in October!

Complete editorial available at http://www.foxrockx.com.

VFPX: OOP Menus

Rick Schummer

OOP menus are probably the second highest requested feature to be added to Visual FoxPro over the years. Microsoft never responded to this request for some reason (I am speculating it was most likely a resource issue). Doug Hennig wanted OOP menus and over the years implemented his own set of classes to accomplish this task and has posted the classes up on VFPX for others to use and help enhance.

Deep Dive: Practical Uses for GDIPlusX, Part I

Doug Hennig

GDIPlusX is a VFPX project that exposes GDI+ to VFP applications as a set of VFP class libraries. GDIPlusX makes it easy to add new graphical abilities to your applicat

Show more