Feb
21

Some developers are surprised to find out that the Project Manager is a drag-n-drop client and server. This means that files can be dragged to the Project Manager from many sources including other projects and from outside of Visual FoxPro. If you drag files from the Windows Explorer all the files will be added to the project.

Dragging from one project to another
Dragging files between two different projects creates a reference in the second project for that file. If there is a description for the file, this description is also added to the second project, even for files that don’’t store the description in the file itself. If the file is a program set as the main program of the originating project, VFP will prompt you with a question that asks if you want to make the file the main program in the second project. You do not need to be on the same page in each project. The file is naturally added to the correct category based on the file extension.

Drag objects from a project to a designer
Dragging files from the project to a form or class designer can save time during development. Many project objects can be dragged to the Form or Class Designer. The dropped objects are instantiated in the designer.

Dragging a field from a database contained table, view, or free table to a form or class will instantiate the associated class for the data type. The advantage of this feature is that it creates a bound object in the class without the use of a dataenvironment. Many developers I have mentored over the years feel they need to first drop on a class and then set the ControlSource.

While the manual setting of the ControlSource works, it requires developers to perform an extra step. The other advantage of this technique is that it incorporates the IntelliDrop capability seen when you perform this operation from the dataenvironment. This way the classes specified in advance are used instead of the VFP base classes. Tables dragged to a form or class will instantiate a grid. If you right-click and drag, you are presented with the option of the grid class (or other class you have set for the Multiple setting in the Field Mapping in the Tool|Options or via the Task Pane Environment Manager).

If you want a specific class dropped on another container class, you can select it in the Project Manager and drag it to the container class. This does not bind the object like the drag operation of a table field. This allows you to override the IntelliDrop settings that are premapped. I expected that an icon dropped on a form might set the form Icon property and that dropping a graphic would generate an image object. They don’’t. Other objects not mentioned in this section cannot be dropped onto a form or container class.

Dragging from project to program code
In the same spirit described in the preceding section, you can drag and drop different project objects to code editors. The name of the object is displayed in the code window. For instance, if you drop a field name in the Command Window, you get the field name. Unfortunately you do not get the table.fieldname syntax. This works for every object type in the project except the stored procedure names. The only objects that carry over the file extension are the files in the “other” category.

Feb
17

One Year and counting

I was reviewing some of my past posts on this blog this morning looking to see what I have posted on user groups and noticed today is the first anniversary of this blog. Pretty cool. I know I was a late adopter to the blogging craze, but it is never too late to get started. If you want help in starting one just send me an email. I will extend the same help to you that I was given by several of the Fox bloggers when I got started last year.

Some interesting statistics:

  1. 135 posts
  2. At least one new client project
  3. Many new friends
  4. Several new critics {g}
  5. 6 requests for reposts and/or translations

I have really enjoyed writing the posts and hope you have enjoyed reading them.

Feb
17

Another great DAFUG meeting

Last night Andy Kramek stopped by the Detroit Area Fox User Group and presented his “Advanced SQL Queries in VFP 9.0″ session and wowwed the local Fox developers. It is a great session and one Andy is anticipating presenting at Southwest Fox 2006 in October. I anticipate this will be a popular session at this conference and one many developers will walk away from with a this-session-paid-for-this-conference type review.

DAFUG has really been blessed with excellent presentations in 2006. Last month Tamar Granor impressed us when she rehearsed her “Office Automation Beyond the Basics” conference session. The next two months we have more conference rehearsals with Mike Feltman presenting “How’d they do that? Inside F1 Technologies Visual FoxExpress” coming in March, and Cathy Pountney rehearsing her GLGDW “Best Practices for Project Management”.

Detroit has been very lucky when it comes to attracting great speakers from outside of our area and have several really solid presenters locally so each month we learn a lot and just as important, have a lot of fun. Our meetings do not end when the presentation is done. We always go out to get something to eat afterwards and you can learn more at these informal “sessions”.

