OFXBatch Component
Properties Methods Events Config Settings Errors
Enables sending of multiple requests to an OFX server through a single connection.
Syntax
TiboOFXBatch
Remarks
The OFXBatch component allows your application to download account information, bank, credit card, investment, loan statements, make intrabank and/or interbank transfers, and/or download your FI profile in one single request submitted to the FI's OFX server. This component provides for applying a single authentication context to multiple requests in order to reduce the overhead of user authentication.
All downloads are batched into a single secure HTTPS connection to the financial institution. To use the OFXBatch component first identify the financial institution by setting the FIId, FIOrganization and FIUrl,properties. Next identify the OFX user and application by setting the OFXUser, OFXPassword, OFXAppId and OFXAppVersion properties. The same signon information will be used for the entire batch.
To build the request, depending on each request type, the corresponding IPWorks OFX components should be used. So, if account information, bank, credit card, investment, loan statement, bank transfer, and FI profile are part of this multiple request, then instances of Account, BankStatement, CCStatement, InvStatement, LoanStatement, BankTransfer, and FIProfile (corresponding to the each request type) should be used. The individual components that generate the OFX request aggregate will not need the sign on data to generate their request.
Set properties of each corresponding component (excluding the SignOn part which is already set), as you would do when using these components to send single requests to the server. Please refer to each component help files for details on how to build each individual OFX request .
Once you have finished setting the properties that describe each individual request, set the Request in OFXBatch to the OFXRequest of each corresponding component. For example:
OFXBatch.OFXBatchItems[0].Request = BankStatement.OFXRequest;
OFXBatch.OFXBatchItems[1].Request = CCStatement.OFXRequest;
OFXBatch.OFXBatchItems[2].Request = FIProfile.OFXRequest;
Then, use the PostRequest method to build and transmit the request automatically.
Message sets will/must appear in the following order in the request: Signon, Signup, Bank statement, Intrabank funds transfers, Credit card statements, Loan statements, Investment statements, Interbank funds transfers, and FI Profile, regardless of their order while populating the OFXBatchItems. In the server response, the message sets will be returned in the server response in the same order.
Upon successful response, the Response array property will be populated automatically, which will contain several blocks of information consisting of a server response for each request. To parse this response, the Response at the same index should be passed as OFXResponse of the corresponding component using the same order as submitted in the request.
BankStatement.OFXResponse = OFXBatch.OFXBatchItems[0].Response;
CCStatement.OFXResponse = OFXBatch.OFXBatchItems[1].Response;
FIProfile.OFXResponse = OFXBatch.OFXBatchItems[2].Response;
Properties of each component are now populated and ready for retrieval.
Note: If signon data is different across components, then they cannot be used in the same batch, otherwise an error will be thrown.
Property List
The following is the full list of the properties of the component with short descriptions. Click on the links for further details.
FIId | Financial institution identifier. |
FIOrganization | Financial institution organization name. |
Firewall | A set of properties related to firewall access. |
FIUrl | Financial institution URL. |
OFXAppId | OFX application identifier. |
OFXAppVersion | OFX application version. |
OFXBatchItems | A list of items (requests/response pairs) that make up the current OFX batch. |
OFXPassword | User's password. |
OFXUser | User's id. |
Proxy | This property includes a set of properties related to proxy access. |
SSLAcceptServerCertEncoded | This is the certificate (PEM/base64 encoded). |
SSLCertEncoded | This is the certificate (PEM/base64 encoded). |
SSLCertStore | This is the name of the certificate store for the client certificate. |
SSLCertStorePassword | If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store. |
SSLCertStoreType | This is the type of certificate store for this certificate. |
SSLCertSubject | This is the subject of the certificate used for client authentication. |
SSLProvider | This specifies the SSL/TLS implementation to use. |
SSLServerCertEncoded | This is the certificate (PEM/base64 encoded). |
Timeout | A timeout for the component. |
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. |
PostRequest | Submits a batch of requests to an OFX server through a single connection. |
ReadOFXDataFile | Reads an OFX response from a file. |
Reset | Reset the internal state of the component and all properties to their default values. |
WriteOFXDataFile | Writes the OFX response sent by the server to a file. |
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.
ConnectionStatus | This event is fired to indicate changes in the connection state. |
Error | Information about errors during data delivery. |
SSLServerAuthentication | Fired after the server presents its certificate to the client. |
SSLStatus | Shows the progress of the secure connection. |
Config Settings
The following is a list of config settings for the component with short descriptions. Click on the links for further details.
CacheContent | If true, the original XML is saved in a buffer. |
Charset | Specifies the charset used when encoding data. |
EOL | The characters to use for separating lines. |
ErrorOnEmptyAttr | If true, passing an invalid attribute to the Attr method will throw an exception. |
ExtraNameChars | Extra characters for the parser to consider as name characters. |
ExtraSpaceChars | Extra characters for the parser to consider as white space. |
FlushOnEOL | If set, the parser flushes its text buffer after every line of text. |
IgnoreBadAttributePrefixes | If true, bad (unknown) attribute prefixes are ignored. |
IgnoreBadElementPrefixes | If true, bad (unknown) element prefixes are ignored. |
IncludeElementPrefix | Whether to include the prefix in the element name. |
IncludeXMLDeclaration | Whether to include the XML declaration when writing XML. |
Indent | The characters to use for each indentation level. |
Offset | Current offset of the document being parsed. |
PreserveWhitespace | If true, leading and trailing whitespace in element text is preserved. |
QuoteChar | Quote character to use for attribute values. |
StringProcessingOptions | Defines options to use when processing string values. |
BuildInfo | Information about the product's build. |
CodePage | The system code page used for Unicode to Multibyte translations. |
LicenseInfo | Information about the current license. |
MaskSensitive | Whether sensitive data is masked in log messages. |
UseInternalSecurityAPI | Tells the component whether or not to use the system security libraries or an internal implementation. |
FIId Property (OFXBatch Component)
Financial institution identifier.
Syntax
property FIId: String read get_FIId write set_FIId;
Default Value
''
Remarks
FIId holds the identifier of the OFX Financial Institution and is used during signon. This value is unique for each organization name.
FIOrganization Property (OFXBatch Component)
Financial institution organization name.
Syntax
property FIOrganization: String read get_FIOrganization write set_FIOrganization;
Default Value
''
Remarks
This is the name of the OFX Financial Institution and is used during signon. Each organization has a unique FIId that must also be used at signon.
Firewall Property (OFXBatch Component)
A set of properties related to firewall access.
Syntax
property Firewall: TiboFirewall read get_Firewall write set_Firewall;
Remarks
This is a Firewall type property which contains fields describing the firewall through which the component will attempt to connect.
FIUrl Property (OFXBatch Component)
Financial institution URL.
Syntax
property FIUrl: String read get_FIUrl write set_FIUrl;
Default Value
''
Remarks
This is the URL of the OFX Financial Institution to which the component will signon and fetch data.
OFXAppId Property (OFXBatch Component)
OFX application identifier.
Syntax
property OFXAppId: String read get_OFXAppId write set_OFXAppId;
Default Value
''
Remarks
This is the unique identifier of the user's OFX application.
OFXAppVersion Property (OFXBatch Component)
OFX application version.
Syntax
property OFXAppVersion: String read get_OFXAppVersion write set_OFXAppVersion;
Default Value
''
Remarks
This is the version of the user's OFX application.
OFXBatchItems Property (OFXBatch Component)
A list of items (requests/response pairs) that make up the current OFX batch.
Syntax
property OFXBatchItems: TiboOFXBatchItemList read get_OFXBatchItems write set_OFXBatchItems;
Remarks
This collection represents the list of requests/responses to be sent/received through a single connection. It is used when the PostRequest, ReadOFXDataFile and WriteOFXDataFile methods are called.
Each OFX batch item has a Request, RequestType, RequestUID, and Response tied to it.
The Request should be set for each OFXBatchItemIndex = 0 to OFXBatchItemCount - 1 when any of the above listed methods are called. Upon successful response, the rest of the properties should be inspected for each index (that falls within the range listed above).
This property is not available at design time.
OFXPassword Property (OFXBatch Component)
User's password.
Syntax
property OFXPassword: String read get_OFXPassword write set_OFXPassword;
Default Value
''
Remarks
This is the password used when signing on to the OFX Financial Institution's service.
OFXUser Property (OFXBatch Component)
User's id.
Syntax
property OFXUser: String read get_OFXUser write set_OFXUser;
Default Value
''
Remarks
This is the UserID used when signing on to the OFX Financial Institution's service.
Proxy Property (OFXBatch Component)
This property includes a set of properties related to proxy access.
Syntax
property Proxy: TiboProxy read get_Proxy write set_Proxy;
Remarks
This property contains fields describing the proxy through which the component will attempt to connect.
SSLAcceptServerCertEncoded Property (OFXBatch Component)
This is the certificate (PEM/base64 encoded).
Syntax
property SSLAcceptServerCertEncoded: String read get_SSLAcceptServerCertEncoded write set_SSLAcceptServerCertEncoded; property SSLAcceptServerCertEncodedB: TBytes read get_SSLAcceptServerCertEncodedB write set_SSLAcceptServerCertEncodedB;
Default Value
''
Remarks
This is the certificate (PEM/base64 encoded). This property is used to assign a specific certificate. The Store and Subject properties also may be used to specify a certificate.
When Encoded is set, a search is initiated in the current Store for the private key of the certificate. If the key is found, Subject is updated to reflect the full subject of the selected certificate; otherwise, Subject is set to an empty string.
This property is not available at design time.
SSLCertEncoded Property (OFXBatch Component)
This is the certificate (PEM/base64 encoded).
Syntax
property SSLCertEncoded: String read get_SSLCertEncoded write set_SSLCertEncoded; property SSLCertEncodedB: TBytes read get_SSLCertEncodedB write set_SSLCertEncodedB;
Default Value
''
Remarks
This is the certificate (PEM/base64 encoded). This property is used to assign a specific certificate. The Store and Subject properties also may be used to specify a certificate.
When Encoded is set, a search is initiated in the current Store for the private key of the certificate. If the key is found, Subject is updated to reflect the full subject of the selected certificate; otherwise, Subject is set to an empty string.
This property is not available at design time.
SSLCertStore Property (OFXBatch Component)
This is the name of the certificate store for the client certificate.
Syntax
property SSLCertStore: String read get_SSLCertStore write set_SSLCertStore; property SSLCertStoreB: TBytes read get_SSLCertStoreB write set_SSLCertStoreB;
Default Value
'MY'
Remarks
This is the name of the certificate store for the client certificate.
The StoreType property denotes the type of the certificate store specified by Store. If the store is password protected, specify the password in StorePassword.
Store is used in conjunction with the Subject property to specify client certificates. If Store has a value, and Subject or Encoded is set, a search for a certificate is initiated. Please see the Subject property for details.
Designations of certificate stores are platform-dependent.
The following are designations of the most common User and Machine certificate stores in Windows:
MY | A certificate store holding personal certificates with their associated private keys. |
CA | Certifying authority certificates. |
ROOT | Root certificates. |
When the certificate store type is PFXFile, this property must be set to the name of the file. When the type is PFXBlob, the property must be set to the binary contents of a PFX file (i.e. PKCS12 certificate store).
SSLCertStorePassword Property (OFXBatch Component)
If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.
Syntax
property SSLCertStorePassword: String read get_SSLCertStorePassword write set_SSLCertStorePassword;
Default Value
''
Remarks
If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.
SSLCertStoreType Property (OFXBatch Component)
This is the type of certificate store for this certificate.
Syntax
property SSLCertStoreType: TiboCertStoreTypes read get_SSLCertStoreType write set_SSLCertStoreType;
TiboCertStoreTypes = ( cstUser, cstMachine, cstPFXFile, cstPFXBlob, cstJKSFile, cstJKSBlob, cstPEMKeyFile, cstPEMKeyBlob, cstPublicKeyFile, cstPublicKeyBlob, cstSSHPublicKeyBlob, cstP7BFile, cstP7BBlob, cstSSHPublicKeyFile, cstPPKFile, cstPPKBlob, cstXMLFile, cstXMLBlob, cstJWKFile, cstJWKBlob, cstSecurityKey, cstBCFKSFile, cstBCFKSBlob, cstPKCS11, cstAuto );
Default Value
cstUser
Remarks
This is the type of certificate store for this certificate.
The component supports both public and private keys in a variety of formats. When the cstAuto value is used the component will automatically determine the type. This property can take one of the following values:
0 (cstUser - default) | For Windows, this specifies that the certificate store is a certificate store owned by the current user. Note: this store type is not available in Java. |
1 (cstMachine) | For Windows, this specifies that the certificate store is a machine store. Note: this store type is not available in Java. |
2 (cstPFXFile) | The certificate store is the name of a PFX (PKCS12) file containing certificates. |
3 (cstPFXBlob) | The certificate store is a string (binary or base64-encoded) representing a certificate store in PFX (PKCS12) format. |
4 (cstJKSFile) | The certificate store is the name of a Java Key Store (JKS) file containing certificates. Note: this store type is only available in Java. |
5 (cstJKSBlob) | The certificate store is a string (binary or base64-encoded) representing a certificate store in Java Key Store (JKS) format. Note: this store type is only available in Java. |
6 (cstPEMKeyFile) | The certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate. |
7 (cstPEMKeyBlob) | The certificate store is a string (binary or base64-encoded) that contains a private key and an optional certificate. |
8 (cstPublicKeyFile) | The certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate. |
9 (cstPublicKeyBlob) | The certificate store is a string (binary or base64-encoded) that contains a PEM- or DER-encoded public key certificate. |
10 (cstSSHPublicKeyBlob) | The certificate store is a string (binary or base64-encoded) that contains an SSH-style public key. |
11 (cstP7BFile) | The certificate store is the name of a PKCS7 file containing certificates. |
12 (cstP7BBlob) | The certificate store is a string (binary) representing a certificate store in PKCS7 format. |
13 (cstSSHPublicKeyFile) | The certificate store is the name of a file that contains an SSH-style public key. |
14 (cstPPKFile) | The certificate store is the name of a file that contains a PPK (PuTTY Private Key). |
15 (cstPPKBlob) | The certificate store is a string (binary) that contains a PPK (PuTTY Private Key). |
16 (cstXMLFile) | The certificate store is the name of a file that contains a certificate in XML format. |
17 (cstXMLBlob) | The certificate store is a string that contains a certificate in XML format. |
18 (cstJWKFile) | The certificate store is the name of a file that contains a JWK (JSON Web Key). |
19 (cstJWKBlob) | The certificate store is a string that contains a JWK (JSON Web Key). |
21 (cstBCFKSFile) | The certificate store is the name of a file that contains a BCFKS (Bouncy Castle FIPS Key Store). Note: this store type is only available in Java and .NET. |
22 (cstBCFKSBlob) | The certificate store is a string (binary or base64-encoded) representing a certificate store in BCFKS (Bouncy Castle FIPS Key Store) format. Note: this store type is only available in Java and .NET. |
23 (cstPKCS11) | The certificate is present on a physical security key accessible via a PKCS11 interface.
To use a security key the necessary data must first be collected using the CertMgr component. The ListStoreCertificates method may be called after setting CertStoreType to cstPKCS11, CertStorePassword to the PIN, and CertStore to the full path of the PKCS11 dll. The certificate information returned in the CertList event's CertEncoded parameter may be saved for later use. When using a certificate, pass the previously saved security key information as the Store and set StorePassword to the PIN. Code Example: SSH Authentication with Security Key
|
99 (cstAuto) | The store type is automatically detected from the input data. This setting may be used with both public and private keys and can detect any of the supported formats automatically. |
SSLCertSubject Property (OFXBatch Component)
This is the subject of the certificate used for client authentication.
Syntax
property SSLCertSubject: String read get_SSLCertSubject write set_SSLCertSubject;
Default Value
''
Remarks
This is the subject of the certificate used for client authentication.
This property must be set after all other certificate properites are set. When this property is set, a search is performed in the current certificate store certificate with matching subject.
If a matching certificate is found, the property is set to the full subject of the matching certificate.
If an exact match is not found, the store is searched for subjects containing the value of the property.
If a match is still not found, the property is set to an empty string, and no certificate is selected.
The special value "*" picks a random certificate in the certificate store.
The certificate subject is a comma separated list of distinguished name fields and values. For instance "CN=www.server.com, OU=test, C=US, E=support@nsoftware.com". Common fields and their meanings are displayed below.
Field | Meaning |
CN | Common Name. This is commonly a host name like www.server.com. |
O | Organization |
OU | Organizational Unit |
L | Locality |
S | State |
C | Country |
E | Email Address |
If a field value contains a comma it must be quoted.
SSLProvider Property (OFXBatch Component)
This specifies the SSL/TLS implementation to use.
Syntax
property SSLProvider: TiboTSSLProviders read get_SSLProvider write set_SSLProvider;
TiboTSSLProviders = ( sslpAutomatic, sslpPlatform, sslpInternal );
Default Value
sslpAutomatic
Remarks
This property specifies the SSL/TLS implementation to use. In most cases the default value of 0 (Automatic) is recommended and should not be changed. When set to 0 (Automatic) the component will select whether to use the platform implementation or the internal implementation depending on the operating system as well as the TLS version being used.
Possible values are:
0 (sslpAutomatic - default) | Automatically selects the appropriate implementation. |
1 (sslpPlatform) | Uses the platform/system implementation. |
2 (sslpInternal) | Uses the internal implementation. |
In most cases using the default value (Automatic) is recommended. The component will select a provider depending on the current platform.
When Automatic is selected, on Windows the component will use the platform implementation. On Linux/macOS the component will use the internal implementation. When TLS 1.3 is enabled via SSLEnabledProtocols the internal implementation is used on all platforms.
SSLServerCertEncoded Property (OFXBatch Component)
This is the certificate (PEM/base64 encoded).
Syntax
property SSLServerCertEncoded: String read get_SSLServerCertEncoded; property SSLServerCertEncodedB: TBytes read get_SSLServerCertEncodedB;
Default Value
''
Remarks
This is the certificate (PEM/base64 encoded). This property is used to assign a specific certificate. The Store and Subject properties also may be used to specify a certificate.
When Encoded is set, a search is initiated in the current Store for the private key of the certificate. If the key is found, Subject is updated to reflect the full subject of the selected certificate; otherwise, Subject is set to an empty string.
This property is read-only and not available at design time.
Timeout Property (OFXBatch Component)
A timeout for the component.
Syntax
property Timeout: Integer read get_Timeout write set_Timeout;
Default Value
60
Remarks
If the Timeout property is set to 0, all operations will run uninterrupted until successful completion or an error condition is encountered.
If Timeout is set to a positive value, the component will wait for the operation to complete before returning control.
The component will use DoEvents to enter an efficient wait loop during any potential waiting period, making sure that all system events are processed immediately as they arrive. This ensures that the host application does not "freeze" and remains responsive.
If Timeout expires, and the operation is not yet complete, the component raises an exception.
Please note that by default, all timeouts are inactivity timeouts, i.e. the timeout period is extended by Timeout seconds when any amount of data is successfully sent or received.
The default value for the Timeout property is 60 seconds.
Config Method (OFXBatch 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.
PostRequest Method (OFXBatch Component)
Submits a batch of requests to an OFX server through a single connection.
Syntax
procedure PostRequest();
Remarks
This function generates the Signon and multiple requests page, submits it to the financial institution via secure HTTPS Post, and receives the multiple responses stored in OFXBatchItems property.
To create the batch of requests, first you will to create instances of the corresponding components to request type such as BankStatement, CCStatement, InvStatement, or FIProfile. Then, build the OFX request for each component used.
Finally, set the Request array property to each OFXRequest of the corresponding component.
When PostRequest is called, the server response will be returned in Response array property, ready to be retrieved by each individual component.
ReadOFXDataFile Method (OFXBatch Component)
Reads an OFX response from a file.
Syntax
procedure ReadOFXDataFile(FileName: String);
Remarks
This method reads a previously recorded OFX response from a file, including HTTP and OFX headers.
The following read-only properties are populated as a result of parsing the data file:
Reset Method (OFXBatch Component)
Reset the internal state of the component and all properties to their default values.
Syntax
procedure Reset();
Remarks
The Reset method does not have any parameters and does not return any value.
WriteOFXDataFile Method (OFXBatch Component)
Writes the OFX response sent by the server to a file.
Syntax
procedure WriteOFXDataFile(FileName: String);
Remarks
This method records the entire OFX response, including HTTP and OFX headers to a file. This file can later be read and parsed by the ReadOFXDataFile method as though it were a live response.
ConnectionStatus Event (OFXBatch Component)
This event is fired to indicate changes in the connection state.
Syntax
type TConnectionStatusEvent = procedure ( Sender: TObject; const ConnectionEvent: String; StatusCode: Integer; const Description: String ) of Object;
property OnConnectionStatus: TConnectionStatusEvent read FOnConnectionStatus write FOnConnectionStatus;
Remarks
The ConnectionStatus event is fired when the connection state changes: for example, completion of a firewall or proxy connection or completion of a security handshake.
The ConnectionEvent parameter indicates the type of connection event. Values may include the following:
Firewall connection complete. | |
Secure Sockets Layer (SSL) or S/Shell handshake complete (where applicable). | |
Remote host connection complete. | |
Remote host disconnected. | |
SSL or S/Shell connection broken. | |
Firewall host disconnected. |
Error Event (OFXBatch 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. Normally the component raises an exception.
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.
SSLServerAuthentication Event (OFXBatch Component)
Fired after the server presents its certificate to the client.
Syntax
type TSSLServerAuthenticationEvent = procedure ( Sender: TObject; CertEncoded: String; CertEncodedB: TBytes; const CertSubject: String; const CertIssuer: String; const Status: String; var Accept: Boolean ) of Object;
property OnSSLServerAuthentication: TSSLServerAuthenticationEvent read FOnSSLServerAuthentication write FOnSSLServerAuthentication;
Remarks
This event is where the client can decide whether to continue with the connection process or not. The Accept parameter is a recommendation on whether to continue or close the connection. This is just a suggestion: application software must use its own logic to determine whether to continue or not.
When Accept is False, Status shows why the verification failed (otherwise, Status contains the string "OK"). If it is decided to continue, you can override and accept the certificate by setting the Accept parameter to True.
SSLStatus Event (OFXBatch Component)
Shows the progress of the secure connection.
Syntax
type TSSLStatusEvent = procedure ( Sender: TObject; const Message: String ) of Object;
property OnSSLStatus: TSSLStatusEvent read FOnSSLStatus write FOnSSLStatus;
Remarks
The event is fired for informational and logging purposes only. Used to track the progress of the connection.
Firewall Type
This is the firewall the component will connect through.
Remarks
When connecting through a firewall, this type is used to specify different properties of the firewall, such as the firewall Host and the FirewallType.
Fields
AutoDetect Boolean |
This property tells the component whether or not to automatically detect and use firewall system settings, if available.
|
||||||||||
FirewallType TiboFirewallTypes |
This property determines the type of firewall to connect through. The applicable values are as follows:
|
||||||||||
Host String |
This property contains the name or IP address of firewall (optional). If a Host is given, the requested connections will be authenticated through the specified firewall when connecting. If this property is set to a Domain Name, a DNS request is initiated. Upon successful termination of the request, this property is set to the corresponding address. If the search is not successful, the component raises an exception. |
||||||||||
Password String |
This property contains a password if authentication is to be used when connecting through the firewall. If Host is specified, the User and Password properties are used to connect and authenticate to the given firewall. If the authentication fails, the component raises an exception. |
||||||||||
Port Integer |
This property contains the transmission control protocol (TCP) port for the firewall Host. See the description of the Host property for details. Note: This property is set automatically when FirewallType is set to a valid value. See the description of the FirewallType property for details. |
||||||||||
User String |
This property contains a user name if authentication is to be used connecting through a firewall. If the Host is specified, this property and Password properties are used to connect and authenticate to the given Firewall. If the authentication fails, the component raises an exception. |
Constructors
constructor Create();
OFXBatchItem Type
This type corresponds to a single OFX batch item in the list of OFX batch items.
Remarks
OFXBatchItem objects are used when adding new items in the current OFX, or when listing OFX batch items (if any) returned by the FI OFX server (when the corresponding methods: PostRequest, ReadOFXDataFile, or WriteOFXDataFile are called).
Fields
Request String |
OFX request aggregate. The Request is obtained by setting it to a OFXRequest aggregate of a component that corresponds to that request type. For example:
Message sets will/must appear in the following order in the batch request sent to the server: Signon, Signup, Bank statement, Intrabank funds transfers, Credit card statements, Loan statements, Investment statements, Interbank funds transfers, and FI Profile, regardless of their order while populating the OFXBatchItems. In the server response, the message sets will be returned in the server response in the same order. |
||||||||||||||||||||
RequestType String |
The type of OFX request included in the batch. Request types supported by OFXBatch component are: Account Info, Bank, Credit Card, Loan, and Investment statement download, Intrabank and Interbank Transfer, Bill Pay, and FI Profile. The support for these requests depend whether the FI OFX server supports that request type and whether they allow it to be part of a batch request. Possible values and their meanings are as follows:
|
||||||||||||||||||||
RequestUID String |
The current batch item's unique transaction ID. The value in Response is parsed out of the server's response to the batch and matched to the appropriate original Request using by matching the response UID to the RequestUID. |
||||||||||||||||||||
Response String |
The OFX response aggregate. This string represents the OFX response aggregate for the current Request. When the OFXBatch is posted, the Response property will be populated automatically with the server's response to the Request. For example, if the batch request consisted of BankStatement, CCStatement and FIProfile, such as:
Upon successful server response, the OFXResponse aggregate of the corresponding component should be set (in the same order as they were included in the batch request), for example:
Properties of each component are now populated and ready for retrieval. |
Constructors
constructor Create();
Proxy Type
This is the proxy the component will connect to.
Remarks
When connecting through a proxy, this type is used to specify different properties of the proxy, such as the Server and the AuthScheme.
Fields
AuthScheme TiboProxyAuthSchemes |
This property is used to tell the component which type of authorization to perform when connecting to the proxy. This is used only when the User and Password properties are set. AuthScheme should be set to authNone (3) when no authentication is expected. By default, AuthScheme is authBasic (0), and if the User and Password properties are set, the component will attempt basic authentication. If AuthScheme is set to authDigest (1), digest authentication will be attempted instead. If AuthScheme is set to authProprietary (2), then the authorization token will not be generated by the component. Look at the configuration file for the component being used to find more information about manually setting this token. If AuthScheme is set to authNtlm (4), NTLM authentication will be used. For security reasons, setting this property will clear the values of User and Password. |
||||||||
AutoDetect Boolean |
This property tells the component whether or not to automatically detect and use proxy system settings, if available. The default value is False.
|
||||||||
Password String |
This property contains a password if authentication is to be used for the proxy. If AuthScheme is set to Basic Authentication, the User and Password are Base64 encoded and the proxy authentication token will be generated in the form Basic [encoded-user-password]. If AuthScheme is set to Digest Authentication, the User and Password properties are used to respond to the Digest Authentication challenge from the server. If AuthScheme is set to NTLM Authentication, the User and Password properties are used to authenticate through NTLM negotiation. |
||||||||
Port Integer |
This property contains the Transmission Control Protocol (TCP) port for the proxy Server (default 80). See the description of the Server property for details. |
||||||||
Server String |
If a proxy Server is given, then the HTTP request is sent to the proxy instead of the server otherwise specified. If the Server property is set to a domain name, a DNS request is initiated. Upon successful termination of the request, the Server property is set to the corresponding address. If the search is not successful, an error is returned. |
||||||||
SSL TiboProxySSLTypes |
This property determines when to use a Secure Sockets Layer (SSL) for the connection to the proxy. The applicable values are as follows:
|
||||||||
User String |
This property contains a user name, if authentication is to be used for the proxy. If AuthScheme is set to Basic Authentication, the User and Password are Base64 encoded and the proxy authentication token will be generated in the form Basic [encoded-user-password]. If AuthScheme is set to Digest Authentication, the User and Password properties are used to respond to the Digest Authentication challenge from the server. If AuthScheme is set to NTLM Authentication, the User and Password properties are used to authenticate through NTLM negotiation. |
Constructors
constructor Create();
constructor Create(valServer: String; valPort: Integer);
constructor Create(valServer: String; valPort: Integer; valUser: String; valPassword: String);
Config Settings (OFXBatch 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.
XML Config Settings | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CacheContent: If true, the original XML is saved in a buffer.This config controls whether or not the component retains the entire original XML in a buffer. This is used to retain the original XML as opposed to returning generated XML after parsing. The default value is true. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Charset: Specifies the charset used when encoding data.This setting specifies the character set used when encoding data. This value will also be used when creating the XMLDeclaration. The default value is "utf-8". | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EOL:
The characters to use for separating lines.If specified, the component will format the output XML, using the specified characters to
separate multiple lines for nested XML elements. The default value is CRLF ('#13#10')
.
This option should be combined with Indent for full effect. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ErrorOnEmptyAttr: If true, passing an invalid attribute to the Attr method will throw an exception.If an invalid attribute name is passed into the GetAttr method, the method will return with an empty string if this is set to false, otherwise an exception is thrown. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ExtraNameChars:
Extra characters for the parser to consider as name characters.Normally, the parser considers only the following characters as
part of an XML identifier: 'A' through 'Z', 'a' through 'z',
'0' through '9', and '.', '-', '_', ':'.
If you would like any other characters to be considered as name characters, you may set them as a string into this property. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ExtraSpaceChars:
Extra characters for the parser to consider as white space.Normally, the parser considers only the following characters as
white space: ' ' (space), '\t' (tab), '\ n' (newline), '\r' (carriage
return), '\f' (form feed), and '\v' (vertical tab).
If you would like any other characters to be considered as white space, you may set them as a string into this property. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FlushOnEOL: If set, the parser flushes its text buffer after every line of text.The FlushOnEOL property controls whether Characters events are fired for every line of the input text stream or not. Normally lines are buffered internally and delivered in batches, but if the FlushOnEOL flag is set, then a Characters event is fired for each line. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IgnoreBadAttributePrefixes: If true, bad (unknown) attribute prefixes are ignored.Normally a trappable error is generated when an unknown attribute prefix is encountered. This setting suppresses the error. The default value is True. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IgnoreBadElementPrefixes: If true, bad (unknown) element prefixes are ignored.Normally a trappable error is generated when an unknown element prefix is encountered. This setting suppresses the error. The default value is True. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IncludeElementPrefix:
Whether to include the prefix in the element name.This setting specifies whether to include the element prefix in the Element parameter of the StartElement and EndElement
events.
If False (default) and Validate is set to False the prefix is included in the Element parameter. For instance: ds:DigestMethod If True and Validate is set to False the prefix is not included in the Element parameter. For instance: DigestMethod This setting is only applicable when Validate is False. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IncludeXMLDeclaration:
Whether to include the XML declaration when writing XML.This setting specifies whether the XML declaration is included in the output XML when
writing XML. When set to True (default) the XML declaration will be included above
any user specified XML. For instance:
<?xml version="1.0" encoding="utf-8" standalone="yes" ?> ... |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Indent:
The characters to use for each indentation level.If specified, the component will format the output XML, using the specified characters to
denote each indentation level for nested XML elements.
This option should be combined with EOL for full effect. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Offset:
Current offset of the document being parsed.This property is useful for determining the location of
possible XML errors in the document.
Offset values start at 1. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PreserveWhitespace: If true, leading and trailing whitespace in element text is preserved.Normally the leading and trailing whitespace from an element's text is trimmed. When this property is set to true, this leading and trailing whitespace is preserved. The default value is false. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
QuoteChar: Quote character to use for attribute values.By default, the component will use double quotes around attribute values. This property can be used to specify a different character such as a single quote. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
StringProcessingOptions:
Defines options to use when processing string values.This setting determines what additional processing is performed on string values fired through the Characters event..
Note: This only applies when BuildDOM is False. By default no additional processing is performed and the string is returned as is from the document. Strings may also be XML unescaped. Possible values are:
For instance, when set to 0 the following text may be fired through the Characters event: &"<> When set to 1 the following text would be fired through the Characters event: &'<> |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Base Config Settings | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BuildInfo: Information about the product's build.When queried, this setting will return a string containing information about the product's build. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CodePage:
The system code page used for Unicode to Multibyte translations.The default code page is Unicode UTF-8 (65001).
The following is a list of valid code page identifiers:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LicenseInfo:
Information about the current license.When queried, this setting will return a string containing information about the license this instance of a component is using. It will return the following information:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MaskSensitive:
Whether sensitive data is masked in log messages.In certain circumstances it may be beneficial to mask sensitive data, like passwords, in log messages. Set this to True to mask sensitive data. The default is True.
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. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
UseInternalSecurityAPI:
Tells the component whether or not to use the system security libraries or an internal implementation.
When set to False, the component will use the system security libraries by default to perform cryptographic functions where applicable.
Setting this 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 (OFXBatch Component)
XML Errors
101 Invalid attribute index. | |
102 No attributes available. | |
103 Invalid namespace index. | |
104 No namespaces available. | |
105 Invalid element index. | |
106 No elements available. | |
107 Attribute does not exist. | |
201 Unbalanced element tag. | |
202 Unknown element prefix (can't find namespace). | |
203 Unknown attribute prefix (can't find namespace). | |
204 Invalid XML markup. | |
205 Invalid end state for parser. | |
206 Document contains unbalanced elements. | |
207 Invalid XPath. | |
208 No such child. | |
209 Top element does not match start of path. | |
210 DOM tree unavailable (set BuildDOM to true and reparse). | |
302 Can't open file. | |
401 Invalid XML would be generated. | |
402 An invalid XML name has been specified. |