catch (err) logMessage("ERROR", "Failed for " + acct + " : " + err.message)
var intAmt = calculateInterest(50000, 8.5, 30) print "Interest: " + intAmt Functions are — can be assigned to variables or passed as arguments (limited support). 7. File I/O & External Calls # Read file var lines = readFile("/data/input.txt") Write file writeFile("/data/output.txt", "Process completed") Call external REST API (Finacle 10+) var response = callAPI("GET", "https://api.example.com/rate", {}) 8. Error Handling try var bal = getAccountBalance("INVALID_ACCT") catch (err) print "Error code: " + err.code print "Message: " + err.message exit 1 finacle scripting syntax
for each acct in acctList try var balance = getAccountBalance(acct) if (balance > 0) var interest = calculateInterest(balance, rate, 30) postTransaction("CREDIT", acct, interest) logMessage("INFO", "Interest credited to " + acct) catch (err) logMessage("ERROR", "Failed for " + acct
| Command | Purpose | Example | |---------|---------|---------| | getCustomerDetails(custId) | Fetch customer info | var cust = getCustomerDetails("C12345") | | getAccountBalance(acctId) | Get balance | var bal = getAccountBalance("SAV001") | | postTransaction(...) | Post a transaction | postTransaction("DEBIT", "SAV001", 1000) | | callService(serviceName, params) | Invoke Finacle service | callService("InterestCalculation", "acctId":"SAV001") | | logMessage(level, text) | Log (INFO/WARN/ERROR) | logMessage("ERROR", "Balance insufficient") | | sleep(ms) | Pause execution | sleep(2000) | 6. Functions function calculateInterest(principal, rate, days) var interest = (principal * rate * days) / 36500 return interest 0) var interest = calculateInterest(balance