Address Component
Properties Methods Events Config Settings Errors
An Address represents a geographical address.
Syntax
TiqbAddress
Remarks
Address is a utility object which allows the user to easily edit and copy addresses. It is designed to interact with other components, rather than QuickBooks.
To add an address to another component, such as a Customer, first instantiate an Address component, and set any or all of the properties: Line1, Line2, Line3, Line4, Line5, City, State, PostalCode, and Country. Then, the Aggregate property may be used to construct an aggregate of the entire address. This aggregate should be passed to the other component.
Example
Address1.Line1 = "100 Main Street"
Address1.City = "Anytown"
Address1.State = "CA"
Customer1.BillingAddress = Address1.Aggregate
The same process may be used in reverse to get an address from another component.
For example, this pseudocode will get the address of a Vendor:
Vendor.Get("ACME Inc.")
Address.Aggregate = Vendor.Address
Property List
The following is the full list of the properties of the component with short descriptions. Click on the links for further details.
Aggregate | The entire address. |
City | The city. |
Country | The country. |
Line1 | The first line of the address. |
Line2 | The second line of the address. |
Line3 | The third line of the address. |
Line4 | The fourth line of the address. |
Line5 | The fifth line of the address. |
Note | Note line of the address aggregate. |
PostalCode | The postal code. |
State | The state. |
Method List
The following is the full list of the methods of the component with short descriptions. Click on the links for further details.
Config | Sets or retrieves a configuration setting. |
Event List
The following is the full list of the events fired by the component with short descriptions. Click on the links for further details.
Error | Information about errors during data delivery. |
Config Settings
The following is a list of config settings for the component with short descriptions. Click on the links for further details.
AuthFlags | Connection Flags (use for QuickBooks Simple Start). |
EnforceMaxLength | Indicates whether to enforce max lengths for QB Fields. |
GetHighestVersion | Highest QBXMLVersion supported by the installed instance of QuickBooks. |
GetRequestProcessorDLLVersion | Returns the version of the QB Request Processor that is installed on your system. |
GetSupportedVersions | Returns a list of QBXMLVersions that are supported by QuickBooks. |
IsReadOnly | This causes the QuickBooks authorization dialog to display text informing the user that its access will be read-only. |
Name | The name associated with the address. |
PersonalDataPref | Whether the connecting application will require access to personal data such as SSN or credit card information. |
QBConnectionMode | The mode of connection to QuickBooks. |
QBFileStatus | The status of the company file as it pertains to accepting connections. |
QBOpenCompanyFile | The file currently open in QuickBooks. |
SSLAcceptServerCert | The SSL certificate being used by the QuickBooks Gateway (aka Remote Connector). |
SSLAcceptServerCertFile | The SSL certificate file being used by the QuickBooks Gateway (aka Remote Connector). |
StopOnError | Specifies how QuickBooks is to proceed if an error occurs in processing of the current request. |
UnattendedModePref | Whether connecting while QuickBooks is closed is required or optional for the user. |
WarningCodes | A comma-separated list of QuickBooks warning codes that should not result in an exception. |
BuildInfo | Information about the product's build. |
CodePage | The system code page used for Unicode to Multibyte translations. |
LicenseInfo | Information about the current license. |
MaskSensitiveData | Whether sensitive data is masked in log messages. |
UseInternalSecurityAPI | Whether or not to use the system security libraries or an internal implementation. |
Aggregate Property (Address Component)
The entire address.
Syntax
property Aggregate: String read get_Aggregate write set_Aggregate;
Default Value
''
Remarks
An aggregate consisting of the entire address, formatted as XML without end tags. Address properties of the various components accept and return data in this format exclusively.
When this property is read, an aggregate is formed from the value of all the other properties. When the property is written, the input is parsed and the various properties are set. Reading or writing the value of this property will also escape or unescape special characters such as '&', as appropriate.
There is generally no need to generate or inspect the value of Aggregate by hand. This property allows the user to easily pass data between instances of an Address component, or between an Address component and a QuickBooks object component.
It is, however, possible, to generate the value by hand, and use this value directly in other components as an alternative to using the Address component. The formatting is as in QBXML; any or all fields may be left out:
<Addr1>Line1</Addr1><Addr2>Line2</Addr2><Addr3>Line3</Addr3> <City>City</City><State>State</State><PostalCode>PostalCode</PostalCode> <Country>Country</Country>
City Property (Address Component)
The city.
Syntax
property City: String read get_City write set_City;
Default Value
''
Remarks
The city in the address.
Country Property (Address Component)
The country.
Syntax
property Country: String read get_Country write set_Country;
Default Value
''
Remarks
The country. If not specified, assumed to be the United States.
Line1 Property (Address Component)
The first line of the address.
Syntax
property Line1: String read get_Line1 write set_Line1;
Default Value
''
Remarks
The first line of the address.
Line2 Property (Address Component)
The second line of the address.
Syntax
property Line2: String read get_Line2 write set_Line2;
Default Value
''
Remarks
The second line of the address.
Line3 Property (Address Component)
The third line of the address.
Syntax
property Line3: String read get_Line3 write set_Line3;
Default Value
''
Remarks
The third line of the address.
Line4 Property (Address Component)
The fourth line of the address.
Syntax
property Line4: String read get_Line4 write set_Line4;
Default Value
''
Remarks
The fourth line of the address. Requires QuickBooks 2003. Used when parsing block addresses.
Line5 Property (Address Component)
The fifth line of the address.
Syntax
property Line5: String read get_Line5 write set_Line5;
Default Value
''
Remarks
The fifth line of the address. This line is only applicable when QBXMLVersion is "6.0" or greater in the component using the address aggregate.
Note Property (Address Component)
Note line of the address aggregate.
Syntax
property Note: String read get_Note write set_Note;
Default Value
''
Remarks
Not all components support this Note line in the address aggregate. For those that do, QBXMLVersion must be "6.0" or greater to use this property.
PostalCode Property (Address Component)
The postal code.
Syntax
property PostalCode: String read get_PostalCode write set_PostalCode;
Default Value
''
Remarks
The postal or zip code.
State Property (Address Component)
The state.
Syntax
property State: String read get_State write set_State;
Default Value
''
Remarks
The state in the address.
In the Employee component State must be a valid two-letter abbreviation for a U.S. state.
For Canadian editions of QuickBooks, State represents the province instead.
Config Method (Address Component)
Sets or retrieves a configuration setting.
Syntax
function Config(ConfigurationString: String): String;
Remarks
Config is a generic method available in every component. It is used to set and retrieve configuration settings for the component.
These settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.
To set a configuration setting named PROPERTY, you must call Config("PROPERTY=VALUE"), where VALUE is the value of the setting expressed as a string. For boolean values, use the strings "True", "False", "0", "1", "Yes", or "No" (case does not matter).
To read (query) the value of a configuration setting, you must call Config("PROPERTY"). The value will be returned as a string.
Error Event (Address Component)
Information about errors during data delivery.
Syntax
type TErrorEvent = procedure ( Sender: TObject; ErrorCode: Integer; const Description: String ) of Object;
property OnError: TErrorEvent read FOnError write FOnError;
Remarks
The Error event is fired in case of exceptional conditions during message processing.
ErrorCode contains an error code and Description contains a textual description of the error. For a list of valid error codes and their descriptions, please refer to the Error Codes section.
Config Settings (Address Component)
The component accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.Address Config Settings
A list of allowable AuthFlags is provided below.
"" or 0 | Do not send any auth flags |
0x01 | Support QB Simple Start |
0x02 | Support QB Pro |
0x04 | Support QB Premier |
0x08 | Support QB Enterprise |
0x80000000 | Force Auth Dialog |
To specify support for multiple editions, OR together the values for each edition.
NOTE: If the version of QuickBooks being used does not support AuthFlags, the contents of this config will be ignored. However, if QuickBooks does support this feature, setting "AuthFlags=1" (Support for Simple Start only) on a machine running QuickBooks 2013 Pro will result in an error message indicating that the Request Processor cannot be found.
A list of available values is provided below.
pdpOptional | Causes the QuickBooks authorization dialog to display a checkbox for user selection asking whether the user wants to allow the application to access personal data. |
pdpRequired | Causes the QuickBooks authorization dialog to not display the personal information checkbox for user selection, and instead display a warning that the application needs to access personal data. |
pdpNotNeeded | Causes the QuickBooks authorization dialog to not display the personal information checkbox for user selection, and instead display an informational message that the application will NOT access personal data. |
The default value is pdpOptional.
The following values are permitted:
0 | Don't Care |
1 | Single-User Mode |
2 | Multi-User Mode |
About Single-User and Multi-User Modes
If the connection to QuickBooks is made in single-user mode, QuickBooks will give exclusive access to the connecting application. It will lock out all other integrated applications; if QuickBooks and the company file are not already open in single-user mode by the QuickBooks user, the user will be locked out as well.
If the connection is made in multi-user mode, QuickBooks will allow all other integrated applications access. QuickBooks end users on other machines will also be allowed to access the file. However, if the application (rather than the end user) starts QuickBooks automatically, end users on the same machine will still be locked out.
If cmDontCare is specified, an appropriate connection mode will be chosen automatically. If a company file is open in either single-user or multi-user mode, the integrated application will accept that connection mode. If no company file is open, QuickBooks will login automatically in multi-user mode.
About Integrated and Automatic Login
Note that your application's login to QuickBooks might be either automatic or interactive. Interactive login is used when QuickBooks is already open. Access will be shared between the integrated application and the QuickBooks end user, and if multi-user mode is specified, other applications and users will have access as well. When a connection is made, QuickBooks will show a dialog window to the user, and ask the user if he/she wants to permit the connection.
Automatic login is used when QuickBooks is not already open. QuickBooks will be opened in the background, and will run until your application has finished its connection with QuickBooks. The QuickBooks user interface will not be displayed, and end-users on the same machine will be locked out. End-users on other machines, however, will be allowed access if multi-user mode is specified.
By default integrated applications do not have permission to login automatically. The first time an application interacts with QuickBooks, it must do so interactively, with QuickBooks and the company file open. The QuickBooks end user may then grant automatic login permission through Edit Preferences - Integrated Applications in the QuickBooks user interface. Click on the name of the application and then "Properties", and you may allow the application to login automatically.
For automatic login the CompanyFile must be specified. CompanyFile, ApplicationName, and other properties relating to the QuickBooks connection may be edited through QBConnectionString.
0 | The company file will accept the connection. This indicates that no company file is open, or the desired company file is already open. |
1 | The company file will not accept the connection. This indicates a different company file is already open. |
A query is submitted to QuickBooks when the value of this property is read. The empty string will be returned if no file is open, if QuickBooks is open in an access mode incompatible with QBConnectionMode, or if an error occurs.
If the value of this property is nonempty, the component may interact exclusively with the open file.
This is only necessary if using a self-signed certificate, or any other certificate that has not been signed by a Certificate Authority (CA) trusted by the system.
Reading the value of this setting will return an empty string.
A list of available values is provided below.
umpOptional | Causes the QuickBooks authorization dialog to display its default selections and let the user pick. Use this setting if you do not need unattended mode. |
umpRequired | Causes the QuickBooks authorization dialog to display only the selection choices of "No" (no authorization) or "Yes, allow access even if QuickBooks is not running" (authorize unattended mode). |
The default value is umpOptional.
Base Config Settings
The following is a list of valid code page identifiers:
Identifier | Name |
037 | IBM EBCDIC - U.S./Canada |
437 | OEM - United States |
500 | IBM EBCDIC - International |
708 | Arabic - ASMO 708 |
709 | Arabic - ASMO 449+, BCON V4 |
710 | Arabic - Transparent Arabic |
720 | Arabic - Transparent ASMO |
737 | OEM - Greek (formerly 437G) |
775 | OEM - Baltic |
850 | OEM - Multilingual Latin I |
852 | OEM - Latin II |
855 | OEM - Cyrillic (primarily Russian) |
857 | OEM - Turkish |
858 | OEM - Multilingual Latin I + Euro symbol |
860 | OEM - Portuguese |
861 | OEM - Icelandic |
862 | OEM - Hebrew |
863 | OEM - Canadian-French |
864 | OEM - Arabic |
865 | OEM - Nordic |
866 | OEM - Russian |
869 | OEM - Modern Greek |
870 | IBM EBCDIC - Multilingual/ROECE (Latin-2) |
874 | ANSI/OEM - Thai (same as 28605, ISO 8859-15) |
875 | IBM EBCDIC - Modern Greek |
932 | ANSI/OEM - Japanese, Shift-JIS |
936 | ANSI/OEM - Simplified Chinese (PRC, Singapore) |
949 | ANSI/OEM - Korean (Unified Hangul Code) |
950 | ANSI/OEM - Traditional Chinese (Taiwan; Hong Kong SAR, PRC) |
1026 | IBM EBCDIC - Turkish (Latin-5) |
1047 | IBM EBCDIC - Latin 1/Open System |
1140 | IBM EBCDIC - U.S./Canada (037 + Euro symbol) |
1141 | IBM EBCDIC - Germany (20273 + Euro symbol) |
1142 | IBM EBCDIC - Denmark/Norway (20277 + Euro symbol) |
1143 | IBM EBCDIC - Finland/Sweden (20278 + Euro symbol) |
1144 | IBM EBCDIC - Italy (20280 + Euro symbol) |
1145 | IBM EBCDIC - Latin America/Spain (20284 + Euro symbol) |
1146 | IBM EBCDIC - United Kingdom (20285 + Euro symbol) |
1147 | IBM EBCDIC - France (20297 + Euro symbol) |
1148 | IBM EBCDIC - International (500 + Euro symbol) |
1149 | IBM EBCDIC - Icelandic (20871 + Euro symbol) |
1200 | Unicode UCS-2 Little-Endian (BMP of ISO 10646) |
1201 | Unicode UCS-2 Big-Endian |
1250 | ANSI - Central European |
1251 | ANSI - Cyrillic |
1252 | ANSI - Latin I |
1253 | ANSI - Greek |
1254 | ANSI - Turkish |
1255 | ANSI - Hebrew |
1256 | ANSI - Arabic |
1257 | ANSI - Baltic |
1258 | ANSI/OEM - Vietnamese |
1361 | Korean (Johab) |
10000 | MAC - Roman |
10001 | MAC - Japanese |
10002 | MAC - Traditional Chinese (Big5) |
10003 | MAC - Korean |
10004 | MAC - Arabic |
10005 | MAC - Hebrew |
10006 | MAC - Greek I |
10007 | MAC - Cyrillic |
10008 | MAC - Simplified Chinese (GB 2312) |
10010 | MAC - Romania |
10017 | MAC - Ukraine |
10021 | MAC - Thai |
10029 | MAC - Latin II |
10079 | MAC - Icelandic |
10081 | MAC - Turkish |
10082 | MAC - Croatia |
12000 | Unicode UCS-4 Little-Endian |
12001 | Unicode UCS-4 Big-Endian |
20000 | CNS - Taiwan |
20001 | TCA - Taiwan |
20002 | Eten - Taiwan |
20003 | IBM5550 - Taiwan |
20004 | TeleText - Taiwan |
20005 | Wang - Taiwan |
20105 | IA5 IRV International Alphabet No. 5 (7-bit) |
20106 | IA5 German (7-bit) |
20107 | IA5 Swedish (7-bit) |
20108 | IA5 Norwegian (7-bit) |
20127 | US-ASCII (7-bit) |
20261 | T.61 |
20269 | ISO 6937 Non-Spacing Accent |
20273 | IBM EBCDIC - Germany |
20277 | IBM EBCDIC - Denmark/Norway |
20278 | IBM EBCDIC - Finland/Sweden |
20280 | IBM EBCDIC - Italy |
20284 | IBM EBCDIC - Latin America/Spain |
20285 | IBM EBCDIC - United Kingdom |
20290 | IBM EBCDIC - Japanese Katakana Extended |
20297 | IBM EBCDIC - France |
20420 | IBM EBCDIC - Arabic |
20423 | IBM EBCDIC - Greek |
20424 | IBM EBCDIC - Hebrew |
20833 | IBM EBCDIC - Korean Extended |
20838 | IBM EBCDIC - Thai |
20866 | Russian - KOI8-R |
20871 | IBM EBCDIC - Icelandic |
20880 | IBM EBCDIC - Cyrillic (Russian) |
20905 | IBM EBCDIC - Turkish |
20924 | IBM EBCDIC - Latin-1/Open System (1047 + Euro symbol) |
20932 | JIS X 0208-1990 & 0121-1990 |
20936 | Simplified Chinese (GB2312) |
21025 | IBM EBCDIC - Cyrillic (Serbian, Bulgarian) |
21027 | Extended Alpha Lowercase |
21866 | Ukrainian (KOI8-U) |
28591 | ISO 8859-1 Latin I |
28592 | ISO 8859-2 Central Europe |
28593 | ISO 8859-3 Latin 3 |
28594 | ISO 8859-4 Baltic |
28595 | ISO 8859-5 Cyrillic |
28596 | ISO 8859-6 Arabic |
28597 | ISO 8859-7 Greek |
28598 | ISO 8859-8 Hebrew |
28599 | ISO 8859-9 Latin 5 |
28605 | ISO 8859-15 Latin 9 |
29001 | Europa 3 |
38598 | ISO 8859-8 Hebrew |
50220 | ISO 2022 Japanese with no halfwidth Katakana |
50221 | ISO 2022 Japanese with halfwidth Katakana |
50222 | ISO 2022 Japanese JIS X 0201-1989 |
50225 | ISO 2022 Korean |
50227 | ISO 2022 Simplified Chinese |
50229 | ISO 2022 Traditional Chinese |
50930 | Japanese (Katakana) Extended |
50931 | US/Canada and Japanese |
50933 | Korean Extended and Korean |
50935 | Simplified Chinese Extended and Simplified Chinese |
50936 | Simplified Chinese |
50937 | US/Canada and Traditional Chinese |
50939 | Japanese (Latin) Extended and Japanese |
51932 | EUC - Japanese |
51936 | EUC - Simplified Chinese |
51949 | EUC - Korean |
51950 | EUC - Traditional Chinese |
52936 | HZ-GB2312 Simplified Chinese |
54936 | Windows XP: GB18030 Simplified Chinese (4 Byte) |
57002 | ISCII Devanagari |
57003 | ISCII Bengali |
57004 | ISCII Tamil |
57005 | ISCII Telugu |
57006 | ISCII Assamese |
57007 | ISCII Oriya |
57008 | ISCII Kannada |
57009 | ISCII Malayalam |
57010 | ISCII Gujarati |
57011 | ISCII Punjabi |
65000 | Unicode UTF-7 |
65001 | Unicode UTF-8 |
Identifier | Name |
1 | ASCII |
2 | NEXTSTEP |
3 | JapaneseEUC |
4 | UTF8 |
5 | ISOLatin1 |
6 | Symbol |
7 | NonLossyASCII |
8 | ShiftJIS |
9 | ISOLatin2 |
10 | Unicode |
11 | WindowsCP1251 |
12 | WindowsCP1252 |
13 | WindowsCP1253 |
14 | WindowsCP1254 |
15 | WindowsCP1250 |
21 | ISO2022JP |
30 | MacOSRoman |
10 | UTF16String |
0x90000100 | UTF16BigEndian |
0x94000100 | UTF16LittleEndian |
0x8c000100 | UTF32String |
0x98000100 | UTF32BigEndian |
0x9c000100 | UTF32LittleEndian |
65536 | Proprietary |
- Product: The product the license is for.
- Product Key: The key the license was generated from.
- License Source: Where the license was found (e.g., RuntimeLicense, License File).
- License Type: The type of license installed (e.g., Royalty Free, Single Server).
- Last Valid Build: The last valid build number for which the license will work.
This setting only works on these components: AS3Receiver, AS3Sender, Atom, Client(3DS), FTP, FTPServer, IMAP, OFTPClient, SSHClient, SCP, Server(3DS), Sexec, SFTP, SFTPServer, SSHServer, TCPClient, TCPServer.
Setting this configuration setting to True tells the component to use the internal implementation instead of using the system security libraries.
This setting is set to False by default on all platforms.
Trappable Errors (Address Component)
ErrorsAddress Errors
812 | The address is invalid. |