Giter Club home page Giter Club logo

stdxref's Introduction

STDXREF (Standalone Version)

The Standard Cross Reference is a simple tool that provides a centralized container for:

  • Data elements that have a finite number of valid values, which need to be validated before being written to an application database.
  • Descriptions, codes or numeric values associated with those data elements, which need to be looked up by an application program.
  • Random pieces of information that control the behavior of an application.

Many companies have adopted a “table file” or “code file” over the years as a means to consolidate random pieces of information or groups of related pieces. However many of these files contained multiple record layouts which often meant hard coding Input specs into RPG. And since the “table file” still had to be read by RPG, a significant amount of non-productive code was required by application programs in order to use it…such as File specs, key lists, chain operations and no-hit handling.

STDXREF was born in 2006, during database modernization and refit of a line-of-business application rooted in the System/36 environment, replete with compile-time tables and prevalent hard coding in the RPG36 code. Plus, many of these tables were present in multiple programs, hence a change to one table meant modifications to multiple programs (an example of Technical Debt). The refit also included a migration to ILE-RPG.

Implementing STDXREF meant eliminating countless instances of hard coding and compile time tables from the RPG code, entering data from the table entries into the STDXREF file, and replacing legacy RPG lookup operations with sleek function calls that fit new freeform RPG paradigm. It also provided a means for authorized users to update the reference tables without having to involve IT for RPG edits and compiles.

Theoretically, you could provide an individual data base file/table for each type of data relationship contained in an RPG compile-time table, but that might require a maintenance program and a listing query for each one. Plus the RPG application programs would still require a File spec (or SQL SELECT) for each table.

Using STDXREF instead provides these advantages:

  • Single point of maintenance.
  • Single point of retrieval (STDXREFIOP functions).
  • Single point of high availability replication (table STDXREF).
  • Add to an application program with a single /COPY statement or SQL SET statement.
  • Option for multiple instances of STDXREF on the same system.

Now that STDXREF is on GitHub, we encourage you to download and deploy it for your internal applications. Being open source, it is still a work in progress. Please consider submitting suggestions for its improvement or even contributing your technical expertise to help us improve the functionality.

Note that STDXREF uses Temporal Table versioning if your OS release supports it. An alternate version of STDXREF for Inuendo databases is under construction and will take full advantage of Inuendo’s self-journaling and audit trail features. This will appear on GitHub when it is released.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.