Jealous? No problem, there are a lot of Fox Developer groups around the world so go join one. I have visited some really good groups over the years as you may know from reading past posts on this blog. Can’t find one locally, start a thread on one of the many Fox forums and see if you can hook up with other developers in your area. This is how we started DAFUG back in 1994. It will take some time and energy, but I can tell you it will pay big dividends. Sure you can get answers to your questions on the various online resources, but there is no better benefit to getting together with Fox friends than networking, just like the conferences.

I have been reading how groups are recently restarting in Toronto and Central Pennsylvania and watched the Chicago group resurge in the last couple of years. I suspect this is all part of the Visual FoxPro Surge Craig Bailey has been touting.

If you are ever in the Detroit on business or pleasure check out the DAFUG Web site to see if we are meeting when you are in town. We always welcome visitors.

Feb
15

Office 2003 SP2 frustrations

A couple of weeks ago when I got the latest and greatest DVDs from Microsoft with my MSDN Universal subscription I noticed Office 2003 had a new service pack. I have not read about any problems so I decided to install all the service packs for Word, Excel, PowerPoint, Access, OneNote, FrontPage, Publisher, InfoPath, Project, and Visio.

For the most part there have not been any problems. The information about Outlook 2003 SP2 on Slipstick sounds promising, but unfortnately I have experienced several issues. Out of the entire suite I use Outlook the most. Guess what application in my opinion was affected the most by SP2? Yep, Outlook.

The first thing I noticed is it changed all my preferences for the Favorite Folders. This ticks me off because it is my favorites, not anyone elses. Several folders were removed, different ones added, and they are ordered differently. Who tested this stuff? And if it met the specs, who the heck wrote the spec to do this?

Next thing I noticed is my contacts. On the contacts page is My Contacts. Like the favorite folders they rearranged the order to be in alphabetical order. So my White Light Customers is now near the bottom, instead of the number one in the list. Stupid spec or stupid testing?

The next thing I noticed is all my plain text emails have the Arial font instead of the Courier New font. Sure enough I hunted down the settings to see they were changed. Why would anyone assume I would prefer their choice over my own?

I am guessing it took me 30-45 minutes to fix everything back to what I had before, and probably another hour to install all the updates. Wonder who I should send the invoice to at Microsoft?

There are a couple of other things that have been tweaked in Outlook that I had to re-tweak and I am not sure I have found all the changes made on my behalf. I can say the changes made to Outlook 2003 (especially in the fight against SPAM and the ability to not show graphics in HTML message) were the driving force to get me to adopt Office 2003 in the first place. Otherwise I was perfectly happy sticking to Office XP. For Microsoft to slam me with preference tweaks when installing a service pack is plain dumb. So if you have not updated to the latest service pack, maybe you should consider sitting on this one.

Off to find a bug reporting mechanism to see if they will address the issue, then back to work.

Feb
15

FoxPro License Plates

Yesterday I got involved in an email conversation about having FoxPro on my license plate. I see Whil Hentzen has been posting some geeky license plates and shows Dave Aring’s “FoxPro” license plate in the state of Kansas.

I know several VFP developers who show their Fox colors on their plates. Cathy Pountney has “FoxRox” here in Michigan, Marcia Akins has “FoxPro” in Ohio, Andy Kramek has “VFP MVP” in Ohio, and Sue Cunningham had “FoxPro” in Pennsylvania when she lived there.

The best story I have about my “FoxPro” license plate is when I was working at EDS. Another member of my team and I just finished a two day app for the GMAC Treasurer’s office. This app saved GMAC from losing 10 Million dollars. We literally cycled through the entire software cycle from requirements to deployment in two days and with no bugs reported. A couple days after the deployment a lady comes running up to me in the parking structure and says she saw my license plate and was wondering if I knew anything about FoxPro.

