Host Account
- class q2_sdk.hq.db.host_account.HostAccountRow[source]
Bases:
RepresentationRowBase
-
HostAccountID:
IntElement
= 'HostAccountID'
-
AccountNumberInternal:
StringElement
= 'AccountNumberInternal'
-
AccountNumberExternal:
StringElement
= 'AccountNumberExternal'
-
ProductID:
IntElement
= 'ProductID'
-
ProductName:
StringElement
= 'ProductName'
-
ProductNickName:
StringElement
= 'ProductNickName'
-
AccountDesc:
StringElement
= 'AccountDesc'
-
CIFInternal:
StringElement
= 'CIFInternal'
-
CIFExternal:
StringElement
= 'CIFExternal'
-
DefaultPwd:
StringElement
= 'DefaultPwd'
-
DataAsOfDate:
StringElement
= 'DataAsOfDate'
-
BranchID:
IntElement
= 'BranchID'
-
SkipBalanceCheck:
BoolElement
= 'SkipBalanceCheck'
-
ABA:
StringElement
= 'ABA'
-
IsExternalAccount:
BoolElement
= 'IsExternalAccount'
-
AccountInfo:
StringElement
= 'AccountInfo'
-
LastStatusChange:
StringElement
= 'LastStatusChange'
-
AccountStatusID:
IntElement
= 'AccountStatusID'
-
LastHistoryDate:
StringElement
= 'LastHistoryDate'
-
HostAccountID:
- class q2_sdk.hq.db.host_account.HostAccountCustomerRow[source]
Bases:
RepresentationRowBase
-
CustomerID:
IntElement
= 'CustomerID'
-
UserID:
IntElement
= 'UserID'
-
HostAccountID:
IntElement
= 'HostAccountID'
-
AccountNumberInternal:
StringElement
= 'AccountNumberInternal'
-
AccountNumberExternal:
StringElement
= 'AccountNumberExternal'
-
ProductID:
IntElement
= 'ProductID'
-
ProductName:
StringElement
= 'ProductName'
-
AccountDesc:
StringElement
= 'AccountDesc'
-
CIFInternal:
StringElement
= 'CIFInternal'
-
CIFExternal:
StringElement
= 'CIFExternal'
-
DataAsOfDate:
StringElement
= 'DataAsOfDate'
-
ProductTypeName:
StringElement
= 'ProductTypeName'
-
ABA:
StringElement
= 'ABA'
-
IsExternalAccount:
BoolElement
= 'IsExternalAccount'
-
CustomerID:
- class q2_sdk.hq.db.host_account.HostAccountCustomerWithProductRow[source]
Bases:
RepresentationRowBase
-
CustomerID:
IntElement
= 'CustomerID'
-
HostAccountID:
IntElement
= 'HostAccountID'
-
ProductName:
StringElement
= 'ProductName'
-
ProductID:
IntElement
= 'ProductID'
-
AccountStatus:
StringElement
= 'AccountStatus'
-
CustomerID:
- class q2_sdk.hq.db.host_account.UpdateAccountRightsParameters(hostAccountId, userId, can_view, can_deposit, can_withdraw)[source]
Bases:
object
UpdateAccountRightsParameters(hostAccountId: int, userId: int, can_view: bool, can_deposit: bool, can_withdraw: bool)
-
hostAccountId:
int
-
userId:
int
-
can_view:
bool
-
can_deposit:
bool
-
can_withdraw:
bool
-
hostAccountId:
- class q2_sdk.hq.db.host_account.ProductChangeParameters(host_account_id, old_product_id, new_product_id)[source]
Bases:
object
ProductChangeParameters(host_account_id: int, old_product_id: int, new_product_id: int)
-
host_account_id:
int
-
old_product_id:
int
-
new_product_id:
int
-
host_account_id:
- enum q2_sdk.hq.db.host_account.ProductChangeStatus(value)[source]
Bases:
Enum
Valid values are as follows:
- Ok = <ProductChangeStatus.Ok: 'OK'>
- AllRecordsSkipped = <ProductChangeStatus.AllRecordsSkipped: 'AllRecordsSkipped'>
- PartialUpdate = <ProductChangeStatus.PartialUpdate: 'PartialUpdate'>
- class q2_sdk.hq.db.host_account.ProductChangeResults(result, successful_accounts, skipped_accounts)[source]
Bases:
object
ProductChangeResults(result: q2_sdk.hq.db.host_account.ProductChangeStatus, successful_accounts: list, skipped_accounts: list)
-
result:
ProductChangeStatus
-
successful_accounts:
list
-
skipped_accounts:
list
-
result:
- class q2_sdk.hq.db.host_account.HostAccount(logger, hq_credentials=None, ret_table_obj=None)[source]
Bases:
DbObject
Programmatic access to the Q2 database. Not as flexible as a true ORM, but takes the guesswork out of database schemas and ensures safety in the transactions.
- Parameters:
logger – Reference to calling request’s logger (self.logger in your extension)
hq_credentials (
Optional
[HqCredentials
]) – HQ Connectivity Information (Defaults to settings file)ret_table_obj (
Optional
[bool
]) – Flag to return list of LXML elements ifFalse
or TableRow objects from DB calls ifTrue
(Defaults to settings file)
- REPRESENTATION_ROW_CLASS
alias of
HostAccountRow
- async create(account_internal, account_external, product_id, cif, account_description, is_external=False)[source]
Note: this only works in the dev environment
- Return type:
list
[HostAccountRow
]
- async search_by_external_number(external_account_number)[source]
- Return type:
list
[HostAccountRow
]
- async search_by_internal_number(internal_account_number)[source]
- Return type:
list
[HostAccountRow
]
- async update_account_rights(parameters)[source]
Update the account rights for an account linked to a user. This only works for accounts explicitly linked to the user, and will not work for accounts linked by a cif.
- async get_customer_host_accounts(customer_ids)[source]
Retrieves multiple accounts associated to the customers in the list. For DB performance reason, the customer id list should be limited to 20
- Parameters:
customer_ids (
list
[int
]) – list of Q2_Customer.CustomerID <= 20- Return type:
list
[HostAccountCustomerRow
]
- async get_accounts_by_product(group_id, product_id=None)[source]
Searches a group of customers for accounts with a specific product id
- Parameters:
group_id (
int
) – Group to search [Q2_Group.GroupID]product_id (
Optional
[int
]) – Product ID of the target product [Q2_Product.ProductID]
- Return type:
- async change_account_product(account_changes)[source]
Changes the product of a list of accounts :type account_changes:
list
[ProductChangeParameters
] :param account_changes: list of ProductChangeParameters objects. :rtype:ProductChangeResults
:return: ProductChangeResults object