Appendix: Developer Integration Notes

<< Click to Display Table of Contents >>

Navigation:  QuoteWerks Help >

Appendix: Developer Integration Notes

QuoteWerks uses the Microsoft Access 2002/2003 database to store the quotes. QuoteWerks exposes all of this information to any application that can read an Access 2002/2003 database. This enables you to create applications that read and even make changes to the data in the database. The most likely application that users may want to create is one that reads information about a quote, and converts it into an invoice in their accounting system. The table below is information that developers would need to interface with QuoteWerks.

A COM based API is also available with event triggers. This API enables developers to interact with the currently running instance of QuoteWerks, and all the currently open documents. For details on obtaining this API, send an e-mail to apisupport@quotewerks.com.

The QuoteWerks XML Document Files can also be used to integrate with QuoteWerks. An example would be to create a web site form that takes a quote request. This quote request can then be saved into our XML document format and e-mailed to the QuoteWerks installation. There, the user can import this quote request as a quote in the database. See Document Transport Features for more details.

All of the information pertaining to quotes, orders, invoices etc is stored in the DOCS.MDB database for access and the DocumentHeaders and DocumentItems tables for SQL. In the access backend, there are two tables in this database that store the quote information. The first table is the [DocumentHeaders] table, which stores the header information about the quote, such as the sold to information, quote status etc. The second table is the [DocumentItems] table, which stores all the items that are in the quote. The 2 tables are linked together by linking the [DocumentItems].[DocID] field to the [DocumentHeaders].[ID] field.

Table Name:

DocumentHeaders

Field Name:

DocType

Field Type:

Text

Description:

Stores the type of document such as QUOTE, ORDER, or INVOICE.

Values:

QUOTE, ORDER, or INVOICE.

Table Name:

DocumentHeaders

Field Name:

DocStatus

Field Type:

Text

Description:

Stores the status of the document, such as In Progress, Complete, Lost, Won, etc. These status values are defined by the user. Look for the status phrase that they have chosen to represent a document that should be exported to the accounting system.

Values:

{User Defined}

 

Table Name:

DocumentItems

Field Name:

LineType

Field Type:

Long Integer

Description:

Stores the line type. These values do NOT compound, they are mutually exclusive.

Values:

ProductService = 1

Comment = 2

SubTotal = 4

GroupHeader = 8

RunningSubTotal = 16

Section Header = 32

PercentDiscount = 64

PercentCharge = 128

Heading = 256

Summary = 512

Table Name:

DocumentItems

Field Name:

LineAttributes

Field Type:

Long Integer

Description:

Stores the attributes for each line item. The attributes can be combined together. For example, if a line item had the Exclude and HidePrice attributes set, the value would be 3. To test the value to see which of the attributes is set you will need to perform a comparison, for example:

If (Attributes AND 2) = 2 then Hide Price attribute is set.

Values:

Exclude = 1

HidePrice = 2

DontPrint = 4

SubItem = 8

Option = 16

Alternate Price Overridden = 32

Print Picture = 64

IsRecrruing = 128

SelectedOption = 256

HideQuantity = 512

Table Name:

DocumentItems

Field Name:

TaxCode

Field Type:

Text

Description:

Stores the tax code of the line item.

Values:

USA Tax Codes

Item is Taxable=Y

Item is Not-Taxable=N

 

Canadian Tax Codes

Item is GST Only=G

Item is PST Only=P

Item is both GST and PST=B