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 QV Quantity Change= 1024 |
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 |