Making !T Work

Data → Information → Knowledge → Wisdom

Tsuite

 

The home of JAAT Solutions T-Suite

Here you will find information on T-Suite; the powerful tool that can read from any database and/or a spreadsheet and write to any database or spreadsheet at the same time.

VERSION 2.0 is NOW Available

 

The History of T-Suite

T-Suite grows from what could be called “a consultant’s nightmare,” which is an amusing way of referring to it but also a true representation of what the product-set represents. For the last two decades its principal creators have both been elbow-deep in the complex world of integrating data for business systems to meet business purposes, which is seldom as easy as it sounds. Both of us have suffered endlessly at the hands of wonderfully large systems that seem to have been designed specifically to frustrate end-users, mostly because our work generally boils down to trying to alleviate that suffering for our clients.

Neither of us can count on our hands anymore the number of times we have heard clients actually say the words, “We need to get these reports from our system.” And this is all too often said of systems that claim that to be their purpose. In the face of that, both of us have often resorted to deploying what might be thought of a crack-filler applications to bridge the chasms between promised and delivered performance of widely touted business systems. While we’re distinctly aware that often the gap isn’t actually an issue of bad design, just the nature of monolithic systems that may scale well but are not a particularly agile over the business cycles that impart real practical change to operational needs, the fact that really leaves its impression is how many well-run businesses suffer these gaps at a really fundamental level in this information systems.

T-Suite is really the generic answer to the problem that seems most common for people, which is how to make one system talk to another, usually so that the reporting is consistent and complete. Operational imperatives drive needs, and recognising this drove both of us to ask ourselves tough questions about why we seemed to be recreating the wheel so often, and occasionally doing it for the same clients a few years apart as the landscape of their fundamental heavy IT changed. Coming to the conclusion that the issue was a lack of generic tooling, we took the time on a job over a year ago to develop a framework for deploying the tools we often use in a packaged form that would eventually deliver more power to manage change to the end-users we serve. T-Suite represents that tooling, a generic framework that we have been able to extend with every new job that integrates almost anything thrown at it and significantly reduces the customisation efforts necessary to generate results for the people who depend on having their information available where they need it.

Subsequent changes to T-Suite raised the maturity level of what was certainly a mysterious expert tool, and the present incarnation can deliver a great deal of immediate value directly to its users with little real expertise required. Or, at the very least, little tool-specific expertise. If you know where to find your data, and where you want to put it, T-Suite makes that a task that is easy, reliable and uniform. And now, with Version 2 out of the gate, the product can fetch that data from more places and output it to more purposes than ever.

T-Suite Does What?!

At T-Suite’s inception she consisted of basically two elements: a bit named T-Loader, and a command line utility called T-Runner that was designed to be executed against T-Loader jobs by the Windows Task Scheduler. It was a simple UI (and not very pretty!), and a simple solution to a sometimes frustratingly complex problem. You could build a T-Loader job, and execute it manually or via the Task Scheduler, and it would take data from one data store and push it to another. It was a generic tool with a simple job, and it did it well…and it was shocking how many people who saw it work were stunned. It proved that as simple as that sounds, not many people had ever really got quite the same level of integration even with tools costing significantly more. They were either too complex, or too expensive, or both when the real business problem was often a simple one.

Why did T-Suite work so well to serve up small solutions for medium problems? Though there are technical explanations, the real explanation was, and remains, much simpler than a laundry list of technologies. T-Suite stunned people not only because it worked, but because it was so utterly generic its process was fathomable. People who were looking at their data and saying, “I need that data over there,” saw immediately that this solution was designed not to be a masterpiece of engineering so much as an answer to their needs. It was a business-driven solution to a business problem. T-Suite was designed from the bottom-up to do exactly what we, as consultants, were being asked to do – solve problems that existed today, in frameworks of systems that changed, but left gaps. A simple tool providing a simple answer to a simple question makes a lasting impression.

Over the year since T-Suite’s fledgling version, every project where we spotted generics (patterns that repeat) became a candidate for inclusion as a new tool-aspect for T-Suite. And in that time she grew to encompass a number of other features:

  • The ability to pull data from “flat files” (such as Excel, text and CSV, and even XML files);
  • The ability to schedule the unattended execution of jobs without Windows Task Scheduler (T-Scheduler);
  • The ability to not only watch jobs for errors, but correct them manually and resubmit only the failed elements (T-Watcher Error Manager);
  • The ability to pre-transform “flat file” data sources to provide cleaner input data for job execution before integrating it up-line (T-Transform);
  • The ability to batch jobs together to execute them not only in series, but contingent upon prior job successes or failures (T-Batch);
  • The ability to manually drag and drop “flat files” and execute a chosen job (again, with our without data transformation);
  • The ability to monitor file system locations (directories) for “flat files” of various types and execute a job (with or without transformation of the data) whenever new data sources appear; and
  • The ability to use many of the same utilities we use, as consultants, to explore the data integration options available when a systems integration task presents.

Yes, T-Suite does all those things right now, with a high degree of reliability, and with the kind of consistent value delivery that we have always strived to provide to clients. And it does it without having to redesign a wheel, or a widget, simply because the tooling was put together purposefully to provide business solutions to business problems.

