>Trey,
>
>THIS IS WEIRD!
>
>Acting on your idea, I added:
>
>
>nHandle = FCREATE("dlltest.txt")
>=FPUTS(nHandle, oRecord.RecordId)
>=FPUTS(nHandle, oRecord.FullName)
>=FCLOSE(nHandle)
>>
>to the SaveChanges, right before the GATHER
>and everything works fine now!! The values are
>in the Text file AND the table!
>
>Go figure
Let's try again and not misspell the tags.:-)
Kevin,
I think that I may have a soltuion to your problem.
After re-reading your code and doing some experimenting on my own, the problem may be solvable. I think that the basic problem here is VFP 6.0's inability to resolve properties of objects unless there's either a type library or each individuall property has been referenced. For example, with any in-process server, using the SCATTER command returns an object, but its members cannot be visually seen in the debugger. Further, doing a GATHER from this object doesn't work for the same reason that the debugger doesn't show the individual properties.
However, if the properties are referenced, then everything is OK. As a result, I'd suggest that you copy the individual fields into an array and then, in some way refence them. For example, assuming that the object has a property array named a_fields created from the AFIELDS function;
lnlast = ALEN(oObj.. a_fields, 1)
FOR lni = 1 TO lnlast
lcmac = "lcvar = oObj.a_fields[" + TRANSFORM(lni), + ",1]"
&lcmac
NEXT
It should expose each of the fields to your gather routine. Otherwise, I think that the same might be true if you have a procedure in the DLL to append the records. For what I can tell, tables opened by a DLL cannot be seen. even though they're in the same address space as VFP.
hth,
George
Ubi caritas et amor, deus ibi est