>>In my case it's not that simple. I'm still working on that problem. I think, after I ran BuilderB application, something was set wrongly. I unzipped XSource Builder application, so I'm going to trace...
>
>I assume from your posts that Mere Mortals has their own Builder stored into the _BUILDER variable? If so, do you have the latest version of Mere Mortals, and, more importantly, if so, do they handle the passing of "MEMBERDATA" in their builder?
>
>They should have something like the following in the code of their builder program:
>
>
>LPARAMETERS toObject, tcSource, Three, Four
>
>IF UPPER(ALLTRIM(m.tcSource)) == "MEMBERDATA"
> DO (HOME()+"BUILDER.APP") WITH toObject, tcSource, Three, Four
> RETURN
>ENDIF
>
>
>I use Visual MaxFrame Professional as my framework, and the code above is from their builder program.
>
>--Brad
Hi Brad,
MereMortals is using regular _builder. However, it uses Builder and BuilderX properties in order to run the builders.
I believe (though not 100%) certain, that the bug is in MS Builder.app itself. E.g. why should it try to instantiate a builder if it's called from Property Sheet Add to Favorites or from MemberData menu?
Here is what I did:
I extracted everything from XSource directory and looked into Builder project. In this project there is a program called Builder (main program). In that program I made a following change:
IF ALEN(wbaControl) = 1 ;
AND IIF(TYPE("wbcpOrigin")="C" AND UPPER(wbcpOrigin)=="MEMBERDATA",.F.,.T.) ;
AND TYPE("wbaControl[1].BuilderX")=="C" AND NOT EMPTY(wbaControl[1].BuilderX)
lcBuilder=wbaControl[1].BuilderX
DoBuilder(wbaControl[1],tuSource,lcBuilder)
_vfp.LanguageOptions = liOldLanguageOptions
RETURN
ENDIF
After that I recompiled the app and put it in VFP9 directory. It now seems to behave correctly, e.g. my builders are instantiated when called for Builders and Add to Favorites/MemberData menu works as well.
Though using your caution I probably not going to use this until we all switch to VFP9.
Now is it indeed a bug? If it is, how should I report it?
Thanks again.
If it's not broken, fix it until it is.
My Blog