Configuración de una muestra

Navigation:  Interfacing QDV7 > Bases de datos contextuales >

Configuración de una muestra

Previous pageReturn to chapter overviewNext page

A typical example is provided with QDV7 to illustrate how to interface a contextual database.

You'll find the example in \SDK\Custom_Articles folder, below installation folder.

 

The example is made up of:

▪an SQL Server database which is the contextual database. It contains rebates, currencies and prices according to a context made of Country and Type of Business

▪a QDV7 database named Ackerman.qdb which is the calling database

▪a program named Custom_Articles.dll which interfaces both databases

▪the program source code intended to be compiled using Microsoft Visual Studio 2010 or later

 

Setting up Contextual Database

The SQL Server contextual database should look like this:

 

SQLServerContextual

 

To install it, just restore the archive provided in the \SDK>Custom_Articles folder and named Contextual_Prices_Db.bak. This archive was created using SQL Server Management Studio on SQL Server 2008 R2.

In order to run this sample, you must create a user named sample_user on your server. Name and password are hard-coded in the program. So you must use SQL Server authentication and give:

▪login: sample_user

▪password: sample_password

Give this user enough rights on the database (owner is perfect).

 

Installing QDV Database

In the \SDK>Custom_Articles folder, you'll find a file named Ackerman.qdb. Copy it to any location and set a numeric path to this location using Data>Paths Manager.

 

Open

 

Open the database under QDV7, set edit mode and check that QDV7 will query an external program when the database is called. Select Behavior>Query Data from Foreign Program; then the gear wheel shows in a colored square (this flag is already set in sample database).

 

BehaviorDb


 ←

 

Installing Program

Quit QDV and copy Custom_Articles.dll (located in \SDK>Custom_Articles folder) to the program folder (usually \Program Files>QDV 7) in replacement of the Custom_Articles.dll installed by setup program which does nothing but returning data passed to the function.

 

To tell the setup program that you don't want it to replace your own Custom_Articles.dll each time the setup upgrades QDV7, create a file named KeepCustomArticles.inf and place it in the installation directory. The file content doesn't matter. This applies also to your own Custom_Function.dll.

For both dll's, the compatibility of a QDV7 release is preserved across their versions. You may have to recompile the dll's (a warning pops up).

 

Testing

Under QDV7 open the sample estimate Multi-Langages_Sample_With_Documents.qdv. This estimate contains 2 global variables used to set the context: GLV_Country and GLV_Business.

 

VarsContext

 

The content of these variables can be changed in the overhead workbook>Sheet of Sales.

Options for contextual prices (see \SDK):


Country  

UNITED KINGDOM          

V


 

 

 


Context  

LARGE_BUSINESS            

V

 

Open Ackerman.qdb under QDV7 and import some articles, in this context they should appear in GBP. Prices, rebates and currencies coming from the contextual database.

 

UKContext

 

Change context to USA / Small Business for example. You should get this:

 

USDContext

 

Select lines imported in UK context, and update them using Data>Update Rows.

 

Open

 

Then, lines are adapted to the USA context.