VFPXMLProgID Property
References a COM component that can be used to override functionality of the internal XML functions.
_VFP.VFPXMLProgID [=cValue]
Parameters
- cValue
Specifies the ProgID of the COM component class whose functions override the functionality of internal Visual FoxPro XML functions (CURSORTOXML( ), XMLTOCURSOR( ), or XMLUPDATEGRAM( )). Setting cValue to the empty string ("") resets to the internal XML functions.
Remarks
The class must implement the IVFPXML interface from Visual FoxPro. The COM component can be created in Visual FoxPro, Visual C/C++, Visual Basic or any developer tool that creates COM components with the ability to implement interfaces. The default value is "", which means to use the internal implementations of these functions.
To provide methods to overwrite, run the Object Browser and, from the Microsoft Visual FoxPro 7.0 type library, drag the IVFPXML interface to a program.
Example
In a project, named MyXMLproj, create a class containing the following:
DEFINE CLASS MyXMLclass AS session OLEPUBLIC
IMPLEMENTS IVFPXML IN "VisualFoxPro.Application.7"
PROCEDURE IVFPXML_CursorToXML(bstrAlias AS STRING, ;
nOutputFormat AS Number, nFlags AS Number, ;
nRecords AS Number, bstrOutputFile AS STRING, ;
bstrSchema AS STRING, bstrSchemaLocation AS STRING, ;
bstrNameSpace AS STRING, pVFP AS VARIANT) AS VARIANT ;
HELPSTRING "Converts from a Cursor to XML"
* add user code here
ENDPROC
PROCEDURE IVFPXML_XMLToCursor(pvarXMLSource AS VARIANT, ;
bstrCursorName AS STRING, nFlags AS Number, pVFP AS VARIANT) ;
AS Number HELPSTRING "Converts from XML to a Cursor"
* add user code here
ENDPROC
PROCEDURE IVFPXML_XMLUpdateGram(nFlags AS Number, ;
bstrCursorList AS STRING, pVFP AS VARIANT) AS VARIANT;
HELPSTRING "Generates an XML UpdateGram"
* add user code here
ENDPROC
ENDDEFINE
Add your custom XML function handler code to the three methods, and set the VFPXMLProgID property to your ProgID.
See Also
_VFP System Variable | Viewing Type Library Information | XML Functions | Visual FoxPro and XML | CURSORTOXML( ) | XMLTOCURSOR( ) | XMLUPDATEGRAM( )