210 lines
7.2 KiB
Plaintext
210 lines
7.2 KiB
Plaintext
Title: ProcessAccountLinkUpdateLambda Component
|
||
Metadata:
|
||
• module: Account
|
||
• component: ProcessAccountLinkUpdateLambda
|
||
• type: component
|
||
• domain: Account Management
|
||
• system: Oracle Fusion
|
||
Content:
|
||
Purpose: AWS Lambda function that updates Oracle customer account descriptions with linked external account numbers using standardized HFA prefix format (see HFA Account Description Prefix Format Rule).
|
||
Processing Logic:
|
||
• Accepts AccountLinkUpdateDto containing ExistingCustomer and NewLinkedAccountNumber
|
||
• Accesses first account in ExistingCustomer.Accounts[0]
|
||
• Updates AccountDescription field using HFA prefix
|
||
• Returns modified OracleCustomer object
|
||
Key Rules:
|
||
• Always updates first account in collection
|
||
• Lambda configuration: 256MB memory, 30-second timeout
|
||
• Mutates input object in place
|
||
Example Questions:
|
||
• How does the system link external accounts to Oracle customers?
|
||
• Which Lambda updates Oracle customer account descriptions?
|
||
• What format is used for linked account descriptions in Oracle?
|
||
|
||
Title: ProcessRetailCustomerNumberFromISeriesLambda Component
|
||
Metadata:
|
||
• module: Account
|
||
• component: ProcessRetailCustomerNumberFromISeriesLambda
|
||
• type: component
|
||
• domain: Account Management
|
||
• system: iSeries
|
||
Content:
|
||
Purpose: AWS Lambda function that extracts retail customer numbers from iSeries legacy account key identifiers (see iSeries Account Key Substring Extraction Rule).
|
||
Processing Logic:
|
||
• Accepts RetailCustomerNumberRequest containing iSeriesAccountKey
|
||
• Applies substring extraction: positions 5–11, length 7
|
||
• Returns 7-character retail customer number string
|
||
Key Rules:
|
||
• Zero-based indexing: start at position 5
|
||
• Requires minimum key length of 12 characters
|
||
• Lambda configuration: 256MB memory, 30-second timeout
|
||
• No input validation implemented
|
||
Example Questions:
|
||
• How do you extract retail customer numbers from iSeries keys?
|
||
• Which Lambda processes iSeries account identifiers?
|
||
• What is the retail customer number extraction logic?
|
||
|
||
Title: AccountLinkUpdateDto Data Transfer Object
|
||
Metadata:
|
||
• module: Account
|
||
• component: AccountLinkUpdateDto
|
||
• type: component
|
||
• domain: Account Management
|
||
• system: Oracle Fusion
|
||
Content:
|
||
Purpose: DTO that encapsulates customer and account linking information for account update operations.
|
||
Processing Logic:
|
||
• Contains ExistingCustomer (OracleCustomer)
|
||
• Contains NewLinkedAccountNumber (string)
|
||
• Simple property container for Lambda input
|
||
Key Rules:
|
||
• Located in Accounting.Orchestration.Account.Dto namespace
|
||
• References OracleCustomer model
|
||
• No validation logic
|
||
Example Questions:
|
||
• What data is needed to link an account to an Oracle customer?
|
||
• Which DTO is used for account linking operations?
|
||
• What properties does AccountLinkUpdateDto contain?
|
||
|
||
Title: RetailCustomerNumberRequest Input Model
|
||
Metadata:
|
||
• module: Account
|
||
• component: RetailCustomerNumberRequest
|
||
• type: component
|
||
• domain: Account Management
|
||
• system: iSeries
|
||
Content:
|
||
Purpose: Input model for retail customer number extraction Lambda.
|
||
Processing Logic:
|
||
• Single property: iSeriesAccountKey (string)
|
||
• Passed directly to ProcessRetailCustomerNumberFromISeriesLambda
|
||
Key Rules:
|
||
• Must contain complete iSeries account key, minimum 12 characters
|
||
• Property uses camelCase
|
||
• No validation implemented
|
||
Example Questions:
|
||
• What input does the retail customer number extraction Lambda expect?
|
||
• How is the iSeries account key passed to the extraction function?
|
||
• What is the structure of RetailCustomerNumberRequest?
|
||
|
||
Title: HFA Account Description Prefix Format Rule
|
||
Metadata:
|
||
• module: Account
|
||
• component: N/A
|
||
• type: rule
|
||
• domain: Account Management
|
||
• system: Oracle Fusion
|
||
Content:
|
||
Purpose: Standardized format for Oracle account descriptions when linking external accounts.
|
||
Processing Logic:
|
||
• Prefix: "HFA_"
|
||
• Format template: HFA_{LinkedAccountNumber}
|
||
• Applied during ProcessAccountLinkUpdateLambda
|
||
Key Rules:
|
||
• Prefix is underscore-delimited
|
||
• Overwrites Accounts[0].AccountDescription
|
||
• No validation on linked account number format
|
||
Example Questions:
|
||
• What format is used for linked account descriptions?
|
||
• What does the HFA_ prefix indicate?
|
||
• How are external account numbers stored in Oracle customer records?
|
||
|
||
Title: iSeries Account Key Substring Extraction Rule
|
||
Metadata:
|
||
• module: Account
|
||
• component: N/A
|
||
• type: rule
|
||
• domain: Account Management
|
||
• system: iSeries
|
||
Content:
|
||
Purpose: Defines extraction logic for retail customer numbers from iSeries keys.
|
||
Processing Logic:
|
||
• Start: index 5 (zero-based)
|
||
• Length: 7 characters
|
||
• Method: Substring(5, 7)
|
||
• Returns characters at positions 5–11 inclusive
|
||
Key Rules:
|
||
• Input key must have minimum length 12
|
||
• Fixed-position extraction
|
||
• Case-sensitive
|
||
Example Questions:
|
||
• How many characters are in an iSeries retail customer number?
|
||
• At what position does the customer number appear?
|
||
• What substring operation extracts customer numbers from iSeries keys?
|
||
|
||
Title: Account Linking Workflow
|
||
Metadata:
|
||
• module: Account
|
||
• component: N/A
|
||
• type: workflow
|
||
• domain: Account Management
|
||
• system: Oracle Fusion
|
||
Content:
|
||
Purpose: Process for linking external account numbers to Oracle customer records.
|
||
Processing Logic:
|
||
|
||
Retrieve ExistingCustomer
|
||
Obtain NewLinkedAccountNumber
|
||
Package into AccountLinkUpdateDto
|
||
Invoke ProcessAccountLinkUpdateLambda
|
||
Lambda updates Accounts[0].AccountDescription with HFA prefix
|
||
Return modified customer
|
||
Persist to Oracle
|
||
Key Rules:
|
||
• Only first account updated
|
||
• Overwrites previous description
|
||
• No validation
|
||
Example Questions:
|
||
• What is the process for linking external accounts?
|
||
• How does account linking modify Oracle data?
|
||
• Which account in collection receives the linked number?
|
||
|
||
Title: iSeries Customer Number Extraction Workflow
|
||
Metadata:
|
||
• module: Account
|
||
• component: N/A
|
||
• type: workflow
|
||
• domain: Account Management
|
||
• system: iSeries
|
||
Content:
|
||
Purpose: Process for extracting retail customer numbers from iSeries keys for lookup.
|
||
Processing Logic:
|
||
|
||
Receive iSeries account key
|
||
Package into RetailCustomerNumberRequest
|
||
Invoke ProcessRetailCustomerNumberFromISeriesLambda
|
||
Lambda executes Substring(5,7)
|
||
Return 7-character customer number
|
||
Use extracted number for downstream lookup
|
||
Key Rules:
|
||
• Single-step transformation
|
||
• Stateless, no caching
|
||
• No validation
|
||
Example Questions:
|
||
• How are retail customer numbers obtained from iSeries?
|
||
• What workflow extracts customer identifiers from legacy keys?
|
||
• How many steps are in the extraction process?
|
||
|
||
Title: iSeries Account Key Structure Concept
|
||
Metadata:
|
||
• module: Account
|
||
• component: N/A
|
||
• type: concept
|
||
• domain: Account Management
|
||
• system: iSeries
|
||
Content:
|
||
Purpose: Defines structure of iSeries legacy account keys for customer number extraction.
|
||
Processing Logic:
|
||
• Positions 0–4: prefix/qualifier
|
||
• Positions 5–11: retail customer number
|
||
• Positions 12+: optional suffix/metadata
|
||
• Fixed-position format, no delimiters
|
||
• Minimum key length: 12
|
||
Key Rules:
|
||
• Customer number always at positions 5–11
|
||
• Structure consistent across all iSeries keys
|
||
Example Questions:
|
||
• What is the structure of an iSeries account key?
|
||
• Where is the customer number located?
|
||
• How long is an iSeries account key identifier?
|