Wednesday, March 05, 2008
Visual FoxPro 9.0 SP2 or not... Post 3

Here are 5 more SP2 bugs evaluated. These were all reported by Bernard Bout. Even though I am kind of downplaying the severity of some of these issues, I really do appreciate him posting his finds on the SP2 Bug List and on the Microsoft Feedback site. Part of the reson I am doing this series is to encourage other people to get SP2 installed and evaluated. If you find an issue, please let us know and most importantly, report it to Microsoft. If we all sit back and let other people like Bernard and Cathy Poutney find all the issues, what percentage of the issues are we going to actually find? We can't just sit back and talk about Microsoft as a 3rd party and say that they owe us a better product, but never tell them what's wrong. I believe Microsoft is willing to address critical issues in the core, if we let them know about them.

Microsoft may be willing to address issues in the XSource, but that really doesn't concern me because we can take care of those issues ourselves. All of the XSource is now on VFPX, waiting for issues to be reported and/or developers to fix them....

Issue: Help file missing items off the index tab
Submitted By: Bernard Bout
New to SP2: Yes
Impact for SP2: Low
Feedback ID: 306332
Solution Available: No
Workaround Available: Yes
Bug Location: VFP9 Help

I can’t imagine how this happened, but it did. But just to clarify, all of the help items are in the SP2 help file; the issue is that over 100 help items do not appear in the “Index” tab. This not only affects the index tab, but also highlighting a keyword in code and hitting F1.

The good news is that Bernard has confirmed that Microsoft is already working on this problem and we should have a fixed help file soon. Until then you can use the “Search” tab to locate the help topic you are looking for. You can also just use the help file from SP1. Just make a backup of dv_foxhelp.chm file from VFP9 or SP1 before upgrading and either use Tools -> Options -> File locations to set the old help file or just copy it into the HOME(1) folder of VFP9 after installing SP2 to overwrite the SP2 help file.

Should this stop you from upgrading to SP2? No. It’s an easy workaround, a fix is on its way and it shouldn’t affect your applications in anyway.

 

Issue: VFP SP2 ToolTipText not displaying for Grid.Column.Header and Grid.Column
Submitted By: Bernard Bout
New to SP2: Yes , but I should mention that this was broken in VFP9 RTM, fixed is SP1 and broken again in SP2.
Impact for SP2: Medium
Feedback ID: 311817
Solution Available: No
Workaround Available: Yes, but probably not satisfactory for developers that use this functionality.
Bug Location: VFP9 Core

I can only speculate that this was broken when the 5 or more issues related to grids or tool tips were addressed in SP2. I can see where this would be very annoying to developers that use this functionality to deliver well polished applications. And especially to see it come and go (new to VFP8, broken in VFP9, fixed in VFP9 SP1, broken again in VFP9 SP2).

(update 03/05 9:37pm - Correction: this bug did not exist in VFP9 RTM. It was introduced in VFP9 SP2)

There is a workaround using a technique shown on the Feedback page and also published in 1001 Things You Wanted to Know About Visual FoxPro by Marcia Akins, Andy Kramek and Rick Schummer. This technique was used back before we had a ToolTipText property for Headers (which was introduced in VFP8). It basically works by using the MouseEnter and MouseLeave events to toggle the Grid’s ToolTipText.

This works ok, but because of the way the tool tips are updated and the way the grid responds to mouse events, it doesn’t always update a smooth as you would like; especially not as smooth as it worked in VFP8 or in VFP9 SP1. And if you are even using these tips you are probably a developer who likes to deliver well polished apps and you are probably not going to like the annoyance that comes with this workaraound.

So if you are using the ToolTipText for Columns or Headers, be aware that they do not work in VFP9 SP2. I would also HIGHLY recommend that you go to the Microsoft Feedback page and cast your vote on this bug. The more (constructive) feedback that Microsoft receives about this issue, the better our chances are of having it fixed.

Should this stop you from upgrading to SP2? Maybe, and only if you are using these tool tips. If you are not, then there is no reason not to upgrade.

 

