We have multiple ERP systems, and we use it to schedule all of our jobs in those systems. Our biggest use case for Tidal is to automate jobs that we submit through our JD Edwards ERP.
We also have a lot of integrations using FTP file events to move files around, and we are also using the software to automate all of our manual stopping and starting of services and patching of systems.
Our MRP job stream is very complex, and it has a mission-critical report that needs to run on a daily basis. One of the first things that Tidal gave us was visibility into that report so that we would know how long it runs, and we would be able to monitor it. If there were any issues, we could resolve the issues and not affect the next day's manufacturing because we took care of the issue.
Awas that the team had a requirement that they needed to submit multiple jobs after a single job ran. They would put them all into one big single-threaded queue, and all those jobs that were dependent on that first job would get queued up and they would run single-threaded. That's because, with jobs, you can't go from single-threaded to multi-threaded and back. With Tidal, we are able to have one job run. As soon as that job is done, we can submit about a hundred jobs. Those hundred jobs spawn and do hundreds of other jobs. After all those jobs are done, we have another single-threaded single job. We would've never been able to handle such complexity with any other scheduler that I know of. So, we are able to solve the business' needs and improve the performance of MRP just by going to Tidal.
Another example is that a lot of times, the jobs were submitted every five minutes. If you asked the reason for that, the answer was that a file might show up, and as soon as that file shows up, I want to kick off the process, and process that file. We changed it from every five-minute job. It now only submits when that file shows up. Using file events removed the confusion of when that job is going to run where somebody would go out there and submit it, and if it was every five minutes, they'd have to wait for five minutes. Now, they submit it, or they put the file out there, and within a minute, they get a response back that says, "We're done with the job, and it is processed." They were surprised at how that was possible. It is just a file event, and it only runs when it is needed. It is not run every five minutes. So, we don't have all this extra processing time or extra jobs out there doing absolutely nothing because there is nothing to do. So, that's another way it has changed the business.
It has made things more efficient. We went from one set of jobs running every five minutes to running just ten times a day, which was the max I had seen that job run. So, we've seen the need go down because we're able to be more efficient with the jobs that need to be processed. An increase in the number of jobs would only be because we've been able to take more jobs that someone was manually submitting. We showed them how to set up the process in Tidal, and all of a sudden, with Tidal, it is just easier to automate it.
We use the Dashboards feature. We have opened up Tidal. Previously, a lot of our other schedulers were very much IT-only. We're the ones who got in there and created weekly jobs, whereas now, we've pushed some of that functionality back to the business. They go out there and submit a job. We taught them how to schedule to submit that job, and then, they maintain that job. If there is an issue, we monitor it for them and help them to resolve it, which makes it much more of a team effort between the business and IT, rather than just IT supporting these jobs.
It is very easy to use the Dashboards feature. Basically, they log in and see their dashboards, and/or they can see all the jobs that are running. One of the key things that we need to do is secure it. I can't have somebody log in and see another system's jobs for two main reasons. The first one is that it would be confusing, and the second one is that I can't have that. I need to have it secured. So, on top of it being easy, it is also very secure where when they log in, they only see their set of jobs and their dashboards.
The Dashboards feature gives information about a job’s status. A lot of times, when there is an issue with a job, this is the starting point to figure out what the issue was. You can then go and see job logs. A lot of times people call and say, "I have a job, and when is it going to be done?" With Tidal, it is very easy to go look at Tidal and say, "This is when it started, or this is the expected time it is supposed to start, and here is the average that it has done for all the other jobs that it has run." So, there is a lot of information that people can get at this all-in-one spot. If they had to manually go look at it, they would've to go to multiple different spots to get all the information. Even then, how you read the data isn't exactly consistent? For example, I submit a job, but it goes into waiting status. According to JD Edwards, it is running, and then, at some point, it'll go into processing status. That's the actual time that it takes to run. If you look at the start time and the stop time, that'll be two hours. If you look at the amount of time it really took to process, it would be only about 10 minutes. It could have spent the rest of the time waiting. That's where Tidal gives you the ability to see the actual processing time of how long it is going to take to run.
The Dashboards feature offers self-service for business users with customized content. As it has become available, it has been used much more. They never had it before. So, they didn't know what they didn't have. Now that we're able to give it to them, they're liking what they see. Being able to customize it gives them more flexibility in what they want to see.
Tidal has a lot of adapters. We use the SQL adapter. We use it to connect to an iSeries. We use it to connect to FTP. We use it to connect to all of our Windows Servers. There is also an agent for ServiceNow. We don't use that yet, but one of our future plans is to use it. We have JD Edwards ReportsNow that, instead of using ReportsNow scheduler, is using Tidal for scheduling jobs and reporting. The power of Tidal is the fact that I can have one scheduler to schedule everything. I don't have to have a scheduler on each one of these systems. I can, but then I have to maintain it on all of those systems. Having it on one, and being able to control everything, makes integrations a lot easier because I can stop processes, do patching, and bring processes back up. If it is all in one system, it is nicer and easier to do.
It is very easy to integrate it with other technologies and processes. A lot of times, there are a couple of different ways to do the same thing, such as with JD Edwards Orchestrator. We found three different ways to integrate into orchestrations. One was by running a command line that makes use of the SoapUI. They also have a web service that's more of a generic web service, and then, they came out and wrote a specific interface into orchestration so that we could schedule orchestrations through Tidal. Because there are so many different ways to do it, that means it is pretty flexible. It was fairly easy to figure out a way to do it and test it. When they came out with the actual adapter for JD Edwards Orchestrator, that made it super easy.
Another big advantage is the fact that when we schedule a job we know that it will submit, and if there are any errors we will be notified and able to resolve them. That way we're being proactive instead of reactive.
If there's an error with a job, there is an alert with a PDF. In that alert, we can customize messaging to assist people in resolving it. If there is a specific file location that they need to look at, we can put a link to that file location. If it's something with logs, we can attach the logs to the email so they have one place to start looking. We can even attach work instructions to that email notification: "Hey, if this job errors out and you received this email, here are the steps to resolve." People don't have to go looking for that information. They can just start resolving it right away.
Tidal has also definitely helped to reduce at-night hours. It's able to monitor itself. If a job fails, we're able to resolve the job and let the customer know, instead of the customer calling us and saying, "Some job failed. Go fix it," and having to research it. It could save my team about an hour's worth of work in each of those situations.
Overall, it saves us about 20 hours of work each week, hours where we would have been stuck trying to determine what the issue was instead of having an alert that tells us exactly what the issue is.