Apparently some hot shot programmers just swooped in to her department and kicked out an app for them and were “off working on another project and do not have time for us.”

I asked her where she worked and she told me the GMAC Treasurer department. I gave her another business card and told her all she had to do is call, we would be happy to help her out. {g}

Feb
14

I don’t really need a reminder why I love working for myself. But, today I experienced rush hour for the first time in over a year. Missing rush hour is one of the best parts about working for myself. I really hate wasting time and to me there are few things worse than sitting in traffic. I needed to drop off my tax return stuff at my accountants so I can get my refund sooner than later. So I headed out at 8:00am and sat in traffic for an hour crossing the suburbs of Detroit for 30 miles to the accountants office, then another 45 minutes on the way to a client on the other side of town. What a pain!

So I had to make the trip worthwhile so I included a little gift for the office manager Jean – the Staples Easy Button. Jean is great and I just wanted to show my appreciation for the hard work she does this time of year. I hit my email when I arrived at my client’s. Jean said my accountant was running around the office pressing the Easy Button, which plays the “that was easy” sound bite. It sounds hilarious just in the fact that an accountant is running around the office, but Howard is really an accounting geek so I get a bonus laugh out of the picture.

Made the whole drive time pain go away.

Feb
12

I really like to watch/listen to the Winter Olympic coverage while I do some coding or pay bills (things I did yesterday), cut invoices (this morning’s task). I find it hard to believe the NBC coverage here in the States does not have anything to broadcast live. Fortunately our neighbors to the south (yes, Windsor, Ontario is south of Detroit) have CBC doing some excellent coverage of the live events. In fact, I prefer watching the Canadian coverage because they show us all the excellent athletes from all around the world, not just snippets of the Americans and the other winners.

The impressive feats so far are the Canadian women hockey teams complete dominance of their competition, the ski jumper who fell on the landing and returned later for a second attempt, Zhao Hongbo (Chinese Pairs Figure Skater) who is doing jumps and throws with his partner after a serious injury to his left Achilles tendon six months ago, and anyone who can speedskate for 5000 Meters.

I guess I should be thankful for NBC and their various networks because I know I can watch replays later this evening if I get too intense in my coding and miss something important.

Feb
06

Super Commercials were a dud

I was happy to see Detroit put on a great Super Bowl XL and I have some hope the world will see our fair city in a different light. I did watch some of the game as I coded and it was better than the commercials in my opinion.

My favorites:
1) FedEx Caveman (especially the end where he stomps out of the cave and gets crushed by a dinosaur)
2) CareerBuilder.com “Monkeys/Jackass” (created a sensation of “I’ve been there before”)
3) MasterCard McGuyver
4) Stunt City (unfortunately I don’t recall the company name so how good was it?)
5) Bud Light’s Roof Problem Fixers (especially using the vent as a cooker)
6) Rock Financial’s – Chauncey Billups, Ben Wallace, and David Hall (from Rock) watching the Super Bowl on the Palace Vision screen (this was a local commercial not shown to the national audience)

Worst commercials:
1) Burger King Whopperettes (by a landslide, the PR firm should be publicly humiliated)
2) Cadillac Models coming out of the water
3) Dove’s female self-esteem movement (I agree with the fundamental concept, but why spend 2.5 million for 30 seconds?)

I am not even mentioning the flat out boring ones. So much wasted money. I guess I question most companies choice of spending 5 million a minute, but I figure I could easily set up a foundation on 2 minutes worth of spending. So many homeless people could be sheltered and feed. So many sick kids could be healed. So many disadvantaged people could be educated. Oh well, don’t expect ever to see a White Light Computing ad during a future Super Bowl.

For the record, it was a productive year on the coding front. {g}

I was also happy to see Jerome Bettis and Bill Cowher walk off the field a champion. I also proved once again that I cannot pick a winner in this game. If the Lions ever make it to the Super Bowl in my lifetime I will root for the other team.