Best Practicies & Success Stories
Friday, 21. October 2016., 14:00
Often we find ourselves in a situation that, by working on a project , writing or upgrading code becomes too complicated, execution becomes slow and ultimately code becomes difficult to maintain. Adding certain functionality becomes adding additional procedures, functions or blocks in existing procedures or functions. which can be confusing.One of the ways to improve that is for different functionalities writing universal procedures or functions that will dynamically create a block of code using configuration tables.This paper describes an example of creating procedures and functions which were used as part of the module for matching address from various external systems with internal address code-book.Addresses from the external system are entered in an arbitrary manner (in a single string attached full address; separated street , city, ZIP code , etc . ) often without a unique identifier, so it was necessary to find the matching address in the code-book and assign it a unique identifier.Matching the addresses is done through various algorithms.The idea is to make a set of procedures, functions and configuration tables in the database so that adding new algorithm is actually making an entry in the configuration table.In this way is not necessary to write procedures or functions for each algorithm which also reduces the number of objects in the database.In addition to algorithms , it was necessary to make functions for evaluation and validation of the matched addresses which leads to indicator whether the addresses are automatically matched or these is need for additional decisions, or eventually be manually selected by operators.Calling and execution of these functions is also done via the configuration table and universal procedures.The final result was a module that can be used between any system that contain addresses and internal address code-book.