Oracle Consulting Oracle Training Oracle Support Development
Oracle Books
SQL Server Books
IT Books
Job Interview Books
Rampant Horse Books
911 Series
Pedagogue Books

Oracle Software
Write for Rampant
Publish with Rampant
Rampant News
Rampant Authors
Rampant Staff
Oracle News
Oracle Forum
Oracle Tips
Articles by our Authors
Press Releases
SQL Server Books

Oracle 11g Books

Oracle tuning

Oracle training

Oracle support

Remote Oracle


Privacy Policy


  SQL Server Tips by Burleson

Using the framework

To use the XP++ framework to build an XP you should use the following steps:

1. Use one of the Appwizards in Microsoft Visual C++ to generate the basic code for a Win32 dll. Depending on your needs, you can use the ATL COM Appwizard, MFC Appwizard DLL or Win32 Dynamic-Link Library wizards if you are using Microsoft Visual C++ v6.

2. Add the two files ‘xp_pp.h’ and ‘xp_pp.cpp’ to your project. These two files comprise the XP++ class framework.

3. Optionally add IMPLEMENT_VERSION_XP() to support the __GetXpVersion function.

4. Modify the stdafx.h header file to include ‘srv.h’. This contains the definitions for the ODS API.

5. Create your new XP class say ‘CYourExtendedStoredProcedure’ in a new set of ‘YourStoredProcedure.cpp’ and ‘YourStoredProcedure.h’ files. This class should derive from CExtendedStoredProcedure and should override the ‘DisplayUsage‘ and ‘Run’ methods of its base class.

6. Also add DECLARE_XP_PARAMETERS() to the declaration of CYourExtendedStoredProcedure in ‘YourStoredProcedure.h’.

7. Define the layout of the parameters to your XP, using the BEGIN_IMPLEMENT_XP_PARAMETERS, END_IMPLEMENT_XP_PARAMETERS and XP_..._PARAMETER macros in ‘YourStoredProcedure.cpp’.

8. Implement the ‘DisplayUsage’ method to display info on using your XP.

9. Implement the core logic of your XP in the method ‘CYourExtendedStoredProcedure::Run’.

10. Add IMPLEMENT_XP(theNameOfYourXP, CYourExtendedStoredProcedure) to the main cpp module of your project. Also #include YourStoredProcedure.h in this module.

11. Compile, Unit test, Debug and Deploy!.

To add additional XP’s to your dll, simple repeat steps 5 – 11. Please also note that the framework will work equally as well in a plain SDK DLL, MFC DLL or ATL DLL. Also included in the framework example XP are Unicode build configurations if you want to produce Unicode versions of the XP. The framework as well as all its samples have also been tested on Visual Studio .NET 2003.

The above book excerpt is from:

Super SQL Server Systems
Turbocharge Database Performance with C++ External Procedures

ISBN: 0-9761573-2-2
Joseph Gama, P. J. Naughter  

Linux Oracle commands syntax poster

ION Oracle tuning software

Oracle data dictionary reference poster

Oracle Forum

BC Oracle consulting support training

BC remote Oracle DBA   



 Copyright © 1996 -2017 by Burleson. All rights reserved.

Oracle® is the registered trademark of Oracle Corporation. SQL Server® is the registered trademark of Microsoft Corporation. 
Many of the designations used by computer vendors to distinguish their products are claimed as Trademarks

Hit Counter