The Anatomy of a T-Loader Job…

At its heart T-Suite is still about “jobs,” mostly getting them done. Its core is the T-Loader Job, which is a process execution template that a user can build with a step-based wizard (the user still needs to know what data goes where, and have some knowledge of the source and destinations). It sounds simple, and it ought to, but a lot of power is hidden in the process because of its connections throughout the elements of T-Suite.

T-Loader jobs can be described fairly simply:

T-Suite Anatomy 

Like all things useful, T-Suite sound simple because it is right. But like all things really useful, T‑Loader Jobs have a lot of hidden power, because if you really want to get a job done right the first time, you want it to get done right every time, on time, and with some real power. Hidden in even that basic process diagram are some powerful capabilities. T-Loader can pull data from almost any database (it serves up OLE DB, ODBC, and native SQL Server access points); it can pull data from “flat files” (XML, CSV, etc.) with pre-transformation of the data to make it behave as desired within context of the process; it can even split compound fields, alias field names, enforce basic data rules (make a field required, etc.); and it can ultimately pump out data into almost any data destination via SQL commands, or access to stored procedures that might exist inside the destination database. That means the full power of SQL is at the disposal of its users. There isn’t much it can’t do.

Of course, being only one small piece of the T-Suite family, T-Loader has even more additional benefits at its disposal, because you can execute the jobs it defines manually from the T-Loader interface, on a predetermined schedule via T-Scheduler, triggered by a file system event via T-Monitor, or just by dragging and dropping a valid source file on T-Launcher. And in every case the execution writes back its successes and failures for review, and can not only be watched by T-Watcher, but the T-Watcher Error Management User Interface allows end-users to fix and resubmit errors for execution. In essence, it is the core of an end-to-end execution solution for almost any data needs.

So the real anatomy of a T-Loader job could be envisioned as something like this…

T-Suite Parts 

And from that juncture…

T-Suite Execution 

Of course, because of the T-Batch facility of T-Suite you can also look upon T-Loader Jobs as a chain of jobs that can branch based upon prior job success or failure:

T-Batch 

Ultimately, T-Loader Jobs gain a flexibility from being part of T-Suite that makes them capable of meeting a vast array of real-world business needs with a minimum investment of time and effort.

The Parts of T-Suite

Of course, T-Suite is more than just T-Loader. Technically, it consists of several component parts:

  • T-Loader - Job Manager, which creates and manages “jobs” that tell the various component parts of the T-Suite product where to fetch data from, and where to push it to.
  • T-Batch – Job Batch Manager, which creates and manages “batches” of jobs that can be executed in an orderly manner, including with basic success/failure dependencies.
  • T-Transform – Script Manager, which creates and manages “transform scripts” that allow jobs to pre-transform CSV (comma separated value) files that act as data sources. (In fact the files do not have to be “comma” separated. Any old delimiter will do.)
  • T-Output – Flat File Generator, which will consume a data source with multiple tabular structures and can output any structured text form desired including XML with hierarchy. (It uses primitive templates to ensure maximum output control.)
  • T-Watcher – Job Error Manager, which creates and manages “watches” on job executions locally or remotely, allowing full review of any errors, and manual fixing of those errors for re-run.
  • T-Launcher - Job Launcher, which provides a tray icon and interface to launch file-based jobs with drag-and-drop.
  • T-Scheduler – Execution Manager, which runs a Windows service (T-Scheduler Windows Service) to schedule the unattended execution of jobs and batches based upon per-job/per-batch execution settings.
  • T-Monitor – Execution Manager, which runs a Windows service (T-Monitor Service) to watch directory locations for file creation and executes a file-source-based job whenever a matching file appears in that location.
  • T-Runner, a command line application that can execute jobs and batches directly at a command line prompt, from a shortcut, or from a Windows Task.

These all operate inside the same context, and are cross-aware so that all error and success feedback is centralised in the T-Suite Dashboard application (unless you desire remote watching via standalone T-Watcher, of course).

Applying T-Suite…

T-Suite was built to solve problems, specifically ones where business data just isn’t being delivered where it’s wanted. Anywhere that happens is a place where T-Suite matters, because that data ultimately matters. Whether using the product as a set-and-forget background process, or for ad-hoc jobs of one sort or another, or to provide something like structured XML to talk to other systems…with minimal expertise the job can get built, get done, and real business can happen.

 

Supported and tested environments

  • Comma separated Variable (CSV)
  • eXtensible Markup Language (XML)
  • Spreadsheet formats .xls and .xlsx. Can be generated by Microsoft Excel © or OpenOffice ©
  • ODBC Drivers
  • OLE DB Drivers
  • Microsoft SQL
  • Microsoft Access
  • Oracle
  • MySql
  • Postgres
  • Firebird
  • DB/2
  • iSeries

Click HERE to see T-Suite in action.

Click HERE to contact JAAT Solutions to learn more about the T-Suite product.

Making !T Work   

Copyright © 2019. JAAT Solutions All Rights Reserved.