对批发 CBDC 示例应用程序进行故障排除
如果在中转过程中丢失数据,则可以手动输入帐户和令牌数据。
批发 CBDC 示例应用程序将账户和令牌数据存储在 Oracle Visual Builder 中的业务对象中。具体而言,帐户详细信息存储在 AccountStatus 业务对象中,令牌详细信息存储在 EarmarkingList 业务对象中。首次暂存应用程序时,这些业务对象为空。当您通过初始化令牌和创建帐户与应用程序交互时,数据将保存到这些业务对象。
如果再次暂存应用程序,并且未选择在暂存中保留现有数据,则会重置业务对象。这可能会导致业务对象与分类账之间的数据不匹配,进而导致应用程序出现故障。
您可以通过以下方法防止出现此问题:在重新暂存应用程序之前备份所有暂存数据,以及使用 Oracle Visual Builder 中的数据管理器工具在环境之间导出和导入业务对象数据。
如果在重新暂存应用程序时错误地选择使用干净数据库暂存应用程序或将暂存数据替换为开发数据,则必须通过完成以下步骤手动重新输入帐户和令牌详细信息。
- 使用批发 CBDC Postman 集合或机密批发 CBDC Postman 集合中的
getAllActiveAccounts和getAllSuspendedAccounts端点来获取有关网络中所有帐户的信息。在机密模式下,必须为每个组织单独调用这些端点,因为您只能按组织检索账户数据。编译结果以列出整个网络中的所有帐户。 - 按下表中所述填充
AccountStatus业务对象。AccountStatus 字段 源字段 说明 bankAccountIDaccount_idbankNameorg_idbankStatusActive如果信息来自getAllActiveAccounts端点,则为InActive(如果信息来自getAllSuspendedAccounts端点)。bankTokenIDtoken_idbankUserIDuser_idbankUserRolerole_name, non_account_role_name有关角色映射信息,请参见下表。 groupNameapplication_groupsuserRole有关角色映射信息,请参见下表。 customAccountId自定义账户 ID euserids与用户关联的注册 ID。使用逗号 (,) 分隔多个登记。 条件 值 role_name为空且non_account_role_name为空否 role_name为 NULL 且non_account_role_name=token_admin令牌管理 role_name为 NULL 且non_account_role_name=org_admin组织管理 role_name为 NULL 且non_account_role_name=token_auditor令牌审计者 role_name为 NULL 且non_account_role_name=org_auditor组织审核员 non_account_role_name为空且role_name不为空role_name的值 - 将
AccountStatus业务对象中的所有其他字段留空。 - 使用
CurrencyCodeDetails业务对象可获取有关令牌的信息,并用此信息填充EarmarkingList业务对象,如下表所述。您必须重新输入以前已初始化的所有令牌的信息。EarmarkingList 字段 源 说明 范例 currencyCodeCurrencyCodeDetails中的currencyName批发 CBDC 应用程序使用的令牌 ID 美元 currencyStringCurrencyCodeDetails中的currencyDesc批发 CBDC 应用程序使用的令牌说明 美国元 earmarkingString初始化令牌时输入的用途字段 [用户定义]