Issue: Undocumented change in COM when passing DATETIME value to .NET
Submitted By: Bernard Bout
New to SP2: Yes
Impact for SP2: Low to None
Feedback ID: N/A
Bug Location: VFP9 Help

This is not a BUG, but actually a behavior change between SP1 and SP2. And according to Bernard Bout it is actually fixed in SP2. This was posted to the VFP9 SP2 Bug List because the behavior change was undocumented.

Should this stop you from upgrading to SP2? Absolutely not.

 

Issue: Web Services Registration - If field returns NULL then error registering Web Service
Submitted By: Bernard Bout
New to SP2: Yes
Impact for SP2: Low
Feedback ID: none
Solution Available: Yes
Bug Location: VFP9 XSource

I have not been able to reproduce this error, nor can I find any difference in code or libraries between SP1 and SP2 that would cause the behavior change. However, Bernard found it and posted a solution. This is an easy fix with an NVL( ). Since this change is in the XSource, I think we should fix it out on VFPx instead of involving Microsft.

(update 03/05 9:37pm - Tamar Granor supplied a valid repro for this issue: http://fox.wikis.com/wikiwebservice.wsdl. Registering this web service using the Intellisense Manager in SP1 works, but fails in SP2 with a "column does not support null values" error)

Should this stop you from upgrading to SP2? No. It’s an easy fix, It only happens in the VFP dev environment and only rarely.

 

Issue: Changes to the code in FFC\_reportlistener.vcx breaks SP1 reports
Submitted By: Bernard Bout
New to SP2: Yes
Impact for SP2: Low
Feedback ID: none
Solution Available: Yes
Bug Location: VFP9 XSource (though it is not really a bug)

As Colin Nicholls says in the VFP9 SP2 Bug List, this is not really a bug. However it is a behavior change between SP1 and SP2 that caused code not to work from an article, written by Doug Hennig, about including hyperlinking on reports. There are a couple lines of debate between Bernard and Colin about whether this should be considered a bug or not. Since my series of blog post are about dispelling unfair attitudes about SP2, I’m going to have to side with Colin on this one, and I will explain why. But since there is an easy solution, I think everybody will be happy in the end.

In Doug’s article he talks about “poking” through the HTMLListener class of _REPORTLISTENER.VCX and finding this code:

<xsl:when test="string-length(@href) &gt; 0">
  <A href="{@href}">
  <xsl:call-template name="replaceText"/>
  </A>
</xsl:when>

I’m sure this was the start of what we finally ended up with when we got hyperlink support in SP2. However this was undocumented and the final SP2 implementation looks like this:

<xsl:when test="string-length(@hlink) &gt; 0">
  <a href="{@hlink}">
  <xsl:call-template name="replaceText"/>
  </a>
</xsl:when>

Note the attribute change from “href” to “hlink”. So now the code from Doug’s article doesn’t work anymore. Bernard posted a solution from Sergey Berezniker onto the Solutions To VFP9 SP2 Bugs page. His solution was to just add the earlier code back to support both old and new options:

<!--------- Add this --------- -->
<xsl:when test="string-length(@href) &gt; 0">
  <A href=" {@href}">
  <xsl:call-template name="replaceText"/>
  </A>
</xsl:when>

<!-------------- Before this  ---------- -->
    <xsl:otherwise>
      <xsl:call-template name="replaceText"/>
    </xsl:otherwise>
    </xsl:choose>

Note that this code change would be in the getDefaultUserXsltAsString method of the HTMLListener class in _REPORTLISTERN.VCX, around line number 428.

Another solution and probably a better idea is to just modify Doug’s code to use “hlink=” instead of “href=” or just use the new hyperlinking features of SP2.

(update 03/06: I can confirm now, that changing Doug's code as follows, will fix the issue also)

Change this line:

   lcInfo = lcInfo + ' href="' + ;

To this:

   lcInfo = lcInfo + ' hlink="' + ;

And add:

   SELECT frx

Before:

     dimension .aRecords[reccount()]

Should this stop you from upgrading to SP2? No. The change is easy and it only affects projects that have implemented Doug’s hyperlinking code.

 

This is all for now. I will try to take on a few more tomorrow...

I hope this helps you make an informed desision about SP2. Again, my intent is not to downplay or shun the reported issues. I think they should all be addressed, but we should all make an informed decision about upgrading to SP2 before we completly dismiss it.

 


Wednesday, March 05, 2008 10:47:41 PM (Eastern Standard Time, UTC-05:00)  #     Comments [10]   | Tracked by:
"Visual FoxPro 9.0" (Termékinformációk fejlesztőknek) [Trackback]


Thursday, March 06, 2008 1:24:11 AM (Eastern Standard Time, UTC-05:00)
A couple of comments, Bo. First, in my tests, the tooltips work in the original VFP 9 (build 2412) and in SP1, but not in SP2.

Second, on the Web Service item, I was able to reproduce by trying to register the Wiki Web Service (http://fox.wikis.com/wikiwebservice.wsdl) using the Web Services Registration dialog. I agree, though, that this is minor since it's easy to fix the code. You don't even have to rebuild anything because the dialog uses the FFC classes directly.
Thursday, March 06, 2008 2:44:33 AM (Eastern Standard Time, UTC-05:00)
Hi Tamar,

Thank you for the correction. I did not test in VFP9 RTM, my comments were based on comments made in the Microsoft Feedback page: "this is a regression bug from VFP 9.0 RTM, resolved in VFP 9.0 SP1
now is back in VFP 9.0 SP2" (https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=311817). I now have VFP9 RTM installed and verified that it does work, as you say. I have also updated the blog entry to reflect this.

Thank you for the repro for the web service bug. I will dig into this more later. I would like to know why this behaves differently while the code seems unchanged.
Thursday, March 06, 2008 11:56:47 AM (Eastern Standard Time, UTC-05:00)
Bo,
Thank you very much for your efforts on the SP2 issues. I upgraded three of my apps to SP2 back in December and have only had one issue regarding reports that has puzzled me. I can't honestly say it's a "bug", but it is "different". What's happening is this...
All of the reports for these apps (approximately 280+) were originally created in VFP9 RTM and continued without change in VFP9 SP1. They each have a color logo and various other color elements that would print in color under RTM and SP1, as long as you have a color printer, of course. In SP2, they now print B/W. Not only that, but they appear to change the default printer's settings from color to B/W, but only for the default windows printer and only within the VFP app. Word and other apps are unaffected. Previews always display in color regardless of the default printer's settings or capability. If I choose a different printer to print the report, it will print in color. If I choose another printer in the printer selection dialog and click "Apply", then reselect the default printer and click "Apply" the report prints in color. None of the reports are saving printer environment and they are all using ReportBehavior90. I have confirmed that printer environment is not begin saved in the report by opening the frx file and browsing record 1. The tag and tag2 fields are empty, but here's the oddity. In the expr field, the settings are ORIENTATION=0 PAPERSIZE=1 PAPERLENGTH=2794 PAPERWIDTH=2159 COLOR=1. My assumption was that COLOR=1 means "TRUE" (maybe an incorrect assumption, but it worked as expected in RTM and SP1?). If I change COLOR=1 to COLOR=0, then run the report, it will print in color and the report's behavior is just as it was in RTM and SP1. If I do not change this setting, but instead MODI REPORT and select "Save Printer Environment", save the report, then unselect "Save Printer Environment" and save the report, the report works as before and prints in color. Oddly enough, after doing so, the tag and tag2 fields are empty again as expected, but the expr field now only contains ORIENTATION=0 PAPERSIZE=1 COLOR=1 (PAPERLENGTH AND PAPERWIDTH settings are no longer there). Modifying each of these reports twice as above is too time consuming, so I wrote a simple prg to use each frx file and replace COLOR=1 with COLOR=0, which fixes the problem. However, I'm concerned that this is not the correct setting (my assumption is that 0 means False) and that this workaround may have to be revisited later.
Any ideas on what is going on here?

Thanks.
Robert McNeal
Thursday, March 06, 2008 4:51:37 PM (Eastern Standard Time, UTC-05:00)
Just a couple of comments.

As I posted on the wiki there are 619 items missing from the index. All the topics are there, in fact there are about 30 odd new ones in sp2. I know this because I tested the new VFP9 sp21 help file.

I a,so was puzzled by the web services bug since the code is same. However there must be something else that is causing this. I have not debugged it thoroughly - only to fix the null bug I found.

The COM bug I found because it broke my web service since I had programmed around the DATETIME issue bug in SP1. However as you know this was an undocumented bugfix.

I totally agree about a central repository for the "fixed" source.
Saturday, May 23, 2009 6:54:54 AM (Eastern Daylight Time, UTC-04:00)
Could you help me. The lion and the calf shall lie down together but the calf won't get much sleep. Help me! Looking for sites on: Turbo Tax. I found only this - <a href="http://turbo-tax.biz">turbo tax</a>. Crisis intervention to seek treatment assistance for alcohol and substance. Alcohol alcoholism treatment provides complete information on treating alcoholism thru self hel programs, therapies and medicine. Thank you very much :mad:. Livia from Venezuela.
Sunday, August 02, 2009 1:18:44 AM (Eastern Daylight Time, UTC-04:00)
Good afternoon. Three may keep a secret, if two of them are dead. Help me! I can not find sites on the: Shark teeth phosphate florida. I found only this - <a href="http://www.net-solve.at/Members/Teeth">bag of shark Teeth</a>. A shark teeth are usually replaced every eight days. So for now, we; re sticking with the shark teeth. With best wishes :confused:, Minna from Colombia.
Tuesday, August 18, 2009 9:51:46 PM (Eastern Daylight Time, UTC-04:00)
Hi all. A fine quotation is a diamond on the finger of a man of wit, and a pebble in the hand of a fool. Help me! Can not find sites on the: Learning stock charts. I found only this - <a href="http://www.lugabe.net/Members/Charts/bar-charts-stock-opinion">bar charts stock opinion</a>. Week price range, and nothing to do with the internal quality of the. Yet the story of how the dream became a reality is not one of independence, self sufficiency, and entrepreneurial pluck. :confused: Thanks in advance. Shaver from Lanka.
Sunday, October 18, 2009 8:55:45 PM (Eastern Daylight Time, UTC-04:00)
Hi guys. Self-importance is our greatest enemy. Think about it - what weakens us is feeling offended by the deeds and misdeeds of our fellowmen. Our self-importance requires that we spend most of our lives offended by someone.
I am from Liberia and too bad know English, give true I wrote the following sentence: "personal skills completed of all computers supervisory as access, head, track and the person to torment along with products, are criminal souls and may frequently be done especially.The census of the hundred in troubleshooting visit grew short that of the manor wrote.This consists the junk to dress all after and ground for 12- 16 posters without disassembly."

Thanks for the help :-D, Computer repairs weston super mare.
Tuesday, November 10, 2009 2:23:41 AM (Eastern Standard Time, UTC-05:00)
Hi all. If you are out to describe the truth, leave elegance to the tailor.
I am from Uganda and also am speaking English, give true I wrote the following sentence: "During this citation, libyans had been starting in the terabyte-sized program, and games of these users enjoyed gathering their papyrus.They are associated of role, software, overview film, and interim consequences non-targeted as collection season, quality credit, spectrum and mission.And i'm no sediment, rivaling the money to work on all the proteins i appear to take this wildlife.For about 150 hours engineers assumed potentially to ensure the museum's volatile family."

Waiting for a reply :-(, Find people telephone.
Wednesday, November 18, 2009 7:43:02 AM (Eastern Standard Time, UTC-05:00)
Pediatricians in Brooklyn, NY, See Reviews and Book Online Instantly.  All appointment times are guaranteed by our dentists and doctors
Name
E-mail
(will show your gravatar icon)
Home page

Comment (Some html is allowed: )  

Enter the code shown (prevents robots):